MRL Middle Size Team: 2009 Team Description Paper
M.Gholipour, S.Ebrahimijam, H.Rasam Fard, M.Montazeri, A.Mohseni, S.Moein, A.Zaeri, H.Hosseini, M.Yekkefallah, S.Sajjadi, B.Eskandariun
Mechatronics Research Laboratory, Islamic Azad University of Qazvin - IRAN
Abstract This paper concisely describes the very main and new features of our soccer playing robots along with the improvements made since the previous years. Our major concerns for this year's competitions have been developing a complete passing scenario, equipping robots with new kicker tools, also developing new features in vision and software which are cooperative team behavior synchronization and emotional intelligence.
1 Introduction
The MRL middle size team has started its work at Mechatronic Research Laboratory of Azad University of Qazvin since Aug 2003. This team aims at establishing an intelligent control method for autonomous multi-robot systems in dynamic uncertain environment. MRL has begun the research and work in MSL since 2004. Our first official participation was during RoboCup 2005 competitions in Osaka and then Robocup 2006 in Bremen. We optimized hardware, control and software system for Robocup 2008 and designed robust system, as a result we find ourselves between five top teams. The Intelligent, cooperative and adaptive behavior of the robots is very important factor for a team success. With this regard our research is continuously focused on: reliability, sensor fusion, dealing with uncertainty of environment and appropriate positioning of the robots, world modeling and dealing with missing information. In the following sections we briefly explain current status and new achievements of our team.
2 Hardware
We have designed a more flexible and powerful 4-wheel omnidirectional robot which is shown in figure 1. The omni-directional movement system consists of custom designed omnidirectional wheels, MAXON DC motors with Maxon-Epos70/10 controller. The four omni-directional wheels are radially equipped with dozens of roller boring. The four-wheel drive robot can move at any direction and at any moment. The new omnidirectional platform shows more efficiency despite simplicity. We have designed powerful intelligent electromagnetic kicking device.
Robots main processor is an IBM T61 notebook PC and electronic equipments are developed PIC Controller with high speed can bus, BASLER-311FC camera with IEEE1394 IIDC communication protocol, Li-Polymer Batteries, Proximity and Infra Sensors. Other electronic devices are the same as last year [1].
This year we designed a multi power kicker with two kind of kicking, cheap kick, for passing and high kick, for scoring goal from far distances.
Robot Specifications
| Items | Description |
|---|---|
| Platform | 4 wheel Omnidirectional |
| Max speed | 3 m/s |
| Max acceleration | 4 m/s² |
| Kicker | Electromagnetic |
| Weight | 21 Kg |
| Laptop | IBM T61 |
| Camera1 | BASLER 311FC |
| Camera2 | uEye UI-2210-C |
| Image processing | Omni directional mirror |
| Other sensor | Dummy shaft encoder and IR |
| Controller | Neural Network and PID |
2.1 Robot control architecture
Distributed systems are suitable for complicated system because the tasks are distributed between every part [2], so each part is responsible for its own duties. By using such method the control system becomes more flexible because the error detection is easier and fast to recover. Successful distributed sensing and control require data to flow effectively between sensors, processors and actuators on single robots [6], in groups and across the Networks. With this regard the control systems are partitioned into low level and high level control systems.
Low level control: the policy that controls low level I/O peripherals of each function distributed in a robot system such as motor control and robot navigator system.
High level control: the policy that controls whole system, such as localization system or decision making control [5].
2.2 Low level control
This part controls the robot movement in order to reach the target [11]. Low level control shown as fig. 2 is composed of two parts; First, MCU (Master Control Unit) navigate the robot movement to the target vector velocity. The robot dynamics is modeled by neural network system and kinematics equation of the robot motion is implemented on this layer. The robot position and speed is sensed by a dedicated shaft encoder mechanism and sent to the high level control systems. Second part is motor control system (slaves), there are four Maxon motor driver with PID controller algorithm implemented to adjust the motor velocities according to the received commands from the master processor and the motor encoders pulses [3,4].
This multi processor control system is connected to the MCU board via a bus mechanism with a high speed CAN bus protocol which will communicate with planer. All Local control is implemented on PIC microcontrollers to reduce the load of the main laptop PC.
This year we add a gyroscope sensor to calculate the rotational movement of the robot which is applied for the localization.
3 Software (AI and High level control)
In high level control system, we implemented some of the intelligent behavior algorithms including passing skill based on reinforcement learning, path planning with improved potential field, dribbling and fusion of information in coach box.
3.1 Software architecture
This section includes three main units: planning unit, executing unit and knowledge unit. The major task of knowledge unit is collecting sensory and vision output data, analyzing and converting them to meaningful data which are inputs of decision making sections.
Planning unit main task is to make high level intelligent decisions (commands) like track ball, hold ball and etc and orchestrates them with other teammate decisions, this part also allotted the general playing strategies of the team according to offensive and defensive states, and then sends the appropriate commands to executing unit.
In the executing unit the commands are analyzes to set of main skills, the skills are basic behaviors like: Move, Stop, Rotate, and Kick. These basic moving skills are given to navigation controller.
A new approach of AI section is changing the decision making model from decision tree to hybrid decision tree and tasks queue. In the past models, Programming the skills which should be executed sequential and scheduled were so hard but by this method generating most of the algorithm are simplified. In tasks queue, each task which is an object derived from secession class of "TASK" are assumed as items of constructing queue. The recommended model is the compound of the mentioned model and decision tree model. Actually, in the beginning of decision making the system decide which method is appropriate now.
3.2 General strategy of playing (layered defense)
According to the size and velocity of robots, we develop a strategy which is called layered defense.
In this strategy, if a player looses to fetch the ball, the other one which is called supporter would try to fetch it and the ball looser robot should return back. To use the mentioned strategy there should be a communication between robots, also players should know, how many teammates are playing now? Any changing in the count of players would change the procedure of the strategy. The count is acquired by the player and coachbox doesn't have any interfere in this mission. So, firstly a multiple communication is established between teammates, then there is a function designed to count the active teammates in the software.
In addition to sharing the allotted strategy between teammates, other information like ball position is also shared between them, so if a player looses the ball position for any reason the other teammates help it to find.
To perform the strategy, imagine that there are four players in the match, the roles are assigned as: one attacker, one halfback (supporter) and two defenders. The robot which is able to fetch the ball easily is assigned as attacker and its mission is moving toward the ball, the next nearest player is assigned as halfback. Halfback (supporter) moves behind the attacker with about 1.5 meter distance from it to fetch the ball if the attacker looses it. Two defenders defense from own goal allover the two separate layers according to ball distance from own goal. The defense algorithms are such designed to minimize movements of defenders to reach their positions.
The strategy is capable of extending it to play with three, two and one players.
3.3 Developing emotional intelligence on soccer robot behaviors
One of recent challenges in robotics and AI is to make robots to act such as human like behaviors while operation [9]. In this research project the aim is to develop a model of human's physiological structure on soccer robot [10]. This enables the robot to feel and act as a real soccer player in the playing field.
Human kind feelings such as happiness, sadness and etc are designed for this agent. The player should learn to choose the appropriate action in a way to avoid the hopelessness and learn how to decrease hopelessness during the match.
The players make strategic decision and act variously according to the game situations like: the game result, time and other player's states. These are sensation of the player from the game circumstance (sensory). The players would show more senseful-logical play by learning from experiences in a long run through the designed RL algorithm.
The robots also show multi agent collective behaviors because all the sensations during the game are the same for all the players without any communication between them.
4 Vision system and localization
Our Vision system hardware, the same as last year, is composed of a BASLER-311FC camera that stands upwards with a hyperboloid mirror above it. This component provides an omni-directional vision. The output of this system is very reliable and accurate.
To process the gathered images, at first a median filter is applied in order to reduce image noises, and then the four standard color marks will be assigned to each pixel by the Color Lookup Table. The Color Lookup Table (CLT) is filled in another program, which classifies the HSL Color Space into four standard colors. This program takes some supervised samples from user to learn how to recognize the standard colors. In run time this CLT is used in an image processing algorithm to detect the ball, field, and obstacle areas in the image in real-time (50 frame/s) on the laptop computer.
Self localization is obtained through matching white lines in the camera pictures with the actual model.
To recognize the lines in the pictures, we scan the radius of the picture from centre shown as figure 6. Then categorize the white and green connected spots, we register the center of white spot groups, which next and previous lines are green, as a part of the line and keep on this process for all radiuses, so a group of spots from the field lines are recognized shown as figure 7. At last the spots are converted from polar to Cartesian coordinate and from pixel mode to metric mode by using mirror equations shown as figure 8. Then, the position is again calculated by matching the spots with actual model of field lines shown as figure 9.
To recognize ball, first, the orange colors are segmented, circular shape segment is recognizes as the ball with designed algorithm. But now we are able to recognize any standard FIFA ball. We assigned a coefficient of error parameter to each recognized circle according to how much it is like to circle, and the circle with minimum coefficient of error is chosen. Also, we assume each black segment in the green area as an obstacle. All the above processes are done at once through entire 360 scan of the omni picture.
This year we use stereo vision system by another camera in front of the goalie to calculate the height of the kicked ball and precision enhancement of recognizing the ball far away from it. Also we are going to improve the ball detection algorithm when a small part of the ball appears in the images; this is implemented by circle fitting algorithms [12]. The other feature of vision part is distinguishing the obstacles with no color detection of them. this is done by learning the shape of the standard obstacles with neural network.
Successful localization could be achieved by fusing data from various sensors to reduce the uncertainty. We use a gyroscope sensor to calculate the angles of robot to accelerate matching process. The major part of localization is vision, but fusing shaft encoders data and gyroscope sensor data by extended kalman filter algorithm used for precision enhancement of localization.
References
- V.Rostami, S.Ebrahimijam, P.Khajehpoor, P.Mirzaei, M. Yousefiazar "Cooperative Multi Agent Soccer Robot Team," International conference in enformatika system science and engineering, Volume 9, November 25-27, 2005, ISBN 975- 98458-8-1, page 95-98.
- T.Taira, N.Yamasaki, "Functionally Distributed Control Architecture for Robot Systems".
- C.wurll,j.sechloen "A distributed planning and control system for industrial robots," The 5th IEEE International Advanced Motion Control Workshop (AMC'98).
- V.Rostami, O.Sojodishijani, S.Ebrahimijam, A.Mohseni "Fuzzy Error Recovery in Feedback Control for Three Wheel Omnidirectional Soccer Robot," International conference in enformatika system science and engineering, Volume 9, November 25-27, 2005, ISBN 975- 98458-8-1, page 91-94.
- E. Fabrizi¤, G. Oriolo¤, S. Panzieriy, G. Ulivi "Enhanced Uncertainty Modeling for Robot Localization".
- Brian.P.Gerkey, "Most Valuable Player: A Robot Device Server for Distributed Control," In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS 2001) Pages1226-1231, Wailea, Hawaii, 29 October - 3 November, 2001.
- Lynne E. Parker,"Distributed Control of Multi-Robot Teams: Cooperative Baton Passing Task," Appeared in Proceedings of the 4th International Conference on Information Systems Analysis and Synthesis (ISAS '98), vol. 3, pages 89-94.
- Theresa Tran, Richard Reeve, Barbara Webb "Distributed control systems for biologically inspired robotics".
- Stevo Bozinovski, "Training a Football Playing Robot Using Emotion Based Learning Architecture", Workshop Proceedings A. Paiva and C. Martinho (Eds.). PP: 67-76.
- Maria Malfaz, Miguel A.Salichs, "Emotion-Based Learning of Intrinsically Motivated Autonomous Agents living in a Social World", International Conference on Development and Learning (ICDL) 2006. Bloomington, In. USA. May, 2006.
- Vahid Rostami, Saeed Ebrahimijam, Omid Sojodishijani, "Real-time distributed control system for navigating omnidirectional soccer robot,"proc. Of 15th Mediterranean Conference on Control & Automation,(MED '07). IEEE Xplore ISBN: 978-1-4244-1282-2, pp: 1-4.
- Nicolaj C. Stache, Henrik Zimmer, "Robust Circle Fitting in Industrial Vision for Process Control of Laser Welding", Proceedings of the 11th International Student Conference on Electrical Engineering, Prague MAY 2007.