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. zborilf@fit.vutbr.cz 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ů Oraganizační informace (I.) Oraganizační informace (II.) Garant 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ů) Ing. Zdeněk Mazal, Ing. František Zbořil, Ph.D. Součásti kurzu 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)
Osnova Léto 2007: Data, detaily a výjimky 1. Úvod do distribuované umělé inteligence, historie, obory a směry příbuzné s agenty 2. Pojemy agent, prostředí, architektury agentů. rozdělení agentů, základní modely a 3. Formální logiky pro MAS : modální logiky, epistemické, temporální, Racionální agent, agent jako intenční systém, CTL a BDI logiky. 4. Architektury BDI systémů, IRMA, formální systémy AgentSpeak(L) a dmars, architektury PRS, JAM, příklady 5. Agentově orientované programování, Agent-0. Nástroj 3APL 6. Multiagentní systémy (MAS), principy spolupráce ařešení konfliktů. 7. Komunikace v MAS, KQML a ACL jazyky, interakční protokoly 8. Řešení konfliktů v MAS, hlasování, vyjednávání, argumentace 9. 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í. 10. Koalice v MAS, formování koalic. Algoritmy pro formování koalic. 11. JADE, nástroj pro implementac agentů kompatibilní s FIPA, JADEX 12. Realizace MAS. FIPA abstraktní architektura agenta. specifikace návrhu multiagentniho systému GAIA, AUML. Role agentů. 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 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é )
Agent, agentní systém 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 Agent 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. Pojem agent, jiný přístup k vymezení Taxonomie (Franklin & Greaser 96) 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í Agent a prostředí 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: 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ě
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 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 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 z1 Snímek 15 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 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í 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) 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 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
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. 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
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. 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." 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ší