next up previous contents
Next: Implementace agenta Up: Systém BANG2 Previous: Základní rysy systému   Obsah

Komunikace mezi agenty

Jak už bylo řečeno, důležitou vlastností systému je možnost komunikace mezi agenty.

Agenti spolu komunikují vlastním jazykem. Zprávy zasílané mezi agenty jsou srozumitelné i pro člověka, jejich syntaxe vychází z jazyka XML. Typy zpráv jsou podmnožinou standarndního komunikačního jazyka agentů ACL.

Samotná komunikace pak může probíhat jak synchronně tak asynchronně. Podrobné informace lze najít v [12, oddíl HowTos, stránka call].

Pro zvýšení efektivity je implementováno také binární rozhraní. Toto rozhraní má své klady i zápory. Kladem je především zvýšení rychlosti v případech, kde si agenti potřebují předat větší datovou strukturu. Použitím binárního rozhraní odpadá převod této struktury na XML řetězec a zpět. Pokud se oba agenti nacházejí na stejném stroji, předává se pouze ukazatel. Nevýhodou je, že agent, který taková data příjímá, musí být obeznámem s jejich strukturou. Dokumentace binárního rozhraní je v [12, oddíl HowTos, stránka fastcall].

Nyní se podívejme na syntaxi zpráv předávaných mezi agenty. Jedná se o XML řetězce. Kořenový element určuje typ zprávy. K dispozici jsou zprávy typů request (požadavek na provedení příkazu), inform (zpráva), query (dotaz), ok (odpověď v případě, že nedošlo k chybě) a ugh (odpověď po výskytu chyby). Zbytek zprávy obsahuje příkazy, informace, apod.

Uveďme nyní typy zpráv, se kterými se budeme setkávat při popisu jednotlivých agentů v části 6.2.

Ještě uveďme formát zprávy spojené s binárním rozhraním. Příkladem budiž agent představující tréninkovou množinu. Taková tréninková množina je schopna předat tréninkový vektor pomocí binárního rozhraní. Agent, který chce k této tréninkové množině přistupovat, musí nejprve požádat o tuto službu pomocí zprávy <query> <bin> <request> <getvector/> </request>
</bin> </query>. Poté obdrží potřebné údaje a další komunikace probíhá přes binární rozhraní.


next up previous contents
Next: Implementace agenta Up: Systém BANG2 Previous: Základní rysy systému   Obsah
Petra Kudova
2001-04-19