Outline 1 MCTS. 2 Jednoczesne ruchy. 3 Niepełna informacja. 4 Podsumowanie. Jan Karwowski April 5, / 30

Podobne dokumenty
Zastosowanie metody UCT i drzewa strategii behawioralnej do aproksymacji stanu równowagowego Stackelberga w grach wielokrokowych

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

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

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

The game of NoGo. The state-of-art algorithms. Arkadiusz Nowakowski.

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

Metody teorii gier. ALP520 - Wykład z Algorytmów Probabilistycznych p.2

Obliczenia równoległe w General Game Playing

Wysokość drzewa Głębokość węzła

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

Strategie ewolucyjne (ang. evolu4on strategies)

11. Gry Macierzowe - Strategie Czyste i Mieszane

Sztuczna Inteligencja i Systemy Doradcze

Risk-Aware Project Scheduling. SimpleUCT

Kompresja danych Streszczenie Studia Dzienne Wykład 10,

Drzewa binarne. Drzewo binarne to dowolny obiekt powstały zgodnie z regułami: jest drzewem binarnym Jeśli T 0. jest drzewem binarnym Np.

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

Tworzenie gier na urządzenia mobilne

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

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

SID Wykład 4 Gry Wydział Matematyki, Informatyki i Mechaniki UW

Sztuczna Inteligencja i Systemy Doradcze

Równoległe symulacje Monte Carlo na współdzielonej sieci

Strategie kwantowe w teorii gier

Podstawy sztucznej inteligencji

Teoria gier. Teoria gier. Odróżniać losowość od wiedzy graczy o stanie!

Drzewo. Drzewo uporządkowane ma ponumerowanych (oznaczonych) następników. Drzewo uporządkowane składa się z węzłów, które zawierają następujące pola:

Teoria gier. Wykład7,31III2010,str.1. Gry dzielimy

Porządek symetryczny: right(x)

Wykład 7 i 8. Przeszukiwanie z adwersarzem. w oparciu o: S. Russel, P. Norvig. Artificial Intelligence. A Modern Approach

Elementy Modelowania Matematycznego

Punkty równowagi w grach koordynacyjnych

Analiza stanów gry na potrzeby UCT w DVRP

< K (2) = ( Adams, John ), P (2) = adres bloku 2 > < K (1) = ( Aaron, Ed ), P (1) = adres bloku 1 >

Teoria gier. mgr Przemysław Juszczuk. Wykład 5 - Równowagi w grach n-osobowych. Instytut Informatyki Uniwersytetu Śląskiego

SPOTKANIE 11: Reinforcement learning

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

Monte Carlo, bootstrap, jacknife

Optymalizacja ciągła

Techniki Optymalizacji: Stochastyczny spadek wzdłuż gradientu I

Heurystyki. Strategie poszukiwań

UCT. Wybrane modyfikacje i usprawnienia

Algorytmy ewolucyjne `

Modelowanie Preferencji a Ryzyko. Dlaczego w dylemat więźnia warto grać kwantowo?

Modelowanie hierarchicznych struktur w relacyjnych bazach danych

O wielorękich bandytach, nieuczciwych kasynach i sprytnych statystykach. Łukasz Czekaj

Podstawy programowania 2. Temat: Drzewa binarne. Przygotował: mgr inż. Tomasz Michno

Teoria gier matematyki). optymalności decyzji 2 lub więcej Decyzja wpływa na wynik innych graczy strategiami

Optymalizacja. Przeszukiwanie lokalne

Metody Rozmyte i Algorytmy Ewolucyjne

TEORIA GIER W EKONOMII WYKŁAD 5: GRY DWUOSOBOWE KOOPERACYJNE O SUMIE NIESTAŁEJ

Kurs z NetLogo - część 4.

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

Teoria gier. wstęp Teoria gier Zdzisław Dzedzej 1

Uniwersytet Warszawski Teoria gier dr Olga Kiuila LEKCJA 3

Algorytm hybrydowy dla alokacji portfela inwestycyjnego przy ograniczonych zasobach

Strategie ewolucyjne. Gnypowicz Damian Staniszczak Łukasz Woźniak Marek

Indeksy. Wprowadzenie. Indeksy jednopoziomowe indeks podstawowy indeks zgrupowany indeks wtórny. Indeksy wielopoziomowe

Ekonometryczne modele nieliniowe

Badania operacyjne egzamin

Problemy Decyzyjne Markowa

Modelowanie motywów łańcuchami Markowa wyższego rzędu

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

8. Drzewa decyzyjne, bagging, boosting i lasy losowe

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

Metody przeszukiwania

Algorytmy metaheurystyczne Wykład 6. Piotr Syga

Algorytmy dla gier dwuosobowych

Tadeusz Pankowski

prowadzący dr ADRIAN HORZYK /~horzyk tel.: Konsultacje paw. D-13/325

Wykład 4 Wybór najlepszej procedury. Estymacja parametrów re

Algorytmy metaheurystyczne Wykład 11. Piotr Syga

Drzewa decyzyjne i lasy losowe

Każdy węzeł w drzewie posiada 3 pola: klucz, adres prawego potomka i adres lewego potomka. Pola zawierające adresy mogą być puste.

Wyznaczanie strategii w grach

Symulacje geometrycznych sieci neuronowych w środowisku rozproszonym

RISK-AWARE PROJECT SCHEDULING

Wykład 2. Drzewa poszukiwań binarnych (BST)

Uczenie ze wzmocnieniem

Uczenie ze wzmocnieniem

Seminarium Zakładowe IDSS. Równoległe obliczenia metaheurystyczne z wykorzystaniem klastra obliczeniowego

Prawdopodobieństwo i statystyka

Algorytmy i struktury danych

Drzewa czerwono-czarne.

CLUSTERING II. Efektywne metody grupowania danych

ZASADY PROGRAMOWANIA KOMPUTERÓW ZAP zima 2014/2015. Drzewa BST c.d., równoważenie drzew, kopce.

10. Wstęp do Teorii Gier

PLAN WYKŁADU BAZY DANYCH INDEKSY - DEFINICJE. Indeksy jednopoziomowe Indeksy wielopoziomowe Indeksy z użyciem B-drzew i B + -drzew

wykład V uzupełnienie notatek: dr Jerzy Białkowski Programowanie C/C++ Język C++ klasy i obiekty wykład V dr Jarosław Mederski Spis Język C++ - klasy

Stochastyczna dynamika z opóźnieniem czasowym w grach ewolucyjnych oraz modelach ekspresji i regulacji genów

Zastosowanie metod eksploracji danych Data Mining w badaniach ekonomicznych SAS Enterprise Miner. rok akademicki 2014/2015

Partition Search i gry z niezupełną informacją

Kolejka priorytetowa. Często rozważa się kolejki priorytetowe, w których poszukuje się elementu minimalnego zamiast maksymalnego.

Sztuczna Inteligencja i Systemy Doradcze

Wykład 6. Drzewa poszukiwań binarnych (BST)

Algorytmy równoległe. Rafał Walkowiak Politechnika Poznańska Studia inżynierskie Informatyka 2010

Optymalizacja. Przeszukiwanie tabu

3. MINIMAX. Rysunek 1: Drzewo obrazujące przebieg gry.

Algorytmiczne Aspekty Teorii Gier Rozwiązania zadań

Transkrypt:

Outline 1 MCTS 2 Jednoczesne ruchy 3 Niepełna informacja 4 Podsumowanie Jan Karwowski April 5, 2018 1 / 30

Problem drzewo duże. nie mieści się w całości w pamięci stany, akcje wartości w liściach stałe losowe, nieznany rozkład ścieżka do najlepszego liścia liczba graczy informacja Jan Karwowski April 5, 2018 2 / 30

Min-max i αβ Jan Karwowski April 5, 2018 3 / 30

MCTS 1 Powtarzaj 1 Selekcja (tree policy) 2 Ekspansja 3 Symulacja (playout, default policy) rozkład jednostajny lub heurystyka 4 Propagacja 2 Wybierz najlepszy ruch na podstawie zebranych danych Selection Expansion Simulation Backpropagation Tree Policy Default Policy (Źródło: Browne et al. A Survey of MCTS Methods) Jan Karwowski April 5, 2018 4 / 30

Selekcja/Ekspansja 1 Jeśli węzeł ma jakiś nieodwiedzony ruch, wybierz jeden z nich i dodaj do drzewa (ekspansja) 2 W przeciwnym przypadku: wybierz najlepszy ruch według aktualnie zebranych statystyk i wykonaj selekcję na niższym poziomie (selekcja) Jan Karwowski April 5, 2018 5 / 30

Typowe użycie MCTS 1 Wykonaj MCTS dla bieżącego stanu gry 2 Po upływie zadanego czasu wykonaj najlepszy ruch według aktualnej oceny 3 Przenieś zebrane informacje (poddrzewo) do MCTS w nowym stanie Selection Expansion Simulation Backpropagation Tree Policy Default Policy Jan Karwowski April 5, 2018 6 / 30

Zalety MCTS możliwość przerwania obliczeń w dowolnym momencie brak heurystyk związanych z konkretną grą asymetryczna budowa drzewa w pamięci Jan Karwowski April 5, 2018 7 / 30

Propagacja z każdego kroku vs propagacja z liścia wypłata nie ma wpływu na ruchy poniżej dyskontowanie możliwość przerwania symulacji przed liściem Jan Karwowski April 5, 2018 8 / 30

Multi-armed bandit-problem n automatów, każdy z wypłatami z pewnego (innego) rozkładu z pewną wartością oczekiwaną kolejne losowania niezależne jaką przyjąć strategię, żeby zmaksymalizować wypłatę, mają zerową wiedzę o tych rozkładach? w każdym kroku pozyskujemy nową wiedzę o jednym (wybranym w danym kroku) rozkładzie Jan Karwowski April 5, 2018 9 / 30

Selekcja: UCB1 zbierane dane n i licznik odwiedzin i-tego ruchu z węzła, Q i suma wypłat z symulacji dotąd wybór akcji najlepszy ruch według, N = n i Q i n i + C 2 ln N Eksploracja vs. eksploatacja Auer, Cesa-Bianchi, Fischer. Finite-time analysis of the multiarmed bandit problem (2002) n i Jan Karwowski April 5, 2018 10 / 30

UCB1+MCTS=UCT Dowód: (Theorem 6) Dla UCT zastosowanego do MDP prawdopodobieństwo błędnej oceny ruchu w korzeniu zbiega do 0 wraz ze wzrostem liczby iteracji. Koscis, Szepesvari. Bandit based Monte-Carlo planning (2006) Jan Karwowski April 5, 2018 11 / 30

Selekcja: Bayesian UCT P i każdy węzeł zawiera estymację rozkładu prawdopodobieństwa wypłat dla ruchu i. B i = µ i + 2 ln N/n i µ i = E(P i ) Wersja 2: B i = µ i + 2 ln Nσ i uzależnienie eksploracji od odchylenia std bieżącej estymacji. Tesauro, Rajan, Segal. Bayesian Inference in Monte-Carlo Tree Search (2012) Jan Karwowski April 5, 2018 12 / 30

Selekcja: EXP3 (wypłaty z [0,1]) początkowe wartości w i (1) = 1 wybór akcji z prawdopodobieństwem p i (t) = (1 γ) w i(t) wj + γ K aktualizacja ˆx j (t) = x j (t)/p j (t) dla wybranego ruchu, 0 w p.p.; w j (t + 1) = w j (t)exp(γˆx j (t)/k) Szybka reakcja na spadek wypłaty, niedeteminizm. Nauka online. Auer, Cesa-Bianchi, Freund, Schapire. The nonstochastic multiarmed bandit problem. (2002) Jan Karwowski April 5, 2018 13 / 30

Konstrukcja drzewa 3 0.5 0.5 6 2 0.5 0.5 5 2 0.6 2 0.4 12 0.5 0.4 1 3 0.4 0.4 0.13 1 0 1 0 0 0.1 0.7 0.1 0.1 0.3 0.1 Estimated reward Visit counter Jan Karwowski April 5, 2018 14 / 30

Proste zrównoleglenie Leaf parallelization w kroku symulacji uruchom n niezależnych przebiegów i propaguj uśrednioną wartość. Root parallelization wykonaj równolegle n procesów MCTS, na koniec sklej drzewa i wybierz najlepszy ruch. Wady brak komunikacji między procesami wielokrotne wyliczanie tej samej informacji, konieczność czekania na wszystkie procesy. Jan Karwowski April 5, 2018 15 / 30

Zrównoleglenie (MPI) proces master: 1 dla każdego z n slave ów: wykonaj selekcję w aktualnym drzewie, wyślij sekwencję ruchów do slave 2 czekaj na wyliczenie wyniku gry przez slave 1 odbierz wynik 2 aktualizuj drzewo 3 wykonaj selekcję i wyślij kolejną sekwencję procesy slave wykonuj zadaną sekwencję aż do liścia. Cazenave, Jouandeau. A Parallel Monte-Carlo Tree Search Algorithm. (2008) Jan Karwowski April 5, 2018 16 / 30

Zrównoleglenie (Tree parallelization) symetryczne procesy, wspólne drzewo mutex w każdym węźle drzewa na dostęp do statystyk przebiegi jak w klasycznym MCTS virtual loss dodatkowa kara na wybór ruchu, który został wybrany przez inny wątek, ale wyniki nie zostały przepropagowane. Fig. 5. Performance of the dif erent parallelization methods Jan Karwowski April 5, 2018 17 / 30

Nested MCTS jeden gracz, statyczne wypłaty 1 Parametr: głębokość przeszukiwania; L 2 Jeśli L = 1 1 Wykonaj losowe symulacje po wykonaniu każdego ruchu, zwróć najlepszy wynik i ruch 3 Jeśli L > 1 1 Wykonaj nested MCTS(L-1) dla każdego ruchu, zwróć najlepszy wynik i ruch. Procedurę można powtarzać wielokrotnie, zapamiętując najlepsze ruchy miedzy iteracjami. wybór według maksimum łatwe zrównoleglenie Cazenave. Nested Monte-Carlo Search. (2009) Cazenave, Jouandeau. Parallel Nested Monte-Carlo search (2009) Jan Karwowski April 5, 2018 18 / 30

Dwóch graczy: Ruchy naprzemienne standardowe MCTS, propagowanie całego wektora wypłat (dla każdego gracza). Polityka wyboru względem gracza wykonującego ruch. przy odpowiednio dobranej selekcji zbiega do strategii min-max. (Przy założeniu zbudowania pełnego drzewa). Jan Karwowski April 5, 2018 19 / 30

Dwóch graczy: Ruchy jednoczesne równowaga Nasha strategie mieszane SM-MCTS Lisy, Kovarik, Lanctot, Bosansky. Convergence of Monte Carlo Tree Search in Simultaneous Move Games. (2013) Jan Karwowski April 5, 2018 20 / 30

SM-MCTS 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 (node h) if hȃz then return u 1 (h) elseif hȃt and Ȃ(i,j ) ȂA 1 (h) A 2 (h) not previouslyselected then Choose oneofthepreviouslyunselected (i,j ) and h 0 T (h,i,j ) Add h 0 to T u 1 Rollout(h 0 ) X h 0 X h 0 + u 1 ; n h 0 n h 0 + 1 Update(h,i,j,u 1 ) return RetVal(u 1,X h 0,n h 0) (i,j ) Select(h) h 0 T (h,i,j ) u 1 SM-MCTS(h 0 ) X h X h + u 1 ; n h n h + 1 Update(h,i,j,u 1 ) return RetVal(u 1,X h,n h ) Użycie UCB1 nie gwarantuje zbieżności do NE (Decoupled UCT) Update propaguje: wartość z pojedynczej symulacji, średnią z węzła (po uwzględnieniu wartości z dołu). Jan Karwowski April 5, 2018 21 / 30

Wyniki Exploitability 0.8000 0.4000 0.2000 0.1000 0.0500 0.0250 0.0125 WC_RM WC_RMM 1e+02 1e+04 1e+06 1e+02 1e+04 1e+06 t Method Exp3 Exp3M RM RMM Lisy, Kovarik, Lanctot, Bosansky. Convergence of Monte Carlo Tree Search in Simultaneous Move Games. (2013) Jan Karwowski April 5, 2018 22 / 30

Gry z niepełną informacją Gracz Ԃ Gra i 1 i 2 i 1 i 2 m 1 m 2 h 1 h 2 h 3 m 1 m 2 m 1 m 2 i 3 i 4 i 6 i 7 i 8 i 9 i 3 i 4 i 5 i 6 i 8 i 7 i 9 h 4 h 5 h 6 h 7 h 8 h 9 h 10 h 11 h 12 h 13 h 14 h 15 h 16 h 17 i 5 Jan Karwowski April 5, 2018 23 / 30

Perfect Informaion MC (Determinized UCT) W obecnym punkcie decyzyjnym wylosuj dopuszczalny pełny stan wykonaj trening UCT z pełną informacją Wady Powtórz losowanie stanu startowego wielokrotnie Uśrednij wszystkie drzewa i zwróć najlepszy ruch decyzje w poddrzewach na podstawie pełnej informacji (założenie, że możemy podjąć różne decyzje w stanach, których nie rozróżniamy). przeciwnik może w rzeczywistej grze kierować grę do poddrzewa odpowiadającego jego preferencją, bez ujawniania nam tej informacji. Jan Karwowski April 5, 2018 24 / 30

SO-ISMCTS Trening UCT na drzewie widzianym przez jednego gracza jak trening gry dla dwóch graczy przeciwnik wybiera ujawniana informację (nieujawniana jest losowana). Gracz Ԃ Gra i 1 i 2 i 1 i 2 m 1 m 2 h 1 h 2 h 3 m 1 m 2 m 1 m 2 i 3 i 4 i 6 i 7 i 8 i 9 i 3 i 4 i 5 i 6 i 8 i 7 i 9 h 4 h 5 h 6 h 7 h 8 h 9 h 10 h 11 h 12 h 13 h 14 h 15 h 16 h 17 i 5 Jan Karwowski April 5, 2018 25 / 30

MO-ISMCTS Trening na zbiorze drzew, po jednym dla każdego gracza. W danym kroku selekcji używamy drzewa zadanego gracza. Jan Karwowski April 5, 2018 26 / 30

Porównanie Fig. 7. Heat map showing the results of the LOTR:C playing strength experiment. A white square would indicate a 100% win rate for the specif ed Light player algorithm against the specif ed Dark player algorithm, while a black squarewould indicatea100% win ratefor Dark against Light. Shadesof gray interpolate between these two extremes. Cowling, Powley, Whitehouse. Information Set Monte Carlo Tree Search. (2012) Jan Karwowski April 5, 2018 27 / 30

GIB: licytacje brydżowe z PIMC Ginsberg. GIB: Imperfect information in a computationally challenging game. (2001) Analiza PIMC Long et al. Understanding the Success of Perfect Information Monte Carlo Sampling in Game Tree Search. (2010) Figure 3: Performance of PIMC search against a Nash equilibrium. Darker regions indicate a greater average loss for PIMC. Disambiguation is fxedat0.3, bias at 0.75and correlationat 0.5infgures a,band c respectively. Jan Karwowski April 5, 2018 28 / 30

Inne kierunki MCTS + Funkcja oceny pozycji w fazie symulacji Agregacja stanów/ruchów Inne modelowanie przeciwnika Nie wymuszanie zagrania wszystkich ruchów przed selekcją w węźle Jan Karwowski April 5, 2018 29 / 30

Podsumowanie przeszukiwanie bardziej obiecujących obszarów gry niezależność od heurystyk dziedzinowych modyfikacje do różnych gier: jeden gracz wielu graczy niepełna informacja ruchy równoczesne Browne et al. A Survey of Monte Carlo Tree Search Methods. (2012) Jan Karwowski April 5, 2018 30 / 30