Plánování v praxi A co tomu říkají počítačové hry?

Podobné dokumenty
Varianty Monte Carlo Tree Search

Algoritmy pro práci s neúplnou informací

OPPA European Social Fund Prague & EU: We invest in your future.

Úvod do mobilní robotiky AIL028

AI Pl anni g n How to plan planni g n Filip Dvořák

Zpětnovazební učení Michaela Walterová Jednoocí slepým,

Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti

10. Techniky formální verifikace a validace

Struk ur přednášk. Vymezení pojmu management, Úkoly řízení podniku, Strategické řízení, Taktické řízení, Plánování.

Úvod do problematiky vývoje Vývoj informačních systémů

Ing. Alena Šafrová Drášilová, Ph.D.

Rozhodovací procesy 3

Složitost her. Herní algoritmy. Otakar Trunda

Metody návrhu algoritmů, příklady. IB111 Programování a algoritmizace

Osadníci z Katanu. a Monte Carlo Tree Search. David Pěgřímek. MFF UK (2013) 1 / 24

Gymnázium, Praha 6, Arabská 14. předmět Programování, vyučující Tomáš Obdržálek. Počítačová hra Fotbalový Manažer. ročníkový projekt.

11. Tabu prohledávání

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

PROJEKT MINY - DOKUMENTACE

Jasové transformace. Karel Horák. Rozvrh přednášky:

1. Znalostní systémy a znalostní inženýrství - úvod. Znalostní systémy. úvodní úvahy a předpoklady. 26. září 2017

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

Otázky ke státní závěrečné zkoušce

4EK201 Matematické modelování. 10. Teorie rozhodování

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

Teorie systémů TES 5. Znalostní systémy KMS

6 Objektově-orientovaný vývoj programového vybavení

jednoduchá heuristika asymetrické okolí stavový prostor, kde nelze zabloudit připustit zhoršují cí tahy Pokročilé heuristiky

Algoritmy pro spojitou optimalizaci

Pravděpodobnostní (Markovské) metody plánování, MDP - obsah

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

MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ

Metadata, sémantika a sémantický web. Ing. Vilém Sklenák, CSc.

MBI portál pro podporu řízení podnikové informatiky. mbi.vse.cz

Projekční algoritmus. Urychlení evolučních algoritmů pomocí regresních stromů a jejich zobecnění. Jan Klíma

Teorie rozhodování (decision theory)

4EK311 Operační výzkum. 1. Úvod do operačního výzkumu

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

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

Úvodem... 9 Kapitola 1 Karetních

Systém pro optimalizaci a řízení lidských zdrojů

Hledání správné cesty

DIDAKTICKÁ POČÍTAČOVÁ HRA SPOLUPRACUJÍCÍ S EXTERNÍM REÁLNÝM SYSTÉMEM

Základy objektové orientace I. Únor 2010

Kulturní a institucionální změna jako nástroj prosazování genderové rovnosti v organizacích

Exponenciální modely hromadné obsluhy

Vysoká škola technická a ekonomická v Českých Budějovicích. Institute of Technology And Business In České Budějovice

Multirobotická kooperativní inspekce

PV167 Projekt z obj. návrhu IS. 26. března 2008

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

Teorie her a ekonomické rozhodování. 9. Modely nedokonalých trhů

TGH13 - Teorie her I.

Kvadratické rovnice (dosazení do vzorce) I

TESTOVÁNÍ UŽIVATELSKÉHO ROZHRANÍ

Úvod do zpracování signálů

Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti

Gymnázium, Praha 6, Arabská 16 předmět Programování, vyučující Tomáš Obdržálek Šibenice ročníkový projekt Tadeáš Váša, 1E květen 2014

HERNÍ PLÁN MAD MECHANIC APOLLO GAMES APKSOFT s.r.o.

Kapitola 1. Signály a systémy. 1.1 Klasifikace signálů

XERXES Portál informačních zdrojů. Ing. Lukáš Budínský PhDr. Ondřej Fabián

Role logistiky v ekonomice státu a podniku 1

Měření výsledků výuky a vzdělávací standardy

Psychologie výchovy a vzdělávání. Zvládání zátěže žáky a studenty

PB161 Programování v jazyce C++ Přednáška 7

Vývoj informačních systémů. Obecně o IS

MANAŽERSKÉ ROZHODOVÁNÍ. Zpracoval Ing. Jan Weiser

MAPA RIZIK ZABRAŇUJÍCÍCH V PŘÍSTUPU K INFORMACÍM města Lanškroun

PB161 Programování v jazyce C++ Přednáška 7

ÚVOD DO ROZHODOVÁNÍ PŘEDNÁŠKA. OPTIMALIZACE A ROZHODOVÁNÍ V DOPRAVĚ Přednáška 1. Zuzana Bělinová

Nástroje pro vývoj software

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

OSA. maximalizace minimalizace 1/22

Projektový management. Projektový management. Další charakteristiky projektu. Projekt

OVLÁDÁNÍ RIZIKA ANALÝZA A MANAGEMENT

Obsah. Proč právě Flash? 17 Systémové požadavky 17. Jak používat tuto knihu 18 Doprovodný CD-ROM 19

HERNÍ PLÁN MULTIFRUITS APOLLO GAMES APKSOFT s.r.o.

Procesy a vlákna (Processes and Threads)

Objektově orientované technologie Dynamický náhled Sekvenční diagram (Realizace UC) Daniela Szturcová

Rozvrhování výroby. František Koblasa Technická univerzita v Liberci. TU v Liberci

PHP framework Nette. Kapitola Úvod. 1.2 Architektura Nette

VOJENSKÁ STRATEGIE ČESKÉ REPUBLIKY Praha 2002

Optimalizace obecný úvod. [proč optimalizovat?] Formalizace problému. [existují podobné problémy?]

Úvod do expertních systémů

S T R A T E G I C K Ý M A N A G E M E N T

Základy umělé inteligence

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

Věc: Rozšířené stanovisko Ministerstva financí k tzv. Kvízomatům

Ing. Alena Šafrová Drášilová

VYUŽITÍ PRAVDĚPODOBNOSTNÍ METODY MONTE CARLO V SOUDNÍM INŽENÝRSTVÍ

Virtualizace MetaCentra

Mzdové srovnání. v sektoru automotive

Soubory s reklamami musí mít stejný název jako ta výše uvedené. Stávající soubory reklam budou přepsány.

Úvodem Dříve les než stromy 3 Operace s maticemi

1. Úvodní informace. BI-EP1 Efektivní programování Martin Kačer

Databázový systém Matylda

Rizika na liberalizovaném trhu s elektřinou

Objekty, třídy, instance

Statické proměnné a metody. Tomáš Pitner, upravil Marek Šabo

DOE (Design of Experiments)

B) výchovné a vzdělávací strategie jsou totožné se strategiemi vyučovacího předmětu Matematika.

Transkript:

EVROPSKÝ SOCIÁLNÍ FOND Plánování v praxi A co tomu říkají počítačové hry? PRAHA & EU INVESTUJEME DO VAŠÍ BUDOUCNOSTI Martin Černý cerny.m@gmail.com

O CO PŮJDE Plánování v reálném světě Proč to není tak jednoduché GOAP ve hře F.E.A.R. Jediný dobře popsaný příklad užití plánování v komerční hře Porovnání plánovačů a reaktivních technik Nějaké praktické výsledky z mé diplomky Používáme plánovače Co jsem se naučil, když jsem chtěl plánovače použít v praxi Alternativní přístupy k plánování (bude-li čas) HTN plánování, plánování jako MDP, project Europa

PLÁNOVÁNÍ V REÁLNÉM SVĚTĚ V ČEM JE PROBLÉM? Problémů není vůbec málo: Spojité světy Dynamičnost Nedeterminismus Neznámé efekty akcí Částečná pozorovatelnost (Observability) Cíle Čas Rychlost plánování Rozhodování o plánování

PLÁNOVÁNÍ V REÁLNÉM SVĚTĚ SPOJITÉ SVĚTY Plánování je v principu (většinou i u lidí) diskrétní Je třeba vhodná abstrakce Co je vhodné? Abstrakce nám pomůže řešit i další problémy

PLÁNOVÁNÍ V REÁLNÉM SVĚTĚ DYNAMIČNOST Více aspektů Vyrovnání se s rušením Oportunismus Změna cíle Pštrosí strategie Abstrakce + reaktivní podvrstva Kontrola plánu Jeden krok / celý plán Přeskakování hotových kroků Kdy přeplánovat???

PLÁNOVÁNÍ V REÁLNÉM SVĚTĚ DYNAMIČNOST II Kontingenční metody Exploze stavového prostoru Ne vždy řešitelné a žádoucí Plánování s nejistotou Rozšíření POP / Markov Decision Processes Moc to nefunguje viz IPC 2011 Všechny plány do 40 akcí 24 hodin na řešení 8 problémů po 10ti instancích (6min / problém) Počty soutěžících 5-6-0-0 (v ne-boolean variantách nikdo nesoutěžil) Commitment Není vždy vhodné plánovat vše do detailů

PLÁNOVÁNÍ V REÁLNÉM SVĚTĚ NEDETERMINISMUS Řeší se podobně jako dynamičnost Více úrovní Action failure Umožňuje efektivní pštrosí strategii Odlišné nevratné výsledky

PLÁNOVÁNÍ V REÁLNÉM SVĚTĚ ČÁSTEČNÁ POZOROVATELNOST Plná pozorovatelnost není jen nerealistická, ale i nepraktická! Shromáždění informací trvá čas Exploze stavů Plánovat jen s relevantním výsekem Ale co to je? Udržování představ (beliefs) Plánování smyslových akcí

PLÁNOVÁNÍ V REÁLNÉM SVĚTĚ NEZNÁMÉ EFEKTY AKCÍ Problém novorozence V rámci plánování se vlastně neřeší IPC Learning part se zabývá něčím jiným Reinforcement learning a spol.

PLÁNOVÁNÍ V REÁLNÉM SVĚTĚ CÍLE Měkké cíle Více (konfliktních) cílů s různou prioritou Lze částečně řešit oddělením výběru cílů od plánování Podmínky nejen v cílovém stavu Např. zdraví neklesne pod 30, nikdy neprojdu nějakým místem Částečně řeší plánování se zdroji

PLÁNOVÁNÍ V REÁLNÉM SVĚTĚ ČAS Částečně lze modelovat pomocí cen akcí Cokoliv složitějšího vyžaduje opustit plánování se stavy Čímž se zbavíme nejrychlejší dostupné techniky Plánujete vy osobně s časem explicitně?

PLÁNOVÁNÍ V REÁLNÉM SVĚTĚ RYCHLOST PLÁNOVÁNÍ Pamatujte, že jsme stále v PSPACE! IPC limit 30min Hry mohou poskytnout pouze zlomky vteřiny Do vteřiny současné STRIPS plánovače uplánují řádově stovky predikátů a akcí (ale musí mít celé jádro) Anytime plánování Ale jak to dělat?

PLÁNOVÁNÍ V REÁLNÉM SVĚTĚ ROZHODOVÁNÍ O PLÁNOVÁNÍ Kdy plánovat/přeplánovat? Oportunismus Kolik času na to mám? Kdy skončit s plánováním? Většinou nepotřebuji optimální plány Commitment Vyžaduje těsnou integraci plánovače

PLÁNOVÁNÍ V REÁLNÉM SVĚTĚ CO SE POUŽÍVÁ VE HRÁCH? Reaktivní techniky stále převládají FSM Hierarchical FSMs Behaviour trees Na určité úrovni abstrakce jsou reaktivní techniky nezbytné

GOAP Goal oriented action planning Jeff Orkin, hra F.E.A.R. (2005) Jediný popsaný plánovací systém v hrách Použit pak i v dalších hrách S.T.A.L.K.E.R.: Shadow of Chernobyl Fallout 3 Deus Ex Pozitivní přijetí od hráčů Odvozen od STRIPS http://web.media.mit.edu/~jorkin/goap.html

GOAP JAK TO FUNGUJE Reprezentace světa pomocí stavových proměnných Trochu jako v CSP formulaci Proměnné mohou přímo odkazovat na herní objekty Procedurální předpoklady a efekty Ceny akcí A* Samostatný systém pro výběr cílů

GOAP VÝHODY A NEVÝHODY Výhody Chytřejší AI Oddělení akcí od cílů a akcí od jejich implementace Lepší udržovatelnost vůči FSM Nevýhody Absence přímé kontroly nad jednáním agenta problémy s laděním Implementační komplikace a detaily Údajně ho vývojáři her zase opouští ve prospěch HTN případně se vrací k reaktivním Behaviour trees Více viz třeba http://aigamedev.com/open/editorial/2010- retrospective/ (Trend #10)

PLÁNOVÁNÍ VS. REAKTIVNÍ TECHNIKY NÁVRH EXPERIMENTU Otázka zní: kdy se vyplatí plánovat a kdy je lepší být reaktivní. Zaměřeno na dynamičnost prostředí Klasifikace dynamičnosti delay, impact, attitude: Situation Delay Impact Attitude FPS shootout 0.5-2s Small Hostile Quest in a RPG, no combat > 5s Medium Balanced Getting food in The Sims 1 5s Small Friendly Navigating through a spaceship falling apart 1 3s Large Hostile

PLÁNOVÁNÍ VS. REAKTIVNÍ TECHNIKY PROSTŘEDÍ Místnosti spojené dveřmi, tlačítka k ovládání Interference náhodné změny stavu dveří

PLÁNOVÁNÍ VS. REAKTIVNÍ TECHNIKY AGENTI Heuristiky Je-li cesta k cíli, vydej se po ní (H1) Je-li k dispozici tlačítko, které pomůže, ale neubliží, zmáčkni ho (H2) Reaktivní Inactive + H1 Random + H1 + H2 Greedy + H1 + H2 Plánovací Pštrosí přístup Plánovače: LAMA 2011, Probe, Fast Forward, BlackBox, SGPlan 6 (+ H1)

PLÁNOVÁNÍ VS. REAKTIVNÍ TECHNIKY PARAMETRY Mapy Small (5x5), Medium (7x7), Large (10x10) a 13x13 Delay 0.5s, 1.5s, 3s Impact Podíl změněných dveří 0.05, 0.1, 0.2 Attitude Friendliness pravděpodobnost otevření dveří Ukázal se jako nejzajímavější 0, 0.15, 0.3, 0.5, 0.7

PLÁNOVÁNÍ VS. REAKTIVNÍ TECHNIKY VÝSLEDKY LAMA 2011 (založeno na Fast Downward) propadl Jelikož je stavěn primárně na IPC V průměru těsně (nesignifikantně) lepší Greedy

PLÁNOVÁNÍ VS. REAKTIVNÍ TECHNIKY VÝSLEDKY Obecně plánovače lepší (success rate) Na Small + Medium Při friendliness = 0 Při delay = 3s

PLÁNOVÁNÍ VS. REAKTIVNÍ TECHNIKY VÝSLEDKY

PLÁNOVÁNÍ VS. REAKTIVNÍ TECHNIKY VÝSLEDKY A co doba, za kterou to zvládli? Plánovače lepší!

PLÁNOVÁNÍ VS. REAKTIVNÍ TECHNIKY VÝSLEDKY Ale plánovače strávily až třetinu času přemýšlením Na malých doménách se plánuje desítky stovky milisekund, na velkých to jde rychle nahoru SG Plan 6 nejstabilnější výsledky BlackBox nejrychlejší na malých doménách, ale rychle se zhoršuje

POUŽÍVÁME PLÁNOVAČE Jsou v nich bugy Typickým problémem bývají příliš jednoduché domény nebo nesmyslně generované problémy Ale není jich zase tak moc Použití plánovačů z Javy: Planning4J Universální API pro IPC i jiné plánovače http://code.google.com/p/planning4j/ Zejména poslední ročníky IPC jdou dosti proti realtime plánování Timeout 30minut Fast Downward

POUŽÍVÁME PLÁNOVAČE DALŠÍ POZNÁMKY Problémy s PDDL: Kromě BlackBoxu všechny použité plánovače (a většina plánovačů vůbec) překládá PDDL na statevariables Chybí možnost ovlivňovat průběh plánování snaží se vždy o optimální plán

ALTERNATIVNÍ PŘÍSTUPY K PLÁNOVÁNÍ STRIPS & spol. nemá monopol Existují i velmi odlišné formalismy a není vůbec jasné, který formalismus je lepší (Mě) Známé varianty HTN MDP Project Europa Každý formalismus řeší vlastně jiný problém!

ALTERNATIVNÍ PŘÍSTUPY K PLÁNOVÁNÍ HTN Hierarchical Task Networks Attack_enemy(x) Move_to_cover(y) Dodge Throw_grenade_at(x) Fire_at(x)

ALTERNATIVNÍ PŘÍSTUPY K PLÁNOVÁNÍ HTN Akce mají více různých dekompozicí + vazby proměnných Obecně nerozhodnutelné! Může se též vnímat jako rozšíření POP Lépe modeluje paralelní akce Využívá se pro plánování operací týmů Umožňuje dobře zachytit domain-dependent znalosti Ale některé, které jsou spíše stylu Sudoku se v HTN vyjadřují špatně nebo vyjádřit nejdou

ALTERNATIVNÍ PŘÍSTUPY K PLÁNOVÁNÍ MDP Markov decision processes Vhodně simulují rozhodování při nedeterminismu Obecným řešením je hledání ideální akce pro každý stav systému Neřeší se přesně - typicky Monte Carlo

ALTERNATIVNÍ PŘÍSTUPY K PLÁNOVÁNÍ Europa http://code.google.com/p/europa-pso/ NDDL: Timelines + constraints Používá se v praxi v NASA

SHRNUTÍ Plánování se vyplatí, ALE.. Výsledek v IPC zase tolik nesouvisí s výkonem pro realtime potřeby Existují i jiné formy plánování než STRIPS a rozhodně nejsou špatné Není ale snadné je navzájem poměřit