Hry. šachy, backgammon, poker

Podobne dokumenty
Sztuczna Inteligencja i Systemy Doradcze

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

Kristýna Kuncová. Matematika B3

Powyższe reguły to tylko jedna z wersji gry. Istnieje wiele innych wariantów, można też ustalać własne zasady. Miłej zabawy!

Gry. wykład 5. dr inż. Joanna Kołodziejczyk. Zakład Sztucznej Inteligencji ISZiMM. ESI - wykład 5 p. 1

Kristýna Kuncová. Matematika B2 18/19


Aproximace funkcí 1,00 0,841 1,10 0,864 1,20 0,885. Body proložíme lomenou čarou.

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

Komplexní analýza. Martin Bohata. Katedra matematiky FEL ČVUT v Praze Martin Bohata Komplexní analýza Mocninné řady 1 / 18

Katedra kybernetiky skupina Inteligentní Datové Analýzy (IDA) Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti

Świat Wumpusa (Wumpus world)

(1) Derivace. Kristýna Kuncová. Matematika B2 17/18. Kristýna Kuncová (1) Derivace 1 / 35

Elementární funkce. Edita Pelantová. únor FJFI, ČVUT v Praze. katedra matematiky, FJFI, ČVUT v Praze

Necht je funkce f spojitá v intervalu a, b a má derivaci v (a, b). Pak existuje bod ξ (a, b) tak, že f(b) f(a) b a. Geometricky

Numerické metody 8. května FJFI ČVUT v Praze

(13) Fourierovy řady

MATEMATIKA 3. Katedra matematiky a didaktiky matematiky Technická univerzita v Liberci

Wykład 10 i 11. Logiczni agenci. w oparciu o: S. Russel, P. Norvig. Artificial Intelligence. A Modern Approach. Logiczni agenci (4g)

Funkce zadané implicitně. 4. března 2019

WPROWADZENIE DO SZTUCZNEJ INTELIGENCJI

Kapitola 4: Soustavy diferenciálních rovnic 1. řádu

Inverzní Z-transformace

Úvodní informace. 18. února 2019

Automatové modely. Stefan Ratschan. Fakulta informačních technologíı. Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti

Matematika 2, vzorová písemka 1

Obsah: CLP Constraint Logic Programming. Úvod do umělé inteligence 6/12 1 / 17

Camspot 4.4 Camspot 4.5

Algorytmy dla gier dwuosobowych

Logika V. RNDr. Kateřina Trlifajová PhD. Katedra teoretické informatiky Fakulta informačních technologíı BI-MLO, ZS 2011/12

5. a 12. prosince 2018

Numerické metody minimalizace

Internet a zdroje. (Zdroje na Internetu) Mgr. Petr Jakubec. Katedra fyzikální chemie Univerzita Palackého v Olomouci Tř. 17.

(2) Funkce. Kristýna Kuncová. Matematika B2. Kristýna Kuncová (2) Funkce 1 / 25

Co nám prozradí derivace? 21. listopadu 2018

TGH01 - Algoritmizace

3. Problémy s omezujícími podmínkami (CSP Constraint Satisfaction Problems)

Edita Pelantová, katedra matematiky / 16

1 Soustava lineárních rovnic

TGH01 - Algoritmizace

Sztuczna Inteligencja i Systemy Doradcze

v 1 /2 semestru 4. listopadu v rámci přednášky 1 úvod do UI, jazyk Prolog (23.9.) 3 prohledávání stavového prostoru (7.10.)

Lineární algebra - iterační metody

prof. RNDr. Roman Kotecký DrSc., Dr. Rudolf Blažek, PhD Pravděpodobnost a statistika Katedra teoretické informatiky Fakulta informačních technologií

Reprezentace dat. BI-PA1 Programování a Algoritmizace I. Ladislav Vagner

DFT. verze:

NÁVOD K POUŽITÍ KEZELÉSI KÉZIKÖNYV INSTRUKCJA OBSŁUGI NÁVOD NA POUŽÍVANIE. Česky. Magyar. Polski. Slovensky

Linea rnı (ne)za vislost

Komplexní analýza. Martin Bohata. Katedra matematiky FEL ČVUT v Praze Martin Bohata Komplexní analýza Úvod 1 / 32

Hard-Margin Support Vector Machines

Kristýna Kuncová. Matematika B2

Podstawy sztucznej inteligencji

Weronika Mysliwiec, klasa 8W, rok szkolny 2018/2019

Úvod do umělé inteligence, jazyk Prolog

Operace s funkcemi [MA1-18:P2.1] funkční hodnota... y = f(x) (x argument)

Helena Boguta, klasa 8W, rok szkolny 2018/2019

Vybrané kapitoly z matematiky

Sztuczna Inteligencja (SI)

POLIURETANOWE SPRĘŻYNY NACISKOWE. POLYURETHANOVÉ TLAČNÉ PRUŽINY

Petr Křemen FEL ČVUT. Petr Křemen (FEL ČVUT) Vysvětlování modelovacích chyb 133 / 156

Previously on CSCI 4622

Cauchyova úloha pro obyčejnou diferenciální rovnici

Univerzita Palackého v Olomouci

Logický agent, výroková logika

Matematika III Stechiometrie stručný

Statistika (KMI/PSTAT)

Wprowadzenie do Sztucznej Inteligencji

Wprowadzenie do Sztucznej Inteligencji

Geometrická nelinearita: úvod

Zadání: Vypočítejte hlavní momenty setrvačnosti a vykreslete elipsu setrvačnosti na zadaných

Příručka k rychlé instalaci: NWD2105. Základní informace. 1. Instalace softwaru

Martin Pergel. 26. února Martin Pergel

Odpowiedzi do zadań zamieszczonych w arkuszu egzaminu ósmoklasisty z języka angielskiego 17 KWIETNIA 2019 opracowane przez ekspertów Nowej Ery

Machine Learning for Data Science (CS4786) Lecture 24. Differential Privacy and Re-useable Holdout

Zastrzegamy sobie prawo do zmiany cen oraz asortymentu bez wcze niejszego zawiadomienia.

SQL 4 Structured Query Lenguage

Revenue Maximization. Sept. 25, 2018

Comarch ERP XL Business Intelligence Start. Migracja do wersji 2018

Scheelova kometa. Dušan Merta. Colours of Sepsis 2019, OSTRAVA!!!

Register and win!

Lecture 18 Review for Exam 1

Shrnutí. Vladimír Brablec

Západočeská univerzita v Plzni Fakulta aplikovaných věd. Katedra matematiky. Semestrální práce - matematika a byznys

NDMI002 Diskrétní matematika

Katedra kybernetiky laboratoř Inteligentní Datové Analýzy (IDA) Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti

Matematika (KMI/PMATE)

Reprezentace a vyvozování znalostí

deep learning for NLP (5 lectures)

Euklidovský prostor. Funkce dvou proměnných: základní pojmy, limita a spojitost.

Stavový popis Stabilita spojitých systémů (K611MSAP) Katedra aplikované matematiky Fakulta dopravní ČVUT. čtvrtek 20. dubna 2006

Paralelní implementace a optimalizace metody BDDC

x2 + 2x 15 x 2 + 4x ) f(x) = x 2 + 2x 15 x2 + x 12 3) f(x) = x 3 + 3x 2 10x. x 3 + 3x 2 10x x 2 + x 12 10) f(x) = log 2.

Katowice, plan miasta: Skala 1: = City map = Stadtplan (Polish Edition)

Určitý (Riemannův) integrál a aplikace. Nevlastní integrál. 19. prosince 2018

Ogólnopolski Próbny Egzamin Ósmoklasisty z OPERONEM. Język angielski Kartoteka testu. Wymagania szczegółowe Uczeń: Poprawna odpowiedź 1.1.

DODATKOWE ĆWICZENIA EGZAMINACYJNE

Sztuczna Inteligencja i Systemy Doradcze

Paradoxy geometrické pravděpodobnosti

TGH08 - Optimální kostry

Reprezentace a vyvozování znalostí.

Transkrypt:

Hry šachy, backgammon, poker

Hry vs. Prohledávání stavového prostoru Máme dva hráče, kteří se střídají na tahu definované možné tahy, cílové pozice, výhru 1.hráče v cílových pozicích, protihráč má výhru opačného znaménka Prohledávání st. prostoru Minimax Metoda větví a mezí α β prořezávání Historie: algoritmus pro optimální strategii (Von Neumann, 1944) konečný horizont, aproximace (Zuse, 1945; Shannon, 1950; Samuel, 1952 57) prořezávání (McCarthy, 1956)

Typy her deterministické pravděpodobnostní plná informace šachy, dáma, go backgammon neúplná informace bridge, poker, scrabble

Minimax Optimální(+-) strategie pro deterministickou hru s plnou informací Idea: vybrat tah s nejvyšší minimax hodnotou = nejlepší zisk proti nejlepší hře Příklad hry, každý jen jeden tah:

MAX 3 A 1 A 2 A 3 MIN 3 2 2 A 11 A 13 A 21 A 22 A 23 A 32 A 33 A 12 A 31 3 12 8 2 4 6 14 5 2

Minimax algoritmus

function Minimax-Decision(game) returns an operator for each op in Operators[game] do Value[op] Minimax-Value(Apply(op, game), game) end return the op with the highest Value[op] function Minimax-Value(state, game) returns a utility value if Terminal-Test[game](state) then return Utility[game](state) else if max is to move in state then return the highest Minimax-Value of Successors(state) else return the lowest Minimax-Value of Successors(state)

Vlastnosti Minimaxu Úplný?? Ano, pokud je strom konečný (šachy na to mají speciální pravidla) Optimální?? Ano, proti optimálnímu protihráči. Jinak?? Časová složitost?? O(bm ) (b možných tahů, m max. hloubka stromu) Prostorová složitost?? O(bm) (prohledávání do hloubky) Pro šachy, b 35, m 100 v rozumných hrách přesné řešení nedosažitelné

Reálné meze Máme-li 100 vteřin, prohledáme 10 4 uzlů za vteřinu 10 6 uzlů za tah Standardní přístup: cutoff test např. maximální hloubka ohodnocovací funkce ( evaluation function) = odhadovaná výhodnost pozice

Ohodnocovací funkce Black to move White to move White slightly better Black winning Pro šachy je to typicky lineární vážený součet jevů features Eval(s) = w 1 f 1 (s) + w 2 f 2 (s) +... + w n f n (s) např., w 1 = 9 s f 1 (s) = (počet bílých dam) (počet černých dam)

Prořezávání MinimaxCutoff je stejné jako MinimaxValue kromě 1. test Terminal? je nahrazen testem Cutoff? 2. Utility je nahrazena Eval V šachách: b m = 10 6, b = 35 m = 4 4-tahy dopředu vidí i hodně špatný hráč! 4-tahy začátečník 8-tahů typické PC, dobrý šachista (člověk) 12-tahů Deep Blue, Kasparov

α β pruning example

Vlastnosti α β prořezávání Prořezávání nemění výsledek Dobré uspořádání tahů k prohledávání zvyšuje efektivitu prořezávání S ideálním uspořádáním, je časová složitost = O(b m/2 ) zdvojnásobí hloubku prohledávání může snadno projít 8 tahů dopředu a hrát dobré šachy Jednoduchý příklad usuzování o tom, které výpočty jsou relevantní (meta-usuzování)

Co jsou α β? MAX MIN...... MAX MIN V α je nejvyšší jistá hodnota (pro max) dosud nalezená na aktuální větvi Pokud je V horší než α, max si ho určitě nevybere prořežeme Podobně β je nejnižší jistá hodnota (pro min)

The α β algorithm Základ je Minimax + obhospodařování α, β + prořezávání

function Max-Value(state, game, α, β) returns the minimax value of state inputs: state, current state in game game, game description α, the best score for max along the path to state β, the best score for min along the path to state if Cutoff-Test(state) then return Eval(state) for each s in Successors(state) do α Max(α, Min-Value(s, game, α, β)) if α β then return β end return α function Min-Value(state, game, α, β) returns the minimax value of state if Cutoff-Test(state) then return Eval(state) for each s in Successors(state) do β Min( β, Max-Value(s, game, α, β)) if β α then return α end return β

Deterministické hry v praxi Dáma (Checkers): Chinook ukončil čtyřicetiletou vládu mistra světa Marion Tinsley v roce 1994. Používal databázi všech koncovek pro 8 a méně kamenů, tj. pro 443,748,401,247 pozic. Šachy: Deep Blue porazil mistra světa Gary Kasparova v roce 1997. Deep Blue má speciální HW, složité ohodnocování a další heuristiky. Go: mistři odmítají hrát s počítači, protože počítače jsou příliš slabé. V GO je b > 300, čili nelze uvažovat celou goovnici, ale jen patterns.

Nedeterministické hry Např. Backgammon, kostky určují povolené tahy Obrázek zjednodušen na 2 možnosti vrhu místo 21. MAX CHANCE 3 1 0.5 0.5 0.5 0.5 MIN 2 4 0 2 2 4 7 4 6 0 5 2

Algoritmus pro nedeterministické hry Expectiminimax dává optimální hru Stejné jako Minimax, pouze musíme také zpracovat chance uzly průměrem hodnot váženým pravděpodobností:... if state is a chance node then return weightedaverage of ExpectiMinimax-Value of Successors(state)... Obdoba α β prořezávání je možná, jsou-li hodnoty na listech omezené.

Nedeterministické hry v praxi Náhoda rozšiřuje b: 21 různých vrhů dvou kostek Backgammon 20 přípustných tahů (až 6,000 s vrhem 1-1) hloubka 4 = 20 (21 20) 3 1.2 10 9 S prohlubováním hloubky se zmenšuje pravděpodobnost návštěvy uzlu hodnota informace z prohledávání klesá α β prořezávání je daleko méně efektivní TDGammon používá hloubku prohledávání 2 + a velice dobrou ohodnocovací funkci Eval na úrovni světových mistrů

Poznámka: Teorie her Hra: já i oponent volíme tah, pak (hned) dostaneme výplatu podle matice já \ oponent A B A (10,0) (3,15) B (3,7) (5,10) Nashovo equilibrium - strategie, kterou není ani pro jednoho hráče výhodné měnit

Hlavní body Minimax α β prořezávání nedeterministické hry ke hrám s neúplnou informací se trochu vrátíme časem

Co umíte z logiky? výroková logika, axiomy, důkaz predikátová logika, volná proměnná, otevřená a uzavřená formule prenexní tvar formule, konjunktivně disjunktní forma Hornovská klauzule (asi ne, budeme probírat) rezoluční metoda, Skolemovská funkce? (asi ne, budeme probírat)

Wumpus World Percepts Breeze, Glitter, Smell 4 Stench Breeze PIT Actions Left turn, Right turn, Forward, Grab, Release, Shoot 3 2 Stench Breeze Stench Gold PIT Breeze Breeze Goals Get gold back to start without entering pit or wumpus square 1 Breeze START PIT Breeze 1 2 3 4

Environment Squares adjacent to wumpus are smelly Squares adjacent to pit are breezy Glitter if and only if gold is in the same square Shooting kills the wumpus if you are facing it Shooting uses up the only arrow Grabbing picks up the gold if in the same square Releasing drops the gold in the same square