You are on page 1of 45

Adaptive Control Design and Analysis

(Supplemental Notes)

Gang Tao
Department of Electrical and Computer Engineering
University of Virginia
Charlottesville, VA 22903

A Wiley-Interscience Publication

John Wiley & Sons, Inc.


New York - Chichester - Brisbane - Toronto - Singapore
Contents

Matrix Theory 1

Radial Unboundedness Condition on V (x) for Asymptotic Stability 2

Passivity of A Mass-Damper-Spring System 3

Positive Real Functions 4

Parameter Projection Properties 6

Explicit Swapping Lemma 7

Discrete-Time Swapping Lemma 9

Convergence of Discrete-Time Gradient Algorithm 10

Plant Zeros and Controller Order for MRAC 11

Tracking Performance in MRAC 14

Analysis of “Bursting Phenomenon” in Robust Adaptive Control 19

Robust MRAC with Switching σ-Modification 21

Discrete-time MRAC System Example 22

Indirect Observer Based Adaptive Control 24

Adaptive Control of ẋ(t) = Ax(t) + BΛu(t) + BΘ∗ φ(x) 27

Parametrization of (9.102) 29

i
ii

Plant Signal Identities for MIMO Cases 30

Proof of limt→∞ e(t) = 0 in (9.187C) 33

Adaptive Robot Control for Time-Varying Parameters 34

Derivation of (10.152) 40

Backstepping Design with Nonsmooth Inverse Signal 41


1

Matrix Theory
Symmetric Matrices
For a matrix M = M T , we have M = ∑ni=1 λi ei eTi where λi and ei are the eigen-
values and eigenvectors of M such that eTi ei = 1 and eTi e j = 0 with i 6= j. With
P = [e1 , e2 , . . . , en ] and Λ = diag{λ1 , λ2 , . . . , λn }, it follows that M = PΛPT , where
PPT = PT P = I, and, in addition, for M nonsingular, that M −1 = PΛ−1 PT .

For M = M T ≥ 0, we define M 1/2 = ∑ni=1 λi ei eTi = PΛ1/2 PT and express
M = M 1/2 M 1/2 , where (M 1/2 )T = M 1/2 . It also follows that for M nonsingular,
(M 1/2 )−1 = ∑ni=1 √1λ ei eTi = PΛ−1/2 PT . On the other hand, for Q = PΛ1/2 , we have
i
M = QQT (as compared with M = M 1/2 M 1/2 for (M 1/2 )T = M 1/2 = PΛ1/2 PT ).
2

Radial Unboundedness Condition on V (x) for Asymp-


totic Stability
One can draw the surface plots of V (x) = c, for different values of c, with

x12
V (x) = 2
+ x22 . (1)
1 + x1

For this V (x), such surface plots are closed curves for c < 1 but are open curves for
c > 1, as V (x) is not radially unbounded.
One can draw the phase-plane plot of ẋ = f (x), by obtaining its numerical solu-
tions for some typical initial conditions, for

6x1 2(x1 + x2 )
ẋ1 = − 2
+ 2x2 , ẋ2 = − . (2)
(1 + x1 )2 (1 + x12 )2

For some initial conditions, the solution trajectories do not converge to the origin.
(Are there any trajectories going to ∞?)
6x1 2(x1 +x2 )
One can draw the vector field of ẋ1 = − (1+x 2 )2 + 2x2 , ẋ2 = − (1+x2 )2 .
1 1
2√
The solution x = [x1 , x2 ]T of this system on the hyperbola x2 = x1 − 2
satisfies

ẋ2 1
g1 (x) = =− √ , (3)
ẋ1 1 + 2 2x1 + 2x12

while the slope of this hyperbola is


dx2 1
g2 (x) = =− √ . (4)
dx1 x2
1 − 2 2x1 + 21

It follows that 0 > g1 (x) > g2 (x) for x1 > 2 so that the trajectories to the right of
the hyperbola branch in the first quadrant cannot cross the branch.
This example shows that for asymptotic stability, the radial unboundedness of
V (x) is a crucial condition [179], [351], [426].
3

Passivity of A Mass-Damper-Spring System


Consider a mass-damper-spring mechanical system with equation of motion

M ẍ + Dẋ + Kx = F, (5)

where M is the mass, D is the damping constant, K is the spring constant, x is the
mass position, and F is the force acting on the mass.
The system energy is
1 1
V (x, ẋ) = M ẋ2 + Kx2 (6)
2 2
whose time derivative is
d
V (x, ẋ) = F ẋ − Dẋ2 . (7)
dt
Over any time interval [0, T ], it follows that
Z T Z T
V (x(T ), ẋ(T )) = V (x(0), ẋ(0)) + F(t)ẋ(t) dt − Dẋ2 (t) dt. (8)
0 0

Since D ≥ 0, we have
Z T
− F(t)ẋ(t) dt ≤ V (x(0), ẋ(0)), (9)
0

which means that the energy extracted from the system is less than or equal to the
initial system energy. From (7), the term F ẋ clearly represents the system absorbed
power from the input force F. For passivity analysis, the product of system input
and output is defined as such power. In this sense we consider the velocity v = ẋ as
system output. Then, the system admittance (the reciprocal of impedence) is

V (s) s
G(s) = = , (10)
F(s) Ms2 + Ds + K

which is positively real (the mechanical-electric analogy pairs are “force vs. volt-
age” and “velocity vs. current”).
If we consider x as system output, the term Fx does not represents system power
(i.e., 0T F(t)x(t) dt does not represents system energy) so that the passivity analysis
R

is not applicable. In other words, the system transfer function for passivity analysis
in terms of positive realness is defined in terms of system impedence (or admittance)
relating curent (velocity) to voltage (force) (or voltage (force) to curent (velocity)).
Without the passivity property, the transfer function from the input force to the
1
output position, Ms2 +Ds+K , cannot be positive real.
4

Positive Real Functions


A popular definition of positive real (PR) functions is that a function h(s) of the
complex variable s = σ + jω is positive real if (i) h(s) is real for real s, and (ii)
Re[h(s)] ≥ 0 for all s such that Re[s] > 0.
One may “induce” a definition of strictly positive real (SPR) functions as: a
function h(s) of the complex variable s = σ + jω is strictly positive real if (i) h(s) is
real for real s, and (ii) Re[h(s)] > 0 for all s such that Re[s] > 0. This definition was
once used in the early literature for SPR functions. It turns out that, like some other
definitions of SPR functions, this definition does not capture the physical meaning
of strictly positive realness, as indicated by the following example.
It is well-understood that a proper definition of strictly positive functions, which
captures the physical meaning of strictly positive realness, is that h(s) is strictly
positive real if h(s − ε) is positive real for some ε > 0. Based on this definition,
s+1
h(s) = (11)
s2 + s + 1
is only positive real but not strictly positive real. From the expressions
σ + jω + 1
h(s) =
(σ + jω)2 + σ + jω + 1
σ + 1 + jω
=
σ − ω + σ + 1 + j(ω + 2σω)
2 2

(σ + 1 + jω)(σ2 − ω2 + σ + 1 − j(ω + 2σω))


= (12)
(σ2 − ω2 + σ + 1)2 + (ω + 2σω)2
(σ + 1)(σ2 − ω2 + σ + 1) + ω(ω + 2σω)
Re[h(s)] =
(σ2 − ω2 + σ + 1)2 + (ω + 2σω)2
σ3 + 2σ2 + σω2 + 2σ + 1
= , (13)
(σ2 − ω2 + σ + 1)2 + (ω + 2σω)2
we see that h(s) satisfies the above “induced” definition of SPR functions: (i) h(s)
is real for real s, and (ii) Re[h(s)] > 0 for all s such that Re[s] = σ > 0. Hence, the
conclusion is that this “induced” definition for SPR functions is not proper.
Note that this h(s) is not SPR, because
1
Re[h( jω)] = (14)
(1 − ω2 )2 + ω2
does not satisfy the necessary condition for SPRness: limω2 →∞ ω2 Re[h( jω)] > 0,
or because for any chosen ε > 0,
−ε3 + 2ε2 − εω2 − 2ε + 1
Re[h( jω − ε)] = <0 (15)
(ε2 − ω2 − ε + 1)2 + (ω − 2εω)2
5

whenever ω2 > (−ε3 + 2ε2 − 2ε + 1)/ε, that is, h(s − ε) cannot be positive real
for any ε > 0. (P(ε) = −ε3 + 2ε2 − 2ε + 1 = (ε − 1)(−ε2 + ε − 1) > 0 for ε ∈
(0, 1) and P(ε) < 0 for ε > 1. For h(s − ε) to be stable, ε ∈ [0, 0.5) is needed as
(s − ε)2 + s − ε + 1 = s2 + (1 − 2ε)s + 1 − ε + ε2 and 1 − ε + ε2 > 0 for any ε.)
6

Parameter Projection Properties


The property (3.183) follows from the observation: if θ j (t) = θaj and g j (t) < 0, then
f j (t) = −g j (t) > 0 and θ j (t) − θ∗j = θaj − θ∗j ≤ 0, so that (θ j (t) − θ∗j ) f j (t) ≤ 0; and
if θ j (t) = θbj and g j (t) > 0, then f j (t) = −g j (t) < 0 and θ j (t) − θ∗j = θbj − θ∗j ≥ 0,
so that (θ j (t) − θ∗j ) f j (t) ≤ 0.
Similarly, the property (3.214) follows from the observation: if θ j (t) + g j (t) >
θ j , then f j (t) = θbj − θ j (t) − g j (t) < 0 and θ j (t) − θ∗j + g j (t) + f j (t) = θbj − θ∗i ≥
b

0, so that f j (t)(θ j (t) − θ∗j + g j (t) + f j (t)) ≤ 0; and if if θ j (t) + g j (t) < θaj , then
f j (t) = θbj − θ j (t) − g j (t) > 0 and θ j (t) − θ∗j + g j (t) + f j (t) = θaj − θ∗i ≤ 0, so that
f j (t)(θ j (t) − θ∗j + g j (t) + f j (t)) ≤ 0.
7

Explicit Swapping Lemma


The swapping lemma (5.331) was an important lemma in the development of a
stable model reference adaptive control system. It states that for a stable and proper
rational function h(s) with a minimal realization h(s) = c(sI − A)−1 b + d and two
vector signals θ(t) and ω(t), it follows that

θT (t)h(s)[ω](t) − h(s)[θT ω](t) = hc (s)[hb (s)[ωT ]θ̇](t), (16)

where hc (s) = c(sI − A)−1 and hb (s) = (sI − A)−1 b. Here we derive an alternative
form of this lemma, explicitly in terms of the parameters of the funtion h(s).
∗ ∗
Denoting Pm (s) = sn + an∗ −1 sn −1 + · · · + a1 s + a0 , for vector signals θ(t) and
ω(t), from (5.138) and with an∗ = 1, we have

1 1
θT (t) [ω](t) − [θT ω](t)
Pm (s) Pm (s)
∗ −i ∗ ! 
n∗ ∑nj=0 an∗ − j sn −i− j T s
i−1
= ∑ Pm (s)
θ̇
Pm (s)
[ω] (t). (17)
i=1


Introducing F(s) = fn∗ −1 sn −1 + · · · + f1 s + f0 , we express
 
1
F(s) θ (t)
T
[ω] (t)
Pm (s)
 ∗ −2
 1 s

f0
= fn∗ −1 s n
+ · · · + f1 θ̇ T
[ω] + θT
[ω] (t) + θT (t) [ω](t)
Pm (s) Pm (s) Pm (s)
 ∗ −2
 1

= fn∗ −1 s n
+ · · · + f1 θ̇ T
[ω] (t)
Pm (s)
 ∗ −3
 s s2

+ fn∗ −1 s n
+ · · · + f2 θ̇ T
[ω] + θT
[ω] (t)
Pm (s) Pm (s)
f1 s + f0
+ θT (t) [ω](t) = · · ·
Pm (s)
! 
n∗ −1 n∗ −i
si−1 F(s)
= ∑ ∑ fn∗ − j s

n −i− j
θ̇ T
[ω] (t) + θT (t) [ω](t) (18)
i=1 j=1 Pm (s) Pm (s)

and use it to derive


F(s) T F(s)
[θ ω](t) − θT (t) [ω](t)
Pm (s) Pm (s)
! 
n∗ −1 n∗ −i
si−1
= ∑ ∑ fn∗ − j s

n −i− j
θ̇T
[ω] (t)
i=1 j=1 Pm (s)
8
" −i ∗ ∗  ∗ −i− j #
∑nj=0n∗
an − j sn s i−1
− F(s) ∑ θ̇T [ω] (t)
i=1 Pm (s) Pm (s)
n∗ −i ∗
!
n∗ −i− j  
n∗ −1 n∗ −i F(s) ∑ a − s si−1
= ∑ ∑ fn∗ − j s
∗ −i− j j=0 n j
n
− θ̇T
[ω] (t)
i=1 j=1 Pm (s) Pm (s)
" #
F(s) n∗ −1
T s
− θ̇ [ω] (t)
Pm (s) Pm (s)
  " #
n∗ −1 n∗ −1
αi (s) T si−1 F(s) T s
= ∑ θ̇ [ω] (t) − θ̇ [ω] (t). (19)
i=1 Pm (s) Pm (s) Pm (s) Pm (s)

Hence, we obtain the explicit swapping lemma:


n∗  
F(s) T F(s) αi (s) T si−1
[θ ω](t) − θ (t)
T
[ω](t) = ∑ θ̇ [ω] (t), (20)
Pm (s) Pm (s) i=1 Pm (s) Pm (s)

where
n∗ −i n∗ −i
∑ n∗ −i− j
∑ an∗− j sn −i− j , i = 1, 2, . . . , n∗ − 1,

αi (s) = Pm (s) fn∗ − j s − F(s) (21)
j=1 j=0


are polynominals of degrees n∗ − 1 or less, and αn∗ (s) = −F(s).
For a proper transfer function h(s) = fn∗ + PF(s)
m (s)
, it follows that
  n∗
αi (s) T si−1
h(s)[θ ω](t) − θ (t)h(s)[ω](t) = ∑
T T
θ̇ [ω] (t). (22)
i=1 Pm (s) Pm (s)
9

Discrete-Time Swapping Lemma


Let a stable and proper rational function h(z) have a minimal realization h(z) =
c(zI − A)−1 b + d and θ(t) and ω(t) be two vector signals, and denote hc (z) = c(zI −
A)−1 and hb (z) = (zI − A)−1 b. Then,

θT (t)h(z)[ω](t) − h(z)[θT ω](t) = hc (z)[(hb (z)z)[ωT ](z − 1)[θ]](t). (23)

Proof: Using the discrete-time convolution: y(t) = C ∑t−1 i=0 A


t−i−1 Bu(i) for y(t) =

C(zI −A)−1 B[u](t), and its modification: w(t) = C ∑ti=0 At−1 Bu(i) for w(t) = C(zI −
A)−1 Bz[u](t) = C(zI − A)−1 B[u](t + 1), we express

hc (z)[(hb (z)z)[ωT ](z − 1)[θ]](t)


t−1 τ
= c ∑ At−τ−1 ∑ Aτ−i b ωT (i)(θ(τ + 1) − θ(τ))
τ=0 i=0
t−1
= c ∑ At−i−1 b ωT (i)θ(t)
i=0
t−2 τ t−1 τ
+ c ∑ At−τ−1 ∑ Aτ−i b ωT (i)θ(τ + 1) − c ∑ At−τ−1 ∑ Aτ−i b ωT (i)θ(τ)
τ=0 i=0 τ=0 i=0
t−1 σ−1
= θT (t)h(z)[ω](t) + c ∑ At−σ ∑ Aσ−i−1b ωT (i)θ(σ)
σ=1 i=0
t−1 t−1 τ−1
−c∑A t−τ−1
b ω (τ)θ(τ) − c ∑ A
T t−τ−1
∑ Aτ−ib ωT (i + 1)θ(τ)
τ=0 τ=1 i=0
= θ (t)h(z)[ω](t) − h(z)[θ ω](t),
T T
(24)

where, by definition,
t−1
c ∑ At−i−1 b ω(i) = h(z)[ω](t) (25)
i=0
t−1
c ∑ At−τ−1 b ωT (τ)θ(τ) = h(z)[θT ω](t). (26)
τ=0
This is the discrete-time version of the swapping lemma (5.331), whose explicit
version can also be derived, similar to the continuous-time case above.
10

Convergence of Discrete-Time Gradient Algorithm


This section gives the proof of Theorem 3.2 which specifies the conditions for pa-
rameter convergence of the discrete-time gradient algorithm (3.83).
Consider the linear time-invariant system described by the difference equation

P(z)[y](t) = Z(z)[u](t), (27)

where y(t) ∈ R and u(t) ∈ R are the measured system input and output, and

P(z) = zn + pn−1 zn−1 + · · · + p1 z + p0 , (28)

Z(z) = zm zm + zm−1 zm−1 + · · · + z1 z + z0 . (29)

Choose a stable polynomial Λ(z) = zn + λn−1 zn−1 + · · · + λ1 z + λ0 whose zeros are


in |z| < 1, and express (27) as

y(t) = θ∗T φ(t), (30)

where

θ∗ = [z0 , z1 , . . . , zm−1 , zm ,
λ0 − p0 , λ1 − p1 , . . . , λn−2 − pn−2 , λn−1 − pn−1 ]T ∈ Rn+m+1 , (31)

1 z zm−1 zm
φ(t) = [u](t), [u](t), . . . , [u](t), [u](t),
Λ(z) Λ(z) Λ(z) Λ(z)
T
1 z zn−2 zn−1
[y](t), [y](t), . . . , [y](t), [y](t) ∈ Rn+m+1 . (32)
Λ(z) Λ(z) Λ(z) Λ(z)
Assume that the system input u(t) has n + m + 1 frequencies, that is,
N
u(t) = α0 + ∑ (αi sin ωit + αN+i cos ωit), (33)
i=1

where ω j 6= ωk + 2πl for j 6= k and an integer l, α0 = 0 and N = n+m+1


2 for an even
n+m+1 (or α0 6= 0 and N = 2 for an odd n+m+1), and αi 6= 0, i = 1, 2, . . . , 2N.
n+m

Property 1 There exist an integer δ1 > 0 and a constant α1 > 0 such that
σ+δ1
∑ U(t,t + n + m)U T (t,t + n + m) ≥ α1I, ∀σ ≥ 0, (34)
t=σ

where U(t,t + n + m) = [u(t), u(t + 1), . . . , u(t + n + m)]T ∈ Rn+m+1 .

Proof:
11

Plant Zeros and Controller Order for MRAC


Consider a LTI system
ẋ = Ax + Bu, y = Cx (35)
where A ∈ Rn×n , B ∈ Rn×M , C ∈ RM×n , whose transfer matrix G(s) = C(sI − A)−1 B
is an M × M strictly proper rational matrix.
Z(s)
For SISO systems with M = 1, we have G(s) = P(s) for some nominal polyno-
mials Z(s) and P(s) with ∂P(s) = n p ≤ n (if P(s) is taken as P(s) = det[sI − A],
then n p = n). If we take n as the system order for MRAC design, that is, the
controller order is n − 1 = ∂Λ(s), then we need to assume that all zeros of Z(s)
(which are the system zeros) are stable, for a stable MRAC system. With such a
full-order representation P(s) = det[sI − A], the condition that all zeros of Z(s) are
stable implies that the realization (A, B,C) is stabilizable and detectable. The choice
of the controller order n − 1 has another interpretion in the SISO case: the output
feedback controller structure is a reparametrization of a state feedback control law
u = k1∗T x + k2∗ r, using a reduced-order (with order n − 1) state observer (see Section
4.4.2).
For SISO systems, if, due to pole-zero cancellations caused by a nonminimal
realization (A, B,C), the degree n p of P(s) is less than n: n p < n, and the controller
order is n p − 1, we need to assume that, in addition to all zeros of Z(s) being sta-
Z(s)
ble, the pole-zero cancellations leading G(s) = C(sI − A)−1 B to P(s) should be also
stable ones, that is, the nonminimal realization (A, B,C) should be stabilizable and
detectable. In this case, the system zeros include the zeros of Z(s) and those can-
Z(sz )
celled zeros in G(s), while the transfer function zeros are those sz which make P(s z)
zero and they can be a subset of the zeros of Z(s), as there may be some more
Z(sz )
zero-pole cancellations between Z(s) and P(s) in P(s z)
.
In the SISO case, a state feedback control design u(t) = K1T x(t) + K2 r(t) re-
quires that all zeros of Z(s) are stable (in this case, P(s) = det[sI − A]) which is
necessary and sufficient for stable plant-model matching: det[sI − A − BK1∗T ] =
Pm (s)Z(s)/zm (not needed for just pole placement control). An output feedback
Z(s)
control design is based on a nominal transfer function P(s) with order n p = ∂P(s),
Z(s)
and all zeros of Z(s) need to be stable for stable plant-model matching based on P(s) .
If n ≤ n p , a stable Z(s) implies that (A, B,C) is stabilizable and detectable. If n > n p ,
Z(s)
then there are zero-pole cancellations in C(sI − A)−1 B = P(s) , and (A,C) needs to
be detectable, otherwise those undetectable modes (eigenvalues of A) cannot be
stabilized (output feedback does not change unobservable modes); (A, B) needs to
be stabilizable, otherwise those unstabilizable modes (eigenvalues of A) cannot be
stabilized (output or state feedback does not change uncontrollable modes).
12

For MIMO systems, there are also different ways to express the system transfer
matrix G(s) = C(sI −A)−1 B (we first assume that G(s) has full rank m for an M ×M
G(s), that is, rank[G(s)] < M only for a finite number of values of s).
The first (simple) form of G(s) is
N(s)
G(s) = C(sI − A)−1 B = , d(s) = det[sI − A], ∂d(s) = n. (36)
d(s)
If we use a controller of order n − 1 = ∂Λ(s), we need to assume that all zeros of
det[N(s)] are stable, which may be thought as the system zeros (note that the zeros
of G(s), as defined in the literature, may be only a subset of those zeros if (A, B,C)
is not a minimal realzation). In fact, different from the SISO case, the controller
order can be reduced to n − M in the MIMO case, because a reduced-order observer
has order n − M, so that the state feedback control law u = K1∗T x + K2∗ r can be
reparametrized using the input and output signals, leading to an (n − M)th order
output feedback controller.
Given that the observability index of a minimal realization of G(s) is ν ≤ n −
M +1, that is, ν−1 ≤ n−M, the order of the usual MRAC structure, which has been
chosen as ν − 1, is the minimal order to meet the desired plant-model matching. If
for a system, the order of a reduced-order observer can be chosen as ν − 1, the
parametrization of the output feedback controller with order ν − 1 can then be seen
as a reparametrization of a state feedback controller, using input and output signals.
If not, the controller parametrization may be considered as being one used for plant-
model matching. In MRAC for multivariable systems, we call ν the observability
index of the system transfer matrix G(s), in the sense that ν is the observability
index of a minimal realization of the system transfer matrix G(s).
The second form of G(s) is a left matrix-fraction description:

G(s) = C(sI − A)−1 B = P̄l−1 (s)Z̄l (s) (37)

where P̄l (s) and Z̄l (s) are M × M polynomial matrices with P̄l (s) row reduced (a
polynomial matrix P̄l (s) is row reduced if the elements in the ith row of P̄l (s) have
a largest degree ν̄i and the matrix Γr = lims→∞ diag{s−ν̄1 , s−ν̄2 , . . . , s−ν̄M }P̄l (D) is
nonsingular), and the ith row degree of Z̄l (s) is less than the ith row degree of P̄l (s),
i = 1, 2, . . . , q (it is denoted that ∂P̄l (s) = ν̄, that is, ν̄ = max{ν̄i }). A controller can
be designed with ∂Λ(s) = ν̄ − 1. In this case, for stable MRAC, we need to as-
sume that the zeros of det[Z̄l (s)] are stable and also that (A, B,C) is stabilizable and
detectable (as some pole-zero cancellations may occur when obtaining the system
model P̄l−1 (s)Z̄l (s) from (A, B,C)).
Note that a left matrix-fraction description G(s) = P̄l−1 (s)Z̄l (s), can always be
made to have a row reduced P̄l (s), by using elementary row operations represented
13

by a unimodular matrix M(s) (such a matrix is defined to have a non-zero constant


determinant) on a non-reduced P̃l (s):

G(s) = P̃l−1 (s)Z̃l (s) = (M(s)P̃l (s))−1 M(s)Z̃l (s) = P̄l−1 (s)Z̄l (s), (38)

for P̄l (s) = M(s)P̃l (s) and Z̄l (s) = M(s)Z̃l (s).
The third form of G(s) is a left co-prime matrix-fraction description:

G(s) = C(sI − A)−1 B = Pl−1 (s)Zl (s) (39)

where Pl (s) and Zl (s) are left co-prime M × M polynomial matrices (Pl (s) and Zl (s)
are left co-prime if any M × M polynomial matrix W (s) such that Zl (s) = W (s)Z(s)
and Pl (s) = W (s)P(s) for some polynomial matrices Z(s) and P(s)—such a W (s)
is called a common left divisor of Zl (s) and Pl (s), is a unimodular matrix, that is,
det[W (s)] is a non-zero constant), with Pl (s) row reduced and ∂Pl (s) = ν ≤ ν̄. A
controller can be designed with ∂Λ(s) = ν − 1. In this case, we also need to assume
that the zeros of det[Zl (s)] are stable and that (A, B,C) is stabilizable and detectable.
The situation is similar for G(s) in a right matrix-fraction description:

G(s) = C(sI − A)−1 B = Zr (s)Pr−1 (40)

with Pr (s) being colunm reduced (that is, PrT (s) being row reduced) and Zr (s) and
Pr (s) being right co-prime (that is, ZrT (s) and PrT (s) being left co-prime). In par-
ticular, the column degrees of Pr (s) are denoted as µi (or µ̄i for P̄r (s) if G(s) =
C(sI − A)−1 B = Z̄r (s)P̄r−1 with Z̄r (s) and P̄r (s) not right co-prime), i = 1, 2, . . . , m,
and the colunm degrees of Zr (s) (Z̄r (s)) are less than that of Pr (s) (P̄r (s)). If (A, B,C)
is a minimal realization, then µi , i = 1, 2, . . . , m, are the controllability indexes of
(A, B). If (A, B,C) is not a minimal realization, then one can a controllable realiza-
tion (Āc , B̄c , C̄c ) whose controllability indexes are µ̄i , for Z̄r (s)P̄r−1 (s) (or (Ac , Bc ,Cc )
whose controllability indexes are µi , for Zr (s)Pr−1 ).
Note that if (A, B,C) is a minimal realization, then ν is the observability index
of (A,C) (we may also call ν the observability index of G(s)). When (A, B,C) is not
minimal, for the second case (or the third case), we can find an observable realiza-
tion (Āo , B̄o , C̄o ) whose observability indexes are ν̄i , for P̄l−1 (s)Z̄l (s) (or (Ao , Bo ,Co )
whose observability indexes are νi , for Pl−1 (s)Zl (s)). In this sense, we may also call
ν̄ (or ν) the observability of G(s) = P̄l−1 (s)Z̄l (s) (or G(s) = Pl−1 (s)Zl (s)).
In summary, for MRAC of a system (A, B,C), a basic assumption is that (A, B,C)
is stabilizable and detectable, in addition to the assumption that all zeros of the sys-
tem transfer matrix G(s) = C(sI −A)−1 B are stable; in other words, all system zeros
are required to be stable.
For more about the definitions of the zeros and poles of G(s), see Kailath (1980)
and Rugh (1996), and also see more notes.
14

Tracking Performance in MRAC


It has been shown that for a linear time-invariant plant y(t) = G(s)[u](t), where
Z(s)
G(s) = k p P(s) with all zeros of Z(s) stable and with relative degree n∗ = degree of
P(s)− degree of Z(s), a model reference adaptive controller to generate the plant in-
put u(t) ensures that the tracking error e(t) = y(t)−ym (t) has the desired asymptotic
convergence property: limt→∞ e(t) = 0, where ym (t) = Wm (s)[r](t) is the reference
output to be tracked by the plant output y(t), for a bounded reference input signal
r(t) and a stable transfer function Wm (s) = Pm1(s) with a stable polynomial Pm (s)
of degree n∗ . In this work, we show that the tracking error e(t) in a model refer-
ence adaptive control (MRAC) system has some stronger convergence properties as
stated in the following theorem.

Theorem 1 For a model reference adaotive control system with the plant relative
degree n∗ > 0, the tracking error e(t) = y(t) − ym (t) has the convergence property:
i
limt→∞ d dte(t) ∗
i = 0, for i = 0, 1, . . . , n − 1.

Proof: The property: limt→∞ e(t) = 0 follows directly from the established prop-
erties: 0∞ e2 (t)dt < ∞ and de(t)
R
dt is bounded. However, it is not clear whether
d i e(t) i

dt i
is square-integrable or not for i > 0. To prove the convergence of d dte(t) i , for
i = 1, . . . , n −1, we recall that for a function f (t) defined on [t0 , ∞), limt→∞ f (t) = 0

if for every η > 0, there exists a T = T (η) > 0 such that | f (t)| < η, ∀t > T . Hence,
our goal now is to show that in each case of i = 1, . . . , n∗ − 1, for any given η, there
i
exists a T > 0 such that | d dte(t)i | < η, for all t > T . To reach this goal, we use a
i
method to decompose the signal d dte(t) i into two ficticious parts: one being small
enough and one converging to zero asymptotically with time going to infinity. To
this end, we first introduce two fictitious filters K(s) and H(s) from

an
K(s) = ∗ , sH(s) = 1 − K(s) (41)
(s + a)n
where a > 0 is a generic constant to be specified. The filter H(s) is given as
∗ ∗
1 1 (s + a)n − an
H(s) = (1 − K(s)) = ∗ (42)
s s (s + a)n
which is strictly proper (with relative degree 1) and stable and whose impulse re-
sponse function is
n∗ ∗
an −i n∗ −i
h(t) = L −1
[H(s)] = e −at
∑ ∗ t . (43)
i=1 (n − i)!
15

It can be verified that the L1 signal norm of h(t) is


Z ∞
n∗
kh(·)k1 = |h(t)| dt = . (44)
0 a
It has been established that the tracking error e(t) = y(t) − ym (t) satisfies
kp
e(t) = [θ̃T ω](t), (45)
Pm (s)

where Pm (s) is a stable polynomial of degree n∗ , and θ̃(t) is the parameter error
vector and ω(t) is the controller regressor vector, and both are bounded. Using
(41): 1 = sH(s) + K(s), we express ė(t) = de(t)
dt as

k ps T
ė(t) = [θ̃ ω](t)
Pm (s)
k p s2 T kp
= H(s) [θ̃ ω](t) + sK(s) [θ̃T ω](t)
Pm (s) Pm (s)
k ps 2
= H(s) [θ̃T ω](t) + sK(s)[e](t). (46)
Pm (s)

To demonstrate the new technique for proving the new result in Theorem 1:
i
limt→∞ d dte(t) ∗
i = 0, for i = 1, . . . , n − 1, under the previously proved properties of
MRAC: all closed-loop signals are bounded and the tracking error e(t) = y(t) −
ym (t) satisfies limt→∞ e(t) = 0, we first consider the case of n∗ = 2, where

a2 s + 2a
K(s) = 2
, H(s) = . (47)
(s + a) (s + a)2
k p s2 k p s2
Since θ̃T (t)ω(t) is bounded and Pm (s) is stable and proper, Pm (s) [θ̃ ω](t) is bounded.
T

It follows from the above L1 signal norm expression of H(s) that

k p s2 T c0
|H(s) [θ̃ ω](t)| ≤ (48)
Pm (s) a
for any t ≥ 0 and some constant c0 > 0 independent of a > 0. Since limt→∞ e(t) = 0
as established and sK(s) is stable and strictly proper (with relative degree n∗ − 1 = 1
in this case of n∗ = 2), it follows, for any a > 0 in K(s), that

lim sK(s)[e](t) = 0.1 (49)


t→∞
1 For a stable and strictly proper transfer function W (s) and a system z(t) = W (s)[v](t), if
limt→∞ v(t) = 0, then limt→∞ z(t) = 0 (see p. 68 of Narandra and Annaswamy (1989) and and p.
263 of Tao (2003).
16

To show that, for every η > 0, there exists a T > 0 such that |ė(t)| < η, ∀t > T ,
we set a > a(η) = 2cη0 for the ficticious filter H(s) in (42) so that ca0 < η2 in (48), and
let T = Ta (a(η), η) = T (η) > 0 such that |sK(s)[e](t)| < η2 for all t ≥ T (which is

ensured by the property that limt→∞ sK(s)[e](t) = 0 for any finite a > 0 in the other
related ficticious filter K(s) in (41)) (the peak value of |sK(s)[e](t)| depends on the
parameter a, so that the above time instant T = Ta (a(η), η) also depends on a too).
Then, it follows from (46) and (48) that
η η
|ė(t)| < + = η, ∀t > T, (50)
2 2
which implies that limt→∞ ė(t) = 0. In other words, if limt→∞ ė(t) 6= 0, then there
exist an η0 > 0 and a sequence of time instants ti with limi→∞ ti = ∞ such that
|ė(ti )| > η0 for all i = 1, 2, . . ., which, from the above analysis, is impossible.

Similarly, for the case when n∗ = 3 with

a3 s2 + 3as + 3a2
K(s) = , H(s) = , (51)
(s + a)3 (s + a)3
k p s2
we see that in (46), Pm (s) is stable and strictly proper, and so is sK(s), so that
2 d 2 e(t)
limt→∞ ė(t) = 0. To show limt→∞ d dte(t)
2 = 0, from (46), we express dt 2
as

d 2 e(t) k p s3 T
= H(s) [θ̃ ω](t) + s2 K(s)[e](t), (52)
dt 2 Pm (s)
k p s3 s3
Pm (s) [θ̃ ω](t) is stable abd proper and θ̃T (t)ω(t) is
in which T is bounded (as Pm (s)
bounded) and H(s) satisfies (44), and limt→∞ s2 K(s)[e](t) = 0. Hence, similar to
2 d 2 e(t)
(50), now with d dte(t)
2 replacing ė(t) in (50), it also follows that limt→∞ dt 2 = 0.

In general, for a MRAC system with an arbitrary relative degree n∗ > 0, from
i
(46), we express the ith-order time derivative d dte(t)
i of e(t) as

d i e(t) k p si+1 T
= H(s) [θ̃ ω](t) + si K(s)[e](t). (53)
dt i Pm (s)
k p si+1
Since θ̃T (t)ω(t) is bounded, and for each i = 1, 2, . . . , n∗ − 1, Pm (s) is stable and
strictly proper (proper for i = n∗ − 1), we have

k p si+1 T ci
|H(s) [θ̃ ω](t)| ≤ (54)
Pm (s) a
17

for some ci > 0 independent of a. For each i = 1, 2, . . . , n∗ − 1, si K(s) is stable and


strictly proper, so that, with limt→∞ e(t) = 0, we have

lim si K(s)[e](t) = 0. (55)


t→∞

Hence, with the use of the ficticious parameter a > 0 in H(s) and K(s), similar to
(50), it can be shown that for every η > 0, there exists a T = T (η) > 0 such that
i d i e(t)
i | < η for all t > T , so that limt→∞ dt i = 0, for i = 1, 2, . . . , n − 1.
| d dte(t) ∗ ∇

For a general MRAC system, the reference input signal r(t) is only required to
be bounded (which is sufficient for the result of Theorem 1). If the time-derivative
of r(t) is also bounded, we have the following additional property.

Corollary 1 For a MRAC system with relative degree n∗ > 0, if both r(t) and ṙ(t)
are bounded, then the tracking error e(t) = y(t) − ym (t) has the convergence prop-
i
erty: limt→∞ d dte(t) ∗
i = 0, for i = 0, 1, . . . , n .

n∗
Proof: We just need to show the additional convergence property: limt→∞ d dte(t)
n∗ =
0. To this end, we consider (53) with i = n∗ :
∗ ∗
d n e(t) k p sn ∗
n∗ = H(s) s[θ̃T ω](t) + sn K(s)[e](t). (56)
dt Pm (s)
T
In this case, s[θ̃T ω](t) = dt
d
(θ̃T (t)ω(t)) = θ̃˙ (t)ω(t) + θ̃T ω̇(t) is bounded, because
θ̃˙ (t) and ω̇(t) (whose last component is ṙ(t) which is bounded by assumption) are

k sn ∗
bounded. Hence Pmp (s) s[θ̃T ω](t) is bounded. Since sn K(s) in (56) is stable and
proper and H(s) satisfies (44), we have, with the property: limt→∞ e(t) = 0 and an
∗ n∗
d n e(t)
inequality similar to (50) with dt n
∗ replacing ė(t), that limt→∞ d dte(t)
n∗ = 0. ∇

Remark 1 As a comparison, in the ideal case of nominal model reference control


when θ(t) = θ∗ in the controller structure, it can be shown that

Pm (s)[y − ym ](t) = −k p ε1 (t) (57)

for some exponentially decaying and initial condition related term ε1 (t), where
Pm (s) is a stable polynomial of degree n∗ . It follows from this equation that the
i
tracking error e(t) = y(t) − ym (t) has the convergence property: limt→∞ d dte(t)
i = 0,

for i = 0, 1, . . . , n (under the condition that r(t) is bounded). The difference be-
tween the nominal control and adaptive control cases is that in the adaptive control
n∗
case the additonal condition that ṙ(t) is bounded was used to show limt→∞ d dte(t)
n∗ =
0, which is not needed for the nominal control case. 2
18

i
Remark 2 For the case when ym (t) = 0, it follows that limt→∞ d dty(t) i = 0, for i =

0, 1, . . . , n − 1, an output regulation result of MRAC.
For a state-space system model: ẋ = Ax + Bu, y = Cx with x(t) ∈ Rn , if n∗ = n,
i
then limt→∞ d dty(t)i = 0, for i = 0, 1, . . . , n−1, as established above, and limt→∞ x(t) =
0, as (A,C) is observable implied by the condition that n∗ = n (the system transfer
function does not have any finite zeros as its numerator is just a constant k p ). This
is the adaptive asymptotic state regulation result, guaranteed by a MRAC design.
In particular, for an nth order system with (A, B) in the controllable canonical
form and y(t) = x1 (t), the system transfer function explicitly has no finite zeros
as its numerator is a constant, leading to n∗ = n and an observable (A,C), so that
limt→∞ x(t) = 0, an inherent property of a MRAC system. 2

i
This new tracking error convergence property: limt→∞ d dte(t) ∗
i = 0, for i = 1, . . . , n ,
of adaptive control, is extendable to adaptive nonlinear tracking control systems in
which the controlled nonlinear plant has a defined relative degree n∗ .
19

Analysis of “Bursting Phenomenon” in Robust Adap-


tive Control
As illustrated in [134] that adaptive control systems with a fixed σ-modification
may show some bursting phenomenon. Consider the adaptive system analyzed on
page 232 (for Theorem 5.8) with σ1 (t) = σ0 being a constant in (5.198):

θ̇(t) = −sign[k p ]Γω(t)e(t) − Γσ1 (t)θ(t), t ≥ 0

(that is, with a fixed σ-modification). For V given in (5.43): V = e2 + |k p |θ̃T Γ−1 θ̃,
we have from (5.204) that

d¯2 (t)
V̇ ≤ −am e2 (t) + − 2|k p |σ0 θ̃T (t)θ(t)
am
d¯2 (t)
= −am e2 (t) + − 2|k p |σ0 θ̃T (t)θ̃(t) + 2|k p |σ0 θ̃T (t)θ∗
am
d¯2 (t)
2
≤ −am e (t) + − |k p |σ0 θ̃T (t)θ̃(t) + |k p |σ0 θ∗T θ∗ . (58)
am
For Γ = γI and am > γ σ0 (that is, with a small σ0 ), we have

d¯2 (t)
V̇ ≤ −γ σ0V + + |k p |σ0 θ∗T θ∗ (59)
am
¯
which, for |d(t)| ≤ d0 , leads to

d02 |k p | ∗T ∗
lim V (t) ≤ + θ θ . (60)
t→∞ am γ σ0 γ

This implies that the upper bound for the tracking error e(t) = y(t) − ym (t), for
|k |
d(t) = d0 = 0 (in the absence of disturabnces d(t)), may be as large as γp θ∗T θ∗ ,
independent of σ0 . We already knew that for d(t) = 0 and σ1 (t) = σ0 = 0, the
adaptive control system ensures that limt→∞ e(t) = 0. Now from the above analysis
|k |
we know that for a small σ0 6= 0, the error bound on |e(t)| can be up to γp θ∗T θ∗ .
On the other hand, from

d¯2 (t)
V̇ ≤ −am e2 (t) + − 2|k p |σ0 θ̃T (t)θ(t) (61)
am
and the adaptive control system signal boundedness, similar to (5.204), we have
Z t2
e2 (t) dt ≤ γ0 + k0 (t2 − t1 )d¯02 + c0 (t2 − t1 )σ0 (62)
t1
20

for some constant c0 > 0, where the σ0 related term is due to using a fixed σ-
modification σ1 (t) = σ0 , instead of the switching σ-modification which leads to
(5.205) and in turn to (5.204). The inequality (62) implies that, when d0 = 0 (in the
absence of disturabnces), we have the mean error
γ0
Z t2
1
e2 (t) dt ≤ + c 0 σ0 (63)
t2 − t1 t1 t2 − t1

which is of the magnitude of c0 σ0 , but the absolute error |e(t)|, as from (60), could
|k |
be as large as γp θ∗T θ∗ , independent of σ0 . This is the so-called “bursting phe-
nomenon” of robust adaptive control with a fixed σ-modification: the tracking error
e(t) may go to a large value independent of σ0 for a small interval of time but in the
mean sense the error e(t) is of the order of σ0 . This analytically explains what was
observed in the simulation results [134].
21

Robust MRAC with A Switching σ-Modification


To derive (5.224), for V (θ̃, ρ̃) = |ρ∗ |θ̃T Γ−1 θ̃ + γ−1 ρ̃2 , using

ε(t) = ρ∗ θ̃T (t)ζ(t) + ρ̃(t)ξ(t) + µη(t), η(t) = ∆(s)[u](t) (64)

we have
ε2 (t) ε(t)η(t)
V̇ = −2 2
+2 2 − 2σ1 (t)|ρ∗ |θ̃T (t)θ(t) − 2σ2 (t)ρ̃(t)ρ(t)
m (t) m (t)
 
ε (t)
2 ε(t) η(t) 2 η2 (t)
=− 2 − −µ + µ2 2
m (t) m(t) m(t) m (t)
−2σ1 (t)|ρ∗ |θ̃T (t)θ(t) − 2σ2 (t)ρ̃(t)ρ(t)
ε2 (t) η2 (t)
≤ − 2 + µ2 2 − 2σ1 (t)|ρ∗ |θ̃T (t)θ(t) − 2σ2 (t)ρ̃(t)ρ(t) (65)
m (t) m (t)
|η(t)|
which is (5.224). Since m(t) ≤ b0 for some constant b0 > 0, we have V̇ < 0 if

2σ1 (t)|ρ∗ |θ̃T (t)θ(t) + 2σ2 (t)ρ̃(t)ρ(t) > µ2 b20 . (66)

For θ̃ = θ − θ∗ and ρ̃ = ρ − ρ∗ , by definition, we have

σ1 (t)|ρ∗ |θ̃T (t)θ(t) ≥ 0, σ2 (t)ρ̃(t)ρ(t) ≥ 0, t ≥ 0 (67)

lim θ̃T θ = ∞, lim ρ̃ρ = ∞. (68)


kθk2 →∞ |ρ|→∞

This implies that there exist constants θ0 > 0 and ρ0 > 0 such that kθ(t)k2 ≥ θ0
or/and |ρ(t)| ≥ ρ0 implies that V̇ < 0. Hence, the boundedness of θ(t) and ρ(t) is
ensured. One choice of such (θ0 , ρ0 ) is
r
1 1
θ = max{2M1 ,
0
(2µ2 b20 + kθ∗ k22 + ρ∗2 ) + kθ∗ k}
4σ 2
r 10
1 1
ρ0 = max{2M2 , (2µ2 b20 + kθ∗ k22 + ρ∗2 ) + |ρ∗ |}. (69)
4σ20 2
22

Discrete-time MRAC System Example


Consider the first-order plant

y(t + 1) = a p y(t) + b p u(t) (70)

with two unknown parameters a p and b p and choose the reference model

ym (t + 1) = −am ym (t) + bm r(t) (71)

with |am | < 1 for stability. We use the adaptive controller structure

u(t) = k1 (t)y(t) + k2 (t)r(t), (72)

where k1 (t) and k2 (t) are estimates of the unknown parameters

−a p − am ∗ bm
k1∗ = , k2 = . (73)
bp bp

In this case the tracking error equation becomes

e(t + 1) = −am e(t) + b p k̃1 (t)y(t) + b p k̃2 (t)r(t), (74)

where k̃1 (t) = k1 (t) − k1∗ and k̃2 (t) = k2 (t) − k2∗ .
Defining ρ∗ = b p and

θ∗ = [k1∗ , k2∗ ]T , θ = [k1 , k2 ]T , (75)

ω(t) = [y(t), r(t)]T (76)


and introducing the filtered vector signal
 T
1 1 1
ζ(t) = [ω](t) = [y](t), [r](t) = [ζ1 (t), ζ2 (t)]T , (77)
z + am z + am z + am

where, as a notation, ζ1 (t) = z+a


1
m
[y](t) denotes the output of the system with trans-
fer function z+am and input y(t) (it satisfies the equation: ζ1 (t + 1) = −am ζ1 (t) +
1

y(t), for generating ζ1 (t) from y(t)), we rewrite (74) as

ρ∗
e(t) = [θT ω − θ∗T ω](t)
z + am
 
1
=ρ∗
[θ ω](t) − θ ζ(t) .
T ∗T
(78)
z + am
23

The design task is to find adaptive laws to update the parameter estimates θ(t) and
ρ(t) (which is an estimate of ρ∗ ) such that the estimation error
 
1
ε(t) = e(t) − ρ(t) [θ ω](t) − θ (t)ζ(t)
T T
(79)
z + am

is small in some sense. With (78), this error can be expressed as

ε(t) = ρ∗ θ̃T (t)ζ(t) + ρ̃(t)ξ(t), (80)

where
1
ξ(t) = θT (t)ζ(t) − [θT ω](t) (81)
z + am
θ̃(t) = θ(t) − θ∗ , ρ̃(t) = ρ(t) − ρ∗ . (82)
We choose the gradient adaptive laws for θ(t) and ρ(t):

sign[b p ]Γε(t)ζ(t) 2
θ(t + 1) = θ(t) − 2
, 0 < Γ = ΓT < 0 I2 , (83)
m (t) bp

γ ε(t)ξ(t)
ρ(t + 1) = ρ(t) − , 0 < γ < 2, (84)
m2 (t)

where sign[b p ] is the sign of b p , b0p ≥ |b p | is a known upper bound on |b p |, and


q
m(t) = 1 + ζT (t)ζ(t) + ξ2 (t). (85)

The stability analysis of this MRAC system is given in Section 6.3.1.


24

Indirect Observer Based Adaptive Control


Consider a continuous-time linear multivariable time-invariant plant

y(t) = G(s)[u](t), u(t) ∈ RM , y(t) ∈ RM , M ≥ 1, (86)

where G(s) is an M × M strictly proper rational transfer matrix which can be ex-
pressed as
G(s) = D−1 (s)N(s) = Cg (sI − Ag )−1 Bg , (87)

where, for the observability index ν of G(s) (its minimal realization),

D(s) = sν IM + Aν−1 sν−1 + · · · + A1 s + A0 , (88)


N(s) = Bm sm + · · · + B1 s + B0 , (89)
 
−Aν−1 IM 0 · · · · · · 0
 −Aν−2 0 IM 0 · · · 0 
 
 .. .. .. .. .. ..  ∈ RMν×Mν ,
Ag =  . . . . . .  (90)
 
 −A1 0 · · · · · · 0 IM 
−A0 0 ··· ··· 0 0
   
0 Bm
 ..   .. 
   
Bg =  .  ∈ RMν×M , B p =  .  ∈ RM(m+1)×M , (91)
 0   B1 
Bp B0
 
Cg = IM 0 · · · 0 0 ∈ RM×Mν (92)

for the M × M identity matrix IM and some M × M parameter matrices Ai , i =


0, 1, . . . , ν − 1, and B j , j = 0, 1, . . . , m, m ≤ ν − 1.
In view of (87), the plant (86) can be expressed as
 
0
ẋ(t) = Ax(t) + A p y(t) + u(t), y(t) = Cg x(t), (93)
Bp

where A ∈ RMν×Mν and A p ∈ RMν×M are


   
0 IM 0 · · · · · · 0 −Aν−1
 0 0 IM 0 · · · 0   −Aν−2 
   
 .. .. .. .. .. ..   .. 
A= . . . . . .  , Ap =  . . (94)
   
 0 0 · · · · · · 0 IM   −A1 
0 0 ··· ··· 0 0 −A0
25

Control objective. The control objective is to design an adaptive feedback con-


trol signal u(t) to make the plant output y(t) tracks the output ym (t) of the reference
model system
ym (t) = Wm (s)[r](t), Wm (s) = ξ−1m (s), (95)
where ξm (s) is the modified left interactor matrix of G(s): lims→∞ ξm (s)G(s) = K p
is finite and non-singuler.

Adaptive parameter estimation. Based on the input-output model of the plant:


D(s)[y](t) = N(s)[u](t), we can design an adaptive parameter estimation scheme
to generate adaptive estimates Âi and B̂ j of the coefficient matrices Ai and B j of
D(s) and N(s). From the parameter estimates Âi and B̂ j , we can obtain the adaptive
estimates  p and B̂ p of the parameter matrices A p and B p , and the adaptive estimates
Âg and B̂g of the parameter matrices Ag and Bg .

Adaptive state observer. With adaptive estimates  p and B̂ p , we construct an


adaptive state observer for the plant (93) as
 
˙ = Ax̂(t) + Â p y(t) + 0
x̂(t) u(t) + L(y(t) − ŷ(t)), ŷ(t) = Cg x̂(t), (96)
B̂ p

where L ∈ RMν×M is such that A − LCg is a desired stable matrix. For the state
estimation error x̃(t) = x̂(t) − x(t), it follows that
 
0
x̃˙ (t) = (A − LCg )x̃(t) + Ã p (t)y(t) + u(t), ỹ(t) = Cg x̃(t) (97)
B̃ p (t)

where ỹ(t) = ŷ(t) − y(t), Ã p (t) = Â p (t) − A p and B̃ p (t) = B̂ p (t) − B p .

Adaptive control law. The adaptive control law is an indirect-design (that is,
its parameters are calculated from plant parameter estimates) and explicit-observer
(that is, it uses the state estimate x̂(t) for feedback control) based control law:

u(t) = K1T (t)x̂(t) + K2 (t)r(t), (98)

where K1 (t) ∈ RMν×M and K2 (t) ∈ RM× are parameter matrices which satisfy

Cg (λI − Âg − B̂g K1T )−1 B̂g K2 = Wm (λ), (99)

point-wise in the time variable t, where Âg (t) and B̂g (t) are the on-line estimates
of Ag and Bg . It can be shown that such solutions K1 and K2 exist if the estimated
plant (Âg , B̂g ,Cg ) has ξm (s) as its modified left interactor matrix point-wise, that is,
limλ→∞ ξm (λ)Cg (λI − Âg )−1 B̂g = K̂ p is finite and non-singular, for each time t as
Âg = Â p (t) and B̂g = B̂ p (t) (note that K̂ p may be a function of time t).
26

In the single-input single-output case with M = 1, such a condition becomes:


B̂m (t) = b̂m (t) 6= 0 for any t, which can be easily ensured by using a parameter
projection based adaptive parameter estimator. In this case, ξm (λ) = λν−m and
K̂ p = b̂m (t), for ν = n being the plant order.
27

Adaptive Control of ẋ(t) = Ax(t) + BΛu(t) + BΘ∗φ(x)


Consider an M-input linear time-invariant plant

ẋ(t) = Ax(t) + BΛu(t) + BΘ∗ φ(x), x(t) ∈ Rn , u(t) ∈ RM , (100)

where (A, B) is a known and controllable pair, Λ = diag{λ1 , λ2 , . . . , λM } is an un-


known and diagonal matrix with λi 6= 0 for i = 1, 2, . . . , M, Θ∗ is an unknown matrix,
and φ(x) is a known vector.
With (A, B) known and controllable, we can find known constant matrices K10 ∈
R n×M and K20 ∈ RM×M such that
T
Am = A + BK10 , Bm = BK20 (101)

are known with Am being stable, for constructing a good reference model system

ẋm (t) = Am xm (t) + Bm r(t), xm (t) ∈ Rn , r(t) ∈ RM , (102)

where r(t) is a bounded and piecewise continuous reference input.


We first introduce the parameter matrices

K1∗T = Λ−1 K10


T
, K2∗ = Λ−1 K20 , K3∗ = −Λ−1 Θ∗ . (103)

Then, for K1 , K2 and K3 being the estimates of K1∗ , K2∗ and K3∗ , we use the adaptive
controller
u(t) = K1T (t)x(t) + K2 (t)r(t) + K3 (t)φ(x). (104)
From the definitions of K1∗ , K2∗ and K3∗ , we have

BΛ(K1∗T x(t) + K2∗ r(t) + K3∗ φ(x)) = B(K10


T
x(t) + K20 r(t) − Θ∗ φ(x)). (105)

Introducing the parameter errors

K̃1 = K1 − K1∗ , K̃2 = K2 − K2∗ , K̃3 = K3 − K3∗ (106)

we express the control signal from (104) as

u(t) = K̃1T (t)x(t) + K̃2 (t)r(t) + K̃3 (t)φ(x) + K1∗T x(t) + K2∗ r(t) + K3∗ φ(x) (107)

and, in view of (101) and (105), the closed-loop system as

ẋ(t) = Ax(t) + BΛ(K̃1T (t)x(t) + K̃2 (t)r(t) + K̃3 (t)φ(x))


+BΛ(K1∗T x(t) + K2∗ r(t) + K3∗ φ(x)) + BΘ∗ φ(x)
= Am x(t) + Bm r(t) + BΛ(K̃1T (t)x(t) + K̃2 (t)r(t) + K̃3 (t)φ(x)). (108)
28

Then, in view of this equation and (102), the tracking error e(t) = x(t) − xm (t)
satisfies
ė(t) = Am e(t) + BΛ(K̃1T (t)x(t) + K̃2 (t)r(t) + K̃3 (t)φ(x)). (109)
Introducing θ∗i such that θ∗T ∗T ∗ ∗
i is the ith row of [K1 , K2 , K3 ], i = 1, 2, . . . , M, letting
θi be the estimate of θ∗i and θ̃i (t) = θi (t) − θ∗i , i = 1, 2, . . . , M, and defining

ω(t) = [xT (t), rT (t), φT (x)]T , (110)

we express (109) as
 
θ̃T1 (t)ω(t)
 θ̃T2 (t)ω(t) 
 
 .. 
ė(t) = Am e(t) + BΛ  . . (111)
 T 
 θ̃M−1 (t)ω(t) 
θ̃TM (t)ω(t)

Letting P = PT > 0 satisfy

PAm + ATm P = −Q (112)

for a chosen constant matrix Q ∈ Rn×n such that Q = QT > 0, and ēi (t) be the ith
component of eT (t)PB, i = 1, 2, . . . , M, we design the adaptive law for θi (t) as

θ̇i (t) = −sign[λi ]Γi ēi (t)ω(t), (113)

where Γi = ΓTi > 0 is a chosen constant adaptation gain matrix, and sign[λi ] is the
sign of λi , i = 1, 2, . . . , M.
To analyze the adaptive control system performance, we consider the positive
definite function
M
V (e, θ̃i , i = 1, 2, . . . , M) = eT Pe + ∑ |λi |θ̃Ti Γ−1
i θ̃i (114)
i=1

and derive its time derivative along the trajectory of (111) and (113) as
M
V̇ = 2e (t)Pė(t) + 2 ∑ |λi |θ̃Ti (t)Γ−1
T
i θ̇i (t)
i=1
M M
= 2eT (t)PAm e(t) + 2 ∑ ēi (t)λi θ̃Ti (t)ω(t) + 2 ∑ |λi |θ̃Ti (t)Γ−1
i θ̇i (t)
i=1 i=1
T
= −e (t)Qe(t). (115)

From this result, it follows that x(t) and θi (t) are bounded and e(t) ∈ L2 , and in
turn, that u(t) is bounded, and so is ė(t), so that limt→∞ e(t) = 0.
29

Parametrization of (9.102)
To define the parameters Θ∗i , i = 1, 2, 20, 3, to satisfy (9.105):

Θ∗T
1 A(D)P0 (D) + (Θ2 A(D) + Θ20 Λ(D))Z0 (D)
∗T ∗

= Λ(D)(P0 (D) − Θ∗3 ξm (D)Z0 (D)), (116)

for the nominal version of the multivariable MRAC controller (9.102), we consider
an equivalent version (see (117) below) of (9.105) by dividing it from the right by
P0−1 (D) and use the left matrix-fraction description of G0 (D) = Pl−1 (D)Zl (D) such
that G0 (D) = Pl−1 (D)Zl (D) = Z0 (D)P0−1 (D) (as used in the proof of Lemma 9.3),
to obtain

Θ∗T
1 A(D) + (Θ2 A(D) + Θ20 Λ(D))Pl (D)Zl (D)
∗T ∗ −1

= Λ(D)(I − Θ∗3 ξm (D)Pl−1 (D)Zl (D)). (117)

Expressing Λ(D)Θ∗3 ξm (D)Pl−1 (D) with Θ∗3 = K p−1 as

Λ(D)Θ∗3 ξm (D)Pl−1 (D) = Ql (D) + Rl (D)Pl−1 (D) (118)

for some M × M polynomial matrices Ql (D) and Rl (D) such that ∂ci [Rl (D)] <
∂ci [Pl (D)] ≤ ν. Then, we define Θ∗1 , Θ∗2 and Θ∗20 from

Θ∗T
2 A(D) + Θ20 Λ(D) = −Rl (D),

(119)

Θ∗T
1 A(D) = Λ(D)IM − Ql (D)Zl (D) (120)

(recall that ∂[Λ(D)] = ν−1 and ∂[A(D)] = ν−2 for the controller structure (9.102)).
With this definition of Θ∗2 , Θ∗20 and Θ∗1 , (117) is satisfied, and so is (9.105).
From (9.105) (that is, (117)), we have the plant–model matching equation

IM − Θ∗T
1 F(D) − (Θ2 F(D) + Θ20 )G0 (D) = Θ3Wm (D)G0 (D)
∗T ∗ ∗ −1
(121)

where Wm (D) = ξ−1 m (D). From this equation with limD→∞ Θ3Wm (D)G0 (D) = IM
∗ −1

as from the definition of ξm (D), we have

lim Θ∗T
1 F(D) = 0, (122)
D→∞

which implies that ∂[Θ∗T


1 A(D)] ≤ ν − 2, that is, (120) is solvable.
30

Plant Signal Identities for MIMO Cases


It has been shown that there exist Θ∗1 , Θ∗2 and Θ∗3 to satisfy the matching equation

Θ∗T
1 A(D)P0 (D) + Θ2 A(D)Z0 (D) = Λ(D)(P0 (D) − Θ3 ξm (D)Z0 (D)),
∗T ∗
(123)

which is nominally (mathematically) equivalent to

IM − Θ∗T
1 F(D) − Θ2 F(D)G0 (D) = Θ3Wm (D)G0 (D).
∗T ∗ −1
(124)

Operating this indentity on u(t), we may get the plant signal idenity:

1 ω1 (t) − Θ2 ω2 (t) = Θ3Wm (D)[y](t).


u(t) − Θ∗T ∗T ∗ −1
(125)

(This identity was used in deriving (9.119), and its similar version with Θ∗20 was
used in deriving (9.365).)
As an alternative procedure to obtain the plant parametrized signal identity (sim-
ilar to that in (5.30) for the SISO case with M = 1), we start by considering (9.84)
and (9.85):

Θ∗T
2 A(D) = Ql (D)Pl (D) − Λ(D)K p ξm (D)
−1
(126)

Θ∗T
1 A(D) = Λ(D)IM − Ql (D)Zl (D). (127)

and obtain the signal identities:


A(D) 1
Θ∗T [y](t) = Ql (D)Pl (D)[y](t) − K p−1 ξm (D)[y](t) (128)
2
Λ(D) Λ(D)
A(D) 1
Θ∗T [u](t) = u(t) − Ql (D)Zl (D)[u](t). (129)
1
Λ(D) Λ(D)
Using the open-loop plant signal identity: Pl (D)[y](t) = Zl (D)[u](t), and from
(128)–(129), we finally have the parametrized plant signal identity (125):
A(D) A(D)
u(t) = Θ∗T [u](t) + Θ∗T [y](t) + K p−1 ξm (D)[y](t). (130)
1
Λ(D) 2
Λ(D)
This identity holds for any input signal u(t), in a feedback structure.
Similarly, for the controller structure (9.102) with nominal parameters:

u(t) = Θ∗T
1 ω1 (t) + Θ2 ω2 (t) + Θ20 y(t) + Θ3 r(t),
∗T ∗ ∗
(131)

in which ∂[Λ(D)] = ν − 1, we have the polynomial matching equation

Θ∗T
1 A(D)P0 (D) + (Θ2 A(D) + Θ20 Λ(D))Z0 (D)
∗T ∗

= Λ(D)(P0 (D) − Θ∗3 ξm (D)Z0 (D)) (132)


31

and the transfer matrix matching equation

IM − Θ∗T
1 F(D) − (Θ2 F(D) + Θ20 )G0 (D) = Θ3Wm (D)G0 (D).
∗T ∗ ∗ −1
(133)

The nominal parameters Θ∗1 , Θ∗2 , Θ∗20 and Θ∗3 are defined from

2 A(D) + Θ20 Λ(D)) = −Rl (D) = Ql (D)Pl (D) − Λ(D)K p ξm (D) (134)
(Θ∗T ∗ −1

Θ∗T
1 A(D) = Λ(D)IM − Ql (D)Zl (D), (135)

that is, dividing Λ(D)K p−1 ξm (D) on the right by Pl (D) to get Rl (D) and Ql (D).
From these equations, we obtain the signal identities:
A(D) 1
(Θ∗T + Θ∗20 )[y](t) = Ql (D)Pl (D)[y](t) − K p−1 ξm (D)[y](t) (136)
2
Λ(D) Λ(D)
A(D) 1
Θ∗T [u](t) = u(t) − Ql (D)Zl (D)[u](t). (137)
1
Λ(D) Λ(D)
Using the open-loop plant signal identity: Pl (D)[y](t) = Zl (D)[u](t), we have the
plant signal identity in a feedback form:
A(D) A(D)
u(t) = Θ∗T [u](t) + Θ∗T [y](t) + Θ∗20 y(t) + K p−1 ξm (D)[y](t) (138)
1
Λ(D) 2
Λ(D)
which also holds for any input signal u(t), similar to that in (130).
Both parametrized plant signal identities (130) and (138) are useful for adaptive
control: either verify the nominal controller structure
A(D) A(D)
u(t) = Θ∗T [u](t) + Θ∗T [y](t) + Θ∗3 r(t) (139)
1
Λ(D) 2
Λ(D)
for the matching equation (123), or
A(D) A(D)
u(t) = Θ∗T [u](t) + Θ∗T [y](t) + Θ∗20 y(t) + Θ∗3 r(t) (140)
1
Λ(D) 2
Λ(D)
for the matching equation (132), where Θ∗3 r(t) = K p−1 ξm (D)[ym ](t) for the reference
output ym (t) = ξ−1
m (D)[r](t), leading to ξm (D)[y − ym ](t) = 0 exponentially, or they
motivate the adaptive controller structure
A(D) A(D)
u(t) = ΘT1 [u](t) + ΘT2 [y](t) + Θ3 r(t) (141)
Λ(D) Λ(D)
for the matching equation (123), or
A(D) A(D)
u(t) = ΘT1 [u](t) + ΘT2 [y](t) + Θ20 y(t) + Θ3 r(t) (142)
Λ(D) Λ(D)
32

for the matching equation (132), leading to the desired tracking error equation:

e(t) = y(t) − ym (t) = ξ−1


m (D)K p [Θ̃ ω](t)
T
(143)

for Θ̃(t) = Θ(t) − Θ∗ with

Θ(t) = [ΘT1 (t), ΘT2 (t), Θ3 (t)]T , Θ∗ = [Θ∗T


1 , Θ2 , Θ3 ]
∗T ∗ T
(144)

ω(t) = [ωT1 (t), ωT2 (t), rT (t)]T (145)


for the matching equation (123), or

Θ(t) = [ΘT1 (t), ΘT2 (t), Θ20 (t), Θ3 (t)]T , Θ∗ = [Θ∗T


1 , Θ2 , Θ20 , Θ3 ]
∗T ∗ ∗ T
(146)

ω(t) = [ωT1 (t), ωT2 (t), yT (t), rT (t)]T (147)


for the matching equation (132). Both tracking error equations can be used to de-
rive some desired estimation errors for designing stable adaptive laws to update the
controller parameters Θ(t).
33

Proof of limt→∞ e(t) = 0 in (9.187C)


To show limt→∞ e(t) = 0, we just need to prove that for any given δ > 0, there exists
a T = T (δ) > 0 such that ke(t)k < δ, for all t > T . For such a proof, we only require
the existence of T for each chosen δ which may be set to be arbitrarily small but do
not consider the limit of δ going to zero, that is, δ > 0 such that 1δ is finite.
In view of (9.187C) (for the continuous-time case), for any given δ > 0, we can
choose (think of) a pair of K3 (s) and H3 (s) to make ac43 < 2δ (that is, a3 > 2cδ4 is
finite) (recall that K3 (s) and H3 (s) are not real but ficticious filters, and they are not
employed in the control design but only used in the expression (decomposition) of
e(t) in (9.185C)), and let T > 0 such that |z1 (t)| < 2δ for any t > T (such a T = T (δ)
exists, because limt→∞ z1 (t) = 0; also note that z1 (t) depends on K3 (s)). It follows
that ke(t)k < δ for any t > T , which implies that limt→∞ e(t) = 0.
34

Adaptive Robot Control for Time-Varying Parameters


Consider the manipulator dynamic equation (9.586):
∂D(q,t)
D(q,t)q̈ + q̇ +C(q, q̇,t)q̇ + φ(q,t) = u. (148)
∂t
With (9.590): v = q̇d − Λ0 (q − qd ), s = q̇ − v, e = q − qd , we have (9.592):

D(q,t)ṡ +C(q, q̇,t)s


∂D(q,t)
= u − D(q,t)v̇ −C(q, q̇,t)v − φ(q,t) − q̇
∂t
△ ∂D(q,t)
= u −Y (q, qd , q̇, q̇d , q̈d ,t)θ∗ (t) − q̇, (149)
∂t
for some known function matrix Y (q, qd , q̇, q̇d , q̈d ,t) ∈ Rn×nθ and unknown param-
eter vector θ∗ (t) ∈ Rnθ which may be time-varying.
In this study, we consider the case when

θ∗ (t) = θ∗0 + δθ∗ (t) (150)

where θ∗0 is a constant vector and δθ∗ (t) is the variation of θ∗ (t) with respect to
θ∗0 (note that both θ∗0 and δθ∗ (t) are unknown). We will develop and analyze some
alternative adaptive control schemes to that presented in (9.607)–(9.608).

Adaptive Control Scheme I


As an alternative scheme to (9.607)–(9.608), we use the control law

u(t) = Y (q, qd , q̇, q̇d , q̈d ,t)θ0 (t) − m(t)ψ(t) − m1 (t)ψ1 (t) − KD s(t), (151)

m(t) = k0 kq̇(t) + v(t)k f (q), k0 > 0, ψ(t) = m(t)s(t), (152)

m1 (t) = k1 kY (q, qd , q̇, q̇d , q̈d ,t)k, k1 > 0, ψ1 (t) = m1 (t)s(t), (153)

and the update law for the estimate θ0 (t) of θ∗0 :



θ̇0 (t) = −Γ Y T (q, qd , q̇, q̇d , q̈d ,t)s + σ(t)θ0 (t) , , Γ = ΓT > 0 (154)

where σ(t) is a switching signal similar to that in (9.610), using a design parameter
σ0 > 0 and the knowledge of the upper bound M0 on kθ∗0 k:

 0
 if kθ0 (t)k < M0 ,
σ(t) = σ0 ( kθM
0 (t)k
− 1) if M0 ≤ kθ0 (t)k < 2M0 , (155)

 0
σ0 if kθ0 (t)k ≥ 2M0 .
35

This adaptive control scheme has the properties: all signals in the closed-loop
system are bounded, and the tracking error e(t) = q(t) − qd (t) satisfies
 2 
γ γ21
Z t2
ke(t)k dt ≤ α0 2 + 2 (t2 − t1 ) + β0
2
(156)
t1 k0 k1
for some constants α0 > 0, β0 > 0 and any t2 > t1 ≥ 0, where γ1 > 0 is the upper
bound on supt≥0 kδθ∗ (t)k. Moreover, e(t) ∈ L2 and limt→∞ e(t) = 0 in the absence
of parameter time variations, that is, when δθ∗ (t) = 0 and ∂D(q,t)
∂t = 0.
The proof of these properties is based on the positive definite function
1
V0 (s, θ̃0 ) = (sT Ds + θ̃T0 Γ−1 θ̃0 ), θ̃0 (t) = θ0 (t) − θ∗0 , D = D(q(t),t), (157)
2
which has the following time derivation:

V̇0 = −sT (t)KD s(t) − m2 (t)sT (t)s(t) − m21 (t)sT (t)s(t) − σ(t)θ̃T0 (t)θ0 (t)
1 ∂D(q,t)
− sT (t) (q̇(t) + v(t)) − sT (t)Y (q, qd , q̇, q̇d , q̈d ,t)δθ∗ (t)
2 ∂t
 
T γ 2 γ2
≤ −s (t)KD s(t) − m(t)ks(t)k − +
4k0 16k02
 
γ1 2 γ21
− m1 (t)ks(t)k − + 2 − σ(t)θ̃T0 (t)θ0 (t). (158)
2k1 4k1
With this adaptive control scheme, as indicated by (156), the tracking perfor-
mance can be influenced by the design parameters k0 and k1 in the feedback control
law (151)–(153) (one may increase k0 and k1 to reduce the tracking error e(t)).

Adaptive Control Scheme II


A different adaptive control scheme can be developed, employing a switching con-
trol law which uses adaptive estimates of parameter variation uncertainty bounds,
to improve system tracking performance.
To derive such a scheme, we denote the parameter variation uncertainties as
1 ∂D(q,t)
g(q, q̇, qd , q̇d ,t) = (q̇ + v) = [g1 , g2 , . . . , gn ]T (159)
2 ∂t
h(q, q̇, qd , q̇d , q̈d ,t) = Y (q, qd , q̇, q̇d , q̈d ,t)δθ∗ (t) = [h1 , g2 , . . . , hn ]T (160)

and make use of the bounding relationship

|gi (q, q̇, qd , q̇d ,t)| ≤ a∗i αi (q, q̇, qd , q̇d ,t), i = 1, 2, . . . , n (161)

|hi (q, q̇, qd , q̇d , q̈d ,t)| ≤ b∗i βi (q, q̇, qd , q̇d , q̈d ,t), i = 1, 2, . . . , n (162)
36

for some unknown constants a∗i and b∗i , and known functions αi (q, q̇, qd , q̇d ,t) and
βi (q, q̇, qd , q̇d , q̈d ,t), i = 1, 2, . . . , n.
If the parameters a∗i and b∗i were known, one could use the control law
u(t) = Y (q, qd , q̇, q̇d , q̈d ,t)θ0 (t) − φ∗ (t) − φ∗1 (t) − KD s(t), (163)

φ∗ (t) = [sgn[s1 (t)]a∗1 α1 , sgn[s2 (t)]a∗2 α2 , . . . , sgn[sn (t)]a∗n αn ]T , (164)

φ∗1 (t) = [sgn[s1 (t)]b∗1 β1 , sgn[s2 (t)]b∗2 β2 , . . . , sgn[sn (t)]b∗n βn ]T , (165)


where θ0 (t) is updated from (154), and the sgn function is defined as

 1
 if w > 0,
sgn[w] = 0 if w = 0, (166)


−1 if w < 0.
Form V0 defined in (157), this control law leads to
V̇0 = −sT (t)KD s(t) − sT (t)φ∗ (t) − sT (t)φ∗1 (t) − σ(t)θ̃T0 (t)θ0 (t)
1 ∂D(q,t)
− sT (t) (q̇(t) + v(t)) − sT (t)Y (q, qd , q̇, q̇d , q̈d ,t)δθ∗ (t)
2 ∂t
n n
= −s (t)KD s(t) − ∑
T
|si (t)|a∗i αi − ∑ |si(t)|b∗i βi − σ(t)θ̃T0 (t)θ0(t)
i=1 i=1
n n
− ∑ si (t)gi − ∑ si (t)hi
i=1 i=1
T
≤ −s (t)KD s(t). (167)
The last equality follows from the facts that ∑ni=1 |si (t)|a∗i αi − ∑ni=1 si (t)gi ≥ 0,
∑ni=1 |si (t)|b∗i βi − ∑ni=1 si (t)hi ≥ 0 and σ(t)θ̃T0 (t)θ0 (t) ≥ 0. From (167), one may
conclude that all signals in the closed-loop system are bounded, and the tracking
error e(t) = q(t) − qd (t) converges to zero as t goes to ∞.
When the parameters a∗i and b∗i are unknown, one can use the control law
u(t) = Y (q, qd , q̇, q̇d , q̈d ,t)θ0 (t) − φ(t) − φ1 (t) − KD s(t), (168)

φ(t) = [sgn[s1 (t)]a1 (t)α1 , sgn[s2 (t)]a2 (t)α2 , . . . , sgn[sn (t)]an (t)αn ]T , (169)

φ1 (t) = [sgn[s1 (t)]b1 (t)β1 , sgn[s2 (t)]b2 (t)β2 , . . . , sgn[sn (t)]bn (t)βn ]T , (170)
where θ0 (t) is updated from (154), and the parameters ai (t) and bi (t) are estimates
of a∗i and b∗i and updated from the adaptive laws:
ȧi (t) = κai |si (t)|αi (q, q̇, qd , q̇d ,t), κai > 0, i = 1, 2, . . . , n, (171)

ḃi (t) = κbi |si (t)|βi (q, q̇, qd , q̇d , q̈d ,t), κbi > 0, i = 1, 2, . . . , n. (172)
37

Consider the positive definite function


n n
1 T
V (s, θ̃0 , ãi , b̃i ) = (s Ds + θ̃0 Γ θ̃0 + ∑ κai ãi + ∑ κ−1
T −1 −1 2
bi b̃2i ), (173)
2 i=1 i=1

where θ̃0 (t) = θ0 (t) − θ∗0 , D = D(q(t),t), ãi (t) = ai (t) − a∗i , b̃i (t) = bi (t) − b∗i , i =
1, 2, . . . , n. Using (149), (168), (154), (171) and (172), we have

V̇ = −sT (t)KD s(t) − sT (t)φ(t) − sT (t)φ1 (t) − σ(t)θ̃T0 (t)θ0 (t)


1 ∂D(q,t)
− sT (t) (q̇(t) + v(t)) − sT (t)Y (q, qd , q̇, q̇d , q̈d ,t)δθ∗ (t)
2 ∂t
ai i + ∑ b̃i κbi ḃi
+ ∑ ãi κ−1 ȧ −1
i=1 i=1
n n
= −sT (t)KD s(t) − ∑ |si (t)|ai (t)αi − ∑ |si (t)|bi (t)βi − σ(t)θ̃T0 (t)θ0 (t)
i=1 i=1
n n
ai ȧi + ∑ b̃i κbi ḃi
− ∑ si (t)gi − ∑ si (t)hi + ∑ ãi κ−1 −1
i=1 i=1 i=1 i=1
n n
≤ −sT (t)KD s(t) − ∑ |si (t)|ai (t)αi − ∑ |si (t)|bi (t)βi − σ(t)θ̃T0 (t)θ0 (t)
i=1 i=1
n n
ai ȧi + ∑ b̃i κbi ḃi
+ ∑ |si (t)|a∗i αi + ∑ |si (t)|b∗i βi + ∑ ãi κ−1 −1
i=1 i=1 i=1 i=1
= −s T
(t)KD s(t) − σ(t)θ̃T0 (t)θ0 (t)
≤ −sT (t)KD s(t). (174)

This result also implies that all signals in the closed-loop system are bounded, and
the tracking error e(t) = q(t) − qd (t) converges to zero as t goes to ∞.
However, since the adaptive control scheme (168) uses the sgn functions in φ(t)
and φ1 (t) and such switching signals are discontinuous when si (t) passes through
zero, it may lead to chattering of system response.

Remark 3 The adaptive control scheme (168) may have certain advantage for per-
formance even if when the parameters a∗i and b∗i are known. This is because the
parameters a∗i and b∗i are only the upper bounds for the parameter variation uncer-
tainties gi and hi in (159) and (160), and some smaller (and unknown) bounds may
exist and can be estimated by the adaptive laws (171) and (172). The use of smaller
bounds is desirable because it leads to smaller control signals. In this case, the
adaptive laws (171) and (172) can be modified by setting

ȧi (t) = 0, t ≥ τ if ai (τ) = a∗i , (175)

ḃi (t) = 0, t ≥ τ if bi (τ) = b∗i (176)


38

With this modification, we also have V̇ ≤ −sT (t)KD s(t), as desired. 2

Adaptive Control Scheme III


As mentioned above the use of the discontinuous sgn functions in φ(t) and φ1 (t)
in the adaptive control scheme (168) may cause chattering of system response. To
overcome possible chatterings, we can modify the control law (168) as

u(t) = Y (q, qd , q̇, q̇d , q̈d ,t)θ0 (t) − φ̂(t) − φ̂1 (t) − KD s(t), (177)

φ̂(t) = [sat[s1 (t); ε1 ]a1 (t)α1 , . . . , sat[sn (t); εn ]an (t)αn ]T , (178)

φ̂1 (t) = [sat[s1 (t); η1 ]b1 (t)β1 , . . . , sat[sn (t); ηn ]bn (t)βn ]T , (179)

where the sat function is defined as




 1 if si > xi ,

si
sat[si ; xi ] = xi if |si | ≤ xi , (180)



−1 if si < −xi
for some chosen xi > 0 (for xi = εi or xi = ηi in (178) and (179)), i = 1, 2, . . . , n,
with the associated indicator funtions
(
1 if |si | > xi ,
χ[si ; xi ] = (181)
0 if |si | ≤ xi .

Such functions have the property: χ[si ; xi ](1 − χ[si ; xi ]) = 0 (that is, χ[si ; xi ] = 0
whenever 1 − χ[si ; xi ] = 1, and χ[si ; xi ] = 1 whenever 1 − χ[si ; xi ] = 0).
The adaptive laws are also modified as

ȧi (t) = χ[si ; εi ]κai |si (t)|αi (q, q̇, qd , q̇d ,t), κai > 0, i = 1, 2, . . . , n, (182)

ḃi (t) = χ[si ; ηi ]κbi |si (t)|βi (q, q̇, qd , q̇d , q̈d ,t), κbi > 0, i = 1, 2, . . . , n. (183)

With this modification, we have

V̇ = −sT (t)KD s(t) − sT (t)φ̂(t) − sT (t)φ̂1 (t) − σ(t)θ̃T0 (t)θ0 (t)


1 ∂D(q,t)
− sT (t) (q̇(t) + v(t)) − sT (t)Y (q, qd , q̇, q̇d , q̈d ,t)δθ∗ (t)
2 ∂t
+ ∑ ãi κ−1
ai ȧi + ∑ b̃i κbi ḃi
−1
i=1 i=1
n n
= −s (t)KD s(t) − ∑ si (t)sat[si ; εi ]ai (t)αi − ∑ si (t)sat[si ; ηi ]bi (t)βi
T
i=1 i=1
39

n n
ai ȧi + ∑ b̃i κbi ḃi − σ(t)θ̃0 (t)θ0 (t)
− ∑ si (t)gi − ∑ si (t)hi + ∑ ãi κ−1 −1 T
i=1 i=1 i=1 i=1
n n
≤ −sT (t)KD s(t) − ∑ si (t)sat[si ; εi ]ai (t)αi − ∑ si (t)sat[si ; ηi ]bi (t)βi
i=1 i=1
n n
ai ȧi + ∑ b̃i κbi ḃi − σ(t)θ̃0 (t)θ0 (t)
+ ∑ |si (t)|a∗i αi + ∑ |si (t)|b∗i βi + ∑ ãi κ−1 −1 T
i=1 i=1 i=1 i=1
n
= −sT (t)KD s(t) − ∑ (1 − χ[si ; εi ])si (t)sat[si ; εi ]ai (t)αi
i=1
n n
− ∑ (1 − χ[si ; ηi ])si (t)sat[si ; ηi ]bi (t)βi + ∑ (1 − χ[si ; εi ])|si (t)|a∗i αi
i=1 i=1
n
+ ∑ (1 − χ[si ; ηi ])|si (t)|b∗i βi − σ(t)θ̃T0 (t)θ0 (t). (184)
i=1

This modified scheme would ensure the closed-loop signal boundedness but not
the asymptotic convergence of the tracking error e(t) = q(t) − qd (t) to zero (only a
bounded tracking error e(t) = q(t) − qd (t) of the order εi and ηi ).
40

Derivation of (10.152)
In this case, the expression (5.30) also holds

a(s) a(s)
u(t) = φ∗T [u](t) + φ∗T [y](t) + φ∗20 y(t) + φ∗3 Pm (s)[y](t) (185)
1
Λ(s) 2
Λ(s)

(with θ∗i replaced by φ∗i as the new notation and the exponetially decaying term
ε1 (t) ignored). Recall (10.39):

u(t) = ud (t) + (θ − θ∗ )T ω(t) + dN (t) (186)

and (10.15) (with as (t) = 0 for simplicity):

ud (t) = −θT (t)ω(t) (187)

from which we have


u(t) = −θ∗T ω(t) + dN (t). (188)
Using (186) for u(t) in the left side of (185) and (188) for u(t) in the right side of
(185), we obtain

ud (t) + (θ − θ∗ )T ω(t) + dN (t)


a(s) a(s)
= φ∗T [−θ∗T ω + dN ](t) + φ∗T [y](t) + φ∗20 y(t) + φ∗3 Pm (s)[y](t).(189)
1
Λ(s) 2
Λ(s)

Subtracting (189) from (10.151) and recalling (10.148), we have (10.152).


41

Backstepping Design with Nonsmooth Inverse Signal


For an adaptive inverse control scheme using a backstepping feedback design for
the output-feedback nonlinear systems (see Section 10.6.3), the nonlinearity inverse
signal ω(t) in (10.280), defined in (10.21) or (10.35) for the case of an adaptive
dead-zone inverse DI(·)c or an adaptive backlash inverse BI(·), b is not smooth (it is
not even continuous; but it is well-defined). A backstepping-based feedback control
design needs certain smoothness condition. Will the nonsmoothness of ω(t) cause
any problem? The answer is “no”. It turns out that the use of filters in the state
observer helps to avoid the potential difficulty with nonsmoothness of such signals
in a backstepping design.
Starting from (10.277), (10.283) and (10.284), we see that the nonsmooth signal
pi j (s) pi j (s)
ω(t) passes the filters Λ(s) , where Λ(s) are the components of (sI − A0 )−1 for
A0 = A − kc with k = [k1 , k2 , . . . , kn ]T and (A, c) in (10.272). This means that only
the signals ωi j (t) in (10.285) are associated with the nonsmooth signal ω(t). In fact,
it is the signal x̂2 (t) defined in (10.128) that plays a key role in the backstepping
design procedure, that is, only those of the signals ωi j (t), for i = 0, 1, . . . , m and
j = 2, are crucial in the backstepping design.
From the canonical form of A and c, we can obtain

p02 (s) = s + k1 , p12 (s) = s(s + k1 ), p22 (s) = s2 (s + k1 ), . . . ,


pn−2,2 (s) = sn−2 (s + k1 ), pn−1,2 (s) = −k2 sn−2 − k3 sn−3 − · · · − kn−1 s − kn .(190)

This calculation can be verified by using the symbolic algebra operations in Matlab.
For example, for n = 5, we can use

a=sym(’[s+k1, -1, 0, 0, 0; k2, s, -1, 0, 0;


k3, 0, s, -1, 0; k4, 0, 0, s, -1; k5, 0, 0, 0, s]’)
b=inv(a)
c=symmul(det(a),b)

to get the numerator matrix of (sI − A0 )−1 as

[sˆ4, sˆ3, sˆ2,


s, 1]
[-sˆ3*k2-k3*sˆ2-k4*s-k5, sˆ3*(s+k1), sˆ2*(s+k1),
(s+k1)*s, s+k1]
[-s*(k3*sˆ2+k4*s+k5),-k3*sˆ2-k4*s-k5,sˆ2*(k2+sˆ2+s*k1),
s*(k2+sˆ2+s*k1), k2+sˆ2+s*k1]
[-sˆ2*(k4*s+k5), -s*(k4*s+k5), -k4*s-k5,
s*(k2*s+k3+sˆ3+sˆ2*k1), k2*s+k3+sˆ3+sˆ2*k1]
42

[-k5*sˆ3, -k5*sˆ2, -k5*s,


-k5, sˆ4+k1*sˆ3+k2*sˆ2+k3*s+k4]
( j)
In the backstepping design procedure, the derivatives ωi2 (t), i = 0, 1, . . . , m,
j = 0, 1, . . . , ρ − 1, are needed, where ρ = n − m. For the case of ρ = n − m = 1, no
derivative of ωi2 (t) is used. For ρ = n − m ≥ 2, the highest degree of sρ−1 pi2 (s),
i = 0, 1, . . . , m − 1, is ρ − 1 + m = n − 1, and the degree of sρ−1 pm2 (s) is n, so that
sρ−1 pi2 (s) sρ−1 pm2 (s)
Λ(s) , i = 0, 1, . . . , m − 1, are strictly proper, and Λ(s) is proper. Therefore,
( j)
the signals ωi2 (t), i = 0, 1, . . . , m, j = 0, 1, . . . , ρ − 1, are well-defined, and so all
other signals related the inverse signal ω(t) in the backstepping design procedure,
that is, the nonsmoothness ω(t) does not cause any problem for the backstepping-
based adaptive inverse control scheme.

You might also like