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

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

Obsah: Hry 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

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

Hry a UI historie. 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

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

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

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

Obsah: Algoritmus Minimax. 7 9 Nedeterministick і hry 7 9 Hry s nep 0 0esn 0 5mi znalostmi

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

Varianty Monte Carlo Tree Search

Algoritmy pro hraní tahových her

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

Základy umělé inteligence

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

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

Úvod do teorie her

a4b33zui Základy umělé inteligence

Algoritmy pro práci s neúplnou informací

Dokumentace programu piskvorek

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

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

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

Základy umělé inteligence

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

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

IUVENTAS Soukromé gymnázium a Střední odborná škola, s. r. o. Umělá inteligence. Jméno: Třída: Rok:

Obsah: Problém osmi dam

}w!"#$%&'()+,-./012345<ya

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

ŠACHOVÉ ENGINY. Semestrální práce pro předmět 4IZ430 Principy inteligentních systémů

UNIVERZITA PARDUBICE

A4B33ZUI Základy umělé inteligence

Složitost her. Herní algoritmy. Otakar Trunda

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

Úvod do teorie grafů

Teorie her a ekonomické rozhodování. 7. Hry s neúplnou informací

Univerzita Karlova v Praze Matematicko-fyzikální fakulta DIPLOMOVÁ PRÁCE

Heuristiky, best-first search, A* search

Pokročilá implementace deskové hry Dáma

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

Neinformované metody prohledávání stavového prostoru Michal Pěchouček, Milan Rollo. Department of Cybernetics Czech Technical University in Prague

PROBLÉM OSMI DAM II. Problém osmi dam. Obsah:

Neinformované metody prohledávání stavového prostoru. Gerstner Laboratory Agent Technology Group, Czech Technical University in Prague

Monte Carlo Tree Search. Marika Ivanová

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

Úvod Game designer Struktura hry Formální a dramatické elementy Dynamika her Konec. Úvod do game designu 1 / 37

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

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

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY REVERSI REVERSI FAKULTA INFORMAČNÍCH TECHNOLOGIÍ ÚSTAV INTELIGENTNÍCH SYSTÉMŮ

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

Alfa-beta algoritmus pro umělou inteligenci hry šachy

Obsah prezentace. Základní pojmy v teorii o grafech Úlohy a prohledávání grafů Hledání nejkratších cest

Vhodné k testování AI technik protože a) není třeba množství znalostí b) snadno se měří úspěšnost (výhra/prohra)

u odpovědí typu A, B, C, D, E: Obsah: jako 0) CLP Constraint Logic Programming

Geneticky vyvíjené strategie Egyptská hra SENET

MATEMATICKÁ TEORIE ROZHODOVÁNÍ

Teorie her a ekonomické rozhodování. 2. Maticové hry

Teorie her a ekonomické rozhodování. 3. Dvoumaticové hry (Bimaticové hry)

MATEMATICKÁ TEORIE ROZHODOVÁNÍ

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY

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

Heuristiky, best-first search, A* search.

NADANÝ ŽÁK A JEHO MOŽNOSTI ROZVOJE VE VOLNÉM ČASE

Pravidla vybraných deskových her pro potřeby předmětů Projektový seminář 1 a 2 v roce 2011/2012. Tomáš Kühr

Heuristiky, best-first search, A* search.

Pokročilé operace s obrazem

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

UNIVERZITA PALACKÉHO V OLOMOUCI KATEDRA INFORMATIKY. ALGORITMY REALIZUJÍCÍ v jednoduchých deskových hrách

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

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

Datové struktury 2: Rozptylovací tabulky

Umělá&inteligence! Co#o#nás#říká,#i#když#to#(někdy)#nechceme#slyšet?#

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

Heuristiky, best-first search, A* search.

Dobývání znalostí. Doc. RNDr. Iveta Mrázová, CSc. Katedra teoretické informatiky Matematicko-fyzikální fakulta Univerzity Karlovy v Praze

TGH13 - Teorie her I.

ALGORITMY A DATOVÉ STRUKTURY

2016, Brno Teorie Her

Katedra kybernetiky laboratoř Inteligentní Datové Analýzy (IDA) Katedra počítačů, Computational Intelligence Group

Univerzita Karlova v Praze. Matematicko-fyzikální fakulta. Jakub Tomek. Aplikace MCTS na hru Quoridor. Studijní program: informatika

Automatizační a měřicí technika (B-AMT)

Laser game. Návod ke hře. Manual ver. 1.1

Rozšířený obchod. Náhrada za slabý list (karty v ruce)

Usuzování za neurčitosti

Moderní systémy pro získávání znalostí z informací a dat

Úvod do teorie her

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

Ústav automatizace a měřicí techniky.

CAS. Czech Association of Shogi

Expe xp rtn t í n í sys s t ys é t my m PSY 481

Obsah: CLP Constraint Logic Programming. u odpovědí typu A, B, C, D, E: jako 0)

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY

Martin Milata, Pokud je alespoň jeden rozměr čokolády sudý (s výjimkou tabulky velikosti 1x2, která už je od

PRAVIDLA HRY S VÝKLADEM...

Multirobotická kooperativní inspekce

Evoluční algoritmy. Podmínka zastavení počet iterací kvalita nejlepšího jedince v populaci změna kvality nejlepšího jedince mezi iteracemi

Transkript:

Hry a UI historie Hry vs. Prohledávání stavového prostoru Hry a UI historie Babbage, 1846 počítač porovnává přínos různých herních tahů von Neumann, 1944 algoritmy perfektní hry Zuse, Wiener, Shannon, 1945 50 přibližné vyhodnocování Turing, 1951 první šachový program (jen na papíře) Samuel, 1952 57 strojové učení pro zpřesnění vyhodnocování McCarthy, 1956 prořezávání pro možnost hlubšího prohledávání Úvod do umělé inteligence 7/12 4 / 26

Hry a UI historie Hry vs. Prohledávání stavového prostoru Hry a UI historie Babbage, 1846 počítač porovnává přínos různých herních tahů von Neumann, 1944 algoritmy perfektní hry Zuse, Wiener, Shannon, 1945 50 přibližné vyhodnocování Turing, 1951 první šachový program (jen na papíře) Samuel, 1952 57 strojové učení pro zpřesnění vyhodnocování McCarthy, 1956 prořezávání pro možnost hlubšího prohledávání řešení her je zajímavým předmětem studia je obtížné: průměrný faktor větvení v šachách b = 35 pro 50 tahů 2 hráčů... prohledávací strom 35 100 10 154 uzlů ( 10 40 stavů) Úvod do umělé inteligence 7/12 4 / 26

Hry vs. Prohledávání stavového prostoru Hry a UI aktuální výsledky Hry a UI aktuální výsledky Othello od 1980 světoví šampioni odmítají hrát s počítači, protože stroje jsou příliš dobré. Othello (též Reversi) pro dva hráče na desce 8 8 snaží se mezi své dva kameny uzavřít soupeřovy, které se přebarví. Až se zaplní deska, spočítají se kameny. dáma 1994 program Chinook porazil světovou šampionku Marion Tinsley. Používá úplnou databázi tahů pro 8 figur (443748401247 pozic). šachy 1997 porazil stroj Deep Blue světového šampiona Gary Kasparova 3 1 /2:2 1 /2. Stroj počítá 200 mil. pozic/s, sofistikované vyhodnocování a nezveřejněné metody pro prozkoumávání některých tahů až do hloubky 40 tahů. 2006 porazil program Deep Fritz na PC světového šampiona Vladimíra Kramnika 2:4. V současnosti vyhrávají turnaje i programy na slabším hardware mobilních telefonů s 20 tis. pozic/s. Go do roku 2008 světoví šampioni odmítali hrát s počítači, protože stroje jsou příliš slabé. V Go je b > 300, takže počítače mohou používat téměř pouze znalostní bázi vzorových her. od 2009 první programy dosahují pokročilejší amatérské úrovně (zejména na desce 9 9, nižší úroveň i na 19 19). Úvod do umělé inteligence 7/12 5 / 26

Typy her Hry vs. Prohledávání stavového prostoru Typy her perfektní znalosti nepřesné znalosti deterministické šachy, dáma, Go, Othello s náhodou backgammon, monopoly bridge, poker, scrabble Úvod do umělé inteligence 7/12 6 / 26

Hry vs. Prohledávání stavového prostoru Hledání optimálního tahu Hledání optimálního tahu 2 hráči ( ) a ( ) je první na tahu a pak se střídají až do konce hry hra = prohledávací problém: počáteční stav počáteční herní situace + kdo je na tahu přechodová funkce vrací dvojice (legální tah, výsledný stav) ukončovací podmínka určuje, kdy hra končí, označuje koncové stavy utilitární funkce numerické ohodnocení koncových stavů Úvod do umělé inteligence 7/12 7 / 26

Hry vs. Prohledávání stavového prostoru Hledání optimálního tahu Hledání optimálního tahu pokrač. počáteční stav a přechodová funkce definují herní strom: (X) (O) X X X X X X X X X (X) X O X O X O... (O) X O X X O X X O X............... koncové stavy utilitární funkce X O X X O X X O X O X O O X X O X X O X O O!1 0 +1... Úvod do umělé inteligence 7/12 8 / 26

Algoritmus Minimax Algoritmus Minimax Hráč ( ) musí prohledat herní strom pro zjištění nejlepšího tahu proti hráči ( ) zjistit nejlepší hodnotu minimax zajišt uje nejlepší výsledek proti nejlepšímu protivníkovi Hodnota minimax(n) = utility(n), pro koncový stav n max s moves(n) Hodnota minimax(s), pro uzel n min s moves(n) Hodnota minimax(s), pro uzel n Úvod do umělé inteligence 7/12 9 / 26

Algoritmus Minimax Algoritmus Minimax pokrač. příklad hra jen na jedno kolo = 2 tahy (půlkola) Úvod do umělé inteligence 7/12 10 / 26

Algoritmus Minimax Algoritmus Minimax pokrač. příklad hra jen na jedno kolo = 2 tahy (půlkola) a 1 a 2 a 3 b 1 b 2 b 3 c 1 c 2 c 3 d 1 d 2 d 3 util.funkce 3 12 8 2 4 6 14 5 2 Úvod do umělé inteligence 7/12 10 / 26

Algoritmus Minimax Algoritmus Minimax pokrač. příklad hra jen na jedno kolo = 2 tahy (půlkola) a 1 a 2 a 3 3 2 2 b 1 b 2 b 3 c 1 c 2 c 3 d 1 d 2 d 3 util.funkce 3 12 8 2 4 6 14 5 2 Úvod do umělé inteligence 7/12 10 / 26

Algoritmus Minimax Algoritmus Minimax pokrač. příklad hra jen na jedno kolo = 2 tahy (půlkola) 3 a 1 a 2 a 3 3 2 2 b 1 b 2 b 3 c 1 c 2 c 3 d 1 d 2 d 3 util.funkce 3 12 8 2 4 6 14 5 2 Úvod do umělé inteligence 7/12 10 / 26

Algoritmus Minimax Algoritmus Minimax pokrač. příklad hra jen na jedno kolo = 2 tahy (půlkola) 3 a 1 a 2 a 3 3 2 2 b 1 b 2 b 3 c 1 c 2 c 3 d 1 d 2 d 3 util.funkce 3 12 8 2 4 6 14 5 2 Úvod do umělé inteligence 7/12 10 / 26

Algoritmus Minimax Algoritmus Minimax vlastnosti úplnost optimálnost časová složitost prostorová složitost Úvod do umělé inteligence 7/12 12 / 26

Algoritmus Minimax Algoritmus Minimax vlastnosti úplnost optimálnost časová složitost prostorová složitost úplný pouze pro konečné stromy Úvod do umělé inteligence 7/12 12 / 26

Algoritmus Minimax Algoritmus Minimax vlastnosti úplnost optimálnost časová složitost prostorová složitost úplný pouze pro konečné stromy je optimální proti optimálnímu oponentovi Úvod do umělé inteligence 7/12 12 / 26

Algoritmus Minimax Algoritmus Minimax vlastnosti úplnost úplný pouze pro konečné stromy optimálnost je optimální proti optimálnímu oponentovi časová složitost O(b m ) prostorová složitost Úvod do umělé inteligence 7/12 12 / 26

Algoritmus Minimax Algoritmus Minimax vlastnosti úplnost úplný pouze pro konečné stromy optimálnost je optimální proti optimálnímu oponentovi časová složitost O(b m ) prostorová složitost O(bm), prohledávání do hloubky Úvod do umělé inteligence 7/12 12 / 26

Algoritmus Minimax Algoritmus Minimax vlastnosti úplnost úplný pouze pro konečné stromy optimálnost je optimální proti optimálnímu oponentovi časová složitost O(b m ) prostorová složitost O(bm), prohledávání do hloubky šachy... b 35,m 100 přesné řešení není možné např. b m = 10 6,b = 35 m 4 4-tahy člověk-nováček 8-tahů člověk-mistr, typické PC 12-tahů Deep Blue, Kasparov Úvod do umělé inteligence 7/12 12 / 26

Časové omezení Algoritmus Minimax Časové omezení předpokládejme, že máme 100 sekund + prozkoumáme 10 4 uzlů/s 10 6 uzlů na 1 tah řešení minimax cutoff: ohodnocovací funkce odhad přínosu pozice nahradí utilitární funkci ořezávací test (cutoff test) např. hloubka nebo hodnota ohodnocovací funkce nahradí koncový test Úvod do umělé inteligence 7/12 13 / 26

Algoritmus Alfa-Beta prořezávání Algoritmus Alfa-Beta prořezávání Příklad stromu, který zpracuje predikát minimax Alfa-Beta odřízne expanzi některý uzlů Alfa-Beta procedura je efektivnější variantou minimaxu Úvod do umělé inteligence 7/12 14 / 26

Algoritmus Alfa-Beta prořezávání Algoritmus Alfa-Beta prořezávání Příklad stromu, který zpracuje predikát minimax Alfa-Beta odřízne expanzi některý uzlů Alfa-Beta procedura je efektivnější variantou minimaxu 4 4 1 4 Úvod do umělé inteligence 7/12 14 / 26

Algoritmus Alfa-Beta prořezávání Algoritmus Alfa-Beta prořezávání Příklad stromu, který zpracuje predikát minimax Alfa-Beta odřízne expanzi některý uzlů Alfa-Beta procedura je efektivnější variantou minimaxu 4 4 5 1 4 5 Úvod do umělé inteligence 7/12 14 / 26

Algoritmus Alfa-Beta prořezávání Algoritmus Alfa-Beta prořezávání Příklad stromu, který zpracuje predikát minimax Alfa-Beta odřízne expanzi některý uzlů Alfa-Beta procedura je efektivnější variantou minimaxu 4 4 5 1 4 5 Úvod do umělé inteligence 7/12 14 / 26

Algoritmus Alfa-Beta prořezávání Algoritmus Alfa-Beta prořezávání Příklad stromu, který zpracuje predikát minimax Alfa-Beta odřízne expanzi některý uzlů Alfa-Beta procedura je efektivnější variantou minimaxu 4 4 4 5 1 4 5 Úvod do umělé inteligence 7/12 14 / 26

Algoritmus Alfa-Beta prořezávání Algoritmus Alfa-Beta prořezávání Příklad stromu, který zpracuje predikát minimax Alfa-Beta odřízne expanzi některý uzlů Alfa-Beta procedura je efektivnější variantou minimaxu 4 4 2 4 5 2 1 4 5 2 1 Úvod do umělé inteligence 7/12 14 / 26

Algoritmus Alfa-Beta prořezávání Algoritmus Alfa-Beta prořezávání Příklad stromu, který zpracuje predikát minimax Alfa-Beta odřízne expanzi některý uzlů Alfa-Beta procedura je efektivnější variantou minimaxu 4 4 2 4 5 2 1 4 5 2 1 Úvod do umělé inteligence 7/12 14 / 26

Algoritmus Alfa-Beta prořezávání Algoritmus Alfa-Beta prořezávání vlastnosti prořezávání neovlivní výsledek je stejný jako u minimaxu dobré uspořádání přechodů (možných tahů) ovlivní efektivitu prořezávání v případě nejlepšího uspořádání časová složitost= O(b m/2 ) zdvojí hloubku prohledávání může snadno dosáhnout hloubky 8 v šachu, což už je použitelná úroveň Úvod do umělé inteligence 7/12 15 / 26