Künstliche Intelligenz und Maschinelles Lernen in Computerspielen

Slides:



Advertisements
Ähnliche Präsentationen
Grundlagen des A*-Algorithmus und Anwendung in der Routenplanung
Advertisements

Perceptrons and the perceptron learning rule
GIN2 SS05 Prof. Dr. W. Conen, Nullsummen-Spiele - Min-Max-Suche - Alpha-Beta-Pruning (späterer Termin)
TECHNISCHE UNIVERSITÄT DARMSTADT Naive Bayes for Ranking
Suche in Texten (Stringsuche )
Wie lernt FUSC# mit TD( )? Marco Block... X1X1 X2X2 XNXN x1x1 x2x2 pd[i] =w1f1(x) + w2f2(x) + w3f3(x) wnfn(x)... w1f1(x) + w2f2(x) + w3f3(x) +...
1/21 UNIVERSITY OF PADERBORN Projektgruppe KIMAS – Reinforcement Learning in MAS Projektgruppe KIMAS Reinforcement Learning in MAS Marc Pannenberg.
Genetische Algorithmen
Genetische Algorithmen
Adversariale Suche Spielprogrammierung.
Informierte Suche.
Einführung.
Spielbäume Richard Göbel.
Sortierverfahren Richard Göbel.
Heuristiken Automatic Problem Solving Institut für Informatik
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (19 - Analyse natürlicher Bäume) Prof. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (27 – Kürzeste Wege) Prof. Th. Ottmann.
Reinforcement Learning
Effiziente Suche in Bilddatenbanken
PG 520 Intelligence Service – gezielte Informationen aus dem Internet
Algorithmen und Komplexität
Intelligentes Crawling im WWW mit Hilfe intuitiver Suchbedingungen
Teil 5: Kollisionsvermeidung & Wegplanung
Analyse eines Handballspielzuges
Handlungsplanung und Allgemeines Spiel „Game Description Language (GDL)“ Peter Kissmann.
Handlungsplanung und Allgemeines Spiel „Ausblick: GDL-II“
Machine Learning KNN und andere (Kap. 8).
Machine Learning Decision Trees (2).
Machine Learning Was wir alles nicht behandelt haben.
Maschinelles Lernen und automatische Textklassifikation
Machine Learning & Spiele: Probleme und Ideen von Samuel bis heute Giuliana Sabbatini
Effiziente Algorithmen
Computational Thinking Wie spielen Computer? [Sind sie unbesiegbar?]
Verwendung von Maschinellem Lernen in einer einfachen Computerspielumgebung Anglberger Harald Brandl Stephan Mai 2003.
Splay Trees Von Projdakov Benjamin.
Game Programming mit Lua
Computational Thinking Online Algorithmen [Was ist es wert, die Zukunft zu kennen?] Kurt Mehlhorn Konstantinos Panagiotou.
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Softwaretechnologie II (Teil I): Simulation und 3D Programmierung Prof.
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Effiziente Algorithmen
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Effiziente Algorithmen
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/ /23.1.
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Hartmut Klauck Universität Frankfurt SS
Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/
Spieltheorie Mária Némethy.
Go Das Spiel der Götter.
Multivariate Statistische Verfahren
Das Traveling Salesman Problem (TSP)
Lernmodelle und Experimentelle Untersuchungen
Artificial Intelligience
Algorithmen und Datenstrukturen 1 SS 2002
The PicSOM Retrieval System 1 Christian Steinberg.
SS 2009Maschinelles Lernen und Neural Computation 133 Kapitel 7: Ensemble Methoden.
Der A*-Algorithmus.
Geoinformationssysteme
EIN NEUES ENSEMBLE- KLASSIFIKATIONSVERFAHREN Tim Schneider Rotation Forest.
CL Tree MW 31.1 Business Intelligence Wintersemester 2015 / 2016 Stanislav Prokupetz.
Rechen- und Kommunikationszentrum (RZ) Selektionsstrategien auf Graphstrukturen Sven Porsche Seminarvorträge Aachen.
Emanuel Mistretta Lukas Schönbächler
 Präsentation transkript:

Künstliche Intelligenz und Maschinelles Lernen in Computerspielen DI Michael Pfeiffer pfeiffer@igi.tugraz.at Institut für Grundlagen der Informationsverarbeitung Maschinelles Lernen A, WS 2003/2004

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

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]

Erfolgsstories (1) Deep Blue vs. Kasparov (1997) Chinook vs. Tinsley (1994)

Erfolgsstories (2) Reversi (Othello) Komplett gelöste Spiele 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.

Warum besteht Interesse an Spielen? Interessante und „bequeme“ Testprobleme für neue Methoden der KI Intellektuelle Herausforderung Wirtschaftliches Interesse Kommerzielle Spiele

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 ...

Aktuelle Forschung an Spielen (2) Konzentration auf Brettspiele Schach Go Konzentration auf Suchtechniken Verbesserungen von bekannten Techniken Machine Learning eher „exotisch“

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

Spieltheorie (1) Teilgebiet der Mathematik Optimierungsproblem: 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?

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

Stein-Papier-Schere (RoShamBo) Spieltheorie (3) Matrix – Spiele, Nullsummenspiele G N -2 -5 -1 Stein Papier Schere -1 1 „Gefangenendilemma“ G ... Gestehen N ... Nicht Gestehen Stein-Papier-Schere (RoShamBo) Nullsummenspiel

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)

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

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

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)

Beispiel: Tic-Tac-Toe

Minimax - Algorithmus Bewerte alle Endzustände 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 Wähle Aktion (als Max): wähle jene Aktion, die in den am höchsten bewerteten Zustand führt

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

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

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

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.

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!

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?

 -  - 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

Beispiel:  -  - Pruning Effizienz hängt von Reihenfolge der durchsuchten Knoten ab Move Ordering bringt Verbesserung

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

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

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

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!

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

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

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

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

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

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

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

Leben und Tod in Go Wann lebt ein Block? Alle anderen Blöcke sind tot 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 eye white block is dead

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

Probleme beim Lernen Bewertungsfehler der Spieler Vergleich von Durch händische Korrektur und Hilfe von GnuGo-Programm Labels generiert  sehr aufwendig Vergleich von Verschiedenen Classifiers Verschiedene Daten-Repräsentation

Classifier Vergleich Neuronale Netze (Backprop) schneiden am besten ab 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 10.2 4100 Backprop 0.5 190 Neuronale Netze (Backprop) schneiden am besten ab Auch lineare Classifier sind gut geeignet Nearest Neighbour ungeeignet

Einfluss der Daten-Repräsentation 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 PCA: wie viel % Varianz wird beibehalten Hand-Crafted Features sind für gute Performance notwendig Simples PCA-Preprocessing alleine reicht nicht aus

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

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]

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

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

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

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

Opponent Modelling in Poker Nichtvollständige Information Suche nutzlos Gegner einschätzen Bluffer, konservativ, ... Lerne aus vorigen Spielen Lerne aus Setz-Strategie der Gegner

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

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

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)

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

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

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

Reinforcement Learning (RL) Vorschau auf Maschinelles Lernen B SS 2004: 2 VO + 1 UE Themen der Vorlesung: Lernen von Strategien Reinforcement Learning Genetische Algorithmen

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

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

Lernverfahren Starte mit beliebiger Strategie Führe im momentanen Zustand die von der aktuellen Strategie vorgeschlagene Aktion aus Beobachte Feedback der Umwelt beim Ausführen einer Aktion (reward, neuer Zustand) Verbessere dadurch die geschätzte Bewertung dieser Aktion im momentanen Zustand Ändere die Strategie entsprechend der neuen Bewertung der Aktionen Wiederhole 2. – 5. bis Ende erreicht

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

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

TD Gammon: Technik (1) Evaluation Function Input – Repräsentation 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

TD Gammon: Technik (2) Training Leistung 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

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!

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

Siedler von Catan (1) Beliebtes modernes Brettspiel Spielbrett (© Klaus Teuber, 1995) Spielbrett Produktion Bauen Tauschhandel Siegpunkte Taktiken

Siedler von Catan (2) Diplomarbeit [Pfeiffer, 2003] Probleme 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.

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)

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?

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

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

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!

Kommerzielle Spiele (2) Lernen in Kommerziellen Spielen Fehlerrate zurückdrehen Fixierte Neuronale Netze (kein online Lernen) Reinforcement Learning in Spielen Creatures Black & White

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!

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

Quellen (1) Papers Bücher 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)

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)