Material: Glad & Ljung Ch. 12.2 Khalil Ch. 4.1-4.3 Lecture Notes

Download as pdf or txt
Download as pdf or txt
You are on page 1of 42

Lecture 4 Lyapunov Stability

Material

Glad & Ljung Ch. 12.2

Khalil Ch. 4.1-4.3

Lecture notes

Todays Goal

To be able to

prove local and global stability of an equilibrium point using


Lyapunovs method

show stability of a set (e.g., an equilibrium, or a limit cycle)


using La Salles invariant set theorem.

Alexandr Mihailovich Lyapunov (18571918)

Master thesis On the stability of ellipsoidal forms of equilibrium


of rotating fluids, St. Petersburg University, 1884.
Doctoral thesis The general problem of the stability of motion,
1892.

Main idea

Lyapunov formalized the idea:


If the total energy is dissipated, then the system must be stable.

Main benefit: By looking at how an energy-like function V (a so


called Lyapunov function) changes over time, we might
conclude that a system is stable or asymptotically stable
without solving the nonlinear differential equation.

Main question: How to find a Lyapunov function?

Examples
Start with a Lyapunov candidate V to measure e.g.,

"size"1 of state and/or output error,

"size" of deviation from true parameters,

energy difference from desired equilibrium,

weighted combination of above

...

Example of common choice in adaptive control


V =


1 2
e2 + b e
b2
e + aa
2

(here weighted sum of output error and parameter errors)

Often a magnitude measure or (squared) norm like p ep22 , ...

Analysis: Check if V is decreasing with time

Continuous time:

Discrete time:

dV
<0
dt
V ( k + 1) V ( k) < 0

Synthesis: Choose, e.g., control law and/or parameter update


law to satisfy V 0

dV

ea
e + be
be
b=
= ee + a a
dt

eb
ea
e + be
=e
x(a e
xa
x+e
bu) + a a
be
b = ...

e = a .
If a is constant and a = a a then a
d a
dV
Choose update law
in a "good way" to influence
.
dt
dt

(more on this later...)

A Motivating Example
m

m x = b x p x p k0 x k1 x3
| {z } | {z }
damping

spring

b, k0 , k1 > 0

Total energy = kinetic + pot. energy: V =

mv2
2

Rx
0

V ( x, x ) = m x 2 /2 + k0 x2 /2 + k1 x4 /4 > 0,

Fsprin ds [

V (0, 0) = 0

d
V ( x, x ) = m x x + k0 x x + k1 x3 x = {plug in system dynamics 2 }
dt
= bp x p3 < 0, for x ,= 0

What does this mean?


2

Also referred to evaluate along system trajectories.

Stability Definitions

An equilibrium point x of x = f ( x) (i.e., f ( x ) = 0) is

locally stable, if for every R > 0 there exists r > 0, such


that
q x(0) x q < r

t0

locally asymptotically stable, if locally stable and


q x(0) x q < r

q x(t) x q < R,

lim x(t) = x

globally asymptotically stable, if asymptotically stable for


all x(0) Rn .

Lyapunov Theorem for Local Stability


Theorem Let x = f ( x), f ( x ) = 0 where x is in the interior of
Rn . Assume that V : R is a C 1 function. If
(1) V ( x ) = 0
(2) V ( x) > 0, for all x , x ,= x
(3) V ( x) 0 along all trajectories of the system in
=[

x is locally stable.

Furthermore, if also
(4) V ( x) < 0 for all x , x ,= x
=[

x is locally asymptotically stable.

Lyapunov Functions (( Energy Functions)


A function V that fulfills (1)(3) is called a Lyapunov function.
Condition (3) means that V is non-increasing along all
trajectories in :
X V
V
x =
fi ( x) 0
V ( x) =
x
xi
i

where

V
=
x

V V
V
,
,...
x1 x2
xn

V
x2
x1
level sets where V = const.

Conservation and Dissipation


Conservation of energy: V ( x) = Vx f ( x) = 0, i.e., the vector
field f ( x) is everywhere orthogonal to the normal Vx to the
level surface V ( x) = c.
Example: Total energy of a lossless mechanical system or total
fluid in a closed system.
Dissipation of energy: V ( x) = Vx f ( x) 0, i.e., the vector
field f ( x) and the normal Vx to the level surface { z : V ( z) = c}
make an obtuse angle (Sw. trubbig vinkel).
Example: Total energy of a mechanical system with damping or
total fluid in a system that leaks.

Geometric interpretation

gradient

V
x

x(t)

V ( x)=constant
f ( x)

Vector field points into sublevel sets


Trajectories can only go to lower values of V ( x)

Boundedness:

For any trajectory x(t)


V ( x(t)) = V ( x(0)) +

V ( x( ))d V ( x(0))

which means that the whole trajectory lies in the set


{ z p V ( z) V ( x(0))}

For stability it is thus important that the sublevel sets


{ z p V ( z) c} bounded c 0 Z[ V ( x) as pp xpp .

2 min exercisePendulum
Show that the origin is locally stable for a mathematical
pendulum.
x 1 = x2 ,

x 2 = sin x1
{

Use as a Lyapunov function candidate


V ( x) = (1 cos x1 ){ + {2 x22 /2

4
3
2
1
0
10

2
0

x1

0
10 2

x2

ExamplePendulum

(1) V (0) = 0
(2) V ( x) > 0 for 2 < x1 < 2 and ( x1 , x2 ) ,= 0
(3)
V ( x) = x 1 sin x1 { + {2 x2 x 2 = 0,

for all x

Hence, x = 0 is locally stable.


Note that x = 0 is not asymptotically stable, because V ( x) = 0
and not < 0 for all x ,= 0.

Positive Definite Matrices


Definition: Symmetric matrix M = M T is

positive definite ( M > 0)

positive semidefinite ( M 0) if

if

x T M x > 0, x ,= 0
x T M x 0, x

Lemma:

M = MT > 0

M = MT 0

Z[
Z[

i ( M ) > 0, i
i ( M ) 0, i

M = MT > 0

V ( x ) := x T M x

W
V (0) = 0 ,

V ( x) > 0, x ,= 0

V ( x) candidate Lyapunov function

More matrix results

for symmetric matrix M = M T

min ( M )q xq2 xT M x max ( M )q xq2 ,


Proof idea: factorize M = U U T , unitary U (i.e.,
pp U xpp = pp xpp x), = diag( 1 , . . . , n )

for any matrix M


q M xq

max ( M T M )q xq ,

Example- Lyapunov function for linear system

 
1 4
x1
x = Ax =
0 3 x2

(1)

Eigenvalues of A : {1, 3} [ (global) asymptotic stability.


Find a quadratic Lyapunov function for the system (1):
 

 p11 p12 x1

T
, P = PT > 0
V ( x) = x Px = x1 x2
p12 p22 x2
Take any Q = Q T > 0 , say Q = I2$2 . Solve AT P + PA = Q.

Example contd
AT P + PA = I


1 0
p11
4 3 p12
2p11
4p12 + 4p11

 
p12
p
+ 11
p22
p12



p12 1 4
=
p22
0 3
 

4p12 + 4p11
1 0
=
8p12 6p22
0 1

Solving for p11 , p12 and p22 gives


2p11 = 1

4p12 + 4p11 = 0
8p12 6p22 = 1

p
=[ 11
p12

 

p12
1/2 1/2
=
>0
p22
1/2 5/6

(2)

x1 = x1 + 4 x2
x2 = 3 x2

x12+x228 = 0

x2

4
4

0
x1

Phase plot showing that 


 
 0.5 0

x1
1 2
2
V = 2 ( x1 + x2 ) = x1 x2
does NOT work.
0 0.5 x2

x1 = x1 + 4 x2
x2 = 3 x2

(1/2 x +1/2 x ) x +(1/2 x +5/6 x ) x 7 = 0


1

4
4

0
x

Phase plot with level curves xT Px = c for P found in example.

Lyapunov Stability for Linear Systems


Linear system: x = Ax
Lyapunov equation: Let Q = Q T > 0. Solve
PA + AT P = Q

with respect to the symmetric matrix P.


Lyapunov function: V ( x) = xT Px, [
V ( x) = x T P x + x T Px = x T ( PA + AT P) x = x T Qx < 0

Asymptotic Stability: If P = PT > 0, then the Lyapunov


Stability Theorem implies (local=global) asymptotic stability,
hence the eigenvalues of A must satisfy Re k( A) < 0, k

Converse Theorem for Linear Systems

If Re k( A) < 0 k, then for every Q = Q T > 0 there exists


P = PT > 0 such that PA + AT P = Q
Z
T
eA t QeAt dt. Then
Proof: Choose P =
0

AT P + PA =

lim

Z t
h


T
T
AT eA QeA + eA Q AeA d

lim eA QeA

= Q

it

Interpretation

Assume x = Ax, x(0) = z. Then


Z
Z
T
T
x (t) Qx(t)dt = z
0

AT t


Qe dt z = zT Pz
At

Thus V ( z) = zT Pz is the cost-to-go from z (with no input) and


integral quadratic cost function with weighting matrix Q.

Lyapunovs Linearization Method

Recall from Lecture 2:


Theorem Consider
x = f ( x)

Assume that f (0) = 0. Linearization


x = Ax + ( x) ,

pp( x)pp = o(pp xpp) as x 0 .

(1) Re k ( A) < 0, k

x = 0 locally asympt. stable

(2) k : Re k ( A) > 0

x = 0 unstable

Proof of (1) in Lyapunovs Linearization Method


Put V ( x) := xT Px. Then, V (0) = 0, V ( x) > 0 x ,= 0, and
V ( x) = x T P f ( x) + f T ( x) Px

= xT P[ Ax + ( x)] + [ xT AT + T ( x)] Px
= xT ( PA + AT P) x + 2xT P( x) = xT Qx + 2xT P( x)
x T Qx min ( Q)q xq2

and for all > 0 there exists r > 0 such that


q( x)q < q xq,

q xq < r

Thus, choosing sufficiently small gives



V ( x) min ( Q) 2 max ( P) q xq2 < 0

Lyapunov Theorem for Global Asymptotic Stability

Theorem Let x = f ( x) and f ( x ) = 0.


If there exists a C 1 function V : Rn R such that
(1) V ( x ) = 0
(2) V ( x) > 0, for all x ,= x
(3) V ( x) < 0 for all x ,= x
(4) V ( x) as q xq
then x is a globally asymptotically stable equilibrium.

Radial Unboundedness is Necessary


If the condition V ( x) as q xq is not fulfilled, then
global stability cannot be guaranteed.
Example Assume V ( x) = x12 /(1 + x12 ) + x22 is a Lyapunov
function for a system. Can have q xq even if V ( x) < 0.
Contour plot V ( x) = C:
2

Example [Khalil]:

1.5

6x1
+ 2x2
(1 + x12 )2
2( x1 + x2 )
x 2 =
(1 + x12 )2

x 1 =

x2

0.5

0.5

1.5

2
10

x1
0

10

Somewhat Stronger Assumptions

Theorem: Let x = f ( x) and f ( x ) = 0. If there exists a C 1


function V : Rn R such that
(1) V ( x ) = 0
(2) V ( x) > 0 for all x ,= x
(3) V ( x) V ( x) for all x
(4) V ( x) as q xq
then x is globally exponentially stable.

Proof Idea

Assume x(t) ,= 0 ( otherwise we have x( ) = 0 for all > t).


Then
V ( x)

V ( x)
Integrating from 0 to t gives
log V ( x(t)) log V ( x(0)) t [ V ( x(t)) e t V ( x(0))

Hence, V ( x(t)) 0, t .
Using the properties of V it follows that x(t) 0, t .

Invariant Sets

Definition: A set M is called invariant if for the system


x = f ( x),
x(0) M implies that x(t) M for all t 0.

x(t)
x(0)
M

LaSalles Invariant Set Theorem


Theorem Let Rn compact invariant set for x = f ( x).
Let V : R be a C 1 function such that V ( x) 0, x ,
E := { x : V ( x) = 0}, M :=largest invariant subset of E
=[
x(0) , x(t) approaches M as t +
E

V ( x)
M

Note that V must not be a positive definite function in this case.

Special Case: Global Stability of Equilibrium

Theorem: Let x = f ( x) and f (0) = 0. If there exists a C 1


function V : Rn R such that
(1) V (0) = 0, V ( x) > 0 for all x ,= 0
(2) V ( x) 0 for all x
(3) V ( x) as q xq
(4) The only solution of x = f ( x), V ( x) = 0 is x(t) = 0 t
=[

x = 0 is globally asymptotically stable.

A Motivating Example (contd)

m x = b x p x p k0 x k1 x3
V ( x) = (2m x 2 + 2k0 x2 + k1 x4 )/4 > 0,
V ( x) = bp x p3

V (0, 0) = 0

Assume that there is a trajectory with x (t) = 0, x(t) ,= 0. Then


d
k0
k1 3
x (t) = x(t)
x (t) ,= 0,
dt
m
m

which means that x (t) can not stay constant.


Hence, V ( x) = 0 Z[ x(t) " 0, and LaSalles theorem gives
global asymptotic stability.

ExampleStable Limit Cycle


Show that M = { x : q xq = 1} is a asymptotically stable limit
cycle for (almost globally, except for starting at x=0):
x 1 = x1 x2 x1 ( x12 + x22 )
x 2 = x1 + x2 x2 ( x12 + x22 )

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


d
dV
= 2( x12 + x22 1) ( x12 + x22 1)
dt
dt
= 2( x12 + x22 1)2 ( x12 + x22 ) 0

= {0 < q xq R} is invariant for R = 1.

for x

ExampleStable Limit Cycle


E = { x : V ( x) = 0} = { x : q xq = 1}
M = E is an invariant set, because
d
V = 2( x12 + x22 1)( x12 + x22 ) = 0
dt

for x M

We have shown that M is a asymtotically stable limit cycle


(globally stable in R {0})

A Motivating Example (revisited)

m x = b x p x p k0 x k1 x3
V ( x, x ) = (2m x 2 + 2k0 x2 + k1 x4 )/4 > 0,

V (0, 0) = 0

V ( x, x ) = bp x p3 gives E = {( x, x ) : x = 0}.

Assume there exists ( x,


x ) M such that x (t0 ) ,= 0. Then
m x (t0 ) = k0 x (t0 ) k1 x 3 (t0 ) ,= 0

so x (t0 +) ,= 0 so the trajectory will immediately leave M . A


contradiction to that M is invariant.
Hence, M = {(0, 0)} so the origin is asymptotically stable.

Adaptive Noise Cancellation by Lyapunov Design


u

b
s+ a

b
b
s+b
a

b
x

e
+ x

x + ax = bu

b
bb
x + a
x=b
bu

e= aa
b, e
Introduce e
x=xb
x, a
b= bb
b.

Want to design adaptation law so that e


x0

Let us try the Lyapunov function


1 2
e2 + be
b2 )
(e
x + aa
2

ea
e + be
be
b=
V = e
xe
x + a a
V =

eb
ea
e + be
=e
x(a e
xa
x+e
bu) + a a
be
b = a e
x2

where the last equality follows if we choose


1
e
e = a
b =
xb
x
a

Invariant set: e
x = 0.

This proves that e


x 0.

e
b = b
b= e
xu
b

e and e
(The parameters a
b do not necessarily converge: u " 0.)
Demonstration if time permits

Results
3000
2500
2000
1500

1000
500
0

10

20

30
time [s]

40

50

60

40

50

60

3000
2500
2000
1500

1000
500
0

10

20

30
time [s]

Estimation of parameters starts at t=10 s.

Results

0.8

0.6

x x

0.4

0.2

0.2

0.4

0.6

0.8

10

20

30
time [s]

40

50

60

Estimation of parameters starts at t=10 s.

Next Lecture

Stability analysis using input-output (frequency) methods

You might also like