Team Description of AmoiensisNQ2005 3D
AmoiensisNQ Team
Automation Department of Xiamen University
Abstract The RoboCup 3D Soccer Competition has been introduced in RoboCup2004, which provides us a new challenge. AmoiensisNQ is a RoboCup team developed by Xiamen University, which tries some new approaches to build the 3D agent. Our aim is to construct stable and flexible agent architecture for our further development and research.
Introduction
The RoboCup Simulation League 3D Soccer Competition has been held for the first time in RoboCup2004, which is an important milestone on the path to the ultimate goal of the RoboCup. 3D Soccer Competition is rather different with the traditional 2D Soccer Competition, and it is also more complex, difficult and interesting. AmoiensisNQ2005 3D Soccer Simulation Team is an eleven autonomous software agent team in the purpose of consecutive research on Multi-Agent System. It operates in a physical soccer simulation system called rcssserver3D (3D soccer server) which enables two teams of agents to play a soccer game against each other. The 3D soccer server provides a fully distributed and real-time multi-agent environment where all teammates need to cooperate to achieve the common goal of winning the game. Our team is the base agent for the future research on multi-agent distributed systems in Xiamen University, and it provides a clear interface with flexible extending ability for future development. In the next section, we explain the agent architecture of AmoiensisNQ2005. Section 3 presents the AmoiensisNQ2005 agent world model. Section 4 presents the AmoiensisNQ2005 agent skills. Section 5 describes the AmoiensisNQ2005 team strategy. Section 6 is the conclusion and future directions.
Agent Architecture
AmoiensisNQ2005 agent mainly consists of components which are communication component, world model, agent skills library, and agent decisionmaking component. The communication component is responsible for communicating with the 3D soccer server, i.e. receiving messages from the server (agent state, vision information about soccer field, football, and agents and other information send by the server) and sending command to the server (init, beam, drive, kick and so on). The world model part maintains an imprecise image of the real world, which is the foundation of decision-making. It parses the message received from the server, and then updates the world model. It also provides some prediction interfaces and other high level interfaces (such as the function to get the fastest player who can get the ball). The agent skills library provides the agent some basic and advanced skills such as "dash to some position", "kick the ball to some position with a specified 3D velocity", "shoot the goal to a specified position", and so forth. The agent decision-making component is the main part of AmoiensisNQ2005 agent, which provides agent the ability to think and behave. The 11 agents should cooperate to achieve a common goal to win the game.
World Model
The world model's function is to maintain an approximately precise mirror of the real world, and to provide the decision-making component with foundation of making decision. Our world model has three main parts:
- a. Parse the message received from the server, and then update the world model. We write a flexible and adaptable parser. What need to update are agent's state such as its battery, position and so on, all teammates and opponents' state like position and other parameters, and the play mode.
- b. As the agent's vision is limited and imprecise, we have to predict and refine the state of agent, teammates and opponents.
- c. For making decision, we provide some useful high level interfaces such as getting cycles for a player to drive to a given position or to get the football, getting the closest opponent around the agent and so forth.
Agent Skills
As the primitive commands are rather difficult for the decision-making component to use directly, we develop some high level skills which are easy and convenient to use. These skills include "dash to some position", "kick the ball to some position with a specified 3D velocity", "shoot the goal to a specified point", "dribble to some target position with a specified velocity" and so forth.
And the decision-making component should decide to take some action to gain the highest profit according to the world model.
Team Strategy
As the 3D game comes out not very long ago and we have so litter experience on it, we use very simple team strategy, just like UvA basic code's team strategy, that is, when the agent is the fastest player to get the football, and then it tries to intercept the ball; when the agent is not the fastest, it drives to its strategic position; when the agent can kick the ball, it kicks the ball directly to the opponent's goal or passes the ball to one of its teammates. As you can see, our team strategy is so simple, but it's just the start.
Conclusion and Future Directions
In sum, our aim is to construct a stable and flexible architecture for our further development and research and there are a lot of things for us to do.
In the future, we will optimize our world model to be more accurate, add more powerful skills for the decision-making component, and add better team strategy and intelligent collaboration.
In the end, a particular thank is due to the RoboCup Committee for providing such a wonderful 3D soccer platform.