Das klassische -queens-Problem fragt bei einer positiven ganzen Zahl n , ob es ein Array Q [ 1 .. n ] von ganzen Zahlen gibt, das die folgenden Bedingungen erfüllt:
- für alle i
- für alle i ≠ j
- für alle i ≠ j
- für alle i ≠ j
Jede ganze Zahl repräsentiert die Position einer Dame in der i- ten Reihe eines n × n- Schachbretts; Die Einschränkungen kodieren die Anforderung, dass keine Königin eine andere Königin angreift. Es ist leicht zu beweisen, dass es keine Lösungen gibt, wenn n = 2 oder n = 3 ist , und Lösungen in geschlossener Form sind für alle anderen Werte von n bekannt . Als Entscheidungsproblem ist das n- Quentchen-Problem also völlig trivial.
Der Standard - Backtracking - Algorithmus für den Aufbau einer -queens Lösung spekulativ legt Königinnen auf einem Präfix der Zeilen und bestimmt dann rekursiv , ob es eine rechtliche Anordnung der Königinnen auf den verbleibenden Reihen ist. Das rekursive Teilproblem kann wie folgt formalisiert werden:
- Gegeben eine ganze Zahl und eine Anordnung P [ 1 .. k ] von ganzen Zahlen ist P ein Präfix eines Arrays Q [ 1 .. n ] , die eine Lösung der beschreibt , n -queens Problem?
Ist das allgemeinere Entscheidungsproblem NP-schwer?
Verwandte Fragen zu cstheory.se:
Antworten:
Es hat Jahre gedauert, aber dieser Beitrag hat uns dazu inspiriert, eine Arbeit zu schreiben, die heute herauskommt.
Die Antwort ist, dass n Queens Completion NP-Complete ist. Zur vollständigen Offenlegung sollte jedoch erwähnt werden, dass wir eine leichte Variante des Problems lösen. In unserem Fall muss die Menge der Königinnen kein Präfix der gesamten Menge sein. Aus technischen Gründen haben wir das hier gestellte Problem nicht gelöst. Es wäre jedoch äußerst überraschend, wenn die Version von n Queens Completion aus dieser Abfrage nicht auch NP-Complete wäre.
Ich möchte noch einmal den Dank wiederholen, den wir Jeff in der Zeitung dafür ausdrücken, dass er diese Frage hier aufgeworfen hat.
Die Komplexität von n Queens Completion Journal von AI Research Gent, Jefferson, Nightingale doi: 10.1613 / jair.5512 http://www.jair.org/papers/paper5512.html
quelle
(Dies weist auf einige verwandte Ergebnisse hin. Anfangs dachte ich, dass die verwandten Ergebnisse sehr verwandt sind, aber ich kann die Lücken nicht schnell schließen, also sind sie vielleicht doch nicht so verwandt. Vielleicht immer noch hilfreich.)
Übung 118 im (Entwurf von) Abschnitt 7.2.2.2 der Kunst der Computerprogrammierung befasst sich mit einem sehr ähnlichen Problem. In der Lösung schreibt Knuth einen Artikel gut, der wiederum gutschreibt
Mir ist nicht klar, wie ich das auf dein Problem reduzieren kann. Eine Beobachtung, die helfen könnte, ist, dass die Ausgabe Ihres Problems auch nur von den Summen abhängt, nicht von der genauen Positionierung der Königinnen. (Siehe Satz 2.4 in [Rivin, Eine dynamische Programmierlösung für das n-Queens-Problem, 1992], obwohl dies vielleicht leicht zu sehen ist.)
Knuth beweist, dass BINARY DIGITAL TOMOGRAPHY NP-vollständig ist, indem es das BINARY CONTINGENCY PROBLEM reduziert. Dies ist ein sehr ähnliches Problem, außer in 3 Dimensionen und ohne Diagonalen.
Der Artikel von Gardnera et al. scheint von Standard NP-vollständigen Problemen abzunehmen. Ich verstehe die Reduktion auch nicht gut genug, um sie hier zu erklären, also lasse ich die Hinweise von oben, damit Sie sie untersuchen können, wenn Sie es wünschen.
Dies alles könnte nutzlos sein, es sei denn, jemand findet heraus, wie man BINARY DIGITAL TOMOGRAPHY auf die gestellte Frage reduziert.
quelle