From Wikipedia, the free encyclopedia
Racionální agent je pojem z oblasti multiagentních systémů (společného oboru umělé inteligence, ekonomiky, teorie her a teorie rozhodování) a označuje agenta (samostatnou entitu umístěnou do určitého prostředí, kde může vykonávat nějakou činnost), který pro každou možnou posloupnost vjemů volí akci maximalizující očekávanou míru výkonu a to na základě údajů daných touto posloupností vjemů a vnitřních znalostí agenta. Racionalitu zde chápeme jako schopnost (z hlediska času a kvality) plnění funkcí v prostředí v němž se agent nachází.[1] Jinak řečeno, je to systém schopný se rozhodnout ze známých informací tím nejlepším možným způsobem.
V literatuře se můžeme také setkat s použitím ekvivalence mezi pojmy racionální agent a inteligentní agent. Prvním autorem, který použil tuto ekvivalenci je Stuart Russel, který uvádí racionální chování jako alternativní charakteristiku inteligentního chování.[2] Pojmy nachází využití v sociologii (sociologický racionalismus), teorii her (racionální hráč) a filosofii umělé inteligence.
Základní charakteristiky agenta:
Nejčastěji uváděnou společnou vlastností agentů je autonomnost. Agent je autonomní v tom smyslu, že je schopen, pokud je to vůbec možné, dosáhnout svých záměrů bez vnějších zásahů, tj. pouze interakcí s prostředím. Nutno však dodat, že i tato, na první pohled zřejmá vlastnost, je předmětem řady diskuzí. Jako příklad uvedeme jednu z definic autonomie: vlastnost agenta, spočívající v samostatnosti rozhodování o svém chování v rámci daného systému, bez implicitní závislosti na jakýchkoliv jiných prvcích tohoto systému.[3]
Schopnost průběžně reagovat na změny prostředí.
Schopnost uvažovat o svých dlouhodobých cílech.
Schopnost komunikovat s ostatními agenty.
Podle výše uvedených vlastností, složitosti organizace vnitřních komponent agentů a jejich racionality lze pak agenty rozdělit do následujících skupin:
Nejjednodušším typem agentů jsou tzv. reaktivní agenti. Reaktivní agent je charakterizován jako entita, která vykonává své akce výlučně na základě podnětů z vnějšího prostředí a jeho racionalita je přímým důsledkem interakce agenta s okolním světem. Agent neobsahuje žádné moduly pro tvorbu plánů ani moduly pro rozhodování, který cíl z potenciální množiny cílů bude sledovat. Agent bývá vnitřně uzpůsoben z tzv. kompetenčních modulů, což jsou moduly, které se aktivují na základě přijatého stimulu a vykonávají určitou akci. Rovněž může obsahovat interní stavy, které mohou ovlivňovat reaktivní chování agenta. Reaktivita je vedle autonomity druhou významnou vlastností agentů. Reaktivita zde tedy vystupuje jako vlastnost agenta, spočívající v jeho reakci na změny prostředí tak, aby dosáhl cíle, pro který byl navržen.[4]
Při pohledu na agenta jako na samostatnou entitu můžeme říci, že se jeho chování blíží autonomnímu chování lidí. Agent má vlastní symbolickou reprezentaci prostředí, která je realizovaná formou databáze tvrzení o světě a umožňuje mu do určité míry realizovat racionální chování. Nedostatkem je však nemožnost volit svobodně prostředky pro plnění cílů, volit svobodně postup jakým k cíli dojde a nemožnost zlepšovat své chování a funkcionalitu. Člověk je na rozdíl od takového agenta obdařen schopnostmi sebereflexe a schopností přizpůsobování intencionality směrem k jiným jedincům. Vyznačuje se mentálními stavy a postoji a právě mentální stavy a postoje jsou hlavní devizou agenta, kterého chápeme jako deliberativního. Od deliberativního agenta se rovněž požaduje určitý stupeň proaktivity. Tedy vlastnosti, která umožňuje agentovi měnit prostředí tak, aby získal určitou výhodu.[4]
Neřešenou oblastí u reaktivních i u deliberativních agentů je tzv. sociální inteligence, tedy znalosti o systému jako celku i o ostatních agentech. Tento fakt vedl k dalšímu rozšíření specifikace agentů a zavedení tzv. sociálních agentů. Sociální agent je softwarová nebo hardwarová entita udržující a rozšiřující poznatky o ostatních agentech a plánech a je schopna uvažovat o jejich cílech a motivacích. Jednotlivé poznatky mají většinou charakter adres, jmen agentů, specifikací jejich schopností, což umožňuje kooperaci vzájemných aktivit. Kromě uvedených informací má agent často k dispozici i historii předchozích interakcí (ceny transakcí, míru kooperativnosti, jejich negociační strategie, atd.), které mu umožní v budoucích akcích snáze vyhledávat pomoc ostatních, případně zmírnit negativní důsledky omezenosti svých vlastních zdrojů.
Architektura hybridního agenta kombinuje některé nebo všechny z uvedených architektur v jeden celek. Ukázkovým příkladem hybridního agenta je InteRRaP (z angl. Integration of Reactive Behaviour and Rational Planning). Hybridní agent se skládá ze dvou hlavních částí. První částí je plánovací jednotka a druhou je reaktivní jednotka. Za svého běhu agent vytvoří plán a začne jej provádět. Každý krok je přitom kontrolován reaktivní jednotkou, která sleduje, zda nedošlo v systému k nějaké změně. Pokud je tato změna v blízkém okolí agenta, bude se výstup reaktivní a plánující jednotky značně lišit. Tento rozdíl je zároveň signálem k přehodnocení plánu v plánující jednotce.[5]
Racionální agent je pak speciálním případem hybridního agenta, který musí mít všechny schopnosti výše uvedených agentů. Jeho struktura obsahuje plánovací jednotku i kognitivní jednotku včetně báze znalostí. Na základě svých poznatků je schopen se učit a pak racionálním způsobem plánovat svou činnost pro dosažení cílů.
Prostředí je vše, s čím agent přichází během své činnosti do styku. Je to tedy agentní systém bez jediného svého prvku - agenta. Prostředí z hlediska agenta pak může být:
Koordinací se chápe proces v rámci multiagentního systému, jehož cílem je vhodné přidělování limitovaných zdrojů a úloh ostatním agentům tak, aby chování systému jako celku nebylo chaotické a neúčelné, a aby systém došel k výsledku optimální cestou. V některých publikacích je pak koordinace definována jako komunikační proces, který má za následek racionální chování systému jako celku. Zdrojem správných vzorů koordinace jsou teorie přejaté z ekonomie, případně z biologie.Základním předpokladem koordinace aktivit v rámci systému je existence agenta, případně agentů, kteří mají jisté sociální povědomí o ostatních agentech a dovedou uvažovat o důsledcích předpokládaného jejich chování.
Kooperace je proces, při kterém kooperující agenti vyjednávají a rokují o společném řešení problémů nebo konfliktů. Rokující agenti mohou být řízeni centrálně nebo decentralizovaně. Každý agent ve skupině má přesně definovanou roli, kterou musí plnit.
Jedním z koordinačních procesů je vyjednávání. Pojmem vyjednávání je přitom definován jako jakýkoliv komunikační proces vedoucí k dosažení dohody, na který lze nahlížet jako na rokování o způsobu dosažení nějakého cíle.[7]
Velmi důležitou otázkou pro multiagentní systémy je problém komunikace mezi agenty. Jednotlivé protokoly a způsoby kooperace a koordinace se o komunikaci přímo opírají a nejsou bez nějakého způsobu komunikace mezi agenty vůbec realizovatelné. Vlastní komunikace je pak charakterizována jako proces, během kterého si dva nebo více agentů vyměňují informace formou elementárních komunikačních zpráv. Jazykem pro komunikaci bývá označován tzv. ACL (Agent Communication Language). Obvykle se jedná o jazyk vyšší úrovně, který obsahuje jazykové konstrukce určené především pro vyjádření informací (dat, znalostí, závislostí mezi daty) tak, aby jednotliví agenti mohli vzájemně kooperovat, případně koordinovat svou práci. Samotný přenos zprávy je realizován standardní síťovou cestou a lze říci, že na přenosu zprávy se podílí následující vrstvy:
Nejnižší vrstva, která realizuje přenos jako posloupnost bitů a využívá k tomu nejnižší vrstvy referenčního modelu ISO/OSI, konkrétně fyzické, linkové a síťové vrstvy.
Specifikuje protokoly na aplikační úrovni a případné aplikačně závislé části, například kódování atp. Mezi tyto protokoly lze zahrnout například: HTTP Hypertext Transmintion Protocol, WAP Web Application Protocol.
Multiagentní vývojové prostředky využívají pro komunikaci vrstvy pro vzdálené volání procedur (Remote Procedure Call) v různých podobách. XML RPC, Unix RPC, Java RMI nebo CORBA
Ta již reprezentuje vrstvu nesoucí danou informaci vyjádřenou komunikačním jazykem ACL. Přenášená informace obsahuje meta informace (transportní informace, použitý jazyk v obsahu zprávy atd.) a samotnou zprávu, resp. obsah zprávy.
Poslední úroveň tvoří samotné sdělení, které agent vysílá. To může být realizováno různými prostředky a jazyky. Například XML, FIPA-SL, Lisp, Prolog, SQL atp.
Záměrem agenta tedy může být i změna vnitřního (mentálního) stavu jiného agenta. Existují dva způsoby ovlivnění:
Důvodů ke komunikaci může být několik. Rozeznáváme šest základních typů dialogu:
Vlastní komunikace je proces, během kterého si dva nebo více agentů vyměňují informace ve formě elementárních komunikačních zpráv – tzv.řečových aktů. Každá elementární zpráva má odesílatele, příjemce, obsah a informaci o typu, který určuje význam obsahu zprávy. Typy elementárních zpráv jsou:
Pokud chce agent komunikovat, musí mít schopnost nalézt partnera vhodného pro záměr. Řešení může vycházet z nástrojů pro distribuované systémy jako je vysílání (broadcasting) nebo nástěnky. Dalšími možnostmi jsou adresáře služeb nebo speciální agenti pro zprostředkování komunikace nebo pro vyhledávání služeb, tzv. mediátoři, brokeři nebo facilitátoři. Posledním známým přístupem jsou sociální modely. Nejprve dojde k vysílání uvnitř skupiny a pak při neúspěchu vysílání ostatním skupinám.[8]
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.