theorie de lyapunov sur la stabilite e2010
TRANSCRIPT
Théorie de Lyapunov sur la stabilité
Référence: Notes de cours de D. Alazard de SupAéro.Notes de Hannah Michalska, McGill University
2
Système non-linéaire
Considérons un système continu et non-linéaire représenté par:
Exemple:
( ) nx f x x
21 1 2
22 2 1
2 1
1
x x x
x x x
3
Point d’équilibre
Un vecteur est un point d’équilibre si:
Si xe est différent de 0, il peut être ramené à 0 par un changement de variable:
( ) 0ef x
nex
ex x x
4
Point d’équilibre
Considérons donc à partir de maintenant que:
Sans perte de généralité…
0ex
5
Stabilité locale simple et asymptotique
L’état d’équilibre du système continu et non-linéaire de l’acétate #2 est: Stable, si pour tout ε>0, il existe un
r=r(ε), tel que:
Instable si non-stable;
0ex
(0) ( ) 0x r x t t
6
Stabilité locale simple et asymptotique
L’état d’équilibre du système continu et non-linéaire de l’acétate #2 est:Asymptotiquement stable, s’il est
stable et si r peut être choisi tel que:
Marginalement stable, s’il est stable sans être asymptotiquement stable.
0ex
(0) lim ( ) 0t
x r x t
7
Stabilité asymptotique globale
Si le système est asymptotiquement stable quelque soit la condition initiale x(0), alors le point d’équilibre est globalement asymptotiquement stable.
FONCTION DE LYAPUNOVComment vérifier la stabilité d’un système non-linéaire ?
8
Idée de base (assumant xe = 0)
Supposez que l’on puisse définir une mesure de l’énergie dans un système: par exemple:
Tel que:
9
2( , )V x t x
0( , ) 0,eV x t t t ( , ) 0, ,eV x t x x t
Idée de base (assumant xe = 0)
Tel que (suite): augmente doucement tandis
que x augmente (pour un t donné). L’énergie ne s’accroit pas le long de
toute trajectoire, donc:
10
( , )V x
0 0 0 0( ; , ), 0, ,dV
x t x t t t t xdt
Intuitivement…
… il est raisonnable de penser que pour x0 près de xe (= 0): L’énergie initiale est petite. L’énergie reste toujours petite.
puisque: reste près de xe pour
toujours.
xe est stable.
11
0 0( , )V x t
0 0( ; , )x t x t0dV dt
Hypothèse de base sur V(x,t)
: toutes les dérivées partielles de V existent et sont continues dans (x,t).
Conséquence:
12
0,x t t
0 0
1
( ; , ), ( ), ( ),
( ), ( ),n
i
i i
dV dVx t x t t x t t V x t t
dt dtdxV V
x t t x t tx dt t
Pour un ensemble
…nous devons être en mesure d’écrire qu’il existe des fonctions et tel que:
et sont des fonctions de classe K.
13
nG
x x
0( , ) , ,x V x t x x G t t
x x
Fonction de classe K
est une fonction de classe K si: , et est continu; ; est strictement croissant de
façon monotone avec .
Exemple: est une fonction de classe K.
14
x
0 0 0, 0x x x
x
1 xe
15
Fonction définie positive
Une fonction scalaire V(x) continuellement différentiable (par rapport à x) est définie positive dans une région Ω autour de l’origine si:V(0) = 0;V(x) > 0 pour tout . / 0x x
16
Fonction définie positive
Autrement dit: Si ( ) ,V x x x
Fonction de classe K
17
Fonction définie semi-positive
Une fonction scalaire V(x) continuellement différentiable (par rapport à x) est définie semi-positive dans une région Ω autour de l’origine si:V(0) = 0;V(x) ≥ 0 pour tout . / 0x x
18
Fonction quadratique définie positive
La fonction quadratique où Q est une matrice (de taille n par n) réelle symétrique, est définie positive si toutes les valeurs propres de la matrice Q sont strictement positives.
( ) TV x x Qx
19
Exemples
#1:
Définie positive dans R2;Définie semi-positive dans R3.
#2:
Définie semi-positive dans R2. (Pourquoi ?)
2 21 2( )V x x x
21 2( )V x x x
STABILITÉ DE LYAPUNOV, MÉTHODE DIRECTE
20
21
Stabilité locale
L’état d’équilibre xe = 0 est stable si il existe une fonction continuelle-ment dérivable V(x) telle que:
V(0) = 0;V(x) > 0, ;
0,x x ( ) ( ) 0, 0, .V x dV x dt x x
22
Stabilité locale et asymptotique
Si la dernière condition était plutôt, alors l’état d’équilibre est asymptotiquement stable.
( ) 0V x
23
Stabilité globale
L’état d’équilibre xe = 0 est globalement asymptotiquement stable si il existe une fonction continuellement dérivable V(x) telle que:V(0) = 0;V(x) > 0,
0;x ( ) 0, 0;V x x ( ) .V x quand x
24
Exemple
Soit:
Passage en équation d’état avec:
Ainsi:
2 0x x x x
1 2,x x x x
1 22
2 1 1 2
x x
x x x x
Dont on veut connaître la stabilité.
25
Exemple
Ce système possède un point d’équilibre à (x1,x2)=(0,0).
Analysons la stabilité de ce système avec cette fonction de Lyapunov:
2 21 2
1 2( , )2
x xV x x
26
Exemple
Dérivant V(x), on trouve:
Ensuite:
1 2 1 2 1 1 2 21 2
( , )V V
V x x x x x x x xx x
2 2 2 21 2 1 2 1 2 1 2 1 2( , )V x x x x x x x x x x
27
Exemple
Donc
Ainsi, V(x) est une fonction définie positive qui est strictement décroissante le long de toutes les trajectoires possibles si ε<0.
2 21 2 1 2( , )V x x x x
28
Exemple
En vertu de la théorie de Lyapunov, le système est globalement stable si ε=0.
Il est globalement asymptotiquement stable si ε<0.
Sinon, il est globalement instable.
29
Exemple #2
Soit:
Dont le point d’équilibre est à (0,0). Vérifions la stabilité avec cette
fonction de Lyapunov:
21 1 2
22 2 1
2 1
1
x x x
x x x
2 21 2
1 2( , )2
x xV x x
30
Exemple #2
En dérivant:
Donc
1 2 1 1 2 2
2 2 2 21 2 2 1
2 2 2 21 2 1 2
( , )
2 1 1
2
V x x x x x x
x x x x
x x x x
2 2 2 21 2 1 2 1 2( , ) 0 2 0V x x x x x x
31
Exemple #2
Cette condition peut être réécrite comme suit:
2
2 11 2 2 2
1
2( , ) 0
1
xV x x x
x
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 50
0.5
1
1.5
2
2.5
3
3.5
4
4.5
5
x1
x 2
Stable
Stable ou instable ?
32
Exemple #2
Essayons ce second candidat:
Dérivant:
Ce qui mène à conclure que le système est globalement asymptotiquement stable.
2 21 2
2 1 2
2( , )
2
x xV x x
2 22 1 2 1 2( , ) 2V x x x x
33
Exemple #3
Soit:
Dont le point d’équilibre est à (0,0). Vérifions la stabilité avec cette
fonction de Lyapunov suivante:
1 1
12 24 1 t
x x
x x e
2 21 2 1 2( , ) 2 (1 )tV x x x x e
Exemple #3
En dérivant:
Stable car:
34
21 1 2 2 2
2 2 21 2 2
2 2 21 2
( , ) 2 4 (1 ) 2
2 (1 )(1 ) 2
2 (1 2 )
t t
t t t
t t
V x t x x x x e x e
x x e e x e
x x e e
2 2 21 2( , ) 2 (1 2 ) 0t tV x t x x e e
,t x
35
Bilan
Le choix de la fonction de Lyapunov a un effet sur l’évaluation de la zone de stabilité d’un système non-linéaire.
36
Stabilité de Lyapunov des systèmes linéaires
Le système linéaire est asymptotiquement stable si et seulement si, pour toute matrice symétrique définie positive Q, il existe une matrice P définie positive et symétrique satisfaisant l’équation de Lyapunov:
0TA P PA Q
x Ax
37
Démonstration (condition suffisante)
Considérons ce candidat:
Dérivant:
TV x Px
T T
T T T
T T
V x Px x Px
x PAx x A Px
x PA A P x
38
Démonstration (condition suffisante)
Soit Q une matrice définie positive, si P est une solution positive de l’équation de Lyapunov.Alors
et
Donc système asymptotiquement stable.
( ) 0, 0V x x
( ) ( ) 0, 0.TV x x Qx V x x
39
Démonstration (condition nécessaire)
Pour un couple quelconque (A,Q) l’équation de Lyapunov peut admettre plus d’une solution pour P.
Mais, si A est stable, la solution P est unique:
0
TA t AtP e Qe dt
40
Démonstration (condition nécessaire)
Avec cette solution:
0 0
0
0
T T
T
T
T T A t At A t At
A t At
A t At
A P PA A e Qe dt e Qe Adt
de Qe dt
dt
e Qe
Q
Exemple
41
Instable
Exemple
Q = I.
42
=0
Exemple
Posons Q = I.
43
p5=-1/2p2=-1/2
p4=- p3
Exemple
Posons Q = I.
44
p3=1/2-3p6
p1=-3+6p6
Exemple
6p6+6=0 p6=-1 Finalement P est:
Pas définit positif, car:
45
Instable
46
Design d’un contrôleur non linéaire pour un système linéaire
Soit le système:
A globalement asymptotiquement stable (g.a.s.);
… et
( ) ( ) ( )x t Ax t bu t
nb0(0)x x( ) 1,u t t
47
Design d’un contrôleur non linéaire pour un système linéaire
Problème:Concevoir un contrôleur avec
rétroaction possiblement non-linéaire qui fait en sorte que x retourne rapidement à 0.
48
Étape #1
Choix de la fonction de Lyapunov pour le système en boucle ouverte:
Choisissons Q symétrique et définie positive. Exemple: Q = I.
( ) ( )x t Ax t
49
Étape #1
Ensuite, définir
Avec P symétrique et définie positive, solution de l’équation de Lyapunov.Comme A est g.a.s. P>0.
( , ) TV x t x Px
50
Étape #1
Conséquence, la fonction de Lyapunov V(x,t) est positive définie et décroissante et radialement illimitée pour le système.
51
Étape #2
Choisir l’entrée u(t) qui fait en sorte que dV/dt soit négatif le long des trajectoires du système.
Dérivant, on obtient:
( , ) 2T T T TV x t x Px x Px x Qx ub Px
52
Étape #2
Solution u(t):
Avec:
Un relais…
( ) ( )Tu t sign b Px t
1 0
1 0
0 0
si z
sign z si z
si z
53
Étape #3
Vérification que le système en boucle fermée est g.a.s.
La dérivé de V est:
( , ) 2
2
2
T T
T T T
T T T
V x t x Qx ub Px
x Qx sign b Px b Px
x Qx b Px x Qx
54
Exemple
Système:
Choix de Q: Q = 1. Donc:
10 1 0 2TA P PA Q P P P
x x u
55
Exemple
Système:
Ce qui mène à ce contrôleur:
Donc en boucle fermée:
12
Tu sign b Px sign x sign x
x x u
[ ]x x sign x
56
57
La commande LQ - principe
Soit le système linéaire suivant:
Hypothèse: La paire (A,B) est stabilisable, i.e., qu’il
n’y a pas de modes instables et ingouvernable dans ce système.
( ) ( ) ( ) ;
( ) ( )
n m
q
x t Ax t Bu t x u
y t Cx t y
58
La commande LQ - principe
Résultat: Soit le critère LQ suivant:
Avec R>0, Q≥0 et
0
0
( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
T T
T Tx
J y t Qy t u t Ru t dt
x t Q x t u t Ru t dt
TxQ C QC
59
La commande LQ - principe
Alors: La commande par retour d’état qui
stabilise le système et minimise ce critère LQ est:
Avec
( ) ( )cu t K x t1 T
c cK R B P
60
Équation de Riccati
Dans l’équation précédente, Pc est solution unique (matrice symétrique et définie positive) de l’équation de Riccati:
1 0T Tc c c c xP A A P P BR B P Q
1 Tc cK R B P
61
Ainsi
La fonction de coût minimale correspondante est alors:
min 0 0, ( : 0)To cJ x P x x état initial à t
62
Démonstration
La dynamique du système en boucle fermée avec la commande par retour d’état est:
La réponse autonome de ce système est:
bfx A BK x A x
0( ) bfA tx t e x
63
Démonstration
Le critère J devient:
0
0
00
0
( ) ( ) ( ) ( )
( ) ( )
Tbf bf
T Tx
T Tx
A t A tT To x
To
J x t Q x t u t Ru t dt
x t Q K RK x t dt
x e Q K RK e dt x
x Px
64
Démonstration
Avec:
La contrainte Abf stable entraine que P vérifie l’équation de Lyapunov:
Notez que P≥0, car J≥0.
0
Tbf bfA t A tT
xP e Q K RK e dt
0T Tf f xA P PA Q K RK
65
Démonstration
Posant Kc la valeur optimale de K qui minimise J et la solution Pc correspondante, alors
0T T
c c c c x c cA BK P P A BK Q K RK
66
Démonstration
Considérons une variation du gain ΔK autour de Kc. Il en résulte une variation de ΔP autour de Pc, qui vérifie:
0
T
c K c P
c P c K
T
x c K c K
A B K P
P A B K
Q K R K
67
Démonstration
Kc est la valeur optimale au sens de J si et seulement si le critère augmente pour toute variation ΔK autour de Kc, soit:
0 /P K c KA B K stable
68
Démonstration
En soustrayant les deux équations des acétates 66 et 65, on obtient:
0
T T Tc K P K c
P c K c K
T T TK K K c c K
A B K B P
A B K P B
R RK K R
69
Démonstration
Que l’on peut réécrire:
C’est une équation de Lyapunov
0
T
P P
TT T TK c c c c K
TK K
A BK A BK
RK B P RK B P
R
70
Démonstration
A-BK étant stable ΔP est positif si et seulement si (Théorème de Lyapunov):
0
TT T TK c c c c K
TK K
RK B P RK B P
R
K
71
Démonstration
Or, car par définition R>0. Il faut donc que:
Que l’on peut réécrire:
0,TK K KR
0Tc cRK B P
1 Tc cK R B P
72
Démonstration
En reportant cette valeur de gain dans l’équation de l’acétate 65, on obtient l’équation de Riccati:
1 0T Tc c c c xP A A P P BR B P Q
FIN
73
Exemple
Soit le système suivant:
2
1 1
2( )1
02
s sG s
s
74
Exemple
Qui donne la représentation dans l’espace d’état suivant:
0 1 0 0 0
0 0 0 1 0
0 0 2 0 1
1 0 1
0 0 1
x x u
y x
75
Exemple
Si on a Qx = I et R = ρI, l’équation de Riccati est:
Avec
1 0T Tc c c cP A A P P BB P I
1 2 3
2 4 5
3 5 6
c
p p p
P p p p
p p p
76
Exemple
Donc:223 3 5 2 5 3 62 2 4
223 5 5 4 5 5 62 4 4
2 22 5 3 6 4 5 5 6 5 6
1 3
1 2 3 5
3 3 5 6
1 2
2 1 2 0
2 2 1 4
p p p p p p pp p p
p p p p p p pp p p
p p p p p p p p p p
p p
p p p p
p p p p
77
Exemple
Posant p3 et p5 égaux à 0:
Donc:
22 2 4
22 4 4
26
1
1 2
6
1 0
2 1 0 0
0 0 1 4
p p p
p p p
p
p
p p
p
3 21
2
3 24
26
2
2
2 4
p
p
p
p
78
Exemple
Donc le gain optimal est:
1 21 2 1 1 2
1 21 1 2
2 1 0
0 0 2 2 1cK
79
Exemple
Localisation des pôles (3):
3 2 2 5 23 2
2
12 2
2
4
80
Exemple
Pôles pour diverses valeurs de ρ:
(0.1) 1.06, 2.97, 3.74
(0.2) 1.18, 1.90, 3.00
(0.3) 1.32 0.28, 2.71
(0.8) 0.93 0.50, 2.29
j
j
81
Exemple
Exemple de réponses:0.1 0.5
0.8
82
Sur MATLAB
Fonction lqr
83
Chariot sur un rail
Un chariot est libre de se déplacer sur un rail.
Une force constante f est appliquée pour le déplacer.
Il faut déplacer le chariot de 100 m en 10 s.
84
Chariot sur un rail
Mais, on désire la force f la plus petite que possible.
Condition initiale:Chariot en x = 0 et sa vitesse initiale
est nulle. Vitesse finale peut être quelconque. Masse du chariot est m.
85
Chariot sur un rail
Modèle:
Variables d’état:
86
x v
fv
m
1
2
x x
v x
u f m
Chariot sur un rail
Ainsi:
Condition initiales et valeur finales désirées à t=10s:
87
1 2
2
x x
x u k
0
0
1
2
0
0
x
x
1
2
100D
D
x m
x libre
Force d’amplitude constante
Chariot sur un rail
On intègre les deux équations d’état:
Et on obtient k = 2. Mais, la plus petite force possible est k = 0.
88
2 0
21 20
( )
( ) 2
t
t
x u t dt kt
x x t dt kt
Chariot sur un rail
Les objectifs sont contradictoires. Considérons tout de même la fonction objectif suivante:
Pondérations: q pour pénaliser l’erreur de position r pout pénaliser l’amplitude de la
commande.
89
2 21 0
100ft
fJ q x r u dt
Chariot sur un rail
Ici:
Pour obtenir le k optimal:
…puis…
90
2 250 100 10J q k rk
5000 10000 20J
qk q rkk
500
250
qk
q r
Chariot sur un rail
Ou encore:
Si (q/r)∞, k=2; Si (q/r)0, k=0.
91
500
250 1
q rk
q r
Chariot sur un rail
Supposons maintenant que la force est:
On cherche les valeurs de k1 et k2 qui minimisent la fonction objectif J.
92
1 2u k k t
Chariot sur un rail
Dans ce cas:
Donc:
93
1 2
2 1 2
x x
x k k t
22 1 20
2 31 2 1 20
( ) 2
( ) 2 6
t
t
x u t dt k t k t
x x t dt k t k t
Chariot sur un rail
À t = 10 secondes:
Solution: une infinité de valeurs de k1 et k2.
Cette équation est une contrainte:
94
1 2100 50 166.67k k
21
100 166.67
50
kk
Chariot sur un rail
La fonction objectif est
Et…
95
2
1 2
2 21 1 2 2
50 166.67 100
10 100 333.33
J q k k
r k k k k
1 21
1 22
5000 20 16666.67 100 10000
16666.67 100 55555.56 666.67 33333.33
Jk q r k q r q
k
Jk q r k q r q
k
Chariot sur un rail
Exemples: q = 100, r = 1
K1 = 3 et K2 = -0.3;
q = 1, r = 1 K1 = 2.991 et K2 = -0.299;
q = 1, r = 100 K1 = 2.308 et K2 = -0.231.
96
Proche de la contrainte
Chariot sur un rail
Si on force la contrainte entre k1 et k2, on obtient:
Et…
97
22 24.44 9 15 25J r k k
22
4.44 15 50J
r kk
Chariot sur un rail
Ce qui mène à k2 = -0.3 et k1 = 3.
98
Chariot sur un rail
Supposons maintenant que l’on désire que la vitesse soit nulle à t=10. Cela implique que:
Que l’on peut réécrire:
Seconde contrainte.
99
2 1 2(10) 0 10 50x k k
1 25k k
Chariot sur un rail
Nouvelle fonction objectif:
Donc:
100
2 2 21 1 2 2 0
100ft
f fJ q x q x r u dt
2 2
1 1 2 2 1 2
2 21 1 2 2
50 166.67 100 10 50
10 100 333.33
J q k k q k k
r k k k k
Chariot sur un rail
Avec les deux contraintes:
Donc:
101
21 2
100 166.675
50
kk k
2
1
1.2
6
k
k
Chariot sur un rail
Exemples: q1 = 100, q2 = 1, r = 1
K1 = 5.1424 et K2 = -0.9428;
q1 = 1, q2 = 100, r = 1 K1 = 5.917 et K2 = -1.182;
q1 = 1, q2 = 1, r = 100 K1 = 2.325 et K2 = -0.2435.
102
Proche de la 1ère contrainte
Proche de la 2e contrainte