280 likes | 416 Views
Simulatie van gedistribueerde voetbalstrategieën. Tim Vermeulen. Promotor: dr. Katja Verbeeck Copromotoren: ing. Tony Wauters, ing. Koen Vangheluwe, Opdrachtgever: ing. lic. Filiep Vincent. Academiejaar 2009 - 2010. Overzicht. Situering Opdracht Multi-agenten simulatie Opbouw software
E N D
Simulatie van gedistribueerde voetbalstrategieën Tim Vermeulen Promotor: dr. Katja Verbeeck Copromotoren: ing. Tony Wauters, ing. Koen Vangheluwe, Opdrachtgever: ing. lic. Filiep Vincent Academiejaar 2009 - 2010
Overzicht • Situering • Opdracht • Multi-agenten simulatie • Opbouw software • Strategie • Lokale intelligentie • Demo • Besluiten • Uitbreidingen en verbeteringen Simulatie van gedistribueerde voetbal strategieën
Situering • Robocup.be • DSP Valley en andere hogescholen • Small Size League Simulatie van gedistribueerde voetbal strategieën
Opdracht • Bestuderen en evalueren van andere teams • ETDP beste 6 van Small Size RoboCup 2008 • Ontwikkelen voetbal simulatie omgeving • Multi-agenten systeem: Repast • Fysische simulatie: Phys2D • Implementeren en testen eigen strategie • 2 types strategieën Simulatie van gedistribueerde voetbal strategieën
Multi-agenten simulatie • 2 delen: • De agenten • De omgeving • Eenvoudige regels resulteren in een complex gedrag • Waarom simulatie? • Hardware • Tijd Een agent is aflijnbaar en autonoom, leeft in een omgeving, kan een doel hebben en kan leren Simulatie van gedistribueerde voetbal strategieën
Opbouw software Simulatie van gedistribueerde voetbal strategieën
Opbouw software Simulatie van gedistribueerde voetbal strategieën
Phys2D (Fysische engine) Simulatie van gedistribueerde voetbal strategieën
Phys2D (Fysische engine) • Eenvoudige strategie: • Bal niet in bezit -> ga naar bal • Bal in bezit -> ga naar doel tegenstander Simulatie van gedistribueerde voetbal strategieën
Opbouw software Simulatie van gedistribueerde voetbal strategieën
Repast (Multi-agenten omgeving) Simulatie van gedistribueerde voetbal strategieën
Opbouw software Simulatie van gedistribueerde voetbal strategieën
Interface tussen Repast en Phys2D Simulated Interfaces Repast Glue Phys2D AbstractDemo BasicAgent Simulated World Model World Model Simulated Robot Commander Robot Commander SoccerDemo Player SimulatedRefereeBox RefereeBox SoccerDemoListener Listener Simulatie van gedistribueerde voetbal strategieën
Opbouw software Simulatie van gedistribueerde voetbal strategieën
Skills Simulatie van gedistribueerde voetbal strategieën
Opbouw software Simulatie van gedistribueerde voetbal strategieën
Strategie • Een speler selecteert zijn uit te voeren skills in een aantal stappen • Updaten van de state • In de huidige state de juiste actie bepalen • De juiste Skills selecteren voor het uitvoeren van de actie Simulatie van gedistribueerde voetbal strategieën
Strategie Stap 1: updaten van de state Simulatie van gedistribueerde voetbal strategieën
Update van de state • Bijhouden van alle coördinaten niet mogelijk • Continue coördinaten -> oneindig aantal toestanden • Opsplitsen van het veld in aantal delen -> 3x3 delen, 10 spelers: 26miljard toestanden • Eigen implementatie op basis van indices • Sorteer de spelers op basis van hun afstand tot een bepaald doelwit (bv.: eigen doel, bal, …) • De dichtste speler krijgt index 0, de volgende 1, … • De combinatie van deze indices vormt de toestand • Enkel relevante indices bepalen • Op basis van rol en bal bezit Simulatie van gedistribueerde voetbal strategieën
Update van de totalState • Bijvoorbeeld de totalState horende bij strategie 2 • De Role opvragen • De BallOwningState opvragen • Op basis van de Role en de BallOwningState worden een aantal playerStates bepaald • Deze worden geüpdate Simulatie van gedistribueerde voetbal strategieën
Strategie • Een speler selecteert zijn uit te voeren skill in verschillende stappen Stap 1: updaten van de state Stap 2: Policy: state -> action Simulatie van gedistribueerde voetbal strategieën
Policy • Bepaalt een actie in een bepaalde toestand • Een aantal eenvoudige regels • Bij de NewTotalState 224 regels • Te wijzigen via de GUI Simulatie van gedistribueerde voetbal strategieën
Selecteren van de juiste Skills • Een speler selecteert zijn uit te voeren skill in verschillende stappen Stap 1: updaten van de state Stap 2: Policy: state -> action Stap 3: action -> Skill Simulatie van gedistribueerde voetbal strategieën
Lokale intelligentie • Bepaald gedrag op de robot zelf regelen • Kleinere reactietijden / minder vertraging • Sensoren op de robots zelf • Gedrag dat wij lokaal implementeren: • Vermijden van de randen • Vermijden van botsingen met andere spelers • Vermijden van de bal (als het andere team uitschopt) Simulatie van gedistribueerde voetbal strategieën
Lokale intelligentie Simulatie van gedistribueerde voetbal strategieën
Demo Simulatie van gedistribueerde voetbal strategieën
Besluiten • Een simulatie omgeving bestaande uit: • Een fysische simulator • Een multi-agenten systeem • Een strategie kan eenvoudig gewijzigd en uitgebreid worden: • Toevoegen en wijzigen van Skills • Toevoegen en wijzigen van PlayerActions • Toevoegen en wijzigen van Rollen Simulatie van gedistribueerde voetbal strategieën
Uitbreidingen en verbeteringen • Skills toevoegen en inhoud van Skills uitbreiden • Path planning toevoegen • Vertraging, ruis en sampling invoeren Simulatie van gedistribueerde voetbal strategieën