Чи проблема NP N Queens не є складною?


11

Проблема N-queen така:

Вхід: N

Вихід: розміщення N "королеви" на шаховій дошці NXN таким чином, що жодна дві королеви не лежать на одному рядку, стовпчику чи діагоналі.

Здійснюючи пошук у Google, я виявив, що багато слайдів багатьох професорів стверджують, що це проблема NP-Hard. (Наприклад, web.mst.edu/~ercal/387/slides/NP-Hard.ppt)

Однак мені не вдалося знайти доказ (або отримати його). Причина, яку я задаю цьому питанню, полягає в тому, що я думаю, що у мене є алгоритм, який вирішує певні випадки проблеми, тобто з N не кратним 2 або 3 (N - кількість королеви) N (де N - кількість маток)? Або ми беремо вхідний розмір для журналу (N), оскільки число 'N' може бути представлене в журналах (N) бітів?


6
(1) Чому ви використовуєте і N, і N? Вони однакові чи різні змінні? (2) Для кожного цілого числа n, окрім 2 і 3, є спосіб поставити n королеви на дошці n × n, що задовольняє умову n-королеви (див. Вікіпедія ), тому я не знаю, про яку проблему ви говорите, коли ти кажеш, що "це важка NP-проблема".
Цуйосі Іто,

3
Я пам'ятаю, є результат твердості, коли дошка не обов'язково квадратна: тобто форма дошки надається як частина вводу.
Сашо Ніколов

27
Не може бути доказу NP-повноти для шахової дошки , оскільки ця проблема має одинарне введення… тобто є лише один вхід для розміру , тоді як свідок потребує опису розміру полінома. Теорема Мейні говорить, що показ такої проблеми як повна NP означає, що P = NP. Вам потрібні веселі форми дошки, щоб проблема не була повною. nn×nn
Пітер Шор

2
Можливо, підрахунок рішень є дещо цікавішою проблемою (поза класом #P, як це було доведено в "Про твердість підрахунку проблем повних відображень").
Марціо Де Біасі

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 [люб’язно: Jeffe]


ви можете розглянути можливість прийняття цієї відповіді, щоб вона не з’являлася як невідповідна.
Суреш Венкат

11
Алгоритм багаточленного часу в першій посилання не гарантується для отримання рішення. Успіх алгоритму чи ні, залежить від початкової конфігурації, яка вибирається випадковим чином, і автори лише дають емпіричні докази того, що, здається, проходить поліноміальне число випробувань, поки це не вдасться.
Цуйосі Іто,

4
Друга посилання також не є доказом. Тільки тому, що знайдено єдине можливе рішення n-королев з n = 500000, не означає, що воно є в П. (Це просто робить це більш імовірним)
Джеффрі Де Смет

1

Насправді це було щойно показано.

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


5
Ні, ні. Прочитайте статтю, або навіть її конспект: вона стосується завершення -класів , варіанту проблеми. N
Климент К.

1
@ClementC. Насправді, оскільки оригінальне запитання не є досить точним, я думаю, що Каспер має сенс, навіть якщо спосіб його викладення може бути неповним. Вирішивши, якщо n є, розміщення є чітко в P, оскільки проблема завжди має рішення для n> 3. Таким чином, проблема завершення n-королеви (вирішення, чи можна продовжити дане часткове рішення) представляється природною проблемою для вирішення, щоб зрозуміти складність проблеми.
Холф

3
@holf Це дійсно дійсний пункт ви зробити, але один , що ця відповідь навіть не згадує (і що читач абсолютно не одержати, прочитавши його). Отримати помилкову відповідь на неоднозначне запитання не зовсім оптимально.
Климент К.
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.