tímový projekt

41
Tímový projekt Bc. Ľuboš Balát Bc. Marián Bobrík Bc. Peter Franz Bc. Gabriel Pap Bc. Ján Pidych Bc. Radoslav Kováč Bc. Dušan Lacko Bc. Samuel Vališ Simulácia robotického futbalu Tim 4

Upload: phiala

Post on 19-Mar-2016

40 views

Category:

Documents


4 download

DESCRIPTION

Bc. Ľuboš Balát Bc. Marián Bobrík Bc. Peter Franz Bc. Gabriel Pap Bc. Ján Pidych. Bc. Radoslav Kováč Bc. Dušan Lacko Bc. Samuel Vališ. Tímový projekt. Simulácia robotického futbalu Tim 4. Štruktúra prezentácie. Ciele projektu. Pre budúcnosť vyhrať tímová práca. RoboCup. 4 ligy - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Tímový projekt

Tímový projekt

Bc. Ľuboš Balát Bc. Marián Bobrík Bc. Peter Franz Bc. Gabriel Pap Bc. Ján Pidych

Bc. Radoslav Kováč

Bc. Dušan Lacko Bc. Samuel Vališ

Simulácia robotického futbaluTim 4

Page 2: Tímový projekt

Štruktúra prezentácie

Page 3: Tímový projekt

Ciele projektu

Pre budúcnosť vyhrať tímová práca

Page 4: Tímový projekt

RoboCup

4 ligy simulačná liga

klient / server UDP / IP

Page 5: Tímový projekt

Obrazky architektury thready

Page 6: Tímový projekt

Konceptuálny model systému

SoccerserverCoachPoužívateľ

Komunikačné rozhraniePoužívateľské rozhranie

Správanie

Vizualizácia

Agent

Page 7: Tímový projekt

Rozdelenie modulov systému do nezávislých vlákien

tri základné vlákna

vlákno používateľského rozhrania a vizualizácie vlákno komunikačného rozhrania vlákno správania agenta

Page 8: Tímový projekt

Architektúra systémuvlákno používateľského

rozhrania a vizualizácie

vlákno komunikačného rozhrania

ServerConnection

ServerMsgTranslator

ServerCommunicator

SoccerAgent

AgentMonitor

ServerMsg

Perception GameCommand

PerceptionSeqSentCommandSeq

GameCommandSeq

vlákno správania agenta

Page 9: Tímový projekt

Vlákna a udalosti

Vytváranie vlákien, distribúcia udalostí príslušným objektom.

Pracuje s nasledovnými objektami: udalosti – triedy odvodené z triedy

CBasicEvent vlákna – inštancie triedy CEventThread alebo

CWinThread príjemcovia správ – triedy odvodené z triedy

CEventRecipient

Page 10: Tímový projekt

Vlákna a udalosti

CEventThread

CCoordinator

CEventThread

CWinThread

CEvent Recipient

CEvent Recipient

CEvent Recipient

CBasicEvent

CBasicEvent

CBasicEvent

CBasicEvent

Page 11: Tímový projekt

Inteligencia hrača

Vnútorný model sveta Schopnosti hráča

systém schopností základné schopnosti vyššie vrstvy

Tímova stratégia formácie brankár, útočnik, obránca

Page 12: Tímový projekt

Vnútorný svet hráča

CMovingObject – pohyblivé objekty na ihrisku CWord - objekt reprezentujúci vnútorný svet

hráčaCMoving

Object

CBall CAgent

CLocalAgent

Page 13: Tímový projekt

Aktualizácia vnútorného sveta

Určenie pozície hráča Určenie uhla (Metóda najmenších štvorcov,

Čiarový algoritmus) Určenie pozície hráča (Algoritmus prieniku

intervalov) Vylepšenie presnosti

algoritmu prieniku intervalov

agent sa môže nachádzať len tu

Page 14: Tímový projekt

Aktualizácia vnútorného sveta

Pridanie dodatočných informácií zo správy sense body

Výpočet vlastností lopty Spárovanie videných hráčov s

vnútorným svetom Obnovenie pozícií hráčov vo vnútornom

svete

Page 15: Tímový projekt

Základné schopnosti hráča

Postavené nad základnými príkazmi servera s uvážením aktuálnej situácie – rýchlosť, smer pohybu

Dash – posun hráča v smere natočenia, parametrom je sila s akou sa vykoná pohyb

Turn – otočenie hráča, veľkosť skutočného otočenia závisí od aktuálnej rýchlosti

Kick – zväčšenie rýchlosti lopty

Page 16: Tímový projekt

Schopnosti na vyššej úrovni Vstupom je predstava hráča o svete Výstupom je príkaz na vykonanie,

pravdepodobnosť úspechu a predpokladaný výsledok (predstava sveta po vykonaní)

Bez lopty: SearchBall, GoTo, GoToBall,

RunToHomePosition, RetreatFromOffside S loptou:

Dribble, PassBall, KickGoal, PassBallAlongLine, PassBallToTeammate, KickAwayBall

Brankár: CatchBall, RunToAttacker, InterceptBall

Page 17: Tímový projekt

Schopnosti na vyššej úrovni

Beh na určenú pozíciu Jednoduché ohodnotenie situácie (BallKickable,

NearGoal, PlayerInWay) Zistenie prekážky v behu Odhad pozície lopty v budúcnosti Odhad pozície chytenia lopty Identifikácia najbližšieho

spoluhráča Identifikácia voľného

spoluhráčaP0=P1 P2 P3 P4 P5

B0 B1 B2 B3 B4 B5

Page 18: Tímový projekt

Tímová stratégia - formácie

Formácie: 442, 352, 334, 244, 532 CTeamPosition – nastavenie a získanie

pozície hráča CUnit – zoskupovanie hráčov do

jednotiek CFormation – údaje o type formácie CFormationSkills – zručnosti hráča vo

formácii

Page 19: Tímový projekt

Tímová stratégia - úlohy hráčov

Brankár Obránca Útočník

Page 20: Tímový projekt

Používateľské rozhranie

Hlavné požiadavky :

Zobrazovať stav agenta a jeho vnútorný svet Jednoduchá konfigurovateľnosť Zabezpečiť podporu pre ladenie – textové

správy

Výstup : Grafický Textový

Page 21: Tímový projekt

Spolupráca vizualizácia - agent

CAgentCVisPerception

Triedaokna

CVisObject

Vlákno agenta Vlákno vizualizácie

Posielanie správ

Page 22: Tímový projekt

Textové správy pre ladenie

trieda textového

oknaCStaticTextBuffer

CLogManager

Správy pre výpis

zápis do súboru

ladiace okno (MS Visual Studio)

Page 23: Tímový projekt

Vizualizácia

Page 24: Tímový projekt

Vizualizácia

Agent neznámehotímu

Page 25: Tímový projekt

Vizualizácia

Agent nášhotímu

Page 26: Tímový projekt

Vizualizácia

Vlastný agent

Page 27: Tímový projekt

Vizualizácia

Lopta

Page 28: Tímový projekt

Vizualizácia

Agent súperovho tímu

Page 29: Tímový projekt

Vizualizácia

Doplňujúceinformácie

Page 30: Tímový projekt

Vizualizácia

Hranica videnia agenta

Page 31: Tímový projekt

Vizualizácia

Vlajky okolo ihriska

Page 32: Tímový projekt

Záverečný turnaj

23.5.2001, miestnosť CPU, 4 tímy

Žraloky

Dragons

Tim4 Naive

Žraloky N 9:2 13:1 14:0Dragons

2:9 N 4:3 N

Tim4 1:13 3:4 N 14:0Naive 0:14 N 0:14 N

Page 33: Tímový projekt

Záverečný turnaj

Zhodnotenie nedostatky v správaní agentov zlé sledovanie lotpy nepresné prihrávky striktné udržiavanie formácie kvalitný brankár

Page 34: Tímový projekt

Zhodnotenie produktu

Rozšíriteľná a modifikovateľná architektúra

Podrobný vnútorný model sveta Množstvo algoritmov

Dopracovať schopnosti agenta

Page 35: Tímový projekt

Simulácia robotického futbalu

(Rozdelenie úloh?) manažment verzií komunikácia v tíme dodržiavanie štandardov problémy projektu

Manažment projektu

Page 36: Tímový projekt

Manažment verzií

problémy: silne zviazané moduly ako vyvíjať závislé moduly súbežne? ako kontrolovať vytváraný kód?

riešenie - 2 verzie: vývojová verzia - „Prototyp” riadená verzia - „Develop”

Page 37: Tímový projekt

Manažment verzií

verzia „Prototyp” nevyhnutná funkčnosť pre závislé moduly „uvolnený” návrh a rozhrania (static) súbor ToDoClasses.h

verzia „Develop” kontrola štandardov prerobený systém udalostí a

synchronizácie

Page 38: Tímový projekt

Manažment verzií

proces spájania verzií

Develop

Prototyp

1.41b

1.41p

1.41s

1.42 1.44 1.521.40

1.43b

2.09 2.122.052.02

Page 39: Tímový projekt

Komunikácia v tíme

E-mailová konferencia ([email protected])

problémy: vyhodnocovanie úloh dostupnosť výsledkov

riešenie - rozšírenie WWW stránky: evidencia úloh uchovávanie výsledkov prepojenie na konferenciu

Page 40: Tímový projekt

Komunikácia v tíme

tabuľka úlohZadaná Ukončená Úloha Stav a výsledok

15.2.2001 7.3.2001 návrh architektúryhráča

21.2.2001 Analýza prototypu(classdsc.doc)

6.3.2001 Návrh diagramu spolupráce (dflow.doc)

22.2.2001 - napísanie článkuo RoboCupe

28.2.2001 Prvá verzia(RoboCl.doc)

7.3.2001 Štruktúra ďalších kapitol (RoboCl2.doc)

28.3.2001 29.3.2001 upravit prototyppre basic skillsy

29.3.2001 Podpora pre vnútorný model(player26.zip)

Page 41: Tímový projekt

Simulácia robotického futbalu

Ďakujeme za pozornosť