Hybridní agent

Hybridní agent je takový autonomní, inteligentní, avšak zdrojově omezený agent multi-agentních systémů (dále jen MAS), který kombinuje některé vlastnosti a charakteristiky ostatních typů agentů, jež můžeme v MAS vidět, a to reaktivních, sociálních a adaptivních agentů. Jednotliví agenti musí být schopni činit vlastní rozhodnutí, a to na základě aktivit ostatních agentů a událostí v rámci systému, jakož i jeho prostředí. Hybridní agenti se snaží využít výhod předcházejících přístupů s odstraněním nedostatků jednotlivých modelů.

Příkladem hybridního agenta je InteRRaP (z angl. Integration of Reactive Behaviour and Rational Planning) navržený Janem Bubeníkem. Hybridní agenti se skládají z několika vrstev (každá vrstva působí jako samostatný agent), na nichž je založeno celkové chování agenta. U hybridního agenta existují alespoň dvě vrstvy - deliberativní a reaktivní, agent však může mít vrstev i více. Vrstvy mohou být strukturovány do různých typů struktur, které pak udávají konečné chování agenta.

Deliberativní vrstva - vrstva lokálního plánováníEditovat

 
Obr. č.1 - Základní moduly architektury InteRRaP

Některé situace se nedají řešit jenom vykonáním akce vzoru chování jako odpověď na podnět z prostředí (jako je tomu u reaktivních agentů), ale vyžadují jistou míru deliberace. Funkci vytváření plánů pro dosažení vytyčených cílů, plní tedy vrstva zvaná deliberativní – vrstva lokálního plánování. Základní datové struktury této vrstvy:

  • Jsou definovány cíle jakožto množiny stavů s postojem agenta k nim. Stavy jsou charakterizovány vlastnostmi, které by měly být splněny při dosažení cíle. Cíle jsou pak stanoveny buď jako udržovací (= udržování hodnot stavů na určité úrovni ve stanoveném časovém intervalu) nebo jako cíle, které znamenají snahu agenta dosáhnout určitého stavu do stanoveného času.
  • Plánování se pak uskutečňuje nejčastěji jako tzv. druhotné – tzn. v datové struktuře zvané knihovna plánů je předem definována množina plánů a zároveň do této knihovny existuje mapování z množiny cílů, tzn. ke každému cíli lze přiřadit plán na jeho dosažení. Přistupování k plánům pro dosažení cíle se uskutečňuje indexovou funkcí, která charakterizuje popis stanoveného problému. To je rozdíl oproti plánování prvotnímu, kdy se plánování chápe jako hledání sekvence vhodných operátorů (akcí uplatnitelných za splnění jistých podmínek) ve stavovém prostoru.
  • Knihovna plánů obsahuje plány k dosažení cílů agenta. Plány pro komplexní úkoly nejsou v době běhu programu agenta k dispozici. Proto knihovna plánů obsahuje hierarchii plánů a informaci, jak mohou být abstraktní cíle rozvinuty do konkrétních podcílů, které jsou přímo propojeny s existujícími plány. Plánování je potom proces návratu expanze plánů až na úroveň vhodnou pro přímé vykonání akcí.
  • Rozvrh akcí zabezpečuje časově ohraničené rozvrstvení plánů. Vzniknou tak rozvrhy plánů v podobě souslednosti kroků, které mají být provedeny.

Rozhraní vrstvy lokálního PlánováníEditovat

Vrstva lokálního plánování má přístup k modelu světa reaktivní vrstvy. Mentální model (Také na obr. č.: 1) není fyzicky součástí báze poznatků, ale je napřímo zabudován v atributech vrstvy lokálního plánování. Tvoří jej plány, cíle, rozvrhy a knihovny plánů. Mentální model je tedy spíše konceptuálně než fyzicky součástí báze poznatků agenta.

Komunikační rozhraní sdílí tato vrstva s oběma sousedícími vrstvami – reaktivní i vrstvou pro vytváření společných plánů. Interakce vrstev kooperativního a lokálního plánování zabezpečuje koordinaci individuálních akcí agenta s multiagentovými plány.

Vrstva pro lokální plány přijímá příkazy k interpretaci individuálních plánů, které jsou součástí plánů společných s jinými agenty. Provádí také vyhodnocení plánů využitím lokální funkce užitečnosti. Plánovač v procesu interpretace naopak posílá zprávy vrstvě kooperativního plánování se žádostí o vypořádání se s podnětem (např. návrh společného plánu od jiného agenta) v případě, že na to nestačí lokální plán.

Reaktivní vrstvaEditovat

Reaktivní vrstva je odpovědná za adekvátní reakce na podněty z prostředí vyžadující okamžitou akci a také za vykonávání volaných procedur z vrstvy lokálního plánování. Základní charakteristiky této vrstvy lze shrnout do následujících bodů:

  • Část báze poznatků, ke které přistupuje reaktivní vrstva, se nazývá model světa. Pro fakta nacházející se v tomto modulu využívá reaktivní vrstva efektivní algoritmus porovnávání se vzorem, který slouží k rozpoznávání aktuálních situací.
  • Situace, se kterými reaktivní vrstva pracuje, jsou limitovány popisem situací pro časově aktuální reakce na přijaté podněty.
  • Rozpoznané situace jsou fixně spojeny s cíli pro reaktivní chování, což má za následek okamžité vykonání akcí programů.
  • Požadavky na vypořádání se se situacemi, které se neshodují s popisem dvojic situace – akce, jsou posílány do vrstvy lokálního plánování.
  • Závazek pro vykonání procedur přicházející z vrstvy lokálního plánování aktivuje procedury tzv. vzorů chování reaktivní vrstvy.

Vzory chováníEditovat

Základními datovými strukturami reaktivní vrstvy jsou tzv. vzory chování (ang. Paterns of behavior - PoB). Rozlišujeme dva typy těchto vzorů: reaktory a procedury. Reaktory jsou aktivovány extrémními událostmi, které mění stav báze poznatků a využívají se k reakcím na neočekávané události. Procedury jsou spouštěny na žádost vrstvy lokálního plánování a znamenají programy pro vykonání plánů. Reaktory mají větší prioritu vykonání a mechanismus výběru reaktoru s nejvyšší prioritou se řídí zdrojově omezenou výpočetní kapacitou pro odezvy na podněty v reálném čase.
Vzory chování jsou charakterizovány atributy a metodami, které mohou být volány v jejich kontextu. Základními atributy vzoru chování jsou deskriptivní atributy (priorita, podmínka aktivace, podmínka úspěšného nebo neúspěšného ukončení apod.) a samotné tělo programu, které se spustí, je-li daný vzor chování aktivován.
Reaktory mohou být ukončeny jenom splněním podmínky úspěšného nebo neúspěšného ukončení. Procedury lze naopak ukončit i v případě, že vrstva lokálního plánování už není zavázána k jejich vykonání. Paralelní stav aktivace (vykonání) vzorů chování není možný v případě využívání společných zdrojů (aktuátorů, senzorů), ani v případě sémanticky konfliktní situace (jedna procedura „pohybuje agentem“ směrem ke značce Z1 a druhá současně „pohybuje agentem“ ke značce Z2). I když v jednom časovém okamžiku může být aktivních více vzorů chování, jejich vykonání se řídí prioritami, které stanovují jejich relativní důležitost.
Vzhledem k tomu, že agent musí v průběhu vykonávání vzorů chování okamžitě reagovat na některé podněty z prostředí, jsou procedury strukturovány do sekvencí primitivních atomárních konstrukcí, jejichž vykonání je krokové, a po každém kroku se může agent rozhodnout mezi pokračováním vykonávání, nebo jejich přerušením.

Rozhraní reaktivní vrstvyEditovat

Reaktivní vrstva sdílí rozhraní s bází poznatků, s prostředím a vrstvou lokálního plánování. Reaktivní vrstva přistupuje k poznatkům o světě, které jsou symbolicky reprezentovány v modelu světa. Jeho obsahem jsou mapy symbolů pro manipulaci s hodnotami získanými ze senzorů a pro práci s aktuátory, základní datové struktury využívané základním cyklem této vrstvy (popisy vzorů chování) pro monitorování událostí, faktické informace o prostředí a některé další informace.

Reaktivní vrstva má spojení se senzory, které poskytují hodnoty stavu prostředí pro aktualizaci modelu světa, i s aktuátory, které vykonávají akce specifikované ve vzorech chování. Má také přístup k obsahu zásobníku zpráv přicházejících z prostředí i z vrstvy lokálního plánování.

Komunikace reaktivní vrstvy a vrstvy pro lokální plánování je obousměrná. Vrstva lokálního plánování posílá reaktivní vrstvě zprávy o vzniku závazku k vykonání plánů, které tato vrstva vykonává spouštěním procedur vzorů chování. Stejnou cestou mohou být vzniklé závazky zrušeny a vykonání procedur pozastaveno s následnou modifikací aktuálních cílů nejnižší vrstvy. Opačným směrem proudí zprávy informující vrstvu lokálního plánování, že reaktivní vrstva není kompetentní adekvátně reagovat na podnět z prostředí (např. rozpoznaná situace vyžaduje kooperativní řešení problému s jinými agenty v případě konfliktu, společného řešení problému apod.).

Hybridní architekturyEditovat

Hybridní architekturou agenta rozumíme takovou architekturu, ve které se nacházejí komponenty pro reaktivitu, deliberativnost i sociální model pro komunikaci na vyšší úrovni.

Hybridní architektury lze rozdělit na horizontální a vertikální (Obr. č.2, č.3).

HorizontálníEditovat

 
Obr. č.2 - Hybridní architektura s horizontálním vrstvením

Horizontální vrstvení zaručuje přístup všech vrstev k senzorickému a efektorickému vybavení agenta. Řídící mechanismus musí pak zabezpečovat správné přidělení zdrojů agenta jednotlivým vrstvám tak, aby bylo zabezpečeno racionální chování (např. aby agent zaneprázdněný stavbou zdi do té zdi nenarazil), zároveň však aby tato racionalita nebyla narušena "bojem vrstev" o dané zdroje a vykonávání akcí. Viz také grafické zobrazení (Obr. č.2)

  • Příkladem hybridní architektury agenta s horizontálním vrstvením je architektura TouringMachine (Ferguson, 1992a, 1992b, 1995)
  • Výhody: jednoduché ztvárnění (každá vrstva představuje jedno chování)
  • Nevýhody: potenciální překážkou může být potřeba subsystému, kterou z důvodu konkurence mezi vrstvami agenti potřebují.

VertikálníEditovat

 
Obr. č.3 - Hybridní architektura s vertikálním vrstvením

Druhým typem organizace chování v hybridní architektuře je vertikální vrstvení. V tomto případě je se senzory a aktuátory spojena jenom jedna vrstva (obvykle je tato vrstva spojena jak se senzory tak s aktuátory). Data a žádosti v této vrstvě proudí z nižších vrstev do vyšších, které pak delegují nižší pro provádění úloh (viz Obr. č.3).

Jednoprůchodové ovládáníEditovat

  • Výhody: jednodušší interakce mezi vrstvami
  • Nevýhody: méně flexibilní, více náchylná k selhání, neexistuje zpětná vazba mezi vrstvami

Dvouprůchodové ovládáníEditovat

  • Výhody: struktura se podobá firmě, méně interakce mezi vrstvami
  • Nevýhody: méně flexibilní, více náchylná k selhání, má nižší výkon

Použití hybridních agentůEditovat

Prostředí modelů hybridních agentů je používáno jako prostředí, ve kterém je studováno lidstvo, životní prostředí a jejich dynamika.

ZdrojeEditovat

  1. Využití agentů při modelování business procesů; Miloš Martin; diplomová práce (r. obhajoby 2010); dostupná na Vysoké škole ekonomické v Praze. Fakulta informatiky a statistiky
  2. Inteligentní agenty; Kubík Aleš; Brno: Computer Press; 2004; ISBN 80-251-0323-4
  3. Podklady k 6. přednášce předmětu 4IT495 - Simulace systémů; VŠE - fakulta informatiky a statistiky, Multiagent systems I.pdf, Ing. Tomáš Šalamon, MBA
  4. Reactive and Hybrid Agents; José M Vidal; September 2, 2005; soubor PDF dostupný na www: https://web.archive.org/web/20100614024027/http://jmvidal.cse.sc.edu/talks/reactivehybridagents-slides.pdf
  5. Podklady k přednáškám kurzu AGS - Agentní systémy, základní architektury, jejich modely a realizace; Fakulta informačních technologií VUT v Brně; František Zbořil ml.; 2005, 2006; soubor PDF dostupný na www: http://www.fit.vutbr.cz/~zborilf/study/AGS/AGS02_Zakladni_modely.pdf
  6. The Agent Architekture InteRRap; German Research Center for Artificial Intelligence; Jörg P. Müller, Markus Pischel; soubor PDF dostupný na www: http://www.agent.ai/doc/upload/200407/mull93_1.pdf[nedostupný zdroj]
  7. Modelování uvažujících agentů Petriho sítěmi; Disertační práce; Fakulta informačních technologií VUT v Brně; Ing. Zdaněk Mazal; 2008; dostupné na www: http://web.fit.vutbr.cz/research/view_pub.php?file=%2Fpub%2F8883%2Fmazal_disertace.pdf&id=8883
  8. A New Hybrid Agent-Based Modeling & Simulation Decision Support System for Breast Cancer Data Analysis; Amnah Siddiqa, Muaz Niazi, Farah Mustafa, Habib Bokhari, Amir Hussain, Noreen Akram, Shabnum Shaheen, Fouzia Ahmed and Sarah Iqbal; 2009; dostupné na www: http://www.maths.stir.ac.uk/~man/papers/ICICT_Cameraready_June20_09.pdf[nedostupný zdroj]
  9. Complexities of Simulating a Hybrid Agent-Landscape Model Using Multi-Formalism Composability; Arizona Center for Integrative Modeling & Simulation, Computer Science & Engineering Department, School of Computing and Informatics, Arizona State University, Tempe, Arizona; Gary R. Mayer, Hessam S. Sarjoughian; dostupné na www: http://www.asu.edu/clas/shesc/projects/medland/files/mayer&sarjoughian_SpringSim2007.pdf Archivováno 5. 3. 2016 na Wayback Machine