ขอบเขตความซับซ้อนที่ต่ำกว่า: ช่องว่างระหว่างแผนผังการตัดสินใจและ RAM


15

ฉันเพิ่งค้นพบขอบเขตล่างที่เป็นกำลังสองของความซับซ้อนของปัญหาในตัวแบบแผนผังการตัดสินใจและฉันสงสัยว่าผลลัพธ์นี้สามารถนำไปใช้กับโมเดลเครื่องเข้าถึงแบบสุ่มบางส่วนได้หรือไม่ โดยบางส่วนฉันหมายถึงลักษณะทั่วไปของโปรแกรม RAM ที่มีการแลกเปลี่ยนเวลา / พื้นที่ ตัวอย่างเช่นฉันต้องการแสดงให้เห็นว่าปัญหาของฉันไม่สามารถแก้ไขได้ด้วยโปรแกรม linear-time และ -space RAM

AM Ben-Amram และ Z Galil พิสูจน์ในบทความนี้ว่าโปรแกรม RAM ที่ทำงานในเวลาและพื้นที่สามารถถูกจำลองในเวลาบนเครื่องชี้ เรารู้ผลลัพธ์ที่คล้ายกันซึ่งสามารถนำไปใช้กับต้นไม้ตัดสินใจได้หรือไม่?เสื้อsO(เสื้อเข้าสู่ระบบs)

อีกวิธีหนึ่งเป็นไปได้หรือไม่ที่จะจำลองโปรแกรม RAM ที่ทำงานใน spaceด้วยต้นไม้ตัดสินใจของ degree ? (อย่างสังหรณ์ใจสามารถกำหนดตำแหน่งทางอ้อมโดยใช้โหนดขององศา )sss


ฉันไม่รู้เกี่ยวกับความซับซ้อนของการสืบค้นแบบคลาสสิกมากเกินไป (ความซับซ้อนของโครงสร้างการตัดสินใจ) แต่เมื่อทำงานในแบบจำลองแบบอะนาล็อกในการตั้งค่าควอนตัม (ความซับซ้อนของการค้นหาควอนตัม) บางครั้งคุณก็ ตัวอย่างเช่นสำหรับ HSP คุณสามารถแสดงให้เห็นว่าความซับซ้อนของแบบสอบถามนั้นเป็นพหุนาม แต่หน่วยย่อยระหว่างการสืบค้นนั้นมีจำนวนประตูที่อธิบาย ... และเท่าที่เราสงสัย HSP ทั่วไปนั้นไม่สามารถใช้งานได้ในเวลาพหุนามดังนั้นความซับซ้อนของการค้นหา ขอบเขตล่างที่หลวมมาก หรือคุณสบายดีกับขอบล่างที่หลวมมาก?
Artem Kaznatcheev

ที่จริงแล้วฉันอยากได้ขอบเขตต่ำสุดสำหรับโปรแกรม (บางส่วน) ที่ทำงานบน RAM นั่นเป็นเหตุผลที่ฉันหวังว่าการ จำกัด ความซับซ้อนของพื้นที่จะช่วยได้
Totoro

1
ฉันไม่เข้าใจคำถามของคุณ. คุณจะมีขีด จำกัด ล่างกำลังสองสำหรับความซับซ้อนของแบบสอบถามได้อย่างไร นอกจากนี้การแลกเปลี่ยนพื้นที่เวลามักใช้ทฤษฎีบทผลิตภัณฑ์โดยตรงดังนั้นคุณอาจต้องทำงานหนักขึ้นเพื่อให้ได้ผลลัพธ์เช่นนั้น
Hartmut Klauck

1
ขอบล่างของความซับซ้อนในโมเดลแผนผังการตัดสินใจมาจากขอบเขตล่างของจำนวนเอาต์พุตที่เป็นไปได้ของปัญหา
Totoro

คำตอบ:


10

รูปแบบธรรมชาติที่เกี่ยวข้องกับต้นไม้การตัดสินใจที่สามารถจำลองแรมเป็นโปรแกรมการแยกสาขา โดยพื้นฐานแล้วมันเป็นแผนผังการตัดสินใจที่มีทรีย่อยทั่วไปรวมกันเป็นผลให้ DAG เวลา T และพื้นที่ S บน RAM สามารถจำลองในความสูง T และขนาด 2 ^ S ในโปรแกรมการแยกสาขา (คุณอาจต้องใช้การแยกหลายทาง)

สำหรับปัญหาการตัดสินใจมันเป็นที่ชัดเจนว่าต้นไม้การตัดสินใจใด ๆ ที่ต้องการ height = # อินพุตและพื้นที่ = รวม # ของบิตในอินพุต โปรดทราบว่าด้วยการแยกหลายทางอาจมี # bits ในอินพุตที่ใหญ่กว่าการวัดปกติของ # ของอินพุต (เช่น n pointers แต่ละการรับ log n bits) สำหรับปัญหาดังกล่าวกับ nlog n บิตอินพุตทั้งหมดสามารถพิสูจน์ได้ว่า ปัญหาบางอย่างไม่สามารถแก้ไขได้ในเวลา O (n) และ space = O (n) บิต นั่นเป็นปัญหาของคุณหรือไม่?

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


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

1

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

สำหรับปัญหาการตัดสินใจมันเป็นที่ชัดเจนว่าต้นไม้การตัดสินใจใด ๆ ที่ต้องการ height = # อินพุตและพื้นที่ = รวม # ของบิตในอินพุต โปรดทราบว่าด้วยการแยกหลายทางอาจมี # bits ในอินพุตที่ใหญ่กว่าการวัดปกติของ # ของอินพุต (เช่น n pointers แต่ละการรับ log n bits) สำหรับปัญหาดังกล่าวกับ nlog n บิตอินพุตทั้งหมดสามารถพิสูจน์ได้ว่า ปัญหาบางอย่างไม่สามารถแก้ไขได้ในเวลา O (n) และ space = O (n) บิตบน RAM) นั่นคือรูปแบบของปัญหาของคุณหรือไม่

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


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