Spiel-Komplexität

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

In der kombinatorischen Spieltheorie gibt es mehrere Möglichkeiten die Spiel-Komplexität zu messen. Im Folgenden werden die folgenden Metriken beschrieben:

  • Zustandsraum-Komplexität
  • Spielbaumgröße
  • Entscheidungs-Komplexität
  • Spielbaum-Komplexität
  • Rechenaufwand

Metriken der Spiel-Komplexität[Bearbeiten]

  • Die Zustandsraum-Komplexität eines Spiels ist die Anzahl von erreichbaren Stellungen von der Ausgangsposition des Spieles aus. [1] Wenn diese zu schwierig zu errechnen ist, kann oft eine obere Schranke bestimmt werden, indem man unzulässige Stellungen oder solche, die im Spielverlauf nicht erreicht werden können, mitzählt.
  • Die Spielbaumgröße ist die Gesamtzahl der möglichen Spielverläufe. Sie entspricht der Anzahl der Blattknoten des Spielbaumes.
  • Der Spielbaum ist normalerweise erheblich größer als der Zustandsraum, da hier dieselben Stellungen in verschiedenen Spielen auftreten, indem Züge in unterschiedlicher Reihenfolge ausgeführt werden (z.B. beim Tic-Tac-Toe-Spiel, mit zwei X und einem O, kann die Stellung auf zwei verschiedene Arten erreicht werden, abhängig davon wo das erste X platziert wurde). Eine obere Schranke für die Größe des Spielbaums kann manchmal durch Vereinfachungen des Spiels, die die Spielbaumgröße nur erhöhen (z.B. unzulässige Spielzüge erlauben), errechnet werden. Jedoch ist der Spielbaum für Spiele, bei denen die Anzahl der Züge nicht begrenzt ist (z.B. wegen der Brettgröße, oder wenn Stellungswiederholungen erlaubt sind), unendlich.

Die nächsten beiden Metriken basieren auf der Idee eines Entscheidungsbaums. Ein Entscheidungsbaum ist ein Unterbaum des Spielbaums, bei dem jede Stellung mit "Spieler A gewinnt", "Spieler B gewinnt" oder "weiterer Zug" markiert wurde. Endstellungen werden dabei direkt markiert. Eine Stellung, mit der Spieler A eine "Spieler A gewinnt"-Stellung erreichen kann, wird ebenfalls mit "Spieler A gewinnt" markiert. Ebenso wird für Spieler B verfahren.

  • Die Entscheidungskomplexität eines Spieles ist die Anzahl der Blattknoten im kleinsten Entscheidungsbaum, welcher die Markierung der Ausgangsstellung beibehält (z.B. "Spieler A gewinnt"). Ein solcher Baum enthält alle Entscheidungsmöglichkeiten für den zweiten Spieler, aber nur jeweils eine Möglichkeit für den Spieler, der das Spiel beginnt.
  • Die Spielbaumkomplexität eines Spiels ist die Anzahl der Blattknoten im kleinsten Entscheidungsbaum in voller Breite, der den Wert der Ausgangsstellung beibehält.[1] (Ein Baum in voller Breite enthält immer alle Knoten einer Tiefe.) Dies ist die Anzahl der Stellungen, die man in einem Minimax-Verfahren durchsuchen muss, um den Wert der Ausgangsstellung zu bestimmen. Es ist schwierig, die Spielbaum-Komplexität abzuschätzen. Aber für einige Spiele kann eine vernünftige untere Schranke gefunden werden, indem man den Verzweigungsfaktor mit der Anzahl der Halbzüge eines durchschnittlichen Spiels potenziert.
  • Der komplexitätstheoretische Rechenaufwand eines Spiels beschreibt den asymptotischen Schwierigkeitsgrad eines Spieles, wenn es beliebig groß wird. Dies wird ausgedrückt in der O-Notation oder als Zugehörigkeit zu einer Komplexitätsklasse. Dieses Konzept ist nicht überall anwendbar, aber es gibt Spiele, die verallgemeinert wurden, so dass sie beliebig groß werden. Typischerweise wird auf einem n×n-Brett gespielt. (Aus der Sicht der Komplexitätstheorie ist ein Spiel, dessen Brettgröße fest ist, ein endlicher Automat, der in O(1) gelöst werden kann, z.B. über eine Tabelle in der für jede Stellung der beste Zug steht.

Beispiel: Tic Tac Toe[Bearbeiten]

Für Tic Tac Toe ist eine einfache obere Schranke für die Größe des Zustandsraums 39 = 19.683. (Es gibt 3 Zustände für jedes Kästchen und 9 Kästchen.) Diese Zahl enthält viele unzulässige Stellungen, wie z.B. Stellungen mit 5 Kreuzen und keinen Nullen oder Stellungen, in denen beide Spieler eine Reihe voll haben. Bei einer genaueren Schätzung kann man daher die Anzahl auf 5.478 reduzieren. Wenn man Spiegelungen und Drehungen als identisch betrachtet, sind nur noch 765 grundsätzlich verschiedene Stellungen möglich.

Eine einfache obere Schranke für den Spielbaum ist 9! = 362.880 (9 Möglichkeiten für den ersten Zug, 8 für den zweiten, 7 für den dritten usw.). Wenn man unzulässige Züge ausschließt erhält man maximal 255.168 mögliche Spiele. Durch Berücksichtigung der Spiegelungen und Drehungen reduziert sich die Anzahl auf 26.830.

Der komplexitätstheoretische Rechenaufwand von Tic Tac Toe hängt davon ab, wie es verallgemeinert wurde. Eine einfache Verallgemeinerung ist das m,n,k-Spiel. Auf einem nxm-Brett gewinnt der Spieler, der als erstes k Kästchen in einer Reihe zu füllen vermag. Es wird direkt deutlich, dass es in DSPACE(mn) durch Durchsuchen des kompletten Spielbaumes gelöst werden kann. Damit befindet es sich in der Komplexitätsklasse PSPACE. Es kann gezeigt werden dass es in PSPACE-Vollständig liegt.[2]

Komplexitäten einiger bekannter Spiele[Bearbeiten]

Wegen der enormen Größe einiger Spiel-Komplexitäten gibt die folgende Tabelle nur ihren Logarithmus zur Basis 10 an. Alle Zahlen sollten mit Vorsicht betrachtet werden, da scheinbar kleine Änderungen der Regeln große Änderungen der Zahlen bewirken können, die oft ohnehin nur grobe Schätzungen sind.

Spiel Brettgröße Zustandsraum-Komplexitat

(als log zur Basis 10)

Spielbaum-Komplexität

(als log zur Basis 10)

Mittlere Spieldauer in Halbzügen Komplexitätsklasse einer passenden Verallgemeinerung
Tic Tac Toe 9 3 5 9 PSPACE-Vollständig[2]
Sim 15 3 8 14 ?, aber in PSPACE[3]
Pentominos 64 12 18 10 [4] ?, aber in PSPACE
Vier gewinnt 42 14[1] 21[1] 36[1] ?, aber in PSPACE
Dame (8 × 8) 32 20[5] oder 18[1] 31[1] 70[1] EXPTIME-Vollständig[6]
Oware[7] 12 12[1] 32[1] 60[1] Verallgemeinerung unklar
Qubic 64 30[1] 34[1] 20[1] PSPACE-Vollständig[2]
Fanorona 45 21 [8] 46 [8] 22 ?, aber in EXPTIME
Mühle 24 10[1] 50[1] ? ?, aber in EXPTIME
Dame (10 × 10) 50 30?[1] 54[1] 90[1] EXPSPACE-Vollständig[6]
Halma (2 Spieler) 121 28 ? ? EXPSPACE-Vollständig[9]
Halma (6 Spieler) 121 78 ? ? EXPSPACE-Vollständig[9]
Lines of Action 64 23[10] 64[10] 44[10] ?, aber EXPTIME
Reversi 64 28[1] 58[1] 58[1] PSPACE-Vollständig[11]
Hex (11 × 11) 121 56 ? 40 PSPACE-Vollständig[12]
Gomoku (15 × 15, Freistil) 225 105?[1] 70[1] 30[1] PSPACE-Vollständig[2]
Schach 64 50[13] 123[13] 80 EXPTIME-Vollständig[14]
Connect6 361 172 70 oder 140 15 oder 30 PSPACE-Vollständig[15]
Backgammon 28 20 144 50–60[16] Verallgemeinerung unklar
Xiangqi 90 48[1] 150[1] 95[17] ?, vermutlich in EXPSPACE-Vollständig
Quoridor 81 42 162 ? ?, aber in PSPACE
Amazonen (10 × 10) 100 ≤ 40 ? ? PSPACE-Vollständig[18]
Shogi 81 71[17] 226[17] 110? EXPSPACE-Vollständig[19]
Arimaa 64 43[20] 296[20] 70[21] ?, aber EXPTIME
Go (19 × 19) 361 171[22] 360[1] 150[1] EXPSPACE-Vollständig[23]
Minesweeper 720 ? ? ? NP-Vollständig[24]

Weblinks[Bearbeiten]

Einzelnachweise[Bearbeiten]

  1. a b c d e f g h i j k l m n o p q r s t u v w x y z aa ab ac Victor Allis: Searching for Solutions in Games and Artificial Intelligence. Ph.D. Thesis, University of Limburg, Maastricht, The Netherlands, 1994, ISBN 9090074880.
  2. a b c d Stefan Reisch: Gobang ist PSPACE-Vollständig (Gomoku is PSPACE-complete). In: Acta Informatica. 13, 1980.
  3. Wolfgang Slany: The Complexity of Graph Ramsey Games
  4. Hilarie K. Orman: Pentominoes: A First Player Win in Games of no chance, MSRI Publications – Volume 29, 1996, pages 339-344. Online: pdf.
  5. Jonathan Schaeffer et al.: Checkers is Solved. In: Science. 6. Juli 2007.
  6. a b J. M. Robson: N by N checkers is Exptime complete. In: SIAM Journal on Computing,. 13, Nr. 2, 1984, S. 252–267. doi:10.1137/0213018.
  7. Spielregeln siehe Allis 1994
  8. a b M.P.D. Schadd, M.H.M. Winands, J.W.H.M. Uiterwijk, H.J. van den Herik and M.H.J. Bergsma: Best Play in Fanorona leads to Draw. In: New Mathematics and Natural Computation. 4, Nr. 3, 2008, S. 369–387. doi:10.1142/S1793005708001124.
  9. a b Takumi Kasai, Akeo Adachi, and Shigeki Iwata: Classes of Pebble Games and Complete Problems, SIAM Journal on Computing, Volume 8, 1979, pages 574-586. Beweist die Vollständigkeit der Verallgemeinerung auf beliebige Graphen.
  10. a b c Mark H.M. Winands: Informed Search in Complex Games. Ph.D. Thesis, Maastricht University, Maastricht, The Netherlands, 2004, ISBN 9052784299.
  11. S. Iwata and T. Kasai: The Othello game on an n*n board is PSPACE-complete. In: Theor. Comp. Sci.. 123, Nr. 123, 1994, S. 329–340. doi:10.1016/0304-3975(94)90131-7.
  12. Stefan Reisch: Hex ist PSPACE-vollständig (Hex is PSPACE-complete). In: Acta Inf.. Nr. 15, 1981, S. 167–191.
  13. a b Die Größe des Zustandsraumes und des Spielbaumes für Schach wurden erstmals abgeschätzt in Claude Shannon: Programming a Computer for Playing Chess. In: Philosophical Magazine. 41, Nr. 314, 1950. Shannon gab die Abschätzungen 1043 bzw. 10120 an, kleinere Werte als die in der Tabelle, welche aus der Arbeit von Victor Allis's stammen. Siehe auch Shannon number für Einzelheiten.
  14. Aviezri Fraenkel and D. Lichtenstein: Computing a perfect strategy for n×n chess requires time exponential in n. In: J. Comb. Th. A. Nr. 31, 1981, S. 199–214.
  15. On the fairness and complexity of generalized k-in-a-row games
  16. http://books.nips.cc/papers/txt/nips04/0259.txt
  17. a b c Shi-Jim Yen, Jr-Chang Chen, Tai-Ning Yang, and Shun-Chin Hsu: Computer Chinese Chess. In: International Computer Games Association Journal. 27, Nr. 1, März 2004, S. 3–18.
  18. R. A. Hearn: Amazons is PSPACE-complete. 2. Februar 2005. Abgerufen am 15. Februar 2011.
  19. H. Adachi, H. Kamekawa, and S. Iwata: Shogi on n × n board is complete in exponential time. In: Trans. IEICE. J70-D, 1987, S. 1843–1852.
  20. a b Christ-Jan Cox: Analysis and Implementation of the Game Arimaa (PDF; 806 kB) 2006. Abgerufen am 15. Februar 2011.
  21. Brian Haskin: Arimaa Branching Factor. 2007. Abgerufen am 15. Februar 2011.
  22. Combinatorics of Go Diese Arbeit leitet die Abschätzungen 48<log(log(N))<171 für die Anzahl der möglichen Spielverläufe N her.
  23. J. M. Robson: The complexity of Go. In: Information Processing; Proceedings of IFIP Congress 1983, S. 413–417.
  24. R. Kaye, "Minesweeper is NP-complete". The Mathematical Intelligencer, Band 22, Artikel 2, Seiten 9 - 15, Springer-Verlag, 2000.