building a soccer team for robocup's simulation league by tralvex yeap tay joc cing

21
Building a Soccer Building a Soccer Team for RoboCup's Team for RoboCup's Simulation League Simulation League by by Tralvex Yeap Tralvex Yeap Tay Joc Cing Tay Joc Cing

Upload: arnold-bond

Post on 16-Dec-2015

214 views

Category:

Documents


1 download

TRANSCRIPT

Building a Soccer Team Building a Soccer Team for RoboCup's for RoboCup's Simulation LeagueSimulation League

byby

Tralvex YeapTralvex Yeap

Tay Joc CingTay Joc Cing

AgendaAgenda• Introduction and Challenges.

• Architecture of RoboCup Soccer Simulator.

• Format and Regulations of the Game.

• Team Coordination and Agent Architectures.

• Brief Demonstration.

• Question and Answer.

IntroductionIntroduction

• The RoboCup Competition pits robots (real and virtual) against each other in a simulated soccer tournament.

• The aim of the RoboCup competition is to foster an interdisciplinary approach to robotics and agent-based AI by presenting a domain that requires large-scale coorperation and coordination in a dynamic, noisy, complex environment.

ChallengesChallenges

• The environment is highly dynamic.

• The perception of each player is locally limited.

• The role of each player can be different.

• Communication among players is limited, therefore each agent is required to. behave very flexibly and autonomously.

Two Approaches to Two Approaches to Building a Soccer TeamBuilding a Soccer Team

• Using Genetic Programming to learn individual and team behaviours.

• Using High-level Concepts such as Roles, Responsibilities and Strategies.

A. Using Genetic A. Using Genetic Programming to Learn Programming to Learn Individual and Team Individual and Team Behaviours [Farris et al, Behaviours [Farris et al, 97]97]• Problem with reactive, behaviour-

based approach to coordinating the soccer team.

• Learn good behaviours and coordination on their own.

• Other Learning strategies such as neural and decision trees.

Common form of Genetic Common form of Genetic Programming by John Programming by John KozaKoza• Optimizes one or more LISP-like program

trees formed from a set of atomic functions. Each tree represents the behaviour for an individual agent.

• GP optimizes individuals very similarly to GA. User supplies– the GP system with a set of atomic functions to

build individuals.

– an evaluation function to assess fitness.

Breeding operators for GP Breeding operators for GP systemsystem

• subtree crossover.

• point mutation.

• reproduction.

Co-evolution evaluation Co-evolution evaluation algorithm for algorithm for CompetitionsCompetitionsPair off all teams in the populationFor each pair,

Prepare competition in Soccer ServerLoop until evaluation is finished,

For each player on both teams,Update player with new sensor data.If the player can kick the ball,

Call the player's KICK program.Turn in the direction of the resultant vector.Kick the ball as directed by the vector.Yell out the name of teammate closest to

ball.Else if the player can see the ball

Call the player's MOVE program.Turn and dash as directed by the resultant

vector.Turn to face the ball again.

ElseTurn to look for the ball.

Update the state estimator.Gather per-move information to evaluate fitness.

Compute and return each team's fitness.Based on fitness assessments in the population, perform GP selection, mutation crossover and reproduction to produce a new population.Repeat as necessary.

B. Using High-level B. Using High-level Concepts such as Roles, Concepts such as Roles, Responsibilities and Responsibilities and Strategies [Ch’ng and Strategies [Ch’ng and Padgham, 97]Padgham, 97]• Royal Melbourne Knights designed to

interact as a team of soccer playing agents.

• Provides a framework for modelling agents using concepts of roles, responsibilities and strategies in its control of the agent’s motivation, attention and behaviour, respectively.

Motivation for using High-Motivation for using High-level Conceptslevel Concepts

• Soccer has the roles of

– defender, mid-fielder, attacker, goalee.

• These roles represent well-defined characteristics of a player’s behaviour.

• A soccer player selects a role that creates opportunities for his team to win and reduce his opponent’s opportunities.

Type of Roles, Type of Roles, Responsibilities and Responsibilities and StrategiesStrategiesRole Responsibility Strategies

Free-kick-taker take-corner pass

Attacker get-ballscore-goal

passtackleshoot

Defender defend-goalclear-ball

blockmarkpass

Player positionmove-ball

go-zonepass

Execution Model for an Execution Model for an AgentAgent

Perception

Situation

Roles of Agents Relationships

RolePossible Roles

Responsibilities

Strategy

Behaviour

Action

External World

Organisation Layer

Reactive Layer

free-ball-taker

defender

player

attacker

EIS

ESS

SSU

EIS

Organisation LayerOrganisation Layer

• handles selection of agent’s role based on situation and other agent’s role.

Relationship between Relationship between Agent RolesAgent Roles

Relation Values

Authority Dominant Equal Subservient

Cooperation Oppose Ignore Support

Derivation Generalize Unrelated Specialize

Responsibility LayerResponsibility Layer

• A set of responsibilities determines A set of responsibilities determines the set of actions required to the set of actions required to execute strategies.execute strategies.

• Once an appropriate strategy is Once an appropriate strategy is selected a mapping is created for selected a mapping is created for the agents of the strategic group to the agents of the strategic group to the parts of the strategy.the parts of the strategy.

Reactive LayerReactive Layer

• A behaviour defines the type of action to A behaviour defines the type of action to e executed by the agent without e executed by the agent without considering the subtleties in controlling considering the subtleties in controlling the uncertainty in the environment.the uncertainty in the environment.– Noise added to player’s movements and Noise added to player’s movements and

turns, deceleration of ball and player turns, deceleration of ball and player movements, movements,

– Wind factor, Stamina, Hearing decay, Vision Wind factor, Stamina, Hearing decay, Vision angle.angle.

Example: Corner KickExample: Corner Kick

1

1

1

2

3

3 2 2

An Abstract Model of the An Abstract Model of the Soccer Team [Mattalan Soccer Team [Mattalan and Borrajo, 97]and Borrajo, 97]

The robot agent can be considered as a knowledge structure defined as a set of dynamic and static attributes.

Static:N: Name of agentS: A List of its SkillsY: Knowledge about its teammatesL: Language to represent information from the world.H: Set of heuristic rules that governs the behaviour of the

agent.

So, an agent can be defined as: A = <N,S,Y,L,H> and the team of agents as <N,S,Y,L,H>+

Dynamic:Ag: Agenda that contains the acts under consideration.Q: Queues of messages (Q) received or pending to be sentI: Information about the current state of the world defined by

L.

So an agent at any moment is defined by: <A,Ag,I,Q> and the situation of the whole team as <A,Ag,I,Q>+

ReferencesReferences

[Ch'ng and Padgham, 97] S. Ch'ng, L. Padgham, "Team description: Royal Melbourne Knights," In Proceedings First International Workshop on RoboCup, IJCAI-97, W17, pp. 125-128, Nagoya Congress Centre, Nagoya, Japan, 1997.

[Farris et al, 97] J. Farris, S. Luke, G. Jackson, C. Holn, J. Hendler, "Co-Evolving Soccer Softbot Team Coordination with Genetic Programming," In Proceedings First International Workshop on RoboCup, IJCAI-97, W17, pp. 115-118, Nagoya Congress Centre, Nagoya, Japan, 1997.

[Itsuki, 1995] N. Itsuki, “Soccer Server: a simulator for RoboCup,” In JSAI AI-Symposium 95: Special Session on RoboCup, December, 1995.

[Kitano et al, 95] H. Kitano, M. Asado, Y. Kuniyoshi, I. Noda, E. Osawa, “RoboCup: The Robot World Cup Initiative,” In Proceedings of the IJCAI-95 Workshop on Entertainment and AI/ALife, 1995.

[Matellan and Borrajo, 97] V. Matellan, D. Borrajo, “An Agenda-Based Multi-Agent Architecture,” In Proceedings First International Workshop on RoboCup, IJCAI-97, W17, pp. 121-124, Nagoya Congress Centre, Nagoya, Japan, 1997.

Question and AnswerQuestion and Answer