FIITMEDIA

tento tím bol založený v rámci tímového projektu v školskom roku 2005/2006 z 10 súťažných tímov sa umiestnil na prvom mieste. Ako základ pre tvorbu slúžil tím FC Farmári z predchádzajúceho školského roku. Dobre vyzerá strategická zmena formácií a subformácií na základe analýzy súpera.

  • Komunikácia hráčov

Hráči pracujú na základe akcií, ktoré organizuje hráč, ktorý je najbližšie ku lopte. Funguje na hlasovej komunikácii - hráč pri lopte oznámi ostatným hráčom aká akcia nasleduje (ak rozozná nejaký vzor).

  • Formácie

Formácie sa realizujú úpravenou neurónovou sieťou tímu FC Farmári. Realizovali viacej sietí (každú pre jednu z hlavných formácií) tak, aby sa lepšie správali proti neznámemu súperovi. Prerobili systém nahrávania najbližšiemu na výber náhodnhé smerom dopredu.

  • Vyhodnocovanie situácie

Prihrávanie sa realizuje na základe rozhodnotia hráčom (na základe odmeny a trestu) a rozhodnutia kouča (analýza formácií súpera). Vyhodnocovanie situácie je založené na rozoznávaní vzorov a súvisí s akciami (komunikácia hráčov). Tím sa navrhoval hráča libero, ktorý ľubovoľne behá po ihrisku - medzi obranou a útokom na základe aktuálnej situácie.

  • Učenie sa hráča

Hráč si pomocou - pseudonáhodného rozdelenia vyberá jednu neurónovú sieť, ktorú používa. Každej sieti je pridelená pravdepodobnosť použitia. Hráč analyzuje úspešnosť prihrávky a na jej základe zvýši alebo zníží pravdepodobnosť výberu siete. - ďalšej neurńovej siete, ktorá má rovnaké vstupy ako ostatné vyberie sieť, ktorú použije. Na základe úspešnosti sa táto "hlavná sieť upravuje".

  • Brankár

tím nevenoval pozornosť tomuto typu hráča (venoval sa útoku a nahrávkam)

  • Libero

Tím navrhol univerzálneho hráča, ktorý je v prípade potreby v obrane a v prípade potreby robí "nátlak" v útoku

  • Couch

Tím mal problém s couchom, ktorý "padal". Zistili, že to bolo zlým konfiguračným súborom.

  • Percepčná časť hráča - vstupy

Hráč rozoznáva, či je vedľa neho súper ako okolie v ktorom súper buď je, alebo nie je.

  • Akčná časť hráča - vystupy

Tím analyzoval prihrávky a čo najviac vplýva na presnosť prihrávky. Základom na výstupy sú hlavne tieto údaje: - vzdialenosť medzi hráčom na hráčom, ktorému nahráva - smer pohybu hráčov - typ prihrávky, ktorá sa má realizovať

  • Prehľadnosť kódu - dokumentácia

Dokumentácia je prehľadná a dostatočná. Vhodné sú grafy na porovnanie jednotlivých možností na základe percentuálnej úspešnosti.

  • Implementačné prostredie

Bolo zvolené C++ (ale vo Visual studiu) - pôvodné implementačné prostredie (ako FC Farmári a Stjupit dox).

Analýza zdrojových textov

V rámci rozhodovania ktorého hráča rozšírime sme sa venovali analýze existujúcich zdrojových kódov FIIT Medie. Po analýze sme našli niekoľko nedostatkov:

  • Veľmi rozsiahly kód z ktorého sa veľa častí nepoužíva
  • Výkonnosť hráča nie je veľmi veľká oproti hráčovi týmu UvA Trilearn
  • Zdrojový kód nie je nijako zdokumentovaný a chýbajú komentáre, teda na pochopenie fungovania bolo potrebného veľa času.
  • Nie je definovaný spôsob formátovania kódu takže kód má viac druhou formátovania (dá sa dokonca odhadnúť ktorý autor čo písal)
  • Redundancia kódu (napríklad neurónová sieť bola implementovaná hneď troma rozličnými spôsobmi)

Hlavné triedy a ich popis:

  • Main - hlavná trieda, spája a spravuje moduly
  • Modul - trieda ktora je základom všetkých modulov, či už na komunukáciu so serverom alebo na tvorbu a vykonávanie taktiky
  • CommandGen, Parser, ServerSocket - triedy na posielanie, príjmanie, generovanie a parsovanie správ na a zo servera
  • NeuralNetwork - používaná implementácia všeobecnej neurónovej siete
  • World - reprezentácia sveta a nástroje analýzu a predikovanie pozície hráčov a lopty
  • WorldObject, Movable, Ball, Player - reprezentácia rôznych objektov vo svete
  • Myself - reprezentácia samotného hráča, nastavovanie zorných uhlov a výpočet pozície
  • PlayerKernel - synchronizácia samotného hráča
  • PlayerSkills - stredno-úrovňové správanie hráča a jeho akcie, prihrávky, driblovanie, strelba na bránku
  • Formation - správa formácie, úprava pozície hráčov vo vnútornom stave hráča
  • PlayerTactics - vysoko-úrovňové správanie hráča, správanie hráča v rôznych situáciách (s loptou, bez lopty, v obrane), napevno dané pravidlá
  • GoalieTactics - vysoko-úrovňové správanie hráča brankára

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