Téměř 20 let po prvním workshopu o teoriích, architekturách a jazycích agentů (ATAL’94) na ECAI’94, který mnozí považují za počátek intenzivního výzkumu agentových systémů, jsme požádali některé z nejvýznamnějších a nejaktivnějších výzkumníků v této oblasti, aby se podělili o své názory na několik základních otázek týkajících se softwarových agentů.
Odpovědi Costina Badicy, Larse Braubacha, Giancarla Fortina a Giovanniho Rimassy poskytují poměrně ucelený pohled na stav a perspektivy výzkumu agentů a multiagentních systémů i na jejich budoucí aplikace.
- Bios
- Dotazy
- Odpovědi
- Otázka 1: Kde se dnes nachází výzkum agentových systémů a kam směřuje? Jaké jsou největší dosavadní úspěchy a neúspěchy a jaká jsou nejdůležitější ponaučení?“
- Giovanni Rimassa
- Costin Badica
- Giancarlo Fortino
- Lars Braubach
- Otázka 2: Jaké jsou nejúspěšnější aplikace softwarových agentů v reálném světě? Které jsou jejich další aplikační oblasti a jsou lidé připraveni na interakci se softwarovými agenty v každodenním životě?“
- Lars Braubach
- Giancarlo Fortino
- Costin Badica
- Giovanni Rimassa
- Otázka 3: Jaký je váš pohled na standardy agentů? Je současný stav FIPA jako orgánu IEEE uspokojivý, nebo potřebujeme něco jiného?
- Giovanni Rimassa
- Costin Badica
- Giancarlo Fortino
- Lars Braubach
- Otázka 4: Co nám ještě chybí v oblasti agentových platforem, jazyků a nástrojů?
- Giancarlo Fortino
- Lars Braubach
- Costin Badica
- Giovanni Rimassa
Bios
Costin Badica je profesorem na katedře počítačů a informačních technologií na univerzitě v rumunské Craiově. Na univerzitě v Craiově získal doktorát v oboru řídicích systémů. Jeho výzkumné zájmy jsou na pomezí umělé inteligence, distribuovaných systémů a softwarového inženýrství. Na svém kontě má více než 100 publikací v podobě článků v časopisech, kapitol v knihách a příspěvků na konferencích, více než 10 speciálních čísel časopisů, která hostoval jako editor, a také několik editovaných knih. Kontaktujte ho na adrese [email protected].
Lars Braubach je vedoucím výzkumným pracovníkem a vedoucím projektu ve skupině Distribuované systémy na Univerzitě v Hamburku. Na univerzitě v Hamburku získal doktorát z informatiky. Jeho výzkum se zaměřuje na zdokonalování softwarových technických prostředků pro vývoj distribuovaných aplikací a cílí na přenos technologií z výzkumu do průmyslu. Je spoluvynálezcem přístupu aktivních komponent, který spojuje agenty s vlastnostmi komponent a služeb, a od roku 2003 je jedním z hlavních architektů agentové platformy Jadex. Podpořil několik projektů transferu technologií s průmyslovými partnery, jako jsou Daimler a Uniique AG, a publikoval více než 80 článků na mezinárodních seminářích, konferencích a v časopisech. Kontaktujte ho na adrese [email protected].
Giancarlo Fortino je docentem počítačového inženýrství na katedře informatiky, modelování, elektroniky a systémů (DIMES) Kalábrijské univerzity (Unical) v italském Rende. Na univerzitě Unical získal doktorát v oboru počítačového inženýrství. Mezi jeho výzkumné zájmy patří distribuované výpočty, bezdrátové senzorové sítě, softwaroví agenti, cloud computing a multimediální sítě. Je autorem více než 200 publikací v časopisech, na konferencích a v knihách a v současné době působí v redakčních radách časopisů Journal of Networks and Computer Applications, Engineering Applications of Artificial Intelligence, Information Fusion a Multi Agent and GRID Systems. Je spoluzakladatelem a generálním ředitelem společnosti SenSysCal, spin-off společnosti Unical, která vyvíjí inovativní systémy založené na senzorech pro elektronické zdravotnictví a domotiku. Je starším členem IEEE. Kontaktujte ho na adrese [email protected].
Giovanni Rimassa je produktový manažer ve společnosti Whitestein Technologies. Získal doktorát v oboru informačního inženýrství na Università degli Studi di Parma. Mezi jeho profesní zájmy patří inteligentní řízení podnikových procesů, agentový middleware, inovace produktů a transfer technologií. Na agentové scéně působí od roku 1997 díky své zásadní práci na platformě JADE a publikoval více než 60 článků v časopisech a na konferencích. Je členem IEEE a IEEE Computer Society. Kontaktujte ho na adrese [email protected].
Dotazy
- Kde se dnes nachází výzkum agentových systémů a kam směřuje? Jaké jsou největší dosavadní úspěchy a neúspěchy a jaká jsou nejdůležitější ponaučení?
- Které jsou nejúspěšnější aplikace softwarových agentů v reálném světě? Které jsou další oblasti jejich využití a jsou lidé připraveni na interakci se softwarovými agenty v každodenním životě?
- Jaký je váš pohled na standardy agentů? Je současný stav FIPA jako orgánu IEEE uspokojivý, nebo potřebujeme něco jiného?
- Co ještě chybí v oblasti agentových platforem, jazyků a nástrojů?
Odpovědi
Otázka 1: Kde se dnes nachází výzkum agentových systémů a kam směřuje? Jaké jsou největší dosavadní úspěchy a neúspěchy a jaká jsou nejdůležitější ponaučení?“
Giovanni Rimassa
Vzhledem k mé profesní dráze za těch 20 let, během nichž jsem přešel z akademického do průmyslového výzkumu a poté k produktovému managementu a inovacím, se nebudu pouštět do podrobného hodnocení výzkumu agentových systémů jako celku, které mohou mnohem autoritativněji provést jiní. Raději se zaměřím na otázky, jako je obecný dopad výzkumu v této oblasti nebo přenos technologií a jejich případné přijetí v rozsáhlé oblasti konstrukce softwaru.
Z mého konkrétního pozorovacího bodu se výzkum v oblasti multiagentních systémů zjevně stal poměrně vyspělou oblastí. Po boomu v 90. letech se zdá, že se tento obor ustálil. Dnes už asi není tak výhodné zvolit si téma doktorského studia o obecných principech agentů, ani není snadné získat, řekněme, finanční prostředky EU na výzkumný projekt týkající se infrastruktury agentových technologií nebo testovacích pracovišť otevřených systémů. Vzhledem k této úrovni vyspělosti očekávám, že budoucí vývoj ve výzkumu agentových systémů bude pokračovat v teoretickém výzkumu, který bude aplikovat matematiku a základy informatiky na schematické problémy související s multiagentovými systémy, ale aplikovanější a inženýrsky zaměřené oblasti se budou muset více specializovat a orientovat na doménu. Příkladem, inspirovaným nedávnou situací ve světě, je aplikace agentové simulace pro hodnocení ekonomických a finančních rizik a rozhodování. V souvislosti s nedávnými skandály kolem globální špionáže americké Národní bezpečnostní agentury (NSA) by si navíc lidé mohli začít připomínat, že internet měl být spíše decentralizovaným systémem typu peer-to-peer než obrovskou pyramidovou hrou, v níž uživatelé předávají svá data – a nyní dokonce i výpočty – malému počtu obrovských IT korporací s pochybnou odpovědností. Je proto možné, a dokonce pravděpodobné, že základní témata výpočetní techniky týkající se sítí (pro skutečné peer-to-peer) a programovacích jazyků (pro snadnější souběžné programování na vícejádrových procesorech) se z velmi pragmatických důvodů ještě více přiblíží myšlenkám agentových systémů.
Nemohu říci, že by výzkum softwarových agentů byl zcela úspěšný, a v posledních několika letech jsem dokonce slyšel několik prohlášení o konečném neúspěchu multiagentních systémů – i když obvykle bez jasné motivace (nejvtipnější případ byl od hlavního řečníka na konferenci o autonomních výpočtech). Domnívám se, že výsledek je ve skutečnosti smíšený a vyžaduje určité rozpracování. Největší úspěchy agentové technologie spočívají v některých jejích ústředních konceptech a v tom, jak předjímaly a v některých případech dokonce řídily vývoj hlavního proudu výpočetní techniky. Porovnáme-li typické prostředí IT dnes s tím, jak vypadalo v roce 1994, zjistíme, že mnohé rysy, které tehdy výzkumníci prosazovali v multiagentních systémech, jsou dnes běžné:
- Asynchronní komunikace založená na zprávách;
- Komplexní, strukturovaná schémata pro užitečné zatížení zpráv;
- Všudypřítomná souběžnost;
- Mobilní zařízení s množstvím kontextově citlivých informací;
- Mobilní kód; a
- Větší využití myšlenek společenských věd při návrhu softwaru (modely organizace, sociální sítě, kolaborativní řešení problémů, gamifikace).
V oblasti, ve které působím – tedy v softwaru pro řízení podnikových projektů pro podniky v různých odvětvích – proběhl vývoj od tradičního pohledu na middleware přes řízení podnikových procesů zaměřené na člověka (kdy sady BPM poskytují artefakty pro zlepšení spolupráce mezi lidskými činiteli) až k současným trendům, které uznávají a zdůrazňují, že software BPM musí přinášet určitou vlastní inteligenci a adaptabilitu, aby podporoval posílené znalostní pracovníky. Předpokládaným výsledkem není nic menšího než multiagentní systémy, v nichž někteří lidští a někteří softwaroví agenti spolupracují, aby posunuli obchodní procesy kupředu.
Možná nejzajímavějším bodem selhání je, že se agentová technologie nikdy nestala „dalším OOP“ (jinými slovy dominantním programovacím stylem). Považuji za obzvláště ironické, že mnozí nyní volají po záchraně funkcionálního programování, když poukazují na limity objektově orientovaných přístupů. Agentové systémy – přebírající kroky z modelu programování aktérů – by měly být zřejmým krokem vpřed od OOP v souběžných a distribuovaných prostředích (základní „návrh podle smlouvy“ je znehodnocen, když je zapojeno více prováděcích vláken).
Podle mého názoru dva hlavní faktory přispěly k tomu, že se agentová technologie nestala akceptovaným hlavním proudem vývoje OOP. Za prvé, výzkumná komunita nebyla nijak zvlášť zaměřena na programátory; zajímala se především o algoritmy, protokoly a formální rámce, softwarové inženýrství se soustředilo na metodiky a middleware. Ve srovnání s komunitou OOP se toho v oblasti programovacích jazyků a vývojových nástrojů mnoho neudělalo. Přesto se situace částečně změnila a specializovaná subkomunita nyní usiluje o etablování softwarových agentů jako programovacího paradigmatu.
Druhé a možná důležitější je, že došlo k výraznému zhoršení přenosu technologií směrem k praktikům v průmyslu nebo příležitostným programátorům. I dnes se většina lidí obeznámených s multiagentními systémy podílela na akademickém výzkumu nebo (u mladších lidí) absolvovala univerzitní kurzy na toto téma. Srovnejte to s objektovou orientací, v níž více úrovní lidí a institucí předává, opakuje a někdy zkresluje základní výsledky základního výzkumu. Programátor aplikující například vzor Factory Method často ani nebude znát původní zápis v knize Gang of Four (E. Gamma, R. Helm, R. Johnson, J. Vlissides, Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley, 1994). Nemám pocit, že by se totéž dalo říci například o protokolu Contract Net.
Costin Badica
Většina současného výzkumu je rozprostřena do oblastí formálního modelování a logiky pro multiagentní systémy, teorie her (se souvisejícími tématy, jako je návrh mechanismů) a učení. Zájem je také o přilehlé oblasti, jako je robotika a simulace.
Myslím si, že nejslibnějšími oblastmi jsou teorie her a učení. Formální logika je hezká, ale reálné aplikace jsou omezené. Robotika a simulace také vykazují zájem o aplikace.
Pravděpodobně agentově orientované programování je velmi vzdálené tomu, co se původně očekávalo. Agentově orientované softwarové inženýrství je také dost daleko od hlavního proudu softwarového inženýrství.
Je důležité hodnotit výsledky výzkumu autonomních agentů (AA) a multiagentních systémů (MAS) v kontextu solidní informatiky. Neměli bychom s nimi zacházet jako s něčím „exotickým“, ale měli bychom je hodnotit podle pravidel informatiky. K agentům bychom neměli přistupovat pouze jako k novému technologickému paradigmatu, ale také jako k metodě analýzy a návrhu komplexních systémů. Nakonec systém navržený pomocí agentového paradigmatu lze implementovat pomocí nejmodernějších technologií, nikoli nutně agentového middlewaru nebo platforem. Nicméně agentové platformy mohou být velmi užitečné pro simulaci a prototypování.
Giancarlo Fortino
Výzkumníci se zaměřují především na stejné otázky jako před 10 lety: poskytování metod a algoritmů pro řešení modelování a analýzy (přirozených i umělých) složitých systémů z různých hledisek. Oblasti použití agentů se samozřejmě poněkud změnily, protože se objevily nové technologie a aplikační domény.
Je těžké říci, kam tento obor směřuje. Skutečně si myslím, že neexistuje jediný směr. Výzkumníci se zaměřují na stejné důležité teoretické souvislosti (formální jazyky, inženýrské metodologie, vyjednávací algoritmy, teorie her, simulačně řízená analýza emergentního chování a tak dále) a někdy se přesouvají do nových aplikačních domén – aktuálním příkladem je internet věcí -, aby řešili specifické problémy využitím „agentů“.
Po 20 letech stále nemáme jednotný agentový model – což je skutečnost, která snížila atraktivitu agentově orientovaného přístupu, konkrétně v neakademickém kontextu. Na druhou stranu bylo provedeno značné množství výzkumu (a určitý vývoj) a mnoho algoritmů a metod je skutečně k dispozici pro použití v široké škále (i neagentově orientovaných) aplikačních domén. Navíc účinnost agentového paradigmatu pro modelování distribuovaných a komplexních systémů je možná jeho největším úspěchem.
Agentové paradigma je účinné při řešení otevřených dynamických distribuovaných komplexních systémů. Není však „zabijáckým paradigmatem“, i když výzkumníci úspěšně navrhli metody, algoritmy a systémy na různých úrovních abstrakce. Některé z nich, jako například Java Agents Development framework (JADE), byly dokonce použity v reálných průmyslových aplikacích, nikoli pouze v akademickém kontextu.
Lars Braubach
Výzkum agentových systémů přichází z mnoha různých směrů. Proto se od počátku výzkumu agentů objevilo mnoho různých druhů definic pojmu agent, které se zaměřují například na umělou inteligenci, softwarové inženýrství, osobní asistenty a mentalistické pojmy (lidské vlastnosti, jako jsou přesvědčení a cíle, pokud se používají pro popis softwarových agentů). Výzkum agentů navíc zahrnuje mnoho různých tematických oblastí. Toto široké spektrum výzkumu je jednou z největších předností multiagentních systémů, ale je to také zásadní problém. Je to silná stránka, protože podpůrná komunita je široká a pokroku v mnoha různých podoblastech je dosahováno nezávisle na sobě. Na druhou stranu tato šíře přirozeně vede k heterogenitě oboru, včetně artefaktů, jako jsou programovací jazyky a nástroje, což vše znesnadňuje hodnocení výsledků. Podle mého názoru se zaměření výzkumu od počátku značně posunulo.
V prvních letech bylo agentové softwarové inženýrství velmi aktivní oblastí výzkumu (inspirovanou například zásadním článkem Yoava Shohama o agentově orientovaném programování) a výzkumníci navrhli mnoho agentových programovacích jazyků, nástrojů a metodik. Jak se však základy SE usazovaly a důsledky v praxi zůstávaly nízké, relativní význam ve výzkumné komunitě klesal. V současné době vnímám důraz na formální základy a multiagentní techniky plánování, učení a koordinace (jako ukazatel poslouží například přijaté příspěvky z 12. mezinárodní konference o autonomních agentech a multiagentních systémech).
Důležitým úspěchem multiagentních systémů je posun v myšlení o tom, jak nahlížet na složité systémy. Podporuje decentralizované architektury a představuje první specializované paradigma pro distribuované systémy. Jedním z velkých neúspěchů agentového výzkumu je neschopnost etablovat agenty jako uznávané paradigma vývoje SE. Navzdory značnému počátečnímu úsilí se tato technologie do značné míry nedostala k lidem zabývajícím se softwarem mimo samotnou agentovou komunitu. Podle mého názoru je tento neúspěch do značné míry způsoben poměrně velkou koncepční vzdáleností mezi agentovým softwarovým inženýrstvím a zavedenými paradigmaty s objektovou a komponentovou orientací.
Tato vzdálenost se projevuje na různých úrovních v programovacích jazycích pro jednotlivé agenty oproti agentovým technikám organizace a koordinace. Moje hlavní kritika se zde však týká předpokladu, že agenti by měli komunikovat pouze prostřednictvím asynchronních zpráv založených na řeči a aktu. To činí agentovou technologii nepřijatelnou pro mnohé praktiky, které vyžadují explicitní systémová rozhraní a signatury metod. Koncepční požadavek na zachování autonomie agenta je zde interpretován příliš technicky. Několik uznávaných výzkumníků si všimlo problému komunikace založené na zprávách a práce na alternativách vedla k několika různým návrhům, včetně interakcí založených na závazcích a cílech, artefaktů a aktivních komponent.
Pokud jde o získané zkušenosti, moje odpověď pochází z velmi osobního pohledu softwarového inženýrství, protože jsem od roku 2003 aktivně vyvíjel agentové aplikace a platformu. Důležitým poučením pro mě je, že agentovou technologii je třeba zjednodušit a přiblížit objektové orientaci a SOA, aby byla použitelná v praxi. To znamená, že výzkumníci by měli usilovat o snížení heterogenity a složitosti, a ne je neustále zvyšovat vymýšlením nových přístupů na všech úrovních. V současné době není agentový software vhodný pro rychlé prototypování složitých systémů, protože zahrnuje příliš mnoho přípravných činností, jako je návrh protokolu a ontologie.
Otázka 2: Jaké jsou nejúspěšnější aplikace softwarových agentů v reálném světě? Které jsou jejich další aplikační oblasti a jsou lidé připraveni na interakci se softwarovými agenty v každodenním životě?“
Lars Braubach
Na rozdíl od prognózy plánu rozvoje agentových technologií z roku 2005, která předpovídala pomalé, ale stále se zlepšující nasazení agentových technologií (od roku 2010 dosáhnou hlavního proudu), se skutečné nasazení viditelně nezvýšilo a stále bylo instalováno jen několik reálných aplikací. Dobrou zprávou je, že mnoho původních agentových společností, včetně Intelligent Automation (Cybele), Whitestein (Living Systems), TILAB (JADE), AOS (JACK), Cougaar Software a SOAR Tech, stále úspěšně aplikuje agentovou technologii ve specializovaných segmentech trhu, jako jsou telekomunikace, logistika, pracovní postupy, autonomní řízení vozidel, řízení satelitů a inteligentní podpůrné systémy.
Procedurální rozumový systém (PRS) – původ systémů BDI – byl vyvinut v NASA a úspěšně aplikován v několika kosmických aplikacích, včetně systému detekce poruch pro systém řízení reakce raketoplánu. Software NASA pro řízení misí byl také implementován agentově orientovaným způsobem s využitím rámce Brahms.
Simulace je další silnou oblastí použití multiagentních systémů. Například vytvoření filmových scén s umělými herci ve filmu Pán prstenů od společnosti Massive Software bylo působivou ukázkou použití technologie agentové simulace.
Pozoruhodné je také použití kognitivní architektury SOAR ve výcvikových (vojenských) aplikacích, které ukazuje, jak mohou agenti efektivně simulovat lidské chování v reálných scénářích. Ve vojenské oblasti najdeme několik dalších využití agentové technologie. Jedním z výjimečných příkladů je velmi komplexní software pro řízení logistiky v projektu UltraLog financovaném agenturou DARPA, který vedl k vývoji agentové platformy Cougaar.
Autonomní a cloudové výpočty, scénáře zpracování velkých objemů dat a robotika bývají velmi perspektivními oblastmi. Domnívám se, že inteligentní cloudový řídicí software typu infrastruktura jako služba (IaaS) a platforma jako služba (PaaS) by mohl z agentové technologie velmi těžit – například pro plně decentralizovanou koordinaci. Navzdory této příležitosti však velcí poskytovatelé cloudových služeb, jako jsou Google a Amazon, používají ve svých řešeních jiné alternativy k agentům.
Scénáře zpracování velkých objemů dat, které obvykle zahrnují distribuované zpracování dat, nabízejí další příležitosti. V robotice se problémy stále více přesouvají z perspektivy jednoho robota na perspektivu více robotů. Zde má multiagentní technologie dobrou šanci na plodné propojení se softwarem operačních systémů robotů.
Součinnost s autonomními systémy se bude stále více prosazovat. Například na několika webových stránkách již existují avataři, kteří napodobují lidské poradce. Interakce s virtuálními postavami samozřejmě nemusí nutně znamenat, že se v pozadí používá technologie agentů.
Giancarlo Fortino
Existuje nějaká úspěšná aplikace založená na agentech (v užším slova smyslu)? Snad můžeme poukázat na webové crawlery, které nejsou softwarovými agenty v přísném slova smyslu, nebo na JADE, což je skutečně platforma pro vytváření aplikací. Existuje mnoho aplikací založených na agentech v různých oblastech, ale je těžké identifikovat „úspěšné“ aplikace. Dalšími oblastmi použití agentů budou pravděpodobně chytrá města a internet věcí. Pokud jde o interakci se softwarovými agenty, myslím, že si na ně uživatelé zvyknou, pokud budou integrováni do interaktivních grafických uživatelských rozhraní. Lidé již používají Facebook, Twitter a mnoho dalších aplikací. Záleží na použitelnosti a frekvenci používání.“
Costin Badica
Simulace a bezpečnost jsou pravděpodobnými oblastmi pro aplikace agentů. Lidé však pravděpodobně ještě nejsou připraveni na interakci s agenty v každodenním životě. Měli bychom se také podívat na to, po čem volá tradiční výzkum rozhraní člověk-počítač (HCI), a pokusit se pochopit, které výsledky by se hodily nebo mohly uplatnit v interakci člověk-agent.
Giovanni Rimassa
Softwaroví agenti se v praxi uplatňují v mnoha oblastech. Ze své osobní zkušenosti mohu poukázat na logistické řešení společnosti Whitestein, které společnost DHL nasadila ve 27 zemích; domnívám se, že jde o největší multiagentní systém, který byl kdy nasazen pro produkční použití, pokud jde o počet uživatelů. Velmi dobrý ohlas má také naše sada pro agentově orientované řízení podnikových procesů (BPM) ve finančních službách a ve zpracovatelském průmyslu.
Ačkoli je naše sada již úspěšná, oblast softwaru BPM jako celek zatím agentové myšlenky jednoznačně nepřevzala. Přesto společnost Gartner v loňském roce změnila svůj magický kvadrant pro sady BPM a zavedla koncept inteligentního systému BPMS (zkráceně iBPMS) a od září 2013 je novinkou, že Jim Sinur (který myšlenky iBPMS ve společnosti Gartner prosazoval), Jim Odell (bývalý předseda FIPA) a další připravují knihu o další vlně BPM, kterou bude podle jejich slov agentově orientované BPM. Řízení podnikových procesů bych zařadil do popředí dalších oblastí uplatnění agentových technologií. Další oblasti vycházejí z využití simulací založených na agentech v důsledku důrazu na velká data a rychlé adaptivní rozhodování: v posledních dvou až třech letech jsme obdrželi požadavky od energetických, leteckých a finančních společností, které hledaly komplexní systémy pro podporu rozhodování s významnými simulačními schopnostmi.
Je velmi obtížné posoudit, jak jsou uživatelé na danou technologii připraveni. Na jedné straně, pokud technologie přináší skutečné inovace, uživatelé z definice nemohou být připraveni. Nicméně způsoby, jakými lidé nové nástroje konkrétně využívají, poskytnou zpětnou vazbu, která následně tyto nástroje formuje: zneužití a zneužití jsou charakteristickými znaky úspěchu. Jsem opatrný optimista, neboť vidím komplexní scénář s mnoha možnostmi, v němž budou mít největší vliv politické a společenské trendy spíše než základní technologické rysy. Je zajímavé, že letošní Gartner Emerging Technologies Hype Cycle se soustředí na vyvíjející se vztah člověk-stroj.
Otázka 3: Jaký je váš pohled na standardy agentů? Je současný stav FIPA jako orgánu IEEE uspokojivý, nebo potřebujeme něco jiného?
Giovanni Rimassa
Standardy pro agentovou technologii jsou obecně stejně užitečné jako standardy v jiných oblastech informatiky a IT. Jejich účinnost závisí na mnohem více než na kvalitě technických specifikací, aby zahrnovala podpůrná konsorcia, síťové efekty a snadné prolínání s jinými převládajícími postupy a technologiemi. U middlewaru je tento poslední bod ještě důležitější.
Většina specifikací Nadace pro inteligentní fyzické agenty (Foundation for Intelligent Physical Agents, FIPA) měla smysl v roce 2000, kdy hlavní proud IT ještě příliš nechápal koncepty vyžadované agentovou infrastrukturou; v současné době se svět nejen posunul, ale pokročil přesně tím směrem, který FIPA prosazovala. Proto by bylo nesmyslné nejen používat staré standardy v jejich současné podobě, ale dokonce se je snažit aktualizovat a vytvářet vlastní příchuť toho, co už stejně dělají všichni ostatní.
Umístění FIPA v rámci IEEE je z hlediska organizace a důvěryhodnosti velmi dobrý krok, ale byl bych rád, kdyby FIPA přepracovala své původní poslání (interoperabilita) ve světě, ve kterém jsou základní služby agentových platforem a prostředí již samozřejmostí. Prvním krokem by měla být analýza mezer: co ještě neexistuje, co by umožnilo pohodlnější realizaci multiagentních systémů v konkrétních aplikacích? Kterým prvkům z tohoto seznamu by prospěla standardizace třetí stranou? Na druhou stranu, poslední a nejaktivnější pracovní skupina FIPA, na kterou si vzpomínám, se zaměřila na metodiku a proces návrhu, což se zdá být trochu předbíháním vozu před koněm.
Costin Badica
Nemusíme se nutně řídit standardy, jako je FIPA. Jejich rozšíření bylo populární v „éře interoperability“. Myslím, že FIPA je v pořádku, ale nemyslím si, že je zapotřebí více standardů.
Giancarlo Fortino
Máme, řekněme, „standardy“, ale agenti nejsou silně ponořeni do komerčního nebo průmyslového světa – takže, opravdu potřebujeme v tomto případě standardy? FIPA je od roku 2005, kdy bylo v Budapešti rozhodnuto o jejím přesunu do IEEE, zmrazena. Myslel jsem si – a stále si to myslím – že FIPA ani samotná technologie agentů nejsou dostatečně zralé na to, aby byly přesunuty do IEEE. Myslím, že pokud chceme vytvořit kritické množství v oblasti standardizace agentů, musíme tuto organizaci znovu založit (možná s jiným názvem, i když FIPA je již v agentové komunitě známá) jako (téměř) dobrovolné úsilí – ale možná to nikoho nezajímá!“
Lars Braubach
Standardy jsou vždy důležité, aby podpořily přijetí technologie a osvobodily zákazníky od potenciálního vendor lock-in. V případě agentových technologií se standardy FIPA zabývají především komunikací mezi agenty a zajišťují, aby spolu mohly komunikovat různé platformy agentů. V roce 2013 svět tento problém jednoduše nemá, protože je nasazeno jen několik agentových aplikací a neexistuje žádná celosvětová síť nasazených agentových platforem v duchu AgentCities. Pro praxi jsou tedy tyto normy většinou irelevantní. Technologie webových služeb navíc úspěšně dosáhla interoperability v distribuovaných systémech. V tomto ohledu má velký praktický význam umožnit agentovým platformám bezproblémově externalizovat funkce jako webové služby a využívat existující webové služby k integraci s jinými systémy. To zahrnuje standardní jazyk pro definici webových služeb (WSDL) a také rostoucí počet webových služeb RESTful, protože velcí hráči, jako jsou Google a Yahoo, nabízejí více rozhraní API prostřednictvím REST. Podle mého názoru nová iniciativa pro čistě agentové standardy příliš nepřispěje k přijetí této technologie, protože řeší nedůležitý problém. Místo toho potřebujeme především standardy, které navrhují integraci se zavedenými technologiemi.
Otázka 4: Co nám ještě chybí v oblasti agentových platforem, jazyků a nástrojů?
Giancarlo Fortino
Máme toho hodně. Myslím, že je musíme aplikovat a vyhodnotit. Ve světě průmyslu se samozřejmě musíme zaměřit na (omezenou) sadu referenčních modelů a souvisejících nástrojů CASE (včetně referenční metodiky). Myslím, že to je klíčové pro širší přijetí agentové technologie.
Lars Braubach
Myslím, že chybí několik věcí – počínaje agentovými programovacím jazyky, které se těsně integrují s hlavními objektově orientovanými jazyky. Také bychom měli mít k dispozici distribuované infrastruktury průmyslové úrovně v oblasti gridů a cloudů, které využívají agentové technologie. Zejména v oblasti platformy jako služby (PaaS) jsou zapotřebí nové programovací přístupy pro vývoj distribuovaných aplikací. Zde by tuto mezeru mohly pomoci zaplnit multiagentní přístupy. S tímto aspektem souvisí i to, že nám stále chybí komplexní přístupy a nástroje pro ladění a testování distribuovaných systémů.
Costin Badica
Potřebujeme navázat na tradičnější výzkum a metody CS a vyhnout se zbytečnému vynalézání nových věcí pod agentovou hlavičkou – jak se o to někdy snaží AOSE nebo AOP.
Giovanni Rimassa
Agentní platformy by měly být přepracovány s dalším omezením, aby neznečišťovaly standardní IT infrastrukturu: být lesklé pro své pokročilé funkce, ale velmi nudné z hlediska mechanismů. Neměly by vykazovat žádnou perzistenci s výjimkou relačních systémů správy databází nebo databází NoSQL a neměly by provádět žádné předávání zpráv s výjimkou Java Message Service, SOAP nebo webových služeb RESTful. Pokud jde o jazyky a nástroje, měla by zesílit současná vlna výzkumu, která se snaží spojit programovací jazyky aktérů a agentů, s cílem vytvořit jedno nebo více kompletních vývojových prostředí, která budou skutečně vhodná pro masové přijetí. Mým osobním přáním by bylo mít jazyk pro práci s aktéry/agenty s moderním typovým systémem, který by rozlišoval mezi agentem, artefakty/službami a znalostmi/daty.