Herní algoritmy, předn. 4
|
|
- Bohumila Svobodová
- před 8 lety
- Počet zobrazení:
Transkript
1 Herní algoritmy, předn. 4 Proof number search Lambda search Jan Hric, Petr Baudiš NAIL103, ZS 20. listopadu 2013 Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
2 Obsah 1 Úvod Úvod 2 PNS alg. Idea 3 PNS varianty Varianty 4 Depth first PNS DF-PNS 5 Další PNS 6 Lambda search Lambda search Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
3 Proof number search, úvod Používá se typicky pro hledání (úplné) útočné nebo obranné strategie, tj. dokazování, zda je pozice vyhraná Idea: některé větve mají mnohem lehčí (tj. menší) důkaz Hodí se uspořádaní tahů Uniformní prohledávání do stejné hloubky (jako alfabeta) má nevýhody. Hluboké, ale většinou vynucené větve lze dokázat snadněji. V mnoha hrách, větvící faktor není uniformní: šachy: král musí uniknout z šachu, jinak prohra dáma: skákat se musí (v pravidlech). Taky to zjednodušuje pozici. go: u kamenů blízko života stačí spočítat málo útočných tahů, ostatní jsou neúčinné důsledek: omezený větvící faktor, zvyšuje se hloubka prohledání Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
4 PNS PNS: Victor Allis 1994; předtím McAllester: conspiracy numbers, min. 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 alg. v průběhu výpočtu některé uzly dokáže anebo vyvrátí, ale většina uzlů je ve stavu neznámý (...) alg. končí, až je kořen známý, tj. dokázaný nebo vyvrácený v principu: informované prohledávání do šířky, nemusí najít nejmenší strom Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
5 PNS (2) Mějme průběžný neúplný strom: jak daleko jsme od dokázání/vyvrácení? (Výsledek nevíme dopředu.) Najdeme minimální (proti-)důkazovou množinu ((dis-)proof set): množina vrcholů, které musí být dokázány/vyvr., aby jsme dok./vyvr. kořen Princip: optimizmus při neurčitosti (bude i v MCTS) Předpokládejme cenu neznámeho uzlu 1 - to je dolní mez Důkaz máme, když má důkazová množina velikost 0. (analogicky pro vyvrácení) Idea: expandujeme vrchol z min. důkazové a min. vyvracecí množiny (analogie PV) Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
6 Nejslibnější uzel Klíčová vlastnost PNS: vždy existuje ve stromě nejslibnější uzel (Most-Promising Node, MPN) MPN je v průniku minimální důkazové a minimální vyvracecí množiny Vyřešení MPN pomůže při důkaze nebo vyvracení, protože zmenší velikost příslušné minimální množiny pro kořen V průběhu alg. po rozvinutí jednoho MPN velikosti min. množin typicky vzrostou (kromě koncových pozic). Pozn: MPN není jednoznačný, což nevadí. Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
7 PNS algoritmus Proof number vrcholu n: velikost minimální důkazové množiny pro n. Optimistický odhad nejkratšího důkazu n. Disproof number: velikost minimální vyvracecí množiny pro n. Optimistický odhad nejkratšího vyvrácení n. PNS alg.: najdi MPN a expanduj. Přepočítej hodnoty PN a DN. Cykli, dokud není kořen dokázaný nebo vyvrácený (a jsou zdroje). (MPN skáče mezi podstromy; podobně jako expandovaný uzel v MCTS) Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
8 Proof a Disproof numbers v listech Značení: n.pn = proof number vrcholu n Značení: n.dn = disproof number vrcholu n List, výhra: n.pn = 0, n.dn = List, prohra: n.pn =, n.dn = 0 List, neznámý: n.pn = n.dn = 1 Výhra a prohra: podle pravidel hry Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
9 Proof a Disproof numbers ve vnitřních vrcholech připomenutí: pro důkaz kořene potřebujeme dokázat jednoho syna v OR-uzlu a všechny syny v AND-uzlu (OR=MAX) počítání čísel zdola; když máme hodnoty v synech, pak pro OR-uzel je PN minimum z PN-hodnot synů a DN je součet DN-hodnot všech synů pro AND-uzel duálně: PN je součet a DN je minimum předpoklad: podstromy se řeší nezávisle (neplatí vždy (tj. použitelné na DAG/DCG); způsobí neoptimalitu (až přetečení), ale ne chybný výsledek) Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
10 Vzorce Backup fáze (terminologie: přepočítání?), zdola OR-uzel: n.pn = min s synove(n) s.pn OR-uzel: n.dn = s synove(n) s.dn AND-uzel: n.pn = s synove(n) s.pn AND-uzel: n.dn = min s synove(n) s.dn operace s : + = + c =, min(c, ) = c... Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
11 Dokázané a vyvrácené vrcholy Dokázaný vrchol n: n.pn = 0, n.dn = Vyvrácený vrchol n: n.pn =, n.dn = 0 Výhry a prohry se propagují podle očekávání: Pro OR-uzel syn s i je výhra: n.pn = min(s 1.pn,...s i.pn,...) = min(..., 0,...) = 0 n.dn = (s 1.dn,...s i.dn,...) = (...,,...) = Pro AND-uzly duálně, tj. prohodíme.pn a.dn Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
12 PNS impl. základní impl.: informovaně do šířky, uzly v paměti pro OR-uzly podle min PN pro AND-uzly podle min DN optimizace: při přepočítávání zdola můžeme zastavit, pokud se hodnoty pn a dn nemění (nastává, když víc synů mělo stejné pn, resp. dn). Výběr MPN spustíme odtud. Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
13 Analýza pro jedno rozvinutí MPN: (bez optimalizací) Výběr MPN: hloubka MPN prům. faktor větvení Úprava PNs: stejné Expanze MPN: počet synů cena vytvoření a inicializace uzlu Pamět na iteraci: počet synů velikost uzlu Pokud je strom vyvážený a faktor větvení omezený konstantou: hloubka je O(log n) pro n uzlů, čas O(log n), O(1) paměti za iteraci Celkový čas pro strom s n uzly, omezené větvení: Θ(n log n) pro vyvážený strom, Θ(n 2 ) pro degenerovaný (malé větvení, hluboké větve) Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
14 PNS, komentáře Best-first, vhodný pro nevyvážené stromy Adaptuje se na hluboké, ale úzké důkazy Nezaručuje krátkou výhru a malý strom důkazu - ignoruje cenu dosud vygenerované části Chová se spíš jako (lokální) čistě heuristické prohledávání z jedno-agentového prohledávání stavového prostoru než jako optimální A* (např. nejlepší řešení může být schované za jedním nevynuceným, přípravným tahem) Existuje alg. AO*, ekvivalent k A*, pro hledání nejlepších řešení v AND/OR stromech. (Ale v obecnosti chceme hledat v grafech, typicky acyklických) Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
15 PNS, komentáře 2 náročný na pamět, všechny uzly jsou v paměti (depth first PNS to odstraňuje) dokázané a vyvr. stromy lze vypouštět z paměti (pokud si je nechci uschovat/prohlížet; můžu vypsat do logu) lze vypouštět nekritické větve kompromis: pro účely znovuprohledání si pamatuju PN a DN kořene vypouštěné větve líné vypouštění, když dochází pamět (viz alg. SMA*, analogie k A*, ale s omezenou pamětí) Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
16 Použití na vyřešení her:..., piškvorky na koncovky;... např. shogi (japonské šachy na 9x9) pro praktické použití potřeba přeformulovat do depth first varianty nezávislý na hře: nepotřebuje heuristiku (řídí se stromem), ale nepodporuje přímou integraci heuristiky (viz) některé hry (např. Arimaa) nemají významně různý počet tahů pro dobré a špatné pozice Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
17 PNS na DAG víc realistická varianta je dobře definovaný, počítání hodnot zdola Problém 1: vrchol má víc než jednoho rodiče Problém 2: nadhodnocení PN a DN Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
18 na DAG, víc rodičů Problém 1: vrchol má víc rodičů Přepočítání všech? Cena se zvýší, nejhůř z Θ(log n) na Θ(n) na iteraci Přepočítání pouze jednoho? Hodnoty se rozsynchronizují a MPN bude nepřesně počítán Obvykle: přepočítání jednoho rodiče, ostatní až/pokud jsou zpracovány Otevřený problém: jde to lépe? Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
19 na DAG, nadhodnocení Problém 2: nadhodnocení PN a DN připomenutí: PN a DN odhadují min. počet listů, které se musí vyřešit v DAG se stejný list může započítat po několika cestách toto nadhodnocení může být exponenciálně horší důsledek: lehký vrchol vypadá (velmi) těžce; následně vrcholy mimo dis/proof set musíme rozpracovat o (hodně) víc než při těsnějších mezích vyskytuje se v praxi: tsume shogi (úlohy, (dlouhé) koncovky), go možnosti: Proof-set search (Nagai), úpravy df-pns Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
20 Heuristická inicializace Heuristická inicializace pn a dn (stejně nepočítá nejmenší stromy) Připomenutí: pn a dn jsou dolní meze pro cenu vyřešení uzlu Inicializace hodnotou 1 je naivní Lze najít lepší odhad? Závisí na pozici. Lze použít doménovou znalost, např. bezpečnost krále, go: vzdálenost k životu Jsou pn a dn nepřímo úměrné? Ne zcela. Významné zlepšení v praxi Pouze částečná a nepřímá heuristika, netýká se stromu Otevřená otázka: lze použít strojové učení? A jak? Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
21 Vylepšení: výhled jednoho tahu Jak dopadne expanze jednoho uzlu? V případě, že se ho nepodaří vyřešit. OR uzel: pn = 1 před a po, dn = 1 před a počtu dětí po AND uzel: dn = 1 před a po, pn = 1 před a počtu dětí po v mnoha hrách je laciné spočítat nebo odhadnout(!) počet následníků; go: počet volných průsečíků je dobrý odhad inicializujme dn v OR- a pn v AND-uzlu odhadem počtu dětí v podstatě to znamená, máme výhled o 1 tah dál Jak tato inicializace interaguje s jinými (např. doménovými) metodami? Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
22 Vyhodnocení listu okamžité vs. odložené ohodnocení; immediate resp. delayed evaluation Okamžité ohodnocení : rozvinu list a nové syny hned ohodnotím mám víc informací, tj. řízení je lepší Odložené ohodnocení : list se ohodnotí, až je vybrán jako MPN za speciálních okolností, viz př. - může být několik úrovní vyhodnocení: 1. rychlé, nepřesné; 2. přesné Př, v PN 2 : PN 2 má okamžité ohodnocení, PN 1 odložené (ale pamatuju si dolní odhady PN a DN) Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
23 Rozšíření na vícehodnotový případ např. výhra - remíza - prohra; go: život, seki a (různé druhy) ko, přesné počítání koncovek Série boolovských hledání; např. binární nebo sekvenční hledání Každé hledání (průchod) používá mez pro listy, podobně jako hledání s nulovým oknem Otevřený problém: Jak využít stromy důkazu z minulých průchodů? Lehký případ: minulé hledání bylo s přísnějšími mezemi než aktuální Těžký případ: nový cíl je těžší Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
24 Případová studie: Dáma/Checkers Řešení dámy, Schaffer a kol. Použití jádra (seed) pro generování stromu: nejlepší varianty jsou navrženy lidskými experty Pseudo-důkaz: předpokládejme, že všechno se (statickým) ohodnocením > 150 je výhra, < 150 je prohra. Vytvoří se strom. Až se strom s mezí ±150 vybuduje, zvýší se mez na ±200, atd. Až mez dosáhne ±, máme úplný důkaz. Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
25 Případová studie: Dáma/Checkers (2) Pro rozšiřování stromu lze použít simulace už hotových stromů - stejný tah/podstrom zkoušíme u bratra. Navíc nejlepší tahy už typicky máme: jádro, eval. okolo 0. Listy v pseudodůkazu: v koncovkách je strom malý (resp. použijeme endgame tabulky) Listy uvnitř: máme problém, pokud pseudolist n je výhra, ale pozice je reálně prohra - pak musíme najít jiný důkaz otce (nebo vzdálenějšího předchůdce) n. Málo časté, pouze když heur. fce je nepřesná Speciálně: v dobrých pozicích můžu udělat horší tah, abych se dostal do již dokázané části stromu, resp. na položky TT (kde je eval. okolo 0). Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
26 Předchůdce PNS: Konspirační čísla pro AB navrženo McAllister 1985, 1988 Kolik vrcholů v Alfabetě se musí dohodnout, aby změnili minimaxovou hodnotu kořene? Připomenutí: PV není jedinečná, musí se změnit vrcholy ve všech PV (v nichž platí val = PV.val) Zjednodušení, omezení na boolovský případ vedlo V. Allise k PNS Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
27 PNS: dodatky dobré a špatné příklady pro PNS správa paměti a garbage collection dvojúrovňový PNS - PN 2 (jedno z prvních vylepšení) negamax formulace PNS úprava na (iterované) prohledávání do hloubky - df-pns prohledávání s omezenou šířkou: case study: hex; použitelné obecně, hodí se uspořádání tahů (tj. integrace heur./doménové info) (další: PN, PDS, λpns, EF-PN (evaluation function-based) ) Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
28 Chování Dobré případy nerovnoměrné větvení rychlé důkazy/vyvrácení pro některé větve (chybu soupeře rychle potrestáme, máme jádro pro simulace) počet tahů koreluje s pravděpodobností výhry; šachy: málo obranných tahů (při šachu) může znamenat král v problémech Špatné případy všude to vypadá stejně uniformní větvení, bez rychlých výher/proher; přípravné tahy v podstatě: drahý způsob pro neinformované prohledávání Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
29 PNS :-( Velmi špatné případy Když PNS aktivně zavádí na scestí Př: krátký důkaz potřebuje 3 uzly, ale existuje velký strom s pn 2 Mnoho vynucovacích tahů, které nefungují. Funguje pouze tichý tah. Go: větvící se schody, všechny větve selžou, ale gheta (sít ) funguje př. Arimaa: zmrazení nebo braní (nepodstatných) figur soupeře (nejčastěji je cíl dosažen vlastní volností (goal) a ne omezením soupeře (swarm a bez tahu; bez králíků)) Q: vztah k problému horizontu? Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
30 Dvojúrovňový PNS - PN 2 První PNS běží v kořeni V listech běží druhý PNS, omezený (prahem, pamětí): jeho informace se propagují nahoru Strom druhého PNS se zahazuje - šetří to pamět, ale případně plýtvá zdroji. Např. se nechávaní synové druhotného kořene v prvním stromu Nevýhoda: Kořenový PNS je celý v paměti impl.: pro M = velikost paměti a x = # uzlů v hlavním stromě, druhotný strom rozvine min(m, 1 + e x a b ), vhodné a, b (b určuje kvocient, a bázi) druhotné stromy rostou zhruba geometrickou řadou ( kapitánský krok ), díky přeskakování MPN prozkoumáváme různé větve se zvyšujícím se úsilím Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
31 Negamax formulace PNS n.φ = n.pn v OR-uzlu, n.dn v AND-uzlu n.δ = n.dn v OR-uzlu, n.pn v AND-uzlu Vzorec pro výpočet: n.φ = min(s 1.δ,..., s k.δ) Vzorec pro výpočet: n.δ = (s 1.φ,..., s k.φ) Důsledek: z hlediska výpočtu nerozlišuju OR a AND uzly Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
32 Úprava na prohledávání do hloubky Depth-first verze PNS: df-pn (následně několik variant alg.) Nagai, 2002 df-pn se chová jako PNS, expanduje MPN pro úplnost: obecně je víc MPN, výběr z nich se může lišit základní verze df-pn: pouze iterace v kořeni Snižuje opakované expanze vnitřních vrcholů Používá TT, chová se dobře i s malými tabulkami df-pn(r): Kishimoto, Müller: úprava df-pn pro hry s opakováním (dáma, ko v go), tj. DCG, nejen DAG (impl. počítá min. vzdálenost od kořene) předchůdci: PDS: iterativní prohlubování (pouze) v kořeni, tj. zvyšování prahů; PN*: zvyšování pouze pro pn;... Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
33 Přínosy Df-pn Efektivita Pamět Opakované iterativní prohlubování ve vnitřních vrcholech Rozšíření pro vyhnutí se dvojitému počítání v DAG Rozšíření v df-pn+ umožní ocenit hrany, najde optimální řešení v And/Or grafech (jako AO*) Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
34 Df-pn: Idea pro výpočet Min v PNS, hledání často uvízne v jednom podstromě na dlouhou dobu pokud víme určit MPN (most proving node), nezajímají nás konkrétní pn a dn čísla - lze odložit backup př: n.pn = min(80,70,20,65,50) = 20 lokálně, zůstaneme v podstromě s pn = 20, dokud jeho pn (ostře) nepřevýší druhé nejmenší pn 2 mezi syny, tj. 50 v př. globálně, musíme kontrolovat zda se volba větve nezmění někde výš ve stromě. To lze poslat z rodiče dolů jako práh. Vzorec pro nový práh pn: min(parent.pn,pn 2 + 1) Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
35 Df-pn: Idea pro výpočet Sum n.pn = (s 1.pn,...s k.pn) Máme práh pro vrchol n, n.mezpn Q: Jak dlouho budeme pracovat v s i? A: Dokud n.pn n.mezpn anebo zvýšení v s i nepřevýší rozdíl n.mezpn n.pn. Vzorec: s i.mezpn = s i.pn + (n.mezpn n.pn) tj. vyčerpali jsme rezervu, je jedno, kde (z hlediska důkazu) Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
36 Opakované iterativní prohlubování Multiple Iterative Deepening (MID) Iterativní prohlubování v každém vrcholu, nejen v kořeni Prohloubení znamená zvýšení prahu, nikoli hloubky Vhled: pn a dn se můžou i snížit, nejen zvýšit (když se dokáže syn nějakého sum-uzlu) df-pn volá z kořene MID s prahy ± používá TT Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
37 df-pn+ Myšlenky: Heuristická inicializace v listech: určuje obtížnost důkazu/vyvrácení pro list Ohodnocení hran Měří dychtivost zkoumání tohoto tahu vysoká cena hrany: preferuj plytké stromy, víc do šířky nízká cena: preferuj tuto větev Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
38 Šetření pamětí Běží s malou spotřebou paměti Prořezávání (Nagai): SmallTreeGC, SmallTreeReplacement SmallTreeGC: GC se předají vrcholy s malými podstromy SmallTreeReplacement: Hašování pomocí otevřené adresace, vyzkoušej pár (např. 10) položek a nahrad tu s nejmenším stromem Jiná možnost: Hašování se zřetězením - ukládá se víc než 1 položka na 1 adresu (i zde potřebuje uvolňovat) DC impl.: jak uvolňovat globálně nejmenší? Chceme on-line, jako side-efekt (plovoucí mez) Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
39 Weak PNS Pokud pracujeme na DAG, PNS nadhodnocuje pn a dn, protože jeden vrchol je započítán po několika cestách Weak PNS odstraňuje tuto nevýhodu: místo sumy pro dn v OR- (a analogicky pn v AND-uzlu) počítá dn(n) = max dn(s) + n.nevyresenysyn 1 pro OR-uzel tj. další děti, kromě nejtěžšího, započítá pouze hodnotou 1 Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
40 Focused DFPNS, FDFPNS PNS prohledává všechny uzly, neprořezává jako Alfabeta Když hra neposkytuje vodítko, prohledávám i zbytečné větve (které nejsou ve výsledném stromě; typicky na začátku) Př: Hex: ve stejné hloubce stejné větvení; Arimaa: velké větvení řádu 10 4 (protože v tahu mám až 4 kroky za sebou) Idea: omezit šířku, tj. počet aktivních synů jednoho uzlu. Pokud se některého syna podaří dokázat, další ještě nezpracovaný syn se stane aktivní Využívá uspořádání, preferuje nejlepší uzly (!za oba, tj. nejtěžší, nejúčinnější obranu). (Ostatní chci přeskočit, ne (projít a) vyvrátit) Q: Integrace s jinými technikami Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
41 Další PNS skáče mezi větvemi, to není kompatibilní s inkrementální úpravou d.s./stavových informací. Např. pro Hex se engine bez inkrementálního počítání 2x spomalil Lambda DFPN, LDFPN - kombinace PNS a lambda stromů: pomocí PNS řeší λ i -strom pro nejmenší i 1 + ɛ trick, Lew Lukasz 2006: prahy v DFPNS zvětšuju geometrickou řadou, to zmenšuje počet přeskoků mezi podstromy, které se případně nevejdou do TT (použitelné i v MCTS: spočítat pevnou část (např. 1/10) počtu návštěv v akt. uzlu a neopouštět uzel, dokud se nevykoná aspoň tolik playoutů v podstromě) Q: srovnání s SMA* (Simplified Memory-Bounded A*) - explicitně zahazuje nejméně slibné vrcholy a pamatuje si dolní odhady uvolněných vrcholů Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
42 Lambda Search Allis a kol. 1996, Thomsen 2000, Cazenave 2002 Idea: používame hrozby různého řádu n Řád hrozby neformálně: kolikrát může soupeř vynechat tah (tj. null move/pas) než prohraje V λ n -stromě se prohledávají pouze hrozby řádu n, bez ohledu na hloubku stromu. Pokud ve vrcholu není λ n -tah, vrchol je listem, prohraným (pro hráče na tahu) Rozlišujeme útočníka, který hraje v kořeni a snaží se o splnění cíle, a obránce (attacker, defender) - nesymetrické role příklad pro představu: piškvorky Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
43 Lambda Strom Značení: λ n =1, pokud útočník může vyhrát v dané pozici pomocí hrozby řádu n, jinak λ n =0 Rekurzivní definice λ n -stromu, podle hloubky: Úspěšný λ 0 -strom pro útočníka: obsahuje jeden λ 0 -tah, který splní cíl λ n -strom obsahuje λ n -tahy, listy jsou prohrané pro hráče na tahu (tj. nemá λ n -tah) λ n a-tah pro útočníka je tah, že pokud obránce pasuje, existuje λ i -strom s λ i =1 pro 0 i n 1. Tj. útočník hrozí vyhrát hrozbou nižšího řádu λ n d-tah pro obránce je tah, že po něm neexistuje žádný λ i -strom s λ i =1 pro 0 i n 1. Tj. obránce odvrátil všechny hrozby nižšího řádu Př: Go: schody: λ 1 a- a λ 1 d-tahy; při neúspěšných schodech v listě neex. další λ 1 a-tah Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
44 Lambda Search Důsledek: λ n tahy jsou určeny λ n 1 -prohledáváním. Obvykle je λ n 1 strom mnohem menší než λ n -strom Následně λ-prohledávání prořeže tahy podle λ úrovně účinně, s malým úsilým Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
45 Použitelnost λ-search je nesymetrický, cíl je pro útočníka použitelné na globální i lokální cíle integrovatelné se znalostmi pro konkrétní hru: Hex, Havannah, Piškvorky, Go (vše jsou nepohyblivé, spojovací hry) řád hrozby se dá odhadnout z pozice (piškvorky, svobody v go) i (ne-)relevantní útočné a obranné tahy (nejen nepohyblivá ) hra dovoluje hledat místa, které jsou relevantní (př: tahy dvojího účelu) (impl: pro vyloučení tahů Ú/O potřebujeme opačné meze odhadu) Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
46 Vlastnosti Vlastnosti, vztahy: Pokud λ n =1, pak λ k =1 pro n k Pokud λ n =0, pak λ i =0 pro 0 i n Korektnost: Výsledek λ n =1 je korektní, pokud hra má tah pas nebo zugzwang není cílem hry/úlohy (!, neformálně) λ n =0 znamená, že řešení neexistuje anebo je na vyšší úrovni hrozby n > n Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
47 Lambda Search, Doplňky Zobecněné hrozby: Cazenave počítá uzly na jednotlivých úrovních Simulace: Kawano 1996 (PNS search) - využívání informací z prohledaných částí stromu (!) (α β jako driver pro PNS) Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
48 Dual Lambda Search Dual lambda search: Soeda 2005 (µ-search): (tsume shogi) motivace: původní λ-search je nesymetrický. Soupeř má taky cíl Idea: Vyhrává ten, kdo má hrozbu nižšího řádu - hrozby soupeře musím nejdřív odvrátit λ n -stromy útočníka nesmí obsahovat úspěšný strom (ostře) nižšího řádu pro soupeře Při prohledávaní musím odvracet hrozby soupeře: širší strom Při rovnosti řádu hrozeb výhoda tempa. Př: piškvorky; go: semeai (boj) Jan Hric, Petr Baudiš ( NAIL103, ZS ) Herní algoritmy, předn listopadu / 48
Pavel Veselý Proof-number search, Lambda search a jejich vylepšení
Proof-number search, Lambda search a jejich vylepšení Osnova Proof-number search (PNS) Úprava na prohledávání do hloubky, PDS a PDS-PN Depth-first proof-number search a vylepšení Lambda search Dual lambda
Varianty Monte Carlo Tree Search
Varianty Monte Carlo Tree Search tomas.kuca@matfyz.cz Herní algoritmy MFF UK Praha 2011 Témata O čem bude přednáška? Monte Carlo Tree Search od her podobných Go (bez Go) k vzdálenějším rozdíly a rozšíření
Základy umělé inteligence
Základy umělé inteligence Hraní her (pro 2 hráče) Základy umělé inteligence - hraní her. Vlasta Radová, ZČU, katedra kybernetiky 1 Hraní her (pro dva hráče) Hraní her je přirozeně spjato s metodami prohledávání
Ú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ů
Stavový prostor a jeho prohledávání SP = formalismus k obecnějšímu uchopení a vymezení problému, který spočívá v nalezení posloupnosti akcí vedoucích od počátečního stavu úlohy (zadání) k požadovanému
Algoritmy pro hraní tahových her
Algoritmy pro hraní tahových her Klasické deskové hry pro dva hráče: Šachy Dáma Go Piškvorky Reversi Oba hráči mají úplnou znalost pozice (na rozdíl např. od Pokeru). 1 Základní princip Hraní tahových
Počítačové šachy. Otakar Trunda
Počítačové šachy Otakar Trunda Hraní her obecně Hra je definovaná pomocí: Počáteční situace Funkce vracející množinu přípustných tahů v každé situaci Ohodnocení koncových stavů Našim cílem je najít strategii
Algoritmus pro hledání nejkratší cesty orientovaným grafem
1.1 Úvod Algoritmus pro hledání nejkratší cesty orientovaným grafem Naprogramoval jsem v Matlabu funkci, která dokáže určit nejkratší cestu v orientovaném grafu mezi libovolnými dvěma vrcholy. Nastudoval
Osadníci z Katanu. a Monte Carlo Tree Search. David Pěgřímek. http://davpe.net MFF UK (2013) 1 / 24
.. Osadníci z Katanu a Monte Carlo Tree Search David Pěgřímek http://davpe.net MFF UK (2013) 1 / 24 Osadníci z Katanu autor hry Klaus Teuber (1995 Německo) strategická desková hra pro 3 až 4 hráče hra
Algoritmizace Dynamické programování. Jiří Vyskočil, Marko Genyg-Berezovskyj 2010
Dynamické programování Jiří Vyskočil, Marko Genyg-Berezovskyj 2010 Rozděl a panuj (divide-and-conquer) Rozděl (Divide): Rozděl problém na několik podproblémů tak, aby tyto podproblémy odpovídaly původnímu
Stromy, haldy, prioritní fronty
Stromy, haldy, prioritní fronty prof. Ing. Pavel Tvrdík CSc. Katedra počítačů FEL České vysoké učení technické DSA, ZS 2008/9, Přednáška 6 http://service.felk.cvut.cz/courses/x36dsa/ prof. Pavel Tvrdík
Časová a prostorová složitost algoritmů
.. Časová a prostorová složitost algoritmů Programovací techniky doc. Ing. Jiří Rybička, Dr. ústav informatiky PEF MENDELU v Brně rybicka@mendelu.cz Hodnocení algoritmů Programovací techniky Časová a prostorová
bfs, dfs, fronta, zásobník, prioritní fronta, halda
bfs, dfs, fronta, zásobník, prioritní fronta, halda Petr Ryšavý 20. září 2016 Katedra počítačů, FEL, ČVUT prohledávání grafů Proč prohledávání grafů Zkontrolovat, zda je sít spojitá. Hledání nejkratší
State Space Search Step Run Editace úloh Task1 Task2 Init Clear Node Goal Add Shift Remove Add Node Goal Node Shift Remove, Add Node
State Space Search Po spuštění appletu se na pracovní ploše zobrazí stavový prostor první předpřipravené úlohy: - Zeleným kroužkem je označen počáteční stav úlohy, který nemůže být změněn. - Červeným kroužkem
Hry a UI historie. von Neumann, 1944 algoritmy perfektní hry Zuse, Wiener, Shannon, přibližné vyhodnocování
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,
Binární vyhledávací stromy pokročilé partie
Binární vyhledávací stromy pokročilé partie KMI/ALS lekce Jan Konečný 30.9.204 Literatura Cormen Thomas H., Introduction to Algorithms, 2nd edition MIT Press, 200. ISBN 0-262-5396-8 6, 3, A Knuth Donald
TGH05 - aplikace DFS, průchod do šířky
TGH05 - aplikace DFS, průchod do šířky Jan Březina Technical University of Liberec 31. března 2015 Grafová formulace CPM (critical path method) Orientovaný acyklický graf (DAG) je orientovaný graf neobsahující
Teorie her a ekonomické rozhodování. 4. Hry v rozvinutém tvaru
Teorie her a ekonomické rozhodování 4. Hry v rozvinutém tvaru 4.1 Hry v rozvinutém tvaru Hra v normálním tvaru hráči provedou jediné rozhodnutí a to všichni najednou v rozvinutém tvaru řada po sobě následujících
Základy umělé inteligence
Základy umělé inteligence Automatické řešení úloh Základy umělé inteligence - prohledávání. Vlasta Radová, ZČU, katedra kybernetiky 1 Formalizace úlohy UI chápe řešení úloh jako proces hledání řešení v
Dokumentace programu piskvorek
Dokumentace programu piskvorek Zápočtového programu z Programování II PRM045 Ondřej Vostal 20. září 2011, Letní semestr, 2010/2011 1 Stručné zadání Napsat textovou hru piškvorky se soupeřem s umělou inteligencí.
Metody návrhu algoritmů, příklady. IB111 Programování a algoritmizace
Metody návrhu algoritmů, příklady IB111 Programování a algoritmizace 2011 Návrhu algoritmů vybrané metody: hladové algoritmy dynamické programování rekurze hrubá síla tato přednáška: především ilustrativní
Optimalizace & soft omezení: algoritmy
Optimalizace & soft omezení: algoritmy Soft propagace Klasická propagace: eliminace nekonzistentních hodnot z domén proměnných Soft propagace: propagace preferencí (cen) nad k-ticemi hodnot proměnných
Monte Carlo Tree Search. Marika Ivanová
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
Umělá inteligence I. Roman Barták, KTIML.
Umělá inteligence I Roman Barták, KTIML roman.bartak@mff.cuni.cz http://ktiml.mff.cuni.cz/~bartak Na úvod Neinformované (slepé) prohledávání umí najít (optimální) řešení problému, ale ve většině případů
Herní algoritmy, předn. 2,3
Herní algoritmy, předn. 2,3 Jan Hric, Petr Baudiš Minimax NAIL103, ZS 8. listopadu 2012 Obsah 1 Úvod 2 Standardní algoritmy: Minimax a Alfabeta 3 Další alg. a varianty 4... a další Minimax - z minula Základy:
TGH05 - aplikace DFS, průchod do šířky
TGH05 - aplikace DFS, průchod do šířky Jan Březina Technical University of Liberec 28. března 2017 Grafová formulace CPM (critical path method) Orientovaný acyklický graf (DAG) je orientovaný graf neobsahující
bfs, dfs, fronta, zásobník, prioritní fronta, halda
bfs, dfs, fronta, zásobník, prioritní fronta, halda Petr Ryšavý 19. září 2017 Katedra počítačů, FEL, ČVUT prohledávání grafů Proč prohledávání grafů Zkontrolovat, zda je sít spojitá. Hledání nejkratší
STROMOVE ALGORITMY Prohledavani do sirky (level-order) Po vodorovnejch carach fronta
STROMOVE ALGORITMY Prohledavani do sirky (level-order) Po vodorovnejch carach vlož do fronty kořen opakuj, dokud není fronta prázdná 1. vyber uzel z fronty a zpracuj jej 2. vlož do fronty levého následníka
Základní datové struktury III: Stromy, haldy
Základní datové struktury III: Stromy, haldy prof. Ing. Pavel Tvrdík CSc. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze c Pavel Tvrdík, 2010 Efektivní
Algoritmizace prostorových úloh
INOVACE BAKALÁŘSKÝCH A MAGISTERSKÝCH STUDIJNÍCH OBORŮ NA HORNICKO-GEOLOGICKÉ FAKULTĚ VYSOKÉ ŠKOLY BÁŇSKÉ - TECHNICKÉ UNIVERZITY OSTRAVA Algoritmizace prostorových úloh Grafové úlohy Daniela Szturcová Tento
Anotace. Středník II!! 7. 5. 2010 programování her.
Anotace Středník II!! 7. 5. 2010 programování her. Teorie her Kombinatorická hra je hrou dvou hráčů. Stav hry je určen pozicí nějakých předmětů. Všechny zúčastněné předměty jsou viditelné. Jde o tzv. hru
Algoritmy pro práci s neúplnou informací
Michal Krkavec 23. listopadu 2011 Obsah Náhoda Expectimax Neúplné informace Monte Carlo Tree Search Perfect Information Monte Carlo Realtime plánování Plánování v RTS Monte Carlo Plánování Expectimax Expectimax
"Agent Hledač" (3. přednáška)
"Agent Hledač" (3. přednáška) Přehled 3. přednášky v této přednášce se budeme zabývat "goal-based" agenty Přehled 3. přednášky v této přednášce se budeme zabývat "goal-based" agenty připomeňme, že "goal-based"
NEJKRATŠÍ CESTY I. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze
NEJKRATŠÍ CESTY I Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze BI-GRA, LS 2010/2011, Lekce 7 Evropský sociální fond Praha & EU: Investujeme do vaší
2. Řešení úloh hraní her Hraní her (Teorie a algoritmy hraní her)
Hraní her (Teorie a algoritmy hraní her) 4. 3. 2015 2-1 Hraní her pro dva a více hráčů Počítač je při hraní jakékoli hry: silný v komplikovaných situacích s množstvím kombinací, má obrovskou znalost zahájení
Datové struktury 2: Rozptylovací tabulky
Datové struktury 2: Rozptylovací tabulky prof. Ing. Pavel Tvrdík CSc. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze c Pavel Tvrdík, 2010 Efektivní algoritmy
Prohledávání do šířky = algoritmus vlny
Prohledávání do šířky = algoritmus vlny - souběžně zkoušet všechny možné varianty pokračování výpočtu, dokud nenajdeme řešení úlohy průchod stromem všech možných cest výpočtu do šířky, po vrstvách (v každé
Hledáme efektivní řešení úloh na grafu
Hledáme efektivní řešení úloh na grafu Mějme dán graf následující úlohy: G = ( V, E), chceme algoritmicky vyřešit Je daný vrchol t dosažitelný z vrcholu s? Pokud ano, jaká nejkratší cesta tyto vrcholy
UNIVERZITA PARDUBICE
UNIVERZITA PARDUBICE Fakulta elektrotechniky a informatiky Programová realizace jednoduché strategické hry Květoslav Čáp Bakalářská práce 2010 Prohlášení autora Prohlašuji, že jsem tuto práci vypracoval
Algoritmus Minimax. Tomáš Kühr. Projektový seminář 1
Projektový seminář 1 Základní pojmy Tah = přemístění figury hráče na tahu odpovídající pravidlům dané hry. Při tahu může být manipulováno i s figurami soupeře, pokud to odpovídá pravidlům hry (např. odstranění
Hraní her. (Teorie a algoritmy hraní her) Řešení úloh hraní her. Václav Matoušek /
Hraní her (Teorie a algoritmy hraní her) 8. 3. 2019 2-1 Hraní her pro dva a více hráčů Počítač je při hraní jakékoli hry: silný v komplikovaných situacích s množstvím kombinací, má obrovskou znalost zahájení
Grafové algoritmy. Programovací techniky
Grafové algoritmy Programovací techniky Grafy Úvod - Terminologie Graf je datová struktura, skládá se z množiny vrcholů V a množiny hran mezi vrcholy E Počet vrcholů a hran musí být konečný a nesmí být
Rekurzivní algoritmy
Rekurzivní algoritmy prof. Ing. Pavel Tvrdík CSc. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze c Pavel Tvrdík, 2010 Efektivní algoritmy (BI-EFA) ZS
Modely teorie grafů, min.kostra, max.tok, CPM, MPM, PERT
PEF ČZU Modely teorie grafů, min.kostra, max.tok, CPM, MPM, PERT Okruhy SZB č. 5 Zdroje: Demel, J., Operační výzkum Jablonský J., Operační výzkum Šubrt, T., Langrová, P., Projektové řízení I. a různá internetová
Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 21.
Vyhledávání doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 21. září 2018 Jiří Dvorský (VŠB TUO) Vyhledávání 242 / 433 Osnova přednášky
Prohledávání do šířky a do hloubky. Jan Hnilica Počítačové modelování 15
Prohledávání do šířky a do hloubky Jan Hnilica Počítačové modelování 15 1 Prohledávací algoritmy Úkol postupně systematicky prohledat vymezený stavový prostor Stavový prostor (SP) možné stavy a varianty
Adresní vyhledávání (přímý přístup, zřetězené a otevřené rozptylování, rozptylovací funkce)
13. Metody vyhledávání. Adresní vyhledávání (přímý přístup, zřetězené a otevřené rozptylování, rozptylovací funkce). Asociativní vyhledávání (sekvenční, binárním půlením, interpolační, binární vyhledávací
Uvažujeme jen hry s nulovým součtem, tj. zisk jednoho. Střídá se náš tah, kde maximalizujeme svůj zisk, s tahem
Hry dvou hráčů (např. šachy) Uvažujeme jen hry s nulovým součtem, tj. zisk jednoho znamená ztrátu druhého hráče. Střídá se náš tah, kde maximalizujeme svůj zisk, s tahem soupeře, který se snaží náš zisk
Obsah: Hry vs. Prohledávání stavového prostoru Algoritmus Minimax. Nedeterministické hry Hry s nepřesnými znalostmi
Hry a základní herní strategie Aleš Horák E-mail: hales@fi.muni.cz http://nlp.fi.muni.cz/uui/ Obsah: Hry vs. Prohledávání stavového prostoru Algoritmus Minimax Algoritmus Alfa-Beta prořezávání Nedeterministické
Umělá inteligence. UI (AI) - součást informatiky s průniky mimo obor Stručná historie UI. Letošní cena nadace Vize 2000 - Joseph Weizenbaum
Umělá inteligence UI (AI) - součást informatiky s průniky mimo obor Stručná historie UI 1943-56 začátky (modelování neuronů a sítí na počítači) 1952-69 velká očekávání (GPS, Lisp, microworlds) 1966-74
11. Tabu prohledávání
Jan Schmidt 2011 Katedra číslicového návrhu Fakulta informačních technologií České vysoké učení technické v Praze Zimní semestr 2011/12 MI-PAA EVROPSKÝ SOCIÁLNÍ FOND PRAHA & EU: INVESTUJENE DO VAŠÍ BUDOUCNOSTI
jednoduchá heuristika asymetrické okolí stavový prostor, kde nelze zabloudit připustit zhoršují cí tahy Pokročilé heuristiky
Pokročilé heuristiky jednoduchá heuristika asymetrické stavový prostor, kde nelze zabloudit připustit zhoršují cí tahy pokročilá heuristika symetrické stavový prostor, který vyžaduje řízení 1 2 Paměť pouze
Obsah: Hry Prohledávání stavového prostoru. Algoritmus Minimax. Nedeterministické hry Hry s nepřesnými znalostmi
Hry a základní herní strategie Aleš Horák E-mail: hales@fi.muni.cz http://nlp.fi.muni.cz/uui/ Obsah: Hry vs. Prohledávání stavového prostoru Algoritmus Minimax Algoritmus Alfa-Beta prořezávání Nedeterministické
Pravděpodobnost, náhoda, kostky
Pravděpodobnost, náhoda, kostky Radek Pelánek IV122 Výhled pravděpodobnost náhodná čísla lineární regrese detekce shluků Dnes lehce nesourodá směs úloh souvisejících s pravděpodobností připomenutí, souvislosti
Obsah: Hry vs. Prohledávání stavového prostoru Algoritmus Minimax. Nedeterministické hry Hry s nepřesnými znalostmi
Hry a základní herní strategie Aleš Horák E-mail: hales@fi.muni.cz http://nlp.fi.muni.cz/uui/ Obsah: Statistické výsledky průběžné písemky Hry vs. Prohledávání stavového prostoru Algoritmus Minimax Algoritmus
3. ANTAGONISTICKÉ HRY
3. ANTAGONISTICKÉ HRY ANTAGONISTICKÝ KONFLIKT Antagonistický konflikt je rozhodovací situace, v níž vystupují dva inteligentní rozhodovatelé, kteří se po volbě svých rozhodnutí rozdělí o pevnou částku,
Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague
1 / 40 regula Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague regula 1 2 3 4 5 regula 6 7 8 2 / 40 2 / 40 regula Iterační pro nelineární e Bud f reálná funkce
Řešení: PŘENESVĚŽ (N, A, B, C) = přenes N disků z A na B pomocí C
Hanojské věže - 3 kolíky A, B, C - na A je N disků různé velikosti, seřazené od největšího (dole) k nejmenšímu (nahoře) - kolíky B a C jsou prázdné - úkol: přenést všechny disky z A na B, mohou se odkládat
Obsah: Hry vs. Prohledávání stavového prostoru Algoritmus Minimax. Nedeterministické hry Hry s nepřesnými znalostmi. 72 studentů
Hry a základní herní strategie Aleš Horák E-mail: hales@fi.muni.cz http://nlp.fi.muni.cz/uui/ Obsah: Statistické výsledky průběžné písemky Hry vs. Prohledávání stavového prostoru Algoritmus Minimax Algoritmus
Grafové algoritmy. Programovací techniky
Grafové algoritmy Programovací techniky Grafy Úvod - Terminologie Graf je datová struktura, skládá se z množiny vrcholů V a množiny hran mezi vrcholy E Počet vrcholů a hran musí být konečný a nesmí být
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 a základní herní strategie Aleš Horák E-mail: hales@fi.muni.cz http://nlp.fi.muni.cz/uui/ Hry s nepřesnými znalostmi Hry a UI historie Úvod do umělé inteligence 7/1 1 / 5 Hry a UI historie Babbage,
Lineární programování
Lineární programování Petr Tichý 19. prosince 2012 1 Outline 1 Lineární programování 2 Optimalita a dualita 3 Geometrie úlohy 4 Simplexová metoda 2 Lineární programování Lineární program (1) min f(x) za
Obsah: Hry vs. Prohledávání stavového prostoru Algoritmus Minimax. Nedeterministické hry Hry s nepřesnými znalostmi
Hry a základní herní strategie Aleš Horák E-mail: hales@fi.muni.cz http://nlp.fi.muni.cz/uui/ Obsah: Statistické výsledky průběžné písemky Hry vs. Prohledávání stavového prostoru Algoritmus Minimax Algoritmus
3. úloha - problém batohu metodami branch & bound, dynamické programování, heuristika s testem
ČVUT FEL X36PAA - Problémy a algoritmy 3. úloha - problém batohu metodami branch & bound, dynamické programování, heuristika s testem Jméno: Marek Handl Datum: 1. 1. 2009 Cvičení: Pondělí 9:00 Zadání Naprogramujte
Dijkstrův algoritmus
Dijkstrův algoritmus Hledání nejkratší cesty v nezáporně hranově ohodnoceném grafu Necht je dán orientovaný graf G = (V, H) a funkce, která každé hraně h = (u, v) H přiřadí nezáporné reálné číslo označované
FIT ČVUT MI-LOM Lineární optimalizace a metody. Dualita. Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti
FIT ČVUT MI-LOM Lineární optimalizace a metody Dualita Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Michal Černý, 2011 FIT ČVUT, MI-LOM, M. Černý, 2011: Dualita 2/5 Dualita Evropský
Pravděpodobnost, náhoda, kostky
Pravděpodobnost, náhoda, kostky Radek Pelánek IV122, jaro 2015 Výhled pravděpodobnost náhodná čísla lineární regrese detekce shluků Dnes lehce nesourodá směs úloh souvisejících s pravděpodobností krátké
Složitost her. Herní algoritmy. Otakar Trunda
Složitost her Herní algoritmy Otakar Trunda Úvod měření složitosti Formální výpočetní model Turingův stroj Složitost algoritmu = závislost spotřebovaných prostředků na velikosti vstupu Časová složitost
Matice. Modifikace matic eliminační metodou. α A = α a 2,1, α a 2,2,..., α a 2,n α a m,1, α a m,2,..., α a m,n
[1] Základní pojmy [2] Matice mezi sebou sčítáme a násobíme konstantou (lineární prostor) měníme je na jiné matice eliminační metodou násobíme je mezi sebou... Matice je tabulka čísel s konečným počtem
Přednáška 3: Limita a spojitost
3 / 1 / 17, 1:38 Přednáška 3: Limita a spojitost Limita funkce Nejdříve je potřeba upřesnit pojmy, které přesněji popisují (topologickou) strukturu množiny reálných čísel, a to zejména pojem okolí 31 Definice
Úvod do mobilní robotiky AIL028
Pravděpodobnostní plánování zbynek.winkler at mff.cuni.cz, md at robotika.cz http://robotika.cz/guide/umor05/cs 12. prosince 2005 1 Co už umíme a co ne? Jak řešit složitější případy? Definice konfiguračního
Teorie her a ekonomické rozhodování. 7. Hry s neúplnou informací
Teorie her a ekonomické rozhodování 7. Hry s neúplnou informací 7.1 Informace Dosud hráči měli úplnou informaci o hře, např. znali svou výplatní funkci, ale i výplatní funkce ostatních hráčů často to tak
Seminář z umělé inteligence. Otakar Trunda
Seminář z umělé inteligence Otakar Trunda Plánování Vstup: Satisficing task: počáteční stav, cílové stavy, přípustné akce Optimization task: počáteční stav, cílové stavy, přípustné akce, ceny akcí Výstup:
Obsah: Hry vs. Prohledávání stavového prostoru Algoritmus Minimax. Nedeterministické hry Hry s nepřesnými znalostmi
Hry a základní herní strategie Aleš Horák E-mail: hales@fi.muni.cz http://nlp.fi.muni.cz/uui/ Obsah: Statistické výsledky průběžné písemky Hry vs. Prohledávání stavového prostoru Algoritmus Minimax Algoritmus
POČÍTAČE A PROGRAMOVÁNÍ
POČÍTAČE A PROGRAMOVÁNÍ Moderní metody vývoje softwaru, Demontrační příklad piškvorky Miroslav Vavroušek PPI 09 V1.0 Opakovaní z minulé přednášky Vícerozměrná statická a dynamická pole Pole polí Datový
IV. Základní pojmy matematické analýzy IV.1. Rozšíření množiny reálných čísel
Matematická analýza IV. Základní pojmy matematické analýzy IV.1. Rozšíření množiny reálných čísel na množině R je definováno: velikost (absolutní hodnota), uspořádání, aritmetické operace; znázornění:
Umělá inteligence I. Roman Barták, KTIML. roman.bartak@mff.cuni.cz http://ktiml.mff.cuni.cz/~bartak
Umělá inteligence I Roman Barták, KTIML roman.bartak@mff.cuni.cz http://ktiml.mff.cuni.cz/~bartak Na úvod Agent s reflexy pouze převádí současný vjem na jednu akci. Agent s cílem umí plánovat několik akcí
Úvod do teorie her
Úvod do teorie her. Formy her a rovnovážné řešení Tomáš Kroupa http://staff.utia.cas.cz/kroupa/ 208 ÚTIA AV ČR Program. Definujeme 2 základní formy pro studium různých her: rozvinutou, strategickou. 2.
07 Základní pojmy teorie grafů
07 Základní pojmy teorie grafů (definice grafu, vlastnosti grafu, charakteristiky uzlů, ohodnocené grafy) Definice grafu množina objektů, mezi kterými existují určité vazby spojující tyto objekty. Uspořádaná
Algoritmizace složitost rekurzivních algoritmů. Jiří Vyskočil, Marko Genyg-Berezovskyj 2010
složitost rekurzivních algoritmů Jiří Vyskočil, Marko Genyg-Berezovskyj 2010 Vyjádřen ení složitosti rekurzivního algoritmu rekurentním m tvarem Příklad vyjádření složitosti rekurzivního algoritmu rekurencí:
13. Lineární programování
Jan Schmidt 2011 Katedra číslicového návrhu Fakulta informačních technologií České vysoké učení technické v Praze Zimní semestr 2011/12 MI-PAA EVROPSKÝ SOCIÁLNÍ FOND PRAHA & EU: INVESTUJENE DO VAŠÍ BUDOUCNOSTI
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]
Hanojská věž zadání [1 1 1] řešení [3 3 3] dva možné první tahy: [1 1 2] [1 1 3] který tah je lepší? (co je lepší tah?) P. Berka, 2012 1/21 Stavový prostor 1. množina stavů S = {s} 2. množina přechodů
Vzdálenost uzlů v neorientovaném grafu
Vzdálenosti a grafy Vzdálenost uzlů v neorientovaném grafu Je dán neorientovaný neohodnocený graf G = (V,E,I) vzdálenost uzlů u a v v neorientovaném souvislém grafu G je délka nejkratší cesty spojující
Neinformované metody prohledávání stavového prostoru. Gerstner Laboratory Agent Technology Group, Czech Technical University in Prague
Neinformované metody prohledávání stavového prostoru Michal Pěchouček Gerstner Laboratory Agent Technology Group, Czech Technical University in Prague http://labe.felk.cvut.cz/~ tkrajnik/kui2/data/k333/1.pdf
Cvičení Programování I. Stručné poznámky ke cvičení ze
Cvičení Programování I Cvičící: Pavel urynek, KIM, pavel.surynek@seznam.cz emestr: Zima 2005/2006 Kroužek: Matematika/59 Rozvrh: Pátek 10:40-12:10 (učebna K2) tručné poznámky ke cvičení ze 14.10.2005 1.
Operační výzkum. Teorie her cv. Hra v normálním tvaru. Optimální strategie. Maticové hry.
Operační výzkum Teorie her cv. Hra v normálním tvaru. Optimální strategie. Maticové hry. Operační program Vzdělávání pro konkurenceschopnost Název projektu: Inovace magisterského studijního programu Fakulty
Hry a UI historie. Obsah: Hry vs. Prohledávání stavového prostoru Algoritmus Minimax. Nedeterministické hry Hry s nepřesnými znalostmi
Statistické výsledky průběžné písemky Hry a základní herní strategie Aleš Horák E-mail: hales@fi.muni.cz http://nlp.fi.muni.cz/uui/ Obsah: Statistické výsledky průběžné písemky Algoritmus Minimax Hry s
Obsah prezentace. Základní pojmy v teorii o grafech Úlohy a prohledávání grafů Hledání nejkratších cest
Obsah prezentace Základní pojmy v teorii o grafech Úlohy a prohledávání grafů Hledání nejkratších cest 1 Základní pojmy Vrchol grafu: {množina V} Je to styčná vazba v grafu, nazývá se též uzlem, prvkem
Smíšené regresní modely a možnosti jejich využití. Karel Drápela
Smíšené regresní modely a možnosti jejich využití Karel Drápela Regresní modely Základní úloha regresní analýzy nalezení vhodného modelu studované závislosti vyjádření reálného tvaru závislosti minimalizace
Programování 3. hodina. RNDr. Jan Lánský, Ph.D. Katedra informatiky a matematiky Fakulta ekonomických studií Vysoká škola finanční a správní 2015
Programování 3. hodina RNDr. Jan Lánský, Ph.D. Katedra informatiky a matematiky Fakulta ekonomických studií Vysoká škola finanční a správní 2015 Umíme z minulé hodiny Implementace zásobníku a fronty pomocí
3. Prohledávání grafů
3. Prohledávání grafů Prohledání do šířky Breadth-First Search BFS Jde o grafový algoritmus, který postupně prochází všechny vrcholy v dané komponentě souvislosti. Algoritmus nejprve projde všechny sousedy
Projekční algoritmus. Urychlení evolučních algoritmů pomocí regresních stromů a jejich zobecnění. Jan Klíma
Urychlení evolučních algoritmů pomocí regresních stromů a jejich zobecnění Jan Klíma Obsah Motivace & cíle práce Evoluční algoritmy Náhradní modelování Stromové regresní metody Implementace a výsledky
Obsah: Hry vs. Prohledávání stavového prostoru Algoritmus Minimax. Nedeterministické hry Hry s nepřesnými znalostmi
Hry a základní herní strategie Aleš Horák E-mail: hales@fi.muni.cz http://nlp.fi.muni.cz/uui/ Obsah: Statistické výsledky průběžné písemky Hry vs. Prohledávání stavového prostoru Algoritmus Minimax Algoritmus
Algoritmy výpočetní geometrie
Algoritmy výpočetní geometrie prof. Ing. Pavel Tvrdík CSc. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze c Pavel Tvrdík, 2010 Efektivní algoritmy (BI-EFA)
Cvičení 5 - Inverzní matice
Cvičení 5 - Inverzní matice Pojem Inverzní matice Buď A R n n. A je inverzní maticí k A, pokud platí, AA = A A = I n. Matice A, pokud existuje, je jednoznačná. A stačí nám jen jedna rovnost, aby platilo,
Intervalové stromy. Představme si, že máme posloupnost celých čísel p 0, p 1,... p N 1, se kterou budeme. 1. Změna jednoho čísla v posloupnosti.
Intervalové stromy Představme si, že máme posloupnost celých čísel p 0, p 1,... p N 1, se kterou budeme průběžně provádět tyto dvě operace: 1. Změna jednoho čísla v posloupnosti. 2. Zjištění součtu čísel
ORIENTOVANÉ GRAFY, REPREZENTACE GRAFŮ
ORIENTOVANÉ GRAFY, REPREZENTACE GRAFŮ Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze BI-GRA, LS 2/2, Lekce Evropský sociální fond Praha & EU: Investujeme
1 Linearní prostory nad komplexními čísly
1 Linearní prostory nad komplexními čísly V této přednášce budeme hledat kořeny polynomů, které se dále budou moci vyskytovat jako složky vektorů nebo matic Vzhledem k tomu, že kořeny polynomu (i reálného)
Hry a UI historie. Obsah: Hry vs. Prohledávání stavového prostoru Algoritmus Minimax. Nedeterministické hry Hry s nepřesnými znalostmi
Statistické výsledky průběžné písemky Obsah: Hry a základní herní strategie Aleš Horák E-mail: hales@fi.muni.cz http://nlp.fi.muni.cz/uui/ Statistické výsledky průběžné písemky Hry s nepřesnými znalostmi
Zpětnovazební učení Michaela Walterová Jednoocí slepým,
Zpětnovazební učení Michaela Walterová Jednoocí slepým, 17. 4. 2019 V minulých dílech jste viděli Tři paradigmata strojového učení: 1) Učení s učitelem (supervised learning) Trénovací data: vstup a požadovaný
Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague
1 / 23 Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague 2 / 23 biologové často potřebují najít často se opakující sekvence DNA tyto sekvence bývají relativně krátké,