Application and Research of Humanoid Robot Based on Second-Order Cone Programming

It is an extremely complex process of controlling walking motion for humanoid robot, and its dynamics model has many rich features. The article puts forward a kind of optimization design method on any time humanoid robot walking movement. Firstly, this article makes a stability analysis of walking humanoid robot based on the ZMP criterion, at the same time with the design of using a humanoid robot walking movement by the criterion of the error between the expectations and kinetic energy of the weighted kinetic minimum norm make the problem into a second-order cone programming (SOCP) optimization problem, then use the interior point method to solve the kinetic energy of optimization coefficient of the humanoid robot walking movement, and by compares with the LMS design method and genetic algorithms, finally the algorithm is validated in the simulation and experiment, the numerical results are present for illustration.


Introduction
A second-order cone method is a kind of optimization design method that can satisfy many targets [1]. For norm standards, including single norm standards and mixed norm standards, they can both be realized by the second-order cone method [2]. What's more, the second-order cone method can also realize the robust filter [3]. The major concept of the second-order cone method is to change the objective function in the optimization problem into the restraint function by introducing variables. Then combine the new objective function variables with the original optimize-needed variables into new optimization variables. The original second-order cone constraints can be transformed into the second-order cone programming about the new optimization variables. Last, as long as the objective function and the restraint function in the optimization problem can be expressed to the secondorder cone form, the optimization problem can be solved by the second-order cone programming method. Lobo Miguel Sousa etc [4] presented a second-order cone programming which is can be efficiently Applicated in many fields.
The second-order cone methods have been used in robots on several fields, but the applied range of it is not very vast. Gao Chao etc examined the problem of extrinsic calibration of multiple LIDARs on a mobile vehicle platform [5]. Derenick Jason C etc [6][7] presented an optimization framework for target tracking with mobile robot teams and presented a discrete-time optimization framework for target tracking with multi-agent systems. Then Derenick Jason C etc [8] investigated convex optimization strategies for coordinating a large-scale team of fully actuated mobile robots. Spletzer John R etc [9] considered the task of repositioning a formation of robots to a new shape while minimizing either the maximum distance that any robot travels, or the total distance traveled by the formation. Verscheure Diederik etc [10][11] focused on time-optimal path tracking, a subproblem in time-optimal motion planning of robot systems and focused on time-optimal and time-energy optimal path tracking, which are subproblems in optimal motion planning of robot systems. Chakraborty Nilanjan etc [12] presented algorithms that allows a robot to decide when it is feasible for it to move to a desired point by adjusting its own positions (and the positions of some other robots in the network), while maintaining all the network connectivity constraints. Khemchandani Reshma etc [13] treated the kernel selection problem as an optimization problem over the convex set of finitely many basic kernels, and formulate it as a second order cone programming (SOCP) problem.
The second-order cone methods have been also widely used in filter design optimization problem and beamforming device optimization problems prior to be used in robots, and obtain a good actual effect. Y. Q. Bai, M. EL GHami and C. Roos discussed respectively the dual interior point algorithm [14][15] to solve the second-order cone optimization and linear programming problems by using the function of kernel. Widrow etc [16] use the LMS self-adaptive method, which makes the design filter frequency response convergence to expect response. Yuan etc [17] mentioned a formulation which leads to an optimization problem to design SMF, which is solved efficiently in a second-order cone programming (SOCP) framework by an interior point implementation. YANG Yi-xin etc [18] improve the LMS self-adaptive method, and change the value of each frequency index on the value factor automatically in the FIR filters self-adaptive process. Finally, realize the optimal value of the cost factor, this paper to draw upon this method, introducing it to the humanoid robot walking control optimization, and make a comparison.
Humanoid robot is designed on the Angle of bionics. Comparing with the four feet walking robot and wheeled robot, humanoid robot's centre of gravity is higher and bottom supporting surface is smaller in order to make it two feet touchdown. These characteristics make itself natural compose an unstable structure. Comparing with the wheeled robot, humanoid robot has advantages of flexible motion, activity convenient and so on. It's sure to play an important role in the future of the human society. But the increase of labor and the expansion of activity scope will greatly increase the danger of humanoid robot's action, especially the knocking and the falling are inevitable when working in uncertain environment. At the same time, with the unceasing development of humanoid robot technology, the size of the robot will continue to increase. For these bigger humanoid robots in size, if walking instability, the consequences of falling are always destructive. Based on the above, the control technology and the optimization design model of humanoid robot's walking and falling are of great practical significance. This article uses the second-order cone optimization algorithm to control and optimize the process of humanoid robot's walking effectively. And it puts forward to the optimization algorithm of robot walking control.

Second-order cone programming
Second-order cone programming is a subset of the convex programming problem. It makes a linear function to minimize in the condition of satisfying the a group of second-order cone constraints and linear equation constraints. It is expressed as follows:

 
T  stand for the transpose, C stand for plural sets， R stand for real sets. Each constraint in (1b) can be expressed as second-order cone.
is defined as follows: The geometrical meaning of second-order cone optimization is to find the optimal point satisfying the objective function of minimizing in three-dimensional second-order cone.
The equality constraints in (1c) can be expressed as zero cone :     0 g g Fy (4) Where the zero cone   0 g is defined as follows: (5) From (1) we can see that the linear programming (linear inequality constraints) and convex quadratic programming are the exceptions of second-order cone programming. On the other hand, the second-order cone programming itself also the subset of semi-definite programming. Because the second-order cone constraints in (1b) can be expressed as the linear matrix inequality (6) Where I is the unit matrix of appropriate dimension, "  " stands for the matrix semipositone.

Dynamics model of humanoid robot
It's enough to adopt 2D inverted pendulum or three-link bipedal model, when studying the posture and simple sports such as swing. But if you want a better understanding of humanoid robot walking, such model above is far from enough. In the paper, a seven of connecting rod humanoid robot model is built on the longitudinal plane. In this model, the humanoid robot's any part of the body (here first not consider his arms and head) is composed by rigid connecting rod, connecting the rods by joints. Controlling the joint rotation can promote the movement of connecting rod. Seven connecting rods stand for two feet, two little legs, two legs and an upper body. For convenience, this model takes the model longitudinal vertical plane named z -x coordinate motion model as the example, not considering the situation of the model horizontal vertical plane named z -y coordinate model. Specific model is shown in figure 1, and assumed that each connecting rod's quality is concentrated on the centre,   Humanoid robots walk can be seen as a process in which a single leg support and two legs support alternate execute. Two legs support takes much shorter time in the whole walking cycle, so it can be ignored, and only consider single leg support. In robot single leg support cycle, simplify it into multistage inverted pendulum. Taking the left support legs toe of the robot in the picture as the origin, we can get expressions of each robot connecting rod's centre of gravity coordinate    

Stability analysis of humanoid robot
The application point which the resultant force F of ground counterforce passes through is the moment zero point, abbreviation ZMP. As long as the robot moves, with the ZMP point inside the support of polygon, the robot is thought to keep its stability. To use ZMP criterion, first assume that the feet of robot fixed on the ground, and keeping contact with the ground surface, and the robot posture, absolute angular velocity and linear velocity can be measured. The ZMP of double sufficient exercise for humanoid robot can be obtained from the following formula: Where P Mg f    is the relation between kinetic momentum and the ground forces, and L c Mg      is relation between momentum and the torque of ground forces. If the inertia tensor of each robot connecting rod around its centroid is ignored, we can get the expression of the simplified ZMP:  (12) Where ( ) ( ) Suppose the sampling points of time are , these sampling points have uniform or non-uniform intervals. Solving humanoid robots walking optimization problem is to make the following error weighted norm minimum.
Where ( ) d k T t is the expectation response of the optimization design in time k t , is the nonnegative weighting coefficient, which is used to adjust fitting closely degree of different frequencies. Typically, error norm generally take 1 L , 2 L or norm L  , exactly 1, 2, , p or   . The filter design problem of these three norm standards can be expressed separately as follows:  Till now the norm standards humanoid robots walking optimization problems (12) have turned into the restraint function algorithm in order to solve.

Simulation and experiment
Using respectively LMS self-adaptive method and second-order cone programming optimization design method in this article, and the Matlab simulation helps realize humanoid robot walking movement optimization design at any arbitrary time node. It also helps examine the performance of humanoid robots walking movement optimization design model designed in this article, and make the comparison of iteration error effects and displacement error effect respectively between this method and GA.
Select test time for 0.8 s, and in this period the walking research of robots is enough to satisfy the stability requirement for the instantaneous walking. At the same time take time node 0.1 s step, and assumed that humanoid robot movement speed is humanoid robot quality is m, and the robot motion kinetic energy expectations should be 2 .
Kg J . The simulation results are as follows. Where Fig.2(a) is the simulation of the robot motion kinetic energy, and Fig.2(b) is the comparison of walking optimization design in delay aspects between the two methods.  In order to prove the superiority of the second-order cone optimization method in optimization design, we make a comparison of iteration error effects and displacement error effect respectively between this method and GA. Fig.3 is the comparison figure of second-order cone optimization method and GA at iteration error effects. Where the initial population of GA is 12, dimension is 7, taking the mutation probability 0.6%, number of iterations is 500. Fig.4 is the comparison figure of secondorder cone optimization method and GA at displacement error effect. Make the humanoid robot walk along the marked straight line. The test distance is 5m. Make the optimization to robot gait respectively by second-order cone optimization algorithm and genetic algorithm, and test the error of the deviation from the marked line. From Fig.3, the convergence speed of the SOCP iteration error effect is faster than GA at the start, and in about iteration 160 it will begin to tend to the optimal value. But the GA shocks significantly, and begins to tend steady in about 280 steps.   In the process of humanoid robot walking straight along the marked 5m line, because the ground is not smooth etc subjective factor, and robot has no vision navigation guidance, it is unavoidable to deviate from its specified orbit. From Fig.4, the displacement error effect of SOCP is better than GA optimization algorithm. In case of offline, use Matlab to simulate the control method, and make the experiment on real robot NAO. In Fig.5, one step simulation of walking on slop is present, and in Fig.6 and Fig.7, experimental screenshot for walking on slop and step are proposed.

Conclusion
The model of a seven-connecting rob humanoid robot is built in the longitudinal plane, constructing the process of humanoid robot walking into a multistage inverted pendulum form. In view of the complexity of this optimal control problem is great, this article use second-order cone optimization programming design to change the optimal control problem into second-order cone optimization problem, and use the Matlab to make the simulation test, comparing with the LMS method at the same time. According to the simulation, this method is very effective for complex mathematical optimization problems containing constraints. And when piecewise number diminishes, this method can realize online optimization. Experimental results show that this control method can effectively control humanoid robot walking process and ensure its walking stability. www.intechweb.org www.intechopen.com