Simulatie van gedistribueerde voetbalstrategieën

28
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

description

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 - PowerPoint PPT Presentation

Transcript of Simulatie van gedistribueerde voetbalstrategieën

Page 1: Simulatie van gedistribueerde voetbalstrategieën

Simulatie van gedistribueerde voetbalstrategieën

Tim Vermeulen

Promotor: dr. Katja VerbeeckCopromotoren: ing. Tony Wauters, ing. Koen Vangheluwe,Opdrachtgever: ing. lic. Filiep Vincent Academiejaar 2009 - 2010

Page 2: Simulatie van gedistribueerde voetbalstrategieën

Tim Vermeulen Simulatie van gedistribueerde voetbal strategieën 2

OverzichtSitueringOpdrachtMulti-agenten simulatieOpbouw softwareStrategieLokale intelligentieDemoBesluitenUitbreidingen en verbeteringen

Page 3: Simulatie van gedistribueerde voetbalstrategieën

Tim Vermeulen Simulatie van gedistribueerde voetbal strategieën 3

SitueringRobocup.be

DSP Valley en andere hogescholen

Small Size League

Page 4: Simulatie van gedistribueerde voetbalstrategieën

Tim Vermeulen Simulatie van gedistribueerde voetbal strategieën 4

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

Page 5: Simulatie van gedistribueerde voetbalstrategieën

Tim Vermeulen Simulatie van gedistribueerde voetbal strategieën 5

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

Page 6: Simulatie van gedistribueerde voetbalstrategieën

Tim Vermeulen Simulatie van gedistribueerde voetbal strategieën 6

Opbouw software

Page 7: Simulatie van gedistribueerde voetbalstrategieën

Tim Vermeulen Simulatie van gedistribueerde voetbal strategieën 7

Opbouw software

Page 8: Simulatie van gedistribueerde voetbalstrategieën

Tim Vermeulen Simulatie van gedistribueerde voetbal strategieën 8

Phys2D (Fysische engine)

Page 9: Simulatie van gedistribueerde voetbalstrategieën

Tim Vermeulen Simulatie van gedistribueerde voetbal strategieën 9

Phys2D (Fysische engine)

Eenvoudige strategie:– Bal niet in bezit -> ga naar bal– Bal in bezit -> ga naar doel tegenstander

Page 10: Simulatie van gedistribueerde voetbalstrategieën

Tim Vermeulen Simulatie van gedistribueerde voetbal strategieën 10

Opbouw software

Page 11: Simulatie van gedistribueerde voetbalstrategieën

Tim Vermeulen Simulatie van gedistribueerde voetbal strategieën 11

Repast (Multi-agenten omgeving)

Page 12: Simulatie van gedistribueerde voetbalstrategieën

Tim Vermeulen Simulatie van gedistribueerde voetbal strategieën 12

Opbouw software

Page 13: Simulatie van gedistribueerde voetbalstrategieën

Tim Vermeulen Simulatie van gedistribueerde voetbal strategieën 13

Interface tussen Repast en Phys2D

Phys2D

AbstractDemoAbstractDemoSimulated Interfaces

RepastGlue

SoccerDemoSoccerDemo

WorldModel

Robot Commander

Simulated WorldModel

Simulated Robot

Commander

Simulated RefereeBox

BasicAgentBasicAgent

PlayerPlayer

SoccerDemo Listener

SoccerDemo Listener

RefereeBox

Listener

Page 14: Simulatie van gedistribueerde voetbalstrategieën

Tim Vermeulen Simulatie van gedistribueerde voetbal strategieën 14

Opbouw software

Page 15: Simulatie van gedistribueerde voetbalstrategieën

Tim Vermeulen Simulatie van gedistribueerde voetbal strategieën 15

Skills

Page 16: Simulatie van gedistribueerde voetbalstrategieën

Tim Vermeulen Simulatie van gedistribueerde voetbal strategieën 16

Opbouw software

Page 17: Simulatie van gedistribueerde voetbalstrategieën

Tim Vermeulen Simulatie van gedistribueerde voetbal strategieën 17

StrategieEen 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

Page 18: Simulatie van gedistribueerde voetbalstrategieën

Tim Vermeulen Simulatie van gedistribueerde voetbal strategieën 18

Strategie

Stap 1: updaten van de state

Page 19: Simulatie van gedistribueerde voetbalstrategieën

Tim Vermeulen Simulatie van gedistribueerde voetbal strategieën 19

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

Page 20: Simulatie van gedistribueerde voetbalstrategieën

Tim Vermeulen Simulatie van gedistribueerde voetbal strategieën 20

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

Page 21: Simulatie van gedistribueerde voetbalstrategieën

Tim Vermeulen Simulatie van gedistribueerde voetbal strategieën 21

StrategieEen speler selecteert zijn uit te voeren skill in verschillende stappen

Stap 1: updaten van de state

Stap 2: Policy: state -> action

Page 22: Simulatie van gedistribueerde voetbalstrategieën

Tim Vermeulen Simulatie van gedistribueerde voetbal strategieën 22

Policy

Bepaalt een actie in een bepaalde toestand

Een aantal eenvoudige regels– Bij de NewTotalState 224 regels

Te wijzigen via de GUI

Page 23: Simulatie van gedistribueerde voetbalstrategieën

Tim Vermeulen Simulatie van gedistribueerde voetbal strategieën 23

Selecteren van de juiste SkillsEen 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

Page 24: Simulatie van gedistribueerde voetbalstrategieën

Tim Vermeulen Simulatie van gedistribueerde voetbal strategieën 24

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)

Page 25: Simulatie van gedistribueerde voetbalstrategieën

Tim Vermeulen Simulatie van gedistribueerde voetbal strategieën 25

Lokale intelligentie

Page 26: Simulatie van gedistribueerde voetbalstrategieën

Tim Vermeulen Simulatie van gedistribueerde voetbal strategieën 26

Demo

Page 27: Simulatie van gedistribueerde voetbalstrategieën

Tim Vermeulen Simulatie van gedistribueerde voetbal strategieën 27

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

Page 28: Simulatie van gedistribueerde voetbalstrategieën

Tim Vermeulen Simulatie van gedistribueerde voetbal strategieën 28

Uitbreidingen en verbeteringen

Skills toevoegen en inhoud van Skills uitbreiden

Path planning toevoegen

Vertraging, ruis en sampling invoeren