I-KID: Team Description for RoboCup2012
Lou Xiaoping, Zhang Jiwen, Zhang Haitao, Zhu LianQing
Beijing Information Science & Technology University, Beijing, China; Golden Robot and Manipulator Co. Ltd., Beijing, China
ikid.bistu.edu.cn · www.jinnuoman.com
Abstract This paper describes the design aspects of mechanical and electrical parts as well as the software components of the humanoid robots participating in the Kid-Size competition of Humanoid League of RoboCup2012. Algorithms of gait generation, vision processing, world modeling, and behavior control and team coordination are discussed. Several novel improvements within these modules are illustrated.
Introduction
The research of RoboCup humanoid playing soccer game is focused on theories of dynamic biped motion planning, fast environment modeling, artificial intelligence, as well as coordinate design and manufacturing of walking robots. Up till now, it attracts a lot of researchers to be devoted to developing a competing robot and a team.
BISTU (Beijing Information Science & Technology University) where I-Kid comes from, has a long history of joining in Robocup, and won a lot of prizes both in Robocup international and China Open. Water team from BISTU has won the 1st Prize in Middle-Sized League RoboCup2010 Singapore and RoboCup2011 Istanbul-Turkey. We are stepping to Humanoid League this year and organizing the team I-Kid to foster more achievements in autonomous robot research.
I-Kid is not for the first time taking part in Robocup scenario though we are new to the league. We participated in the Robocup2011 China Open held in the city of Lanzhou, and got a 2nd place in finals. Equipped with only 2 robots, I-Kid defeated or drew most of those previous experienced teams. We also got the 1st place in the walking speed competition specifically in RoboCup2011 China Open with the fastest and the most flexible walking ability. Throughout the game we had all the team members be sufficiently familiar with the latest rules, and brought out several of them as eligible referees. For RoboCup2012 we are not only setting up by adding another 2 robots but also deeply developing the relevant algorithms to construct a challenging team for the league.
Platform Overview
GRM-Strong and GRM-Lite which are shown in Fig 1 have three layers of control system, namely motor control, motion planning and cognition. The motor control layer embedded in the servo is capable to drive the motor to the designated angle with desired velocity, and sends all the feedback information from a single joint to upper layer through communicating bus. For motion planning, a board with Cortex-M3 MCU is used to complete multiple tasks such as servo management, sensor acquisition and preprocessing, special gait storage and general gait online trajectory calculating. A computing board with AMD LX800 processor is acting as the cognition layer with primary functions of image capturing, object recognition, world modeling, behavior control and wireless connection.
Robots of heterogonous mechanical design are adopted and combined together in the team, whereas their control systems are uniform. The configuration of DOF is the same, but the limb length and torso dimension is different between the two, additionally, battery distributes quit different from each other. They adapted in diversified role when playing coordination. At the same time, different actuator selection means different cost.
Algorithms Overview
An intelligent robot can be abstracted as a sensing-motion coordinating system, the data stream flows from external sensors to internal descriptions and then external motion execution again. Therefore the software architecture is organized as hierarchical style depicted by Fig 2 which can be split into 4 parts: vision processing, world modeling, behavior control, and motion generation. The following sections interpret each of them.
Motion Generation
Despite the existence of path planning algorithm with predefined walking styles, the computing inefficiency and perturbation associated with environment make them unsuitable. The soccer playing task requires the players adapting their walking direction, speed and rotation to instantaneous changes [1].
Thanks to the encapsulation of inverse kinematics engine into motion controllers by GRM Co. Ltd., an Omni-directional locomotion is realized in sight of robot upper torso, and bipedal walking can be abstracted as a three dimensional moving platform: offset in forward or backward, side walks for left or right and another rotation direction around z axis pointing upwards.
The algorithm simplifies the gait description as trajectories of COM (center of mass) and ankle, these trajectories are combined by linear equations. After that, the dedicated inverse kinematics engine deduces turning angle for each joint. However, a sudden change of walking command from behavior determination will cause instability because of the large acceleration of upper body. Additionally, the robot is falling over in the situation of large moving speed combined with big momentum by rotation. With all these problems unsolved, we made further progress with gait generation based on both of experiments and simulation.
Firstly, trajectories of ankle and COM are generated primarily on preview control of a three dimensional linear inverted pendulum [2]. Second, a speed limiter is embedded in the motion controller to avoid acceleration discontinuation. We implemented simulation with OpenHRP [3], which is developed specifically for humanoids. The robot walks much more dynamically stable than their state out of package.
Vision Processing
In order to detect objects in the field like ball, gates, poles, boarder lines and opponent robot, colored image segmentation is used. With limited computing power and complex environment of robotic soccer, we try to balance the recognition precision and processing efficiency.
Among the whole program, the most time-consuming part is clustering, which start a queue growth by detecting 4 or 8 neighboring pixels. To speed up this process, we introduce an adaptable scan step over an image rather than a progressive way from pixel to pixel. The neighboring step length is related to distance from the scan line in Cartesian coordinates reflected to image based on camera pin-hole imaging model. The scan line generation can be illustrated by Fig 3.
For field line detection, a Sobel derivative operator is implemented on Y channel of the clustered image with white color to create two magnification images in x and y direction, contour finding algorithm fit lines described as 2 point equation, and crossing point is labeled as landmarks, though similar condition exists among all the possible cross, they can be classified into several different subsets [4] for both of localization and behavior. A GUI is also developed by us to facilitate color map calibration.
World Modeling
Data stream from vision processing is converted to a virtual environment of play field. Primary modeling algorithms includes ball-locating, self-locating and obstacle-locating. Despite a particle filter ported with GRM Co. Ltd. The effect is depressed by the limited amount of landmarks. Thanks to the boarder line detection from vision processing, the number of recognizable landmarks increases remarkably, bringing in a much more precise result.
As to ball-locating, the common strategy based on Monte-Carlo method gives a reliable position and velocity several decimeters away, whereas its accuracy decreases when the ball is centimeters around the robot. The alignment of foot with the ball is essential when shooting toward a desired direction in this situation, therefore the robot always behaves vibrating from left to right. This is partly because of singularity feature inherited in this pan-tilt configuration, and partly caused by side swaying when a robot is walking. Additionally, mechanical compilation difference among a few robots makes it extremely time-consuming to validate all of them for kicking.
To fix this problem, we eliminate the position adaptation and use direct comparing with feet and ball in an image, and control the robot moving to compensate the errors. Because the relative coordinates of foot and ball is much more stable in an image and across robots with compilation errors, the robot could reach alignment much faster than before.
Behavior Control
Behavior is located on the third layer in Fig 2 for data stream, but acts as the topmost module in robot control system because the essential cognition-motion mapping is realized here. As many teams in the league [5-6], XABSL [7] is introduced to deploy a modular exchangeable determination system.
Several control loops are also closed in this layer, such as object tracking with head and ball approaching procedure. Roughly speaking, a feed-back control system cannot reach the precision higher than its measuring device. For example, in an approaching control loop, it is almost impossible to direct exactly the robot toward a ball. The robot will hesitate to tune its attitude and spend a long time reaching the ball, which can be defined as an invalid effort to reach control accuracy higher than its vision and world modeling system.
To solve this, the world modeling outcome described in a continuous way is digitized into a discrete one. The unit is the world modeling error that can be set before head by measuring or statistics. An example of discretion is illustrated in Fig 4.
Based on this assumption, precision of measuring device is put into consideration and a uniform discrete controller within the whole error range is realized, which minimize the experience-update-verify duration, and can be optimized with modern control theories. On real robots, we realized this algorithm and enables a robot to approach ball with relative fast pace, with minimum direction errors, and avoid any vibration like hesitating left and right.
Team Coordination
Data sharing scheme among robots is the base for team play. Such data includes result of image processing, locating, and gait command executed. Besides this common information, decision making is also shared as follows. As the structure of behavior is realized with option graph with XABSL introduced in [8]. We improve the basic option definition by adding an ID field, indicating its difference from other options. Because a traversal of options makes up a cycle of decision making, a stream of option ID together with option state implies what the robot is considering, and facilitates behavior sharing.
The whole data packet is broadcasted among all robots participating in the game through UDP protocol with definite time intervals. Though every robot is independent of others, it introduces other robots' decision making process as reference. All this information acts just as remote sensors to a robot similar to the vision of its own, which finally validates team play. Details are indicated in Fig 5.
With the assistance of such mechanism, we developed the conflict avoiding strategy, ball passing in 3v3 game and team based ball searching. Further application in robot coordination in a competing environment is still under research.
Conclusion
In this paper, platform and algorithms of kid-sized humanoid robot GRM-Strong and GRM-Lite are investigated specifically. An optimized Omni-directional gait generation method with high stability is proposed. Efficiency and precision balanced object reorganization algorithm is developed. Uniform behavior controllers are deployed based on a novel measuring digitalization way. Communication and cooperation are realized by the special data sharing scheme through WLAN. Several improvements have been achieved in both of sensing and motion.
IKID commits to participate in RoboCup2012 in Mexico City and to provide a referee knowledgeable of the rules of the Humanoid League.
References
- Sven Behnke: Online Trajectory Generation for Omnidirectional Biped Walking. In: Proceedings of the 2006 IEEE International Conference on Robotics and Automation, pp. 1597-1603. Florida (2006)
- S Kajita, F Kanehiro, K Kaneko, K Fujiwara, K Harada, K Yokoi, H Hirukawa: Biped Walking Pattern Generation by Using Preview Control of Zero-Moment Point. In: IEEE International Conference on Robotics and Automation, pp 1620-1626 (2003).
- F Kanehiro, H Hirukawa, S Kajita: OpenHRP: Open Architecture Humanoid Robotics Platform. International Journal of Robotics Research, vol. 23, no. 2, p. 155 (2004)
- Thomas Rofer, Tim Laue, Michael Weber et al: German Team RoboCup 2005 Technical Report, www.germanteam.org.
- M Friedmann, J Kuhn, et al: Darmstadt Dribblers Team Description for Humanoid Kid-Size League of RoboCup 2011 (2011)
- Daniel Seifert, Hamid Reza, et al: FUmanoids Humanoid League KidSize Team Description Paper 2011 (2011)
- M Lotzsch, M Risler, M Jungel: XABSL a pragmatic approach to behavior engineering. In: Proceedings of IEEE/RSJ Int. Conf. of Intelligent Robots and system (IROS), pp. 5124-5129, Beijing, China (2006)