Kouč

Kouč účinkuje v hre ako 12. hráč ale nemá priamy prístup do hry, na druhú stranu dostáva všetky informácie o hre (o všetkých hráčoch, lopte) neskreslné šumom. Do hry môže vstúpiť iba tak že môže vlastným hráčom predať správu (najčastejšie však každých 500 cyklov). Kouč analyzuje stratégiu protihráčov na základe ich akcíí a vytvorí prípadne upraví stratégiu hráčov vlastného týmu. Stratégiu protihráča môže analyzovať buď priamo v hre alebo pomocou log súborov z iných hier.

Analýza kouča UT Austin Villa 2003

tento kouč skončil na prvom mieste koučov na sútaži RoboCup 2005

Analýza hry

Keď je kouč v online režime, dostáva správy global see a v každej tejto správe sú invormácie o všetkých hráčoch a lopte. Kouč dostáva ešte jednu správu a to o zmene herného módu. V offline režime berie príkazy miesto servera z log súboru. Tieto správy sa používajú na zistinie vysoko úrovnových udalostí v hre. Z koučovho pohladu hra postupuje ako séria priebehov. Priebeh sa zmení pri zmene hráča ktorý má loptu, pri góle, alebo pri zmene herného módu. Po každej zmene priebehu kouč analyzuje predošlý priebeh a pokúsi sa ho opísať. Kouč môže analyzovať priebeh ako driblovanie ak hráča kope loptu ale ta neopustí jeho vzdialenosť, alebo ako držanie ak hráč drží loptu niekoľko cyklov alebo ako gól ak hráč vystrelil a nastane gól alebo ako prihrávku keď hráč vystrelil a loptu chytil jeho spoluhráč, atď.

Učenie

Úlohou učiaceho algoritmu je predpovedať daľší krok súpera na základe už naučených akcií a ich postupnosti. Pre každého hráča v týme je vytvorený rozhodovací strom na zákalde jeho akcií a pomoucou týchto stromov je možné predpovedať jeho ďalší krok. Učenie sa delí na spôsoby

Útok

Pri učení útoku, sa kouč pokúša napodobniť správanie hráča s loptou. Pri analýze berieme do úvahy len prihrávky a strely na bránku. Pomocou parametrov strely a stavu sveta sa vytvorí rozhodovací strom

Každý list je akcia a každá cesta skupina podmienok ktoré musia byť splnené na vykonanie danej akcie.

Obrana

Na analyzovanie obrany sa kouč snaží modelovať stratégiu nepriatela a snaží sa rozložiť jeho obranu. Tu je dôležité zisťovať ako hráči získavajú loptu. Uvažujú sa iba prihrávky.

Ukážkový strom pre obrannú radu

Učenie formácií

Učenie formácií je podobné ako učenie obrany. Kouč sa snaží zistiť formáciu súpera ktorý porazil protihráča (v inej hre) a na základe toho sa snaží túto formáciu aplikovať na jeho tím.

Komunikácia s hráčmi

Na komunikáciu s hráčmi týmu bol vytvorený špeciálny jazyk koučov zvaný CLang[1]. Tento jazyk umožnuje zapísať pravidlá do textovej podoby tak aby ich mohli pochopiť hráči, ktorý majú impelentované rozhranie na komunikáciu s koučom. Do tohto jazyka sa zakódujú akcie ktoré sa vytvorili na základe analýzy rozhodovacích stromov. Keďže jazyk neumožnuje definovanie rôl tak je dôležité aby kouč vedel priradiť správneho hráča (identifikovaného číslom uniformy) na danú rolu v strome.

Ukážka CLang

 (define

  (definerule OffRule1 direc

   ((and (bpos (rec (pt -52.5 -34) (pt 10 34)))

         (bpos (rec (pt -52.5 -34) (pt 52.5 10))))

   (do our {5} (pass {6})))

  )

 )

Krátky popis ukážky: definuje sa nové pravidlo OffRule. Musia by byť splené 2 podmienky (pozícia lopty) a potom sa vykoná prihrávka hráča s číslom 5 hráčovi číslo 6.

Implementácia

Kedže vývoj a kouča je veľmi komplikovaný proces tak sme sa rozhodli, že ho nebudeme implementovať ale namiesto toho budeme vychádzať z hráča na báze UvaTrilearn s implementovaným modulom na komunikáciu cez CLang a to konkrétne hráčov od Sina Iravanian [3]. K takto vytvorenému hráčovi sa dá použiť už vytvorený kouč (napríklad UT Austin Villa 2003).

Zdroje

  1. RoboCup soccer server manual for soccer server version 7.07 and later, 2003 Knowledge transfer via advice taking] Mao Chen, Ehsan Foroughi, Fredrik Heintz, Spiros Kapetanakis, Kostas Kostiadis, Johan Kummeneje, Itsuki Noda, Oliver Obst, Patrickiley, Timo Steffens, YiWang and Xiang Yin.
  2. The Champion UT Austin Villa 2003 Simulator Online Coach Team vitaz turnaja koucov 2005
  3. Sina Iravanian - koučovateľní hráči

Späť na hlavnú stránku | Aktuálna verzia na našom Wiki