Spiele. Programmierpraktikum WS04/05 Lange/Matthes 106

Ähnliche Dokumente
Spiele in der Informatik

Einführung in Heuristische Suche

Hackenbusch und Spieltheorie

2 Spiele. 2.1 Spiele und Strategien

Technische Universität München Zentrum Mathematik Propädeutikum Diskrete Mathematik. Weihnachtsblatt

Übung zu Grundbegriffe der Informatik. Simon Wacker. 15. November 2013

liefern eine nicht maschinenbasierte Charakterisierung der regulären

Beispiel. Bsp.: Betrachte Schlussweise in: (3) folgt aus (1) und (2), siehe z.b. Resolutionsregel. was ist mit folgender Schlußweise:

Induktive Definitionen

Klausur Informatik-Propädeutikum (Niedermeier/Hartung/Nichterlein, Wintersemester 2012/13)

2. Repräsentationen von Graphen in Computern

10. Vorlesung. 12. Dezember 2006 Guido Schäfer

Rekursiv aufzählbare Sprachen

1 Einführung. 2 Typ-0- und Typ-1-Sprachen. 3 Berechnungsmodelle. 4 Unentscheidbarkeit. 5 Unentscheidbare Probleme. 6 Komplexitätstheorie

Bericht vom 1. Leipziger Seminar am 25. November 2006

2. Spiele. Arten von Spielen. Kombinatorik. Spieler haben festgelegte Handlungsmöglichkeiten, die durch die Spielregeln definiert werden.

Literatur. Dominating Set (DS) Dominating Sets in Sensornetzen. Problem Minimum Dominating Set (MDS)

Differenzengleichungen. und Polynome

Proseminar: Geschichte des Computers Schachprogrammierung Die Digitale Revolution

Uninformierte Suche in Java Informierte Suchverfahren

1 Σ endliches Terminalalphabet, 2 V endliche Menge von Variablen (mit V Σ = ), 3 P (V (Σ ΣV )) {(S, ε)} endliche Menge von Regeln,

Proseminar: Primzahlen 1. Vortrag Der erweiterte euklidische Algorithmus

Neutrale kombinatorische Spiele

Vorlesung 4 BETWEENNESS CENTRALITY

Stefan Schmid TU Berlin & T-Labs, Berlin, Germany. Reduktionen in der Berechenbarkeitstheorie

Konzepte der AI. Maschinelles Lernen

Übungen zur Vorlesung Funktionentheorie Sommersemester Lösungshinweise zum Klausurvorbereitungsblatt. (z) i f. 2xe (x2 +y 2) i2ye (x2 +y 2 ) 2

Berechenbarkeitstheorie 17. Vorlesung

Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen

Theoretische Informatik 2

Bäume und Wälder. Bäume und Wälder 1 / 37

Erfüllbarkeit und Allgemeingültigkeit

11.1 Kontextsensitive und allgemeine Grammatiken

WS 2013/14. Diskrete Strukturen

Analysis I - Stetige Funktionen

WS 2009/10. Diskrete Strukturen

Übung zur Vorlesung Algorithmische Geometrie

Einführung in die Informatik 2

ÜBUNGSBLATT 11 LÖSUNGEN MAT121/MAT131 ANALYSIS II FRÜHJAHRSSEMESTER 2011 PROF. DR. CAMILLO DE LELLIS

Mathematik II für Inf und WInf

IV. Spieltheorie. H. Weber, FHW, OR SS07, Teil 7, Seite 1

Stetige Funktionen, Binomischer Lehrsatz

Wissensbasierte Systeme

Codierung, Codes (variabler Länge)

Spiele für den. Christian Dax. Betreuer: Dr. Martin Lange. Wiederholung Spiele für VAL und SAT ν-line Automaten Entscheidungsverfahren

7 Endliche Automaten. Reimund Albers Papierfalten Kapitel 7 Endliche Automaten 103

Mathematik für Wirtschaftswissenschaftler im WS 2013/14 Lösungen zu den Übungsaufgaben (Vortragsübung) Blatt 7

Wiederholung zu Flüssen

14. Rot-Schwarz-Bäume

Lösungen zu Aufgabenblatt 7P

Wortproblem für kontextfreie Grammatiken

2 Mengen und Abbildungen

Lineare Gleichungssysteme

Turing-Maschinen. Definition 1. Eine deterministische Turing-Maschine (kurz DTM) ist ein 6- Dem endlichen Alphabet Σ von Eingabesymbolen.

Formale Methoden 1. Gerhard Jäger 16. Januar Uni Bielefeld, WS 2007/2008 1/19

Aussagenlogik zu wenig ausdrucksstark für die meisten Anwendungen. notwendig: Existenz- und Allaussagen

1. Einleitung wichtige Begriffe

6. Induktives Beweisen - Themenübersicht

19 Folgen. Grenzwerte. Stetigkeit

1 Varianten von Turingmaschinen

2.4 Kontextsensitive und Typ 0-Sprachen

Erzeugende Funktionen

Probeklausur zur Vorlesung Berechenbarkeit und Komplexität

Suche in Spielbäumen Spielbäume Minimax Algorithmus Alpha-Beta Suche. Suche in Spielbäumen. KI SS2011: Suche in Spielbäumen 1/20

Vertiefung NWI: 13. Vorlesung zur Wahrscheinlichkeitstheorie

5 Zwei spieltheoretische Aspekte

Mengen und Abbildungen

Lineare Algebra 1. Detlev W. Hoffmann. WS 2013/14, TU Dortmund

Vorlesung. Funktionen/Abbildungen

Künstliche Intelligenz Maschinelles Lernen

Grundlagen der Künstlichen Intelligenz

NP-Vollständigkeit. Krautgartner Martin ( ) Markgraf Waldomir ( ) Rattensberger Martin ( ) Rieder Caroline ( )

Nichtdeterministische Platzklassen

6. Flüsse in Netzwerken Berechnung maximaler Flüsse. dann berechnet der Markierungsalgorithmus für beliebige Kapazitätsfunktionen

Grundbegriffe der Informatik

KI und Sprachanalyse (KISA)

Diskrete Strukturen und Logik WiSe 2007/08 in Trier. Henning Fernau Universität Trier

Grundlagen der Künstlichen Intelligenz

Ausgewählte unentscheidbare Sprachen

18 Höhere Ableitungen und Taylorformel

Trigonometrische Funktionen Luftvolumen

Wissensbasierte Systeme

abgeschlossen unter,,,, R,

Kapitel 5 Untermannigfaltigkeiten. 5.1 Glatte Flächen in R 3

Funktionen mehrerer Variabler

ist ein regulärer Ausdruck.

Guten Morgen und Willkommen zur Saalübung!

Bäume Jiri Spale, Algorithmen und Datenstrukturen - Bäume 1

Approximationsalgorithmen

(Man sagt dafür auch, dass die Teilmenge U bezüglich der Gruppenoperationen abgeschlossen sein muss.)

Theoretische Grundlagen der Informatik

Algorithmen und Datenstrukturen 2

9 Die Normalverteilung

Nichtlineare Gleichungssysteme

Surjektive, injektive und bijektive Funktionen.

Am Dienstag, den 16. Dezember, ist Eulenfest. 1/48

3. Ziel der Vorlesung

23.1 Constraint-Netze

Deterministische Turing-Maschinen (DTM) F3 03/04 p.46/395

Hilbert-Kalkül (Einführung)

Transkript:

Spiele Programmierpraktikum WS04/05 Lange/Matthes 106

Theorie eines Spiels mathematisch: k-spieler Spiel ist Graph G = (V, E) wobei V partitioniert in V 1,..., V k Knoten v V heissen Konfigurationen oft gegeben: v 0 V Startkonfiguration (Anfangszustand) Programmierpraktikum WS04/05 Lange/Matthes 107

Folgen Def.: Sei M Menge, M bezeichnet die Menge aller, endlichen Folgen von Elementen aus M. M + ist die Menge alle nicht-leeren, endlichen Folgen über M. Bem.: M + = MM Def.: (Präfixordnung) Geg. f, g M, dann ist f g, falls h M, fh = g Programmierpraktikum WS04/05 Lange/Matthes 108

Partien hier: nur endliche Partien π V + heisst Partie, falls gilt: π = v 0 v 1... v n für ein n N für alle i = 0,..., n 1: (v i, v i+1 ) E Programmierpraktikum WS04/05 Lange/Matthes 109

Entstehen einer Partie induktiv: Start: π := v 0 nächster Schritt: gegeben π = v 0... v n, 1. v n V i für ein i {1,..., k} 2. Spieler i wählt v n+1 V mit (v n, v n+1 ) E 3. Partie wird π := v 0... v n v n+1 Programmierpraktikum WS04/05 Lange/Matthes 110

Gewinnbedingungen eine Gewinnbedingung ist eine partielle Abbildung W : V + {1,..., k} mit π keine Partie : W(π) undefiniert (warum nicht?) für jede Partie π existiert Partie π mit π π und W(π ) is definiert falls π π und W(π) = i, dann auch W(π ) = i ist W(π) = i, dann sagen wir, dass Spieler i die Partie π gewinnt Programmierpraktikum WS04/05 Lange/Matthes 111

Erreichbarkeitsspiele spezielle, einfache Art von Spielen Gewinnbedingung partielle Abbildung W : V {1,..., k} Spieler i gewinnt Partie π = v 0... v n falls W(v n ) = i Programmierpraktikum WS04/05 Lange/Matthes 112

Gewinnstrategien eine Gewinnstrategie für Spieler i ist eine partielle Abb. σ : V + V, mit falls π = v 0... v n Partie und v n V i, dann ist σ(π) definiert und (v n, σ(π)) E Spieler i gewinnt jede Partie, solange er die Züge in σ macht Thm.: In jedem Spiel hat höchstens 1 Spieler eine Gewinnstrategie. Programmierpraktikum WS04/05 Lange/Matthes 113

Beispiel Auswertungsproblem für boolesche Ausdrücke Geg. Term f über 0, 1,,, ist f 1? Konfigurationen: Subterme Startkonf.: f Übergänge und Gewinnbedingungen: Spieler 1 zieht von g h nach g oder h, gewinnt in 0 Spieler 2 zieht von g h nach g oder h, gewinnt in 1 Thm.: f 1 gdw. Spieler 2 eine Gewinnstrategie hat Programmierpraktikum WS04/05 Lange/Matthes 114

Determiniertheit Def.: Ein Spiel heisst determiniert, falls genau 1 Spieler eine Gewinnstrategie hat. Termauswertungsspiel z.b. ist determiniert. Programmierpraktikum WS04/05 Lange/Matthes 115

Der Satz von Zermelo Thm.: (Zermelo, 1913) Jedes 2-Spieler Erreichbarkeitsspiel ist determiniert. Bem.: Motivation war Schachspiel gilt nicht für mehr als 2 Spieler ab jetzt nur noch 2-Spieler-Spiele Programmierpraktikum WS04/05 Lange/Matthes 116

Bedeutung der Determiniertheit Beweis der Determiniertheit kann Strategie explizit konstruieren Bsp.: Termauswertungsspiel, Beweis der Determiniertheit Induktion über Termstruktur f = 0 oder f = 1: Spieler 2, bzw. 1 hat triviale Gewinnstrategie f = g h: Spieler 2 muss g oder h wählen nach Voraussetzung Spiele für g und h determiniert Spieler 2 hat Gewinnstrategie für f, falls er eine für g oder h hat falls nicht, so hat Spieler 1 eine Gewinnstrategie für f f = g h: analog Programmierpraktikum WS04/05 Lange/Matthes 117

Explizite vs. implizite Darstellung explizite Darstellung der Strategie für Spieler 2: Baum der Subterme, -Knoten hat einen Nachfolger -Knoten hat zwei Nachfolger implizite Darstellung: Spieler 2 wählt den Subterm, der zu 1 auswertet Problem: implizite Darstellung zwar kompakt, aber unbrauchbar zur Lösung des Auswertungsproblems Programmierpraktikum WS04/05 Lange/Matthes 118

Positionale Determiniertheit Def.: Eine positionale Gewinnstrategie ist eine Gewinnstrategie vom Typ: V V Idee: aktueller Zug hängt nur von aktueller Konfiguration ab, nicht von bisherigem Verlauf der Partie andere Bezeichnung: history-free, memory-less Def.: positionale Determiniertheit = Determiniertheit mit positionalen Gewinnstrategien Thm.: Jedes 2-Spieler Erreichbarkeitsspiel ist positional determiniert. Programmierpraktikum WS04/05 Lange/Matthes 119

Bedeutung der positionalen Determiniertheit positionale Gewinnstrategien lassen sich explizit als Graph statt als Baum speichern Bsp.: f(x) = x x, g(x) = x x g(f(g(f(g(f(... g(1)...)))))) }{{} n mal Strategie als Baum hat Grösse O(2 n ) Strategie als Graph hat Grösse O(n) Programmierpraktikum WS04/05 Lange/Matthes 120

Spiele mit Unentschieden s. originale Arbeit von Zermelo Modellierung genauso, aber Gewinnbedingung W : V + {1, 2, U} jetzt gewinnen und verlieren nicht mehr dual ersetze gewinnen durch nicht verlieren, dann Determiniertheit bleibt erhalten, da es keinen Spieler U gibt Programmierpraktikum WS04/05 Lange/Matthes 121

Spiele mit mehr als 2 Spielern Reduktion auf 2-Spieler Modell: Wenn ich verlieren, dann ist es mir egal, wer gewinnt. aus Sicht des Einzelnen jeweils als 2-Spieler-Spiel behandeln Programmierpraktikum WS04/05 Lange/Matthes 122

Würmer Versenken Fragen: Ist Würmer Versenken ein 2-Spieler-Spiel im obigen Sinne? Ist es ein Erreichbarkeitsspiel? Konf.: SpielVariante +... Gewinnbed.: i gewinnt in Konf. ohne Würmer für i Programmierpraktikum WS04/05 Lange/Matthes 123

Würmer Versenken in jeder 2-Spieler-Version von Würmer Versenken hat ein Spieler eine Gewinnstrategie genauer: eine Strategie, nicht zu verlieren wozu Spiel noch spielen lassen? Programmierpraktikum WS04/05 Lange/Matthes 124

Komplexität Bsp. Spielbrett der Grösse 20 x 20, 50% freie Felder je 5 Würmer der Länge 1 Anzahl verschiedener Konfigurationen ca. 5.657.653.085.871.350.000 Programmierpraktikum WS04/05 Lange/Matthes 125

Problem implizite Strategie-Repräsentation nicht konstruktiv explizite Strategie-Repräsentation nicht durchführbar wegen Komplexität Lösung: Heuristiken Def.: Heuristik = Näherungsverfahren ohne Garantie auf Erfolg Programmierpraktikum WS04/05 Lange/Matthes 126

Aufgabenstellung Programmieren eines automatischen Spielers (einer Strategie, einer Heuristik) nicht akzeptabel: trivialer Spieler, der z.b. nur zufällige Züge macht Implementierung dessen zu Testzwecken jedoch empfohlen Stoff zu Strategien, Heuristiken: nur Vorschläge, keine Vorschriften Programmierpraktikum WS04/05 Lange/Matthes 127

Bewertungsfunktion eine Bewertungsfunktion γ misst die Güte einer Konfiguration, also z.b. γ : V N Bsp.: γ(v) = distanz(w, Loch) eigene Würmer w Bsp.: γ 1 (v) = wie schnell komme ich zum Loch γ 2 (v) = wie gut kann ich blockieren γ(v) = c 1 γ 1 (v) + c 2 γ 2 (v) Programmierpraktikum WS04/05 Lange/Matthes 128

Greedy-Algorithmus greedy = tue das momentan beste berechne Bewertungsfunktion für alle möglichen Folgekonfigurationen mache Zug zu derjenigen mit bester Bewertung + leicht zu implementieren + kaum Speicherverbrauch - interessiert sich nicht für Züge des Gegners - greedy-strategien oft nicht optimal - verschwendet Rechenzeit Programmierpraktikum WS04/05 Lange/Matthes 129

Approximation berechne nicht vollständigen Graph der Konfigurationen, sondern nur Teil davon, abhängig von verfügbarer Rechenzeit Speicherplatz + berücksichtigt Züge des Gegners + nutzt Rechenzeit besser aus - garantiert nicht, keinen schlechten Zug zu machen Programmierpraktikum WS04/05 Lange/Matthes 130