Diplomová práca - Bc. Ivan Hujsi

Z RoboCupTP wiki
Prejsť na: navigácia, hľadanie

Rozšírenie schopnosti hráča simulovaného robotického futbalu narábať s loptou


Download pdf


Táto diplomová práca sa zameriava najmä na vylepšenie robota spracovať loptu, pohybovať sa s ňou a odkopnúť ju. Jej hlavnou časťou bolo navrhnúť, implementovať a otestovať pohyby vhodné na interakciu s loptou.


Počas toho vyniklo 19 nezávislých pohybov:

  • 11 kopov - prihrávanie a streľbu z rôznych pozícií lopty v okolí hráča,
  • 4 posunutia, 1 napravenie - pohyby na posúvanie lopty okolo hráča, aby ju nemusel obchádzať, či nastavovať sa na správny bod pre kop,
  • 3 základné pohyby - chôdza, vstávanie z brucha, vstávanie z chrbta.


Pre použitie kopov boli navrhnuté 2 algoritmy:

  • algoritmus výberu smeru kopnutia - bol úspešne implementovaný (podľa testovania úspešne), no je časovo náročný. Tento problém by bol miernejší presunutím algoritmu zo skriptu priamo do hráča.
  • algoritmus výberu kopu - nebol však implementovaný, keďže vyplynulo, že je dôležitejšia rýchlosť chôdze ako škála pohybov umožňujúcich kopnutie do lopty. Väčšina svetových tímov používa najviac 2 kopy.


Algoritmus výberu smeru kopnutia

Ihrisko je rozdelené na mriežku - zvolil si delenie po 0,25, a teda sa rozdelilo na 3456 polí. Celé ihrisko je staticky ohodnotené na začiatku a počas hry sa nemení.

V druhej fáze sa vyberie obmedzená plocha, v ktorej sa hľadá bod s najväčšou váhou. Pri výbere plochy predstavujú dôležitú úlohu pozícia lopty, vzdialenosť od súperovej brány a pozície súperov a vzdialenosť od súperov. Vybraný útvar predstavuje sériu kruhových výsekov. Keďže ideme kopať od miesta, kde sa nachádza lopta a maximálny možný kop dosiahnutý pri testovaní bol dlhý len 5,7 jednotiek ihriska, vyberajú sa len body v 6 metrovom okruhu okolo lopty.

V tretej a finálnej fáze algoritmu sa vyhodnotí pôsobenie agentov, ktorí predstavujú dynamicky sa meniaci faktor, každý agent podobne ako brána pôsobí ako príťažlivý či odpudivý magnet. Spoluhráči sú príťažlivými magnetmi a súperi odpudivými. Ich pôsobenie sa vyhodnocuje už iba pre vybranú množinu bodov mriežky. Nakoniec sa na základe váh vyberie bod mriežky s najväčšou váhou a ten predstavuje náš cieľ.

Algoritmus funguje, ale je pomalý a preto bude pre turnaj vylúčená posledná fáza ohodnocovania. Vzhľadom na časovú náročnosť algoritmu je vhodné do budúcnosti uvažovať nad znížením počtu bodov mriežky prípadne úplným odstránením prvej fázy a ohodnocovať iba smery (ako to je u tímu 2D Gang of Six a Jahodoví princovia), ktorými hráč môže kopnúť, nie pozície kam môže kopnúť. Ďalším možným rozšírením, ktoré prinesie spresnenie informácie kam kopnúť, ale ďalej spomalí algoritmus je implementovať rôzne pôsobiská podľa natočenie hráčov a ich stavu (relevantným stavom je fakt, či hráč stojí alebo spadol).


Algoritmus výberu kopnu

Z pozorovaní svetových tímov vyplynulo, že pri hre malého počtu hráčov nie je potrebné, aby hráč používal viac ako dva druhy kopnutí a kľúčovým pohybom nie je kop do lopty, ale rýchlosť a presnosť chôdze. Hráč používa v hre jediný kop a to kop do diaľky.


Každý kop sa skladá minimálne z 3 fáz kopu:

  • príprava - fáza nasleduje po postavení sa k lopte,
  • kopnutie - najrýchlejšia fáza, v ktorej prichádza ku kontaktu hráča s loptou,
  • dokončenie - po odkopnutí lopty sa hráč vracia do hracieho postavenia.


Všetky kopy a pohyby boli implementované a otestované s pohybmi, ktoré boli implementované u agenta tímu Critical Error. Zhoršenie oproti týmto kopom nastalo len v jedinom prípade, a to pri kope do diaľky. Toto zhoršenie je však minimálne.

Osobné nástroje
Menné priestory

Varianty
Operácie
Navigácia
Nástroje