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 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). XOX OXO OOX

3 Abwechselnde Suche Eine Spielsituation... O ist am Zug O kann im Prinzip auf 4 Positionen setzen usw. OXO XX OXO XX O OXO XOX OXO XX O OXO XX O OXO XX OX OXO XXX O OXO XX OX OXO XOX X OXO XOX X OXO XOX X OXO XOX OX OXO XX OXO OXO XOX OX OXO XX OOX OXO XXX OOX OXO XXX OXO OXO XOX XO OXO XOX XO OXO XOX OX OXO XOX XO OXO XOX XOX OO -- XX OOO XO Am Zug ist O: X: O: X:

4 Abwechselnde Suche Wenn O und X optimal spielen, dann gewinnt O auf jeden Fall! OXO XX OXO XX O OXO XOX OXO XX O OXO XX O OXO XX OX OXO XXX O OXO XX OX OXO XOX X OXO XOX X OXO XOX X OXO XOX OX OXO XX OXO OXO XOX OX OXO XX OOX OXO XXX OOX OXO XXX OXO OXO XOX XO OXO XOX XO OXO XOX OX OXO XOX XO OXO XOX XOX OO -- XX OOO XO Am Zug ist O: X: O: X: xx x ooooo o - -xx o ooo xxxo o

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(2 n ) (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 3 9 = 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 h 1.5*10 17 Stellungen... und 36! h 3,72*10 41 Knoten (10 80 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