Robotfoci csapat fejlesztése RoboCup környezetben

OData támogatás
Konzulens:
Dr. Harmati István
Irányítástechnika és Informatika Tanszék

Robotfoci ágensek fejlesztése kiemelkedően fontos a robotika területén, mert technológiák széles skálájának alkalmazását kívánja meg irányítási feladatok megoldásán át a képfeldolgozásig. Kiváló probléma dinamikus, kompetitív környezetben való kooperáló rendszerek vizsgálatára. Egy teljes robotfoci csapat építése és fejlesztése azonban költséges, illetve a kutatóknak sok időt és energiát kell fordítaniuk a robotok fizikai megvalósításának problémáira ahelyett, hogy a magas szintű stratégiát és kooperációt megvalósító algoritmusokra és módszerekre koncentrálhatnának.

A RoboCup nemzetközi szervezet által kifejlesztett 2 és 3 dimenziós szimulációs platform éppen ezt a problémát hivatott megoldani azzal, hogy egy egységes szoftveres keretrendszert ad a kutatók kezébe. A rendszer az alacsony szintű irányítási és képfeldolgozási feladatokat automatikusan megoldja, valamint szimulálja a játék menetét és a játékosok környezetét. Ennek eredményeként a platformra készített szoftveres autonóm ágensek megteremtik a lehetőséget magas szintű stratégiák és kooperációs módszerek fejlesztésére, vizsgálatára és tesztelésére.

Dolgozatomban az általam Java nyelven létrehozott keretrendszert és a hozzá illesztett, Matlab környezetben implementált taktikai és csapatstratégiai réteget mutatom be. A rendszer célja, hogy támogassa a Matlab környezetben – azaz annak programozási nyelvét és toolboxait felhasználva – készített stratégiák tesztelhetőségét a szabványos a RoboCup 2D szimulációs platformon, illetve ezeken keresztül segítse a multiágens csapatjátékok stratégiai szintjén alkalmazható módszerek vizsgálatát.

A kliens Java nyelven készített alacsony szintje felel az alapvető feladatok ellátásáért, úgy mint a RoboCup szerverrel való kommunikáció, a szenzorinformációk feldolgozása, a környezet absztrakt reprezentációjának tárolása és az ágens akcióinak, cselekvéseinek az ütemezése.

Erre épülve működik a Matlab nyelven készített taktikai réteg, amely a lokális állapottrajektória megtervezéséért felel. Ezen a szinten történik a világmodellben található információk alapján való következtetés, illetve az itt meghatározott komplex taktikai primitívek írják le a lokális állapottrajektória követéséhez szükséges beavatkozó jeleket, amik az alacsony szinten definiált, szabványos RoboCup cselekvések szekvenciáit jelentik.

A végső cél természetesen egy olyan csapat megalkotása, melynek autonóm módon cselekvő ágensei hosszú távú célokat képesek elérni kooperációjuk révén. Ehhez magas szintű stratégiák kifejlesztésére is szükség van, ami olyan problémákhoz vezet, mint a formációirányítás vagy elosztott ágensrendszerek optimális együttes cselekvésének meghatározása. Ezek vizsgálatára és megoldására implementáltam a szintén Matlab nyelvű, koordinációs gráf alapú stratégiai réteget, melynek feladata a csapat hosszú távú céljainak a meghatározása és lefordítása a taktikai szinten végrehajtható akciókra.

Letölthető fájlok

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