MAGICIAN. czyli General Game Playing w praktyce. General Game Playing

Podobne dokumenty
MAGICIAN: GUIDED UCT. Zastosowanie automatycznie generowanej funkcji oceny w GGP

MAGICIAN: A GGP Agent. Analiza zależności w opisie reguł gier GGP

MAGICIAN: GUIDED UCT. Ekstrakcja uniwersalnej funkcji ewaluacyjnej z rezultatów symulacji UCT

UCT. Wybrane modyfikacje i usprawnienia

General Game Playing. Aktualnie stosowane algorytmy i metody konstrukcji agentów

POŁĄCZENIE ALGORYTMÓW SYMULACYJNYCH ORAZ DZIEDZINOWYCH METOD HEURYSTYCZNYCH W ZAGADNIENIACH DYNAMICZNEGO PODEJMOWANIA DECYZJI

Algorytm memetyczny w grach wielokryterialnych z odroczoną preferencją celów. Adam Żychowski

Instytut Badań Systemowych Polskiej Akademii Nauk. Streszczenie rozprawy doktorskiej

RISK-AWARE PROJECT SCHEDULING

Analiza stanów gry na potrzeby UCT w DVRP

Risk-Aware Project Scheduling. SimpleUCT

Seminarium IO. Zastosowanie algorytmu UCT w Dynamic Vehicle Routing Problem. Michał Okulewicz

Monte Carlo, bootstrap, jacknife

Algorytmy dla gier dwuosobowych

Algorytmy ewolucyjne (3)

Dwaj gracze na przemian kładą jednakowe monety na stole tak, aby na siebie nie nachodziły Przegrywa ten, kto nie może dołożyć monety

Porównanie rozwiązań równowagowych Stackelberga w grach z wynikami stosowania algorytmu UCT

Jak oceniać, gdy nic nie wiemy?

Tworzenie gier na urządzenia mobilne

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

METODY STATYSTYCZNE W BIOLOGII

Testowanie hipotez statystycznych

Wykładnicze grafy przypadkowe: teoria i przykłady zastosowań do analizy rzeczywistych sieci złożonych

Dane dotyczące wartości zmiennej (cechy) wprowadzamy w jednej kolumnie. W przypadku większej liczby zmiennych wprowadzamy każdą w oddzielnej kolumnie.

DWUKROTNA SYMULACJA MONTE CARLO JAKO METODA ANALIZY RYZYKA NA PRZYKŁADZIE WYCENY OPCJI PRZEŁĄCZANIA FUNKCJI UŻYTKOWEJ NIERUCHOMOŚCI

Testowanie hipotez statystycznych.

Spacery losowe generowanie realizacji procesu losowego

Rozkład normalny. Marcin Zajenkowski. Marcin Zajenkowski () Rozkład normalny 1 / 26

AI i ML w grach. Przegląd zagadnień i inspiracje systemów human-like

Drzewa spinające MST dla grafów ważonych Maksymalne drzewo spinające Drzewo Steinera. Wykład 6. Drzewa cz. II

Podstawy OpenCL część 2

Mixed-UCT: Zastosowanie metod symulacyjnych do poszukiwania równowagi Stackelberga w grach wielokrokowych

1 Wielokrotne powtarzanie tych samych operacji

Szczegółowy program kursu Statystyka z programem Excel (30 godzin lekcyjnych zajęć)

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

Planowanie drogi robota, algorytm A*

Modelowanie sieci złożonych

Prawdopodobieństwo geometryczne

ALGORYTMICZNA I STATYSTYCZNA ANALIZA DANYCH

RISK-AWARE PROJECT SCHEDULING

PODYPLOMOWE STUDIA ZAAWANSOWANE METODY ANALIZY DANYCH I DATA MINING W BIZNESIE

weryfikacja hipotez dotyczących parametrów populacji (średnia, wariancja)

POTRZEBY A B C D E P P P P P

LABORATORIUM Populacja Generalna (PG) 2. Próba (P n ) 3. Kryterium 3σ 4. Błąd Średniej Arytmetycznej 5. Estymatory 6. Teoria Estymacji (cz.

Weryfikacja hipotez statystycznych. KG (CC) Statystyka 26 V / 1

Szczegółowy program kursu Statystyka z programem Excel (30 godzin lekcyjnych zajęć)

STATYSTYKA MATEMATYCZNA WYKŁAD 4. WERYFIKACJA HIPOTEZ PARAMETRYCZNYCH X - cecha populacji, θ parametr rozkładu cechy X.

Metody klasyfikacji danych - część 1 p.1/24

1. Symulacje komputerowe Idea symulacji Przykład. 2. Metody próbkowania Jackknife Bootstrap. 3. Łańcuchy Markova. 4. Próbkowanie Gibbsa

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

Kompresja danych Streszczenie Studia Dzienne Wykład 10,

Zarządzanie projektami. Wykład 1 - Projekt

STATYSTYKA MATEMATYCZNA

Generowanie ciągów pseudolosowych o zadanych rozkładach przykładowy raport

Wykład 1 Próba i populacja. Estymacja parametrów z wykorzystaniem metody bootstrap

Wstęp do sieci neuronowych, wykład 12 Łańcuchy Markowa

Systems Research Institute Polish Academy of Sciences

Wymagania egzaminacyjne z matematyki. Klasa 3C. MATeMATyka. Nowa Era. Klasa 3

Algorytmy równoległe: ocena efektywności prostych algorytmów dla systemów wielokomputerowych

RISK-AWARE PROJECT SCHEDULING

Obliczenia równoległe w General Game Playing

Statystyka. Wykład 7. Magdalena Alama-Bućko. 16 kwietnia Magdalena Alama-Bućko Statystyka 16 kwietnia / 35

Testowanie hipotez statystycznych.

Wykład 3 Hipotezy statystyczne

Podstawy inżynierii oprogramowania

Propozycje tematów zadań

Technologie Informacyjne

Wykład 2: Arkusz danych w programie STATISTICA

Metoda ewolucyjnego doboru współczynników funkcji oceniającej w antywarcabach

Logika Temporalna i Automaty Czasowe

Katalog wymagań programowych na poszczególne stopnie szkolne. Matematyka. Poznać, zrozumieć

Projekt i implementacja systemu wspomagania planowania w języku Prolog

SYSTEMY UCZĄCE SIĘ WYKŁAD 4. DRZEWA REGRESYJNE, INDUKCJA REGUŁ. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska

Wyznaczanie strategii w grach

RISK-AWARE PROJECT SCHEDULING

STATYSTYKA MATEMATYCZNA

Spis treści. Przedmowa... XI. Rozdział 1. Pomiar: jednostki miar Rozdział 2. Pomiar: liczby i obliczenia liczbowe... 16

Analiza wariancji. dr Janusz Górczyński

Ankieta. Informacje o uczestniku. Imię i nazwisko: Stanowisko : Warsztat Innowacyjne metody dydaktyczne (np. learning by doing, design thinking)

Wykład 4. Plan: 1. Aproksymacja rozkładu dwumianowego rozkładem normalnym. 2. Rozkłady próbkowe. 3. Centralne twierdzenie graniczne

PDF created with FinePrint pdffactory Pro trial version

SCENARIUSZ ZAJĘĆ SZKOLNEGO KOŁA NAUKOWEGO Z PRZEDMIOTU MATEMATYKA PROWADZONEGO W RAMACH PROJEKTU AKADEMIA UCZNIOWSKA

( x) Równanie regresji liniowej ma postać. By obliczyć współczynniki a i b należy posłużyć się następującymi wzorami 1 : Gdzie:

Elementy modelowania matematycznego

Logika Temporalna i Automaty Czasowe

POISSONOWSKA APROKSYMACJA W SYSTEMACH NIEZAWODNOŚCIOWYCH

Metody numeryczne Technika obliczeniowa i symulacyjna Sem. 2, EiT, 2014/2015

Wstęp do sieci neuronowych, wykład 11 Łańcuchy Markova

ALHE. prof. Jarosław Arabas semestr 15Z

Programowanie Funkcyjne. Prezentacja projektu, 7 stycznia 2008, Juliusz Sompolski

Bioinformatyka Laboratorium, 30h. Michał Bereta

TEORIA GIER DEFINICJA (VON NEUMANN, MORGENSTERN) GRA. jednostek (graczy) znajdujących się w sytuacji konfliktowej (konflikt interesów),w

Przestrzenne bazy danych Podstawy języka SQL

Statystyka i opracowanie danych Podstawy wnioskowania statystycznego. Prawo wielkich liczb. Centralne twierdzenie graniczne. Estymacja i estymatory

Sortowanie topologiczne skierowanych grafów acyklicznych

BADANIA OPERACYJNE. dr Adam Sojda Pokój A405

Ocena pozycji szachowych w oparciu o wzorce

Dokumentacja projektu Makao karciana gra sieciowa

BIOINFORMATYKA. Copyright 2011, Joanna Szyda

Transkrypt:

MAGICIAN czyli General Game Playing w praktyce General Game Playing 1

General Game Playing? Cel: stworzenie systemu umiejącego grać/nauczyć się grać we wszystkie gry Turniej w ramach AAAI National Conference corocznie od 2005 roku Przebieg rozgrywki w ramach turnieju: prezentacja zasad i czas na ich analizę (np. 5m) rozgrywka z ograniczeniem czasowym na wykonanie pojedynczego ruchu Model gry Skończona Skończona liczba graczy w tym 1 czyli de facto łamigłówka synchroniczna wszyscy gracze ruszają się równocześnie (ale dopuszczalne ruchy typu noop) skończona liczba legalnych ruchów w każdym ze skończonej liczby stanów zmiany stanu tylko w wyniku ruchów maszyna stanowa 2

Model gry c.d. M. Genesereth, N. Love, and B. Pell. General Game Playing: Overview of the AAAI Competition. AI Magazine, 26(2):62-72, 2005. Game Definition Language (GDL) Opis gry jako maszyny stanowej: zbyt rozwlekły Krótszy sposób opisu: Game Definition Language (GDL) opis gry za pomocą fomuł logicznych język bazujący na zmodyfikowanym Datalogu Datalog to podzbiór Prologa podstawowe relacje: role, true, init, next, legal, does, goal, terminal 3

GDL: Tic-Tac-Toe J. Reisinger, E. Bahceci, I. Karpov, and R. Miikkulainen. Coevolving strategies for general game playing. In Proceedings of the IEEE Symposium on Computational Intelligence and Games (CIG 2007), 320-327, Honolulu, Hawaii, 2007. IEEE Press. Multi- Approach Game Independent Cunningly Intelligent Arch- Nemesis 4

UCT Guided UCT UCT Sposób wybierania kolejnego ruchu podczas symulacji (UCT): Q(s,a) średni dotychczasowy wynik pary stan-ruch N liczba wizyt w danym stanie/wykonań danej akcji akcje nigdy nie wykonane wybierane są w pierwszej kolejności 5

UCT c.d. UCT c.d. Ograniczanie zużycia pamięci: usuwanie danych o węzłach powyżej aktualnego po każdym (realnie) wykonanym ruchu co z pozycjami powtórzonymi w drzewie gry 1. duplikowanie 2. intelegentne wykrywanie, kiedy można je usunąć z pamięci dodawanie tylko jednego nowego węzła per symulacja Modelowanie przeciwnika każdy przeciwnik ma przydzielony swój własny model (Cadia) przeciwnicy podejmują losowe decyzje 6

UCT - usprawnienia CADIAPlayer: history heuristic modyfikuje prawdopodobieństwo wybrania niewypróbowanej akcji (zarówno w fazie UCT, jak i MC) Guided UCT Guided UCT + funkcja ewaluacyjna Gdzie ta funkcja ewaluacyjna? 1. W fazie MC: a) całkowite zastąpienia fazy (z zadanym prawdopodobieństwem) b) zakończenie symulacji przed osiągnięciem końca gry z zadanym prawdopodobieństwem w każdym węźle drzewa 7

Guided UCT Guided UCT + funkcja ewaluacyjna Gdzie ta funkcja ewaluacyjna? 2. W fazie UCT: a) jako wstępne sortowania ruchów nigdy nie wypróbowanych b) jako startowy szacunek wartości ruchów z wagą odpowiadającą n symulacjom Problem: porównywanie bardzo podobnych pozycji (różniących się tylko ostatnim ruchem) Funkcja ewaluacyjna 8

Generowanie komponentów Lista podstawowa: wyrażenia występujące w opisie gry cechy nie muszą być binarne zliczanie sposobów rozwiązania zmiennych w wyrażeniu Uzupełnianie listy: uogólniane przez podstawianie zmiennych za stałe i możliwych stałych za zmienne cell(1, 1, x) cell(1, 1,?) cell(?,?, x) cell(1,?, x) Generowanie komponentów c.d. Podstawianie stałych za zmienne Wszystkich?? Wyznaczanie dziedzin argumentów predykatów/funkcji: 9

Analiza statystyczna komponentów Pula przykładowych sekwencji ok. 100 początek sekwencji: wynik losowej gry długość: do 5 pozycji odległość między pozycjami: 1-2 ruchy generowanie sekwencji: losowe ruchy powiązanie sekwencji ze średnim wynikiem: symulacje Monte Carlo (~10) Analiza statystyczna komponentów c.d. Średnie wartości i wariancje wartości komponentów dla całej gry uwzględnia tylko pierwszą pozycję z każdej sekwencji dla poszczególnych sekwencji Korelacja wartości komponentów z wynikiem gry brana pod uwagę średnia wartość komponentu w sekwencji Stabilność wartości komponentów iloraz wariancji między początkami sekwencji oraz średniej wariancji w ramach sekwencji 10

Testy Guided UCT ręcznie stworzona funkcja ewaluacyjna różnica w liczbie kamieni i damek modyfikacje fazy MC pozytywny efekt niezależnie od konkretnych ustawień Testy Heurystyczne* generowanie funkcji ewaluacyjnej: Connect4: + Warcaby: - Wykryte niedociągnięcia w analizatorach 11

Co dalej? History heuristic MIO zaaplikowane do generowania funkcji ewaluacyjnej z wstępnie wyselekcjonowanych komponentów Generowanie bardziej złożonych komponentów 12