künstliche intelligenz und maschinelles lernen in computerspielen di michael pfeiffer...

77
Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer [email protected] Institut für Grundlagen der Informationsverarbeitung Maschinelles Lernen A, WS 2003/2004

Upload: ingrid-kaiser

Post on 06-Apr-2016

218 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Künstliche Intelligenz und Maschinelles Lernen in

Computerspielen

DI Michael [email protected]

Institut für Grundlagen der Informationsverarbeitung

Maschinelles Lernen A, WS 2003/2004

Page 2: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Überblick Einführung Spieltheorie Minimax – Suche Lernen in Spielen Reinforcement Learning

Page 3: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Warum Spiele? „Computer Games are the biggest AI success story to date“ [Schaeffer]

„Game Playing is to AI as Grand Prix motor racing is to the car industry“ [Russell, Norvig]

„Programming computers to play games helps understanding the mechanisms of understanding intellectual behaviour. We assume that these newer techniques will be applied to real life situations in the future, and the effort devoted to games will decrease. Perhaps we have not yet reached this turning point, and so we may still have much to learn from the study of games“ [Samuel, 1960]

Page 4: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Erfolgsstories (1) Deep Blue vs.

Kasparov (1997)

Chinook vs. Tinsley (1994)

Page 5: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Erfolgsstories (2) Reversi (Othello)

Programm Logistello: kein Mensch nimmt Herausforderung an (letzte WM: 6-0 für Programm)

Komplett gelöste Spiele 4 Gewinnt (1988) Go-Moku (~ 5 Gewinnt) (1994) Mühle (1995) Awari (2002) Dame (wahrscheinlich 2004) etc.

Page 6: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Warum besteht Interesse an Spielen? Interessante und „bequeme“

Testprobleme für neue Methoden der KI Intellektuelle Herausforderung Wirtschaftliches Interesse

Kommerzielle Spiele

Page 7: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Aktuelle Forschung an Spielen (1) Kongress „Advances in Computer Games 10“

24-27 November 2003, Graz Parallel mit Computer-Schach-WM und Olympiade Veranstaltet von ICGA (www.icga.org)

Zentren der Spiele – Forschung University of Alberta, Edmonton (Kanada) Universität Maastricht (Niederlande) Japan ...

Page 8: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Aktuelle Forschung an Spielen (2) Konzentration auf Brettspiele

Schach Go

Konzentration auf Suchtechniken Verbesserungen von bekannten Techniken Machine Learning eher „exotisch“

Page 9: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Überblick Einführung Spieltheorie Minimax – Suche Lernen in Spielen Reinforcement Learning

Page 10: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Spieltheorie (1) Teilgebiet der Mathematik

Kommt ursprünglich aus Analyse von Gesellschaftsspielen

Wird u.A. für wirtschaftliche Fragen oft eingesetzt Optimierungsproblem:

Mit welcher Strategie maximiert man den eigenen Gewinn, unter Berücksichtigung von anderen Mitspielern / Gegnern?

Page 11: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Spieltheorie (2) Definition: Nichtkooperatives Spiel

Spielermenge I = {1, ..., n} Strategiemengen Si

Auszahlungsfunktion hi: S1... Sn R

Auszahlung für einen Spieler hängt von Strategien aller Spieler ab

Spieler agieren rational Jeder Spieler versucht seine Auszahlung zu maximieren unter

Kenntnis der Möglichkeiten der anderen

Page 12: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Spieltheorie (3) Matrix – Spiele, Nullsummenspiele

G NG -2 -5

-2 -1

N -1 0

-5 0

„Gefangenendilemma“G ... Gestehen

N ... Nicht Gestehen

Stein Papier Schere

Stein 0 -1 1

Papier 1 0 -1

Schere -1 1 0

Stein-Papier-Schere (RoShamBo)

Nullsummenspiel

Page 13: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Nash - Gleichgewicht „Lösung“ von Spielen

Wahl von Strategien, sodass sich kein Spieler einseitig verbessern kann

Z.B. Gefangenendilemma: (G, G) ist Nash-Ggw. In RoShamBo z.B. existiert kein Nash-Ggw. in

reinen Strategien Abhilfe: Gemischte Strategien:

Wahrscheinlichkeitsverteilung auf allen Strategien Erwartete Auszahlung Z.B. in RoShamBo: optimal ist gleichverteilte Auswahl

von Strategien (1/3 Stein, 1/3 Papier, 1/3 Schere)

Page 14: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Minimax - Prinzip Für Nullsummenspiele

Zwei Spieler Max und Min Positive Auszahlung ist gut für Max Beide Aktionen werden gleichzeitig gewählt

Max wählt jene Strategie, die bei optimalem Verhalten von Min die größtmögliche Auszahlung liefert

Min wählt jene Strategie, die bei optimalem Verhalten von Max die kleinstmögliche Auszahlung liefert

Funktioniert auch bei Spielen mit mehreren Zügen Spielbäume

Page 15: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Überblick Einführung Spieltheorie Minimax – Suche Lernen in Spielen Reinforcement Learning

Page 16: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Game Trees1

Anfangszustand Operatoren: legale Spielzüge Endbedingungen Auszahlungsfunktion

Anfangszustand plus wiederholte Anwendung der Operatoren bis Endzustand erreicht ist bildet einen Game Tree (mit Bewertungen)

1: Quelle: [Russell, Norvig: Artificial Intelligence: A Modern Approach] (in LBS erhältlich)

Page 17: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Beispiel: Tic-Tac-Toe

Page 18: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Minimax - Algorithmus1. Bewerte alle Endzustände2. Gehe ein Level hoch und bewerte dort alle

Zustände In Min-Knoten: Wert ist Minimum-Wert aller Nachfolger In Max-Knoten: Wert ist Maximum-Wert aller Nachfolger Wiederhole diesen Schritt bis Root erreicht

3. Wähle Aktion (als Max): wähle jene Aktion, die in den am höchsten bewerteten Zustand führt

Page 19: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Beispiel für Minimax:

Komplexität: O(bm) b ... Legale Züge pro Blatt, „Branching Factor“ m ... Maximale Tiefe des Suchbaums

Page 20: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Eigenschaften von Minimax Findet bei endlichem Baum immer optimale

Lösung gegen optimalen Gegner Dadurch manchmal zu „konservativ“

Exponentielle Laufzeit Für die meisten Spiele unbrauchbar

Z.B. Schach: b=35, m=50 (pro Spieler) ca. 35100 Knoten im Spielbaum

Macht keine Unterscheidung zwischen „unsinnigen“ und „sinnvollen“ Zügen

Page 21: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Bewertungs - Funktionen Idee: Beschränke Suchtiefe

Minimax nicht bis zum Ende ausführen Suche nach gewisser Tiefe abbrechen Bewerte Zustände in dieser Ebene heuristisch mit einer

Bewertungsfunktion (Evaluation Function) Berechne damit Minimax-Wert für aktuellen Zustand

Bewertungsfunktion Muss auf Endzuständen mit Auszahlungsfunktion übereinstimmen Muss effizient berechenbar sein Muss die Gewinnchancen in jedem Zustand möglichst genau

wiedergeben

Page 22: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Bewertung von Spielsituationen (1)

Bewertungsfunktion muss viele Features der momentanen Situation in einen Wert packen z.B. Materialwert, Zugmöglichkeiten für König, etc.

Page 23: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Bewertung von Spielsituationen (2) Typische Bewertungs-Funktion:

Gewichtete Linearkombination von Features

Was sind Features? Bekannte, wichtige Bewertungskriterien z.B. Anzahl von Figuren, Schach (ja/nein), etc.

Woher kommen Gewichte? Expertenwissen Lernen!

nn fwfwfwV ...2211

Page 24: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Unvollständige Suche Frage: Wie tief sucht man?

Gegeben durch Laufzeitbeschränkung Quiescence Search:

Bewerte nur Positionen, in denen keine großen Veränderungen mehr möglich sind (sonst suche weiter)

Horizont Problem: durch ungenügende Suche glaubt man, einen schlechten Zug

vermeiden zu können, zögert ihn aber nur hinaus

Suchtiefe Spielstärke! Suchtiefe wird kleiner, je mehr Zweige man besuchen muss Wie kann man die Anzahl von Zweigen beschränken?

Page 25: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

- - Pruning : Bester (größter) Max-Wert bisher : Bester (kleinster) Min-Wert bisher

Wenn in Min-Knoten ein kleinerer Wert als berechnet wird Prune

Wenn in Max-Knoten ein größerer Wert als berechnet wird Prune

Prune: berechne keine weiteren Nachfolger in diesem Knoten

Page 26: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Beispiel: - - Pruning

Effizienz hängt von Reihenfolge der durchsuchten Knoten ab Move Ordering bringt Verbesserung

Page 27: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Spiele mit Zufallsfaktor Füge Zufalls-Knoten in

Game Tree ein Für jedes mögliche Zufallsereignis

bilde eigenen Pfad vom Zufallsknoten aus

ExpectiMiniMax – Algorithmus Ähnlich wie MiniMax Bei Zufallsknoten bilde Erwartungswert Dadurch noch mehr Pfade zu

durchsuchen Suchtiefe noch stärker beschränkt

Page 28: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Zusammenfassung: MiniMax Wird für fast alle Brettspiele verwendet Spielstärke steigt mit Suchtiefe Hauptprobleme:

Gute Bewertungs-Funktionen Viel Vorwissen notwendig (z.B. Definition der Features)

Frühzeitiges Erkennen unsinniger Pfade Dadurch mehr Zeit für sinnvolle Suche

Page 29: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Beispiel: Deep Blue Massiv Parallele Hardware-Lösung

30 Prozessoren, 480 Schach – Chips Bis zu 330 Mio. Positionen / Sekunde

Evaluation Function Summe von ca. 8000 Feature-Werten Hardware-Evaluation Function

Eröffnungsbuch Von 4 Großmeistern geschrieben Teilweise auf Kasparov spezialisiert

Großmeister-Datenbank 700,000 Spiele gespeichert

Endspiel – Datenbank Perfektes Spiel mit 5 Figuren

Page 30: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Was hat Deep Blue gebracht? Inspiration

„Real-World-Probleme“ sind lösbar! Paralleles Computing

Technologie wird heute für Simulationen von Molekülen in der Pharmazie verwendet

„Werbung“ für Parallele Technologie Kein großer Fortschritt für KI-Techniken!

Trotzdem wichtig für das ganze Gebiet!

Page 31: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Überblick Einführung Spieltheorie Minimax – Suche Lernen in Spielen Reinforcement Learning

Page 32: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Wo wird ML in Spielen eingesetzt? Lernen von Bewertungsfunktionen Lernen von Features Lernen von Pruning-Regeln Klassifizieren von Spielsituationen Lernen von Eröffnungs- und Endspiel-

Büchern Modellieren des Gegners Lernen von ganzen Strategien

Page 33: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Wo wird ML in Spielen eingesetzt? Lernen von Bewertungsfunktionen Lernen von Features Lernen von Pruning-Regeln Klassifizieren von Spielsituationen Lernen von Eröffnungs- und Endspiel-

Büchern Modellieren des Gegners Lernen von ganzen Strategien

Page 34: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Learning to Score Final Positions in Go by Eric van der Werf, H. Jaap van den

Herik, Jos Uiterwijk Univ. Maastricht, Niederlande Präsentiert bei ACG 10, Graz

Themen: Lernen von Bewertungsfunktionen Lernen aus Spieldatenbanken

Page 35: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Kurze Go-Anleitung 2 Spieler Plaziere Steine auf

Kreuzungen von Linien Verbundene Blöcke

werden entfernt, wenn sie an kein freies Feld mehr grenzen

Kein „Selbstmord“ Spieler können passen Ziel: größtes Gebiet

abgrenzen

Page 36: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Probleme in Go Kein Computerprogramm kann

mit Menschen mithalten 1 Mio. $ Preis ausgelaufen

Branching Factor zu hoch für Brute-Force Suche

Sogar Bewerten der Endstellung ist schwierig

Page 37: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Bewerten der Endstellung Spiel endet wenn beide Spieler passen Zähle gefangene Steine +

eingeschlossenes leeres Territorium Spieler mit größtem Gebiet gewinnt

Vor dem Zählen: ermittle Leben und Tod der Blöcke Tote Steine werden vom Brett entfernt Erst dann wird gezählt

Page 38: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Leben und Tod in Go Wann lebt ein

Block? Ein Block lebt, wenn er

auf keine mögliche Weise gefangen werden kann

Z.B. Blöcke mit „Augen“ leben

Alle anderen Blöcke sind tot

all blocks alive

white block is dead

eye

Page 39: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Lernaufgabe Klassifiziere tote Blöcke Lerne aus Datenbank von 9x9 Go

Spielen, die auf Internet Server gesammelt wurden ~ 18,000 Spiele, starke und schwache Gegner Gegeben: nur endgültiger Score der Partie Features sind bekannte geometrische und andere

berechnete Merkmale

Page 40: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Probleme beim Lernen Bewertungsfehler der Spieler

Durch händische Korrektur und Hilfe von GnuGo-Programm Labels generiert sehr aufwendig

Vergleich von Verschiedenen Classifiers Verschiedene Daten-Repräsentation

Page 41: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Classifier Vergleich

Neuronale Netze (Backprop) schneiden am besten ab Auch lineare Classifier sind gut geeignet Nearest Neighbour ungeeignet

n = 10,000 Training Examples

Classifier Training Error (%) Test Error (%) Training Time (s)

Linear 2.2 1.9 0.9

Log-Linear 1.0 1.2 5.6

Nearest Neighbour

0 10.2 4100

Backprop 0.5 1.0 190

Page 42: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Einfluss der Daten-Repräsentation

PCA: wie viel % Varianz wird beibehalten Hand-Crafted Features sind für gute Performance

notwendig Simples PCA-Preprocessing alleine reicht nicht aus

Test Error (%) using n Training Examples

Hand-Crafted Features

Raw PCA (100%)

PCA (90%)

n = 100 3.6 29.1 22.9 23.3

n = 1000 1.5 13.7 16.7 14.2

n = 10,000 1.0 7.5 9.9 8.9

Page 43: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Zusammenfassung Bewertung von Endpositionen aus großer

Spieldatenbank gelernt 98.9% Genauigkeit

Genauer als Durchschnitts-Spieler Keine Suche notwendig

Geplante Forschung: Machine Learning in nicht-finalen Positionen anwenden Noch größere Datenbanken zum Lernen verwenden

Page 44: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Lernen von Features Woher kommen Features in

Bewertungsfunktionen? Wissen von menschlichen Experten

Ziel: Identifikation von Features automatisieren

Ansatz: Logische Ableitung von Features aus Spielregeln Constructive Induction [Fawcett, 1993]

Page 45: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Lernen von Pruning-Regeln Problem von Minimax: Ganzer Baum muss

durchsucht werden Selective Search:

Prune jene Teilbäume, die höchstwahrscheinlich den Minimax – Wert nicht verändern

ProbCut [Buro, 1995]: Minimax-Wert in verschiedenen Suchtiefen ist korreliert Vorhersage von Minimax-Wert in größerer Tiefe durch Wert

in geringerer Tiefe (mit linearer Regression) Liegt Vorhersage außerhalb Konfidenzintervall Prune

Page 46: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Klassifizieren von Spielsituationen Klassifiziere Brettstellung als

Gewinn in x Zügen Verlust in x Zügen Unentschieden

Wird vor allem für Endspiel eingesetzt

Beispiel in Weka: KR-vs-KP Datensatz

Page 47: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Lernen von Eröffnungsbüchern Verwende große Datenbanken von

gesammelten Spielen Großmeister-Spiele Internet Server Logs

Bewerte Eröffnungszüge nach Ausgang der Partie Spielstärke (ELO-Zahl) des Spielers

Page 48: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Opponent Modelling Spieltheorie geht immer von worst-case aus

Gegner spielt optimale Strategie Konservative Taktik: vermeide Niederlage

Bei Ausnützen von Informationen über Gegner ist bessere Performance möglich Optimale Strategie spielt immer gleich gut, egal wie gut oder

schlecht der Gegner ist Mit Opponent Model: Spieler besiegt schwächere Gegner

öfter als die optimale Strategie

Page 49: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Opponent Modelling in Poker Nichtvollständige

Information Suche nutzlos

Gegner einschätzen Bluffer, konservativ, ...

Lerne aus vorigen Spielen

Lerne aus Setz-Strategie der Gegner

Page 50: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Gegner – Modell prob (Karten | Verhalten)

Verhalten besteht aus Setz-Verhalten des Gegners und anderer verfügbarer Information

Programme Loki und Poki [Billings, 1999] Gewinnen regelmäßig auf Internet Server Noch nicht auf WM – Niveau

RoShamBo (Stein-Papier-Schere): Mit Opponent-Modelling besseres Turnier-Spiel als optimale

Strategie Kann schwache Strategien ausnützen

Page 51: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Learning to Fly [Sammut, et.al. 1992] Supervised Learning für

Strategien-Lernen

Lerne die Steuerung eines Flugzeugs in einem Flugsimulator

Lerne von gesammelten Daten erfahrener Piloten

Trainiere einen C4.5 Entscheidungsbaum

Page 52: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Learning to Fly (2) Attribute sind durch 20 Zustands-

Variablen gegeben (Höhe, Geschwindigkeit, ...)

Target Output ist die Reaktion von 3 Piloten in je 30 Flugversuchen 90.000 Trainingsbeispiele

Mehrere Entscheidungsbäume gelernt: für jede Steuerung einen (z.B. Schub,

Höhenruder, Seitenruder, Landeklappen)

Page 53: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Learning to Fly (3) Beispiel für gelernte

Strategie Schub (Thrust) in

diskrete Stufen eingeteilt z_feet ist Abstand zur

Rollbahn elevation ist Neigung des

Flugzeugs Lerne verschiedene

Regeln für jede Flugphase

Page 54: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Learning to Fly: Ergebnis Programm lernt tatsächlich fliegen Flugkurve ist besser als die der

erfahrenen Piloten Effekt von Generalisierung Weniger Korrekturen notwendig

Eher „exotische“ Anwendung

Page 55: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Überblick Einführung Spieltheorie Minimax – Suche Lernen in Spielen Reinforcement Learning

Page 56: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Reinforcement Learning (RL) Vorschau auf Maschinelles Lernen B

SS 2004: 2 VO + 1 UE

Themen der Vorlesung: Lernen von Strategien Reinforcement Learning Genetische Algorithmen

Page 57: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Grundidee von Reinforcement Learning Lernen durch Interaktion mit der Umwelt Agent befindet sich in einem Zustand s Agent führt eine Aktion a aus Agent bekommt von der Umwelt einen Reward

r(s, a)

Ziel: Maximiere den langfristigen gesammelten Reward

Lerne dazu eine Bewertung Q(s,a) von Aktionen in jedem möglichen Zustand

Page 58: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Rewards Rewards geben an, wie „gut“ die gewählte Aktion

war Beispiele (aus dem täglichen Leben):

Herdplatte: Kind greift auf heiße Herdplatte Stark negativer „Reward“

Dressur: Hund apportiert geworfenen Stock Belohnung durch Herrchen: positiver „Reward“

Beispiele (aus der KI): Spielende: Spieler gewinnt / verliert das Spiel

Je nach Ausgang positiver / negativer Reward Roboter erreicht sein Ziel / fährt gegen ein Hindernis

Positiv / Negativ

Page 59: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Lernverfahren1. Starte mit beliebiger Strategie2. Führe im momentanen Zustand die von der

aktuellen Strategie vorgeschlagene Aktion aus3. Beobachte Feedback der Umwelt beim Ausführen

einer Aktion (reward, neuer Zustand)4. Verbessere dadurch die geschätzte Bewertung

dieser Aktion im momentanen Zustand5. Ändere die Strategie entsprechend der neuen

Bewertung der Aktionen6. Wiederhole 2. – 5. bis Ende erreicht

Page 60: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Beispiel: Grid - World

Ziel: Gehe in ein graues Eckfeld

Gehen „bringt“ Reward –1 Links: Bewertung der

zufälligen Policy Rechts: Neue Policy, die

auf Bewertung basiert Anfangs völlig zufällige

Policy Mit zunehmender

Erfahrung wird Policy immer besser

Zum Schluss ist sie optimal

Page 61: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

TD Gammon [Tesauro, 1995] Größter Erfolg von

Reinforcement Learning Programm spielt auf

Weltmeisterniveau Programm lernt völlig

selbständig Kaum a-priori Wissen

Training durch Spiele gegen sich selbst

Page 62: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

TD Gammon: Technik (1) Evaluation Function

Wird durch Neuronales Netzwerk dargestellt

NN gibt die Gewinn-Wahrscheinlichkeit für jede Position an

Kurze ExpectiMiniMax-Suche (2 plies)

Input – Repräsentation binäre Darstellung der

momentanen Brettsituation Später: komplexere

Backgammon-Features

Page 63: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

TD Gammon: Technik (2) Training

Spielt Trainingsspiele gegen sich selbst Rewards: +1 für Sieg, –1 für Niederlage, sonst 0 Temporal Difference (TD) Learning verbessert Schätzung

für Nicht-Endpositionen Neuronales Netzwerk wird auf neue Schätzwerte trainiert

(mit Backprop-Algorithmus)

Leistung Steigt mit Anzahl der Trainingsspiele Bis zu 1.5 Mio. Trainingsspiele

Page 64: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

TD Gammon: Resultate (1) Original-Version (ohne Vorwissen)

Erreicht Level anderer Programme Mit Verbesserungen

Unter den Top-3 Spielern der Welt (menschlich und Computer)

Anzeichen von Kreativität TD-Gammon spielte Eröffnungszüge anders als

menschliche Großmeister Heute spielen die Menschen die selben Züge!

Page 65: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

TD Gammon: Resultate (2) Funktioniert das Konzept immer?

Bei Schach und Go nicht Möglicherweise große Anzahl von

Trainingsspielen mitentscheidend Durch Zufallsfaktor dürfte Backgammon besser

geeignet für Reinforcement Learning sein Warum?

Mehr Zustände werden ausprobiert Bewertung auch für seltene Züge gelernt

Page 66: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Siedler von Catan (1) Beliebtes modernes

Brettspiel (© Klaus Teuber, 1995)

Spielbrett Produktion Bauen Tauschhandel Siegpunkte Taktiken

Page 67: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Siedler von Catan (2) Diplomarbeit [Pfeiffer, 2003]

Lerne Strategie für gesamtes Spiel durch Reinforcement Learning

Probleme 4 Spieler statt nur 2 Hoher Zufallsfaktor Komplexe Spielregeln Unterschiedliche Spielteile (Handeln, Bauen, etc.) Lang- und kurzfristige Planung Verschiedenste Gewinnstrategien Gegnerbeobachtung usw.

Page 68: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Siedler von Catan (3) Vorgangsweise: Hierarchisches RL

Lerne High-level Strategie: gibt langfristiges Ziel an Lerne Low-level Strategie: wie erreicht man das Ziel der

High-level Strategie? Primitive Aktionen: mit Vorwissen ausprogrammiert Self – play: Lernen durch Spielen gegen sich selbst

Komplexer Feature-Raum 494 binäre Attribute Verwende Model-Tree zur Approximation (Verallgemeinerte

Entscheidungsbäume für reellwertige Funktionen)

Page 69: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Siedler von Catan (4) Handeln

Kombination von Vorwissen und Lernen Deterministische Handelsstrategie „Preise“ für den Handel werden aus gelernter

Bewertungsfunktion gelernt Bsp.: Welcher Handel bringt mich dem

momentanen Subgoal am nächsten? Gegner-Modellierung: Wie gut ist ein Handel für

den Gegner?

Page 70: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Siedler von Catan: Ergebnisse Ohne Vorwissen

Schlechter Lernerfolg durch Overfitting Kein Erfolg gegen Menschen

Mit Vorwissen High-level Strategie vorgegeben Schlägt alle vorhergehenden Strategien Gewinnt ca. 20 % gegen Menschen Lernen durch Imitieren der deterministischen Strategie bringt

Verbesserung gegenüber vorherigen Ansätzen

Page 71: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Siedler von Catan: Neue Erkenntnisse Erster Versuch von Reinforcement Learning

für ein Spiel dieser Komplexität Könnte auch bei kommerziellen Spielen anwendbar sein Neue Richtung von Forschung über Spiele

Ansatz kann bei Einbringen von genügend Vorwissen gut funktionieren

„Tabula-Rasa“-Lernen funktioniert nicht Lernen von Teilstrategien funktioniert gut

Page 72: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Kommerzielle Spiele (1) Für Menschen einfacher, für Computer

komplizierter Schach oder Backgammon „liegen“ dem

Computer besser als Ego-Shooter, Sportspiele, Echtzeit-Strategiespiele

Stand der KI in kommerziellen Spielen ist seit min. 10 Jahren (fast) unverändert!

Page 73: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Kommerzielle Spiele (2) Lernen in Kommerziellen Spielen

Fehlerrate zurückdrehen Fixierte Neuronale Netze (kein online Lernen)

Reinforcement Learning in Spielen Creatures Black & White

Page 74: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Kommerzielle Spiele (3) Sehr Großes Potential

Siehe Online Spiele Ziel: Menschen-ähnliche KI

Lernen gehört dazu

Trotz wirtschaftlicher Bedeutung noch wenig Forschung Daher viel Platz für neue Ideen!

Page 75: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Pläne für RL in Computerspielen Robotic Soccer (RoboCup) Bewegungslernen

Rennspiele, Sportspiele (Kommerzielle) Strategiespiele Opponent Modelling

Demnächst: Projekte oder Diplomarbeiten in diesem Bereich

Page 76: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Quellen (1)Papers J. Schaeffer: The Games Computers (and People) play; Advances in

Computers 50:189-266, 2000 J. Fürnkranz: Machine Learning in Games: A Survey; Technical Report

OEFAI-TR-2000-31, 2000 C. Sammut: Learning to Fly, Proceedings of ICML 9, 1992

Bücher J. Schaeffer, J. van den Herik: Chips Challenging Champions; Elsevier

Amsterdam, 2002 Advances in Computer Games: Many Games, Many Challenges;

Proceedings of ACG-10, Kluwer 2003 Russell, Norvig: Artificial Intelligence, A Modern Approach; Prentice

Hall, 1995 (in LBS)

Page 77: Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung

Quellen (2)Online M. Pfeiffer: Machine Learning Applications in Computer Games

(Diplomarbeit), 2003 (www.igi.tugraz.at/cluster/pfeifferDA.pdf) ICGA: International Computer Games Association (www.icga.org) University of Alberta GAMES Group (www.cs.ualberta.ca/~games) Universität Maastricht Computer-Games Group (www

.cs.unimaas.nl/~uiterwyk/cg.html)

Weitere Links auf meiner Homepage: (www.igi.tugraz.at/pfeiffer)