ปัญหาของ N Queens คือปัญหา NP-hard หรือไม่?


11

ปัญหาของ N-queen คือ:

อินพุต: N

เอาท์พุท: ตำแหน่งของ N "queens" บนกระดานหมากรุกของ NXN โดยที่ไม่มีราชินีสองตัวนอนบนแถวคอลัมน์หรือแนวทแยงเดียวกัน

เมื่อทำการค้นหาโดย Google ในเรื่องนี้ฉันพบว่าสไลด์จำนวนมากโดยอาจารย์หลายคนอ้างว่านี่เป็นปัญหา NP-Hard (เช่น web.mst.edu/~ercal/387/slides/NP-Hard.ppt)

อย่างไรก็ตามฉันไม่สามารถหาหลักฐาน (หรือได้มา) เหตุผลที่ฉันถามคำถามนี้เพราะฉันคิดว่าฉันมีอัลกอริทึมที่สามารถแก้ปัญหาบางกรณีเช่นกับ N ไม่ใช่ตัวคูณของ 2 หรือ 3 (N คือจำนวนของราชินี) ประเด็นที่เกี่ยวข้อง - เราสามารถพิจารณาขนาดอินพุตให้เป็น N (โดยที่ N คือจำนวนควีนส์) หรือว่าเราใช้ขนาดอินพุตเป็น log (N) เนื่องจากตัวเลข 'N' สามารถแสดงในบิต log (N) ได้?


6
(1) ทำไมคุณถึงใช้ทั้ง N และ n? พวกเขาเป็นตัวแปรเดียวกันหรือตัวแปรที่แตกต่างกันอย่างไร (2) สำหรับจำนวนเต็ม n ทุกตัวยกเว้น 2 และ 3 มีวิธีที่จะวาง n ควีนบนกระดาน n × n ให้เป็นไปตามเงื่อนไขของราชินี (ดูWikipedia ) ดังนั้นฉันไม่รู้ว่าคุณกำลังพูดถึงปัญหาอะไร คุณพูดว่า“ นี่เป็นปัญหา NP-hard”
Tsuyoshi Ito

3
ฉันจำได้ว่ามีความแข็งเมื่อไม่จำเป็นต้องเป็นรูปสี่เหลี่ยม: กล่าวคือรูปร่างของบอร์ดเป็นส่วนหนึ่งของอินพุต
Sasho Nikolov

27
ไม่มีหลักฐานพิสูจน์ความสมบูรณ์แบบ NP สำหรับกระดานหมากรุกเนื่องจากปัญหานี้มีอินพุตที่ยังไม่พร้อมกัน ... นั่นคือมีอินพุตเดียวสำหรับขนาดในขณะที่พยานต้องการคำอธิบายขนาดพหุนาม ทฤษฎีบทของมาห์นีย์บอกว่าการแสดงปัญหาเช่นนี้เพื่อให้สมบูรณ์ NP จะหมายความว่า P = NP คุณต้องมีรูปร่างของบอร์ดที่ตลกสำหรับปัญหาที่จะเกิดปัญหา NP-complete n×nn
Peter Shor

2
บางทีการนับคำตอบเป็นปัญหาที่น่าสนใจมากกว่า (นอกเหนือจาก #P class ดังที่ได้รับการพิสูจน์ใน "ความแข็งของการนับปัญหาของการจับคู่ที่สมบูรณ์")
Marzio De Biasi

3
ดูเพิ่มเติมที่: dl.acm.org/citation.cfm?id=122322
Jeffε

คำตอบ:


8

ตามที่ระบุไว้คำตอบสำหรับคำถามนี้คือไม่

การอ้างอิง: อัลกอริทึมเวลาพหุนามhttp://dl.acm.org/citation.cfm?id=101343 [ความอนุเคราะห์: vzn]

อีกเทคนิคที่ง่ายกว่ามาก: http://dl.acm.org/citation.cfm?id=122322 [มารยาท: เจฟฟ์]


คุณอาจพิจารณายอมรับคำตอบนี้เพื่อไม่ให้ปรากฏขึ้นอีกเป็นคำตอบ
Suresh Venkat

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

4
การอ้างอิงที่สองไม่ใช่ข้อพิสูจน์ เพียงเพราะเป็นวิธีแก้ปัญหาที่เป็นไปได้เพียงคำเดียวสำหรับ n-queens ที่มี n = 500000 ไม่ได้หมายความว่ามันเป็น P (มันทำให้มีแนวโน้มมากขึ้น)
Geoffrey De Smet

1

จริงๆแล้วสิ่งนี้เพิ่งถูกแสดงให้เห็นว่าเป็นจริง

https://blogs.cs.st-andrews.ac.uk/csblog/2017/08/31/n-queens-completion-is-np-complete/ ]


5
ไม่เลย อ่านบทความหรือแม้กระทั่งบทคัดย่อ: มันเกี่ยวข้องกับการเติม -queens ให้เสร็จสมบูรณ์ , ตัวแปรของปัญหา N
ผ่อนผัน C.

1
@ClementC ที่จริงแล้วเนื่องจากคำถามดั้งเดิมไม่แม่นยำพอฉันคิดว่า Kasper มีประเด็นแม้ว่าวิธีการของเขาในการระบุว่าอาจไม่สมบูรณ์ การตัดสินใจกำหนด n หากมีตำแหน่งที่ชัดเจนใน P เนื่องจากปัญหามีวิธีแก้ปัญหาสำหรับ n> 3 เสมอ ดังนั้นปัญหาการเสร็จสมบูรณ์ของ n-queens (การตัดสินใจว่าใครจะสามารถขยายการแก้ปัญหาบางส่วนที่กำหนด) ดูเหมือนว่าเป็นปัญหาการตัดสินใจตามธรรมชาติที่จะมองไปที่การทำความเข้าใจความซับซ้อนของปัญหา
holf

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