Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

GIN2 SS05 Prof. Dr. W. Conen, 10.5.05 - Nullsummen-Spiele - Min-Max-Suche - Alpha-Beta-Pruning (späterer Termin)

Ähnliche Präsentationen


Präsentation zum Thema: "GIN2 SS05 Prof. Dr. W. Conen, 10.5.05 - Nullsummen-Spiele - Min-Max-Suche - Alpha-Beta-Pruning (späterer Termin)"—  Präsentation transkript:

1 GIN2 SS05 Prof. Dr. W. Conen, - Nullsummen-Spiele - Min-Max-Suche - Alpha-Beta-Pruning (späterer Termin)

2 X O „Abwechselnde“ Suche Heute spielen wir TicTacToe...
Bei TicTacToe gibt es drei mögliche Resultate: X gewinnt (O verliert) O gewinnt (X verliert) - unentschieden Es ist ein Null-Summen-Spiel: was der eine gewinnt, verliert der andere (wenn man Sieg und Niederlage mit individuellem Nutzen bewerten würde).

3 „Abwechselnde“ Suche Am Zug ist O: Eine Spielsituation... O ist am Zug
X Am Zug ist O: Eine Spielsituation... O ist am Zug O kann „im Prinzip“ auf 4 Positionen setzen usw. O X O X O X O X X: O X O X O X O X O X O X O: X O O X O X O X O X O X O X O X O X X: O O O O O O X O X O X X X --

4 o x o x x o x o o o o o x o x o - o o x x - „Abwechselnde“ Suche
Am Zug ist O: Wenn O und X optimal spielen, dann gewinnt O auf jeden Fall! x o x x O X O X O X O X X: o x o o o o O X O X O X O X O X O X O: o x o X x o - o O o O X O X O X O X O X O X O X O X X: x x - O O O O O O X O X O X X X --

5 „Ausrechnen“ eines Spiels
„Im Prinzip“ kann man jedes deterministische Spiel so „ausrechnen“ Man bestimmt den Baum bis zu den Blättern, die für entschiedene Spiele (also „Endzustände“ stehen) Das Resultat gibt man nach oben weiter Bei inneren Knoten gibt man dann von unten nach oben das für den jeweiligen Spieler beste erreichbare Resultat nach weiter 3x3-TicTacToe ist immer unentschieden, wenn beide Spieler optimal spielen: Der „Max“-Spieler will das Ergebnis des anderen Spielers minimieren bzw. sein Ergebnis maximieren Der „Min“-Spieler verhält sich analog Wenn man einen Sieg des Max-Spielers mit 1 bewertet und einen Sieg des Min-Spielers mit -1, dann wählt der Max-Spieler immer den maximal bewerteten Zug, der Min-Spieler immer den minimal bewerteten Zug Deshalb spricht man auch von MinMax-Bewertung bzw. MinMax-Algo

6 „Ausrechnen“ eines Spiels
Grob kalkuliert muß man sich 1 * 9 * 8 * 7 * 6 * 5 * 4 * 3 * 2 * 1 = Knoten anschauen und diese bewerten früheres Erreichen von Endzuständen wird hier vernachlässigt Wenn n die (maximale) Anzahl der Zugmöglichkeiten ist, dann entspricht das n! Es gilt: n! 2 O(2n) (Abschätzung hierzu in der nächsten Vorlesung) Zeitaufwändig, naiv implementiert auch speicheraufwändig (geht aber gut mit Tiefensuche, dann „nur“ Zeitproblem) Übrigens: es gibt genau 39 = verschiedene Brettstellungen. Wenn man festlegt, dass immer X beginnt, dann sind damit auch die Spielsituationen eindeutig bestimmt. nicht alle sind erreichbar (weil vorher Ende wäre) Wie kommt es zur Differenz? Weil es zu praktisch jeder Stellung viele Wege gibt!

7 „Ausrechnen“ eines Spiels
Ein Computer könnte ein „ausgerechnetes“ Spiel perfekt spielen – er wüßte immer die bestmögliche Antwort! Im allgemeinen ist das „Ausrechnen“ aber viel zu teuer! Für fortgeschrittene Spielen „im Endspiel“ geht es allerdings oft auch bei „komplexeren“ Spielen (wie z.B. Dame) Für ein 6x6-TicTacToe mit 4-gewinnt Regel gibt es z.B. 336 h 1.5*1017 Stellungen ... und 36! h 3,72*1041 Knoten (1080 ist die geschätzte Zahl der Atome im sichtbaren Universium) (auch wieder ohne frühe Endzustände) Das ist ein bisschen viel für 220k-Speicher... Wie man aber dennoch erfolgreich ein Programm zum Spielen von 6x6/4-TicTacToe schreiben kann – sogar für Handys –, erzählen uns jetzt 3 ihrer Kommilitonen: die Herren Cevani, Schramma und Wengler Legen Sie los! ;-) [Alpha-Beta haben wir in einer späteren Veranstaltung auf Overhead geschrieben]


Herunterladen ppt "GIN2 SS05 Prof. Dr. W. Conen, 10.5.05 - Nullsummen-Spiele - Min-Max-Suche - Alpha-Beta-Pruning (späterer Termin)"

Ähnliche Präsentationen


Google-Anzeigen