Komplexität der n-Königinnen-Vervollständigung?

27

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:nnQ[1..n]

  • für alle i1Q[i]ni
  • für alle i jQ[i]Q[j]ij
  • für alle i jQ[i]iQ[j]jij
  • für alle i jQ[i]+iQ[j]+jij

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.Q[i]in×nn=2n=3nn

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:n

  • 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?nP[1..k]PQ[1..n]n

Ist das allgemeinere Entscheidungsproblem NP-schwer?

n

Verwandte Fragen zu cstheory.se:

Jeffε
quelle
2
Ich frage mich, ob die vorhandenen NP-Vollständigkeitsnachweise für Sudoku, die Vervollständigung des lateinischen Quadrats (und Tonnen anderer ähnlicher Probleme) wirklich prägnante / spärliche Darstellungen der Instanzen enthalten (z. B. im NPC-Beweis für die Vervollständigung des lateinischen Quadrats, Colbourn) sagt "Die Mitgliedschaft in NP ist sofort", aber er erwähnt keine Instanzcodierungsprobleme.
Marzio De Biasi
1
@Marzio: Diese Beweise hängen stark von der Repräsentation ab, und obwohl dies normalerweise nicht erwähnt wird, ist es oft nicht einmal trivial, eine Mitgliedschaft in NP zu begründen, siehe zum Beispiel cstheory.stackexchange.com/a/5559/109
András Salamon

Antworten:

16

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

Ian Gent
quelle
Nett. Herzliche Glückwünsche!
Jeffs
n1n
6

(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

[2]={0,1}

r,c[2]ma,b[2]2m1

x[2]m×mjxij=riixij=cjixi,si=asixi,d+i=bd+m1

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.

xi,xj,xk[2]n×n

x[2]n×n×nixijk=xijkjxijk=xjikkxijk=xkij

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.

Radu GRIGore
quelle