UI-AI 3D Simulation Team
Ebrahim Bararian, SayyedMohammad Hossein Mirshahjaafari, Ebrahim Radi, Hamed Shahbazi, Mohammad Malekpoor, Hamid Khadem, Maryam Negahbani
faculty of Computer, University of Isfahan, Iran
http://hkamal.persiangig.com/ · https://launchpad.net/littlegreenbats
Abstract UI-AI 3D team is built by the year 2010 in University of Isfahan to work on Artificial Intelligence subjects involved in humanoid agent development. At first we had some problem with working with the server. After solving these primitive problems, we started team development. Humanoid agent development consists of low level skills high level tactics development. First we chose a good base for our team development; libbats 2.0. After this step for every team, the main object to achieve is an algorithm to walk. We implemented an omni directional walk. At this step, two new member had been added to our team, because they are experienced in 2D-Soccer-Simulation and will develop high level reasoning algorithms for the team. Now the team thinks about a good and flexible shot for low level skills and cooperation mechanisms of our agents. Also, Mr.Shahbazi has an idea of developing a general framework for achieving low level skills using robot simulation softwares.
1. Introduction
UI-AI built since 2010, by some experienced students of University of Isfahan to work on Artificial Intelligence objectives involved in 3D-Soccer-Simulation. The team members are Hamed Shahbazi PHD student of University of Isfahan who is working on efficient omini-directioanl walking algorithm, Ebrahim Bararian , Ebrahim Radi and Sayed Mohammad Hossein Mirshah jafari who have the experience of contributing in Kharazmi Competitions, Hamid Khadem and Maryam Negahbani who contributed in some 2D-Soccer-Simuations league and Mohammad Malekpoor.
The team has developed an efficient omni-directional walking algorithm for the agent. Of course, there is still space to work on its optimization to have a more speedy and stable walking. The team used Genetic algorithm[1] to optimize the parameters and looking forward to use reinforcement[2] learning algorithm to compare the results.
The team competed in Kharazmi 2010 using just this walking algorithm and without an efficient team strategy. As number of agents increased since 2010 competitions, cooperation issues will again be very important for the efficiency of the team. So the team added two new member, Hamid khadem
and Maryam Negahbani that have experience of attending 2D competitions to work on High level issues.
2. Research Directions
New research directions include research on a good vision algorithm, an efficient shot, Agents cooperation and a general framework for low level skills learning.
Agents need a good vision algorithm to know where the important objects are now; other players and the ball. In this algorithm we should consider the importance of objects. For instance the ball has more importance than other objects.
Agents cooperation got more important as the number of agents has been increased by 2010 competitions. So a good reasoning algorithm will have great effect on team's performance.
3. UI-AI 3D Agent Architecture
One of the problems that the team faced with, was choosing a good base to work on. As libbats2.0 has good software engineering and solved some basic problems, was a good choice. in this base code, the problem made by restricted vision is solved using gyro matrix and just one flag. Also, noise has been considered using kallman filter.
Here is a view of the agent base architecture:
The main libbats modules and their relations are shown in above Figure. As you can see, they can be divided into several layers:
- 1- Communication between the simulator and an agent is done using an ASCII, S-expression based protocol through a TCP/IP connection. The AgentSocketComm module handles setting up this connection, reading and writing messages, and parsing these messages into and from more managable data structures.
- 2- Input and output is handled at a slightly higher level. On the input side, the Cochlea extracts all data from the still text-based messages supplied by the AgentSocketComm and turns that data into readily usable binary values. The Cerebellum is used to gather control commands, work out contradictions if necesary and turn them into the text based structures that the AgentSocketComm understands.
- 3- The 4 modules in the third layer use the data from the Cochlea to update models of the current state of the world, i.e. the current time, the state of the agent's body, the state of the world and the game, and the location of all objects in the field.
- 4- Finally, at the highest level, the actual intelligence of the agent is implemented. An instance of HumanoidAgent has access to all information gathered in the different modules, decides upon actions based on this information, and submits these actions to the Cerebellum.
Also two other units has been added to this architecture; low level skills and strategy Units.
4. Bipedal Walking
There are different methods to develop walking including inverse kinematics and Fourier Series. Inverse kinematics has some disadvantages like being robot model-dependent and that it needs much complicated computations that makes this method slow. As we get introduced to Abbas Abdolmaleki before AUTCUP2010 and he was our team leader in that competition, we used his experiences in MRL 3D team. He introduced us how we can use Fourier series to have a stable fast omni-directional walking[4].
As the walking process is repeating, Truncated Fourier Series can be used to generate a pattern for walking. It results in some formulas in Sagittal, Frontal and Transverse planes for legs joints.
Also hand movements have great effect in being stable of the agent.
These formulas get together and the parameters for the final formula gets optimized using genetic algorithm.
Yet, it needs a high level controller to have an omni-directional walking.
5. Conclusion
As it is a young team it has a very fast improvement in less than a year.
We developed a stable fast omni-directional walking and now looking forward for more optimized walking and an efficient shot.
After two new member has been added, now we work on agents cooperation that plays important role in team successfulness.
Although the team concentrated on High and low level skills but beside this pays attention to agent architecture because of the importance of software engineering.
In future we will have a general platform that makes creating low level skills easier.
References
- Genetic Algorithm,http://hkamal.persiangig.com/Visited On January 2011.
- Sutton R, Barto A: Reinforcement Learning, An Introduction
- https://launchpad.net/littlegreenbats
- Abbas Abdolmaleki, Trajectory Generation for Omnidirectional Biped Robot Walking, M.Sc. Thesis, February 2011.