Miracle3D

Xing Chen, Siying Chen, TingTing Zu, Fan Wang, Xiao Zhou, Yong Deng

School of Computer Science and Technology Heifei Normal University, China


Abstract This paper describes Miracle3D team and the developments by the we did. It also describes the changes of the architecture of the Miracle3D team. In addition, it includes researches about Role Assignment in Miracle3D.

1 Introduction

Miracle3D is a simulation soccer 3D team was established in 2012, and attended several competitions. Miracle 3D simulation robot soccer team participated in the 2012 ChinaOpen competition for the first time. Miracle3D get Anhui Robocup3D championship in 2013, the same year, get Robocup3D national first prize in China and Robocup3D IranOpen2014 the final eight. Miracle3D get Anhui Robocup3D bronze in 2014 and got fourth in RoboCup China Open 2014 3D Simulation Soccer, we got the 7th in RoboCup China Open 2015. And we got the 7th in Robocup 2016 Simulation 3D.

There are some problems with our team code. These problems are what we are studying. We haven't found the good solution for some problems, such as the precise positioning of robot and ball(particle filter for localization), Long-Distance Kicking, the fastest walks. We are constantly improving our code, but we still have many problems that can't be resolved in short time. So we decided to refer to the base code UT Austin Villa released. In order to speed up to development of the team, and focus on multiagent system research. now, we are using the base code UT Austin Villa released for research, the base code released on github: https://github.com/LARG/utaustinvilla3d , and added strategies in the code.

The remainder of the paper is organized as follows. In Section 2 a overview of UT Austin Villa RoboCup 3D Simulation Base Code Release is given. Section 3 introduce our team architecture. Section 4 introduce team's role assignment. The future works is in Section 5.

2 Overview

UT Austin Villa RoboCup 3D Simulation Base Code Release is highly modular and provides us with the flexibility to modify and develop easily.

The following features are included in the release: [1]

  • Omnidirectional walk engine based on a double inverted pendulum model [2]
  • skill description language for specifying parameterized skills/behaviors
  • Getup (recovering after having fallen over) behaviors for all agent types
  • A couple basic skills for kicking one of which uses inverse kinematics [3]
  • Sample demo dribble and kick behaviors for scoring a goal
  • World model and particle filter for localization
  • Kalman filter for tracking objects
  • All necessary parsing code for sending/receiving messages from/to the server
  • Code for drawing objects in the RoboViz [4] monitor
  • Communication system previously provided for drop-in player challenges 4
  • An example behavior/task for optimizing a kick

3 Team Architecture

The low layer comprises a communication module and a receiving execution module. It acts as the last level of the structure layer, and its role is server communication, its function includes two aspects: sending and receiving, as a receiver, the communication module needs to obtain information from the server, send a message to the world after the analytical model; as the transmitter, Agent decision feedback to Server through the communication module, information parsed once again passed to the world model, the world model is updated according to the information from the communication module.

The skills layer is also the basic action layer, the player's basic movements and skills was defined in this layer, such as walking, shooting, positioning, intercepting etc. The skills layer is the basis of the whole decision-making layer, and it is the bridge between the low layer and decision layer. But whether it is the analysis of the message, or visual positioning will have a deviation, which would impact the decision-making, we need to use the relevant algorithm to reduce the impact of errors. The decision layer is equivalent to the human brain, which is responsible for coordinating the team strategy, according to the world situation and make different stations, pass, dribble etc.

Fig. 1. Team Architecture of Miracle3D
Fig. 1. Team Architecture of Miracle3D

4 Role Assignment

There are many ways for Role Assignment, such as Scaleable Collision-avoiding Role Assignment with Minimal-makespan (SCRAM) role assignment functions[3], Prioritized Role Assignment for Marking[4], Multi-robot dynamic role assignment based on path cost[5]. Now, there is an idea make us using a simple way for role assignment. We assign agents to the position determined by the ball's position. In the following figures, three red circle agents follow the ball, four yellow circle agent go to the position relate to ball.

Fig. 2. role assignment by ball's position
Fig. 2. role assignment by ball's position
Fig. 3. role assignment
Fig. 3. role assignment

5 Future Works

Now many teams have their own ways to optimize the kick action. they can kick the ball far away, the action is completed in a short time. We are studying the action of robot kicking: selecting a kick point on the ball, planning the trajectory. We aim to implement dynamic role assignment, we also implement the kick trajectory based on bessel curves [5] [6] and optimize the kick action based on EMA-ES [6][7].

Acknowledgements

Now, our team is based on base code UT Austin Villa released. Thank UT Austin Villa's teammates for their released stable base code and publication they provided. We acknowledge their effort, publications and their theories.

References

  1. Patrick MacAlpine , Peter Stone. UT Austin Villa RoboCup 3D Simulation Base Code Release.In: Proceedings of the RoboCup International Symposium 2016 (RoboCup 2016),Leipzig, Germany, July 2016.
  2. MacAlpine, P., Barrett, S., Urieli, D., Vu, V., Stone, P.: Design and optimization of an omnidirectional humanoid walk: A winning approach at the RoboCup 2011 3D simulation competition. In: Proceedings of the Twenty-Sixth AAAI Conference on Artificial Intelligence (AAAI-12) (July 2012)
  3. MacAlpine, P., Urieli, D., Barrett, S., Kalyanakrishnan, S., Barrera, F., Lopez-Mobilia, A., Ştiurcă, N., Vu, V., Stone, P.: UT Austin Villa 2011: A champion agent in the RoboCup 3D soccer simulation competition. In: Proc. of 11th Int. Conf. on Autonomous Agents and Multiagent Systems (AAMAS 2012) (June 2012)
  4. Stoecker, J., Visser, U.: Roboviz: Programmable visualization for simulated soccer. In: Rfer, T., Mayer, N., Savage, J., Saranl, U. (eds.) RoboCup 2011: Robot Soccer World Cup XV, Lecture Notes in Computer Science, vol. 7416, pp. 282–293. Springer Berlin Heidelberg (2012)
  5. http://www.tsplines.com/resources/class_notes/Bezier_curves.pdf
  6. Juan Liu.: The Motion Planning and Cooperation Mechanism of Biped Robots in RoboCup3D Simulation Environment, 2014.
  7. Mike Depinet, Patrick MacAlpine, and Peter Stone.: Keyframe Sampling, Optimization, and Behavior Integration: Towards Long-Distance Kicking in the RoboCup 3D Simulation League. In: Proceedings of the RoboCup International Symposium 2014 (RoboCup 2014), Joao Pessoa, Brazil, July 2014.