มีปัญหาที่ตัดสินใจไม่ได้สำหรับอัลกอริธึมที่เราไม่สามารถให้เวลาได้หรือไม่?


12

มีปัญหาที่สามารถตัดสินใจได้หรือไม่ว่าไม่มีอัลกอริทึมที่แก้ปัญหาเราสามารถให้เวลากับฟังก์ชันของความยาว n ของอินสแตนซ์อินพุตได้หรือไม่?

ฉันมาถึงคำถามนี้เพราะฉันกำลังคิดเกี่ยวกับสิ่งต่อไปนี้:

สมมติว่าเรามีปัญหาที่นับซ้ำ แต่ไม่สามารถตัดสินใจได้ซ้ำ ๆ สมมติต่อไปว่าฉันเป็น "ใช่" - เนื้อหาของปัญหา จากนั้นสำหรับอัลกอริทึมที่ไม่มีการระบุ "ใช่" - ปัญหาของปัญหาเราสามารถให้เวลากับขนาด n ของ I สำหรับถ้าเราสามารถให้เวลาเช่นนี้ได้เราสามารถตัดสินปัญหาได้ สรุปได้ว่าฉันเป็น "ไม่" - เหตุการณ์เมื่อเกินเวลาที่กำหนด

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


9
มีเวลาเล็กน้อยในอัลกอริทึมดังกล่าว: เรียกใช้อัลกอริทึมและส่งกลับจำนวนขั้นตอนที่ดำเนินการโดยอัลกอริทึมนั้น ในทางตรงกันข้ามมันเป็นเรื่องง่ายที่จะสร้างตัวอย่างซึ่งเป็นการยากที่จะให้ขอบเขตที่ง่ายต่อการเข้าใจหรือแสดงเช่นฟังก์ชัน ackermann
ดี้

2
คุณจะต้องแม่นยำมากขึ้น หากคุณพูดถึงฟังก์ชั่น (ทางคณิตศาสตร์) แล้วใช่มีฟังก์ชั่นที่ตรงกับเวลาการทำงานของเครื่องทัวริง (อันที่จริงแล้วมีฟังก์ชั่นมากกว่าเครื่องทัวริง) หากคุณพูดถึงฟังก์ชั่นที่คำนวณหรือเทียบเท่าอัลกอริธึม @cody จะให้คำตอบ: เพียงแค่เรียกใช้เครื่องทัวริงในการตัดสินปัญหาและนับเวลาที่ใช้
Alex สิบ Brink

8
@AlextenBrink: ที่จริงแล้วเพื่อให้ได้เวลาในการทำงานที่แย่ที่สุดในฐานะที่เป็นฟังก์ชั่นของขนาดอินพุตคุณจะต้องเรียกใช้เครื่องทัวริงสำหรับอินพุตที่เป็นไปได้ทั้งหมดของขนาดและใช้เวลาสูงสุด แต่แน่นอนว่านี่ก็เป็นไปได้เช่นกัน nnn
Jukka Suomela

8
ฉันขอแนะนำการแก้ไขได้ไหม? เพื่อหลีกเลี่ยงคำตอบเล็ก ๆ น้อย ๆ สมมติว่าเรากำหนดวลี "เราสามารถให้เวลากับ" เพื่อหมายถึง "เราสามารถคำนวณขอบเขตบนของกรณีที่เลวร้ายที่สุดได้เร็วกว่าการรันอัลกอริธึมในทุกกรณีของขนาด n" หรืออาจเป็น "อินสแตนซ์ทั้งหมด" ควรเป็น "อินสแตนซ์เดียว"
Jeffε

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

คำตอบ:


13

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

f(n)=maxiIn(n)  time(A(i)),
In(n)ntime(A(i))Ai

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

ฉันหวังว่าฉันเข้าใจคำถามของคุณอย่างถูกวิธี


6

นี่เป็นคำถามของคุณที่แตกต่างจากมาร์คัสเล็กน้อย แต่จากคำอธิบายของคุณว่าคุณคิดอย่างไรกับคำถามนี้มันอาจจะใกล้เคียงกับสิ่งที่คุณกำลังมองหา

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

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

หนึ่งข้อสังเกตเพิ่มเติม: เนื่องจากเราทราบว่าการตรวจสอบสำหรับผู้เยาว์สามารถทำได้ในเวลาที่คุณอาจจะแย้งว่าในทุกกรณีตกแต่งโดยอัลกอริทึมโรเบิร์ตมัวร์เราจะมี "ผูกพัน" ของในเวลาทำงาน อย่างไรก็ตามฉันจะโต้แย้งว่านี่เป็นการโกงหากเราไม่มีข้อผูกมัดกับค่าคงที่O(n3)O(n3)


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

2
มันค่อนข้างจะสัมผัสกับจุดของคุณ แต่: สมบัติกราฟเล็กน้อยปิดสามารถในความเป็นจริงการตัดสินใจในเวลา research.nii.ac.jp/~k_keniti/quaddp1.pdf O(n2)
Emil Jeřábek

1
@ EmilJeřábek: ยิ่งไปกว่านั้นเป็นรูปเป็นร่างโดยตัดสินใจว่ากราฟจากครอบครัวที่มีผู้เยาว์ปิดเป็นที่น่าพอใจสามารถสั่งซื้ออสังหาริมทรัพย์ได้ในเวลาเชิงเส้น: arxiv.org/abs/1109.5036
András Salamon

1
โดยวิธีการที่ Kowarabayashi และ Wollan เรียกร้องค่าคงที่ในกระดาษSTOC 2011 ของพวกเขาdsi.uniroma1.it/~wollan/PUBS/shorter_struct_web.pdfซึ่งรายงานความคืบหน้าต่อไปว่า "ยังไม่ได้เขียนอย่างเต็มที่" อย่างไรก็ตามฉันไม่สามารถแยกขอบเขตที่ชัดเจนจากบทความนี้ได้อย่างง่ายดาย
András Salamon

2
ตัวอย่างเช่นคุณมีกราฟที่มีหน้าปกภาพถ่าย น่าประหลาดที่เราเกือบจะรู้รายการ: มีผู้เยาว์ที่ต้องห้าม 31 คนและผู้ที่มีศักยภาพ 32 คน แต่สำหรับคนสุดท้ายมันเปิดไม่ว่าจะมีฝาครอบภาพถ่ายหรือไม่ ดังนั้นเราจึงไม่มีอัลกอริทึมสำหรับกราฟของคลาสนี้ ดูตัวอย่าง: fi.muni.cz/~hlineny/papers/plcover20-gc.pdf
เดนิส

3

เพียงเพื่อเพิ่มมุมมองที่แตกต่างกันขอให้ฉันจำได้ว่าไม่ใช่ทุกปัญหาที่มีความซับซ้อน "ที่แท้จริง" ซึ่งน่าจะเป็นสิ่งที่น่าสนใจที่สุดและไม่สนใจผลที่ตามมาจากทฤษฎีการเร่งความเร็วของ Blum

โดยพื้นฐานแล้วทฤษฎีบทระบุว่าการแก้ไข g ที่เร่งความเร็วที่ต้องการคุณอาจพบปัญหาการคำนวณ P เช่นว่าสำหรับโปรแกรมใด ๆ ที่แก้ P มีอยู่อีกโปรแกรมหนึ่งที่ยังคงแก้ P และรัน g-times เร็วกว่าครั้งก่อน

ดังนั้นสำหรับปัญหาประเภทนี้คุณไม่สามารถให้เวลาได้ ผลลัพธ์ที่น่าอัศจรรย์และทำให้งงมาก แน่นอน P มีความซับซ้อนมาก


ทำไม P มีความซับซ้อนมาก

เนื่องจากกระบวนการเร่งความเร็วสามารถทำซ้ำได้ดังนั้นจึงต้องเข้ากันได้กับห่วงโซ่ที่ไม่มีที่สิ้นสุดของอัลกอริทึมของการลดความซับซ้อน
Andrea Asperti

3

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

คำตอบคือใช่: เช่นสามารถเกิดขึ้นได้ว่าคุณมีกึ่งอัลกอริทึมสำหรับอินสแตนซ์ YES ของปัญหาของคุณและกึ่งอัลกอริทึมสำหรับอินสแตนซ์ NO สิ่งนี้ช่วยให้คุณสามารถตัดสินใจปัญหาได้ แต่ไม่ จำกัด เวลา

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

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

ตัวอย่างของเรื่องนี้คือเลียนแบบลอจิกเชิงเส้น (LLW): ตอนนี้มันเป็นที่รู้จักกันในชื่อหอคอย - เสร็จ [1] แต่บางครั้งก็ไม่มีใครรู้ขอบเขต .

อ้างอิง:

[1] ความซับซ้อนที่ไม่เกี่ยวข้องกับการแยก VASS, MELL และส่วนขยาย Ranko Lazic และ Sylvain Schmitz CSL-LICS 2014

[2] สมบัติแบบ จำกัด สำหรับชิ้นส่วนต่าง ๆ ของลอจิกเชิงเส้น Yves Lafont, J. Symb ตรรกะ. 1997


-4

ตามที่คนอื่น ๆ ระบุไว้คำถามนั้นไม่ได้ระบุไว้ในวิธีที่หลีกเลี่ยงคำตอบเล็กน้อย แต่มีแนวคิดบางอย่างในทฤษฎี TCS และทฤษฎีจำนวนที่เกี่ยวข้อง / คล้ายกัน

1) ในทฤษฎีลำดับชั้นอวกาศและเวลาแนวคิดของ"time constructible" และ "space constructible"ฟังก์ชั่นจะต้อง ฟังก์ชั่นที่สามารถสร้างได้และไม่ใช่พื้นที่ที่ไม่สามารถสร้างได้และนำไปสู่คุณสมบัติที่ผิดปกติที่พบในทฤษฎีบทบลัมเช่นทฤษฎี "ช่องว่างการเร่งความเร็ว" คลาสความซับซ้อนมาตรฐานส่วนใหญ่ (ทั้งหมด?) ถูกกำหนดในแง่ของฟังก์ชั่นพื้นที่และเวลาที่สร้างได้

2) ฟังก์ชั่น ackermanเป็นแบบเรียกซ้ำทั้งหมด แต่ไม่ใช่แบบเรียกซ้ำแบบดั้งเดิมและสิ่งนี้มีความหมายสำหรับเวลาที่ถูกผูกไว้ ฟังก์ชั่นการเรียกซ้ำแบบดั้งเดิมในแง่หนึ่งคือการดำเนินการทางคณิตศาสตร์ "พื้นฐาน"

3) มี thms เกี่ยวกับลำดับทฤษฎีจำนวนที่ไม่สามารถคำนวณได้ในเลขคณิตของ peano ที่สามารถตีความได้ว่าเป็นการสร้างขอบเขตของเวลาที่ไม่สามารถคำนวณได้เช่นa goodstein sequenceหรือ paris- harrington thms


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