Képesség alapú robot újrakonfigurálás Jason szimulációja

OData támogatás
Konzulens:
Dr. Dobrowiecki Tadeusz Pawel
Méréstechnika és Információs Rendszerek Tanszék

A dolgozat célja egy képesség alapú ágens tervezési folyamatát végig követni, így annak előnyeinek, illetve felhasználhatóságának megismerése és bemutatása. Egy ágensnél fontos lehet, hogy alkalmazkodni tudjon különféle körülményekhez, illetve szeretnénk a már korábban megírt receptor, illetve beavatkozó szerv vezérlőket több helyen is felhasználni, hogy ne kelljen teljes rendszereket tervezni, vagy újra tervezni. A dolgozatban ezért egy valós problémán alapuló alkalmazói környezetet vázoltam fel, és ebben a környezetben fogalmaztam meg feladatot a megtervezendő ágensnek. A környezetet a Jason platformon szimuláljuk, illetve ebben a szimulációban teszteljük le az ágens feladat végrehajtó képességét. A feladatban négy szcenáriót különböztettük meg. Ezek megtervezésénél a két fő szempont az volt, hogy ezek mennyire valósághűek, illetve a képesség alapú konfiguráló rendszernek megfelelő kihívást nyújtjanak. Ezt követően az ágens feladatai részfeladatokra lettek lebontva, ezt követően viszont a részfeladatokból felépítettem a képesség fát. A fa tartalmazza mind a négy szcenárióhoz tartozó részfeladatokat. A fát összeállító csomópontok között, a képességek dekomponálása érdekében, szerepelnek "AND" illetve "XOR" csomópontok, a fa (konkrét alkalmazásra) nyeshető az "XOR" csomópontok mentén. A képességfa nyesései kiadják az egyes szcenáriónál használt képességeket. A nyeséshez szükségünk van a szcenáriókat leíró paraméterekre. A nyesést végző algoritmus a fában megmaradt levelek alapján kiadja, hogy az ágens programkeretébe melyik (képesség)program részeket kell beépíteni. Ezek a program részek majd az előre meghatározott helyükre beillesztődnek az ágens kód gerincébe. A gerinc kódot magam terveztem meg a képességfa alapján, a tervezésnél a gerincet a képességfa csomópontjainak rendszere adja, és a beillesztendő kódrészeket a fa levelei határozzak meg. Ezek után létrehoztam egy konfiguráló algoritmust, ami a fát leíró .json fájlból és a környezetet leíró paraméterekből leírja a nyesett fa paramétereit. Azokat egy másik algoritmusnak átadva, a részkódokat tartalmazó adatbázisból és a gerinckódból a Jason által futtatható .asl kódot hozza létre, ami az ágenst vezérlő programkódja. Az úgy kapott kódot a megfelelő környezetben lefuttatva letesztelhetjük, hogy az ágens mennyire képes a meghatározott feladatot végrehajtani.

Letölthető fájlok

A témához tartozó fájlokat csak bejelentkezett felhasználók tölthetik le.