|
|
Zápisnica č.17
Dátum: 1.4.2005
Čas: 13:00 - 16:00
Miesto: softvérové štúdio
Prítomní:
Pedagóg: -
Ing. Ivan Kapustík (IK)
Členovia Tímu: Martin Pozor (MP), Michal Štípek (MŠ), Marián Tínes (MT), Dalibor Zahorák (DZ)
Zapisoval: Marián Tínes
Téma stretnutia:
Vyhodnotenie úloh z predchádzajúceho stretnutia:
id |
Stav |
1 |
Z dôvodu nedostatku času bola implementácia tejto úlohy zrušená, resp. odložená na neurčito. |
2 |
Boli nájdené drobné nedostatky v rozhodovacom strome hráča pri rozohrávaní lopty, ktoré spôsobovali spomínané správanie hráča. Úprava rozhodovacieho stromu hráča, tak aby vykopával efektívnejšie sa odkladá na etapu ladenia hráča. |
3 |
Bol vytvorený podrobný návrh riešenia daného problému. Vytvoriť implementáciu navrhnutého riešenia sa však nestihlo spraviť. |
4 |
Diagram rozhodovacieho stromu hráča bol dokončený. Tento diagram bude umiestnený na webovú stránku, aby ho mohol každý člen tímu používať. Vzhľadom na svoju rozsiahlosť však nebude možné použiť vytvorený diagram v záverečnej dokumentácii projektu. |
5 |
Bol vytvorený podrobný návrh algoritmu kouča pre zmenu formácií. Na základe tohto návrhu bude následne tento algoritmus implementovaný. |
6 |
Spracovanie správy na zmenu formácie v hráčovi bolo implementované až na zmenu roly hráča pri zmene jeho domovskej pozície. Zmena roly hráča sa dokončí v nasledujúcom týždni. |
7 |
Počas viacerých zápasov so súperom sa hľadali najvhodnejšie rozmiestnenia hráčov vo formácii. |
8 |
Správa pokry bola pre nedostatok času dokončená len v brankárovi. Jej dokončenie v hráčovi sa presúva do nasledujúceho týždňa. |
Priebeh stretnutia:
- Na začiatku stretnutia bol zhodnotený stav úloh z predchádzajúceho týždňa.
- Diskutovali sme o navrhnutom algoritme v koučovi, ktorý bude slúžiť na rozhodovanie sa pri zmene formácie. Algoritmus sa skladá z dvoch častí. V prvej na základe celkových štatistík hry (ako skóre, poloha lopty na ihrisku, držanie lopty jednotlivými hráčmi) kouč určí počet hráčov v obrane, v strede poľa a v útoku. V druhej etape rozhodovania potom hľadá na základe štatistík o polohách hráčov na ihrisku najvhodnejšiu polohu jednotlivých hráčov na ihrisku.
- IK navrhol vylepšenie, pre algoritmus určovania formácie koučom, v ktorom by bol do výberu domovskej pozície hráča vnesený náhodný prvok. V prípade, že sa hráč nezúčastňuje aktívne na hre (má malé držanie lopty), zmení sa jeho domovská pozícia náhodne o niekoľko metrov. Význam takéhoto posunutia domovskej pozície hráča je podobný ako pri evolučných algoritmoch.
- Pri odlaďovaní správy "pusti" sme narazili na problém, kedy sa po zakričaní správy "pusti" viacerými hráčmi naraz nerozbehol ani jeden z nich za loptou. Bolo to preto, že hráč v správe "pusti" zakričal vzdialenosť, v ktorej si myslel, že je od lopty ostatým hráčom. V prípade, že iný hráč zakričal taktiež správu pusti, tak predtým než sa zastavil porovnal svoju aktuálnu vzdialenosť so vzdialenosťou, ktorú počul v prijatej správe. Problém je práve v tom, že hráč porovnáva svoju aktuálnu vzdialenosť k lopte a nie tú, ktorú on pôvodne zakričal v správe "pusti". Takto sa totiž mohlo stať, že hráč v ďalšom kroku zle určí väčšiu vzdialenosť k lopte a preto sa zastaví. Z tohto dôvodu si bude musieť hráč pamätať svoju vzdialenosť k lopte v okamihu zakričania správy. S touto hodnotou bude potom porovnávať svoju vzdialenosť v prípade, že zakričí správu "pusti" ešte niektorý iný hráč.
- Ďalší problém v správe "pusti" sa objavil pri detekcii toho, kedy sa niektorý iný hráč dotkol lopty a hráč si zruší príznak správy "pusti". Pôvodne bolo zrušenie príznaku implementované tak, že sa príznak zruší v prípade, že hráč vidí, že loptu drží iný hráč. Takáto detekcia dotyku lopty sa ukázala ako nedostatočná, pretože zlyháva v momente ak hráč stratí loptu na chvíľu z dohľadu a v tom momente do nej niekto kopne. Tento problém sme sa rozhodli vyriešiť tak, že hráč nebude sledovať, či niekto drží loptu, ale zapamätá si smer vektora pohybu lopty v okamihu nastavenia príznaku na správu "pusti". Ak sa následne tento smer vektora výrazne zmení, znamená to, že niekto do lopty kopol a príznak správy sa zruší.
Úlohy do nasledujúceho stretnutia:
id |
Úloha |
Zodpovedný |
1 |
Dokončenie spracovania informácie o zmene formácie - zmena roly hráča. |
PT |
2 |
Dokončenie implementácie správy "pokry" v hráčovi. |
MP |
3 |
Doladenie správy "pusti" - detekcia dotyku lopty iným hráčom, pamätanie si vzdialenosti k lopte v okamihu zakričania správy "pusti" |
MP |
4 |
Doplnenie implementácie algoritmu rozhodovanie sa o zmene formácie koučom o časť, ktorá bude určovať polohu jednotlivých hráčov na ihrisku na základe štatistík o polohách súperových hráčov. |
MŠ |
5 |
Implementovať navrhnuté riešenie pre predkopávanie lopty pomocou "short kick" |
DZ |
6 |
Vytvorenie inštalačnej príručky k hráčovi. |
MT |
7 |
Vytvorenie prezentácie pre ŠVOČ, ka ždý člen tímu zo svojej časti, ktorú implementoval |
MP, MŠ, MT, PT, DZ |
Príloha: Úlohy súvisiace s formáciami
id |
Úloha |
Stav |
1 |
Zmena reprezentácie formácii v jadre hráča |
100% |
2 |
Vytvorenie predvolených formácii v novej reprezentácii |
100% |
3 |
Úprava volaní metód súvisiacich s formáciami v pôvodnom kóde |
100% |
4 |
Implementácia dynamického posunutia hráčov s ohľadom na polohu lopty |
100% |
5 |
Vytvorenie rozhodovacieho stromu, na základe ktorého bude kouč dynamicky meniť formácie počas zápasu |
80% |
6 |
V koučovi implementovať posielanie správy o nových absolútnych polohách hráčov |
100% |
7 |
Úprava zmeny heterotypov na začiatku zápasu |
0% |
8 |
Otestovať rôzne polohy hráčov vo formácii (najmä posun po osi X) |
30% |
|
|