8
International Journal of Advanced Robotic Systems, Vol. 7, No. 3 (2010) ISSN 1729-8806, pp. 209-216 209 Motion Planning for Humanoid Robot Based on Hybrid Evolutionary Algorithm ZHONG Qiu-bo 1,2 , PIAO Song-hao 1 and GAO Chao 1 1 School of Computer Science and Technology, Harbin Institute of Technology, Harbin, China 2 School of Information and Computer Engineering, Norestest Forestry University, Harbin, China Corresponding author E-mail: Abstract: In this paper, online gait control system is designed for walking-up-stairs movement according to the features of humanoid robot, the hybrid evolutionary approach based on neural network optimized by particle swarm is employed for the offline training of the movement process, and the optimal gait of the stability is generated. Additionally, through embedded monocular vision, on-site environmental information is collected as neural network input, so necessary joint trajectory is output for the movement. Simulations and experiment testify the efficiency of the method. Keywords: humanoid robot; neural network; particle swarm optimization; gait control 1. Introduction Mobility of multi-legged robot on uneven ground or other complex environment is higher than traditional wheeled robot. As its design is based on human features, the design of all complex motions of humanoid robot captures more and more attention. During the movement of humanoid robot, two issues need to be considered firstly, which are stability and real-time characteristic. As an important index to comment on stability, ZMP (Zero- Moment-Point) proposed by Jugoslavian Scholar Vukobratovic accelerates the development of the motion control of humanoid robot [1-3] . Ferreira [4] proposed the method based on human ZMP to the ZMP reference trajectory of the robot. The method that adds an inertial parameter from center of gravity to ZMP point can achieve different reference trajectories. Tomomichi [5] defined the stable area of standing to explain the stability assessment of posture balance controller for different grounds. Stability control for the grounds in different environments is available in this method. Real-time walking control for robot becomes available through visual feedback. Robert studied the closed-loop iteration between bipedal walking and visual observation, and developed the monocular machine vision system [6] , which achieved good control effect. In the motion control of humanoid robot, inverse kinematics problem becomes the numerical solution problem of nonlinear transcendental equation. To fit in real-time control, robot control system usually needs real- time calculation of inverse kinematics, but iterative nature of conventional numerical solution makes the accuracy of the solution low or makes the solutions process spend too much time. Artificial neural networks have powerful ability of approximation to solve the nonlinear mapping problem, which can be used to solve a series of problems: manipulator kinematics, path optimization, robot control, etc. For the lack of real-time controller to control robot balance during dynamic walking, Jimmy Or et al. [7] proposed the mixed CPG-ZMP control system. It realized the real-time control for the walking of biped robot with different shapes of foot. Reza Ghorbani et al [8] studied the standing of biped robot. They simplified biped robot to the inverted pendulum with foot joints, and used general regression neural network feedback controller to control the vertical attitude of the robot. The genetic algorithm is used for the optimization of standing attitude. It achieved good performance according to the experiment. Ching-Long Shih analyzed the movement of walking up and down stairs for humanoid robot. Cubic spine function approximation of the track for the ankle is used for the trajectory planning of foot of the movement of walking up and down stairs. And there is the balance weight to control the transition between static balance and dynamic balance during the movement of walking up and down stairs [9] . BP neural network is employed in this paper, and nonlinear mapping of the robot from position variable space to joint variable space is realized by training for the sample generated from the forward kinematics. It overcomes the complicated process of formula deriving and programming calculation while calculating the inverse kinematics solution, and meets the real-time requirements of the control process. While using neural network, it is not sure that the network structure whose neurons is fully connected can generate the optimal performance in the given training cycle. Because of the limitations in the ability of information processing, smaller network structure is also difficult toachieve good performance, while between the nodes of larger network, there are more connection

Motion Planning for Humanoid Robot Based on Hybrid Evolutionary Algorithmcdn.intechweb.org/pdfs/11310.pdf ·  · 2010-10-20Motion Planning for Humanoid Robot ... problem of nonlinear

Embed Size (px)

Citation preview

International Journal of Advanced Robotic Systems, Vol. 7, No. 3 (2010) ISSN 1729-8806, pp. 209-216

209

Motion Planning for Humanoid Robot Based on Hybrid Evolutionary Algorithm ZHONG Qiu-bo1,2, PIAO Song-hao1 and GAO Chao1 1School of Computer Science and Technology, Harbin Institute of Technology, Harbin, China 2School of Information and Computer Engineering, Norestest Forestry University, Harbin, China Corresponding author E-mail: Abstract: In this paper, online gait control system is designed for walking-up-stairs movement according to the features of humanoid robot, the hybrid evolutionary approach based on neural network optimized by particle swarm is employed for the offline training of the movement process, and the optimal gait of the stability is generated. Additionally, through embedded monocular vision, on-site environmental information is collected as neural network input, so necessary joint trajectory is output for the movement. Simulations and experiment testify the efficiency of the method. Keywords: humanoid robot; neural network; particle swarm optimization; gait control

1. Introduction

Mobility of multi-legged robot on uneven ground or other complex environment is higher than traditional wheeled robot. As its design is based on human features, the design of all complex motions of humanoid robot captures more and more attention. During the movement of humanoid robot, two issues need to be considered firstly, which are stability and real-time characteristic. As an important index to comment on stability, ZMP (Zero-Moment-Point) proposed by Jugoslavian Scholar Vukobratovic accelerates the development of the motion control of humanoid robot [1-3]. Ferreira[4] proposed the method based on human ZMP to the ZMP reference trajectory of the robot. The method that adds an inertial parameter from center of gravity to ZMP point can achieve different reference trajectories. Tomomichi[5] defined the stable area of standing to explain the stability assessment of posture balance controller for different grounds. Stability control for the grounds in different environments is available in this method. Real-time walking control for robot becomes available through visual feedback. Robert studied the closed-loop iteration between bipedal walking and visual observation, and developed the monocular machine vision system [6], which achieved good control effect. In the motion control of humanoid robot, inverse kinematics problem becomes the numerical solution problem of nonlinear transcendental equation. To fit in real-time control, robot control system usually needs real-time calculation of inverse kinematics, but iterative nature of conventional numerical solution makes the accuracy of the solution low or makes the solutions process spend too much time. Artificial neural networks have powerful ability of approximation to solve the nonlinear mapping problem, which can be used to solve a

series of problems: manipulator kinematics, path optimization, robot control, etc. For the lack of real-time controller to control robot balance during dynamic walking, Jimmy Or et al.[7] proposed the mixed CPG-ZMP control system. It realized the real-time control for the walking of biped robot with different shapes of foot. Reza Ghorbani et al [8] studied the standing of biped robot. They simplified biped robot to the inverted pendulum with foot joints, and used general regression neural network feedback controller to control the vertical attitude of the robot. The genetic algorithm is used for the optimization of standing attitude. It achieved good performance according to the experiment. Ching-Long Shih analyzed the movement of walking up and down stairs for humanoid robot. Cubic spine function approximation of the track for the ankle is used for the trajectory planning of foot of the movement of walking up and down stairs. And there is the balance weight to control the transition between static balance and dynamic balance during the movement of walking up and down stairs [9]. BP neural network is employed in this paper, and nonlinear mapping of the robot from position variable space to joint variable space is realized by training for the sample generated from the forward kinematics. It overcomes the complicated process of formula deriving and programming calculation while calculating the inverse kinematics solution, and meets the real-time requirements of the control process. While using neural network, it is not sure that the network structure whose neurons is fully connected can generate the optimal performance in the given training cycle. Because of the limitations in the ability of information processing, smaller network structure is also difficult toachieve good performance, while between the nodes of larger network, there are more connection

International Journal of Advanced Robotic Systems, Vol. 7, No. 3 (2010)

210

redundancy [10]. The solution accuracy of conventional BP network can’t meet robot’s requirements in precise control. Evolutionary algorithm should be used to optimize the neural network in order to increase the accuracy of solution and speed of learning. In the document [11], Leung et al used the improved GA algorithm, and optimized the structure and weights of the neural network. The number of nodes in the implicit strata increased, until the neural network model with very good performances (such as fitness values) is achieved. PSO Algorithm is brand-new evolutionary algorithm for global optimization, which is developed by Eberhart and Kennedy. As the simple and effective random search algorithm, its principle makes it win the bigger advantage than genetic algorithm and so on in the treatment of real-valued optimization problem. The parameter learning of neural network is just the multi-peak Real-Valued optimization problem, so PSO algorithm applies in neural network learning successfully [13]. Firstly, feasibility analysis is used for walking-up-stairs movement of humanoid robot, and then kinematics model is built. Two BP neural networks are used for the offline training respectively for the cycle of supporting with two legs and the cycle of supporting with one leg during walking-up-stairs movement of humanoid robot. Particle swarm optimization of natural selection is used for the weight optimization of neural network according to the objective function during the training, which makes neural network output the expected value quickly and accurately. At last, the feedback information from vision is used for as the network input information to execute the real-time gait control of the movement of walking up and down stairs.

2. The model of walking-up-stairs of humanoid robot

The movement of walking up and down stairs of humanoid robot is a kind of complex motion. We design the model of walking up and down stairs according to human movement of walking up and down stairs and the features of humanoid robot itself. Because the control method for walking up stairs and walking down stairs are similar, this paper focuses on walking up stairs. See Figure 1 for the geometric constraint model of walking up stairs.

2.1 Feasibility analysis of walking up stairs of humanoid robot Humanoid robot has many degrees of joint freedom and different joint lengths. Not all humanoid robots fit in the movement of walking up stairs, so we make out the feasibility analysis of walking up stairs of humanoid robot.

2.1.1 Geometric constraints In sagittal plane, the geometric constraints of walking up stairs of humanoid robot can be described by bidimensional geometric constraint [14]. From the fundamental theorem of computational geometry, we can see:

Fig. 1. Geometric constraint model of walking up stairs of humanoid robot

Given three points of 1 2 3, ,p p p , if and only if

1 2 30( 0)p p pA > < , then 3p is on the left (right) side of the

Directed Line Segment 1 2p p . And if and only if

1 2 30p p pA = , 3p is on the same straight line of 1 2p p ,

1 2 3p p pA can be calculated by the ordinate values of 1 2 3, ,p p p . Robot leg joints can’t touch the steps while

walking up stairs, and gravity center should be maintained forward.

2.1.2 Stability constraints Stability constraints of humanoid robot focuses on the issue that the friction force between robot feet and steps should be big enough and makes sure that robot will not slide during the movement. Main evidence of stability constraints is whether robot’s ZMP is within the support range. According to the above fundamental theorem of computational geometry and with geometric model of walking up stairs of humanoid robot, the constraints of the cycle of supporting with two legs are achieved, just as Formula (1):

( )( )

0 1 1 0 1 2 0 2 1 1 1 2

2 1 1 2 1 2 2 2 1 1 1 2

1 2 4

1 71 2

max , 0

max , 0

0

2 2

z z sh z z sh z sh sh sh z sh

z z sh z z sh z sh sh sh z sh

z z z

com

A A A A

A A A A

Al lx Sw x x

⎧ >⎪⎪ >⎪⎨ >⎪⎪

− ≤ ≤ − + +⎪⎩

(1)

In which, Sw is the width of the step , ( )0,1,2,3,4iz i = points to robot’s leg joints, 1 7,l l are the widths of left and right feet respectively, and 1 2,x x is the distance from the foot center to the edge of the step .

2.2 Kinematics analysis of walking up stairs of humanoid robot Cycle T of walking up stairs of humanoid robot is similar with walking on the ground, which can be divided to the cycle Td of supporting with two legs and the cycle Ts of supporting with one leg. Take the example of sagittal-plane motions, and assume that robot’s original position is that the right leg is on the step and the left leg is under

ZHONG Qiu-bo, PIAO Song-hao and GAO Chao: Motion Planning for Humanoid Robot Based on Hybrid Evolutionary Algorithm

211

Fig. 2. Diagram of walking up stairs of humanoid robot

the right leg and is one-step distance away from the right leg. See Figure 2 for the movement. In the figure, 1X is the distance between the center of the left foot and the step when the robot is at the original position, 2X is the distance between the center of the right foot and the step, and 3X is the distance between the center of the left foot and the step when the robot is at the stopping position. Sw and Sh are the width and height of each step respectively. 1l and 7l are the width of robot’s left foot and right foot respectively. To makes sure that the robot can walk up stairs smoothly, we assume that the movement of the ankle joints of swinging leg makes the leg walk up stair vertically to the step. It is based on the above feasibility analysis and simplifies the model. Additionally, it not only makes sure the smooth movement of walking up stairs, but also reduces instability caused by the too high swinging height and reduces energy consumption. Just as Figure 2, we assume the motion cycle d sT T+ , so swinging leg is vertical to the step while walking across the upper step and the ankle joint trajectory of the swing leg go across four given points. By the method of cubic polynomial interpolation, we can confirm the ankle joint trajectory from Formula (2) and (3):

2 30 1 2 3xf c c t c t c t= + + +

0; 0,1; , /3

2 1; /3 ,2 /32 1 3; 2 /3 ,

x d

x d s d

x s d s d

x s d s d

f t Tf Sw X t T T Tf Sw X t T T T Tf Sw X X t T T T T

⎧ = ∈ ⎡ ⎤⎣ ⎦⎪= − ∈ +⎡ ⎤⎪ ⎣ ⎦⎨ = − ∈ + +⎡ ⎤⎣ ⎦⎪

⎪ = − + ∈ + +⎡ ⎤⎣ ⎦⎩

(2)

2 30 1 2 3zf d d t d t d t= + + +

1

1

0; 0,/2; , /3

2 /2; /3 ,2 /32 ; 2 /3 ,

z d

z d s d

z s d s d

z s d s d

f t Tf Sh l t T T Tf Sh l t T T T Tf Sh t T T T T

⎧ = ∈ ⎡ ⎤⎣ ⎦⎪= + ∈ +⎡ ⎤⎪ ⎣ ⎦⎨ = + ∈ + +⎡ ⎤⎣ ⎦⎪

⎪ = ∈ + +⎡ ⎤⎣ ⎦⎩

(3)

In which, ,x zf f are the trajectory functions of x coordinate and z coordinate of ankle joint; ( )0,1,2,3ic i = and ( )0,1,2,3id i = are undetermined

coefficients; ,Sw Sh are the width and heights of the step respectively; ,d sT T are the cycle of supporting with two legs and the cycle of supporting with one leg respectively. Besides to determine the trajectory of both legs, body motion trajectory should be determined during the movement of walking up stairs of humanoid robot. Robot’s ZMP trajectory can be calculated by dynamic formulas. Select the ZMP trajectory with best stability to be the gait result. According to joint parameters in Figure 3, joint angle ( )1,2,3,4,5,6,7i iθ = is defined as the included angle between articulated rod and vertical line. It can be achieved by Formula (4), (5), (7) and (6) through their simple geometric relation.

2 2 2 2

2 32 2 2

2

1 11arctan arccos1 2 1 1

L H l lLH l L H

θ⎛ ⎞+ + −⎛ ⎞ ⎜ ⎟= +⎜ ⎟ ⎜ ⎟⎝ ⎠ +⎝ ⎠

(4)

2 2 2 22 3

3 22 3

1 1arccos2

l l L Hl l

θ π θ⎛ ⎞+ − −

= − −⎜ ⎟⎜ ⎟⎝ ⎠

(5)

Fig. 3. Diagram of joint parameters of walking up stairs of humanoid robot

International Journal of Advanced Robotic Systems, Vol. 7, No. 3 (2010)

212

2 2 2 25 6

5 65 6

2 2arccos2

l l L Hl l

θ π θ⎛ ⎞+ − −

= − −⎜ ⎟⎜ ⎟⎝ ⎠

(7)

2 2 2 2

6 56 2 2

6

2 2 2arccos arctan22 2 2

L H l l LHl L H

θ⎛ ⎞+ + − ⎛ ⎞⎜ ⎟= − ⎜ ⎟⎜ ⎟ ⎝ ⎠+⎝ ⎠

(6)

In which, 1, 2L L are the horizontal distances between the hip and the centers of both left leg and right leg respectively; 1, 2H H and 1, 2L L means the horizontal and vertical distance between the hip and the centers of both left leg and right leg respectively; ( )2,3,5,6il i = is robot’s leg joint length. In the cycle of supporting with one leg, the robot can be regarded to the motion of multi-stage inverted pendulum [15]. Assume the weight of robot’s connecting rod is even, so the coordinate ( )( ), 1,2...,7i ix z i = of each centre of mass can be achieved through Formula (9).

( )( )( ) ( )( ) ( )

1

1

2 2 2

2 2 2

3 3 3 2 2

3 3 3 2 2

sin

cos

- sin sin

cos cos

x

z

x

z

x

z

x fz fx r f

z r f

x r l f

z r l f

θ

θ

θ θ

θ θ

==

= × +

= × +

= × + × +

= × + × +

( ) ( )( )

( ) ( )( )

( ) ( ) ( )( )

( ) ( ) ( )( )

( ) ( ) ( )( ) ( )

( ) ( )

4 4 4 3 3

2 2

4 4 4 3 3

2 2

5 5 5 5 3 3

2 2

5 5 5 5 3 3

2 2

6 6 6 6 5 5

3 3 2 2

6 6 6 6 5

sin - sin

sin

cos cos

cos

- sin - sin

sin

- - cos cos

cos

- sin sin -

sin sin

- - cos co

x

z

x

z

x

x r l

l f

z r l

l f

x l r l

l f

z l r l

l f

x l r l

l l f

z l r l

θ θ

θ

θ θ

θ

θ θ

θ

θ θ

θ

θ θ

θ θ

θ

= × × +

× +

= × + × +

× +

= × × +

× +

= × + × +

× +

= × + ×

× + × +

= × + × ( )( ) ( )

5

3 3 2 2

7 7

7

s

cos cos1 2 /2

zl l fx sw X X lz sh

θ

θ θ

+

× + × +

= − + −=

(9)

In which, ir is the distance between joint point to rod centers of mass; il ( )1,2,...,7i = is the length of connecting rod; xf and zf are the trajectories of ankle joint. On the basis of Formula (2) to Formula (9), robot’s ZMP trajectory of x axis during the movement of walking up stairs can be calculated by Formula (10).

( )( )

( )

7

17

1

i i i i i i ix ixi

x

i ii

m z g x m x z Izmp

m z g

θ=

=

+ − −=

+

∑ (10)

In which, im is the weight of each connection rod; ixI is the moment of inertia of each connection rod; ixθ ( )1,2,...7i = is the angular acceleration of ankle rotation.

Fig. 4. Three-forward neural network

3. System design based on neural network optimized by particle swarm

3.1 Neural network design According to the features of the control model for walking up stairs of humanoid robot, two three-forward neural networks are designed. Input layer of the first network is two parameters X1 and X2 for the cycle of supporting with two legs while robot walking up stairs; hidden layer is M neural units; output layer is the horizontal distances of L1 and L2 and vertical distances of H1 and H2 between robot’s hip and the centers of both left leg and right leg. By different input X1 and X2, take

( )1 72 12 4d xXF ZMP l l= − − + as the fitness function. It

means while robot is at the original position, ZMP point is at the supporting center of both legs, and the most stable parameter output of L1, L2, H1 and H2 is generated. Network model is just like Figure 4, in which, 1Vij ( )1,2; 1,2,...i j M= = means the weight between

hidden layer and output layer. When stable L1, L2, H1 and H2 are confirmed, the value of ( )2,3,5,6i iθ = under the most stable situation during

the cycle of supporting with two legs can be achieved by Formula (4), (5), (6) and (7). During the cycle of supporting with one leg, increase iθ to iδθ ( )2,3,5,6i = ,

and take it as the input of the second neural network. The output is iδθ ( )1,4i = , and the fitness function is

712s xF ZMP l= − . It is the maximum laxity between ZMP

and the center of the supporting leg. See Figure 5 for the network model, in which, 2Vij ( )1,2,3,4; 1,2,...i j N= = is

the weight between input layer and hidden layer, and 2Wij ( )1,2... ; 1,2i N j= = is the weight between hidden

layer and output layer.

ZHONG Qiu-bo, PIAO Song-hao and GAO Chao: Motion Planning for Humanoid Robot Based on Hybrid Evolutionary Algorithm

213

Fig. 5. Three-forward neural network

3.2 Neural network optimized by particle swarm based on natural selection (SPSOBP) BP network has strict theoretic prove and approximation ability of any nonlinear function, but conventional BP algorithm has many problems such as long training time, slow training speed, easy to trap into local extremum, etc. The core principle of BP algorithm is gradient descent, so BP algorithm and the improved algorithm based on the gradient are both local search algorithms without the global search ability. Compared with BP algorithm, the strength of PSO training neural network is that it doesn't use gradient information. Additionally, it has better global convergence, but in the anaphase, convergence speed becomes slow. Therefore, the PSO algorithm based on selection principle is used to train the weight of neural network. For given neural network structure, just code the connection weight, and map it as the individual expressed by the string code. At the same time, assess each series of weight by fitness function and calculate the fitness value, and then the training issue of neural network becomes optimization problem to find the optimal connecting weight with maximum fitness function value. SPSOBP combines natural selection principle and PSO algorithm. Sort the whole particle swarm by the fitness value in every iteration. Substitute position and velocity of the worse half of the particle with the other half, and retain the historical optimal value remembered by each individual. Specific process is just as follows: 1. Select proper unit in hidden layer and initialize neural

network; 2. Carry out vector coding for particles in the swarm,

which is composed of 1Vij , 1Wij and bi . 3. Initialize the position ,i jx , velocity ,i jv , individual

extremum pbest and global extremum gbest for the particle.

4. Map each particle as the network weight, and form the network.

5. Randomly select samples from the sample space and form the sample set for the training.

6. Assess each particle, and calculate the fitness value dF or sF . Save the existing position and fitness value of all particles in the pbest of each particle, and save the position and fitness value of the individuals with the best fitness value in gbest.

7. Update the velocity ,i jx and position ,i jv of each particle.

8. For each particle, compare the fitness value and the experienced best position. If it is better, then take it as the existing best position.

9. Compare all existing pbest values and gbest values, and update gbest values.

10. Sort the whole particle swarm by the fitness value. Substitute position and velocity of the worse half the particle with the other half, and retain pbest and gbest.

11. If the stopping requirements are met, then stop searching. As the optimized results, output weight is used by neural network; otherwise, the velocity and position of each particle would be updated. Return to Step (4) to continue the search.

4. Real-time control based on embedded vision

While walking up stairs, the foot positioning for the humanoid robot should be very precise, but the positioning is mainly generated by the vision. According to the kinematic model in this paper, information such as X1, X2, step height and width should be collected, so online real-time control by the on-site real information can be realized. See Figure 6 for the principle of monocular vision positioning: on-site environmental image information and robot’s vision screen information can be linked just by the simple geometric Formula (11).

1

1

1

1

1

tan ( / )

tan ( /( ))

tan ( / )tan(( 80) * /80)/ tan( ( ) /120)

b

a b

a b

h y

h y y

x yx y xy h y

α

β

θθ

β α β

=

= +

== ∗ −= + − ∗

(11)

Fig. 6. The geometric diagram of monocular vision positioning

International Journal of Advanced Robotic Systems, Vol. 7, No. 3 (2010)

214

Embedded monocular vision is used according to the HSV color space. Through offline data collection, clustering and training, online identification requirements are met. After the treatment of decision-making system, the collected environmental information uses control system to realize the robot real-time gait control. Specific vision treatment and control process is realized in the document [16]. Space lacks for a detailed description of it. The control process is just as follows: 1. Collect, cluster and train image information offline. 2. Use neural network control system for the offline

training and study of the gait. 3. Collect image information online, and provide it to the

decision-making system. 4. According to the treatment results of image

information, the decision-making system uses motion control system for the robot real-time gait control.

5. Collect images online, and feed back the information to the decision-making system. If the goal is reached, then stop, or turn to Step (3).

5. Simulation and experiment

In case of offline, use Matlab to simulate the control method in this paper, and make the experiment on real robot MOS2007. Parameters of the humanoid robot in the simulation are 1 7 0.2m m kg= = , 2 6 2.0m m kg= = , 3 5 2.8m m kg= = , 4 5.0m kg= , 1 7 0.06l l m= = , 2 6 0.14l l m= = , 3 5 0.12l l m= = , 4 0.3l m= , 1 7 0.03r r m= = , 2 6 0.07r r m= = , 3 5 0.06r r m= = , 4 0.15r m= , 0.12Sw m=

and 0.08Sh m= . M and N of units in the hidden layers of BP neural network are 8 respectively, and the transfer function between layers are linear transfer function (purelin) and tangent S-type transfer function (tansig) and logarithmic S-type transfer function (logsig) respectively. The training times are 3000, learning speed is 0.3, error is 10-9, dimensions of selected PSO are 62, the number of particles is 30, learning factors of 1 2,c c are both 2, inertia weight w is 0.7, and the steps of iterations are 10000. See Figure (7-13) for the simulation results, and see Figure 14 for experimental screenshot. Figure 7 is BP network training diagram, and Figure 8 is the training diagram of weight optimized by SPSO. The training uses the data from 1200 sets of experiments, and training error is set 10-

9. From the figures we can see that the decrement speed of BP network is quicker than SPSOBP at the beginning, but it will not decrease with the training times when the precision reaches to a certain degree. After about 1700 times of training, SPSOBP converges to the regulated precision. From the simulation we can see that the method of SPSOBP neural network has better effect to control the gait. Figure 9 and Figure 10 show the trajectories of H1, H2, L1 and L2 while robot walking up stairs and the cycle is 3 seconds. Figure 11 shows the trajectories of hip joint and swinging ankle joint. Figure 12 shows the trajectory of joint iθ . Figure 13 shows the trajectory of ZMP point along the x axis while robot

walking up stairs. Figure 14 is the test screenshot while real humanoid robot MOS2007 walking up and down stairs. Steps are totally 3 with the height of 0.03m and widths of 0.12m, 0.10m and 0.20m. It costs 15 seconds totally. Now around the world, the control of walking up stairs of robot mostly uses the method of off-line gait planning, or solely uses neural network for the training.

Fig. 7. Training process of BP neural network

Fig. 8. Training process of SPSOBP-based neural network

Fig. 9. Trajectories of H1 and H2

ZHONG Qiu-bo, PIAO Song-hao and GAO Chao: Motion Planning for Humanoid Robot Based on Hybrid Evolutionary Algorithm

215

Fig. 10. Trajectories of L1 and L2

Fig. 11. Trajectories of hz, hx, fz and fx

Fig. 12. The trajectories of joint angle ( )1,2,...7i iθ = while robot walking up stairs

Fig. 13. xZMP trajectory while robot walking up stairs

Fig. 14. Screenshot of the process of walking up and down stairs of robot MOS2007

But it costs too much time, so it can’t be applied to the real-time control. The control method proposed in this paper can train the gait of walking up stairs offline. The usage of SPSOBP network training weight for the control can dramatically decrease the training time and meet the requirements of real-time system control.

International Journal of Advanced Robotic Systems, Vol. 7, No. 3 (2010)

216

6. Conclusion

The feasibility analysis of walking up stairs is carried out in this paper by the features of humanoid robot, and the kinematics model of the gait cycle is established. Input and output of original position and joint trajectory which are necessary for the control of walking up and down stairs are realized by two neural networks. Selection-based PSO algorithm is used to optimize the weight of BP neural network. Gait trajectory with the best ZMP stability is achieved by Offline training. The process of walking up stairs is controlled online by the method that embedded monocular vision collects the on-site environmental information. Issues that should be solved in the future include the real-time gait control on the irregular ground and obstacle-space-based navigation for humanoid robot.

7. References

[1] Vukobratovic M. Zero moment point, thirty five years of its lift. International Journal of Humanoid Robotics, 2004, (191):157-173.

[2] Huang Q. Planning walking patterns for a biped robot, IEEE Trans. Robot. Autom. 2001,17(3).

[3] Peiman N M, Ahmad B. Mathematical simulation of a seven link biped robot on various surfaces and ZMP considerations. Applied Mathematical Modelling, 2007, 31(1):18-37.

[4] João P. Ferreira, Manuel Crisóstomo, A. Paulo Coimbra. ZMP trajectory reference for the sagittal plane control of a biped robot based on a human CoP and gait. The 2009 IEEE/RSJ International Conference on Intelligent Robots and Systems October 11-15, 2009 St. Louis, USA, pp:1588-1593

[5] Tomomichi Sugihara, Standing Stabilizability and Stepping Maneuver in Planar Bipedalism based on the Best COM-ZMP Regulator. 2009 IEEE International Conference on Robotics and Automation, Kobe International Conference Center Kobe, Japan, May 12-17, 2009, pp: 1966-1971

[6] Cupec R, Schmidt G, Lorch O. Vision-guided walking in a structured indoor scenario. AUTOMATIKA, 2005,46(1) :49–57.

[7] Jimmy Or, A hybrid CPG_ZMP control system for stable walking of a simulated flexible spine humanoid robot. Neural Networks 23 (2010) 452_460

[8] Reza Ghorbani, Qiong Wu, G. Gary Wang, Nearly optimal neural network stabilization of bipedal standing using genetic algorithm. Engineering Applications of Artificial Intelligence 20 (2007) 473–480

[9] Ching-Long Shih, Ascending and Descending Stairs for a Biped Robot. IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS—PART A: SYSTEMS AND HUMANS, VOL. 29, NO. 3, MAY 1999.pp:255-268

[10] Yao X, Liu Y. A new evolutionary system for evolving artificial neural networks. IEEE Trans. on Neural Networks, 1997,8(3):694-713.

[11] Leung H F, Lam H K, Ling S H, et al. Tuning of the structure and parameters of a neural network using an improved genetic algorithm. IEEE Trans. on Neural Networks, 2003,14(3):79-88.

[12] Kenned Y J, Eberhart R C. Particle swarm optimization. Proc. of the 1995 IEEE International Conference on Neutral Networks. Piscataway, NJ: IEEE Press, 1995: 1942 - 1948.

[13] Chau K W, Application of a PSO-based neural network in analysis of outcomes of construction claims. Automation in Construction, 2007(16):642-646.

[14] Guan Yisheng, Yokoi K, Tanie K. Feasibility: Can humanoid robots overcome given obstacles? Proc. of the 2005 IEEE International Conference on Robotics and Automation, Barcelona, Spain, April 2005: 1054-1059.

[15] Honjo T, Luo Zhi-Wei, Nagano A. Parametric excitation of a Biped Robot as an Inverted Pendulum. 2008 IEEE/RSJ International Conference on Intelligent Robots and Systems Acropolis Convention Center Nice, France, Sept, 22-26, 2008: 3408-3413.

[16] Ren Honge, Zhong qiubo, Kang junfeng. Object recognition algorithm research based on variable illumination. Proc. of the 2009 IEEE International Conference on Automation and Logistics, Shenyang, China, August 5-7, 2009:1609-1613.