อะไรคือเหตุผลที่นักวิจัยในเรขาคณิตการคำนวณชอบรุ่น BSS / real-RAM?


40

พื้นหลัง

การคำนวณจำนวนจริงมีความซับซ้อนมากกว่าการคำนวณจำนวนธรรมชาติเนื่องจากจำนวนจริงเป็นวัตถุที่ไม่มีที่สิ้นสุดและมีจำนวนจริงมากมายนับไม่ถ้วนดังนั้นจำนวนจริงจึงไม่สามารถแสดงอย่างเป็นจริงได้ด้วยจำนวน จำกัด บนตัวอักษรที่ จำกัด

ซึ่งแตกต่างจากความสามารถในการคำนวณแบบดั้งเดิมในขอบเขต จำกัด ที่รูปแบบการคำนวณที่แตกต่างกันเช่น: แลมบ์ดาแคลคูลัส, ทัวริงจักร, ฟังก์ชันแบบเรียกซ้ำ, ... กลายเป็นสิ่งที่เท่าเทียมกัน (อย่างน้อยสำหรับการคำนวณ ตัวเลขจริงซึ่งไม่เข้ากัน ตัวอย่างเช่นในโมเดลTTE (ดู [Wei00]) ซึ่งเป็นรูปแบบเครื่องทัวริงคลาสสิกที่ใกล้เคียงที่สุดตัวเลขจริงจะแสดงโดยใช้เทปอินพุทที่ไม่มีที่สิ้นสุด (เช่นออริกาของทัวริง) และไม่สามารถตัดสินใจเปรียบเทียบและ ความสัมพันธ์ที่เท่าเทียมกันระหว่างตัวเลขทั้งสองให้เป็นจำนวนจริง (ในเวลา จำกัด ) ในทางกลับกันในรุ่น BBS / real-RAM ซึ่งคล้ายกับรุ่นของเครื่อง RAMเรามีตัวแปรที่สามารถเก็บจำนวนจริงโดยพลการและการเปรียบเทียบและความเท่าเทียมกันเป็นหนึ่งในการดำเนินงานปรมาณูของรูปแบบ ด้วยเหตุผลนี้และเหตุผลที่คล้ายคลึงกันผู้เชี่ยวชาญหลายคนบอกว่าแบบจำลอง BSS / real-RAM ไม่เหมือนจริง (ไม่สามารถนำไปใช้ได้อย่างน้อยก็ไม่ได้อยู่ในคอมพิวเตอร์ดิจิทัลปัจจุบัน) และพวกเขาชอบ TTE หรือโมเดลอื่น ๆ ที่เทียบเท่ากับ TTE โมเดล Ko-Friedman ฯลฯ

ถ้าฉันเข้าใจถูกต้องโมเดลการคำนวณเริ่มต้นที่ใช้ในComputational GeometryคือโมเดลBSS (aka real-RAM , ดู [BCSS98])

ในทางกลับกันฉันคิดว่าในการดำเนินการตามอัลกอริทึมใน Computational Geometry (เช่นLEDA ) เราจะจัดการกับตัวเลขเกี่ยวกับพีชคณิตเท่านั้นและไม่มีวัตถุหรือการคำนวณที่ไม่มีอนันต์ที่สูงกว่า ดังนั้นสำหรับฉัน (อาจไร้เดียงสา) ว่าเราสามารถใช้แบบจำลองการคำนวณแบบคลาสสิกเหนือขอบเขตที่ จำกัด เพื่อจัดการกับตัวเลขเหล่านี้และใช้แบบจำลองการคำนวณแบบปกติ (ซึ่งใช้สำหรับการนำอัลกอริธึมมาใช้) เพื่อหารือความถูกต้องและความซับซ้อน ของอัลกอริทึม


คำถาม:

อะไรคือสาเหตุที่นักวิจัยใน Computational Geometry ต้องการใช้โมเดล BSS / real-RAM (เหตุผลเฉพาะเรขาคณิตเชิงคำนวณสำหรับการใช้แบบจำลอง BSS / real-RAM)

อะไรคือปัญหาของแนวคิด (อาจไร้เดียงสา) ที่ฉันได้กล่าวถึงในย่อหน้าก่อนหน้า? (ใช้แบบจำลองการคำนวณแบบคลาสสิกและ จำกัด อินพุตให้กับตัวเลขเกี่ยวกับพีชคณิตในเรขาคณิตเชิงคำนวณ)


ภาคผนวก:

นอกจากนี้ยังมีความซับซ้อนของปัญหาอัลกอริธึมมันง่ายมากที่จะตัดสินใจปัญหาต่อไปนี้ในรูปแบบ BSS / real-RAM:

ST
sSs>tTt

ในขณะที่ไม่มีอัลกอริธึมจำนวนเต็ม RAM ที่มีประสิทธิภาพเป็นที่รู้จักสำหรับการแก้ปัญหา ขอบคุณ JeffE สำหรับตัวอย่าง


อ้างอิง:

  1. Lenore Blum, Felipe Cucker, Michael Shub และ Stephen Smale, "ความซับซ้อนและการคำนวณที่แท้จริง", 1998
  2. Klaus Weihrauch, "การวิเคราะห์ความน่าเชื่อถือ, การแนะนำ ", 2000

3
ในกรณีที่มันไม่ชัดเจนผลรวมของปัญหารากที่สองมีการตีความทางเรขาคณิตที่เป็นธรรมชาติมาก: มันคือสิ่งที่คุณต้องแก้หากคุณต้องการเปรียบเทียบความยาวของเส้นทางสองเหลี่ยมที่มีจุดยอดพิกัดจำนวนเต็ม
David Eppstein

คำตอบ:


42

อย่างแรกเลย, geometers การคำนวณไม่ได้คิดว่ามันเป็นแบบจำลอง BSS แบบจำลองแรมจริงถูกกำหนดโดย Michael Shamos ในวิทยานิพนธ์ระดับปริญญาเอกของเขาในปี 1978 ( Computational Geometry ) ซึ่งเปิดตัวในสนาม Franco Preparata ปรับปรุงและขยายวิทยานิพนธ์ของ Shamos เป็นหนังสือเรียนเรขาคณิตเชิงคำนวณเล่มแรกตีพิมพ์ในปี 1985 แรมที่แท้จริงก็เทียบเท่า ( ยกเว้นความสม่ำเสมอ; ดูคำตอบของ Pascal! ) กับโมเดลการคำนวณพีชคณิตที่กำหนดโดย Ben-Or ในปี 1983 ความพยายามของ Shub และ Smale ได้รับการตีพิมพ์ในปี 1989 หลังจากที่มีการสร้างแรมจริงขึ้นมาและแทบไม่ได้รับความสนใจจากชุมชนเรขาคณิตเชิงคำนวณเลย

ผลการคำนวณเชิงเรขาคณิตส่วนใหญ่จะผูกติดอยู่กับประเด็นต่าง ๆ ในเรขาคณิตเชิงcombinatorialซึ่งสมมติฐานเกี่ยวกับพิกัดที่เป็นส่วนประกอบหรือพีชคณิตคือ (ที่ดีที่สุด) สิ่งรบกวนที่ไม่เกี่ยวข้อง พูดเป็นชาวดูเหมือนว่าธรรมชาติที่สมบูรณ์จะต้องพิจารณาโดยพลการจุดเส้นวงกลมและชอบเป็นชั้นแรกวัตถุเมื่อพิสูจน์สิ่งที่เกี่ยวกับพวกเขาและดังนั้นจึงเป็นธรรมชาติอย่างเท่าเทียมกันเมื่อการออกแบบและการวิเคราะห์อัลกอริทึมในการคำนวณกับพวกเขา

pqqrq,r,sqrst? แต่ละดั้งเดิมจะถูกนำมาใช้โดยการประเมินสัญญาณของพหุนามระดับต่ำในพิกัดอินพุต (ดังนั้นอัลกอริธึมเหล่านี้สามารถอธิบายได้ในโมเดลพีชคณิตการตัดสินใจเชิงพีชคณิตที่อ่อนแอกว่า) หากพิกัดอินพุทเกิดขึ้นเป็นจำนวนเต็มแบบดั้งเดิมสามารถประเมินได้อย่างแม่นยำด้วยการเพิ่มความแม่นยำของปัจจัยคงที่เท่านั้น RAM จำนวนเต็มเหมือนกัน

ด้วยเหตุผลที่คล้ายกันเมื่อคนส่วนใหญ่คิดเกี่ยวกับการเรียงลำดับอัลกอริธึมพวกเขาไม่สนใจสิ่งที่พวกเขากำลังเรียงลำดับตราบเท่าที่ข้อมูลมาจากจักรวาลที่ได้รับคำสั่งโดยสิ้นเชิงและสามารถเปรียบเทียบสองค่าใด ๆ ได้ในเวลาคงที่

ดังนั้นชุมชนจึงพัฒนาการแยกข้อกังวลระหว่างการออกแบบอัลกอริธึมเรขาคณิต "ของจริง" และการใช้งานจริง ดังนั้นการพัฒนาบรรจุภัณฑ์เช่น LEDA และ CGAL แม้สำหรับคนที่ทำงานเกี่ยวกับการคำนวณที่แน่นอนมีความแตกต่างระหว่างอัลกอริทึมจริงซึ่งใช้เลขคณิตจริงที่แน่นอนเป็นส่วนหนึ่งของแบบจำลองพื้นฐานและการใช้งานซึ่งถูกบังคับโดยข้อ จำกัด ที่ไม่เกี่ยวข้องของอุปกรณ์คอมพิวเตอร์ทางกายภาพเพื่อใช้การคำนวณแบบแยก

×

มีอัลกอริธึมเรขาคณิตสองสามอย่างที่ใช้กับแบบจำลองการคำนวณเชิงพีชคณิตจริง ๆดังนั้นจึงไม่สามารถนำไปใช้กับคอมพิวเตอร์ทางกายภาพได้อย่างแท้จริงและมีประสิทธิภาพ ตัวอย่างที่ดีอย่างหนึ่งคือเส้นทางเชื่อมโยงขั้นต่ำในรูปหลายเหลี่ยมแบบง่ายซึ่งสามารถคำนวณในเวลาเชิงเส้นบน RAM จริง แต่ต้องการจำนวนบิตสองกำลังสองในกรณีที่เลวร้ายที่สุด อีกตัวอย่างที่ดีคือการตัดแบบลำดับชั้นของ Chazelle ซึ่งใช้ในอัลกอริธึมที่มีประสิทธิภาพที่สุดที่รู้จักกันในการค้นหาพิสัย x. การตัดเหล่านี้ใช้ลำดับชั้นของชุดของรูปสามเหลี่ยมซึ่งจุดยอดของรูปสามเหลี่ยมในแต่ละระดับเป็นจุดตัดของเส้นผ่านขอบของรูปสามเหลี่ยมที่ระดับก่อนหน้า ดังนั้นแม้ว่าพิกัดอินพุตเป็นจำนวนเต็มพิกัดจุดยอดสำหรับสามเหลี่ยมเหล่านี้คือจำนวนพีชคณิตของระดับที่ไม่ จำกัด อย่างไรก็ตามอัลกอริธึมสำหรับการสร้างและการใช้การตัดถือว่าสันนิษฐานว่าพิกัดสามารถถูกจัดการอย่างแน่นอนในเวลาคงที่

ดังนั้นคำตอบสั้น ๆ ที่ลำเอียงส่วนตัวของฉันก็คือ: TTE ทฤษฎีโดเมน Ko-Friedman และรูปแบบอื่น ๆ ของการคำนวณจำนวนจริง "จริง" ทุกประเด็นที่อยู่ที่ชุมชนเรขาคณิตการคำนวณโดยรวมไม่สนใจ .


9
บางทีมันควรจะเสริมว่าในขณะที่ประสบความสำเร็จทั้งหมดมุมมองนี้ได้นำไปสู่การบิดเบือนแปลก ๆ ไม่กี่อย่างเช่นหลายอัลกอรึทึม (n) อัลกอริธึมการค้นหาพารามิเตอร์แบบหลายขั้นตอน
David Eppstein

Ω(nlogn)

4
Joshua: ใช่ดูเช่นarxiv.org/abs/1010.1948
David Eppstein

1
@ David Eppstein: น่าสนใจมาก! คุณต้องการที่จะโพสต์มันเป็นคำตอบสำหรับคำถามอื่น ๆ ของฉัน: cstheory.stackexchange.com/questions/608/…
Joshua Grochow

15

มันไม่เป็นความจริงเลยที่โมเดล RAM / BSS จริงนั้นเทียบเท่ากับโมเดลการคำนวณพีชคณิต หลังมีประสิทธิภาพมากขึ้นเพราะต้นไม้ความลึกพหุนามสามารถมีขนาดเป็นเลขชี้กำลัง ทำให้มีพื้นที่มากมายสำหรับการเข้ารหัสข้อมูลที่ไม่สม่ำเสมอ ตัวอย่างเช่น Meyer auf der Heide ได้แสดงให้เห็นว่าต้นไม้ตัดสินใจเชิงพีชคณิต (เชิงเส้น) สามารถแก้ไขปัญหาที่ยากได้อย่างมีประสิทธิภาพเช่นผลรวมย่อย แต่เป็นไปไม่ได้ในรูปแบบ RAM / BSS จริง


1
จุดที่ยอดเยี่ยม !!
Jeffε

4

นี่คือความคิดเห็นเกี่ยวกับคำตอบที่ยอดเยี่ยมของ Jeff:

แนวคิดเกี่ยวกับสภาพการประมาณและการปัดเศษถูกเสนอเพื่อแก้ไขช่องว่างที่ซับซ้อน สภาพของอินสแตนซ์ปัญหาประมาณการผลกระทบของการก่อกวนเล็ก ๆ ของอินพุตต่อความแม่นยำของเอาต์พุต ความคิดเรื่องสภาพเป็นครั้งแรกโดย Alan Turing Jim Renegar แนะนำแนวคิดเกี่ยวกับสภาพของโปรแกรมเชิงเส้น

L. BLUM, การคำนวณเหนือ reals: ที่ทัวริงตรงกับนิวตัน ,ประกาศของ AMS, ปริมาณ 51, หมายเลข 9, (2004), 1024-1034

A. การกลึงข้อผิดพลาดในการปัดเศษในกระบวนการเมทริกซ์ Quart J. Mech Appl คณิตศาสตร์. 1 (1948), 287–308

J. RENEGAR การรวมหมายเลขเงื่อนไขเข้ากับทฤษฎีความซับซ้อนของการโปรแกรมเชิงเส้น SIAM J. Optim 5 (1995), 506–524

F. CUCKER และ J. PEÑAอัลกอริธึมแบบสองเท่าสำหรับการแก้ปัญหาระบบรูปทรงหลายเหลี่ยมด้วยเครื่องจักรที่มีความแม่นยำ จำกัด SIAM Journal on Optimization 12 (2002), 522–554

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.