Obsah

Diplomová práca - Bc. Ivan Hujsi

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

Odkaz na prácu

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:


Pre použitie kopov boli navrhnuté 2 algoritmy:


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:


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.