první přednášky
Transkript
Standardnı́ algoritmy: Minimax Monte Carlo Tree Search Proof-number search Prohledávánı́ založené na hrozbách Hernı́ algoritmy, předn.1 Jan Hric, Petr Baudiš ZS: 0/2 Z, NAIL103 26. řı́jna 2012 Jan Hric, Petr Baudiš Hernı́ algoritmy, předn.1 ... a Standardnı́ algoritmy: Minimax Monte Carlo Tree Search Proof-number search Prohledávánı́ založené na hrozbách Obsah 1 Standardnı́ algoritmy: Minimax 2 Monte Carlo Tree Search 3 Proof-number search 4 Prohledávánı́ založené na hrozbách 5 ... a dalšı́ Jan Hric, Petr Baudiš Hernı́ algoritmy, předn.1 ... a Standardnı́ algoritmy: Minimax Monte Carlo Tree Search Proof-number search Prohledávánı́ založené na hrozbách Outline 1 Standardnı́ algoritmy: Minimax 2 Monte Carlo Tree Search 3 Proof-number search 4 Prohledávánı́ založené na hrozbách 5 ... a dalšı́ Jan Hric, Petr Baudiš Hernı́ algoritmy, předn.1 ... a Standardnı́ algoritmy: Minimax Monte Carlo Tree Search Proof-number search Prohledávánı́ založené na hrozbách Hry dvou hráčů s úplnou informacı́ ... Zakladnı́ část: Hry dvou hráčů s úplnou informacı́ a nulovým součtem • Zahrňuje: šachy, dáma, piškvorky, go, arimaa, hex, ... GIPF projekt • Nezahrňuje: bridge, poker, Stratego (neúplná informace/nejistota); vrchcáby/backgammon (náhoda), vězňovo dilema (nenulový součet), Risk (n hráčů) • na pomezı́: optimalizačnı́ problémy ≈ hry 1 hráče ≈ hlavolamy, heuristické evaluačnı́ funkce Jan Hric, Petr Baudiš Hernı́ algoritmy, předn.1 ... a Standardnı́ algoritmy: Minimax Monte Carlo Tree Search Proof-number search Prohledávánı́ založené na hrozbách Techniky • minimax, alfa-beta, ... a heuristiky • Monte Carlo Tree Search • Exaktnı́ prohledávánı́ - Proof Number Search: koncovky, lokálnı́ cı́le • Prohledávánı́ založené na hrozbách: λ-search, null move search • Implementačnı́ techniky: hernı́ strom, Transpozičnı́ Tabulky, paralelizace, bitboard • Dalšı́: hry 1 hráče, hranı́ za nejistoty a s neúplnou informacı́ • (Hranı́ obecných her, GGP: General Game Playing; učenı́ ohodnocovacı́ch funkcı́) Jan Hric, Petr Baudiš Hernı́ algoritmy, předn.1 ... a Standardnı́ algoritmy: Minimax Monte Carlo Tree Search Proof-number search Prohledávánı́ založené na hrozbách Minimax • Základy: Minimax, alfa-beta, ... • Varianty: Negamax, Principiálnı́ varianta, (Negascout), Iterativnı́ prohlubovánı́, MTD(f), (SSS∗ ) ... • Impl: Transpozičnı́ tabulky, okno, history heuristika, killery, null-move, ... • Souvisejı́cı́ pojmy: heuristická ohodnocovacı́ funkce, efekt horizontu, ... Jan Hric, Petr Baudiš Hernı́ algoritmy, předn.1 ... a Standardnı́ algoritmy: Minimax Monte Carlo Tree Search Proof-number search Prohledávánı́ založené na hrozbách Outline 1 Standardnı́ algoritmy: Minimax 2 Monte Carlo Tree Search 3 Proof-number search 4 Prohledávánı́ založené na hrozbách 5 ... a dalšı́ Jan Hric, Petr Baudiš Hernı́ algoritmy, předn.1 ... a Standardnı́ algoritmy: Minimax Monte Carlo Tree Search Proof-number search Prohledávánı́ založené na hrozbách Monte Carlo Tree Search (idea) • Desková hra Go: široký stavový prostor, žádná dobrá ohodnocovacı́ funkce Jan Hric, Petr Baudiš Hernı́ algoritmy, předn.1 ... a Standardnı́ algoritmy: Minimax Monte Carlo Tree Search Proof-number search Prohledávánı́ založené na hrozbách Monte Carlo Tree Search (idea) • Desková hra Go: široký stavový prostor, žádná dobrá ohodnocovacı́ funkce • Ohodnocujme pomocı́ náhodných simulacı́ — výsledku sehrávek do koncové pozice • Pravděpodobnostnı́ minimaxový strom, každý uzel má očekávanou pravděpodobnost výhry µ Jan Hric, Petr Baudiš Hernı́ algoritmy, předn.1 ... a Standardnı́ algoritmy: Minimax Monte Carlo Tree Search Proof-number search Prohledávánı́ založené na hrozbách Monte Carlo Tree Search (idea) • Desková hra Go: široký stavový prostor, žádná dobrá ohodnocovacı́ funkce • Ohodnocujme pomocı́ náhodných simulacı́ — výsledku sehrávek do koncové pozice • Pravděpodobnostnı́ minimaxový strom, každý uzel má očekávanou pravděpodobnost výhry µ • Výběr synů při sestupu: Multi-armed Bandit (exploration vs. exploitation) • Strom roste dynamicky podle směru prohledávánı́ Jan Hric, Petr Baudiš Hernı́ algoritmy, předn.1 ... a Standardnı́ algoritmy: Minimax Monte Carlo Tree Search Proof-number search Prohledávánı́ založené na hrozbách Monte Carlo Tree Search (praxe) • Na loupežnı́kovi záležı́ — UCT, RAVE • Simulace vlastně nemusı́ být tolik náhodné: doménové heuristiky, vyvažovánı́ • Co s čerstvými listy? Inicializace na základě doménových heuristik • Paralelizace (výhody stochastického algoritmu) Jan Hric, Petr Baudiš Hernı́ algoritmy, předn.1 ... a Standardnı́ algoritmy: Minimax Monte Carlo Tree Search Proof-number search Prohledávánı́ založené na hrozbách Monte Carlo Tree Search (praxe) • Na loupežnı́kovi záležı́ — UCT, RAVE • Simulace vlastně nemusı́ být tolik náhodné: doménové heuristiky, vyvažovánı́ • Co s čerstvými listy? Inicializace na základě doménových heuristik • Paralelizace (výhody stochastického algoritmu) • Doménové heuristiky — ale jaké a jak je efektivně počı́tat? Efektivnı́ reprezentace, pattern matching, strojové učenı́ • Otevřené problémy — sdı́lenı́ informacı́, taktické oblasti Jan Hric, Petr Baudiš Hernı́ algoritmy, předn.1 ... a Standardnı́ algoritmy: Minimax Monte Carlo Tree Search Proof-number search Prohledávánı́ založené na hrozbách Outline 1 Standardnı́ algoritmy: Minimax 2 Monte Carlo Tree Search 3 Proof-number search 4 Prohledávánı́ založené na hrozbách 5 ... a dalšı́ Jan Hric, Petr Baudiš Hernı́ algoritmy, předn.1 ... a Standardnı́ algoritmy: Minimax Monte Carlo Tree Search Proof-number search Prohledávánı́ založené na hrozbách Proof-number search (PNS) Pracuje nad And/Or stromem (implicitně zadaným) PNS určı́ splnitelnost cı́le: ano/ne/nevı́m (tj. přesnou minimax. hodn.) Určen pro koncovky a lokálnı́ cı́le (vzetı́ figury, spojenı́ v go) • Počı́tá proof-number a disproof-number (PN a DN): minimálnı́ počty uzlů, které potřebuju pro dokázánı́ resp. vyvrácenı́ cı́le • Sestup do listu k rozvinutı́ se vybı́rá podle nejmenšı́ch PN/DN synů pro MAX/MIN vrchol (tj. nejnadějnějšı́); ... a propagace hodnot nahoru • Základnı́ alg. je „do šı́řky“ (velká spotřeba paměti), jsou varianty počı́tajı́cı́ (iterovaně) „do hloubky“ Jan Hric, Petr Baudiš Hernı́ algoritmy, předn.1 ... a Standardnı́ algoritmy: Minimax Monte Carlo Tree Search Proof-number search Prohledávánı́ založené na hrozbách Proof-number search: techniky PNS neformálně: preferuje úzké stromy, stavı́ nerovnoměrné stromy, zvládá pohyblivé figurky (shogi - jap. šachy) Techniky – chytré rozvı́jenı́ – simulace Jan Hric, Petr Baudiš Hernı́ algoritmy, předn.1 ... a Standardnı́ algoritmy: Minimax Monte Carlo Tree Search Proof-number search Prohledávánı́ založené na hrozbách Outline 1 Standardnı́ algoritmy: Minimax 2 Monte Carlo Tree Search 3 Proof-number search 4 Prohledávánı́ založené na hrozbách 5 ... a dalšı́ Jan Hric, Petr Baudiš Hernı́ algoritmy, předn.1 ... a Standardnı́ algoritmy: Minimax Monte Carlo Tree Search Proof-number search Prohledávánı́ založené na hrozbách λ-search – Hrozba: tah, na který musı́ soupeř (lokálně) odpovědět, jinak prohraje (resp. zhoršı́ si situaci); tempo/sente – Řád hrozby n: kolik tahů může soupeř vynechat – Přı́klad: piškvorky – Základnı́ alg. buduje λn -stromy - útočné a obranné - z hlediska jednoho hráče – Vhodné pro koncovky a taktické varianty, buduje nerovnoměrné stromy, použı́vá se pro ”dořešenı́ úloh”: piškvorky, hex Jan Hric, Petr Baudiš Hernı́ algoritmy, předn.1 ... a Standardnı́ algoritmy: Minimax Monte Carlo Tree Search Proof-number search Prohledávánı́ založené na hrozbách Outline 1 Standardnı́ algoritmy: Minimax 2 Monte Carlo Tree Search 3 Proof-number search 4 Prohledávánı́ založené na hrozbách 5 ... a dalšı́ Jan Hric, Petr Baudiš Hernı́ algoritmy, předn.1 ... a Standardnı́ algoritmy: Minimax Monte Carlo Tree Search Proof-number search Prohledávánı́ založené na hrozbách Možnosti • Historie: PNS 1994, λ 2000, UCB 2002, UCT/MCTS 2006, (GGP 2005) • Řešenı́ her: piškvorky (1994), hex 9x9 (část) 2010, go 5x5 2005, checkers/dáma 2007 Vlastnı́ práce: • Kombinace algoritmů, nové efektivnı́ strategie (a implementačnı́ triky) • Varianty, odstraňovánı́ nevýhod (šetřenı́ pamětı́, go: open space solver) • Aplikace na jiné hry (Arimaa, Quoridor, Samegame): jiné techniky jsou vhodné, „implicitnı́“ vlastnosti • Doménové znalosti a jejich integrace Jan Hric, Petr Baudiš Hernı́ algoritmy, předn.1 ... a Standardnı́ algoritmy: Minimax Monte Carlo Tree Search Proof-number search Prohledávánı́ založené na hrozbách Jiné hry Hry 1 hráče • neúplné prohledávánı́ velkých stavových prostorů • mnoho různých přı́stupů • MCTS je aplikovatelné • („No free lunch theorem“ in search and optimization) Hry s neurčitostı́ • Minimax lze upravit na ExpectiMax Jan Hric, Petr Baudiš Hernı́ algoritmy, předn.1 ... a Standardnı́ algoritmy: Minimax Monte Carlo Tree Search Proof-number search Prohledávánı́ založené na hrozbách Různé • Drobnosti: článek o optimálnı́ přepisovacı́ strategii v TT: 2big • GHI: Graph History Interaction • Doménové znalosti, odstraňovánı́ nevýhod (go: nakade, criticality; Arimaa: zajetı́ velblouda) • Učenı́ heuristických ohodnocovacı́ch funkcı́ (Backgammon: Tesauro 1992, reinforcement learning), self-play, laděnı́ parametrů (velký prostor, velký rozptyl, citlivé) • Učenı́ Opening book, analýza pozice • Hry těžké pro počı́tače: Arimaa, (Game of the) Amazons, GIPF project (Dvonn, Gipf, Zertz, Yinsh, Punct, Tzaar, (Tamsk)) • SAT, QBF: Quantified Boolean Formula - And/Or strom • CGT: Combinatorial Game Theory (viz) Jan Hric, Petr Baudiš Hernı́ algoritmy, předn.1 ... a
Podobné dokumenty
zpravodaj 2008-3 - Svět deskových her
Zbytečně mi zabírá místo v bazénu.
Ptáte se, co to tady píšu za nesmysly?
Tak nějak může vypadat i vaše zoo na
konci partie Aquaretta! Kdo z nás nemá
rád zvířátka! Aquaretto je hra, ve které se
kol...
Herní algoritmy, předn. 4 - Proof number search Lambda search
počet vrcholů, které ”změnı́” hodnotu kořene
• najde důkaz anebo vyvrácenı́ pro pozici
• konstruuje oba stromy současně (proof, disproof), rozvı́jı́ vždy jeden
(nejpřı́nosnějšı́) uzel
...
Lambda depth-first proof
Důkaz pozice = výhra hráče MAX, vyvrácení = výhra hráče MIN.
Uzel je buďto dokázaný, vyvrácený, nebo neznámý.
Postupně expandujeme strom, vybíráme nejslibnější uzel (Most
Promising Node = MPN) na z...
PDF formát
C) Autorská soutěž
Máte nápad na nějakou dosud nevyzkoušenou variantu nějaké hry? Dejte nám vědět. Nebudeme-li
takovou variantu znát, můžete od nás obdržet věcnou cenu. (V ideálním případě přijďte...
Nebezpečný Google – vyhledávání důvěrných
účtům. Vyplývá to hlavně z neznalosti uživatelů, kteří nezodpovědně
umisťují hesla na veřejně přístupná
místa, ale také z nedbalosti vývojářů
programů, kteří buď nedostatečně
chrání data uživatelů ...
Monte Carlo Tree Search
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
Zpravodajpro kybernetiku a informatiku ˇCSKIˇCesk´a spoleˇcnost
prvků) a algebru hustých prvků D. Trojice (S,D,h) sice původnı́
BCK-algebru nemusı́ určovat, ale v některých přı́padech můžeme z
(S,D,h) sestrojit BCK-algebru, do nı́ž se všechny algebr...
openMagazin 12/2011
Zahrajete si občas nějakou hru? Téma prosincového openMagazinu je o
hrách a hraní; vybrali jsme pro vás několik deskových, simulačních a
najde se i strategická. Známé hry např. šachy, mlýn, go, piš...