Robo-Erectus: KidSize and TeenSize Soccer-Playing Humanoid Robots
Pik Kong Yue, Changjiu Zhou, King Sing Peh, Lingyun Hu, Daviz Poh Yee Tah, TzeAn Lam, Yu Liu, Guohua Yu, Hendra
Advanced Robotics and Intelligent Control Center, School of Electrical and Electronic Engineering, Singapore Polytechnic, 139651, 500 Dover Road, Singapore
Abstract This paper provides a brief description of Robo-Erectus (RE), the humanoid developed in the Advanced Robotics and Intelligent Control Centre of Singapore Polytechnic that will participate both KidSize and TeenSize categories in the humanoid league of RoboCup 2006. The project to develop both servo and DC motor driven humanoid platforms is presented. We also present a newly developed biped gait generation and optimization approach using Estimation of Distribution Algorithms (EDAs) which are able to build and modify the probability models to speed up the searching in the high dimensional coupling space constructed by the permutation of optimization parameters.
1 Introduction
The Robo-Erectus (RE) project (www.robo-erectus.org) aims to develop a low-cost fully-autonomous humanoid platform so that educators and students are able to build humanoid robots quickly and cheaply, and to control the robots easily. We have developed four generations humanoid soccer robots, namely RE40I, RE40II and RE40III and RE70. Our RE humanoid has participated Humanoid League of RoboCup since 2002. Robo-Erectus won the 2nd place in the Humanoid Walk competition at the RoboCup 2002 and got 1st place in the Humanoid Free Performance competition at the RoboCup 2003. In 2004, Robo-Erectus won the 2nd place in humanoid walk, H40 penalty kick, H80 penalty kick and free performance.
Robo-Erectus is developed in the Advanced Robotics and Intelligent Control Centre of Singapore Polytechnic. The development of Robo-Erectus has gone through many stages either in the design of its mechanical structure, electronic control system and gait movement control. The aim of the Robo-Erectus development team is to develop a low-cost humanoid platform. To participate in RoboCup 2006, a servo-based version with height less than 60cm and a DC-motor based version above 60cm are fabricated to take part in both KidSize and TeenSize categories. For more detailed information about Robo-Erectus humanoid soccer robots, please refer to the team's website www.robo-erectus.org.
2 Biped Gaits Synthesis for Robo-Erectus
2.1 Constrained Multi-objective Optimization for Biped Gait Synthesis
Considering an $N_l$ —link biped robot consisting of a torso, two hips and two identical legs with ankles and knees, its kinematic structure is shown in Fig. 1. The biped mechanism system is assumed to be planar rigid link structure. All links lump mass in the middle center and the branched kinematic chains interconnected by spherical or cylindrical joints transform from open to closed chain during the walking cycle.
Totally three key poses $Z_i$ (i=1, 2, 3) are chosen in one cycle. Poses between these key poses are approximated by third order spline functions. A technique of this type has been implemented using splines of class $C^2$. Such strategies guarantee the second order derivatives at every point, especially at connection points. Consequently, actuating torques is continuous at knots.
For biped gaits generation and optimization problem, we consider the following objective function constructed by energy cost and stability criterion with consideration of geometric and state constraints.
$$\begin{aligned} \textit{Minimize} \qquad & \Upsilon(\bullet) = \beta_f f(\bullet) + \beta_g g(\bullet) = \sum_{i=1}^{s_n} (\beta_f \mathbb{N}(f_i(\bullet)) + \beta_g \mathbb{N}(g_i(\bullet))) \ \textit{Subject to} \ & \textit{GC1} \qquad A_p \leq p(\phi) \leq B_p \ & \textit{GC2} \qquad A_q \leq q(\phi) \leq B_q \ & \textit{ZC} \qquad p_{zmp}(\phi) \in S_{zmp}(A_{zmp}, B_{zmp}) \ & \textit{FC1} \qquad \sum_{i=1}^{N_L} m_i p_i = f_R + f_L + \sum_{i=1}^{N_L} m_i g \ & \textit{FC2} \qquad f_d = \min{F(f_R, f_L)} \ & \textit{VC} \qquad A_{qv} \leq \dot{q}(\phi) \leq B_{qv} \end{aligned}$$
Where $f_i(\bullet) = \frac{1}{2} | p_{zmp}^i - p_{zmp}^d |^2$ calculates the Euclidean distance between the actual ZMP and the desired ZMP at the $i^{th}$ sample index. $g_i(\bullet) = \sum_{j=1}^{N_q} \tau_{ij}$ summarizes the torque of all actuated joints at the $i^{th}$ sample index. $\beta_f$ and $\beta_g$ are weights satisfying $\beta_f + \beta_g = 1$ to balance between stability and energy cost. $\mathbb{N}$ is the normalization operator. $s_n$ is the number of sampling points in one gait.
GC1 and GC2 are geometric constraints to guarantee the feasibility of generated gaits. $p=[p_i(t)]^T$, $A_p=[A_{p_i}(t)]^T$, $B_p=[B_{p_i}(t)]^T$. $p_i(t)=[x_i(t), y_i(t), z_i(t)]$ denotes center position of the ith link at t moment. $i=1, 2, ..., N_l$. $A_{p_i}(t)$ and $B_{p_i}(t)$ are lower limit and upper limit of $p_i(t)$. $q(t)=[q_i(t)]^T$ stands for the joint angle at time t. $A_q=[A_{q_i}(t)]^T$, $B_q=[B_{q_i}(t)]^T$, $i=0, 1, ..., N_l-1$. $A_{q_i}(t)$ and $B_{q_i}(t)$ are lower limit and upper limit of $q_i(t)$.
Besides geometric constraints, state constraints including ZMP, force and velocity constraints are also considered in this paper. ZC stands for ZMP constraints. The ZMP is defined as the point on the ground at which the net moment of the inertial forces and the gravity forces has no component along the horizontal axes [Vukobratovic M.]. If the ZMP is within the convex hull of all contact pints between the feet and the ground, the biped robot is possible to work. Therefore, this convex hull of all contact pints is called the stable region. $p_{zmp} = (x_{zmp}, y_{zmp}, 0)^T$ denotes actual ZMP. $S_{zmp}$ is the support polygon defined by $A_{zmp}$ and $B_{zmp}$, which are lower and upper boundaries of the stable region respectively. FC1 and FC2 are force constraints. $f_R$ and $f_L$ are foot force at right and left legs respectively. $m_i$, $p_i$ are the mass and the acceleration of the $i^{th}$ link. Since during the double support phase, only the sum $f_R+f_L$ is known, another force constraints FC2 is taken into assumption as the internal force $f_d$ in the closed loop structure must be minimized.
The final constraint VC is velocity constraints. $\dot{q} = [\dot{q}i(t)]^{\mathrm{T}}$, $\dot{q}i(t)$ denotes velocity of the $i^{\mathrm{th}}$ actuated joint, $A{qv} = [A{qv_i}(t)]^{\mathrm{T}}$ and $B_{qv} = [B_{qv_i}(t)]^{\mathrm{T}}$ are lower and upper boundaries of the velocity $\dot{q}_i(t)$.
2.2 EDAs For Biped Gait Optimization
For Biped gait optimization problem, many heuristic approaches like neural network, fuzzy system and genetic algorithm are available choices. However there are problems in determining the large number of related parameters and methods are hard to expand on other kind of prototypes. Additionally, the parameters to be optimized are interrelated as joint angles are greatly affected by its value at prior key pose. To speed up the searching in high dimensional coupling space, we apply EDAs on each joint angle as follows. The general structure of EDAs can be summarized as follows.
- Initialization Set k=1. Give a multivariate distribution model Pro k ( , ) φ , j=1,2,…,Nq.
- Sampling Generate Ne samples φe from Pro k ( , ) φ to form the current population O(k).
- Selection Select the Nb best points φb from φe according to objective function values. Nb=αNs (0<α <1).
- Updating Update Pro k ( , 1) φ + by the selected best points φb . i=1, 2, 3.
- Go back to step 2 if stop condition is not met.
By setting different kernel functions and updating rules, different EDAs can be constructed for different gait optimization for Robo-Erectus. Generally, Gaussian type kernel function costs less computation load but can not deal with multi-model probability function. More complex kernel function, for example Parzen window and spline function can describe more complex probability model. However, expense of the higher precision is the complicate computation. Accordingly, updating rule would be designed according to the corresponding kernel function. To avoid setting previse knowledge about updating rule, Q-learning can be evolved into it. It can update the probability model autonomously and intelligently.
2.3 Simulation Results
The ZMPs of the learned gait by EDA are shown in Fig. 2. It shows that the dynamically stability can be achieved. The gait optimized by EDA also costs less torque (as shown in Fig. 3 (b)) with comparison to that before learning (as shown in Fig. 3 (a)). From Fig. 3, it can be found that torques increase at the second key pose for the swing foot needs to passing through the highest point. Landing impact happening at the 1.6 sec. has an affect on joints 5 and 6. For the transferring moment at the end of one gait cycle, torques change greatly because as the supporting leg changing to swing leg, mass center of the robot will shift to another leg correspondingly. Therefore it can be concluded that the learned biped motion with large stability margin based on the ZMP concept is not only dynamically stable but also low energy consumption.
Joint angles of the learned gait are demonstrated in Fig. 4. It can be used directly to drive the physical robot Robo-Erectus.
3 Multi-Platform Control Systems
All Robo-Erectus models can be controlled using 3 platforms, namely
- PC-based control system
- PDA-based control system (Autonomous)
- Microcontroller-based control system (Autonomous)
All platform control the robot by sending the servo position of each joint to a central servo controller installed inside the robot using RS-232 or USB serial communication. The servo controller is a high performance servo control system built in house. Each of the control platform has its own merits. The PC-based control system as shown in Fig. 5 is useful for tuning the gait movement of the robot. As the PC-based system is developed using Microsoft Visual Studio, debugging and modification are easy. Any changes to the gait can be implemented and tested in short turnaround time. In addition, the data of each joint can be monitored and analyzed in real time. However, the PC-controlled system is not autonomous. Microcontroller-base control system is light and can be carried by the robot itself. It is the best control system to implement autonomous control. Gait tuned using the PC-based system can be recompiled to run on a microcontroller system easily. The PDA-based control system is autonomous and user-friendly. It is easier to reconfigure the PDA-based control system than the microcontroller system. However, PDA-based control system still has its limitation when it comes to electronic interfacing and real-time control. The configuration of the hierarchical control system for the RE humanoid is shown in Fig. 6.
4. Robo-Erectus Humanoid Robots
4.1 KidSize Humanoid Robot
Name : Robo-Erectus (KidSize)
Height : 50 cm Weight : 3kg
Walking/running speed : 2 meter/min Number of degrees of freedom (DOF) : 23
Actuators used:
- Hitec HSR-5995TG a. Torque : 24kg b. Speed : 0.15s
- Hitec HS-5945MG a. Torque : 13kg b. Speed : 0.13s
Sensors used:
- Infra-red sensor
- Ultrasonic sensor
- Tilt switch
- Compass
- CMUCam/Creative Labs WebCam Live! Ultra for Notebooks
Processing boards used:
- In-house designed interface board a. Processor : PIC16F873A b. Speed : 20 MHz
- SONY VAIO VGN-U8G a. Processor : Intel Celeron M Processor 353 b. Speed : 900 MHz
4.2 TeenSize Humanoid Robot
Name : Robo-Erectus (TeenSize)
Height : 70cm Weight : 5kg
Walking/running speed : 2.5 meter/min Number of degrees of freedom (DOF) : 24
Actuators used:
- Hitec HSR-5995TG a. Torque : 24kg b. Speed : 0.15s
- Hitec HS-85MG a. Torque : 3.5kg b. Speed : 0.14s
- Faulhaber DC Micromotor 2342S006CR + 23/1 159:1 + IE2-64
Sensors used:
- Ultrasonic sensor
- Infra-red sensor
- Tilt switch
- Compass
- In-house designed omnidirectional camera/ Creative Labs WebCam Live! Ultra for Notebooks
Processing boards used:
- In-house designed interface board a. Processor : PIC16F873A b. Speed : 20 MHz
- SONY VAIO VGN-U8G a. Processor : Intel Celeron M Processor 353 b. Speed : 900 MHz
5 Concluding Remarks
The Robo-Erectus project aims to develop a low-cost humanoid platform so that educators and students are able to build humanoid robots quickly and cheaply, and to control the robots easily. We are currently working towards to further develop this platform for educational robots, service robots and entertainment robots.
We have also developed 3 control platforms for Robo-Erectus, namely, PC-based, PDA-based and microcontroller-based system. Each of the system has its own advantages. Simulation software has also been developed for the theoretical study of humanoid gait movement. We have gained much experience in developing many versions of the Robo-Erectus robots and control system.
Based on the proposed new biped gait generation and optimization approach using EDAs, body dynamics of the mechanical robot will be studied with transition probability models in future work. Our research challenge lies in the interpretation of transition probability models for biped locomotion so that we can progress toward better understanding for human locomotion and extend the results to better control of humanoid robots in particular for RoboCup.
6 Team Members
Staff
Pik Kong Yue Changjiu Zhou King Sing Peh Mike Wong Hongwei Li Fook Seng Choy Cher Hwee Tan
Research Associate
Lingyun Hu
Technical Service Officer and Student
Daviz Poh Yee Tah TzeAn Lam Yu Liu Guohua Yu Hendra Andy Alan Ong Weicheng Xiaosheng Gao Chin Keong Ang Zhiwei Yap
Acknowledgments
The authors would like to thank staff and students at the Advanced Robotics and Intelligent Control Center (ARICC) of Singapore Polytechnic for their support in the development of our humanoid robots Robo-Erectus. The research described in this paper is jointly supported by the Singapore Tote Fund and the Singapore Polytechnic R&D Fund.
References
- Kitano, H., Asada, H.: The RoboCup humanoid challenge as the millennium challenge for advanced robotics, Advanced Robotics 13(8) (2000) 723-736
- Vukobratovic, M., Borovac, B., Surla, D., Stokic, D.: Biped Locomotion: Dynamics, Stability, Control and Application, Springer-Verlag, 1990.
- Zhou, C., Meng, Q.: Dynamic balance of a biped robot using fuzzy reinforcement learning agents, Fuzzy Sets and Systems 134(1) (2003) 169-187.
- Zhou, C., Yue, P.K., Tang, Z., Sun, Z.Q.: Development of Robo-Erectus: A soccer-playing humanoid robot, Proc. IEEE-RAS RAS Intl. Conf. on Humanoid Robots, (2003).
- Hu, L., Zhou, C., Sun, Z., Biped gait optimization using estimation of distribution algorithm, IEEE-RAS Int. Conf. on Humanoid Robots, Japan, Dec, 2005, pp. 283-289, (2005).
- Hu, L., Zhou, C., Sun, Z., Optimizing biped gait using probability model, the 3rd Computational Intelligence, Robotics and Autonomous Systems, Singapore, Dec, (2005).
- Hu, L., Zhou, C., Sun, Z, Biped gait optimization using probability model with spline function, IEEE Int. Conf. on Robotics and Autonomous, (2006) (Accepted).
- Zhou C. and Yue P. K., Robo-Erectus: a low cost autonomous humanoid soccer robot, Advanced Robotics, Vol. 18, No. 7 (2004) 717-720.
- Zhou C., Rules for the RoboCup humanoid league, Advanced Robotics, Vol. 18, No 7 (2004) 721-724.