Spieltheorie Hallo Welt!-Seminarvortrag Frederik Simon Universität Erlangen-Nürnberg 18. Juli 2012
What the...
Was ist Spieltheorie? Strategien Aequilibrium Tit-For-Tat Minimax-Theorem Alpha-Beta-Pruning Nim Josephus-Problem 3 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Spieltheorie Spiel Was ist Spieltheorie? Spieltheorie Game theory is the study of strategic decision making. Game theory is concerned with the actions of decision makers who are conscious that their actions aect each other. Eric Rasmusen Analytische Beschreibung und mathematische Lösung von Spielen 4 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Spieltheorie Spiel Was ist ein Spiel? Spiel A game is a series of interesting choices. Sid Meyer A game is a form of play with goals and structure. Kevin J. Maroney A game is an activity among two or more independent decision-makers seeking to achieve their objectives in some limiting context. Clark C. Abt 5 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Spieltheorie Spiel Was ist ein Spiel? Spiel Spieler Maximierung des eigenen Nutzens durch Treen von Entscheidungen Aktionen Menge von Möglichkeiten, die ein Spieler in seinem Zug hat: A i = {a i } Ergebnis/Payo Die Situation des Spielers wird am Ende des Spiels bewertet(die Ergebnisse aller Spieler zusammen bilden den Payo-Vektor): π i (s 1,..., s n ) Informationen Informationen über andere Spieler. 6 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Gefangenen-Dilemma Strategie Beispiel: Plagiatscheck Plagiatscheck Plagiatscheck in AuD vor langer Zeit TM sehr gnädig 10 Punkte pro Aufgabenblatt Bei Plagiatsverdacht unabhängiges Verhör beider Studenten Gestehen beide, werden jedem 8 Punkte abgezogen Gesteht nur einer, bekommt dieser volle Punktzahl, der andere 0 Punkte Gesteht keiner bekommen beide Studenten im Schnitt 1 Punkt abgezogen 7 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Gefangenen-Dilemma Strategie Gefangenen-Dilemma Student 1 Schweigen Gestehen Student 2 Schweigen Gestehen (-1,-1) (-10,0) (0,-10) (-8,-8) 8 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Gefangenen-Dilemma Strategie Was ist eine Strategie? Strategie Strategie Eine Regel, die Angabe darüber gibt, was ein Spieler zu einem bestimmten Zeitpunkt tut. Strategie-Menge Alle möglichen Strategien für einen bestimmten Spieler: S i = {s i } Strategie-Prol Eine geordnete Menge, die eine Strategie für jeden Spieler im Spiel enthält: s = (s i,..., s n ) 9 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Gefangenen-Dilemma Strategie Gefangenen-Dilemma Strategien Student 1 Schweigen Gestehen Student 2 Schweigen Gestehen (-1,-1) (-10,0) (0,-10) (-8,-8) Strategien: Schweigen, Gestehen Strategie-Mengen: S 1 = {Schweigen, Gestehen}, S 2 = {Schweigen, Gestehen} 10 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Denition dominantes Aequilbrium Nash-Aequilibrium Aequilibrium(Gleichgewicht) Aequilbrium Ein Aequilibrium ist ein Strategie-Prol, das für jeden der n Spieler eine beste Strategie enthält: s = (s 1,..., s n) Best response Die beste Antwort eines Spielers i auf die Strategien der anderen Spieler s i ist die Strategie si, die ihm das beste Egebnis einbringt: π(s i, s i) π(s i, s i) s i = s i 11 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Denition dominantes Aequilbrium Nash-Aequilibrium Gefangenen-Dilemma Student 1 Schweigen Gestehen Student 2 Schweigen Gestehen (-1,-1) (-10,0) (0,-10) (-8,-8) Best response S1 schweigt: S2 gesteht S1 gesteht: S2 gesteht Spiel ist symmetrisch, also gilt dasselbe auch für S1. Gestehen ist dominante Strategie. 12 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Denition dominantes Aequilbrium Nash-Aequilibrium Dominantes Aequilibrium Dominante Strategie Eine Strategie si ist eine dominante Strategie, wenn sie die beste Antwort eines Spielers zu allen anderen Strategien der anderen Spieler ist: π(s i, s i) > π(s i, s i) s i s i = s i Dominantes Aequilibrium Ein dominantes Aequilibrium ist ein Strategie-Prol, das jeweils die dominanten Strategien der einzelnen Spieler enthält. 13 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Denition dominantes Aequilbrium Nash-Aequilibrium Beispiel Milliways Essensbestellung in Milliways Essen wird bestellt und horrende Rechnung muss beglichen werden; Jedes Essen besteht aus 10 Nahrungseinheiten; Essen wird direkt an Tisch geliefert Bezahlen dauert sehr lange und so werden beim Bestellen schon 2 Nahrungseinheiten verbrannt Arthur Dent und weiÿe Maus wollen Essen bestellen; Weiÿe Maus ist Arthur überlegen. Ist weiÿe Maus zuerst beim Essen, bekommt sie 9 Nahrungseinheiten Ist Arthur zuerst beim Essen bekommt er 4 Nahrungseinheiten Beide gleichzeitig: Arthur 3 Nahrungseinheiten 14 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Denition dominantes Aequilbrium Nash-Aequilibrium Milliways Maus Bestellen Warten Arthur Bestellen Warten (5,1) (4,4) (9,-1) (0,0) Best response Maus wartet: Arthur wartet Maus bestellt: Arthur wartet Warten dominante Strategie für Arthur 16 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Denition dominantes Aequilbrium Nash-Aequilibrium Milliways Maus Bestellen Warten Arthur Bestellen Warten (5,1) (4,4) (9,-1) (0,0) Best response Arthur wartet: Maus bestellt Arthur bestellt: Maus wartet Strategie abhängig von Entscheidung von Arthur Kein dominantes Aequilibrium, da keine dominante Strategie für die Maus 17 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Denition dominantes Aequilbrium Nash-Aequilibrium Maus Bestellen Warten Arthur Bestellen Warten (5,1) (4,4) (9,-1) (0,0) 18 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Denition dominantes Aequilbrium Nash-Aequilibrium Nash-Aequilibrium Nash-Aequilibrium Ein Nash-Aequilibrium ist ein Strategie-Prol, bei dem kein Spieler Grund hat von seiner eigenen Strategie abzuweichen, sofern auch die anderen Spieler nicht abweichen. i, π i (s i, s i ) π(s i, s i ), s i logischer Schluss Jedes dominante Aequilibrium ist immer ein Nash-Aequilibrium, da es bei einer dominanten Strategie niemals einen Grund gibt, von ihr abzuweichen. 19 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Denition dominantes Aequilbrium Nash-Aequilibrium Nash-Aequilibrium und das Gefangenen-Dilemma Problematik Schweigen Gestehen Schweigen (-1,-1) (-10,0) Gestehen (0,-10) (-8,-8) Einziges Nash-Gleichgewicht(dominant) bei {Gestehen, Gestehen}. Optimal wäre jedoch {Schweigen, Schweigen}. 20 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Grundlagen Tit-For-Tat Wie du mir so ich dir Spieler handelt in erstem Zug kooperativ Imitiert in allen nachfolgenden Zügen, den voherigen Zug des Gegners Eigenschaften Klarheit Freundlichkeit Provozierbarkeit Nachsichtigkeit 21 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Denitionen Minimax Denitionen Null-Summen-Spiel Die Summer aller Werte im Payo-Vektor ist 0. Bei einem Zwei-Spieler-Spiel, bedeutet dies, dass ein Spieler versucht einen möglichst groÿen Payo zu erreichen(maximierung). Der anderer versucht das Ergebnis des ersten Spielers zu minimieren. Spielbaum Darstellung des zeitlichen Ablaufs und verschiedener Entscheidungen als Baum Kanten geben Entscheidung an Knoten enthalten zugehörigen Spieler Blätter enthalten Ergebniswerte 22 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Denitionen Minimax Spielbaum S1 dec 11 dec 12 S2 S2 dec 21 dec 22 dec 21 dec 22 a b c d 23 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Denitionen Minimax Minimax Minimax-Algorithmus As far as I can see, there could be no theory of games [... ] without that theorem [... ] I thought there was nothing worth publishing until the Minimax Theorem was proved. John von Neumann 24 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Denitionen Minimax Minimax Funktionsweise Ziel Suchen nach optimalen Strategien für jeweilige Spieler Ansatz Zwei Spielertypen. Der eine versucht eigenes Ergebnis zu maximieren(max-spieler), der andere versucht Ergebnis des anderen zu minimieren(min-spieler). Max-Spieler Wahl des Maximums aus allen möglichen Ergebnissen Min-Spieler Wahl des Minimums aus allen möglichen Ergebnissen Umsetzung Tiefensuche auf Spielbaum; Ergebnisse werden aus den Blättern nach oben gereicht, wobei der jeweilige Spielertyp entweder das Maximum oder Minimum auswählt. Aufwand O(b d ) b = Branching Factor, d = Suchtiefe 25 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Denitionen Minimax Minimax-Algorithmus 1 int minimax( int alpha, int beta, int depth, int type ) { 3 if ( depth == 0 ) return evaluate (); // evaluate computes the result of the game 5 int moves = getpossiblemovecount(); if ( moves == 0) return evaluate (); 7 for ( int i = 0; i < moves; ++i ) 9 { domove(i); 11 score = minimax( alpha, beta, depth 1, type ( 1) ); undomove(i); 13 if ( type == 1 ) 15 alpha = max( score, alpha ); else 17 beta = min( score, beta ); } 19 if ( type == 1 ) return alpha ; 21 else return beta; } 26 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Erklärung Beispiel Algorithmus Alpha-Beta-Pruning Alpha-Beta-Pruning Problem Minimax ndet ein optimales Ergebnis, ist jedoch sehr aufwändig; der gesamte Baum muss traversiert werden. Überlegung Kann Tiefensuche früher abgebrochen werden? Idee Einführung zweier Werte α(für Max-Spieler) und β(für Min-Spieler), die den aktuell bestmöglichen Payo eines Spielers zwischenspeichern. So kann die Traversierung eines Asts frühzeitig abgebrochen werden, wenn für α oder β kein besseres Ergebnis erzielt werden kann. 27 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Erklärung Beispiel Algorithmus Beispiel α S1 β S2 S2 4 3 6 1 2 3 28 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Erklärung Beispiel Algorithmus Beispiel α = 3 S1 β = 3 S2 S2 4 3 6 1 2 3 29 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Erklärung Beispiel Algorithmus Beispiel α = 3 S1 β = 3 S2 β = 1 S2 4 3 6 1 2 3 30 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Erklärung Beispiel Algorithmus Beispiel α = 3 S1 β = 3 S2 β < α S2 4 3 6 1 2 3 31 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Erklärung Beispiel Algorithmus Alpha-Beta-Pruning Algorithmus int alphabeta( int alpha, int beta, int depth, int type ) 2 { if ( depth == 0 ) return evaluate (); 4 int moves = getpossiblemovecount(); 6 if ( moves == 0) return evaluate (); 8 for ( int i = 0; i < moves; ++i ) { 10 domove(i); score = alphabeta( alpha, beta, depth 1, type ( 1) ); 12 undomove(i); 14 if ( type == 1 ) alpha = max( score, alpha ); 16 else beta = min( score, beta ); 18 if ( alpha >= beta ) 20 break ; } 22 if ( type == 1 ) return alpha ; 24 else return beta; } 32 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Winning Positions Regeln Gewinnstrategie Varianten Besondere Spielsituationen Winning Position Eine Winning Position ist eine Spielsituation, die bei perfekter eigener Spielweise immer zum Sieg führt. Losing Position Eine Losing Position ist eine Spielsituation, die bei perfektem Spiel des Gegners immer zur Niederlage führen muss. 33 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Winning Positions Regeln Gewinnstrategie Varianten The Game of Nim Grundregeln Es gibt verschiedene Haufen mit Objekten. In jeder Runde muss ein Spieler mindestens ein Objekt von genau einem Haufen entfernen. Der Spieler, der kein Objekt mehr ziehen kann, hat verloren. 34 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Winning Positions Regeln Gewinnstrategie Varianten Gewinnstrategie Verständlicher Ansatz Gegeben seien k Haufen von Objekten, wobei sich in jedem Haufen jeweils n 1, n 2,..., n k Objekte benden. Interpretation der n i als binäre Zahlen Losing Position: Gerade Anzahl von 1 in jeder Spalte Winning Position: Ungerade Anzahl in einer Spalte Aus mehreren Spalten, mit ungerader 1-Zahl, kann man durch Entfernen immer eine gerade Zahl von 1 produzieren. Aus jeder Winning Position entsteht also eine Losing Position Haben alle Spalten eine gerade 1-Zahl, so muss mindestens eine 1 weggenommen werden und somit entsteht aus jeder Losing Position eine Winning Position[Gor]. 35 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Winning Positions Regeln Gewinnstrategie Varianten Gewinnstrategie Computerstrategie Verwenden der xor-operation, um gerade oder ungerade Zahl der 1-Vorkommen zu bestimmen. Losing Position: n 1 n 2 n k = 0 Winning Position: n 1 n 2 n k = 0 n 1 n 2 n k wird Nim-Summe genannt. Perfekter Zug Für alle Haufen: n i nim-sum = x i Wähle Haufen, bei dem x i < n i und nimm n i x i Objekte weg. 36 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Winning Positions Regeln Gewinnstrategie Varianten Nim-Varianten Misère Dasselbe Spielprinzip, dieses Mal verliert jedoch der Spieler, der den letzten Stein nehmen muss. Strategie: Dieselbe wie beim Grundspiel; sobald es jedoch zu einer Situation kommt, dass in keinem Haufen mehr als 1 Objekt liegt, so muss der Zug so gewählt werden, dass eine ungerade Anzahl solcher Haufen übrig bleibt(im Gegensatz zum Grundspiel, wo eine gerade Zahl erzielt würde). 37 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Einleitung Rekurrenzgleichung Lösung Josephus-Problem Die Römer greifen an Flavius Josephus und 9 weitere Dorfbewohner üchten sich in eine Höhle Um Sklaverei zu entgehen, beschlieÿen sie Selbstmord Aufstellen in einem Kreis, wobei jeder zweite ermordet wird An welcher Position muss Josephus stehen, um als letzter übrig zu bleiben und nicht zu sterben? 38 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Einleitung Rekurrenzgleichung Lösung 9 10 9 10 1 1 2 2 3 3 8 8 7 7 6 6 5 5 4 4 Durchprobieren zeigt: 2, 4, 6, 8, 10, 3, 7, 1, 9, 5 39 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Einleitung Rekurrenzgleichung Lösung 1 9 5 1 2 3 7 4 3 5 Element an Position x war in der vorherigen Runde an Position 2x 1: J(2n) = 2J(n) 1 40 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Einleitung Rekurrenzgleichung Lösung 5 1 2 9 Bei einer ungeraden Anzahl an Elementen, gilt für die Position in der vorherigen Runde: J(2n + 1) = 2J(n) + 1 41 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Einleitung Rekurrenzgleichung Lösung 5 1 Ist nur noch ein Element übrig, ist die Lösung des Problems trivial: J(1) = 1 42 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Einleitung Rekurrenzgleichung Lösung Rekurrenzgleichung J(1) = 1 J(2n) = 2J(n) 1 J(2n + 1) = 2J(n) + 1 Aufwand: O(log n) 43 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Einleitung Rekurrenzgleichung Lösung Blockbildung n 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 J(n) 1 1 3 1 3 5 7 1 3 5 7 9 11 13 15 1 Blockbildung bei Zweierpotenzen. Sei n = 2 m + l, so gilt: J(2 m + l) = 2l + 1 Beweis durch Induktion über m und je einem Induktionsschritt für gerade und ungerade m [GKP89]. Allgemeine Schrittweite J(n, k) = ((J(n 1, k) + k 1) mod n) + 1, mit J(1, k) = 1 J(n, k) = (J(n 1, k) + k) mod n, mit J(1, k) = 0 44 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Einleitung Rekurrenzgleichung Lösung Ronald L. Graham, Donald E. Knuth, and Oren Patashnik. Concrete Mathematics. Addison-Wesley Publishing Company, 1989. Dov Gordon. Nim games. http://www.cs.umd.edu/~gordon/ysp/nim.pdf, 07. Juli 2012. Christof Heymann. Minimax und alpha-beta pruning. http://www.spiderpig.de/wordpress/wp-content/uploads/ Thema-8-Minimax-und-Alpha-Beta-Pruning-Heymann-Ausarbeitung. pdf, 05. Juli 2012. Jonathan Schaeer. The games computers (and people) play. Sebastian Wankerl. Spieltheorie, 16. Juli 2010. Game theory. http://en.wikipedia.org/wiki/game_theory, 01. Juli 2012. 45 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie
Einleitung Rekurrenzgleichung Lösung Josephus problem. http://en.wikipedia.org/wiki/josephus_problem, 09. Juli 2012. Nim. http://en.wikipedia.org/wiki/nim, 06. Juli 2012. Nim spiel. http://de.wikipedia.org/wiki/nim-spiel, 06. Juli 2012. Prisoner's dilemma. http://en.wikipedia.org/wiki/prisoner%27s_dilemma, 06. Juli 2012. 46 von 46 Frederik Simon Universität Erlangen-Nürnberg Spieltheorie