AI kezdőknek · Egyéb AI technikák · Lecke 23

Többügynökös rendszerek

Egy madárraj repülését nézve könnyű azt hinni, hogy a madarak valamiféle közös tervet követnek. Valójában mindegyik csak néhány egyszerű szabályt követ a közvetlen szomszédaihoz képest, és ebből a komplex viselkedésből áll össze a raj mozgása. A többügynökös rendszerek pontosan ezt az elvet használják fel AI-ban.

Vissza a tananyaghoz


Ez a lecke a Microsoft nyílt forráskódú "AI kezdőknek" (AI For Beginners) tananyagának magyar adaptációja. Az intelligencia elérésének egyik lehetséges útja az úgynevezett emergens, vagy más néven szinergikus megközelítés, amely azon az elven alapul, hogy sok viszonylag egyszerű ágens együttes viselkedéséből a rendszer egészének sokkal összetettebb, intelligensebbnek tűnő viselkedése alakulhat ki. Ez elméletileg a kollektív intelligencia, az emergentizmus és az evolúciós kibernetika elveire épül, amelyek szerint az alacsonyabb szintű rendszerekből megfelelően összeállított magasabb szintű rendszerek valamiféle hozzáadott értékre tesznek szert.

A többügynökös rendszerek iránya az AI-ban az 1990-es években jelent meg, az internet és az elosztott rendszerek terjedésére válaszul. A megközelítés középpontjában az ágens fogalma áll, amely egy olyan entitás, amely egy adott környezetben él, azt érzékeli, és cselekvéssel hat rá. Ez rendkívül tág meghatározás, és az ágenseket sokféleképpen csoportosíthatjuk. Gondolkodási képességük szerint léteznek reaktív ágensek, amelyek egyszerű inger-válasz jellegű viselkedést mutatnak, valamint deliberatív ágensek, amelyek valamilyen logikai következtetést vagy tervezést is végeznek. A kódfuttatás helye szerint megkülönböztetünk statikus ágenseket, amelyek egy adott hálózati csomóponton dolgoznak, és mobil ágenseket, amelyek a kódjukat is át tudják vinni más csomópontokra. Viselkedésük alapján pedig beszélhetünk passzív ágensekről, amelyeknek nincs saját céljuk, aktív ágensekről, amelyek célokat követnek, és kognitív ágensekről, amelyek komplex tervezésre és következtetésre is képesek.


Hol találkozunk velük a gyakorlatban

A többügynökös rendszereket ma számos területen alkalmazzák. Videojátékokban a nem játszható karakterek jelentős része valamilyen AI-t használ, és tekinthető intelligens ágensnek. A videógyártásban komplex, tömeget ábrázoló háromdimenziós jelenetek renderelése jellemzően többügynökös szimulációval történik. Rendszermodellezésben a többügynökös megközelítést komplex modellek viselkedésének szimulálására használják, ezt a módszert alkalmazták például a Covid19 világméretű terjedésének előrejelzésére, és hasonló módon lehet modellezni egy város forgalmát is, hogy lássuk, hogyan reagál a forgalmi szabályok változására. Komplex automatizált rendszerekben minden eszköz önálló ágensként viselkedhet, ami az egész rendszert kevésbé monolitikussá és robusztusabbá teszi.


Rajzás és a NetLogo szemléltető eszköz

A többügynökös modellezés szemléltetésére kiváló eszköz a NetLogo, amely a Logo programozási nyelv egy módosított változatára épül. Ebben a környezetben úgynevezett teknősöket irányíthatunk, amelyek mozognak, és nyomot hagynak maguk után, így akár komplex geometriai alakzatokat is létrehozhatunk, ami nagyon szemléletes módja az ágensviselkedés megértésének. A NetLogo modellkönyvtára rengeteg kész modellt tartalmaz, ezek közül az egyik legszemléletesebb a rajzás, más néven flocking viselkedés, amely nagyon hasonlít a madárrajok repüléséhez.

Ennek a komplex mintázatnak a lényege, hogy minden egyes ágens, jelen esetben egy madár, csak a hozzá közel eső néhány másik ágenst figyeli, és három egyszerű szabályt követ. Az igazodás azt jelenti, hogy a szomszédos ágensek átlagos irányába fordul. A kohézió azt jelenti, hogy a szomszédok átlagos pozíciója felé igyekszik mozogni, ez egyfajta nagy hatótávolságú vonzás. A szeparáció pedig azt jelenti, hogy amikor túl közel kerül a többiekhez, megpróbál eltávolodni tőlük, ez egy rövid hatótávolságú taszítás. Ha a látótávolságot nullára csökkentjük, a madarak megvakulnak, és a rajzás megszűnik, ha pedig a szeparációt vesszük nullára, a madarak egyetlen egyenes vonalba rendeződnek. A NetLogo könyvtárában további látványos modellek is elérhetők, például a tűzijáték szimulációja, amely az egyéni tűzcsóvák együttes viselkedéseként mutatja be a jelenséget, vagy a városi forgalom modelljei, ahol minden autó egyszerű gyorsítási és fékezési szabályokat követ.


Deliberatív ágensek és a kommunikáció kérdése

A rajzási példákban szereplő ágensek nagyon egyszerűek, csak a környezet változásaira reagálnak, ezért reaktív ágenseknek nevezzük őket. Vannak azonban olyan ágensek is, amelyek képesek tervezni és következtetni, ezeket deliberatív ágenseknek hívjuk. Tipikus példa erre egy személyi asszisztens ágens, amely megbízást kap egy nyaralás megszervezésére. Ehhez kapcsolatba kell lépnie más ágensekkel, meg kell néznie, milyen repülőjegyek és szállásárak érhetők el, és a lehető legjobb ajánlatot kell megtárgyalnia, majd a tulajdonos jóváhagyása után lefoglalnia az utat.

Az ilyen jellegű együttműködéshez az ágenseknek kommunikálniuk kell egymással. Ehhez szükség van közös, szabványos nyelvre a tudás cseréjéhez, valamint tárgyalási protokollokra, amelyek különböző aukciótípusokon alapulhatnak. Emellett szükség van egy közös ontológiára is, hogy az ágensek ugyanazokra a fogalmakra ugyanazt értsék, és egy módra, amellyel felfedezhetik, mire képesek a többi ágens. A deliberatív ágensek felépítésének egyik elterjedt modellje az úgynevezett hit-vágy-szándék architektúra. A hitek az ágens tudását alkotják a környezetéről, ez lehet egy tudásbázis vagy szabályrendszer. A vágyak az ágens céljait fejezik ki, például a személyi asszisztens célja egy utazás lefoglalása, egy szállodai ágens célja pedig a profit maximalizálása lehet. A szándékok azok a konkrét cselekvések, amelyeket az ágens a céljai elérése érdekében tervez végrehajtani, ezek jellemzően megváltoztatják a környezetet, és kommunikációt indítanak el más ágensekkel.


Miért érdemes ismerni ezt a megközelítést

A többügynökös rendszerek nagyon eltérő formákat ölthetnek, és rendkívül sokféle alkalmazási területen bukkannak fel. Közös bennük, hogy az egyes ágensek viselkedését szándékosan egyszerűen tartják, a rendszer egészének komplexebb viselkedése pedig az együttműködésükből, az úgynevezett szinergikus hatásból fakad. Ez a szemlélet ma egyre fontosabb az AI ágensek világában is, amikor több önálló, egymással kommunikáló AI ágens dolgozik együtt egy összetett feladat megoldásán, ahelyett hogy egyetlen monolitikus rendszer próbálná meg mindent egymaga elvégezni.


Forrás

Ez a lecke a Microsoft nyílt forráskódú, MIT licenc alatt elérhető "AI For Beginners" tananyagának magyar adaptációja. Eredeti angol lecke. GitHub. Felhasznált magyar gépi fordítás. GitHub.


← Előző lecke Következő lecke →

Workshop

AI Transformation Day

Egésznapos, vezetőknek szóló program. Feltérképezzük, hol tart a szervezet, mi az első reális lépés, és milyen belső feltételek szükségesek a sikerhez. A nap végén konkrét, prioritizált cselekvési lista.

Érdekel a program →