You are on page 1of 6

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: izumi@me.saga-u.ac.jp
**Dept. of Electrical, Electronics and Information Engineering, Kanagawa University
3-27-1 Rokkakuhashi, Kanagawaku, Yokohama 221-8686, Japan
Email: tomohiro@ee.kanagawa-u.ac.jp

Abslmcf-In walking of quadruped robots, a better performance 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 legplacement, stable movements can be performed on irregular
terrains [I]. Moreover. they demonstrate some unique functionalities: 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 sequentially 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

0-18034463-61041$20.0O 02004 IEEE

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
izes
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

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

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

reception of ultrasonic waves, which is reflected on an


obstacle by universal pulse processor (UPP), part of RIF01. 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 , B2;)
are obtained by

where

zt = Z f 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.

- isi + 13

(6)

Here, i denotes the leg number (i = 1 , 2 : 3 , 4 ) . With


reference to [SI, 10, 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:RMINATIONOF THE OKDER OF SWING LEG

11. QUADRUPED ROBOT

FOR FREE GAI'T

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 potentiometer. 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

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

Fig. 4.

Obstacle avoidance system

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

Fig. 3.

Coordinate System of TlTAN-Vlll's leg

as a basic walk and the order of swing leg is determined. 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.

A radial basis function neural network (RBF") (91,


known as an h" that realizes various approximation functions, 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 approximation 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
by
m
0j(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
Pis. 7. Coordinatcs of the robot's legs

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 A Y r ( 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 parameters (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 Z r ( 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

an individual is defined by

whose solution is searched for as a minimization problem.


Here, 11 is the total of the combination in optimization.
JitnessA 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,
fitnessB is an evaluation function applied when a t s j is
zero, which is given by

fitnesss = 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 experiment 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/f3

I"[

"I[

[mm1

[mm1

250.0

250.0 -250.0
2 ~ 0 . 0 -200.0 .
-.
220.0 -270.0
220.0 -240.0
280.0 -270.0

250.0
~
.
..

230.0
260.0
250.0

AXr(k)
Imml

yf4

~~

-250.0

-5.0

-2m.n
-260.0
-280.0
-260.0

30.0
0.0
10.0
-2.0

~~

~~

Order of
swing leg

AYr(k) ABr(k)

"I[
150.0

Idegl
3.0

~00.0

-5.0

200.0
160.0
180.0

0.0
-3.0
5.0

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

T I

hidden Ihyrr

Fig. 8. Movement palh ofthe 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
{zfl(k),yf,(k)
, . . . , x f 4 ( k ) , y / 4 ( k ) } , the robot's body
x-directional maximum and minimum disheight ZT(k),
tances to an obstacle at right {xolma,(k),zormin(k)},
y-directional maximum and minimum distances to the
obstacle at right { ~ ~ ~ ~ ~ ? ( l i ) , y ~ ~and
* i the
~ ( height
k ) } .
of the obstacle at right {zormol(k),~orm,n(k)). xdirectional maximum and minimum distances to an obstacle at left {xormor(k),
z,lmin(k)}, y-directional maximum and minimum distances to the obstacle a1 left
{y~lmoi(k),yolmin(k)},
and the height of the obstacle at
. .
left {zolmar(k),zolmin-(k)};x-directional distance between
the center of gravity of the robot and destination zde(k),

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

c
ob,

fitness =

+ fitness, + fitness,)

(fitness,

(13)

i=l

where ob, is the number of training data. fitness, is Bn


evaluation function associated with a penalty for collision
with an obstacle. fitness, is given by
~~

fitness, =

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

(14)

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.

TABLE 11
THEMOVEMENT DATA B Y T H E PROPOSED METHOD

-500

0
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

fitnesu, =

0, if inside of the range


10(&(k) + y,&(k)), otherwise

(15)

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

T
~

c -

50

(&(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,-.
VII. EXPERIMENTS
The number of obstacles is two. Each obstacle location
is as follows:

(0.1,0.85),
(%T3? ~ o r 3 =
) (0.5,0.55),
(%II;YOII)
= (-0.5,0.86)
(loi2; ~ o t z =
) (-0.5,0.66)
(2013:Y~13)= (-0.15,0.65)
(%i4;%i4)
= (-0.15,0.85)
(%ri,~ori)

VIII. CONCLUSION

500

(0.1,0.65)
( + o r z : ~ o r z ) = (0.5: 0.75)
(%2,~or2) =

where the obstacle at left can not be gotten over by the


robot. Initial distance error is set to (zderyde) = (0,1.8)

[ml.

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. A d m s , "Dynamic modclin8 and hydrodynamic 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.


IS] 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
(CO).
JSME Corferrnee on Robolics ondMechormnicr, lA1-42~061
1999.
171 T. Yamaguchi. K. Watanahc. K. liumi and K. Kiguchi, "Obstacle
avoidance for Quadruped Rohots Using a Neural Network:' J. of

Advonced Computorioriol hiielligenee arid lt~lellipmi hfomarics.


"01. 7 no. 2. pp. 115-123, 2w3.
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 ~ Tokyo.
tiag,
MotikiU Shuppan Co., Ltd, 1999.
I101 Z.Michalcwicr, Generic Algo!irhmr + Dam Srruerirre = Evolarion
Pmgrom. 3rd. revised and W e n d e d edition, Sptingn; Germany,
1996

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.

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.

You might also like