23
Journal of Intelligent and Robotic Systems 20: 295–317, 1997. 295 c 1997 Kluwer Academic Publishers. Printed in the Netherlands. Robust Practical Point Stabilization of a Nonholonomic Mobile Robot Using Neural Networks ? RAFAEL FIERRO and FRANK L. LEWIS Automation and Robotics Research Institute, The University of Texas at Arlington, 7300 Jack Newell Blvd. South, Fort Worth, Texas 76118-7115, U.S.A.; e-mail: [email protected] [email protected] (Received: 12 March 1997; accepted: 16 June 1997) Abstract. A control structure that makes possible the integration of a kinematic controller and a neural network (NN) computed-torque controller for nonholonomic mobile robots is presented. A combined kinematic/torque control law is developed and stability is guaranteed by Lyapunov theory. This control algorithm is applied to the practical point stabilization problem i.e., stabilization to a small neighborhood of the origin. The NN controller can deal with unmodeled bounded disturbances and/or unstructured unmodeled dynamics in the vehicle. On-line NN weight tuning algorithms that do not require off-line learning yet guarantee small tracking errors and bounded control signals are utilized. Key words: nonholonomic systems, mobile robots, neural networks. 1. Introduction Much has been written about solving the problem of motion under nonholonomic constraints using the kinematic model of a mobile robot, little about the problem of integration of the nonholonomic kinematic controller and the dynamics of the mobile robot. Moreover, the literature on robustness and control in presence of uncertainties in the dynamical model of such systems is sparse (Kolmanovsky et al., 1995). Some preliminary results on nonholonomic system with uncertainties are given in (Canudas de Wit et al., 1995; Jiang et al., 1994). Another intensive area of research has been neural networks applications in closed-loop control. In contrast to classification applications, in feedback control the NN becomes part of the closed-loop system. Therefore, it is desirable to have a NN control with on-line learning algorithms that do no require preliminary off- line tuning (Lewis et al., 1996b). Several groups by now are doing rigorous analysis of NN controllers using a variety of techniques (Chen et al., 1994; Narendra et al., 1991; Polycarpou et al., 1992; Rovithakis et al., 1994; Sadegh et al., 1993). In (Lewis et al., 1996) a multilayer NN controller with guaranteed performance has been developed and successfully applied to control of rigid ? Research supported by NSF Grant ECS-9521673. VTEX(P) PIPS No.: 146087 MATHKAP JINTST10.tex; 17/11/1997; 11:51; v.7; p.1

Robust Practical Point Stabilization of a Nonholonomic Mobile Robot Using Neural Networks

Embed Size (px)

Citation preview

Page 1: Robust Practical Point Stabilization of a Nonholonomic Mobile Robot Using Neural Networks

Journal of Intelligent and Robotic Systems 20: 295–317, 1997. 295c© 1997 Kluwer Academic Publishers. Printed in the Netherlands.

Robust Practical Point Stabilization of aNonholonomic Mobile Robot Using NeuralNetworks ?

RAFAEL FIERRO and FRANK L. LEWISAutomation and Robotics Research Institute, The University of Texas at Arlington, 7300 JackNewell Blvd. South, Fort Worth, Texas 76118-7115, U.S.A.; e-mail: [email protected]@arri.uta.edu

(Received: 12 March 1997; accepted: 16 June 1997)

Abstract. A control structure that makes possible the integration of a kinematic controller and aneural network (NN) computed-torque controller for nonholonomic mobile robots is presented. Acombined kinematic/torque control law is developed and stability is guaranteed by Lyapunov theory.This control algorithm is applied to the practical point stabilization problem i.e., stabilization to asmall neighborhood of the origin. The NN controller can deal with unmodeled bounded disturbancesand/or unstructured unmodeled dynamics in the vehicle. On-line NN weight tuning algorithms thatdo not require off-line learning yet guarantee small tracking errors and bounded control signals areutilized.

Key words: nonholonomic systems, mobile robots, neural networks.

1. Introduction

Much has been written about solving the problem of motion under nonholonomicconstraints using the kinematic model of a mobile robot, little about the problemof integration of the nonholonomic kinematic controller and the dynamics of themobile robot. Moreover, the literature on robustness and control in presence ofuncertainties in the dynamical model of such systems is sparse (Kolmanovsky etal., 1995). Some preliminary results on nonholonomic system with uncertaintiesare given in (Canudas de Wit et al., 1995; Jiang et al., 1994).

Another intensive area of research has been neural networks applications inclosed-loop control. In contrast to classification applications, in feedback controlthe NN becomes part of the closed-loop system. Therefore, it is desirable to havea NN control with on-line learning algorithms that do no require preliminary off-line tuning (Lewis et al., 1996b). Several groups by now are doing rigorousanalysis of NN controllers using a variety of techniques (Chen et al., 1994;Narendra et al., 1991; Polycarpou et al., 1992; Rovithakis et al., 1994; Sadeghet al., 1993). In (Lewis et al., 1996) a multilayer NN controller with guaranteedperformance has been developed and successfully applied to control of rigid? Research supported by NSF Grant ECS-9521673.

VTEX(P) PIPS No.: 146087 MATHKAPJINTST10.tex; 17/11/1997; 11:51; v.7; p.1

Page 2: Robust Practical Point Stabilization of a Nonholonomic Mobile Robot Using Neural Networks

296 RAFAEL FIERRO AND FRANK L. LEWIS

robot manipulators, flexible-link robotic systems and position/force control. Inthis paper, we present an application of this NN controller to a nonholonomicmobile robot system. Due to the presence of the NN in the control loop, specialsteps must be taken to guarantee that the entire system is stable and the NNweights stay bounded.

Traditionally the learning capability of a multilayer NN has been applied to thenavigation problem in mobile robots (Berns et al., 1991; Nagata et al., 1990). Inthese approaches the NN is trained in a preliminary off-line learning phase withnavigation pattern behaviors, for instance obstacle avoidance. In contrast, theobjective of this work is to design an adaptive kinematic/neuro-controller basedon the universal approximation property of NN (Hornik et al., 1989). The NNlearns the full dynamics of the mobile robot on-line, and the kinematic controllerstabilizes the state of the system in a small neighborhood of the origin.

In the literature, the nonholonomic navigation problem is simplified by neglect-ing the vehicle dynamics and considering only the steering system. To computethe vehicle control inputs, it is assumed that there is ‘perfect velocity tracking’(Kanayama et al., 1990). There are three problems with this approach: first, theperfect velocity tracking assumption does not hold in practice, second, distur-bances are ignored, and, finally, complete knowledge of the dynamics is needed(Samson, 1991). The approach proposed in this paper corrects this omission bymeans of a NN controller. It provides a rigorous method of taking into accountthe specific vehicle dynamics to convert a steering system command into controlinputs for the actual vehicle. First, feedback velocity control inputs are designedfor the kinematic steering system to make the position error asymptotically sta-ble. Then, a NN computed-torque controller is designed such that the mobilerobot’s velocities converge to the given velocity inputs. This control approachcan be applied to a class of smooth kinematic system control velocity inputs.

This paper is organized as follows. In Section 2, we present some basics ofnonholonomic systems and NN. Section 3 discusses the nonlinear kinematic-NNcontroller as applied to the point stabilization problem. In this section, we alsoconsider some stability and robustness issues. Section 4 presents some simulationresults. Finally, Section 5 gives some concluding remarks.

2. Preliminaries

2.1. A NONHOLONOMIC MOBILE ROBOT

Wheeled vehicles and car-like mobile robots are typical examples of nonholo-nomic mechanical systems. Unfortunately many researchers treat the problemof motion under nonholonomic constraints using only the kinematic model ofa mobile robot. This simplified representation does not correspond to reality ofmoving vehicle which has unknown masses, frictions, drive train compliance,and backlash effects. In this paper we provide a framework that brings togethertwo camps: nonholonomic control results that deal with a kinematic ‘steering

JINTST10.tex; 17/11/1997; 11:51; v.7; p.2

Page 3: Robust Practical Point Stabilization of a Nonholonomic Mobile Robot Using Neural Networks

MOBILE ROBOT ROBUST STABILIZATION USING NEURAL NETWORKS 297

system’, and full servo-level feedback control that takes into account the mobilerobot dynamics.

A generalized mechanical system having an n-dimensional configuration spaceC with generalized coordinates (q1, . . . , qn) and subject to m nonholonomic con-straints can be described by Sarkar et al. (1994),

M(q)q + Vm(q, q)q + F(q) + G(q) + τd = B(q)τ − AT (q)λ, (1)

A(q)q = 0, (2)

where M is a symmetric, positive definite inertia matrix, Vm is a centripetaland coriolis matrix, F is a friction vector, G is a gravity vector, τd is a vector ofdisturbances including unmodeled dynamics, B is an input transformation matrix,τ is a control input vector, A is a matrix associated with the constraints, and λis a vector of constraint forces. The dynamics of the driving and steering motorsshould be included in the robot dynamics, along with any gearing.

Let S(q) be a full rank matrix (n−m) formed by a set of smooth and linearlyindependent vector fields spanning the null space of A(q), i.e.,

ST (q)AT (q) = 0. (3)

According to (2) and (3), it is possible to find an auxiliary vector time functionv(t) ∈ Rn−m such that, for all t

q = S(q)v(t). (4)

In fact, v(t) often has physical meaning, consisting of two components – thecommanded vehicle linear velocity vL(t), and angular velocity ω(t) or headingangle θ. Matrix S(q) is easily determined independently of the dynamics (1)from the wheel configuration of the mobile robot. Thus, Equation (4) is thekinematic equation that express some simplified relations between motion q(t)and a velocity vector v(t) = [vL ω]T . It does not include dynamical effects, andis known in the nonholonomic literature as the steering system. In the case ofomnidirectional vehicles, S(q) is a square matrix and corresponds to the Newton’slaw model F = ma.

A typical nonholonomic platform shown in Figure 1 consists of a differentialdrive vehicle (e.g., LabMate manufactured by TRC). The motion and orientationare achieved by independent actuators, e.g., DC motors providing the necessarytorques to the driving wheels. Another common configuration uses the frontwheel for driving and steering. The position of the robot in an inertial Cartesianframe {O,X, Y } is completely specified by the vector q = [xc yc θ]

T , wherexc, yc and θ are the coordinates of the reference point C, and the orientation ofthe basis {C,XC , YC} with respect to the inertial basis respectively.

The nonholonomic constraint states that the robot can only move in the direc-tion normal to the axis of the driving wheels, i.e., the mobile base satisfies theconditions of pure rolling and non slipping (Barraquand et al., 1991)

yc cos θ − xc sin θ = 0. (5)

JINTST10.tex; 17/11/1997; 11:51; v.7; p.3

Page 4: Robust Practical Point Stabilization of a Nonholonomic Mobile Robot Using Neural Networks

298 RAFAEL FIERRO AND FRANK L. LEWIS

Figure 1. A nonholonomic mobile platform.

It is easy to verify that the kinematic equations of motion (4) of C in terms ofits linear velocity and angular velocity may given by

S(q) =

cos θ 0sin θ 0

0 1

, xcycθ

=

cos θ 0sin θ 0

0 1

[ vLω

], (6)

where |vL| < Vmax and |ω| < Wmax. Vmax and Wmax are the maximum linearand angular velocities of the mobile robot. The dynamics of the nonholonomicmobile base in Figure 1 can be found in (Fierro et al., 1995).

2.2. STRUCTURAL PROPERTIES OF A MOBILE PLATFORM

The system (1) is now transformed into a more appropriate representation forcontrols purposes (Yamamoto et al., 1993). Differentiating (4), substituting thisresult in (1), and then multiplying by ST , we can eliminate the constraint termAT (q)λ. The complete equations of motion of the nonholonomic mobile platformare given now by

q = Sv, (7)

STMSv + ST (MS + VmS)v + F + τd = STBτ. (8)

By appropriate definitions we can rewrite equation (8) as follows

M(q)v + Vm(q, q)v + F(v) + τd = Bτ. (9)

JINTST10.tex; 17/11/1997; 11:51; v.7; p.4

Page 5: Robust Practical Point Stabilization of a Nonholonomic Mobile Robot Using Neural Networks

MOBILE ROBOT ROBUST STABILIZATION USING NEURAL NETWORKS 299

The true model of the vehicle is thus given by combining both (7) and (9).However, in the latter equation it turns out that B is square and invertible, sothat standard computed-torque techniques can be used to compute the requiredvehicle control τ . Moreover, the properties of the original dynamics hold for thenew set of coordinates, i.e., Boundedness: M(q), the norm of Vm(q, q), and τdare bounded. Skew-symmetry: The matrix M− 2Vm is skew symmetric.

2.3. FEEDFORWARD NEURAL NETWORKS

A ‘two-layer’ feedforward NN in Figure 2 has two layers of adjustable weights.The neural network output y is a vector with m components that are determinedin terms of the n components of the input vector x by the formula

yi =Nh∑j=1

[wijσ

(n∑k=1

vjkxk + θvj

)+ θwi

]; i = 1, . . . ,m, (10a)

where σ(·) are the activation functions and Nh is the number of hidden-layerneurons. The inputs-to-hidden-layer interconnection weights are denoted by vjkand the hidden-layer-to-outputs interconnection weights by wij . The thresholdoffsets are denoted by θvj , θwi.

Many different activation functions σ(·) are in common use, including sig-moid, hyperbolic tangent, gaussian, etc. In this work we shall use the sigmoidactivation function

σ(x) =1

1 + e−x, (10b)

By collecting all the NN weights vjk, wij into matrices of weights VT ,WT ,one can write the NN equation is terms of vectors as

y = WTσ(VTx), (11)

with the vector of activation functions defined by σ(z) = [σ(z1) . . . σ(zn)]T fora vector z ∈ Rn. The thresholds are included as the first columns of the weightmatrices. To accommodate this the vectors x and σ(·) need to be augmented byplacing a ‘1’ as their first element (e.g., x ≡ [1 x1 x2 x3 . . . xn]T ). Any tuningof W and V then includes tuning of the thresholds as well.

The main property of a NN we shall be concerned with for controls purposesis the function approximation property (Cybenko, 1989; Hornik et al., 1989). Letf(x) be a smooth function from Rn to Rm. Then, it can be shown that, as longas x is restricted to a compact set Ux of Rn, for some number of hidden layerneurons Nh, there exist weights and thresholds such that one has

f(x) = WTσ(VTx) + ε. (12)

JINTST10.tex; 17/11/1997; 11:51; v.7; p.5

Page 6: Robust Practical Point Stabilization of a Nonholonomic Mobile Robot Using Neural Networks

300 RAFAEL FIERRO AND FRANK L. LEWIS

Figure 2. Multilayer feedforward neural network.

This equation means that a NN can approximate any function in a compact set.The value of ε is called the NN functional approximation error. In fact, for anychoice of a positive number εN , one can find a NN such that ε < εN in Ux.

For controls purposes, all one needs to know is that, for a specified value ofεN these ideal approximating NN weights exist. Then, an estimate of f(x) canbe given by

f(x) = WTσ(V

Tx), (13)

where W, V are estimates of the ideal NN weights that are provided by someon-line weight tuning algorithms.

A common weight tuning algorithm is the gradient algorithm based on thebackpropagated error (Werbos, 1989), where the NN is training off-line to matchspecified exemplar pairs (xd, yd), with xd the ideal NN input that yields thedesired NN output yd. The continuous-time version of the backpropagation algo-rithm for the two-layer NN is given by

˙W = Fσ(VTxd)E

T ,

˙V = Gxd(σ′T WE)T ,(14)

where F,G are positive definite design parameter matrices governing the speedof convergence of the algorithm. The backpropagated error E is selected as the

JINTST10.tex; 17/11/1997; 11:51; v.7; p.6

Page 7: Robust Practical Point Stabilization of a Nonholonomic Mobile Robot Using Neural Networks

MOBILE ROBOT ROBUST STABILIZATION USING NEURAL NETWORKS 301

desired NN output minus the actual NN output E = yd−y. For the scalar sigmoidactivation function (10b), for instance, the hidden-layer output gradient is

∂σ

∂z= σ(z)[1− σ(z)] ≡ σ′. (15)

The hidden-layer output gradient or Jacobian may be explicitly computed; forthe sigmoid activation functions, it is

σ′ ≡ diag{σ(VTxd)}

[I− diag{σ(V

Txd)}

], (16)

where I denotes the identity matrix, and diag{z} means a diagonal matrix whosediagonal elements are the components of vector z. One major problem in usingbackprop tuning in direct closed-loop control applications is that the required gra-dients (Jacobians (16)) depend on the unknown plant being controlled; this makethem impossible or very difficult to compute. Extensive work on confronting thisproblem has been done by a number of authors using a variety of techniques,see for instance (Lewis et al., 1996; Narendra, 1991; Polycarpou et al., 1992;Rovithakis et al., 1994; Sadegh, 1993) and the references therein.

3. NN Point Stabilization of Nonholonomic Systems

Feedback stabilization deals with finding feedback control laws such that anequilibrium point of the closed-loop system is asymptotically stable. Unfortu-nately, the linearization of nonholonomic systems about any equilibrium point isnot asymptotically stabilizable. Moreover, there exists no smooth time-invariantstate-feedback which makes an equilibrium point of the closed-loop system local-ly asymptotically stable (Brockett, 1983). Therefore, feedback linearization tech-niques cannot be applied to nonholonomic systems directly.

A variety of techniques have been proposed in the nonholonomic literature tosolve the asymptotic stabilization problem. A comprehensive summary of thesetechniques and other nonholonomic issues are given in (Kolmanovsky et al.,1995). These techniques can be classified as (1) continuous time-varying stabi-lization (CTVS), (2) discontinuous time-invariant stabilization (DTIS), and (3)hybrid stabilization (HS). In CTVS the feedback control signals are smooth andtime-periodic. In contrast, DTIS uses piecewise continuous controllers and slid-ing mode controllers. HS consists of designing a discrete-event supervisor and aset of low-level continuous-time controllers. The discrete event-supervisor coor-dinates (mode switching) the low-level controllers to make an equilibrium pointasymptotically stable. In this section, we shall discuss CTVS as an extension ofthe tracking problem.

JINTST10.tex; 17/11/1997; 11:51; v.7; p.7

Page 8: Robust Practical Point Stabilization of a Nonholonomic Mobile Robot Using Neural Networks

302 RAFAEL FIERRO AND FRANK L. LEWIS

Point Stabilization as an Extension of the Tracking Problem

The trajectory tracking problem for nonholonomic vehicles is posed as follows.Let there be prescribed a reference cart

xr = vr cos θr, yr = vr sin θr, θr = wr,

qr = [xr yr θr]T , νr = [vr wr]

T . (17)

As in (Canudas et al., 1993) it is assumed that the reference cart moves alongthe x-axis, i.e.,

xr = vr, qr = [xr 0 0]T , νr = [vr 0]T . (18)

Therefore, the point stabilization problem consists of finding a smooth time-varying velocity control input νc(t) such that limt→∞(qr−q) = 0 and limt→∞(xr)= 0. Then compute the torque input τ(t) for (9), such that ν → νc as t→∞.

3.1. NN CONTROL DESIGN FOR TRACKING A REFERENCE TRAJECTORY

The structure for the point stabilization system to be derived in Section 3.3 ispresented in Figure 3. In this figure, no knowledge of the dynamics of the cart isassumed. The function of the NN is to reconstruct the dynamics (9) by learningit on-line.

The contribution of this paper lies in deriving a suitable τ(t) from a specificνc(t) that controls the steering system (7). In the literature, the nonholonomicpoint stabilization problem is simplified by neglecting the vehicle dynamics (8)and considering only the steering system (7). To compute the vehicle torqueτ(t), it is assumed that there is ‘perfect velocity tracking’ so that ν = νc, then(8) is used to compute τ(t). There are three problems with this approach: first,the perfect velocity tracking assumption does not hold in practice, second, thedisturbance τd is ignored, and, finally, complete knowledge of the dynamicsis needed. A better alternative to this unrealistic approach is the adaptive NNcontroller now developed.

To be specific, it is assumed that the solution to the steering system pointstabilization problem in (Canudas de Wit et al., 1993) is available. This is denotedas νc(t). Then, a control τ(t) for (7), (8) is found that guarantees robust practicalpoint stabilization despite unknown dynamical parameters and bounded unknowndisturbances τd(t). The (position) error is expressed in the basis of a frame linkedto the mobile platform (Kanayama et al., 1990) as

ep = Te(qr − q),e1

e2

e3

=

cos θ sin θ 0− sin θ cos θ 0

0 0 1

xr − x−y−θ

. (19)

JINTST10.tex; 17/11/1997; 11:51; v.7; p.8

Page 9: Robust Practical Point Stabilization of a Nonholonomic Mobile Robot Using Neural Networks

MOBILE ROBOT ROBUST STABILIZATION USING NEURAL NETWORKS 303

Figure 3. Practical point stabilization using a NN control.

and the derivative of the error is

ep =

ωe2 − νL + vr cos e3

−ωe1 + vr sin e3

−ω

. (20)

An auxiliary velocity control input that achieves point stabilization for (7) isgiven by

νc = fc(ep, vr,K) =

[vr cos e3 + k1e1

k2vrsin e3e3

e2 + k3e3

]. (21)

The derivative of νc becomes

νc =

[vr cos e3

k2vrsin e3e3

e2

]

+

k1 0 −vr sin e3

0 k2vrsin e3e3

k2vre3 cos e3 − sin e3

e23

e2 + k3

ep, (22)

where

vr = −k5xr + g(ep, t). (23a)

Therefore

xr = −k5xr + g(ep, t), (23b)

JINTST10.tex; 17/11/1997; 11:51; v.7; p.9

Page 10: Robust Practical Point Stabilization of a Nonholonomic Mobile Robot Using Neural Networks

304 RAFAEL FIERRO AND FRANK L. LEWIS

with (Canudas de Wit et al., 1993)

g(ep, t) =

{sin t if ‖ep‖ > ε > 00 otherwise.

(23c)

The gains k1, k2, k3, k5 > 0 are design parameters. They can be chosen to satisfycertain performance criteria. If the mobile robot is able to follow the desiredvelocity (21), then the position error ep converges to a neighborhood of theorigin. Different time-varying functions g(ep, t) are available in the literature,see (Kolmanovsky et al., 1995) and the references therein.

Given the desired velocity νc(t) ∈ R2, define now the auxiliary velocitytracking error as

ec = νc − ν. (24)

Differentiating (24) and using (9), the mobile robot dynamics may be written interms of the velocity tracking error as

M(q)ec = −Vm(q, q)ec − τ + f(x) + τd, (25)

where the important nonlinear mobile robot function is

f(x) = M(q)νc + Vm(q, q)νc + F(ν). (26)

The vector x required to compute f(x) can be defined as

x ≡[νT νTc νTc

]T, (27)

which can be measured.Function f(x) contains all the mobile robot parameters such as masses,

moments of inertia, friction coefficients, and so on. These quantities are oftenimperfectly known and difficult to determine.

3.2. MOBILE ROBOT CONTROLLER STRUCTURE

In applications the nonlinear robot function f(x) is at least partially unknown.Therefore, a suitable control input for velocity following is given by the computed-torque like control

τ = f +K4ec − γ, (28)

with K4 a diagonal, positive definite gain matrix, and f(x) an estimate of therobot function f(x) that is provided by the Neural Network. The robustifyingsignal γ(t) is required to compensate the unmodeled unstructured disturbances.Using this control in (25), the closed-loop system becomes

Mec = −(K4 + Vm)ec + f + τd + γ, (29)

JINTST10.tex; 17/11/1997; 11:51; v.7; p.10

Page 11: Robust Practical Point Stabilization of a Nonholonomic Mobile Robot Using Neural Networks

MOBILE ROBOT ROBUST STABILIZATION USING NEURAL NETWORKS 305

where the velocity tracking error is driven by the functional estimation error

f = f − f . (30)

In computing the control signal, the estimate f can be provided by several tech-niques, including adaptive control. The robustifying signal γ(t) can be selectedby several techniques, including sliding-mode methods and others under the gen-eral aegis of robust control methods.

3.3. NEURAL NET CONTROLLER

By using the controller (28), there is no guarantee that the control τ will makethe velocity tracking error small. Thus, the control design problem is to specifya method of selecting the matrix gain K4, the estimate f , and the robustifyingsignal γ(t) so that both the error ec(t) and the control signals are bounded. It isimportant to note that the latter conclusion hinges on showing that the estimatefhat is bounded. Moreover, for good performance, the bound on ec(t) should bein some sense ‘small enough’ because it will affect directly the position trackingerror ep(t). In this section we shall use a NN to compute the estimate f . A majoradvantage is that this can always be accomplished, due to the NN approximationproperty (12). By contrast, in adaptive control approaches it is only possible toproceed if f(x) is linear in the known parameters.

Some definitions are required in order to proceed:

DEFINITION 1. We say that the solution of a nonlinear system with state x(t) ∈Rn is uniformly ultimately bounded (UUB) if there exists a compact set Ux ⊂ Rn

such that for all x(t0) = x0 ∈ Ux, there exists a δ > 0 and a number T (δ, x0)such that ‖x(t)‖ < δ for all t > t0 + T .

DEFINITION 2. We denote by ‖·‖ any suitable vector norm. When it is requiredto be specific we denote the p-norm by ‖ · ‖p.

DEFINITION 3. Given A = [aij ], B ∈ Rm×n the Frobenius norm is defined by

‖A‖2F = tr{ATA} =

∑i,j

a2ij, (31)

with tr{·} the trace. The associated inner product is 〈A,B〉F = tr{ATB}. TheFrobenius norm cannot bedefined as the induced matrix norm for any vectornorm, but is compatible with the 2-norm so that ‖Ax‖2 6 ‖A‖F ‖x‖2, withA ∈ Rm×n and x ∈ Rn.

DEFINITION 4. For notational convenience we define the matrix of all the NNweights as Z ≡ diag{W, V}.

JINTST10.tex; 17/11/1997; 11:51; v.7; p.11

Page 12: Robust Practical Point Stabilization of a Nonholonomic Mobile Robot Using Neural Networks

306 RAFAEL FIERRO AND FRANK L. LEWIS

DEFINITION 5. Define the weight estimation errors as V = V−V, W = W−W,Z = Z− Z.

DEFINITION 6. Define the hidden-layer output error for a given x as

σ = σ − σ = σ(VTx)− σ(VTx). (32)

The Taylor series expansion of σ(x) for a given x may be written as

σ(VTx) = σ(VTx) + σ′(V

Tx)V

Tx+ O(V

Tx), (33a)

with

σ′(z) ≡ ∂σ(z)

∂z

∣∣∣∣z=z

(33b)

the Jacobian matrix and O(VTx) denoting the higher-order terms in the Taylor

series. Denoting σ′ = σ′(VTx), we have

σ = σ′(VTx)V

Tx+ O(V

Tx) = σ′V

Tx+ O(V

Tx). (33c)

The importance of this equation is that it replaces σ, which is nonlinear in V, byan expression linear in V plus higher-order terms. This will allow us to determinetuning algorithms for V in subsequent derivations. Different bounds may be puton the Taylor series higher-order terms depending on the choice for the activationfunctions σ(·).

The following mild assumptions always hold in practical applications:

ASSUMPTION 1. On any compact subset of Rn, the ideal NN weights arebounded by known positive values so that ‖V‖F 6 VM , ‖W‖F 6 WM , or‖Z‖F 6 ZM with ZM known.

ASSUMPTION 2. The desired reference trajectory is bounded so that ‖qr‖ <qM with qM a known scalar bound, and the disturbances are bounded so that‖τd‖ 6 dM .

LEMMA 1 (Bound on NN input x). For each time t, x(t) in (27) is bounded by

‖x‖ 6 qM + c0‖ec(t0)‖+ c2‖e2(t)‖ 6 c1 + c2‖ec(t)‖ (34)

for computable positive constants ci.

LEMMA 2 (Bounds on Taylor series higher-order terms). For sigmoid activationfunctions, the higher-order terms in the Taylor series (33) are bounded by

‖O(VTx)‖ 6 c3 + c4‖V‖F + c5‖V‖F ‖ec‖, (35)

for computable positive constants ci.

JINTST10.tex; 17/11/1997; 11:51; v.7; p.12

Page 13: Robust Practical Point Stabilization of a Nonholonomic Mobile Robot Using Neural Networks

MOBILE ROBOT ROBUST STABILIZATION USING NEURAL NETWORKS 307

We will use a neural net to approximate f(x) for computing the control in(28). By placing into (28) the neural network approximation equation given by(13), the control input then becomes

τ = WTσ(V

Tx) +K4ec − γ, (36)

with γ(t) a function to be detailed subsequently that provides robustness in theface of robot kinematics and higher-order terms in the Taylor series.

Using this controller, the closed-loop velocity error dynamics become

Mec = −(K4 + Vm

)ec + WTσ(VTx)− W

Tσ(V

Tx) + (ε+ τd) + γ. (37a)

Adding and subtracting WT σ yields

Mec = −(K4 + Vm

)ec + W

Tσ + WT σ + (ε+ τd) + γ (37b)

with σ, σ defined in (32). Adding and subtracting now WTσ yields

Mec = −(K4 + Vm

)ec + W

Tσ + WT σ + W

Tσ + (ε+ τd) + γ. (37c)

The key step is the use now of the Taylor series approximation (33c) for σ,according to which the error system is

Mec = −(K4 + Vm

)ec + W

T (σ − σ′VT

x)

+ WT σ′VTx+ w + γ, (38)

where the disturbance terms are

w(t) = WTσ′VTx+ WTO(V

Tx) + ε+ τd. (39)

It is important to note that the NN reconstruction error ε(x), the disturbanceτd, and the higher-order terms in the Taylor series expansion of f(x) all haveexactly the same influence as disturbances in the error system. The next boundis required. Its importance it is in allowing one to overbound w(t) at each timeby a known computable function.

LEMMA 3 (Bounds on the disturbance term). The disturbance term (39) isbounded according to

‖w(t)‖ 6 (εN + dM + c3ZM ) + c6ZM‖Z‖F + c7ZM‖Z‖F‖ec‖

or

‖w(t)‖ 6 C0 +C1‖Z‖F + C2‖Z‖F ‖ec‖, (40)

with Ci known positive constants.

JINTST10.tex; 17/11/1997; 11:51; v.7; p.13

Page 14: Robust Practical Point Stabilization of a Nonholonomic Mobile Robot Using Neural Networks

308 RAFAEL FIERRO AND FRANK L. LEWIS

Note that C0 becomes larger with increases in the NN estimation error ε andthe mobile robot dynamics disturbances τd. Proofs of Lemmas 1–3 are omittedhere, details are discovered in (Lewis et al., 1996).

It remains now to show how to select the tuning algorithms for the NNweights Z, and the robustifying term gamma so that robust stability and trackingperformance are guaranteed.

THEOREM 1. Given a nonholonomic mobile robot (7), (8). Let the followingassumptions hold:

ASSUMPTION 3. A smooth time-varying auxiliary velocity control input νc(t)is prescribed that solves the point stabilization problem for the steering sys-tem (7), neglecting the dynamics (8). A sample νc is given by (21).

ASSUMPTION 4. K = [k1 k2 k3 k5]T is a vector of positive constants.

ASSUMPTION 5. K4 = k4I, where k4 is a sufficiently large positive constant.

Take the control τ ∈ R2 for (9) as (36) with robustifying term

γ(t) = −Kz(‖Z‖F + ZM

)ec − ec (41)

and gain

Kz > C2 (42)

with C2 the known constant in (40). Let NN weight tuning be provided by (43).Then, the velocity tracking error ec(t), the position error ep(t), and the NNweight estimates V, W are UUB. Moreover, the velocity tracking error may bekept as small as desired by increasing the gain K4.

˙W = FσeTc − Fσ′VTxeTc − κF‖ec‖W, (43a)

˙V = Gx(σ′T Wec

)T − κG‖ec‖V, (43b)

where F,G are positive definite design parameter matrices, κ > 0 and thehidden-layer gradient σ′ is easily computed – for the sigmoid activation functionit is given by

σ′ ≡ diag{σ(VTx)}

[I− diag{σ(V

Tx)}

], (44)

which is just (16) with the constant exemplar xd replaced by the time functionx(t).

JINTST10.tex; 17/11/1997; 11:51; v.7; p.14

Page 15: Robust Practical Point Stabilization of a Nonholonomic Mobile Robot Using Neural Networks

MOBILE ROBOT ROBUST STABILIZATION USING NEURAL NETWORKS 309

Proof. Let the approximation property (12) hold with a given accuracy εN forall x in the compact set Ux. Consider the following Lyapunov function candidate

V =k2

2

(e2

1 + e22)

+e2

3

2+ V1, (45)

where

V1 = 12

[eTc Mec + tr{WT

F−1W}+ tr{VTG−1V}

]. (46)

Differentiating yields

V = k2(e1e1 + e2e2) + e3e3 + V1. (47)

Differentiating V1, and substituting now from the error system (38) yield

V1 = −eTc K4ec + 12eTc

(M− 2Vm

)ec + tr{WT

(F−1 ˙W + σeTc − σ′VTxeTc )}

+ tr{VT (G−1 ˙V + xeTc W

Tσ′)}+ eTc (w + γ). (48)

The skew symmetry property (Section 2.2) makes the second term zero, and

since ˙W = − ˙W, ˙V = − ˙V, the tuning rules yield

V1 = − eTK4ec + κ‖ec‖ tr{WT(W− W)}+

+κ‖ec‖ tr{VT(V− V)}+ eTc (w + γ)

= − eTc K4ec + κ‖ec‖ tr{ZT (Z− Z)}+ eTc (w + γ). (49)

Since

tr{ZT (Z− Z)} = 〈Z,Z〉F − ‖Z‖2F 6 ‖Z‖F‖Z‖F − ‖Z‖

2F , (50)

there results

V1 6 − eTc K4ec − κ‖ec‖ · ‖Z‖F(‖Z‖F − ZM

)−

−Kz(‖Z‖F + ZM

)‖ec‖2 + ‖ec‖ · ‖w‖ − eTc ec,

6 −K4min‖ec‖2 − κ‖ec‖ · ‖Z‖F(‖Z‖F − ZM

)−

−Kz(‖Z‖F + ZM

)‖ec‖2 +

+ ‖ec‖[C0 + C1‖Z‖F + C2‖ec‖ · ‖Z‖F

]− eTc ec,

6 −‖ec‖ ·[K4min|ec‖+ κ‖Z‖F

(‖Z‖F − ZM

)−

− C0 − C1‖Z‖F]− eTc ec, (51)

where K4min is the minimum singular value of K4, Lemma 3 was used, and thelast inequality holds due to (42).

JINTST10.tex; 17/11/1997; 11:51; v.7; p.15

Page 16: Robust Practical Point Stabilization of a Nonholonomic Mobile Robot Using Neural Networks

310 RAFAEL FIERRO AND FRANK L. LEWIS

The velocity tracking error is

ec =

[e4

e5

]=

[νc1 − νLνc2 − ω

]=

[vr cos e3 + k1e1 − νL

k2vrsin e3e3

e2 + k3e3 − ω

], (52)

by substituting (51) and the derivatives of the position error in (47), we obtain

V 6 k2e1(ωe2 − νL + vr cos e3) + k2e2(−ωe1 + vr sin e3) +

+ e3(−ω)− eTc ec − ‖ec‖ ·[K4min‖ec‖+ κ‖Z‖F

(‖Z‖F − ZM

)−C0 − C1‖Z‖F

], (53)

by using (52) and defining k1 > k2/4, k2 > 0, k3 > 1/4 yield

V 6 −k2(k1 − k2

4

)e2

1 −(k3 − 1

4

)e2

3 −(e4 − k2

2 e1)2 −

(e5 − 1

2e3)2 −

−‖ec‖[K4min‖ec‖+ κ‖Z‖F

(‖Z‖F − ZM

)− C0 − C1‖Z‖F

]. (54)

Since the first four terms in (54) are negative, there results

V 6 −‖ec‖ · {K4min‖ec‖+ κ‖Z‖F(‖Z‖F − ZM

)− C0 − C1‖Z‖F }. (55)

Thus, V is guaranteed negative as long as the term in braces in (55) is positive.Defining C3 = (1/2)(ZM + (C1/κ)) and completing the square yields

K4min‖ec‖+ κ‖Z‖F(‖Z‖F − ZM

)− C0 − C1‖Z‖F

= K4min‖ec‖+ κ(‖Z‖F −C3

)2 − C0 − κC23

which is guaranteed positive as long as either

‖ec‖ >κC2

3 + C0

K4min≡ bc (56)

or

‖Z‖F > C3 +√C2

3 + C0κ ≡ bz. (57)

Therefore, V is negative outside a compact set. According to a standard Lyapunovtheory and LaSalle extension, this demonstrates the UUB of both ‖ec‖ and ‖Z‖F .

Finally from (23) the reference cart can be proven to be asymptotically stable.Since g(ep, t) tends to zero for the ideal case, and g(ep, t) = 0 if ‖ep‖ < ε forthe practical case, it can be shown that xr → 0 as t→∞. Therefore, the mobilerobot can be stabilized to an arbitrarily small neighborhood of the origin. 2

Remarks. Note that ‖ec‖ can be kept arbitrarily small by increasing the gain K4min

in (56). The right-hand sides of (56), (57) can be taken as practical bounds onec(t) and the NN weight estimation errors, respectively.

JINTST10.tex; 17/11/1997; 11:51; v.7; p.16

Page 17: Robust Practical Point Stabilization of a Nonholonomic Mobile Robot Using Neural Networks

MOBILE ROBOT ROBUST STABILIZATION USING NEURAL NETWORKS 311

The first terms of (43) are nothing but the standard backpropagation algorithm.The last terms correspond to the e-modification (Narendra, 1991) from adaptivecontrol theory; they must be added to ensure bounded NN weight estimates. Themiddle term in (43a) is a novel term needed to prove stability.

3.4. ROBUSTNESS CONSIDERATIONS

Theorem 1 guarantees that all signals in the closed-loop mobile robot system arebounded and the tracking error can be made arbitrarily small. As time passes theNN learns the nonlinear dynamics of the nonholonomic mobile robot on-line.

In practical situations the velocity and position errors are not exactly equal tozero. The best we can do is to guarantee that the error converges to a neighbor-hood of the origin. If external disturbances drive the system away from the con-vergence compact set, the derivative of the Lyapunov function become negativeand the energy of the system decreases uniformly; therefore, the error becomessmall again. Additionally, for good performance, the bound on ec(t) should bein some sense ‘small enough’ because it will affect directly the position errorep(t). Thus, the nonholonomic control system consists of two subsystems: (1) akinematic controller, and (2) a NN dynamic controller. The dynamic controllerprovides the required torques, so that the robot’s velocity tracks a reference veloc-ity input. As ‘perfect velocity tracking’ does not hold in practice, the dynamiccontroller generates a velocity error ec(t) which is assumed to be bounded bysome know constant (Theorem 1). This error can be seen as a disturbance forthe kinematic system, see Figure 4.

The closed-loop kinematic system becomes

xc = (νc1 + e4) cos θ,

yc = (νc1 + e4) sin θ,

θ = νc2 + e5, (58)

Figure 4. Closed-loop model of a nonholonomic system.

JINTST10.tex; 17/11/1997; 11:51; v.7; p.17

Page 18: Robust Practical Point Stabilization of a Nonholonomic Mobile Robot Using Neural Networks

312 RAFAEL FIERRO AND FRANK L. LEWIS

where ec = [e4 e5]T and νc = [νc1 νc2]T denote the velocity tracking errorand the desired velocity control input, respectively. The disturbance ec satisfiesthe matching condition (Canudas de Wit et al., 1995), i.e., the nonholonomicconstraint (5) is not violated.

The derivative of the position error in terms of the velocity error is given by

ep =

e1

e2

e3

=

−k1e1 + k2vr

sin e3e3

e22 + k3e2e3 + e4 − e2e5

−k2vrsin e3e3

e1e2 − k3e1e3 + vr sin e3 + e1e5

−k2vrsin e3e3

e2 − k3e3 + e5

. (59)

Let us consider the following Lyapunov function candidate

V =k2

2(e2

1 + e22) +

e23

2, (60)

differentiating yields

V = k2e1

(− k1e1 + k2vr

sin e3e3

e22 + k3e2e3 + e4 − e2e5

)+ k2e2

(− k2vr

sin e3e3

e1e2 − k3e1e3 + vr sin e3 + e1e5

)+

+ e3

(− k2vr

sin e3e3

e2 − k3e3 + e5

). (61)

After some work, we obtain

V = −k1k2e21 − k3e

23 + k2e1e4 + e3e5. (62)

The last equation can be rewritten as follows

V = −eT13Qe13 + eT13Pec, (63)

where

e13 = [e1 e3]T , Q =

[k1k2 0

0 k3

], and P =

[k2 00 1

].

The first term in the right-hand side is negative definite, while the second termis indefinite. But the second term satisfies

|eT13Pec| 6 ‖e13‖2 ‖P‖2 ‖ec‖2, (64)

there results

V 6 −eT13Qe13 + ‖e13‖2 ‖P‖2 ‖ec‖2, (65)

and

V 6 λmin(Q) ‖e13‖22 + ‖e13‖2 ‖P‖2 ‖ec‖2. (66)

JINTST10.tex; 17/11/1997; 11:51; v.7; p.18

Page 19: Robust Practical Point Stabilization of a Nonholonomic Mobile Robot Using Neural Networks

MOBILE ROBOT ROBUST STABILIZATION USING NEURAL NETWORKS 313

Thus, V is guaranteed negative as long as

‖e13‖ >‖P‖2 ‖ec‖2

λmin(Q)≡ b13. (67)

Remark. Along a system’s solution ‖ep‖ is bounded, and thus ‖ep‖ is bounded.As we expected, the norm of the velocity error affects directly to the norm ofthe position error. Note that the norm of the velocity error ‖ec‖ depends on theNN functional approximation error eps. and the matrix K4. Since ‖ec‖ can bemade arbitrarily small then ‖ep‖ can be made arbitrarily small.

3.5. NN EXPONENTIAL STABILIZER

It is well-known that the rates of convergence provided by smooth time-periodiclaws are at most t−1/2, i.e., nonexponential. Thus nonsmooth feedback laws withexponential rate of convergence have been proposed in the literature, see forinstance (M’Closkey et al., 1994). In this approach the velocity control input issmooth everywhere except at the origin; therefore, the NN control structure inFigure 3 can be applied to this class of exponential feedback stabilization.

The following change of coordinates η1

η2

η3

=

cos θ sin θ 00 0 1

sin θ − cos θ 0

xcycθ

(68)

is used to transform the kinematic model of the mobile robot given in (6) to achained form

η1 = ν1,

η2 = ν2, (69)

η3 = n1ν2.

A periodic time-varying control law that renders the equilibrium of (69) globallyexponentially stable is given by

νc(t) =

[νc1νc2

]=

−η1 + η3

ρ(η)cos t

−η2 − η23

ρ3(η)sin t

, (70)

where

ρ(η) = (η41 + η4

2 + η23)1/4. (71)

4. Simulation Results

We should like to illustrate the NN control scheme presented in Figure 3. Notethat the NN controller does not require knowledge of the dynamics. We took

JINTST10.tex; 17/11/1997; 11:51; v.7; p.19

Page 20: Robust Practical Point Stabilization of a Nonholonomic Mobile Robot Using Neural Networks

314 RAFAEL FIERRO AND FRANK L. LEWIS

Figure 5. Mobile robot’s trajectory: Smooth time-varying feedback.

Figure 6. Some NN weights.

the vehicle parameters (Figure 1) as m = 10 kg, I = 5 kg-m2, R = 0.5 m,and r = 0.05 m, K4 = diag{25, 25}. For the NN, we selected the sigmoidactivation functions with Nh = 10 hidden-layer neurons, F = G = diag{10, 10}and κ = 0.1.

JINTST10.tex; 17/11/1997; 11:51; v.7; p.20

Page 21: Robust Practical Point Stabilization of a Nonholonomic Mobile Robot Using Neural Networks

MOBILE ROBOT ROBUST STABILIZATION USING NEURAL NETWORKS 315

Figure 7. Applied torques: (–) right and (- -) left wheels.

Figure 8. Mobile robot’s trajectory: Exponential feedback law.

Simulation results using νc(t) in (21) are depicted in Figures 5–7. The con-troller gains were chosen so that the closed-loop system exhibits a critical damp-ing behavior: K = [10 5 4 1]T .

A simulation using the exponential feedback law (70) is shown in Figure 8.Compare with the robot’s performance presented in Figure 5.

JINTST10.tex; 17/11/1997; 11:51; v.7; p.21

Page 22: Robust Practical Point Stabilization of a Nonholonomic Mobile Robot Using Neural Networks

316 RAFAEL FIERRO AND FRANK L. LEWIS

The mobile base maneuvers, i.e., exhibits forward and backward motions toreach the origin. Note that there is no path planning involved – the mobile basenaturally describes a path that satisfies the nonholonomic constraints.

5. Conclusions

A robust/adaptive control algorithm for practical point stabilization of a nonholo-nomic mobile robot has been derived using NNs. This feedback servo-controlscheme is valid as long as the velocity control inputs are smooth and bounded,and the disturbances acting on actual cart are bounded.

The control structure proposed in this paper can be applied to different naviga-tion problems, e.g., tracking a reference trajectory and path following. Redefiningthe control velocity input vc, one may generate a different stable behavior withoutchanging the structure of the controller.

In fact, perfect knowledge of the mobile robot parameters is unattainable, e.g.,friction is very difficult to model by conventional techniques. To confront this, aneural network controller with guaranteed performance has been derived. Thereis not need of a priori information of the dynamic parameters of the mobilerobot, because the NN learns them on-the-fly.

References

Barraquand, J. and Latombe, J.-C.: 1991, Nonholonomic multibody mobile robots: Controllabilityand motion planning in the presence of obstacles, in: Proc. IEEE Int. Conf. Robot. Autom.,Sacramento, CA, 1991, pp. 2328–2335.

Berns, K., Dillman, R., and Hofstetter, R.: 1991, An application of a backpropagation networkfor the control of a tracking behavior, in: Proc. IEEE Int. Conf. on Robotics and Automation,Vol. 3, pp. 2426–2431, Sacramento, CA, April 1991.

Bloch, A. M., Reyhanoglu, M., and McClamroch, N. H.: 1992, Control and stabilization of non-holonomic dynamic systems, IEEE Trans. Autom. Control 37(11), 1746–1757.

Brockett, R. W.: 1983, Asymptotic stability and feedback stabilization, in: R. W. Brockett, R. S.Millman, and H. J. Sussmann (eds.), Differential Geometric Control Theory, Boston, Birkhauser,pp. 181–191.

Campion, G., d’Andrrea-Novel, B., and Bastin, G.: 1991, Controllability and state feedback stabi-lizability of nonholonomic mechanical systems, in: C. Canudas de Wit (ed.), Lecture Notes inControl and Information Science, Springer-Verlag, Berlin, pp. 106–124.

Canudas de Wit, C., Khennouf, H., Samson, C., and Sordalen, O. J.: 1993, Nonlinear control designfor mobile robots, in: Y. F. Zheng (ed.), Recent Trends in Mobile Robots, World Scientific,Singapore, pp. 121–156.

Canudas de Wit, C. and Khennouf, H.: 1995, quasi-continuous stabilizing controllers for non-holonomic systems: design and robustness considerations, in: Proc. Eur. Control Conf., Rome,1995, pp. 2630–2635.

Chen, F. C. and Liu, C. C.: 1994, Adaptively controlling nonlinear continuous-time systems usingmultilayer neural network, IEEE Trans. Autom. Control 39(6), 1306–1310.

Cybenko, G.: 1989, Approximation by superposition of a sigmoidal function, Math. Controls Sig.Syst. 2(4), pp. 303–314.

Fierro, R. and Lewis, F. L.: 1995, Control of nonholonomic mobile robot: Backstepping kinematicsinto dynamics, in: Proc. IEEE Conf. Dec. Control, New Orleans, LA, 1995, pp. 3805–3810.

Hornik, K., Stinchcombe, M., and White, H.: 1989, Multilayer feedforward networks are universalapproximators, Neural Network 2, 359–366.

JINTST10.tex; 17/11/1997; 11:51; v.7; p.22

Page 23: Robust Practical Point Stabilization of a Nonholonomic Mobile Robot Using Neural Networks

MOBILE ROBOT ROBUST STABILIZATION USING NEURAL NETWORKS 317

Jiang, Z. P. and Pomet, J.-B.: 1994, Combining backstepping and time-varying techniques for anew set of adaptive controllers, in: Proc. IEEE Conf. Dec. Control, Lake Buena Vista, FL,1994, pp. 2207–2212.

Kanayama, Y., Kimura, Y., Miyazaki, F., and Noguchi, T.: 1990, A stable tracking control methodfor an autonomous mobile robot, in: Proc. IEEE Int. Conf. Robot. Autom., 1990, pp. 384–389.

Kolmanovsky, I. and McClamroch, N. H.: 1995, Developments in nonholonomic control problems,in: IEEE Control Systems, Dec. 1995, pp. 20–36.

Lewis, F. L., Abdallah, C. T., and Dawson, D. M.: 1993, Control of Robot Manipulators, MacMillan,New York.

Lewis, F. L.: 1996, Neural network control of robot manipulators, in: 1996 June, IEEE Expert,pp. 64–75.

Lewis, F. L., Yesildirek, A., and Liu, K.: 1996, Multi-layer neural-net roobot controller withguaranteed tracking performance, IEEE Trans. Neural Netw. 7(2), 1–20.

M’Closkey, R. T. and Murray, R. M.: 1994, Extending exponential stabilizers for nonholonom-ic systems from kinematic controlllers to dynamic controllers, in: Proc. IFAC Symp. RobotControl, Capri, Italy, 1994, pp. 211–216.

Murray, R. M., Li, Z., and Sastry, S. S.: 1994, A Mathematical Introduction to Robotic Manipula-tion, CRC Press, Boca Raton, FL.

Nagata, S., Sekiguchi, M., and Asakawa, K.: 1990, Mobile robot control by a structured hierarchicalneural network, IEEE Control Systems, 69–76.

Narendra, K. S.: 1991, Adaptive control using neural networks, in: W. T. Miller, R. S. Sutton, andP. W. Werbos (eds), Neural Networks for Control, MIT Press, Cambridge, pp. 115–142.

Oelen, W., Berghuis, H., Nijmeijer, H., and Canudas de Wit, C.: 1995, Hybrid stabilizing controlon a real mobile robot, IEEE Robot. automat. Magazine, 16–23.

Polycarpou, M. M. and Ioannu, P. O.: 1992, Neural networks as on-line approximators of nonlinearsystems, in: Proc. IEEE Conf. Dec. Control, Tucson, AZ, 1992, pp. 7–12.

Rovithakis, G. A. and Christodoulou, M. A.: 1994, Adaptive control of unknown plants usingdynamical neural networks, IEEE Trans. Syst. Man Cyber. 24 (3), 400–412.

Sadegh, N.: 1993, A perceptron network for functional identification and control of nonlinearsystems, IEEE Trans. Neural Netw. 4(6), 982–988.

Samson, C.: 1991, Velocity and torque feedback control of a nonholonomic cart, in: C. Canudas deWit (ed.), Lecture Notes in Control and Information Science, Springer-Verlag, Berlin, pp. 125–151.

Sarkar, N. Yun, X., and Kumar, V.: 1994, Control of mechanical systems with rolling constraints:Application to dynamic control of mobile robots, Int. J. Robot. Res. 13(1), 55–69.

Werbos, P. J.: 1989, Backpropagation: past and future, in: Proc. 1988 Int. Conf. Neural Netw.,Vol. 1, 1989, pp. 1343–1353.

Yamamoto, Y. and Yun, X.: 1993, Coordinating locomotion and manipulation of a mobile manip-ulator, in: Y. F. Zheng (ed.), Recent Trends in Mobile Robots, World Scientific, Singapore,pp. 157–181.

JINTST10.tex; 17/11/1997; 11:51; v.7; p.23