Ponuka tímu 6

1. Tim:

Tím číslo 5 sa skladá z troch študentov prvého ročníka inžinierskeho štúdia odboru informatika na FEI STU. Členovia tímu majú veľmi dobré skúsenosti s prácou v tíme a dvaja členovia tímu už minulý rok pracovali na projekte simulácie robotického futbalu.

Radoslav Kováč
Spolupracoval na viacerých väčších projektoch, ktorých úspešné vyriešenie si vyžadovalo zvládnutie práce v tíme. Počas bakalárskeho štúdia bol členom tímu, ktorý dokázal vytvoriť funkčnú implementáciu agenta simulačnej ligy Robocupu. V tomto období sa podrobnejšie oboznámil so základnými pravidlami robotického futbalu i s problematikou návrhu jeho hráčov. Momentálne pracuje na diplomovom projekte s témou "Multi-agentové systémy". Poznatky získané pri analýze tejto témy určite skvalitnia návrh architektúry agenta aj v tomto projekte. Ovláda programovacie jazyky C++, Pascal, Lisp a Prolog. Má skúsenosti s vývojovými prostrediami pre OS Windows (Microsoft Developer Studio, Borland Delphi / C++ Builder) i OS Linux (KDevelop). K zlepšeniu organizácie práce v tíme môže prispieť svojimi znalosťami systému ClearCase (firmy Rational Software Corp.) pre manažment konfigurácií dokumentov.

Dušan Lacko
V štvrtom ročníku bakalárskeho štúdia bol spolu s Radoslavom Kováčom členom tímu, ktorí v rámci predmetu Umelá inteligencia implementoval agenta simulačnej ligy robotického futbalu. Znalosťami nadobudnutými pri práci na tomto projekte by chcel prispieť k skvalitneniu architektúry navrhovaného agenta. Témy jeho záverečného a diplomového projektu sa zaoberajú neurónovými sieťami. Poznatky získané pri riešení týchto projektov by chcel taktiež aplikovať pri práci na tomto tímovom projekte (prispôsobovanie/učenie sa agenta). Skúsenosti s prácou v tíme získal pri spolupráci na mnohých (i medzinárodných) projektoch, ktoré vyžadujú rozsiahlu tímovú spoluprácu. Ovláda programovacie jazyky C/C++ (Windows - Microsoft Visual C++, GNU/Linux - GNU C++), Pascal, Prolog a Lisp. Taktiež má skúsenosti s prostriedkami pre manažment verzií dokumentov Microsoft SourceSafe (Windows) a CVS (UNIX, GNU/Linux).

Samuel Vališ

  • Narodený 19.11.1976 v Bratislave
  • Stredná škola: Gymnázium Jura Hronca v Bratislave; 1991-1994
  • Bakalárske štúdium - Fakulta elektrotechniky a informatiky Slovenskej technickej univerzity v Bratislave (FEI STU), 1995-1999, odbor Informatika, výberový blok Softvérové inžinierstvo, ročníkový projekt: Implementácia znáhodnených algoritmov
  • Znalosť platforiem: Win 32, Linux
  • Znalosť programovacích jazykov: Visual C++, Pascal, Perl, Java, Javascript, HTML, SQL, Visual Basic, Common LISP, Prolog

2. Motivácia

V súčasnosti sa stále viac využívajú autonómne roboty pri úlohách, ktoré človek nie je schopný vykonávať. Sú to napríklad roboty navrhované na prácu mimo Zeme ako Pathfinder na Marse a ďalšie podobné projekty, alebo roboty na údržbu a opravu kanalizácie, prípadne roboty na prácu v nebezpečných prostrediach a podobne.

     RoboCup je medzinárodný projekt, ktorého úloha je podpora vývoja rôznych technologických oblastí pomocou riešenia štandardných robotických problémov, pri ktorých je možné použiť veľké množstvo technológií. Na tento účel je ako problém zvolená hra futbal a je organizovaný turnaj RoboCup (Robot World Cup Soccer Games and Conferences). Základnou ideou je vytvoriť čo najviac dokonalých fyzických, ale i syntetických (programovo realizovaných) agentov, ktorí dokážu hrať futbal na vysokej úrovni. Míľnikom by malo byť zostrojenie tímu humanoidných robotov, ktoré by hrali proti najlepšiemu 'ľudskému' tímu podľa oficiálnych pravidiel FIFA, niekedy v polovici budúceho storočia. Jedna z hlavných aplikácii, kde by sa dali využiť technológie vyvíjané pre RoboCup je hľadanie a záchrana pri rozsiahlych katastrofách, čím sa zaoberá projekt RoboCup Rescue.

     Veľká motivácia je pre nás možnosť prispieť svojím projektom k vývoja nových technológii prospešných v budúcnosti pre celé ľudstvo. Tento projekt podporuje veľké množstvo oblastí vývoja moderných technológii ako multi-agentové systémy, distribuovaná umelá inteligencia, učenie, rozpoznávanie a plánovanie v reálnom čase pri dynamických zmenách prostredia, animácia a sieťovo založená interaktívna 3D grafika a veľa ďalších. Tieto technológie vznikli nedávno, avšak pri súčasnom rýchlom tempe vývoja môžeme očakávať ich veľké využitie už v blízkej budúcnosti.

     Takisto by sme radi využili skúsenosti z minulého roka, kedy dvaja členovia z nášho tímu pracovali na projekte RoboCup v rámci predmetu Umelá Inteligencia. Tieto skúsenosti nám pomôžu pri vytváraní nového vrstvového modelu agenta a pri návrhu jeho spodných vrstiev.

     Tento projekt je na našej univerzite ešte len v začiatkoch, preto do neho treba vložiť ešte veľa úsilia aby sme sa mohli vyrovnať zahraničným tímom a priniesť nové nápady a technológie, ale o to väčšia výzva je to pre náš tím.

3. Čo môžeme poskytnúť

Ponúkame malý, ale na druhej strane skúsený a kvalitný tím, ktorý má veľké predpoklady doviesť úspešne vyriešiť zadaný problém.

     Keďže časť tímu spolupracovala už minulý rok na vytvorení mužstva pre simulačnú ligu Robocupu, sú členovia tímu zväčša dôverne oboznámený s touto problematikou. To by malo významne prispieť k tomu, aby sme hneď spočiatku dokázali úspešne identifikovať základné problémy a vyhli sa tak pri návrhu závažným chybám, ktoré by sa inak prejavili až v neskorších etapách riešenia projektu.

     Počas zimného semestra na základe dôkladnej analýzy existujúcich implementácií agentov robotického futbalu vytvoríme vlastný objektovo-orientovaný návrh vrstvového modelu hráča. Pritom budeme klásť dôraz na univerzálnosť a modulárnosť zvolenej architektúry. Táto architektúra poskytne flexibilnosť pri implementácii rozličných mechanizmov pre jednotlivé úrovne rozhodovania. Ďalej sa budeme sústrediť na návrh kľúčových algoritmov zabezpečujúcich vykonávanie základných akcií hráča futbalu (práca s loptou, reakcie na súperov, atď.). Testovanie vlastností týchto algoritmov budeme vykonávať na viacerých prototypoch agentov s použitím reálneho Robocup servera.

     Našim cieľom bude vytvoriť funkčné jadro, ktoré by sa dalo ďalej použiť ako dobrý základ pri návrhu hráčov s rôznou úrovňou zložitosti. Preto sa sústredíme aj na návrh a implementáciu pomocných modulov, ktoré budú napr. vykonávať agentom najčastejšie realizované výpočty alebo zabezpečovať vizualizáciu agentovej predstavy o okolitom svete. Použitie týchto modulov zjednoduší proces vytvárania a testovania nových agentov.

     Vyvrcholením tohoto projektu bude implementácia kompletného tímu hráčov simulačného futbalu a odohranie riadneho zápasu počas letného semestra tohoto školského roka.

3.1 Predbežný návrh

     Nami navrhovaný vrstvová architektúra hráča pozostáva z siedmych vrstiev. Každá vrstva využíva služby nižšej vrstvy a ponúka svoje služby vyššej vrstve. Jasne definované rozhrania medzi vrstvami umožňujú nahradiť jednotlivé vrstvy rôznymi implementáciami, napr. vrstvy 4 až 7 môžu byť v budúcnosti nahradené skutočným hardvérovým robotom.

Popis jednotlivých vrstiev:

  1. Určuje tímovú stratégiu. Rozhoduje o rozložení hráčov na ihrisku, určuje či tím útočí, bráni, presúva sa na nové pozície, a pod.
  2. Zabezpečuje spoluprácu hráčov v tíme - umožňuje nahrávanie lopty, jednotlivým hráčom prideľuje pozície na ihrisku podľa rozloženia určeného strategickou vrstvou. Vrstvy tímovej spolupráce jednotlivých hráčov komunikujú navzájom prostredníctvom príkazu 'Say' soccer servera.
  3. Vrstva vyberá podľa požiadaviek vyššej vrstvy akciu, ktorá je najvhodnejšia v daný okamžik.
  4. Poskytuje vyššej vrstve základné akcie - vedenie lopty, pohyb po ihrisku s vyhýbaním sa ostatným hráčom a využívaním otáčania hlavy hráča. Jednotlivé akcie môžu by napr. 'presuň sa na pozíciu x, y', 'chyť letiacu loptu', 'dribling lopty' a pod.
  5. 5. Vrstva z vizuálnych a zvukových správ zasielaných serverom vytvára vnútornú predstavu hráča o stave na ihrisku. Pre objekty, ktoré sa nenachádzajú v zornom poli hráča, používa posledné známe hodnoty na interpoláciu pravdepodobnej pozície objektu. Pre každý takýto objekt taktiež vypočítava dôveryhodnosť predpokladanej pozície - čím dlhšie hráč daný objekt nevidel, tým nepresnejšia je jeho odhadnutá pozícia.
  6. Prekladá vstupné a výstupné správy medzi vnútornou reprezentáciou a správami servera. Vrstva umožňuje jednoduchú adaptáciu hráča na novú verziu soccer servera.
  7. Vrstva zabezpečuje vlastnú komunikáciu so soccer serverom prostredníctvom UDP/IP protokolu.

     Agent je implementovaný v prostredí Windows pomocou vývojového prostriedku Microsoft Visual C++.

5. Priorita tém

Členovia tímu sa dohodli na nasledujúcej priorite ponúkaných tém:

  1. Simulácia robotického futbalu
  2. Zber a spracovanie normatívnych dát pre elektromyografiu
  3. Zber a hodnotenie programov v C jazyk

6. Rozvrh členov tímu

ASS - Architektúra softvérových systémov
MRTH - Metódy rozhodovania a teória hier
MSK2 - Mobilné a satelitné komunikácie 2
MZŠ - Matematické základy šifrovania
NS - Neurónové siete
PG2 - Počítačová grafika 2
PP - Paralelné programovanie
PS3 - Počítačové siete 3

 

best viewed with open eyes
created by Jeeff
Simulacia robotickeho futbalu