Monte Carlo Tree Search. Marika Ivanová

Podobné dokumenty
Varianty Monte Carlo Tree Search

Osadníci z Katanu. a Monte Carlo Tree Search. David Pěgřímek. MFF UK (2013) 1 / 24

Algoritmy pro práci s neúplnou informací

Složitost her. Herní algoritmy. Otakar Trunda

Seminář z umělé inteligence. Otakar Trunda

Základy umělé inteligence

Pavel Veselý Proof-number search, Lambda search a jejich vylepšení

Hry a UI historie. von Neumann, 1944 algoritmy perfektní hry Zuse, Wiener, Shannon, přibližné vyhodnocování

Řešení problémů pomocí MCTS

Algoritmy pro hraní tahových her

Hry a UI historie. Obsah: Hry vs. Prohledávání stavového prostoru Algoritmus Minimax. Nedeterministické hry Hry s nepřesnými znalostmi

Zpětnovazební učení Michaela Walterová Jednoocí slepým,

Obsah: Hry vs. Prohledávání stavového prostoru Algoritmus Minimax. Nedeterministické hry Hry s nepřesnými znalostmi

Základy umělé inteligence

Obsah: Hry vs. Prohledávání stavového prostoru Algoritmus Minimax. Nedeterministické hry Hry s nepřesnými znalostmi

Obsah: Hry vs. Prohledávání stavového prostoru Algoritmus Minimax. Nedeterministické hry Hry s nepřesnými znalostmi

Úloha ve stavovém prostoru SP je <s 0, C>, kde s 0 je počáteční stav C je množina požadovaných cílových stavů

! Kyberne(ka!a!umělá!inteligence! 8.!Hraní!dvouhráčových!her,!adversariální! prohledávání!stavového!prostoru!!!!

Obsah: Hry Prohledávání stavového prostoru. Algoritmus Minimax. Nedeterministické hry Hry s nepřesnými znalostmi

Obsah: Hry vs. Prohledávání stavového prostoru Algoritmus Minimax. Nedeterministické hry Hry s nepřesnými znalostmi

Hry a UI historie. agent musí brát v úvahu akce jiných agentů jak ovlivní jeho. vliv ostatních agentů prvek náhody. Hry: Obsah:

Obsah: Hry vs. Prohledávání stavového prostoru Algoritmus Minimax. Nedeterministické hry Hry s nepřesnými znalostmi. 72 studentů

BAKALÁŘSKÁ PRÁCE. MCTS pro hru Metro

"Agent Hledač" (3. přednáška)

Hry a UI historie. Obsah: Hry vs. Prohledávání stavového prostoru Algoritmus Minimax. Nedeterministické hry Hry s nepřesnými znalostmi

Počítačové šachy. Otakar Trunda

HRY A UI HISTORIE. Hry vs. Prohledávání stavového prostoru. Obsah:

Obsah: Hry vs. Prohledávání stavového prostoru Algoritmus Minimax. Nedeterministické hry Hry s nepřesnými znalostmi

Metody návrhu algoritmů, příklady. IB111 Programování a algoritmizace

2. Řešení úloh hraní her Hraní her (Teorie a algoritmy hraní her)

Algoritmizace prostorových úloh

GENERAL GAME PLAYING Marika Ivanová Seminář Herní Algoritmy,

Hraní her. (Teorie a algoritmy hraní her) Řešení úloh hraní her. Václav Matoušek /

Úvod do teorie her

Grafové algoritmy. Programovací techniky

Optimalizace & soft omezení: algoritmy

Anotace. Středník II!! programování her.

A4B33ZUI Základy umělé inteligence

Projekční algoritmus. Urychlení evolučních algoritmů pomocí regresních stromů a jejich zobecnění. Jan Klíma

Šachové algoritmy využívající hluboké neuronové sítě

Algoritmus Minimax. Tomáš Kühr. Projektový seminář 1

Prohledávání do šířky a do hloubky. Jan Hnilica Počítačové modelování 15

Teorie her a ekonomické rozhodování. 4. Hry v rozvinutém tvaru

bfs, dfs, fronta, zásobník, prioritní fronta, halda

a4b33zui Základy umělé inteligence

Emergence chování robotických agentů: neuroevoluce

Grafové algoritmy. Programovací techniky

State Space Search Step Run Editace úloh Task1 Task2 Init Clear Node Goal Add Shift Remove Add Node Goal Node Shift Remove, Add Node

NP-ÚPLNÉ PROBLÉMY. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze

Datové struktury 2: Rozptylovací tabulky

Umělá inteligence I. Roman Barták, KTIML.

Modifikace algoritmu FEKM

jednoduchá heuristika asymetrické okolí stavový prostor, kde nelze zabloudit připustit zhoršují cí tahy Pokročilé heuristiky

Prohledávání do šířky = algoritmus vlny

VYUŽITÍ PRAVDĚPODOBNOSTNÍ METODY MONTE CARLO V SOUDNÍM INŽENÝRSTVÍ

Dokumentace programu piskvorek

Algoritmy výpočetní geometrie

Ant Colony Optimization 1 / 26

11. Tabu prohledávání

Řešení: PŘENESVĚŽ (N, A, B, C) = přenes N disků z A na B pomocí C

UNIVERZITA PARDUBICE

bfs, dfs, fronta, zásobník, prioritní fronta, halda

Informatika navazující magisterské studium Přijímací zkouška z informatiky 2018 varianta A

Uvažujeme jen hry s nulovým součtem, tj. zisk jednoho. Střídá se náš tah, kde maximalizujeme svůj zisk, s tahem

Plánování v prostoru plánů

Hanojská věž. T2: prohledávání stavového prostoru. zadání [1 1 1] řešení [3 3 3] dva možné první tahy: [1 1 2] [1 1 3]

Umělá inteligence I. Roman Barták, KTIML.

Geneticky vyvíjené strategie Egyptská hra SENET

Drsná matematika III 10. demonstrovaná cvičení Kostry grafů

Václav Jirchář, ZTGB

Úvod do informatiky. Miroslav Kolařík

Static Load Balancing Applied to Time Dependent Mechanical Problems

Pokročilé neparametrické metody. Klára Kubošová

Třídy složitosti P a NP, NP-úplnost

Binární vyhledávací stromy pokročilé partie

Algoritmus pro hledání nejkratší cesty orientovaným grafem

STROMOVE ALGORITMY Prohledavani do sirky (level-order) Po vodorovnejch carach fronta

Digitální učební materiál

Department of Cybernetics Czech Technical University in Prague. pechouc/kui/games.pdf

Evoluční výpočetní techniky (EVT)

bfs, dfs, fronta, zásobník

Úvod do teorie her

Ing. Alena Šafrová Drášilová, Ph.D.

Herní algoritmy, předn. 2,3

ORIENTOVANÉ GRAFY, REPREZENTACE GRAFŮ

Stručný úvod do teorie her. Michal Bulant

Obsah: Problém osmi dam

Monte Carlo Lokalizace. Martin Skalský

Základy informatiky. Teorie grafů. Zpracoval: Pavel Děrgel Úprava: Daniela Szturcová

MATEMATICKÁ TEORIE ROZHODOVÁNÍ

Konstrukce relace. Postupně konstruujeme na množině všech stavů Q relace i,

Základy informatiky. 07 Teorie grafů. Kačmařík/Szturcová/Děrgel/Rapant

Um lá inteligence II

3. úloha - problém batohu metodami branch & bound, dynamické programování, heuristika s testem

Teorie grafů. zadání úloh. letní semestr 2008/2009. Poslední aktualizace: 19. května First Prev Next Last Go Back Full Screen Close Quit

Kombinatorická minimalizace

Sekvenční logické obvody

7. Heuristické metody

Uvažujeme jen hry s nulovým součtem, tj. zisk jednoho. Střídá se náš tah, kde maximalizujeme svůj zisk, s tahem

07 Základní pojmy teorie grafů

Transkript:

Monte Carlo Tree Search Marika Ivanová 23. 10. 2012

Obsah Představení Základní vlastnosti Oblast použití Bandit Problem Popis metody Algoritmus UCT Charakteristika Terminologie Vylepšení a Heuristiky Aplikace MCTS, Marika Ivanová 2012 2

Vlastnosti Metoda hledání optimálních rozhodnutí Zkoumáním náhodných vzorků postupně buduje prohledávací strom Rozšířeno u her s náhodnými prvky nebo částečně pozorovatelným světem Překvapivý úspěch u některých deterministických her s úplnou informací 1993: První aplikace MC metod ve hře Go [1] 2006: Mimořádně úspěšná aplikace MCTS v Go[2] 2009: MoHex vítěz turnaje ve hře Hex [3] MCTS, Marika Ivanová 2012 3

Vlastnosti Best-first search Nepotřebuje doménově závislou heuristiku Základní algoritmus iterativně buduje prohledávací strom, dokud není dosaženo stanoveného limitu Dle zvolené strategie se určí nejvhodnější vrchol aktuálního stromu Simulace probíhá z vybraného vrcholu až do dosažení koncového stavu Aktualizace stromu na základě výsledku simulace MCTS, Marika Ivanová 2012 4

Důvod použití Máme přeci α-β s mnoha heuristikami Iterative deepening Killer heuristic Null move heuristic History heuristic Transposition tables Šachové počítače porážejí velmistry Kasparov vs. Deep Blue (1996) MCTS, Marika Ivanová 2012 5

Důvod použití U některých her jsou standardní postupy neúspěšné Příliš velký stavový prostor Šachy: 10 126 Go: 10 360 Obtížné ohodnocování Závisí na konkrétní aplikaci Náročná pravidla prořezávání MCTS, Marika Ivanová 2012 6

Bandit problem K-armed bandit je problém strojového učení K automatů na mince, vždy jeden vybereme a dostaneme odměnu dle distribuce přiřazené každému automatu Cílem je maximalizovat celkovou odměnu Distribuce nejsou na začátku známy Opakovanými pokusy se můžeme soustředit na nejvýhodnější automaty MCTS, Marika Ivanová 2012 7

Bandit problem Exploitation-exploration dilema Dále využívat nejlépe vyhlížející rameno, nebo prozkoumávat méně slibná ramena za účelem získání lepší znalosti o nich? Náhodné proměnné označuje očekávanou odměnu ramene Ztráta po n hrách: je nejlepší možná očekávaná odměna je počet her ramenem j po n pokusech MCTS, Marika Ivanová 2012 8

Bandit problem UCB (Upper Confidence Bound) Strategie UCB1 [4]: očekávaný logaritmický nárůst ztráty Vybíráme rameno k, které splňuje výraz průměrná odměna z ramene j celkový počet her MCTS, Marika Ivanová 2012 9

Algoritmus Každý vrchol stromu reprezentuje stav dané domény Orientované hrany vedoucí do potomků představují akce vedoucí do následujících stavů Ohodnocení akce odhadnuto na základě náhodné simulace Postupně zjišťované hodnoty upravují strategii prohledávání Iterativní vytváření stromu až do vypršení limitu (čas, paměť, ) MCTS, Marika Ivanová 2012 10

Algoritmus Každá iterace obsahuje 4 kroky Selekce Expanze Simulace Tree Policy Default Policy Zpětné šíření MCTS, Marika Ivanová 2012 11

Algoritmus Výběr akce Max child následník s nejvyšší odměnou Robust child nejnavštěvovanější potomek Max Robust child nejnavštěvovanější potomek se současně nejvyšší odměnou Secure child potomek maximalizující dolní mez spolehlivosti MCTS, Marika Ivanová 2012 12

UCT UCB + MCTS = UCT Na vrcholy nahlížíme jako na Bandit Problem Každý potomek vrcholu je nezávislé rameno Následník k vrcholu je vybrán tak, aby splňoval MCTS, Marika Ivanová 2012 13

UCT Nastavováním konstanty lze regulovat poměr explorace a exploitace Každý vrchol uchovává 2 hodnoty počet návštěv součet odměn provedených simulací MCTS, Marika Ivanová 2012 14

Charakteristika Zaniká potřeba doménově specifických znalostí Stačí umět rozpoznat koncový stav Na rozdíl od hloubkově omezeného minimaxu Nicméně přidáním doménově závislých heuristik dosáhneme zlepšení MCTS, Marika Ivanová 2012 15

Charakteristika Výsledek simulace se propaguje okamžitě Algoritmus se může kdykoli zastavit U minimaxu lze pomocí iterativního prohlubování Asymetrický strom Upřednostňování slibných tahů AHEURISTIC ANYTIME ASYMETRIC MCTS, Marika Ivanová 2012 16

Terminologie Flat Monte Carlo Flat UCB MCTS UCT Plain UCT Náhodně vybírá potomky, nevytváří strom Nahlíží na výběr potomků jako na Bandit Problem, nevytváří stom Vytváří strom (používá tree policy) MCTS s libovolnou UCB policy MCTS využívající UCB1 MCTS, Marika Ivanová 2012 17

Vylepšení a heuristiky Doménově závislé Doménově nezávislé Tree Policy Bandit Based Selekce All Moves as First (AMAF) Prořezávání Ostatní Simulace Zpětné šíření Paralelizace MCTS, Marika Ivanová 2012 18

Vylepšení a heuristiky Bandit Based: UCB1 Tuned, Vylepšení selekce First Play Urgency (FPU)[8] U běžného UCT musí být před expanzí vrcholu rozvinuti všichni jeho sourozenci Problém u velkých větvících faktorů FPU: Ohodnocuje nenavštívené vrcholy pevnou hodnotou, navštívené běžným UCB1 MCTS, Marika Ivanová 2012 19

Vylepšení a heuristiky Rozhodující tahy Tahy vedoucí k okamžitému vítězství Má-li hráč rozhodující tah, zahraje ho Výhodné, časově náročnější Skupiny tahů Redukce větvícího faktoru Shlukování tahů do skupin UCB1 pro určení skupiny, ze které se vybere tah MCTS, Marika Ivanová 2012 20

Vylepšení a heuristiky Transpozice MCTS vytváří strom, hry mohou být často reprezentovány jako DAG Transpoziční tabulky lze využít ve fázi selekce Progressive Bias Přidání doménově specifické heuristická znalosti pro MCTS Málo navštěvované uzly nemají spolehlivě určenou hodnotu Formuli určující výběr následníka rozšíříme o výraz počet návštěv uzlu i Heuristická hodnota uzlu i MCTS, Marika Ivanová 2012 21

Vylepšení a heuristiky Databáze zahájení Jsou-li v databázi nalezeny pozice a odpovídající tahy, hrají se Naopak možno využít MCTS pro vytvoření DB All Moves As First (AMAF) [9] Basic AMAF Po simulaci aktualizujeme nejen vrcholy, přes které se prošlo, ale i některé jejich sourozence odpovídající danému tahu MCTS, Marika Ivanová 2012 22

Vylepšení a heuristiky α-amaf Sloučení updatu z UCT i AMAF pro každý vrchol α krát AMAF, (1- α) krát UCT RAVE (Rapid Action Value Estimation) α pro každý uzel zvlášť Hodnota α se snižuje podle zvoleného parametru p: Some First Ze simulované posloupnosti tahů se pro update využije pouze prvních m tahů MCTS, Marika Ivanová 2012 23

Vylepšení a heuristiky Prořezávání Soft pruning: tahy mohou být později opět vybrány vs. Hard pruning: tahy se nikdy znovu nevyberou Progressive unpruning Dočasné snížení větvícího faktoru U vrcholu, který překročí stanovený práh T MCTS, Marika Ivanová 2012 24

Vylepšení a heuristiky Simulace V základní variantě náhodné Možno zahrnout doménovou znalost (online, offline) Zpětné šíření Vážení výsledku simulace Pozdější a krátké simulace bývají přesnější Přidání váhy w do procesu zpětného šíření MCTS, Marika Ivanová 2012 25

Aplikace Hry dvou hráčů s úplnou informací Vynikající výsledky v Go, Hex, (Reversi) U většiny ostatních her (šachy, shogi, arimaa, ) pouze průměrné výsledky MCTS, Marika Ivanová 2012 26

Aplikace Hry jednoho hráče s úplnou informací (puzzle) Lloydova 8 (15), Sokoban - tradičně A*, IDA* MCTS varianty úspěšné např. u SameGame[5], Sudoku General Game Playing Snaha vytvořit agenta, který dokáže hrát více než jednu hru Zajímavé výsledky při použití MCTS metod Mnoho prostoru pro další výzkum MCTS, Marika Ivanová 2012 27

Aplikace Real-time MCTS Pac-Man [6] Capture the Flag [7] Množství pokusů na komplexnějších RTS, v kombinaci s dalšími algoritmy MCTS, Marika Ivanová 2012 28

Aplikace Nedeterministické hry Skrytá informace a/nebo náhodný prvek Výrazně zvětšuje herní strom Nejlepší počítačový Poker Schopnost nalezení Nashových equilibrií Solitaire MCTS, Marika Ivanová 2012 29

Aplikace Ne-herní aplikace Hodnocení zranitelnosti bezpečnostních biometrických systémů Plánovací problémy Optimalizační úlohy (obchodní cestující, hledání nejkratších cest) MCTS, Marika Ivanová 2012 30

Shrnutí Výhody Doménová znalost není nezbytná Nevhodná znalost výrazně nesnižuje kvalitu Bližší lidskému přístupu prohledávání Nevýhody Náročné hledání parametrů Nevhodné u některých typů stavových prostorů Špatně předvídatelné chování Jednoduchost Aktuální téma Široké možnosti dalšího výzkumu MCTS, Marika Ivanová 2012 31

Děkuji za pozornost. MCTS, Marika Ivanová 2012 32

Zdroje [1] Brügmann: Monte Carlo Go,1993. [2] Coquelin, Munos: Bandit Algorithms for Tree Search, 2006 [3] Arneson, Hayward, Henderson: MoHex Wins Hex Tournament, 2009 [5] Schadd et Al.: Single-Player Monte-Carlo Tree Search, 2008 [6] Samothrakis, Robles, Lucas: Fast Approximate Max-n Monte Carlo Tree Search for Ms Pac-Man, 2010 [7] Chung, Buro, Schaeffer: Monte Carlo Planning in RTS Games, 2005 [8] Lucas, Browne et Al. A Survey of MCTS, 2012 [9] All-Moves-As-First Heuristic in Monte-Carlo Go, 2009 MCTS, Marika Ivanová 2012 33