kifoo - the fooba style
Transcription
kifoo - the fooba style
kifoo - the fooba style Markus Decke, Thorsten Reinhard, Daniel Wäber June 26, 2009 Projektueberblick input controller Zugang I ueber Neztwerk: gtp, kgs, igs I oder locale Gui: Gogui, JGameAI Überwachung I Verwaltet die Suche I Zeit-Management Suche state I MonteCalro-Baumsuche I Entschiedungen in Policies ausgelagert Goban goban I Aufbau aus Komponenten I z.B. Reader, Move-Generator, Scoreing Projektueberblick input controller Zugang I ueber Neztwerk: gtp, kgs, igs I oder locale Gui: Gogui, JGameAI Überwachung I Verwaltet die Suche I Zeit-Management Suche state I MonteCalro-Baumsuche I Entschiedungen in Policies ausgelagert Goban goban I Aufbau aus Komponenten I z.B. Reader, Move-Generator, Scoreing Projektueberblick input controller Zugang I ueber Neztwerk: gtp, kgs, igs I oder locale Gui: Gogui, JGameAI Überwachung I Verwaltet die Suche I Zeit-Management Suche state I MonteCalro-Baumsuche I Entschiedungen in Policies ausgelagert Goban goban I Aufbau aus Komponenten I z.B. Reader, Move-Generator, Scoreing Projektueberblick input controller Zugang I ueber Neztwerk: gtp, kgs, igs I oder locale Gui: Gogui, JGameAI Überwachung I Verwaltet die Suche I Zeit-Management Suche state I MonteCalro-Baumsuche I Entschiedungen in Policies ausgelagert Goban goban I Aufbau aus Komponenten I z.B. Reader, Move-Generator, Scoreing Projektueberblick input controller Zugang I ueber Neztwerk: gtp, kgs, igs I oder locale Gui: Gogui, JGameAI Überwachung I Verwaltet die Suche I Zeit-Management Suche state I MonteCalro-Baumsuche I Entschiedungen in Policies ausgelagert Goban goban I Aufbau aus Komponenten I z.B. Reader, Move-Generator, Scoreing Gnu Text Protocol ¡+write something here+¿ Monte-Carlo Suche Bestensuche auf dem Spiel-Baum mit inkrementellen Heuristik ueber Monte-Carlo Samples Monte-Carlo Suche Bestensuche auf dem Spiel-Baum mit inkrementellen Heuristik ueber Monte-Carlo Samples Monte-Carlo Suche Bestensuche auf dem Spiel-Baum mit inkrementellen Heuristik ueber Monte-Carlo Samples Monte-Carlo Suche Bestensuche auf dem Spiel-Baum mit inkrementellen Heuristik ueber Monte-Carlo Samples Monte-Carlo Suche Bestensuche auf dem Spiel-Baum mit inkrementellen Heuristik ueber Monte-Carlo Samples Monte-Carlo Suche inkrementelle Bestensuche mit Sampling I Heuristik I I I Erfolgsrate aus Monte-Carlo Startistik Verbesserung durch Experten-Wissen, . . . Inkrementelles Sampling I I durch jedes neues MC-Sample wird die Heuristik genauer Samples muessen moeglichst relevant sein Monte-Carlo Suche inkrementelle Bestensuche mit Sampling I Heuristik I I I Erfolgsrate aus Monte-Carlo Startistik Verbesserung durch Experten-Wissen, . . . Inkrementelles Sampling I I durch jedes neues MC-Sample wird die Heuristik genauer Samples muessen moeglichst relevant sein Monte-Carlo Suche UCT Algorithms I Baumstruktur speichert Erfolgsrate aus bisherigen Samples I Sampling anhant des interresantesten Pfades im Baum I Inkrementelle Erweiterung des Baumes ⇒ Kovergenz zu MinMax-Baum Monte-Carlo Suche UCT Loop I select I I I I expand I I Blatt-Konten wird expandiert um nun Statistiken ueber dessen Kindknoten speichern zu koennen sample I I Auswahl eines “relevanten” Pfades relevant =qobere Konfidenz-Schranke fuer Gewinn-Erwartung ci = xi + 2 nlni n Monte-Carlo Sampling fuer den ausgewaehlten Pfad backup I Ergebniss wird in dem Baum gespeichert Monte-Carlo Suche UCT Loop I select I I I I expand I I Blatt-Konten wird expandiert um nun Statistiken ueber dessen Kindknoten speichern zu koennen sample I I Auswahl eines “relevanten” Pfades relevant =qobere Konfidenz-Schranke fuer Gewinn-Erwartung ci = xi + 2 nlni n Monte-Carlo Sampling fuer den ausgewaehlten Pfad backup I Ergebniss wird in dem Baum gespeichert Monte-Carlo Suche UCT Loop I select I I I I expand I I Blatt-Konten wird expandiert um nun Statistiken ueber dessen Kindknoten speichern zu koennen sample I I Auswahl eines “relevanten” Pfades relevant =qobere Konfidenz-Schranke fuer Gewinn-Erwartung ci = xi + 2 nlni n Monte-Carlo Sampling fuer den ausgewaehlten Pfad backup I Ergebniss wird in dem Baum gespeichert Monte-Carlo Suche UCT Loop I select I I I I expand I I Blatt-Konten wird expandiert um nun Statistiken ueber dessen Kindknoten speichern zu koennen sample I I Auswahl eines “relevanten” Pfades relevant =qobere Konfidenz-Schranke fuer Gewinn-Erwartung ci = xi + 2 nlni n Monte-Carlo Sampling fuer den ausgewaehlten Pfad backup I Ergebniss wird in dem Baum gespeichert Monte-Carlo Suche UCT Loop I select I I I I expand I I Blatt-Konten wird expandiert um nun Statistiken ueber dessen Kindknoten speichern zu koennen sample I I Auswahl eines “relevanten” Pfades relevant =qobere Konfidenz-Schranke fuer Gewinn-Erwartung ci = xi + 2 nlni n Monte-Carlo Sampling fuer den ausgewaehlten Pfad backup I Ergebniss wird in dem Baum gespeichert Monte-Carlo Suche Verbesserungen I I Formel und Sampling-Auswahl Transposition I I I bessere Auswertung I I I I Rapid Action Value Estimation Group Statistics Action Tempreture Anfangswert fuer Knoten I I I direkt im Baum beim Sampling: All Moves As First Experten-Wissen Machinelles Lerenen Verbesserte Samples I I I I ExpertenWissen Muster moeglichst realistisch, aber schnell einzelne Fehler nicht schlimm, aber Durchschnitt wichtig Monte-Carlo Suche Verbesserungen I I Formel und Sampling-Auswahl Transposition I I I bessere Auswertung I I I I Rapid Action Value Estimation Group Statistics Action Tempreture Anfangswert fuer Knoten I I I direkt im Baum beim Sampling: All Moves As First Experten-Wissen Machinelles Lerenen Verbesserte Samples I I I I ExpertenWissen Muster moeglichst realistisch, aber schnell einzelne Fehler nicht schlimm, aber Durchschnitt wichtig Monte-Carlo Suche Verbesserungen I I Formel und Sampling-Auswahl Transposition I I I bessere Auswertung I I I I Rapid Action Value Estimation Group Statistics Action Tempreture Anfangswert fuer Knoten I I I direkt im Baum beim Sampling: All Moves As First Experten-Wissen Machinelles Lerenen Verbesserte Samples I I I I ExpertenWissen Muster moeglichst realistisch, aber schnell einzelne Fehler nicht schlimm, aber Durchschnitt wichtig Monte-Carlo Suche Verbesserungen I I Formel und Sampling-Auswahl Transposition I I I bessere Auswertung I I I I Rapid Action Value Estimation Group Statistics Action Tempreture Anfangswert fuer Knoten I I I direkt im Baum beim Sampling: All Moves As First Experten-Wissen Machinelles Lerenen Verbesserte Samples I I I I ExpertenWissen Muster moeglichst realistisch, aber schnell einzelne Fehler nicht schlimm, aber Durchschnitt wichtig Monte-Carlo Suche Verbesserungen I I Formel und Sampling-Auswahl Transposition I I I bessere Auswertung I I I I Rapid Action Value Estimation Group Statistics Action Tempreture Anfangswert fuer Knoten I I I direkt im Baum beim Sampling: All Moves As First Experten-Wissen Machinelles Lerenen Verbesserte Samples I I I I ExpertenWissen Muster moeglichst realistisch, aber schnell einzelne Fehler nicht schlimm, aber Durchschnitt wichtig Monte-Carlo Suche Verbesserungen I I Formel und Sampling-Auswahl Transposition I I I bessere Auswertung I I I I Rapid Action Value Estimation Group Statistics Action Tempreture Anfangswert fuer Knoten I I I direkt im Baum beim Sampling: All Moves As First Experten-Wissen Machinelles Lerenen Verbesserte Samples I I I I ExpertenWissen Muster moeglichst realistisch, aber schnell einzelne Fehler nicht schlimm, aber Durchschnitt wichtig Monte-Carlo Suche Interaktionen in unserer Implementierung state apply gen result search tree select nodes expand sample expansion policy sampling policy backprop utilization policy selection policy Monte-Carlo Suche Selection Policy Done: I nach UCB-Formel ci = xi + q 2 ln n ni Todo: I I weitere Formeln testen: UCB-Tunes, UCB-Tuned2, BAT, . . . verwenden weiterer Daten I I I RAVE-Werte Muster Experten-Wissen Monte-Carlo Suche Selection Policy Done: I nach UCB-Formel ci = xi + q 2 ln n ni Todo: I I weitere Formeln testen: UCB-Tunes, UCB-Tuned2, BAT, . . . verwenden weiterer Daten I I I RAVE-Werte Muster Experten-Wissen Monte-Carlo Suche Expansion Policy Done: I Erweiterung, nach 1. Simulation I mit Transpositions-Erkennung Todo: I I Erweiterung erst nach n Simpulationen Progressive Widening: nicht gleich alle Kinder erzueugen I I I AMAF/RAVE Werte Experten-Wissen Muster Monte-Carlo Suche Expansion Policy Done: I Erweiterung, nach 1. Simulation I mit Transpositions-Erkennung Todo: I I Erweiterung erst nach n Simpulationen Progressive Widening: nicht gleich alle Kinder erzueugen I I I AMAF/RAVE Werte Experten-Wissen Muster Monte-Carlo Suche Sampling Policy Done: I Mostly Random Samples Todo: I Muster I Experten-Wissen Monte-Carlo Suche Sampling Policy Done: I Mostly Random Samples Todo: I Muster I Experten-Wissen Monte-Carlo Suche Utilization Policy Done: I Gewinn-Auswertung Todo: I AMAF Werte I Steingruppen Statistik Monte-Carlo Suche Utilization Policy Done: I Gewinn-Auswertung Todo: I AMAF Werte I Steingruppen Statistik Goban Components Componenten I nuzten andere Componenten I stellen Dienste oder Daten zu Verfuegung helper goban apply putStone pass removeChain board removeStone chains reader generator sampler score hash metadata