první přednášky

Transkript

první přednášky
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

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...

Více

Herní algoritmy, předn. 4 - Proof number search Lambda search

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 ...

Více

Lambda depth-first proof

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...

Více

PDF formát

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...

Více

Nebezpečný Google – vyhledávání důvěrných

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ů ...

Více

Monte Carlo Tree Search

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

Více

Zpravodajpro kybernetiku a informatiku ˇCSKIˇCesk´a spoleˇcnost

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...

Více

openMagazin 12/2011

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š...

Více