Free-Gait of Quadruped Robots Using Neural Networks for Etermining the Order of Swing Leg

download Free-Gait of Quadruped Robots Using Neural Networks for Etermining the Order of Swing Leg

of 6

description

Robotics

Transcript of Free-Gait of Quadruped Robots Using Neural Networks for Etermining the Order of Swing Leg

  • Proceedings of 2004 1EEElRS.I International Conference on Intelligent Robots and Systems September 28. October 2,2004, Sendai, Japan

    Free-Gait of Quadruped Robots Using Neural Networks for Determining

    the Order of Swing Leg Kiyotaka Izumi*, Tomohiro Yamaguchi**, Keigo Watanabe *Dept. of Advanced Systems Control Engineering, Saga University

    I-honjomachi, Saga 840-8502, Japan Email: [email protected]

    **Dept. of Electrical, Electronics and Information Engineering, Kanagawa University 3-27-1 Rokkakuhashi, Kanagawaku, Yokohama 221-8686, Japan

    Email: [email protected]

    Abslmcf-In walking of quadruped robots, a better per- formance is obtained by changing the order of swing leg at a gait. In this paper, we study a walking with obstacles avoidance of a quadruped robot using neural network (NN) for determining the moving distance of the robot and for determining the order of a swing leg. The training data is considered with initial positions of each leg. The effecti~enes oflhe present method is demonstrated with some experiments using TITAN-VIII.

    I. INTROIIUCTION Although legged mobile robots are inferior to wheeled

    or crawler types in mobility efficiency on the flat ground, they demonstrate high motion performance and adaptation capability to the ground by utilizing their high degrees of freedom (DOF). Since such robots can choose stable leg- placement, stable movements can be performed on irregular terrains [I]. Moreover. they demonstrate some unique func- tionalities: e.g., they turn without any slippage; they realize a stable scaffold when they stop; and their supporting legs can he selected at any point on the ground[2].

    However, it is very difficult to decide robot gait due to its high DOE When the legs of the robot are simply controlled by a fixed command, adaptation capability to the terrain is remarkably restricted and sometimes it is impossible to maintain a stable walk. Moreover, when a leg is unable to he placed properly, optimum leg placement must be efficiently found from among other candidates.

    Therefore, it needs for a legged mobile robot to sequen- tially decide the progression of legs. For that purpose, the robot predictively perceives and recognizes geographical features of the terrain, and it consequently gets over any obstacle by using adaptation ability acquired in advance. From this fact, legged robots are not necessary to avoid all the obstacles by altering their path, unlike wheeled or crawler types. Because, they can avoid an obstacle by nawling-over or striding, according to the obstacles nature and the current state of the robot. Thus, it can be found that the mobility efficiency to reach a destination is improved by such action. Moreover, when robots have many legs like 4-legged or 6-legged types, the movement range is affected

    by the order of swing leg. This paper examines on the order of swing leg for

    the obstacle avoidance of quadruped robots. Such robots have two walks: one is static to retain static stability, keeping the center of gravity (COG) of the robot in the polygon conshucted by the supporting legs and the other is dynamic, retaining dynamic stability, which is statically unstable. Both have merits: in static walk, the robot walks on irregular terrain, but dynamically the robot efficiently i z e s energy consumption and walking speed [ 5 ] .

    In this research, since an obstacle avoidance is taken into consideration, the static walk is adopted as a basic walk and the order of swing leg is determined. A free gait planning in the static walk has been already formulated as a conditional optimization problem and the solution method by the Monte Carlo method was proposed by Nakamura et al. [6]. However, assumed environment specializes the result obtained from this method, it has no flexibility to the outside of search environment.

    An other approach switches a basic controller using a sequential machine[3], [4]. As a result, the robot performs the free-gait locomotion on the irregular terrain.

    Dimensions of the obstacle and the current state of the robot can be perceived accurately, because of the presence of force sensors, ultrasonic sensors and potentiometers on the present quadruped robot. A simulator is built on the basis of the actual robots structure and the order of swing leg in the obstacle avoidance is acquired from the simulator. Robot actions, i.e., the amount of forward and sideway movements and the tuming angle, are determined by a neural network (NN), considering the position of the destination, the robot leg, and obstacle dimensions (71. Furthermore, the order of swing leg is determined from the amount of movenients and the robots self-state. The static walk of the quadruped robot has 24 kinds of the order of swing leg. Since the static walk always needs to set the COG of the robot in the polygon constructed by the supporting legs, the amount of movements of the body is different, depending on the order of swing leg. Therefore, the order of swing leg is determined by an another NN. The

    3400 0-18034463-61041$20.0O 02004 IEEE

    Authorized licensed use limited to: Khajeh Nasir Toosi University of Technology. Downloaded on December 21, 2009 at 05:43 from IEEE Xplore. Restrictions apply.

  • PC:RT- Linm PC:RT- Linm

    I ~ o r c ~ sensor I I I Potentiometer I

    Fig. 2. TITAN-VI11

    NN design parameters are optimized by a genetic algorithm (GA) so that the movement of the robot's body may he a minimum and the stability condition of the static walk should be satisfied.

    11. QUADRUPED ROBOT

    Figure I shows the experimental apparatus. TITAN-VIU [SI (Fig. 2) is the quadruped robot. TITAN-VIlI has four legs, one with three DOE and each joint has a potentiome- ter. Force sensing resistors (Interlink Electronics, FSR P m # 402) are used on the leg sole to measure force exerted on each leg. Ultrasonic sensors (NiceRa, TR40-16) are used on the forelegs to detect an obstacle; each foreleg has three ultrasonic sensors.

    Potentiometer measurement and force sensing resistor are transferred lo a personal computer through a robot interface hoard (Fujitsu, RF-01) and an AID converter board (Interface Corporation, PCI-3133). The ultrasonic sensor measures the time difference between emittance and

    reception of ultrasonic waves, which is reflected on an obstacle by universal pulse processor (UPP), part of RIF- 01. The computer sends joint angle commands to a motor driver (Okazaki Sangyo Co. Ltd., Titech Motor Driver) on the robot through the robot interface hoard. Since sensor information in feedback control must be processed in real time, RT-Linux is used as the computer OS.

    The coordinate system of one leg of the robot is defined in Fig. 3. For any leg, assuming that position coordinates of a shoulder are T ~ ~ ( x ~ , : ~ ~ ~ , z s i ) and position coordinates of a sole are rfi(xfi,yfi, zit), joint angles, B(Boi , B l i , B 2 ; ) are obtained by

    where

    zt = Z f i - isi + 13 (6) Here, i denotes the leg number (i = 1,2:3 ,4) . With reference to [SI, 1 0 , II . and 12 are lengths of links. The ultrasonic sensor and the force sensor are on the foot at 13, where l3 = 130 [mml.

    Given the initial positions for soles and shoulders, joint angles of legs including swing leg are obtained from Eq. (I). Note, however, that the operation of each joint is 90.0 5 Sal 5 245.0, -65.0 5 aaz 5 90.0, 115.0 5 oo3 5 270.0, 65.0 5 oo4 5 -90.0, -65.0 5 oii 5 65.0 and -65.0 5 Bzi 5 90.0 in degrees. Actions should he determined so as not to exceed the operational range.

    111. DT.1'1:RMINATION OF THE OKDER OF SWING LEG FOR FREE GAI'T

    A block diagram of obstacle avoidance control system is shown in Fig. 4. Robot actions, i.e., the amount of forward and sideway movements and the turning angle, are determined by the upper NN, considering the position of the destination, the robot leg, and obstacle dimensions. Furthermore, the order of swing leg is determined from the amount of movements and the robot's leg position by using the lower NN. Positions of shoulders and legs are computed from the amount of movement and the order of swing leg. Each joint angle is calculated by Q. (I), and the output is communicated to the robot.

    Since obstacle avoidance is taken into consideration in this study, it is assumed that the static walk is adopted

    3401

    Authorized licensed use limited to: Khajeh Nasir Toosi University of Technology. Downloaded on December 21, 2009 at 05:43 from IEEE Xplore. Restrictions apply.

  • I I 1

    Fig. 4. Obstacle avoidance system

    Fig. 3. Coordinate System of TlTAN-Vlll's leg

    as a basic walk and the order of swing leg is deter- mined. 24 kinds of the order exist in a static walk of the quadruped robot. Such kinds of the order can be tried to implement whenever the quadruped robot walks, hut the hrder of swing leg in this research is determined by a three-layered NN shown in Fig. 5 . Inputs to the NN are assumed to be the robot's leg position yfl(k), . . . , yfr(k). the amount of x- and y-directional movements of the robot {AXr(k),Al'~(k)} and the tuming angle of the robot AEr(k). Moreover, we prepare 24 units at the output, corresponding to 24 kinds of the order. The order of swing leg fed to the quadruped robot uses the order of the unit whose output value is closest to one among output units.

    0: 1-2-3-4

    1 : 1-2-4-3

    2: 1 - 3 - 2 4

    3: 1-3-4-2

    3:4-3-2-1

    A radial basis function neural network (RBF") (91, known as an h" that realizes various approximation func- tions, is used in the control system. With an RBF", a nonlinear function is expanded by any basis function having a circular contour, and is used as function approxi- mation or pattern recognition. Unit functions at the hidden (or intermediate) layer of RBF"s a e given by

    where $6 denotes ith unit output at the hidden layer, design parameters of RBF are center c~. and standard deviation ai for each input. j t h unit output at output layer o3 is given

    m by

    0 j ( k ) = c2ui34i(z) (8) i=l

    which can he computed by a linear summation of outputs of the hidden layer. Here, the number of units at the hidden layer is to be m = 70 and w,j denotes the connection weight between the 7th hidden unit and the j t h output unit.

    3402

    Authorized licensed use limited to: Khajeh Nasir Toosi University of Technology. Downloaded on December 21, 2009 at 05:43 from IEEE Xplore. Restrictions apply.

  • Generation

    Fig. 6. Evolution history

    IV. ACQUISITION OF T H E ORDER OF SWING LEG In a static walk of quadruped robot, since the amount of

    movements of the body changes with the order of swing leg, the robot produces a different movable range for each order of swing leg. For this reason, if the stability of static walk is maintained hy less movement of the body, then the movable range of each leg becomes large; it can consequently enlarge the movable range of the robot.

    For teacher signals used for this research. when the robot's leg position x f l ( k ) and xfR(k) are set to -250 [mm], x f ? ( k ) and xfq(k) are set to 250 [mm], yf~(k) and yp(k) are set to 300,250,200 [m], yfs(kj and yf4(k) are set to -300; -250, -200 [mm]. the amount of x-directional movement of the robot AX,(kj is changed from -100 [mml to 100 [mm], the amount of y-directional movement of the robot AYr(k ) is changed from 150 [mml to 350 [mm] and the turning angle of the robot AOr(k) is changed form -77112 [rad] to 71/12 [rad], respectively. The order of swing leg that the movement of the robot's body is a minimum and the stability of static walk is satisfied is set as one, whereas the other order is set to zero. Note however that when the amount of changes of Zr(k), A X r ( k ) , AYr(k), and AOr(k) is fixed, the number of selections is changed, depending on the order of swing leg. Therefore, the amount of change of A X r ( k ) , A Y r ( k ) , and AOr(k) is enlxged for the case of high number of selections, whereas the amount of change of movement is made small for the case of low number of selections, and 5 data are prepared for each order of swing leg.

    In this research, the order of swing leg is determined using RBF". Connection weights of the NN and parame- ters (center and standard deviations) of RBFs are optimized by a GA [IO] so that the relation between an input and an output is satisfied. There are 19 kinds of the order of swing leg chosen when changing Zr(k j , AXr(k), AYr(kj, and AOr(k). respectively, and 5 data are prepared for each one. Here, there is a total of 120 kinds of combination optimized by using GA. The associated fitness function of

    Pis. 7. Coordinatcs of the robot's legs

    an individual is defined by

    whose solution is searched for as a minimization problem. Here, 11 is the total of the combination in optimization. J i tnessA is an evaluation function only applied when a teacher signal t s j is one, which is given by

    where j denotes any unit number of output layer and jl denotes the unit number of t s j 1. On the contrary, f i tnessB is an evaluation function applied when a t s j is zero, which is given by

    f i tnesss = error,, (11)

    where error,, denotes the largest value in the difference of o1 and ts,, i.e., it is given by

    error,.,, =MAX{(oi-tsil . . . ,(o,-ts,h.. .,(ozi-tszi)} (12)

    Here, j denotes the unit number from 1 to 24 except for the case of j , denoting the unit number of t s j s 1. Evolution history of GA is shown in Fig. 6. The minimum value of fitness function in 30000 generations was 74.02891. The number of failed data to train was 26 out of 120 training data.

    V. EXPERIMENTS 01' NN FOR DETERMINING THE ORDER OF SWING LEG

    Experiments were conducted by using the quadruped robot TITAN-VIII. The order of swing leg is determined using the RBFNN trained in simulation. Coordinates of robot's legs are shown in Fig. 7, where the y-axis is set to the forward direction of the robot, and the experiments were performed on flat ground. Furthermore, it is assumed that the body is always parallel to the ground.

    The movement path of the quadruped robot in an ex- periment is shown in Fig. 8, and the order of swing leg

    2403

    Authorized licensed use limited to: Khajeh Nasir Toosi University of Technology. Downloaded on December 21, 2009 at 05:43 from IEEE Xplore. Restrictions apply.

  • VJl 1/13 z / f 3 yf4 AXr(k) AYr(k) ABr(k) [mm1 [mm1 ["I ["I Imml ["I Idegl

    250.0 2 ~ 0 . 0 -200.0 -2m.n 30.0 ~ 0 0 . 0 -5.0 250.0 250.0 -250.0 -250.0 -5.0 150.0 3.0

    Order of swing leg

    4-2-3-1 1+4-2*3

    r

    ~ . . .

    230.0 260.0 250.0

    I ? T I

    ~~ ~ ~~ ~ -. ~ ~~ .

    220.0 -270.0 -260.0 0.0 200.0 0.0 4-2+1&+3 220.0 -240.0 -280.0 10.0 160.0 -3.0 2-4-3-1 280.0 -270.0 -260.0 -2.0 180.0 5.0 1-2+3&+4

    hidden Ihyrr Fig. 8. Movement palh of the quadmped rohot

    Fig. 9. RRbNN lor deleminin: the movcmcnls of Ihe mbol

    to the robot's amount of movements and leg position are tabulated in Table 1. Here, the k g number used as a swing leg is assigned as the left foreleg 10 1, right foreleg to 2, left hind-leg to 3 and right hind-leg to 4, as shown in Fig. 7. It is found that the order of Swing 1% changes with the robot's amount of movements and leg position.

    y.directional distance Yde(k), the direction between the destination and the azimuth of the robot ode(k) . Positions of each sole and obstacles are defined in the frame whose origin is fixed to the body center. Outputs of the NN are the amount of x- and y-directional movements of the robot -

    Fig. 9. This NN is trained with the trained NN that determines the order of swing leg to achieve action with a minimum number of walk cycles. Input to the present NN is assumed to he the position of each sole

    height ZT(k), x-directional maximum and minimum dis- tances to an obstacle at right {xolma,(k), zormin(k)}, f i tness = c (fitness, + fi tness, + fitness,) (13) y-directional maximum and minimum distances to the obstacle at right { ~ ~ ~ ~ ~ ? ( l i ) , y ~ ~ * i ~ ( k ) } . and the height where ob, is the number of training data. f i tness, is Bn of the obstacle at right {zormol(k),~orm,n(k)). x- evaluation function associated with a penalty for collision directional maximum and minimum distances to an ob- with an obstacle. f i tness, is given by

    ,-onnection weights of and parameters of m~~ are trained by GA as Same as the determine the order of swing leg. The associated fitness function ,,fan individual is defined by

    for the NN

    ob, {zfl(k),yf,(k) , . . . , x f 4 ( k ) , y / 4 ( k ) } , the robot's body

    i = l

    ~~

    (14) 0; if there is no collision 10(4,(k) + yze(k)), otherwise

    stacle at left {xormor(k), z,lmin(k)}, y-directional max- imum and minimum distances to the obstacle a1 left {y~lmoi(k),yolmin(k)}, and the height of the obstacle at

    f i tness, = . .

    left {zolmar(k), zolmin-(k)}; x-directional distance between the center of gravity of the robot and destination zde(k),

    Walking stops if the robot collides with an obstacle. fitness, is an evaluation function related to joint con-

    3404

    Authorized licensed use limited to: Khajeh Nasir Toosi University of Technology. Downloaded on December 21, 2009 at 05:43 from IEEE Xplore. Restrictions apply.

  • -500 0 500 x"1

    R E . 10. Movemcnl path afthe quadrupedrobot by the proposed method

    suaints, i.e., whether each joint angle is in an admissible rage or not. fitness, is given by

    (15) 0, if inside of the range 10(&(k) + y,&(k)), otherwise fitnesu, =

    Walking stops if the joint exceeds the joint constraints. fitness, is an evaluation function related to walk cycles required to reach the destination, and given by

    fitness ~ ~ (&(k) + yie(k)) (16) where T denotes the walk cycles that is required to move from the starting point to the destination while avoiding obstacles by stable walking. The maximum number of walk cycles T,,, in one environment is set to 50 and walking stops if the walk cycles exceed T,-.

    T c - 50

    VII. EXPERIMENTS

    The number of obstacles is two. Each obstacle location is as follows:

    (%ri,~ori) = (0.1,0.85), ( % 2 , ~ o r 2 ) = (0.1,0.65) (%T3? ~ o r 3 ) = (0.5,0.55), ( + o r z : ~ o r z ) = (0.5: 0.75) ( % I I ; Y O I I ) = (-0.5,0.86) ( l o i 2 ; ~ o t z ) = (-0.5,0.66) (2013:Y~13) = (-0.15,0.65) (%i4;%i4) = (-0.15,0.85)

    where the obstacle at left can not be gotten over by the robot. Initial distance error is set to (zderyde) = (0,1.8)

    Simulation results are illustrated by Fig. 10 and Table 11. It is found that the robot gets over the obstacle at right, avoiding the obstacle at left. Moreover, the robot arrives at the destination with 11 walk cycles. Table II shows the alteration of the order of swing leg.

    [ml.

    TABLE 11 THE MOVEMENT DATA BY T H E PROPOSED METHOD

    VIII. CONCLUSION In this paper, an approach using neural networks has

    been discussed to realize a free-gait locomotion of a quadruped robot. The proposed method was constructed with two neural networks to determine the order of swing leg and the movement of the robot. Design parameters of each neural network were optimized using a genetic algorithm so that the robot reached the destination with a minimum number of walk cycles.

    The present method can be also applied for an untrained situation. This method is useful for acquiring an obstacle avoidance path to the destination. This fact was illustrated with some experiments.

    REFERENCES Ill K.K. $ a r k and G.G. Adms , "Dynamic modclin8 and hydrody-

    namic prrfamancc of hiomimaic undenualer rahot locomotion:' Auroriomoas Robots, vol. 13. no. 3, pp. 221-240, 2002.

    121 S. Hirose and K. Yoneda "Towuard dcvelopmcnt of pmaical quadruped wulluq vehicle:' J. of Robotic9 Sociep of Jopon. wl. I I , no 3. pp. 160,165. 1993.

    131 W. S . MacDonald and R. A. Gmpcn, "Building Walking Gaits for lmgular lcrrain from Baris Conuollcn:' Proc. of the 1997 IEEE In,. Conference on Robolic~ (11111 Auromofioa, vol. 1, pp. 481486, 1997.

    141 M. Huher and R. A. Gmpen, '"Prior Smcture for On-line I-caming." Pmc. of 1997 IEEE Ini. Sjmposiwn on Compiroiiorurl Imelligence i n Robotics end Auromtion, pp. 124-129, 1997.

    I S ] H. Kimura, "Dynamic walk of the quadruped rohat:' J. of Robotics Sociery of Japan, vol. 11, no 3. pp. 372-378. 1993.

    161 T. Nakamura, M. Seki. Y. Man and H. Adachi, "Pm gait planning using Monte Carla method far locomotion on rugged terrain,'' 1999 JSME Corferrnee on Robolics ondMechormnicr, lA1-42~061 (CO). 1999.

    171 T. Yamaguchi. K. Watanahc. K. l iumi and K. Kiguchi, "Obstacle avoidance for Quadruped Rohots Using a Neural Network:' J. of Advonced Computorioriol hiielligenee arid lt~lellipmi hfomarics.

    181 S. Hirasc and K. Ankawa. "Developmcnt of quadruped walking mho1 TITAN-VIII for commercially avvilahlc rcsearch platform," I of Roborirr Soner). of Jopon, vol. 17, no 8, pp. 1191-1197, 1999.

    191 M. Sakawa and M. Tanaka, Introduction io N e i ~ ~ ~ m p ~ t i a g , Tokyo. MotikiU Shuppan Co., Ltd, 1999.

    I101 Z. Michalcwicr, Generic Algo!irhmr + Dam Srruerirre = Evolarion Pmgrom. 3rd. revised and Wended edition, Sptingn; Germany, 1996

    "01. 7 no. 2. pp. 115-123, 2w3.

    3405

    Authorized licensed use limited to: Khajeh Nasir Toosi University of Technology. Downloaded on December 21, 2009 at 05:43 from IEEE Xplore. Restrictions apply.