Obsah přednášky
I. Úvod do agentních a multiagentních systémů Podklady k přednáškám kurzu AGS ---------------------------------------------------©2005, 2006 František Zbořil ml.
[email protected]
Organizační informace Struktura kurzu Pojem agent, inteligentní umělý agent, taxonomie Oblasti, ze kterých agenti a (multi) agentní systémy vychází Agenti a agentní systémy dnes Směry vycházející z multiagentních systémů
(c) 2005-7 František Zbořil ml.
(c) 2005-7 František Zbořil ml.
Oraganizační informace (I.)
Oraganizační informace (II.)
Garant kurzu
Součásti kurzu
Ing. František Zbořil, Ph.D.
Přednášející Ing. František Zbořil, Ph.D. Kancelář L207 Telefon +042541141233 Konzultační hodiny Út. 12:00 – 14:00
Cvičící (vedení projektů)
Přednáška (13×2 hodiny), Pátek 8:00 – 9:50 Cvičení 7x2 hodiny, od 7.týdne semestru (19.3.2007) Projekt: pojednání o zvoleném tématu, od 6. přednášky Konzultace – v konzultačních hodinách, nebo po předchozí domluvě Půlsemestrální test (1 termín) Závěrečná zkouška (3 termíny)
Ing. Zdeněk Mazal, Ing. František Zbořil, Ph.D. (c) 2005-7 František Zbořil ml.
(c) 2005-7 František Zbořil ml.
Osnova 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
Léto 2007: Data, detaily a výjimky
Úvod do distribuované umělé inteligence, historie, obory a směry příbuzné s agenty Pojemy agent, prostředí, rozdělení agentů, základní modely a architektury agentů. Formální logiky pro MAS : modální logiky, epistemické, temporální, Racionální agent, agent jako intenční systém, CTL a BDI logiky. Architektury BDI systémů, IRMA, formální systémy AgentSpeak(L) a dMARS, architektury PRS, JAM, příklady Agentově orientované programování, Agent-0. Nástroj 3APL Multiagentní systémy (MAS), principy spolupráce a řešení konfliktů. Komunikace v MAS, KQML a ACL jazyky, interakční protokoly Řešení konfliktů v MAS, hlasování, vyjednávání, argumentace Algoritmy pro spolupráci a vyjednávání v multiagentních prostředích, rozdělování úloh, sdílení prostředků a informací v MAS. Skupinové plánování. Koalice v MAS, formování koalic. Algoritmy pro formování koalic. JADE, nástroj pro implementac agentů kompatibilní s FIPA, JADEX Realizace MAS. FIPA abstraktní architektura agenta. specifikace návrhu multiagentniho systému – GAIA, AUML. Role agentů. (c) 2005-7 František Zbořil ml.
9.2 16.2 23.2 26.2 2.3 9.3 16.3 23.3 30.3 6.4 13.4 20.4 27.4
1. přednáška, úvod, rozdělení agentů 2.přednáška, základní modely a architektury agentů 3. přednáška, formální logiky pro agentní systémy 4. přednáška, BDI systémy 5. přednáška, agentně orientované programování 6. přednáška, multiagentní systémy, principy a modely 7. přednáška, komunikace a komunikační protokoly Půlsemestrální zkouška 8. přednáška, koordinované chování a kooperace 9. přednáška, řešení konfliktů 10. přednáška, koalice v MAS, algoritmy pro formování 9. přednáška, nástroje JADE, JADEX, 10. přednáška, návrh MAS, metodologie GAIA (c) 2005-7 František Zbořil ml.
Literatura
Co je to agent?
Podklady ke kurzu AGS Wooldridge, M.: An Introduction to MultiAgent Systems Kubik, A: Inteligentní agenty Manuály k nástrojům JAM, 3APL, JADE Přednášky Dix, J., Wooldridge, M. , Floera, A., M.
Etymologický význam slova vychází z latinského slova “agentem” (ten, kdo jedná) Agent je chápán jako někdo nebo něco, kdo jedná v nějakém prostředí v zájmu klienta (svého majitele, konstruktéra, nájemce apod.) Člověk – agent jedná v zájmu jednotlivce (agent zastupující sportovce, umělce …) společnosti (obchodní zástupce, pojišťovací agent …), státního celku (špioni, diplomaté …)
(c) 2005-7 František Zbořil ml.
(c) 2005-7 František Zbořil ml.
Agent, agentní systém
Agent
Umělý agent je člověkem vytvořené dílo, autonomní, samostatná jednotka, situovaná v nějakém prostředí, ve kterém jedná v prospěch svého klienta. Agentní systém je tedy agent + prostředí Realizace umělého agenta - agent a jeho chování bývá řízeno programem. Tento program je vykonáván na nějaké architektuře. Umělý agent je program + architektura
Inteligentní agent má následující vlastnosti (Jennings ’97) Je autonomní – jedná v prostředí bez přímého vlivu z okolí, má plnou kontrolu nad svým jednáním, pokud se těchto výsad nevzdá Je reaktivní – je schopen adekvárně a pohotově reagovat na změny prostředí Je proaktivní – je schopen ujímat se iniciativy a sám ovlivňovat prostředí za účelem dosažení svých cílů Má sociální schopnosti – dokáže jednat ve skupině agentů, spolupracovat a řešit konflikty.
(c) 2005-7 František Zbořil ml.
(c) 2005-7 František Zbořil ml.
Pojem agent, jiný přístup k vymezení
Agent a prostředí
Taxonomie (Franklin & Greaser ‘96)
Agent vnímá prostředí svými senzory a na základě podnětů, resp. současného a všech minulých podnětů se rozhoduje o svém dalším jednání v prostředí. Prostředí lze klasifikovat podle toho, jestli je:
Reaktivní Autonomní Orienován na cíl (proaktivní) Dočasně spojité chování Schopný komunikace (sociální schopnosti) Schopný učení se (adaptivní) Mobilní Flexibilní S osobností (c) 2005-7 František Zbořil ml.
spojité / diskrétní – stavy prostředí tvoří diskrétní /spojitou množinu, číslicové počítače jsou diskrétní systém – umělí agenti vnímaji prostředí jako diskrétní přístupné / nepřístupné – agent svými senzory vnímá celé/část prostředí, ve kterém se nachází statické / dynamické – ve statickém prostředí, na rozdíl od dynamického, se jeho stav nemění, pokud agent nejedná deterministické / nedeterministické – v deterministickém prostředí je jeho následující stav dán aktuálním stavem, nebo případnou akcí prováděnou agentem epizodní / neepizodní – epizody rozdělují běh systému na na sobě nezávislé části strategické (MAS) – více agentů jedná v prostředí současně (c) 2005-7 František Zbořil ml.
Oblasti, ze kterých agenti a (multi) agentní systémy vychází Výpočetní technika Umělá inteligence, robotika, distribuovaná AI Modelování systémů Programovací jazyky Počítačové sítě
Matematika Formální logika
Ekonomie, sociologie, atd. Interakce mezi autonomními prvky, operační analýza
Psychologie, filosofie Motivace lidského chování, principy jednání člověka
Biologie Chování společenství nižších forem života (c) 2005-7 František Zbořil ml.
(c) 2005-7 František Zbořil ml.
Snímek 15
Reaktivní agenti, architektury založené na chování Robot (agent) nepotřebuje uchovávat model okolního světa, ale má reagovat, resp. chovat se z1 podle aktuálního stavu světa, který vnímá svými senzory Nemá žadnou symbolickou reprezentaci a neprobíhají žádné výpočty na základě této reprezentace Senzory a efektory bývají těsně vázány, často jen přes pevně zabudovanou hradlovou logiku
(c) 2005-7 František Zbořil ml.
z1
Wikipedia, zborilf; 12/8/2005
Reaktivní agenti (Brooks ’91)
Racionální agent
“Musíme postupně vytvářet schopnosti inteligentní bytosti zdola nahoru a mít v každé etapě úplný, funkční inteligentní systém schopný vnímat prostředí svými senzory a reagovat svými efektory” Brooks popsal roboty příšerky (creatures) jako něco, co
“Pokud má agent znalost, že některá z akcí, kterou je schopen vykonat, povede k cíli, potom ji vykoná” (Newel) “… it chooses to perform actions that are in its own best interests, given the beliefs it has about the world” (Wooldridge) “A rational agent takes actions which, given its knowledge of its environment, maximizes its chances of success” (Wikipedia)
Má reagovat pohotově a patřičně na změny prostředí Má být robustní. Pokud dojde ke změně prostředí, nezpůsobí to jeho kolaps Dokáže v prostředí jednat za účelem dosažení více cílů Má dělat v prostředí něco, co má smysl pro jeho bytí (c) 2005-7 František Zbořil ml.
Praktické usuzování (Practical Reasoning) Filosofie: Na rozdíl od teoretického usuzování je praktické usuzování ne o tom, co je a co není pravda, ale co se má udělat, aby se něco stalo pravdou (truthtaking vs. truth-making). Tedy zatímco teoretické usuzování má vyústit ve znalost, praktické usuzování má vyústit v činnost. Praktické usuzování má dvě části Zvažování (deliberation) : zvolení cíle, kterého má být dosaženo. Výsledkem zvažování je záměr. Plánování : nalezení akce, nebo sestavení plánu, který může dosáhnout záměru. Vykonánání plánu za účelem dosažení záměru je proaktivní jednání agenta
(c) 2005-7 František Zbořil ml.
(c) 2005-7 František Zbořil ml.
Agent jako intenční systém Agent coby intenční systém je řízen záměrem Záměrem je sledovat nějaký přetrvávající, perzistentní cíl (tedy cíl, který trvá, i když jej agent není v daném stavu schopen dosáhnout) Podle Bratman ’87 (převzáno z Cohen & Levesque ‘93): Záměr je pro agenta zadáním problému, agent potřebuje stanovit cestu, jak jej dosáhnout Záměr je mezí přípustnosti (screen of admisibility) pro přijímání dalších záměrů Agent si uchovává záznam o úspěšnosti svých pokusů o dosažení záměrů Agent věří, že je možné splnit záměr Agent nevěří, že se nikdy nemůže přiblížit dosažení záměru Za určitých podmínek agent věří, že se přiblíží k dosažení záměru Agent nemusí mít v úmyslu všechny vedlejší účinky, které nastanou při dosahování záměru (c) 2005-7 František Zbořil ml.
Plánování u racionálních agentů
Umělí agenti a agentní systémy dnes
Pokud je zvolen záměr, je třeba umět sestavit plán k jeho dosažení Plánovač (v zahraniční literatuře často označován jako Means-end analyser, analyzátor prostředků a cílů) sestavuje plán jako (úpně) uspořádanou posloupnost akcí, která za známých počátečních podmínek je schopna zabezpečit splnění daného cíle. Dnešní plánovače STRIPS, GraphPlan, SatPlan atd… Plánování je jen jedním z funkčních modulů agenta. V některých případech je plánování vynecháno vůbec a k záměrům je vybírán plán z předem sestavených plánů (knihovna plánu u PRS systémů). Plán i pokud je úspěšně pro záměr sestaven nemusí být použit okamžitě, nemusí dosáhnout cíle, které předpokládal dosáhnout, nemusí být vykonán celý a konečně … nemusí jeho vykonání začít vůbec. Na druhou stranu, jsou hledány postupy, algoritmy a pravidla pro sestavování plánů skupny agentů, pokdu se (například) dohodnou sledovat společný záměr.
Drobnosti a kvaziagenti Letiště v Sydney (OASIS) Raketoplán DS1 (BDI) Agenti v mobilních a senzorových sítích Elektronická komerce, ABM, atd.
(c) 2005-7 František Zbořil ml.
(c) 2005-7 František Zbořil ml.
z2
Drobnosti a kvaziagenti
OASIS: Air Traffic Management System
Tepelný spínač, čidla, alarmy (HW reaktivní agenti) Aplikační agenti (MS Office - Inteligentní sponka) uživatel aplikace, (SW kognitivní a reaktivní agenti) Systémoví démoni (AVG kontrola, SKYPE telefon), uživatele operačního systému (proaktivní agenti) Počítačové viry, aplikace, které nemusí jednat v něčí prospěch, vytváření z různých pohnutek (proaktivní a mobilní agent) Softboti, vyhledávače informací na internetu (proaktivní, kognitivní a mobilní agent)
Řízení letového provozu založené na BDI inteligentních agentech, testováno na letišti v Sydney Několik rolí agentů – agent pro modelování povětrnostních podmínek, koordinátor, hlídač trajektorie atd. Distribuované rozhodování, odolnost proti poruchám, adaptabilita
(c) 2005-7 František Zbořil ml.
(c) 2005-7 František Zbořil ml.
Snímek 23 z2
Rao, A., Georgeff, M.: BDI Agents: From Theory to Practice, 1995 zborilf; 12/14/2005
Aplikace: NASA Deep Space DS1 “Remote agent, like the other high-risk technologies that have now been tested on DS1, promises to make space exploration of the future more productive and more exciting while staying within NASA’s limited budget… …The testing of the remote agent accomplished 100% of the planned objectives.”
(c) 2005-7 František Zbořil ml.
Aplikace: NASA
Co vychází z agentů, nebo je využívá?
Georgeff: "At a conceptual level, a BDI agent models a computer system as 3 components -- a set of Beliefs (or information about the current state of the world), a set of Desires (or goals) and a set of Intentions (selected actions or plans). When two or more BDI agents interact ... they need to determine how best each other's mutual desires can be met, and to do this they need to understand the beliefs, desires and possibly intentions of the other agents." … As technology becomes more and more complex, Georgeff says "machines will have to have cognitive states much like humans (i.e., beliefs, desires, intentions and probably something analagous to emotions)," adding that "the NASA work was really a forerunner in this area." (c) 2005-7 František Zbořil ml.
Obklopující inteligence (ambient intelligence): studuje chování systému, který obsahuje velké množství umělých inteligentních prvků, interakce s nimi, bezpečnost, komunikace atd. Sémantický web (semantic web): sémantický web má být distribuované prostředí, kde informace nesou explicitně specifikovanou sémantiku, sdílejí ontologické infomrace atd. Webové služby (web services) Grid computing … a další… (c) 2005-7 František Zbořil ml.