Agents/cs

Agent, také inteligentní agent nebo někdy racionální agent je označením pro autonomní entitu, která je schopna vykonávat určitou činnost v nějakém prostředí. Tato entita pozoruje pomocí senzorů své prostředí a jedná pomocí aktuátorů. Agenty mohou být velice jednoduché i složité, některé jsou například schopné učit se a/nebo využívat znalosti k dosažení svých cílů. Existují různé způsoby definice i klasifikace agentů.

Charekteristika agenta
Není jednoduché jednoznačně definovat agenta, neboť neexistuje striktní definice tohoto pojmu. Konkrétní definice často záleží, z jakého oboru pochází, neboť pojem agent spadá pod společný okruh umělé inteligence, ekonomiky i teorie her. Agenty lze dělit do kategorií podle různých charakteristik. Mohou se dělit podle architektury, tedy svého vnitřního uspořádání, fyzické substance nebo jejich způsobu racionality.

Agenty bývají charakterizovány sadou vlastností. Mezi tyto vlastnosti patří:

• Autonomnost - Agent musí být proaktivní a samostatný. Musí tedy sám řešit zadané úkoly a cíle.

• Reaktivita - Agenty jsou aktivovány událostmi a jsou schopny reakce v souladu s vnímáním prostředí.

• Intencionalita - Schopnost mít na paměti dlouhodobé cíle a organizovat své chování tak, aby jich bylo dosaženo.

• Schopnost sociálního chování - Agent by měl být schopný spolupráce s ostatními agenty k dosažení společných cílů. Také by měl být schopný udržovat informace o ostatních agentech a sdružovat se do skupin a očekávat z nich vzájemný prospěch.

• Schopnost učení - Agent by měl být schopný získávat a uchovávat nové znalosti a na jejich základě měnit své chování.

Kategorie agentů
Na základě jejich racionality lze agenty rozdělit do následujících skupin:

Reaktivní agenty

Reaktivní agenty jsou nejjednodušším typem agentů. Za reaktivní agent je označována entita, která vykonává akce výhradně na základě podnětů, které zachytí senzory z vnějšího prostředí a její racionalita je přímým důsledkem interakce agenta se svým okolním světem. Agent neobsahuje žádné součásti, které by obsahovaly plány ani možnosti tvorby plánů nebo moduly rozhodování. Tento agent se skládá z kompetenčních modulů, tyto moduly se aktivují na základě přijatého stimulu a vykonávají určitou akci. Agent také může obsahovat vnitřní stavy, které moho ovlivňovat jeho reaktivní chování. Tento agent dosahuje svých předem určených cílů na základě těchto reakcí na změny prostředí.

Deliberativní agenty

Deliberativní agent se vyznačuje tím, že dokáže plánovat cestu ke svým cílům. Tento postup plánuje na základě databáze znalostí o světě a na základě svých vnitřních stavů. Tyto znalosti tvoří převážně vnitřní symbolická reprezentace světa (tedy prostředí, ve kterém se nachází).

Sociální agenty

Někdy se jako další kategorie uvádí takzvaný sociální agent. Takový agent je rozšířen o možnost komunikace s ostatními agenty. Takový agent bývá v základní formě vybaven jistou obdobou telefonního seznamu - má informace o identifikaci jednotlivého agenta, jeho adrese a o službě, kterou nabízí. Sociální agenty jsou tak schopny zvažovat cíle a motivace ostatních agentů a uchovávat historii interakcí se všemi ostatními agenty. Smyslem propojení agentů je kromě samotného dosažení cíle také překonání omezenosti zdrojů jednotlivých agentů.

Hybridní agenty

Označením hybridní agent je myšlen agent, který ve své činnosti kombinuje vlastnosti a funkce ostatních druhů agentů.

Reaktivní agenty
Reaktivní agent je nejjednodušším z typů agentů. Tento netvoří symbolickou reprezentaci okolí. Jako takový pouze reaguje na změny prostředí a při jeho použití se inteligentní chování vyskytne pouze z emergence v rámci celého multiagentního systému.

Základem reaktivního  agenta  je  takzvaná  subsumpční  architektura,  která  v  protikladu  s  klasickou (symbolickou) umělou inteligencí vychází z následujících principů:

• Tělesnost (embodiment) – agenty mají tělo se senzory a aktuátory

• Situovanost (situatedness) – agenty jsou situovány v reálném světě, se kterým interagují, a který ovlivňuje jejich chování

• Inteligence –  jako  výsledek  střetu  agenta  s  okolím  a  adekvátní  reakce  na  podněty (stimulus → response); tyto reakce nepotřebují centrální reprezentaci cílů a plánů

• Emergence – inteligence systému vzniká samovolně jeho interakcí s prostředím a také vzájemnou interakcí komponent systému

Subsumpční architektura  znamená  dekompozici  agenta  dle  jeho  aktivit  do  vrstev. Jednotlivé vrstvy spolu  „soupeří“  o řízení  agenta. Nejspodnější vrstva  má  přednost,  pokud  nepracuje, nastupuje další vrstva atd. Agent je tedy vytvářen zdola nahoru, postupně se tak rozšiřuje jeho funkcionalita. Jednotlivé vrstvy  interagují  na  základě potlačení  (suppression)  na  úrovni vstupů do jednotlivých  vrstev  agenta (vstup do nižší  vrstvy  je  nahrazen  signálem  z  vyšší vrstvy) a zabránění (inhibition) na úrovni výstupů z jednotlivých vrstev agenta (výstup z vyšší vrstvy  zabrání  výstupu  z  nižší  vrstvy). Obrázek vpravo ukazuje subsumpční  architekturu  robota,  který prozkoumává své okolí. Tato činnost má nejnižší prioritu, vyšší prioritu má bloudění a nejvyšší prioritu má vyhýbání se překážkám.

Příkladem jednoduchého reaktivního agenta může být mechanická beruška, která odpovídá výše zmíněnému popisu. Beruška se pohybuje po stole, opírá se o velké kolečko a tykadla. Pokud se tykadly dostane mimo desku stolu, zapojí se další (malé) kolečko, které berušku otočí. V moment, kdy se tykadla znovu dostanou na plochu stolu, malé kolečko se odstaví a beruška se opět rozjede rovně.

Dalším příkladem může být jednoduchý robotický systém, který simuluje chování pobřežního slimáka. Ten se pohybuje vzhůru jako reakce na gravitaci a pohybuje se do tmy jako reakce na světlo. To odpovídá chování pobřežního slimáka, který se živí řasami rostoucími  mezi  skalami  ve vodě i na vzduchu. Na dně se pohybuje do tmy skalních štěrbin a v nich se plazí směrem vzhůru. Je-li sluneční světlo příliš silné, zůstane pod hladinou, jinak vyleze a zůstane mezi skalami, kde hledá potravu.

Deliberativní agenty
Deliberativní (také označované jako usuzující, racionální, nebo intencionální) agenty jsou takové, které vykazují inteligentní chování na základě vlastní umělé inteligence. Pracují se symbolickou reprezentací vnějšího prostředí, kterou využívají k vytvoření modelu tohoto světa ve své paměti a který dokáží využít k plánování a dosažení cílů. Deliberativní agenty nemusí mít nutně pouze jeden cíl. Mohou sledovat velice složitý cíl, skládající se z mnoha podcílů, dlouhodobé i krátkodobé cíle, nebo vícero hierarchicky uspodářaných cílů najednou. Rozhodovací proces je tak zesložitěn i snaho vybrat nejlepší cíl pro konkrétní situaci.

V určitých situacích není tento agent schopen dosáhnout cíle sám, na řadu tak přichází sociální vrstva agenta, která mu dovoluje kooperaci s ostatními agenty. Ty mohou, ale nemusí přijmout žádost agenta, pokud tato žádost neodpovídá cílům žádaného. Nevíhodou deliberativních agentů je jejich složitost. Mohou se objevit chyby a ty mohou být náročné na odstranění. Jsou také velice náročné na výpočetní výkon.

Při pohledu z vnějšku se mohou deliberativní agenty podobat agentům reaktivním. Vnímají své prostředí, vjemy zpracují a vyhodnotí a vyberou nejlepší vhodnou odpověď a tu provedou. Vnitřní proces je však výrazně složitější. Jak již bylo zmíněno, agenty používají systém vnitřních znalostí. Ty se skládají z nějakých základních informací, ze zkušeností získaných interakcí s prostředím, z vnitřních stavů a cílů, kterých má agent dosáhnout. Základem je postup, při kterém se na základě nějakého vstupu změní vnitřní stav agenta. Následkem čehož je provedena nějaká akce. Existují však různé přístupy, jak vytvořit takovou architekturu.

Jakýmsi standardem je v tomto ohledu teorie BDI. Tato teorie tvoří sofistikovaný přístup k architektuře agenta a skládá se ze tří základních pojmů:

• Beliefs (doměnky) - vyjadřují představy agenta o světě.

• Desires (touhy) - vyjadřují touhy agenta dosáhnout cíle nebo určitého stavu světa

• Intentions (záměry) - vyjadřují záměr agenta dosáhnout cíle

Na základě těchto doměnek, přání a záměrů agent uvažuje o světě.

Agentní prostředí
Prostředí je vše, s čím agent přichází do styku během své činnosti nebo existence. Je to ve své podstatě agentní systém, pouze však bez jednotlivých agentů. Toto prostředí lze dělit podle několika různých kritérií.Prostředí tedy může být:

Plně pozorovatelné / Částečně pozorovatelné

• Plně pozorovatelné prostředí je takové, které může agent svými senzory zcela sledovat. Může sledovat všechny jeho stavy.

• Částečně pozorovatelné je pak opakem, tedy agent není schopen sledovat všechny stavy prostředí.

Statické / Dynamické

• Statické prostředí je takové, které se může měnit jenom díky akcím agentů.

• Dynamické prostředí se může měnit i bez zásahu agenta.

Deterministické / Nedeterministické

• Deterministické prostředí je takové, u kterého je predikovatelný jeho následný stav ze znalosti momentálního stavu prostředí a vykonávané agentní akce.

• Nedeterministické prostředí je charakterizováno jako prostředí, u kterého nelze jeho následný stav predikovat.

Diskrétní / Spojité

• Diskrétní prostředí má konečný nebo spočetný počet stavů. (přechází tedy po konkrétních krocích ze stavu do stavu)

• Spojité prostředí má nekonečný počet stavů.

Hybridní agenty
Jak již bylo zmíněno výše, a jak z názvu vypovídá, hybridní agenty jsou takové, které kombinují vlastnosti ostatních typů agentů. A tedy agentů reaktivních a aagentů deliberativních. Hybridní agenty se skládají z několika vrstev a každá tato vrstva působí jako samostatný agent. Hybridní agent tak musí mít alespoň dvě vrstvy - jednu deliberativní a jednu reaktivní. Vrstev však samozřejmě může mít i více. Vrstvy poté mohou být uspořádány do různých struktur. Tyto vrstvy tvořící celkovou strukturu poté udávají konečné chování agenta.

Struktury, neboli architektury vrstev hybridního agenta můžeme v zásadě rozdělit na tři architektury. Jedná se o architekturu horizontální, vertikalní s jednopruchodovým ovládáním a vertikální s dvouprůchodovým ovládáním

Horizontální
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říklad aby agent neprováděl dvě protichůdná řešení), zároveň však aby tato racionalita nebyla narušena "bojem" vrstev o dané zdroje a vykonávání akcí. Viz také grafické zobrazení na obrázku.

• 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í
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. U dvouprůchodové architektury je tato vrstva spojena jak se senzory tak s aktuátory. U jednoprůchodové se pak senzorová a aktuátorová vrstva nachází na opačných koncích. Data a žádosti v této architektuře proudí z nižších vrstev do vyšších, které pak případně delegují nižší pro provádění úloh (v případě dvouprůchodového vrstvení).

Jednoprůchodové ovládání

• 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í

• Výhody: struktura se podobá firmě, méně interakce mezi vrstvami

• Nevýhody: méně flexibilní, více náchylná k selhání, náročnější na výpočetní výkon

Zdroje
• BERKA, Petr. - Inteligentní systémy. V Praze: Oeconomica, 2008. ISBN 978-80-245-1436-9.

• ŠALAMON, Ing. et Ing. Tomáš, Ph.D., MBA - Podklady k předmětu 4IT495 - Simulace systémů; VŠE - fakulta informatiky a statistiky, Multiagent systems I.pdf,

• KUBÍK, Aleš. Inteligentní agenty. Brno: Computer Press, 2004. ISBN 80-251-0323-4.

• NETRVALOVÁ, Arnoštka, Ing. - Úvod do problematiky multiagentních systémů