Académique Documents
Professionnel Documents
Culture Documents
1
D. KOENIG
7 septembre 2009
1
Damien Koenig est Enseignant/Chercheur à Grenoble-INP, rattaché pour l’enseignement à l’ESISAR
et pour la recherche au GIPSA-lab (UMR - CNRS). Contact : damien.koenig@esisar.grenoble-inp.fr, Site
Web perso http ://koenig-damien.jimdo.com
ii
Table des matières
Introduction vii
1 Commande LQ 1
1.1 Principe d’optimalité de Bellman . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Application : recherche du chemin à coût minimal . . . . . . . . . . . . . . . . . . 1
2 Observateur LQ 41
2.1 Cas déterministe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
2.1.1 Horizon infini . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
2.1.2 Horizon fini . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.2 Cas stochastique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
2.2.1 Etude selon le principe d’optimalité de Bellman : cas continu . . . . . . . . . 50
iii
iv TABLE DES MATIÈRES
6 Conclusion 83
7 Résumé 85
7.1 Regulateur LQ : Cas discret . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
7.2 Regulateur LQ : Cas continu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
7.3 Stabilité au sens de Lyapunov . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
7.3.1 Cas continu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
7.3.2 Cas discret . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
7.4 Propriétés de Robustesse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
7.4.1 Maximisation de l’Hamiltonien . . . . . . . . . . . . . . . . . . . . . . . . . . 91
7.5 Poursuite optimale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
7.5.1 Problème de poursuite : horizon infini, yref = cte 6= 0 . . . . . . . . . . . . . 93
7.5.2 Problème de poursuite à horizon fini : yref non cte . . . . . . . . . . . . . . . 94
7.6 Observateur LQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
7.6.1 Cas déterministe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
7.6.2 Cas stochastique : Horizon fini . . . . . . . . . . . . . . . . . . . . . . . . . . 96
7.6.3 Horizon infini : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
v
vi PREFACE
Mots clefs
Performance/Robustesse
Critère fréquentiel
Critère temporel
Fonction de sensibilité (S)
Fonction de sensibilité complémentaire (T)
HJB
Hamiltonien
Loop-Shaping
Notation 1
LQ : Linear Quadratique
HJB : Hamilton Jacobi Bellman
ARE (resp. EAR en français) : Algebraic Riccati Equation
EARD Equation Algébrique de Riccati aux Différences
PMP : Principe du maximum de Pontryaguine
LQG : Lineaire Quadratique Gaussienne
CO : Commande Optimale
T
(.) : Transposé de la matrice (.)
T
(.) = (.) > 0 : Matrice symétrique définie positive
T
(.) = (.) ≥ 0 : Matrice symétrique semi-définie positive
Introduction
Pour un système linéaire (au moins localement) on sait placer (sys C.C) les n pôles de la BF
(fixés pour assurer la stabilité, robustesse, rejet aux perturbations) par résolution d’un système de
n équations à n inconnues. Cependant pour des systèmes de grande dimension (n élevé) ou encore
les systèmes MIMO à n états et m commandes il faut déterminer les n*m paramètres du correcteur
statique (u = −Kx) et placer les n pôles ⇒ n ∗ m − n paramètres libres.
Il existe donc une infinité de gains K solution du pb
Problème : Comment choisir les n ∗ m paramètres du gain K solution du pb de commande.
Quelques Critères
Critère de consommation à temps infini
Cas continu : Trouver la commande u fonction de l’état x qui minimise
Z
1 ∞¡ T ¢
min J (u) = x (t) Qx (t) + uT (t) Ru (t) dt
u 2 0
sous la contrainte de la dynamique du système
ẋ (t) = Ax (t) + Bu (t)
(1)
y (t) = Cx (t)
où Q = QT ≥ 0 , R = RT > 0 sont des matrices de pondération choisies pour obtenir un bon
compromis performance/robustesse.
Cas discret : Trouver la commande u fonction de l’état x qui minimise
∞
1 X£ T ¤
min J (u) = xk Qxk + uTk Ruk
u 2
k=0
sous la contrainte de la dynamique du système
xk+1 = Axk + Buk
(2)
yk = Cxk
où Q = QT ≥ 0, R = RT > 0.
vii
viii INTRODUCTION
Commande LQ
1. Dans un processus d’optimisation dynamique, une suite de décisions est optimale si, quels que
soient l’état et l’instant considérés sur la trajectoire qui lui est associée, les décisions ultérieures
constituent une suite optimale de décisions pour le sous-problème dynamique ayant cet état
et cet instant comme conditions initiales.
2. Une politique optimale est telle que, quels que soient l’état initial et la décision initiale, les
décisions suivantes doivent constituer une politique optimale par rapport à l’état résultant de
la première décision.
La compagnie des eaux de votre ville désire construire un réseau qui permette de desservir un
certain nombre de bâtiments, notés de A à G. Après avoir déterminé toutes les solutions possibles,
l’étude a conduit au réseau potentiel de la figure 1.1. A chaque arc (en gras) de ce projet correspond
un prix d’investissement (comprenant l’achat du droit de passage, le coût du tuyau, les frais de
terrassement , etc.).
On propose par application du principe de Bellman énoncé précédemment de déterminer le
chemin de coût minimal (plus court chemin) qui permet de relier A à G. On note d(P,Q) la distance
entre les points quelconques P et Q et L(P) la longueur du plus court chemin (coût optimal) entre
le point P quelconque du graphe, et le point G. On recherche donc en particulier L(A).
1
2 CHAPITRE 1. COMMANDE LQ
C1 E1
2 3 D 2 6
F1
B1 1
3 1 5 10
C2 5 E2 4
G
A
6 8 7
3 D 4 F2 3
2
B2 4 C3 3 7
E3 5
Solution : ½
en partant de F1, on a L(F1)=d(F1,G)=10
Etape 1
en partant de F2, on a L(F2)=d(F2,G)=3
en partant de E1, on a L(E1)=d(E1,F1)+L(F1)=16
en partant de E2, on a L(E2)=min{d(E2,F1)+L(F1), d(E2,F2)+L(F2)}
Etape 2
= min{4+10,7+3)}=10
en partant de E3, on a L(E3)=d(E3,F2)+L(F2)=8
en partant de D1, on a L(D1)=min{d(D1,E1)+L(E1), d(D1,E2)+L(E2)}
= min{2+16,5+10)}=15
Etape 3
en partant de D2, on a L(D2)=min{d(D2,E2)+L(E2), d(D2,E3)+L(E3)}
= min{4+10,7+8)}=14
en partant de C1, on a L(C1)=d(C1,D1)+L(D1)=3+15=18
en partant de C2, on a L(C2)=min{d(C2,D1)+L(D1), d(C2,D2)+L(D2)}
Etape 4
= min{5+15,8+14)}=20
en partant de C3, on a L(C3)=d(C3,D2)+L(D2)=3+14=17
en partant de B1, on a L(B1)=min{d(B1,C1)+L(C1), d(B1,C2)+L(C2)}
= min{2+18,1+20)}=20
Etape 5
en partant de B2, on a L(B2)=min{d(B2,C2)+L(C2), d(B2,C3)+L(C3)}
½ = min{6+20,4+17)}=21
en partant de A, on a L(A)=min{d(A,B1)+L(B1),d(A,B2)+L(B2)}
Etape 6
=min{3+20,3+21)}=23
Conclusion, le chemin le moins coûteux est finalement, A,B1,C1,D1,E2,F2,G de coût final 23
euros (voir figure 1.2)
Remarque 1 Au lieu de tester la vingtaine de chemins possibles, i.e. d’évaluer sur chacun des ces
chemin le coût total entre A et G, on obtient par le principe d’optimalité de Bellman le coût optimal
1.3. HORIZON FINI ET INFINI 3
C1 E1
2 3 D 2 6
F1
B1 1
3 1 5 10
C2 5 E2 4
G
A
6 8 7
3 D 4 F2 3
2
B2 4 C3 3 7
E3 5
en 6 étapes. Cette méthode est souvent employée pour les problèmes de plus court chemin dans les
graphes. En particulier, la méthode PERT de gestion de projet qui permet de déterminer les « dates
au plus tôt » et « dates au plus tard » d’achèvement des différentes étapes d’un projet.
Remarque 2 (Problème du plus court chemin) : découper des morceaux de ficelle de longueurs
correspondant aux données du problème. Mettre bout à bout les bouts de ficelle, et les coller à la
super glue, de façon à reproduire exactement le graphe ; tirer doucement sur les bouts A et G : le
premier qui commence à se tendre est la solution recherchée.
xk+1 = f (xk , uk )
x(Tf)
x(k)
x(k0)
où
j = k est le coût immédiat
1
PTf −1 £ T T
¤
2 j=k+1 xj Qj xj + uj Rj uj est le coût intermédiaire
1 T
2 xTf PTf xTf est le coût final
Qj , Rj , PTf sont des matrices connues données par le designer
Plus précisément :
– Pour j = Tf instant terminal, la valeur optimale du critère partiel est égale au seul coût
terminal Jopt (x (Tf ) , Tf ) = J ∗ (x (Tf ) , Tf ) = 12 xTTf PTf xTf où PTf = QTf et J ∗ est le coût
optimal au sens du critère à minimiser.
– Pour j = Tf − 1 l’instant précédent l’instant final, la valeur optimale du critère partiel est :
1³ T ´ 1
J ∗ (x (Tf − 1) , Tf − 1) = xTf −1 QTf −1 xTf −1 + uTTf −1 RTf −1 uTf −1 + xTTf PTf xTf
2 2
1 T
= x PT −1 xTf −1
2 Tf −1 f
où PTf = QTf et PTf −1 est une matrice symétrique définie non négative solution de l’équation
algébrique de Riccati (que l’on énoncera ultérieurement)
– Pour j = Tf − 2 l’instant précédent l’instant Tf − 1, la valeur optimale du critère partiel est :
1³ T ´ 1
J ∗ (x (Tf − 1) , Tf − 1) = xTf −2 QTf −2 xTf −2 + uTTf −2 RTf −2 uTf −2 + xTTf −1 PTf −1 xTf −1
2 2
1 T
= x PT −2 xTf −2
2 Tf −2 f
etc
Position du problème
Rechercher u qui minimise
min J (u) = J (x (k) , k)
u
Tf −1
1 X £ T ¤ 1
= xj Qj xj + uTj Rj uj + xTTf PTf xTf
2 2
j=k
1.3. HORIZON FINI ET INFINI 5
x(Tf)
xTf-1
∂J (x (Tf − 1) , Tf − 1)
∂u (Tf − 1)
Rappel :
∂xT A
= A
∂x
T
∂x Ax ¡ ¢
= A + AT x
∂x
∂ 2 J (x (Tf − 1) , Tf − 1)
>0
∂u2Tf −1
6 CHAPITRE 1. COMMANDE LQ
min
x*
Les étapes 1, 2 et 3 sont l’extension de la recherche du minimum d’une fonction scalaire f (x).
L’égalité est vraie pour h = 0 (voir figure 1.5). On montre par un DL de f (x∗ + h) autour de x∗
que x∗ est un minimum local sous reserve que
∂f (x∗ )
∂x∗ = 0
∂ 2 f (x∗ )
∂x∗ 2 > 0
∂f (x∗ ) 1 2 ∂ 2 f (x∗ )
f (x∗ + h) = f (x∗ ) + h + h + O3
∂x∗ 2 ∂x∗2
or f (x∗ + h) − f (x∗ ) ≥ 0
∂f (x∗ ) 1 2 ∂ 2 f (x∗ )
h + h ≥0
∂x∗ 2 ∂x∗2
On en déduit, pour h > 0,
∂f (x∗ ) 1 ∂ 2 f (x∗ )
+ h >0
∂x∗ 2 ∂x∗2
1.3. HORIZON FINI ET INFINI 7
pour h < 0
∂f (x∗ ) 1 ∂ 2 f (x∗ )
+ h <0
∂x∗ 2 ∂x∗2
et comme h → 0 , l’on obtient finalement
∂f (x∗ )
=0
∂x∗
∗
La condition ∂f∂x
(x )
∗ = 0 est une condition nécessaire pour que x* soit un minimum ou un maximum.
Il est minimum si de plus
1 ∂ 2 f (x∗ ) ∂ 2 f (x∗ )
h ∗2
>0⇔ >0
2 ∂x ∂x∗2
Application de l’algorithme proposé (tous les calculs sont détaillés par souci de pédagogie)
Rappel R = RT , P = P T et Q = QT .
soit
¡ ¢
∂J 2 (x (Tf − 1) , Tf − 1) ∂ RTf −1 + B T PTf B uT f −1 + B T PTf AxT f −1
=
∂u2 (Tf − 1) ∂u (Tf − 1)
¡ T
¢
= RTf −1 + B PTf B
laquelle est définie positive car PTf = PTTf ≥ 0, R = RT > 0 et donc RTf −1 + B T PTf B est inversible
et u∗ minimise J.
1 T 1h T i 1
xTf −1 PTf −1 xTf −1 = xTf −1 QTf −1 xTf −1 + uTTf −1 RTf −1 uTf −1 + xTTf −1 AT PTf AxT f −1
2 2 2
1
+uTTf −1 B T PTf AxT f −1 + uTTf −1 B T PTf BuT f −1
2
· T
¸
1 T 1 T ¡ QTf −1 + A¢ PTf A
x PT −1 xTf −1 = xTf −1 xTf −1
2 Tf −1 f 2 +LTTf −1 RTf −1 + B T PTf B LTf −1 − 2LTTf −1 B T PTf A
1 h i
= xTTf −1 QTf −1 + AT PTf A + LTTf −1 B T PTf A − 2LTTf −1 B T PTf A xTf −1
2
1 h i
= xTTf −1 QTf −1 + AT PTf A − LTTf −1 B T PTf A xTf −1
2
Soit (après identification) l’EARD
Cette équation est dite équation à temps rétrograde et est déterminée hors ligne, i.e.,
Résultat fondamental
De l’étude précédente on peut etablir le résultat suivant.
Solution : D’après le principe précédent, ce problème se réduit à trouver une fonctionnelle V (x (t) , t)
définie sur [0, Tf ] de <n → <, de classe C1 solution de l’équation aux différences rétrograde
1 T 1³ T ´ 1
xTf −1 PTf −1 xTf −1 = xTf −1 QTf −1 xTf −1 + uTTf −1 RTf −1 uTf −1 + xTTf PTf xTf
2 2 2
Laquelle est dérivée par rapport à u,
³ ³ ´ ´¯
∂ xTTf −1 QTf −1 xTf −1 + uTTf −1 RTf −1 uTf −1 + 21 xTTf PTf xTf ¯¯
1
2
¯ =0
∂u ¯
¯ ∗
u=u
³ ´ ¯
1
xT
Q x + uT
R u ¯
2 Tf −1 Tf −1 Tf −1 Tf −1 Tf −1 Tf −1 ¯
∂ ³ ´T ³ ´ ¯¯
1 ¯
+ 2 AxTf −1 + BuTf −1 PTf AxTf −1 + BuTf −1 ¯
⇔ ¯ =0
∂u ¯
¯
¯
¯
¯
u=u∗
¡ ¢ ¯
T T ¯
⇔ RTf −1 + B PTf B uTf −1 + B PTf AxTf −1 ¯ =0
u=u∗
¡ ¢−1 T
⇔ u∗Tf −1 = − RTf −1 + B T PTf B B PTf AxTf −1
u∗t = −Lt xt
¡ ¢−1 T
où Lt = Rt + B T Pt+1 B B Pt+1 A est un gain variable dans le temps et Pt est la solution de
l’EARD
¡ ¢−1 T
Pt = Qt + AT Pt+1 A − AT Pt+1 B Rt + B T Pt+1 B B Pt+1 A
déterminée par récurrence avec PTf = QTf . ¡ ¢
Rappel : La valeur du coût partiel désirée entre les instants k et Tf est J x (k) , k = 12 xTk Pk xk .
1.3. HORIZON FINI ET INFINI 11
1.3.2 Synthèse
♥ Regulateur LQ à Horizon fini
Problème : Déterminer
Tf −1
1 X £ T ¤ 1
min J (u) = xk Qk xk + uTk Rk uk + xTTf PTf xTf
u 2 2
k=0
u∗k = −Lk xk
Problème : Déterminer
∞
1 X£ T ¤
min J (u) = xk Qxk + uTk Ruk
u 2
k=0
où Q = QT ≥ 0, R = RT > 0 sont des matrices connues données par le designer (rq : le coût final
PTf est nul).
Solution : Le système bouclé est asymptotiquement
¡ ¢ stable sous réserve que le système (2) est
stationnaire, stabilisable et que le couple A, Q1/2 détectable (preuve voir annexe). Q1/2 désigne
¡ ¢T
n’importe quelle matrice rectangulaire telle que Q1/2 Q1/2 = Q. On obtient les deux résultats
suivants
12 CHAPITRE 1. COMMANDE LQ
- Pk+1 = Pk = P admet une limite constante semi-definie positive, laquelle est solution de l’équation
algébrique de Ricatti suivante :
¡ ¢−1 T
P = Q + AT P A − AT P B R + B T P B B PA
1.3.3 Exercice
Pour xk+1 = 2xk + uk , déterminer la commande u qui stabilise x et minimise
Tf −1
1 X ¡ T ¢ 1
J (x (k) , k) = xk xk + uTk Ruk + xTTf PTf xTf
2 2
k=0
Il nous faut déterminer les commandes u∗0 , u∗1 et u∗2 . On applique le principe d’optimalité de Bellman.
– Nous commençons par déterminer la commande optimale u∗2 (voir figure 1.4) qui permettra
de minimiser le coût partiel J (x (2) , 2) au départ d’un état x2 quelconque :
1 2 R 2
J (x (2) , 2) = x + u + J (x (3) , 3)
2 2 2 2
1 2 R 2 P3 2
= x + u + x
2 2 2 2 2 3
1.3. HORIZON FINI ET INFINI 13
∂J (x (0) , 0)
= u0 + 4 (2x0 + u0 ) = 0
∂u (0)
8
⇔ u∗0 = − x0
5
soit un coût optimal
1 2 1 2
J (x (0) , 0) = x + u + J (x (1) , 1)
2 0 2 0
µ ¶2
1 2 1 2 2
= x + u +2 x0
2 0 2 0 5
1 2 8 2
= x + x
2 0 5 0
1 T 21
= x x0
2 0 5
On retrouve les mêmes résultats si l’on applique les résultats synthétisés en section 1.3.2
¡ ¢−1 T
Lk = Rk + BkT Pk+1 Bk Bk Pk+1 Ak Pk = Qk + ATk Pk+1 Ak − ATk Pk+1 Bk Lk
L2 =1 P2 =3
L1 = 32 P1 =4
L0 = 85 P0 = 21
5 = 4.2
L2 = 0.1818 P2 = 4.6364
L1 = 0.6335 P1 = 13.6708
L0 = 1.1551 P0 = 24.1015
L2 = 0.0020 P2 = 4.9960
L1 = 0.0099 P1 = 20.8847
L0 = 0.0409 P0 = 82.8297
Conclusion 1) quand R augmente la commande diminue. Cela est logique car le coût appliqué
à la commande est relatif au poids R, de fait pour minimiser le coût J il faut maintenir une
commande faible pour R grand.
1.3. HORIZON FINI ET INFINI 15
L2 = 0.1818 P2 = 1.3636
L1 = 1.1538 P1 = 3.3077
L0 = 1.5357 P0 = 4.0714
x3 = (A − BL2 ) (A − BL1 ) (A − BL0 ) x0 = 0.7143x0
L2 = 1.8182 P2 = 4.6364
L1 = 1.6452 P1 = 4.2903
L0 = 1.6220 P0 = 4.2439
x3 = (A − BL2 ) (A − BL1 ) (A − BL0 ) x0 = 0.0244x0
L2 = 1.9980 P2 = 4.9960
L1 = 1.6664 P1 = 4.3329
L0 = 1.6250 P0 = 4.2499
x3 = (A − BL2 ) (A − BL1 ) (A − BL0 ) x0 = 2.4994e−4 x0
Conclusion 2) Plus le poids sur le coût final est élevé plus la convergence vers zéro sera rapide.
3)Résolution pour Tf → ∞. ¡ ¢
Le système est stabilisable et la paire A, Q1/2 est observable, avec A = 2 et Q1/2 = 1.Nous
recherchons l’unique solution définie positive de l’équation algébrique de Ricatti suivante :
¡ ¢−1 T
P = Q + AT P A − AT P B R + B T P B B PA
On constate que plus le poids sur la commande est important plus le système bouclé est lent (la
dynamique de BF s’écarte du centre du cercle unité). Cela est normal car on pénalise la commande,
en d’autre terme on restreint son évolution. L’énergie dépensée par la commande coûte très cher.
16 CHAPITRE 1. COMMANDE LQ
¡ ¢ ¡ ¢
−V̇ x (t) , t = min L x, u, t
u
∂V ¡ ¢ ∂V ¡ ¢
= min L x, u, t +
⇔ − F x, u, t eq. HJB (1.4)
∂t u ∂x
© ¡ ¢ ¡ ¢ª
La commande u∗ = arg minu L xt , ut , t + ∂V ∂x F
x, u, t , est solution optimale du
problème optimal, laquelle est obtenue toujours de la même façon, i.e.,
∂HJB ¯
∂u ¯u=u∗
∂ 2 HJB
∂u2 >0
Explication :
∂V ¡ ∂V ∂x ∂V ∂V ¡¢ ¢
V̇ + x (t) ,
= + t F x, u, t
=
∂t ∂x ∂t ∂t ∂x
¡ ¢ R Tf ¡ ¢ ¡ ¢ ¡ ¢
Remarque : V x (t) , t = t L x, u, t dt, V x (Tf ) , Tf = L x (Tf ) , Tf
ou encore en commande LQ,
Z Tf
¡ ¢ 1 T 1 ¡ ¢ 1
V x (t) , t = x Pt xt = xTt Qxt + uTt Rut dt + xTTf PTf xTf
2 t 2 t 2
¡ ¢
Problème : Déterminer une fonctionnelle V x (t) , t définie sur [0, Tf ] de <n → <, de
classe C1 solution de l‘équation de Hamilton Jacobi Bellman
¡ ¢ 1¡ T ¢
−V̇ x (t) , t = xt Qxt + uTt Rt ut
2
¡ ¢ 1 R Tf ¡ T ¢
ou l’équivalent V x (t) , t = 2 t xt Qxt + uTt Rt ut dt + 12 xTTf PTf xTf
¡ ¢ 1 T
Résolution : On pose V x (t) , t = 2 xt Pt xt , soit l’équation HJB
1 1 1 1¡ T ¢
− xTt Ṗt xt − ẋTt Pt xt − xTt Pt ẋt = x Qt xt + uTt Rt ut
2 2 2 2 t
1 1¡ T ¢ 1 T 1
⇔ − xTt Ṗt xt = x Qt xt + uTt Rt ut + (Axt + But ) Pt xt + xTt Pt (Axt + But )
2 2 t 2 2
1 T 1 T¡ ¢ 1 1 1
⇔ − xt Ṗt xt = xt Qt + AT Pt + Pt A xt + uTt Rt ut + uTt B T Pt xt + xTt Pt But (1.5)
2 2 2 2 2
On dérive par rapport à u,
¡1 ¢ ¯¯
∂ T
+ 12 uTt B T Pt xt + 12 xTt Pt But
2 ut Rt ut ¯
¯ =0
∂u ¯
u=u∗
¯
⇔ Rt ut + B T Pt xt ¯u=u∗ = 0
⇔ u∗t = −Rt−1 B T Pt xt
¡ ¢
On vérifie que u* minimise la fonctionnelle V x (t) , t , pour ce faire on montre que la dérivée
∂ (Rt ut +B T Pt xt )
seconde de l’équation HJB par rapport à u est définie positive i.e., ∂u = Rt > 0.
Résultat vrai si et seulement si R est une matrice symétrique définie positive.
Enfin en reportant la solution u∗t = −Rt−1 B T Pt xt dans (1.5) on obtient avec PTf = QTf l’équa-
tion différentielle de Riccati :
1 1 ¡ ¢ 1 1 1
− xTt Ṗt xt = xTt Qt + AT Pt + Pt A xt + uTt Rt ut + uTt B T Pt xt + xTt Pt But
2 2 2 2 2
1 T 1 T¡ T −1 T −1 T
¢
⇔ − xt Ṗt xt = xt Qt + A Pt + Pt A + Pt BRt B Pt − 2Pt BRt B Pt xt
2 2
⇔ −Ṗt = Qt + AT Pt + Pt A − Pt BRt−1 B T Pt ∀x 6= 0
Conclusion : La commande optimale est une fonction linéaire de l’état u∗t = −Lt xt où Lt =
Rt−1 B T Ptest un gain variable dans le temps. Pt est la solution de l’équation différentielle de Riccati
−Ṗt = Qt + AT Pt + Pt A ¡− Pt BRt−1 B¢T Pt avec PTf = QTf . La valeur du coût partiel désirée entre
les instants t et Tf est J x (t) , t = 21 xTt Pt xt .
Nous étudions donc maintenant les propriétés asymptotiques (i.e. Tf → ∞) de la solution obte-
nue précédemment. Nous constaterons dans le paragraphe suivant que celles-ci sont particulièrement
intéressantes pour les systèmes invariants. Si l’on fait tendre Tf vers l’infini, la présence du coût
terminal dans l’expression du critère n’offre plus d’intérêt : l’état converge vers zéro (système BF
stable) et Pt la solution de l’équation différentielle de Riccati converge vers une constante P , donc
−Ṗt = Qt + AT Pt + Pt A − Pt BRt−1 B T Pt = 0
En résumé :
1
R Tf ¡ ¢
Critère : minJ (u) = J (x (∞) , ∞) = lim xTt Qt xt + uTt Rt ut dt
u Tf →∞ 2 0
Sous la contrainte de la dynamique du système ẋ = Ax + Bu.
Solution : u∗t = −Lt xt , Lt = Rt−1 B T P où P est solution de l’équation algébrique de Riccati
(ARE) : AT P + P A − P BRt−1 B T P + Qt = 0 et le coût partiel, à compter d’un instant t ≥ t0 est
J (x (t) , t) = 12 xTt Pt xt .
1.3.5 Exercice
On considère le problème de commande optimale en boucle fermée :
Z
1 Tf ¡ 2 ¢ 10
minJ (u) = 4x + Ru2 dt + x2Tf
u 2 0 2
sous la contrainte du système bilinéaire suivant
ẋ = −2x + xu
1. Déterminer par la méthode de HJB les équations à résoudre pour un horizon Tf fini
2. Déterminer par la méthode de HJB pour un horizon infini, l’expression de la commande
solution du problème, AN : R = 1 et R → ∞
Solution
1. On trouve d’après les résultats présentés en section précédente
−Ṗt = Qt + AT Pt + Pt A − Pt BRt−1 B T Pt
u∗t = −Rt−1 B T Pt xt
avec P (Tf ) = 5, A = −2, B = x, Q = 4, QTf = 10
Pt2 x2
−Ṗt = 4 − 2Pt −
R
Pt 2
u∗t = − x
R t
2. Pour Tf → ∞ on a QTf = 10 et Ṗt = 0 soit l’EAR suivante
Q + AT P + P A − P BR−1 B T P = 0
2 2 −1
16 − 4P − P x R = 0
P 2 x2 + 4RP − 4R = 0
1.4. STABILITÉ AU SENS DE LYAPUNOV 19
La commande est donnée par la relation u∗t = −R−1 B T P xt . Après identification, nous obte-
nons
P 2 x2 + 4RP − 4R = 0
√ √
−4R + 16R2 + 16x2 R −2R + 2 R2 + x2 R
P = = , x 6= 0
2x2 ³ x2 ´
p
u∗t = −R−1 P x2t = −R−1 −2R + 2 R2 + x2 R
AN : R = 1 p
ẋ = −2 1 + x2 x
On constate bien que la BF est stable. Remarque pour un coût infini sur la commande R → ∞
q ¡
2¢
2R − 2 R2 1 + xR
ẋ = −2 + x
R
= −2x
à s µ ¶!
x2
u∗t = −R −1
P x2t = −R −1
−2R + 2 R2 1+ x
R
= 0
on trouve une commande nulle, cela est logique car la commande coûte très cher, le système
est quant à lui stable, le mieux est donc de ne rien faire. On parle de commande à énergie
minimale, ici celle-ci est nulle car le système est stable.
y(t)
(1) C
A
1
¡ T ¢ ¡ ¢
2. −V̇ (xt ) = 2 xt Qt xt + uTt Rt ut = 12 xTt Qt + LTt Rt Lt xt > 0 ⇔ V̇ (xt ) < 0
pour Q ≥ 0 , R > 0 et xt 6= 0
Exercice : Retrouver le résultat énoncé en 2 sans appliquer la définition de l’équation de HJB
mais en dérivant par rapport au temps l’expression V (xt ) = xTt Pt xt avec ẋt = (A − BLt ) xt et
Lt = Rt−1 B T P .
AT P + P A − P BR−1 B T P + Q = 0
Nous posons
Fc (s) = I + Lc (s) = Su−1
−1
G (s) = C (sI − A) B
où Fc (s) représente l’inverse de la fonction de sensibilité.
1.5. PROPRIÉTÉS DE ROBUSTESSE 21
-1
0
w0
Lc(jw)
Pour faire apparaître l’expression Fc (s) dans l’équation algébrique de Riccati, quelques mani-
pulations sont nécessaires. Premièrement on pose Q = C T Q̄C, l’ARE peut alors s’écrire sous la
forme suivante
T
− (−sI − A) P − P (sI − A) − P BR−1 B T P + C T Q̄C = 0
¡ ¢−1 −1
On multiplie cette dernière expression par B T −sI − AT et (sI − A) B respectivement à
gauche et à droite,
−1 ¡ ¢−1
−B T P (−sI − A) B − B T −sI − AT PB
T
¡ ¢
T −1 −1 T −1
−B −sI − A P BR B P (sI − A) B
¡ ¢−1 T −1
+B T −sI − AT C Q̄C (sI − A) B = 0
−1
sachant que Fc (s) = I + Lc (s) = Su−1 , Lc (s) = L (sI − A) B, R−1 R = I et L = R−1 B T P nous
obtenons
−RLc (s) − LTc (−s) R − LTc (−s) RLc (s) + GT (−s) Q̄G (s) = 0
que l’on peut factoriser
¡ ¢
GT (−s) Q̄G (s) + R = I + LTc (−s) R (I + Lc (s))
soit
GT (−s) Q̄G (s) + R = FcT (−s) RFc (s)
On en deduit l’inégalité suivante
FcT (−s) RFc (s) ≥ R
laquelle permet d’affirmer dans le cas monovariable (ou pour R = αI; α ∈ R+ ) que
FcT (−s) Fc (s) ≥ I
p
Sachant que FcT (−s) Fc (s) = |Fc (jw)|, on obtient l’inégalité suivante
¯ ¯
|Fc (jw)| ≥ 1 ⇔ ¯Su−1 (jw)¯ ≥ 1 ⇔ |1 + Lc (jw)| ≥ 1 ⇔ |Su (jw)| ≤ 1
On constate que le lieu de Nyquist du tranfert de boucle Lc (jw) reste toujours à l’extérieur du
cercle unité centré en -1 (voir figure 1.7). Il en résulte les propriétés de robustesse suivantes
marge de module ≥ 1
marge de gain ∞
marge de phase ≥ 60˚
22 CHAPITRE 1. COMMANDE LQ
où a ∈ R1 et le critère J Z ∞
1 ¡ 2 ¢
J= x + Ru2 dt
2 0
pour R → ∞ la boucle fermée présente un mode s = − |a|, donc si le système (1.6) est
instable R (a) ≥ 0 on obtient une commande u = − (a + |a|) x = −2 |a| x et pour un mode
stable R (a) < 0 on obtient une commande nulle.
Remarque 4 Pour un pôle instable le minimum d’énergie (i.e.R → ∞) pour rendre le système
stable revient à placer le miroir de a, i.e.
si s = a + jb avec a > 0 ⇒ BF : s = −a + jb
2)
−1 1
Lc (s) = L (sI − A) B=
s+1
1 s+1
Su (s) =
2 2s + 1
1.5. PROPRIÉTÉS DE ROBUSTESSE 23
|S|
I
1 2 0 1/2 1 J
100
w
1/2
-1/2
10-1
1 1 jw
Lc (jw) = = −
jw + 1 1 + w2 1 + w2
1 w J
< = > 0, I = − < 0, = −w
1 + w2 1 + w2 <
µ ¶2 µ ¶2
1 2 2 1 2 1
⇒ <= ¡ J ¢2 ⇔ < + J − < = 0 ⇔ < − + J =
1+ < 2 2
¡ ¢
soit un cercle de centre 1/2, 0 et de rayon 12 . On obtient dès lors les marges de robustesse
suivante (voir figure 1.8)
marge de module 1
marge de gain ∞
marge de phase 90˚
Y (z) 1
= G (z) = (1.7)
U (z) 1+z
δJ = J (u + δu) − J (u) ≥ 0
⇒ u minimise J soit :
1³ ´T ³ ´ 1
δJ = xTf + δxTf PTf xTf + δxTf − xTTf PTf xTf
2 2
Z Tf ¡ ¢ ¡ ¢
+ −H λ, x + δx, v + H λ, x, u + λT (ẋ + δ ẋ) − λT ẋdt
0
1³ ´T ³ ´ 1 T
= xTf + δxTf PTf xTf + δxTf − x PT x
2 2 Tf f Tf
Z Tf
¡ ¢ ¡ ¢
+ −H λ, x + δx, v + H λ, x, u + λT δ ẋdt
0
R Tf ³ R Tf £ ¤T RT T ´
On intègre par partie l’expression 0
λT δ ẋdt, i.e., 0
λT δ ẋdt = λT δx 0 f − 0 f λ̇ δxdt ,
on obtient
1³ ´T ³ ´ 1
δJ = xTf + δxTf PTf xTf + δxTf − xTTf PTf xTf
2 2
Z Tf
¡ ¡ ¢ ¡ ¢¢
+ H λ, x, u − H λ, x + δx, v dt
0
Z Tf
£ ¤Tf T
+ λT δx 0 − λ̇ δxdt
0
1.6. COMMANDE OPTIMALE PAR MAXIMISATION DE L’HAMILTONIEN (I.E. PMP) 25
¡ ¢
On développe à l’ordre 1 par rapport à x l’expression H λ, x + δx, u + δu , on obtient
¡ ¢
¡ ¢ ¡ ¢ δH λ, x, v
H λ, x + δx, u + δu =H λ, x, v + δx
δxT
Rappel :
¡ ¢ ¡ ¢ ¡ ¢
δf θ, θ̇, t δf θ, θ̇ + δ θ̇, t − δf θ, θ̇, t
=
δ θ̇ θ̇ + δ θ̇ − θ̇
¡ ¢
¡ ¢ ¡ ¢ δf θ, θ̇, t
⇔ δf θ, θ̇ + δ θ̇, t = δf θ, θ̇, t + δ θ̇, θ ∈ <
δ θ̇
Il reste à substituer le résultat
¡ ¢
¡ ¢ ¡ ¢ δH λ, x, v
H λ, x + δx, u + δu =H λ, x, v + δx
δxT
dans l’expression
1³ ´T ³ ´ 1
δJ = xTf + δxTf PTf xTf + δxTf − xTTf PTf xTf
2 2
Z Tf
¡ ¡ ¢ ¡ ¢¢
+ H λ, x, u − H λ, x, v dt
0
Z Tf
£ ¤Tf T
+ λT δx 0 − λ̇ δxdt
0
³ ´ 1
δJ = xTTf PTf + λTTf δxTf − λT0 δx0 + δxTTf PTf δxTf
2
Z Tf µ ¶
T δH
− λ̇ + T δxdt
0 δx
Z Tf
¡ ¡ ¢ ¡ ¢¢
+ H λ, x, u − H λ, x, v dt
0
or 12 δxTTf PTf δxTf est un terme quadratique négligeable et −λT0 δx0 = 0 soit
³ ´
δJ = xTTf PTf + λTTf δxTf
Z Tf µ ¶
T δH
− λ̇ + T δxdt
0 δx
Z Tf
¡ ¡ ¢ ¡ ¢¢
+ H λ, x, u − H λ, x, v dt
0
26 CHAPITRE 1. COMMANDE LQ
T δH
λ̇ = −
δxT
avec la condition terminale
Cas discret
Cas général : Trouver u*(x, k) qui maximise l’Hamiltonien
¡ ¢ ¡ ¢
Hk+1 = −L x, u, k + λTk+1 F x, u, k (1.9)
¡ ¢
où xk+1 = F x, u, k .
δH
ẋ =
δλ
δH
λ̇ = −
δx
δ 2 Hk+1
<0
δu2k
1. Pour Tf → ∞ (t1 non specifié), u = u∗ , λ = λ∗ , x = x∗ l’Hamiltonien associé est nul pour
tous t. ¡ ¢
H x∗ , u∗ , λ∗ = 0, Tf → ∞
2. Si on souhaite aller du point x (t = 0) = x0 au point x = x1 sans specificier le temps
t1 ¡d’atteinte de ce¢ point, il est necessaire d’assurer pour u = u∗ , λ = λ∗ , x = x∗ que
H x ∗ , u∗ , λ ∗ = 0
3. Si on souhaite aller du point x (t = 0) = x0 au point
¡ x (t = t1 ) =¢ x1 où t1 est specificié on
peut montrer pour u = u∗ , λ = λ∗ , x = x∗ que H x∗ , u∗ , λ∗ = Cte.
Application : commande LQ
Le système est décrit par l’équation d’état xk+1 = Axk + Buk , il s’agit de déterminer la com-
mande u qui minimise le critère énergétique suivant
¡ ¢ 1£ T ¤
L x, u, k = x Qk xk + uTk Rk uk
2 k
avec Qj = QTj ≥ 0 , Pj = PjT ≥ 0 , Rj = RjT > 0.
28 CHAPITRE 1. COMMANDE LQ
On pose l’Hamiltonien H :
1£ T ¤
Hk+1 = − xk Qk xk + uTk Rk uk + λTk+1 (Axk + Buk )
2
En l’absence de contraintes la maximisation du Hamiltonien conduit aux conditions :
δHk+1
xk+1 =
δλk+1
δHk+1
λk =
δxk
¯
δHk+1 ¯¯
=0
δuk ¯uk =u∗
k
δ 2 Hk+1
<0
δu2k
soit :
δHk+1
xk+1 = = Axk + Buk
δλk+1
δHk+1
λk = = AT λk+1 − Qk xk
δxk
¯
δHk+1 ¯¯ ¯
= − Rk uk + B T λk+1 ¯u =u∗ = 0 ⇔ u∗k = Rk−1 B T λk+1
δuk ¯uk =u∗ k k
k
δ 2 Hk+1
= −Rk < 0
δu2k
On obtient finalement la commande optimale u∗k = Rk−1 B T λk+1 avec la condition terminale λTf =
−PTf xTf .
La encore, on recherche une structure de commande bouclée, posons alors λk = −Pk xk , on
retrouve dès lors, le résultat énoncé précédemment
¡ ¢−1 T
u∗k = − Rk + B T Pk+1 B B Pk+1 Axk
= −Lk+1 xk
¡ ¢−1 T
avec Lk+1 = Rk + B T Pk+1 B B Pk+1 A.
Explication : Rk u∗k = −B T λk+1 = −B T Pk+1 xk+1 = −B T Pk+1 Axk − B T Pk+1 Bu∗k .
De même on retrouve l’EARD qui est obtenue en substituant dans λk = AT λk+1 − Qk xk la
commande u∗k = −Lk+1 xk soit :
1.7 Exemples
Solution
On pose
3 1
H = − x21 − u2 + λx (−x1 + u)
2 2
Il n’existe pas de contrainte explicite sur u, donc pour maximiser H il suffit d’appliquer les conditions
aux premier et second ordres et d’annuler la dérivée de l’Hamiltonien par rapport à u.
δH
= −u + λx
δu
δ2 H
= −1
δu2
donc u∗ = λx maximise H et le système devient
ẋ1 = −x1 + λx
où λx vérifie
δH
λ̇x = − = λx + 3x1
δx1
Conclusion ẍ1 = −ẋ1 + λ̇x = −ẋ1 + λx + 3x1 = −ẋ1 + ẋ1 + x1 + 3x1 = 4x1 et λx = ẋ1 + x1 .Nous
obtenons
x∗1 = A sinh (2t + α)
λx = u∗ = A (2 cosh (2t + α) + sinh (2t + α))
2
Les conditions aux limites donnent α = 0, A = sinh(2) , soit une commande
2
u∗ = (2 cosh (2t + α) + sinh (2t + α))
sinh(2)
Il est intéressant de vérifier le comportement de H avec cette commande. Pour ce faire il suffit de
substituer les solutions x∗1 et u∗ dans
3 1
H = − x21 − u2 + λx (−x1 + u)
2 2
30 CHAPITRE 1. COMMANDE LQ
x
L : point fixe M
Nous obtenons après simplification H = 2A2 , lequel est constant mais non nul. Cela est normal car
l’horizon de commande est ici spécifié.
Exercice 5 On considère l’évolution d’un camion poussé par une force F . L’équation de mouvement
est réduite à sa plus simple expression
mẍ = F
où |F | ≤ K avec K une constante donnée. La représentation d’état de ce modèle est
ẋ1 = x2
ẋ2 = u
où |u| ≤ K/m, x = x1 représente la position et x2 la vitesse du mobile (voir figure 1.9). Déterminer
la commande optimale u∗ qui permet en un temps minimal de ramener le camion du point M au
point L sous la contrainte de non saturation de la commande |u| ≤ K/m.
Solution
On pose
H = −1 + λx1 × x2 + λx2 × u
avec
δH
λ̇x1 = − =0
δx1
δH
λ̇x2 = − = −λx1
δx2
donc λx1 = A, λx2 = B − At où A et B sont des constantes déterminer.
On souhaite biensûr déterminer u qui maximise H, or H est linéaire en u et u est bornée
|u| ≤ K/m. Le maximum de H pour λx2 > 0 est donné pour u = K/m et pour λx2 < 0 par
u = −K/m, conclusion u vérifie la relation
K
u= sgn (λx2 )
m
1.7. EXEMPLES 31
et est non défini pour Θ (t) = 0.La suite sort du cadre de notre étude, il s’agit de tracer les familles
de trajectoires dan le plan x2 , x1 . Remarque le temps minimum Tf − T0 solution du problème est
déterminé à l’aide de la condition supplémentaire que H = 0 (Tf est ici non spécifié).
ẋ (t) = u (t)
1
Ṡ (t) = − u2 (t)
2
avec pour conditions initiales x(0) = 0, et S (0) = 1. La commande u caractérise une vitesse, x la
distance parcourue et S le niveau du reservoir de carburant. La deuxième équation modélise le fait
que la consommation augmente en raison quadratique de la vitesse (intuitivement cette hypothèse
est valide). Sur un horizon T=1, on souhaite parcourir la distance x(T ) la plus grande possible.
1. Calculer la commande optimale u∗ (t) maximisant la distance parcourue en utilisant la totalité
du carburant disponible.
2. En déduire la distance maximale parcourue
3. On suppose à présent que la masse variable du réservoir influe sur la dynamique de la façon
suivante (la dynamique du réservoir reste la même)
1
ẋ (t) = u (t) − S (t)
2
avec x(0) = 0 et S (0) = 1. Calculer la nouvelle commande optimale maximisant la distance
parcourue.
4. En déduire la distance maximale parcourue
5. Interpréter le signe du multiplicateur utiliser pour dualiser la contrainte finale
S (T ) = 0
J (u) = Cf
où Cf = −x (T ) + µ (S (T )) = Cte est le coût final. Ici les poids Q et R sont nuls car u et x
peuvent évoluer librement, ils ne sont pas contraints par un critère de consommation. En effet,
on désire maximiser x(T ) et dépenser tout le carburant disponible. µ est le multiplicateur de
Lagrange associé à la contrainte S (T ) = 0. Il reste à appliquer le PMP pour déterminer la
solution optimale u, cela pourra être détaillé en CM ou TD.
32 CHAPITRE 1. COMMANDE LQ
1.7.2 Pédalo
Un automaticien sur un pédalo désire traverser un fleuve en un temps donné T=1 tout en
fournissant le moins d’effort possible. On admettra qu’il part du point A = (x0 , y0 ) = (0, 0) et doit
rejoindre le point B = (xT , yT ) = (1, 1) .
Les équations du mouvement sont modélisées par
ẋ = u + w
(1.10)
ẏ = v(t)
Questions :
1. A l’aide de la variable x2 (t) , quantité totale stockée à l’instant t, poser et résoudre un problème
de commande optimale.
2. En réalité, la qualité commerciale des productions successives diminue avec le temps. Le
fermier doit en fait maximiser Z T
v (t)
J= dt
0 t +1
Quelle est la nouvelle politique optimale ?
1.7. EXEMPLES 33
ẋ = Ax + Bu
y = Cx
² = yref − y
où yref est la référence à suivre définie sur [0, Tf ] (de différente nature : constante, exponentielle,
trajectoire cible. . .).
– Le cas où yref = 0 correspond à un problème de régulation (étudié dans les sections précé-
dentes)
– Le cas yref quelconque à un problème de poursuite.
ut = −Lxt + hvref
où le gain L = R−1 B T P est donné par résolution du problème LQ précédent avec P la solution de
l’ARE
0 = Q + AT P + P A − P BR−1 B T P
h est un pré-filtre, fixé de telle sorte que l’erreur statique en poursuite est nulle.
On a montré que le retour d’état ut = −Lxt + hvref stabilise la boucle fermée, on obtient dès
lors en régime permanent l’équation statique
0 = (A − BL) x + Bhvref
y = Cx
y(∞) −1
soit un gain statique = −C (A − BL) Bh.
vref (∞)
³ ´−1 ³ ´−1
−1 −1
En conclusion y (∞) → vref (∞) si h = − C (A − BL) B = limp=0 C (pI − (A − BL)) B .
Le pré-filtre (ici scalaire) existe si la matrice d’évolution A − BL ne présente pas de mode sur l’axe
imaginaire.
1.8. POURSUITE OPTIMALE 35
on obtient dès lors pour une commande par retour d’état une fonctionnelle de la forme
¡ ¢ 1 T
V x (t) , t = x Pt xt + gtT x + ht
2 t
que l’on dérive le long des trajectoires ẋ = Ax + Bu , y = Cx et que l’on identifie à l’équation
HJB
¡ ¢ 1 T T 1
−V̇ x (t) , t = xt C QCxt + uTt Rut
2
| {z 2 }
coût état + commande
T
− yref QCxt
| {z }
coût de suivie
1 T
+ yref Qyref
|2 {z }
coût final
Remarque : Pour un suivi de référence cte, on constate par identification que gt = cte et ht = cte
et pour un horizon infini que Ṗt = 0.
On obtient
¡ ¢ 1 1
−V̇ x (t) , t = − ẋTt Pt x − xTt Pt ẋt − gtT ẋt
2 2
1 T T 1 1 T
= x C QCxt + uTt Rut − yref T
QCxt + yref Qyref
2 t 2 2
¡ ¢ 1 ¡ ¢
−V̇ x (t) , t = − xTt AT Pt + Pt A xt − uTt B T Pt xt − gtT Axt − gtT But
2
1 T T 1 1 T
= x C QCxt + uTt Rut − yref T
QCxt + yref Qyref
2 t 2 2
36 CHAPITRE 1. COMMANDE LQ
soit l’égalité ³ ´
¡ ¢
− 12 xTt AT Pt + Pt A xt − gtT A − yref T
QC + uTt B T Pt xt
−gtT But − 12 xTt C T QCxt − 21 uTt Rut − 12 yref
T
Qyref (1.11)
=0
pour une commande optimale
¡ ¢¯
∂ −uTt B T Pt xt − gtT But − 12 uTt Rut ¯¯
¯ = Ru∗t + B T Pt xt + B T gt = 0
∂u ¯
u=u∗
⇔ u∗t = −R−1 B T Pt xt − R−1 B T gt
Enfin en reportant la solution u∗t = −R−1 B T Pt xt − R−1 B T gt dans l’égalité (1.11) on obtient
1 ¡ ¢
− xTt AT Pt + Pt A − 2LTt B T Pt + C T QC + LTt RLt xt
2 ¡ ¢
− gtT A − yref
T
QC − gtT BLt xt
1 1 T
+ gtT BR−1 B T gt − yref Qyref = 0
2 2
soit l’équation algébrique de Riccati
et
gtT BR−1 B T gt = yref
T
Qyref
la condition nécessaire de résolution du problème de poursuite.
On retrouve la forme de commande u∗t = −R−1 B T Pt xt − R−1 B T gt proposée en préambule i.e.,
ut = −Lxt + hvref
1.8. POURSUITE OPTIMALE 37
1¡ T ¢
H = − ²t Qt ²t + uTt Rt ut + λT ẋ
2
1³ T
´
= − (yref t − Cxt ) Qt (yref t − Cxt ) + uTt Rt ut + λT (Axt + But )
2
et l’équation de HJB
¡ ¢ 1¡ T ¢
−V̇ ² (t) , t = ² Q²t + uTt Rt ut
2 t
Z
¡ ¢ 1 Tf ¡ T ¢
⇔ V ² (t) , t = ²t Q²t + uTt Rt ut dt
2 t
on obtient dès lors pour une commande par retour d’état une fonctionnelle de la forme
¡ 1 T ¢
V x Pt xt + gtT x + ht
x (t) , t =
2 t
que l’on dérive le long des trajectoires ẋ = Ax + Bu , y = Cx et que l’on identifie à l’équation
HJB
¡ ¢ 1 T T 1 1 T
−V̇ x (t) , t = xt C QCxt + uTt Rut − yref
T
QCxt + yref Qyref
2
| {z 2 } | {z } | 2 {z }
coût état + commande coût de suivie coût final
38 CHAPITRE 1. COMMANDE LQ
Remarque : Ici la référence évolue au cours du temps, on constate dès lors par identification
que gt et ht ne sont pas constants et varient au cours du temps. Par ailleurs l’horizon est fini donc
Ṗt existe.
On obtient
¡ ¢ 1 1 1
−V̇ x (t) , t = − ẋTt Pt xt − xTt Pt ẋt − xTt Ṗt xt − ġtT xt − gtT ẋt − ḣ
2 2 2
1 T T 1 T T 1 T
= x C QCxt + ut Rut − yref QCxt + yref Qyref
2 t 2 2
1 ³ ´
= − xTt AT Pt + Pt A + Ṗt xt − uTt B T Pt xt − ġtT xt − gtT Axt − gtT But − ḣ
2
1 T T 1 1 T
= x C QCxt + uTt Rut − yref T
QCxt + yref Qyref
2 t 2 2
soit l’égalité
1 ³ ´ ¡ ¢
− xTt AT Pt + Pt A + Ṗt xt − ġtT + gtT A − yref
T
QC + uTt B T Pt xt · · ·
2
1 1 1 T
· · · − gtT But − xTt C T QCxt − uTt Rut − yref Qyref − ḣ = 0
2 2 2
pour une commande optimale
¡ ¢¯
∂ −uTt B T Pt xt − gtT But − 12 uTt Rut ¯¯
¯ = Ru∗t + B T Pt xt + B T gt = 0
∂u ¯
u=u∗
⇔ u∗t = −R −1
B Pt xt − R−1 B T gt
T
on obtient
1 ³ ´
− xTt Ṗ + AT Pt + Pt A − 2LTt B T Pt + C T QC + LTt RLt xt
2 ¡ ¢
− ġtT + gtT A − yref
T
QC − gtT BLt xt
1 1 T
+ gtT BR−1 B T gt − yref Qyref − ḣ = 0
2 2
soit l’équation différentielle de Riccati
avec la condition terminale gTtf = −CQTf yref (Tf ) et ḣ = gtT BR−1 B T gt − yref
T
Qyref .
Conclusion : On obtient un système de 3 équations différentielles
−Ṗt = AT Pt + Pt A − Pt BR−1 B T Pt + C T QC ;
T
avec PT¡f = C QTf C¢
−ġt = A − LTt B T gt − C T Qyref ;
T
avec gTf = −C T QTf yref (Tf )
ḣ = gtT BR−1 B T gt − yref
T
Qyref
où seules les 2 premières équations sont conservées, (la 3ème n’intervenant pas dans u*).
1³ T
´
Ht = − (yref t − Cxt ) Qt (yref t − Cxt ) + uTt Rt ut
2
+λT (Axt + But )
40 CHAPITRE 1. COMMANDE LQ
Chapitre 2
Observateur LQ
x̂˙ = (A − GC) x̂ + Bu + Gy
où u et y sont les entrées de l’observateur.
L’observateur est donc défini par des équations d’état d’ordre n. Il est dit "observateur sans
biais" si on sait déterminer un "gain" G, de sorte que l’on ait :
½
x̂ (t0 ) = x (t0 ) ⇒ x̂ (t) = x (t)
∀x (t0 ) , ∀u (t) , pour t ≥ t0
x̂ (t0 ) 6= x (t0 ) ⇒ limt→∞ (x̂ (t) − x (t)) → 0
41
42 CHAPITRE 2. OBSERVATEUR LQ
Analyse de convergence
On définit l’erreur d’estimation e (t) = x (t) − x̂ (t). Après dérivation, on montre facilement que :
h∗ = −R−1 CM z
¡ ¢ ¡ ¢
ż (t) = AT z (t) − C T R−1 CM z = AT − C T GT z
M AT + AM − M C T R−1 CM + Q = 0
Ou encore si on multiplie par –1 et que l’on pose M̄ = −M < 0, on obtient finalement
M̄ AT + AM̄ + M̄ C T R−1 C M̄ − Q = 0
h∗ = R−1 C M̄ z
Par identification
¡ ¢ ¡ ¢
ż (t) = AT z (t) − C T R−1 CM z = AT − C T GT z
le gain de l’estimateur est donné par GT = R−1 CM ou encore G = M C T R−1 . Ce gain assure
la stabilité de la matrice AT − C T GT et l’amortissement exponentiel de l’erreur d’estimation e. Le
choix de la dynamique d’amortissement est obtenu par le choix des matrices de pondération Q et
R intervenant dans le critère d’optimisation.
2.1. CAS DÉTERMINISTE 43
A → AT
B → CT
L → GT
−Ṗ → Ṁ
M = MT > 0
sous
x̂˙ = Ax̂ + Bu + w
ŷ = C x̂,
Z t
¡ ¢ ¡ ¢
V e (t) , t = eT R−1 e + wT Q−1 w dt + eTT0 S −1 eT0
T0
= et Mt−1 et
T
, M = MT > 0
Z −T0
¡ ¢ ¡ T −1 ¢
V e (−t0 ) , −t0 = e R e + wT Q−1 w dt0 + eT−T0 S −1 e−T0
−t0
T −1
= e−t0 M−t 0 e−t0 >0
pour M > 0 et où la fonctionnelle est égale à la somme des coûts d’énergie minimale de com-
mande pour transférer l’état e(−t0) = e(t) quelconque à l’état e(-To) imposé par le coût final
de(−t0 )
³ 0´ ³ 0´
eT−t0 S −1 e−t0 sous la contrainte dt0 = −Ae −t + w −t .
2.1. CAS DÉTERMINISTE 45
Résolution : La fonctionnelle V est définie positive et elle présente une dérivée négative puisque
R > 0 et Q > 0,
³ 0´
dV −t
− = eT R−1 e + wT Q−1 w
dt0
Remarque :
³ ´
Z −T0 dV −t0 Z −T0
¡ T −1 ¢
⇔ − 0
= e R e + wT Q−1 w dt0
−t 0 dt −t 0
Z −T0
¡ T −1 ¢
⇔ V (e (−t0 ) , −t0 ) = e R e + wT Q−1 w dt0 + V (−T0 )
−t0
−1
à −t0 = −T0 on retrouve V (e (−T0 ) , −t0 = −T0 ) = eT−T0 M−T e
0 −Tc
soit une pénalité M−T0 = S.
La résolution de l’Eq HJB associée à la dynamique du système
de ³ 0´ ³ 0´
= −Ae −t + w −t
dt0
donne l’équation différentielle de Riccati
dM−t0
= −M−t0 AT − AM−t0 − Q + M−t0 C T R−1 CM−t0
dt0
avec M (−t0 = −T0 ) = S > 0.
On effectue le changement temporel inverse, qui donne le résultat final
dMt
= Mt AT + AMt + Q − Mt C T R−1 CMt
dt
avec M (t = T0 ) = S > 0. CQFD
Explication
³ 0´
dV −t deT−t0 M−t−1
0 e−t0
− = −
dt0 dt0
= eT C T R−1 Ce + wT Q−1 w
(
−1 dM−t0 −1 deT−t0 −1 −1 de−t0
⇔ eT−t0 M−t 0
T
dt0 M−t0 e−t0 − dt0 M−t0 e−t0 − e−t0 M−t0 dt0
T T −1 T −1
= e C R Ce + w Q w
(
−1 dM−t0 −1
eT−t0 M−t 0
dt0 M−t0 e−t0
⇔ T −1 −1
= (−Ae + w) M−t0 e−t0 + e−t0 M−t0 (−Ae + w) + eT C T R−1 Ce + wT Q−1 w
T
(
−1 dM−t0 −1
⇔ ¡ eT−t¢0 M−t 0
dt0 M−t0 e−t0
−1 −1 −1
= e −A M−t0 − M−t0 A e + 2w M−t0 et0 + eT C T R−1 Ce + wT Q−1 w
T T T
¡ ¢¯
−1
∂ 2wT M−t T T −1
0 e−t0 + e C R Ce + wT Q−1 w ¯¯ −1 −1
¯ = 2M−t 0 e−t0 + 2Q w=0
δw ¯
v=v ∗
∗ −1
⇔ w−t 0 = −QM−t0 et0
−1 dM−t0 −1 ¡ −1 −1
¢ −1
eT−t0 M−t 0
0
M−t0 e−t0 = eT −AT M−t T T T −1
0 − M−t0 A e + 2w M−t0 e−t0 + e C R Ce + wT Q−1 w
dt
pour obtenir l’équation différentielle de Riccati
−1 dM−t0 −1 ¡ −1 −1
¢ −1 −1
eT−t0 M−t 0 M−t0 e−t0 = eT −AT M−t T T T −1
0 − M−t0 A e − e M−t0 QM−t0 e−t0 + e C R Ce
dt0
dM−t0
⇔ = −M−t0 AT − AM−t0 − Q + M−t0 C T R−1 CM−t0
dt0
On applique le changement de base inverse t0 = −t et l’on obtient l’équation différentielle de Riccati
dMt
= Mt AT + AMt + Q − Mt C T R−1 CMt
dt
et M > 0 CQFD
2.1. CAS DÉTERMINISTE 47
Z −T0
¡ ¢ ¡ ¢ −1
V e (−t0 ) , −t0 = eT R−1 e + wT Q−1 w dt0 + eT−T0 S −1 e−T0 = eT−t0 M−t 0 e−t0
−t0
de(−t0 )
³ 0´ ³ 0´
sous la contrainte dt0 = −Ae −t + w −t .
On définit l’Hamiltonien de t à t0
1 ¡ T T −1 ¢
e C R Ce + wT Q−1 w + λT (−Ae + w)
H (λ, e, w) = −
2
Les conditions au premier ordre donnent
ė = δH(λ,
δλ
e, v)
= −Ae + w
δH(λ,e,w) T −1
λ̇ = − δe = C R Ce + AT λ
et pour M > 0.
La maximisation de H par rapport à w conduit à
δH (λ, e, w)
= −Q−1 w∗ + λ = 0 ⇔ w∗ = Qλ
δw
La dérivée seconde donne - Q−1 or Q > 0 donc w maximise H.
−1 −1
On propose d’après λ−t0 = −M−t e
0 −t0
le retour λ−t0 = −M−t 0 e−t0 qui après dérivation donne
−1 −1 −1
λ̇−t0 = M−t 0 Ṁ−t0 M−t0 e − M−t0 ė
−1 −1 −1 −1
⇔ C T R−1 Ce − AT M−t 0 e = M−t0 Ṁ−t0 M−t0 e − Mt (−Ae + v)
⇔ C T R−1 Ce − AT Mt−1 e = M−t
−1 −1 −1 −1 −1
0 Ṁ−t0 M−t0 e + M−t0 Ae + M−t0 QM−t0 e
³ ´
⇔ C T R−1 C − AT Mt−1 − Mt−1 A − M−t −1 −1 −1 −1
0 Ṁ−t0 M−t0 − M−t0 QM−t0 e=0
⇔ M C T R−1 CM − M AT − AM − Ṁt − Q = 0 ∀e 6= 0
dM−t0
⇔− = M AT + AM − M C T R−1 CM + Q ∀e 6= 0 M > 0
dt0
on applique le changement de base inverse t0 = −t et l’on obtient l’équation différentielle de Riccati
dMt
= M AT + AM − M C T R−1 CM + Q ∀e 6= 0 M > 0
dt
On retrouve le résultat de dualité précédent.
48 CHAPITRE 2. OBSERVATEUR LQ
3ème approche : Calcul des variations qui consiste à assurer la condition d’optimalité
1 T
J (w (σ + δw)) = (x̂t0 + δ x̂t0 − xt0 ) S −1 (x̂t0 + δ x̂t0 − xt0 )
2
T
Z t (y − C (x̂ + δ x̂)) R−1 (y − C (x̂ + δ x̂))
1 T −1
+
2 t0
³ + (w + δw) Q (w + δw) ´ dτ
+2λT A (x̂ + δ x̂) + Bu + w + δw − x̂˙ − δ x̂˙
Cette condition δJ (w (σ)) = 0 est évidente au sens£ où l’estimé ¤ doit être robuste aux petites
variations δ x̂t0 , δxt , δ x̂t , δwt . Ayant w (σ) pour σ ∈ t0 , t , on aura ainsi w (t) et ainsi x̂ (t)
car Ax̂ + Bu + w − x̂˙ = 0.
On obtient en développant l’expression δJ (w) et en simplifiant (car négligeables) les termes de
second ordre :
Rt £ ¤ R
On intègre par partie l’expression ˙ = λT δ x̂ t − t λ̇T δ x̂dτ et l’on factorise :
λT δ x̂dτ
t0 t t0 0
£ ¤
δJ = δ x̂Tt0 S −1 (x̂t0 − xt0 ) + λt0 − λTt δ x̂
Z t" h i #
δ x̂T −C T R−1 (y − C x̂) + AT λ + λ̇
+ £ ¤ dτ
t0 +δv T Q−1 w + λ
Enfin on souhaite comme dans le cadre de la commande une structure bouclée, on pose alors
d’après λt0 = −S −1 (x̂t0 − xt0 ) l’expression au cours du temps
On factorise l’égalité
³ ´
−Ṁτ − Mτ C T R−1 CMτ + Mτ AT + AMτ + Q λτ − Mτ C T R−1 (y − Cα) + α̇ − Aα − Bu = 0
et sachant que l’égalité à zéro doit être vérifiée quelque soit λτ on obtient
x̂τ = −Mτ λτ + α = α
ẋ = Ax + Bu + w
y = Cx + v
où w et v sont
¡ des bruits
¢ blancs
¡ centrés,¢ de matrice de covariance connue, respectivement Q et R,
(i.e. w ∼
= N 0, Q , v ∼ = N 0, R ), non corrélés entre eux et :
n o
T
E {x (t0 )} = x̄0 , E (x (t0 ) − x̄0 ) (x (t0 ) − x̄0 ) = S,
x (t0 ) non corrélé avec w et v
Pour une grande dispersion sur le processus w (i.e. variance des bruits de structure grande)
correspond un crédit (coût) faible accordé à l’équation d’état ẋ = Ax+Bu d’où un choix de Q−1 petit
dans le critère déterministe.
Pour une petite dispersion sur les mesures y (i.e., variance des bruits de mesure faible) cor-
respond un crédit fort accordé à l’équation de mesure y = Cx et donc au terme de correction
G (y − C x̂) d’où un choix R−1 grand dans le critère déterministe et un gain G grand.
Z tµ ³ ´T ³ ´¶
1 T −1 ˙ −1 ˙
min J (w) = lim (y − ŷ) R (y − ŷ) + x̂ − Ax̂ − Bu Q x̂ − Ax̂ − Bu dτ
w t0 →−∞ 2 t0
| {z }
coût immédiat t + coût intermédiaire t à t0
Z t
1 ¡ T T −1 ¢
= lim eτ C R Ceτ + wτT Q−1 wτ
t0 →−∞ 2 t0
Lemme : Pour tout système stochastique ẋ = Ax + Bv considéré stable h avec pour hypothèses i
£ T
¤ T
statistiques : E (v) = 0 E v (t) v (t + τ ) = V (t) δ (τ ), E (xt0 ) = x̄0 E (xt0 − x̄0 ) (xt0 − x̄0 ) =
h i
T
Q0 et x non corrélé avec v, la variance X (t) = E (x − E [x]) (x − E [x]) de x(t) est solution de
l’équation différentielle :
½
Ẋ (t) = A (t) X (t) + X (t) AT (t) + B (t) V (t) B T (t)
X (t0 ) = Q0
On propose l’estimateur suivant :
ė = (A − GC) e + w − Gv
où la moyenne des erreurs d’estimation définie par E[e] est nulle à t0 → −∞.
D’après le lemme précédent la variance
h i
T
M (t) = E (e − E [e]) (e − E [e])
dṀ T
= (A − GC) M + M (A − GC) + Q + GRGT
dG
⇔ −M C T + GR = 0
⇔ G = M C T R−1
52 CHAPITRE 2. OBSERVATEUR LQ
Ṁ = AM + M AT − M C T R−1 CM + Q
avec M (t0 ) = S.
Résultats de stabilité
Soit Q = N N T , si la paire (A, N ) est stabilisable et que la paire (A, C) est détectable alors il
existe une unique solution M symétrique positive de l’équation de Riccati algébrique telle que A −
M C T R−1 C est stable. La convergence de l’erreur d’estimation est donc assurée sous ces hypothèses.
Remarques :
– On peut comme précédemment obtenir le prédicteur de Kalman par dualité de la commande.
– Même interprétation statistique que précédemment
– Le prédicteur de Kalman à horizon infini correspond au filtre de Wiener obtenu pour les
systèmes à temps discrets :
¡ ¢−1
M est constant et est solution de l’ARE : M = Q + AM AT − AM C T R + CM C T CM AT
¡ ¢ −1
De même le gain G est constant et est déterminé hors ligne G = AM C T R + CM C T
Résultats de stabilité : idem que le cas continu
L’objectif est de déterminer le gain G qui assure à la fois : une estimation de x̂ non biaisée, une
minimisation de la variance de l’erreur d’estimation et un estimateur stable.
L’étude de la dynamique de l’erreur d’estimation ek = xk − x̂k donne
dMk+1 ¡ ¢
T
= R + CMk C T GT − CMk AT = 0
dG
¡ ¢−1
⇒ GT = R + CMk C T CMk AT
Position du problème
La méthode Linéaire Quadratique Gaussienne exige la connaissance du vecteur d’état. Dans la
majorité des problèmes de commande, on ne dispose que d’une connaissance partielle du vecteur
d’état. La synthèse LQG consiste donc à rechercher, à partir de cette mesure partielle, un régulateur
qui minimise un critère quadratique de nature stochastique. Nous présenterons cette méthode en
focalisant notre attention sur les propriétés de robustesse de cette technique qui nous conduiront
tout naturellement à la synthèse LQG/LTR.
55
56 CHAPITRE 3. MÉTHODE LINÉAIRE QUADRATIQUE GAUSSIENNE (LQG)
K(s)
B
c(t)=0
s-1I
x̂(t)
Kf -Kc G(s)
y(t)
u(t)
A
a) en recherchant l’estimé optimal x̂ (au sens de la variance d’erreur minimale) de l’état x par la
méthode du filtre de Kalman.
b) en employant cet éstimé comme s’il était la mesure exacte du vecteur d’état, pour résoudre le
problème de commande optimale linéaire déterministe (méthode LQ)
Plus précisémént, deux étapes composent cette synthèse :
1er étape Sous réserve que la paire(A, M W 1/2 ) est stabilisable et la paire(A, C) détectable on
estime l’état x par l’équation classique du filtre de Kalman, i.e.
Pf AT + APf − Pf C T V −1 CPf + HW H T = 0
u = −Kc x̂
avec
Kc = R−1 B T Pc
Pc A + A Pc − Pc BR−1 B T Pc + N T QN = 0
T
La synthèse LQG exige donc la résolution des équations de Ricatti duales. On peut représenter
cette commande sous la forme du bloc-diagramme de la figure 3.1. Laquelle présente le système
−1
G (s) = C (sI − A) B, précédé de la matrice de gain de commande Kc et du filtre de Kalman
3.1. PRINCIPE DE LA SYNTHÈSE LQG 57
Pc A + AT Pc − Pc BR−1 B T Pc + N T QN = 0
⇔ P 2 + 23 P − 13 = 0
1
soit Kc = 3Pc = 1 et Pc = 3 .
1 1 −1 1
3) On obtient LLQG (s) = K (s) G (s) = s+1 s+3 et LLQ (s) = Kc (sI − A) B= s+1 avec K (s) =
−1 1 1
−Kc (sI − A + BKc + Kf C) Kf = s+3 et G (s) = s+1 .
4) On en déduit les fonctions de sensibilité
2
1 s +4s+3
SLQG = 1+LLQG (s) = s2 +4s+4
1 1 s+1
SLQ = 1+LLQ (s) = 2 s +1 2
LLQG (s) 1
TLQG = 1+LLQG (s) = s2 +4s+4
1
LLQ (s) 1
TLQ (s) = 1+LLQ (s)
= 1+s+11 = s+2
s+1
Remarque S + T = I.
5) On constate que le compromis performance/robustesse est de moins bonne qualité avec le régu-
lateur LQG. Voir les figures 3.2 à 3.5.
Singular Values
1
−1
SLQG
Singular Values (dB)
−2
−3
−4
SLQ
−5
−6
−1 0 1 2
10 10 10 10
Frequency (rad/sec)
Singular Values
0
−10
L LQ
−20
−30
L LQG
−50
−60
−70
−80
−2 −1 0 1 2
10 10 10 10 10
Frequency (rad/sec)
−10
−20
T LQ
−30
Singular Values (dB)
−40
−50
−60
T LQG
−70
−80
−90
−2 −1 0 1 2
10 10 10 10 10
Frequency (rad/sec)
où R = 0.04, w et v représentent des bruits blancs, de moyenne nulle, indépendants, avec respecti-
vement pour matrice de covariance W = α2 = 100 et V = 1.
Nyquist Diagram
1
0.8
0.6
0.4 L LQ
L LQG
0.2
Imaginary Axis
0
−0.2
−0.4
−0.6
−0.8
−1
−1 −0.5 0 0.5
Real Axis
2. Déterminer la commande optimale u = −Kc x̂ au sens du critère (3.2). Donner les valeurs
propres associées au controleur i.e., eig (A − BKc )
3. Déterminer le transfert de boucle LLQG (s) = K (s) G (s) .Comparer les deux transferts LLQG (s)
−1
et LLQ (s) = Kc (sI − A) B
4. Tracer le lieu de Nyquist et/ou Black de ces 2 transferts et constater la faible marge de gain
et de phase que l’on obtient avec le regulateur LQG.
Solution
· ¸
β
1. Kf = , β = 2α + 1 = 21soit eig(A − Kf C) = {−1, −10}
α
£ ¤
2. Kc = 5 5.9 ,soit eig(A − BKc ) = {−1, −4.9}
³ ´¡ ¢
3. LLQG (s) = K (s) G (s) = s2160s+50
+16s+235
1−s
s2 . Le régulateur est donc constitué de deux
modes faiblements oscillants s = −8 ± 13j et d’un zéro près de l’origine.
4. Le lieu de Black (cf. figure 3.6) montre une marge de gain très réduite de l’ordre de 3 db et
une faible marge de phase de 20˚. En conclusion cette commande LQG entraîne une réduction
très importante des marges de gain et de phase, la rendant hypersensible aux incertitudes fré-
quentielles et paramétriques. Les deux raisons principales sont l’introduction de l’observateur
dans la boucle et d’autre part le caractère à non minimum de phase du système (A,B,C).
Nichols Chart
80
60
Black L LQG
40
−20
−40
−60
−80
−180 −135 −90 −45 0 45
Open−Loop Phase (deg)
L’objectif principal est de faire tendre asymptotiquement le transfert de boucle LLQG (s) =
−1
K (s) G (s) vers le transert de boucle LLQ (s) = Kc (sI − A) B par des choix appropriés de M,
W et V. La modélisation de nature stochastique de l’environnement du système disparaît alors au
profit de la nécessité d’un bonne robustesse associée à des performances nominales imposées. Ces
bruits d’états et de mesures devenus fictifs servent à engendrer un gain de Kalman et par voie
de conséquence un correcteur dynamique avec des propriétés intéressantes telles du gain en basse
fréquence et une atténuation des hautes fréquences.
W = W0 + qBB T , V = V0
jusqu’à ce que le transfert de boucle LLQG (s) = K (s) G (s) du correcteur LQG recouvre, sur
une bande de fréquence suffisamment large, le transfert de boucle de retour d’état LLQ (s) =
−1
Kc (sI − A) B. L’augmentation de q entraîne que l’on fait confiance essentiellement aux
mesures et non au modèle.
Il importe, bien sûr, de se limiter dans cette augmentation pour éviter une dynamique d’esti-
mation trop rapide qui entraînerait une amplification des bruits haute fréquence. Rappelons qu’il
62 CHAPITRE 3. MÉTHODE LINÉAIRE QUADRATIQUE GAUSSIENNE (LQG)
µ ¶
x̂k £ ¤
uk = −L , L= L1 L2
zk
x̂k+1 = Ax̂k + Buk + G (yk − C x̂k )
et le système bouclé
µ ¶ µ ¶µ ¶ µ ¶µ ¶
x̂k+1 A − BL1 − GC −BL2 x̂k G 0 y
= +
zk+1 0 1 µ zk ¶ 1 −1 yc
¡ ¢ x̂k (3.3)
uk = − L1 L2
zk
On considère que ce système peut être perturbé par des perturbations constantes en entrée et sortie.
On propose alors d’ajouter une variable z égale à l’intégrale de l’écart à asservir :
Sous l’hypothèse que le système est stabilisable et détectable, on montre qu’il existe un contrôleur
µ ¶
x̂k
uk = −L
zk
x̂k + 1 = Axk + Buk + G (yk − C x̂k )
µ ¶ µ ¶µ ¶ µ ¶ µ ¶
xk+1 A 0 xk B 0
= + uk + yref k
zk+1 C 1 zk 0 −1
½
xak+1¡ = Aa xak
¢ + Ba uk + ...
⇔
yk = C 0 xak
63
64 CHAPITRE 4. ANALYSE DES FONCTIONS DE SENSIBILITÉ
et minimisant le coût
Tf −1
1 X ¡ T ¢
J (u) = lim yk yk + uTk Rr uk
Tf →∞ 2
j=k
Tf −1
1 X ¡ T T ¢
= lim xk C Cxk + uTk Rr uk
Tf →∞ 2
j=k
⇒ Qr = C T C
est le grammien de commandabilité, définit positif, symétrique et est la solution unique de l’équation
de Lyapunov
Wc AT + AWc + BB T = Ẇc
On prendra alors dans le critère à minimiser le coût Qc = Wc−1
Preuve : Par définition
Z Tc
¡ ¢
V x (TC ) , Tc = min uT udt = xTT c WC−1 x
Tc Tc
u 0
est la somme des coûts d’énergie minimale de commande pour transférer l’état x(0) = 0 (imposé)
à l’état x(Tc ) quelconque sous la contrainte dx
dt = Ax + Bu.
Il s’agit d’un problème de commande optimale avec un état initial nul imposé. On peut se
ramener à un problème de commande optimale classique i.e., à état final imposé. Pour cela on pose
le changement de coordonnées temporelles t = -t’ et le critère se réécrit sous la forme
Z −T c
¡ ¢ 0
V x (−TC ) , −Tc = min − uT udt
u 0
Z 0
0
= min uT−t0 u−t0 dt
u Tc
= x−T c WC−1
T
x
−T c −T c
égal à la somme des coûts d’énergie minimale de commande pour transférer l’état x(Tc) quelconque
à l’état x(0) = 0 (imposé) sous la contrainte
dx ³ 0´ ³ 0´
0 = −Ax −t − Bu −t
dt
Résolution ³ 0
´
dV −t
Soit − dt0 = uT−t0 u−t0 l0 Eq HJB
³ 0´
Z 0 dV −t Z 0
0
⇔ − = uT−t0 u−t0 dt
Tc dt0 Tc
Z 0
0
⇔ V (x (−T c) , T c) = uT−t0 u−t0 dt + V (x (0) , 0)
Tc
dx ³ 0´ ³ 0´
0 = −Ax −t − Bu −t
dt
donne l’équation différentielle de Lyapunov
dWc
− = Wc AT + AT WC + BB T
dt0
avec Wc (t0 = 0) = 0.
On effectue le changement temporel inverse, qui donne le résultat final
dWc
= Wc AT + AT WC + BB T
dt
avec Wc (t = 0) = 0. CQFD
Explication
³ 0´
dV −t
− = uT−t0 u−t0
dt0
dxT−t0 Wc−1
−t0
x−t0
⇔− 0
= uT−t0 u−t0
dt
dWc−t0 −1 dxT0 −1 −1 dx−t0
⇔ xT−t0 Wc−1 0
Wc−t0 x−t0 − t0 Wct T
0 x−t0 − x−t0 Wc
0
= uT−t0 u−t0
−t0
dt dt −t0
dt
dWc 0
xT−t0 Wc−1 −1
dt0 Wc−t0 x−t
−t
0
⇔ −t0
= (−Ax−t0 − Bu−t0 ) W T −1 T −1 T
c−t0 x−t0 + x−t0 Wc−t0 (−Ax−t0 − Bu−t0 ) + u−t0 u−t0
dWc 0
xT−t0 Wc−1 −t
Wc−1 x−t0
⇔ ³ ´ dt0
−t0 −t0
= x 0 −A W 0 − W
T T −1 −1
A x−t0 − 2u 0 B T W −1 x−t0 + uT 0 u−t0
T
−t ct c−t0 −t c−t0 −t
³ ´¯
∂ −2uT−t0 B T Wc−1 x 0 + u
T
0 u−t0
¯
0 −t −t ¯
−t
¯ = −2B T Wc−1 x−t0 + 2u−t0 = 0
δu ¯ −t0
¯
u=u∗
⇔ u∗−t0 = B Wc−1
T
−t0
x−t0
dWc−t0 ³ ´
xT−t0 Wc−1 Wc−1 x−t 0 = x
T
−t 0 −A T
Wc
−1
− Wc
−1
A x−t0 − 2uT−t0 Wc−1 x−t0 + uT−t0 u−t0
−t0
dt0 −t 0 −t 0 −t 0 −t0
4.2. ANALYSE DE S ET T EN FONCTION DES HORIZONS DE COMMANDE ET D’OBSERVATION67
dWc−t0 ³ ´
−1
xT−t0 Wct 0 Wc−1 x−t 0 = x
T
−t 0 −A T
W −1
c−t0 − W −1
c−t0 A x−t0 − xT−t0 Wc−1 BB T Wc−1 x−t0
dt0 −t0 −t0 −t0
dWc−t0
⇔ = −Wc−t0 AT − AWc−t0 − BB T ∀x−t0 6= 0
dt0
On effectue le changement temporel inverse, qui donne le résultat final
dWct
= Wct AT + AWct + BB T
dt
t dt
τ= ⇒ dτ =
Tc Tc
on obtient dès lors
dx dx
= Ax + Bu ⇔ = Āx + B̄u
dt dτ
où Ā = Tc A et B̄ = Tc B.
t
• On veut sur le système normalisé i.e. τ = Tc
Z 1 Z 1
xT Qc xdτ = min uT udτ
0 u 0
hR i−1 h R i−1
1 T T T −1
où Qc = 0
eĀτ B̄ B̄ T eĀ τ
dτ = Tc 0 c eAt BB T eA t dt = (Tc W ) et Rc = Rr = I
L’horizon de commande pour le système normalisé est donc égal à 1 par construction.
Conclusion : On montre statistiquement que les pôles de la BF sont situés à gauche de la droite
− T1c , ce qui permet de fixer simplement la dynamique de la BF. Pour un horizon de commande
faible − T1c → −∞ les pôles sont rapides (dynamique rapide) et inversement pour un horizon de
commande grand − T1c → 0− le système en BF est lent. Par dualité, on procède de la même façon
pour l’observateur en utilisant le grammien d’observabilité.
Remarque : Pour une synthèse LQ à horizon infini³ avec pondération fréquentielle´ par les
R∞ T T
grammiens et normalisation en temps le critère J = 0 x (t) Qx (t) + u (t) u (t) dt où Qc =
W −1
¡ ¢ R Tc
Tc on retrouve J = V
x (TC ) , Tc → ∞ = minu 0 uT udt = xTT c WC−1 x .
Tc Tc
68 CHAPITRE 4. ANALYSE DES FONCTIONS DE SENSIBILITÉ
AT Wo + Wo A + C T C = Ẇ0
On prendra alors dans le critère à minimiser le coût Qo = Wo .
On utilisant le même raisonnement que précédemment, normalisation en temps et changement
de base, on prendra
" Z #−1
To
AT t T At −1
Qo = To e C Ce dt = (To Wo )
0
R0 = I
Rt
Preuve : On veut maxy V (x (t)) = 0 y T ydt = xTt0 W0 xt0 une énergie maximale des sorties. La
solution du pb est donnée en dérivant avec variation rétrograde du temps la fonction de Lyapunov
candidate V (x) = xTt W0 xt > 0 le long des trajectoires ẋ = AT x + C T y.
Conclusion : On montre statistiquement que les pôles de la BF de l’observateur sont situés à
gauche de la droite − T1o , ce qui permet de fixer simplement la dynamique de l’observateur. Pour
un horizon d’observation faible − T1o → −∞ les pôles sont rapides (dynamique rapide) et donc
l’estimé risque d’être sensible aux bruits (lesquels sont situés en haute fréquence) et inversement
pour un horizon d’observation grand − T1o → 0− l’observateur est lent. On s’assurera toujours que
la droite d’observation − T1o est à gauche de la droite de commande − T1c , ainsi la dynamique de
l’observateur est plus rapide que celle de la commande. Bien entendu (comme dans le cadre du
RST) l’horizon d’observation (de filtrage) permet de fixer le compromis robustesse/performance
(marge de module).
Chapitre 5
Commande LQ à pondérations
fréquentielles
5.1 Principe
On s’intéresse ici à modeler le transfert de boucle afin de répondre aux objectifs de perfor-
mance/robustesse. Pour ce faire on fait appel au théorème de Parseval, lequel permet de passer du
critère temporel au critère fréquentiel vice versa.
u (t ) u(t) y(t) y (t )
R -1/2
(s) Système : G(s) Q (s)
1/2
Théorème de Parseval :
Z T Z ∞³ ´
¡ T ¢ 1
lim y Qy + uT Ru dt ⇔ ∗
y(jw) Q(jw) y(jw) + u∗(jw) R(jw) u(jw) dw
T →∞ −T 2π −∞
¡ ¢∗ ¡ ¢T
où A(jw) = A(−jw) représente la transposée d’une matrice appartenant au corps C.
Les termes Q(jw) et R(jw) représentent des pondérations fréquentielles, lesquels sont fixés par le
designer pour répondre aux objectifs de performance/robustesse souhaité.
69
70 CHAPITRE 5. COMMANDE LQ À PONDÉRATIONS FRÉQUENTIELLES
5.2 Design
On montre que le problème de synthèse LQ à pondération fréquentielle, se ramène à un problème
de synthèse LQ temporel à pondération unitaire.
Preuve R∞ ³ ∗ ´
1 ∗
Le critère 2π −∞
y Q y
(jw) (jw) (jw) + u(jw) (jw) (jw) dw peut se réécrire sous la forme facto-
Q u
risée suivante Z ∞³ ´
1 ∗ ∗1/2 1/2 ∗1/2 1/2
y(jw) Q(jw) Q(jw) y(jw) + u∗(jw) R(jw) R(jw) u(jw) dw
2π −∞
1/2 1/2
on pose ȳ = Q(jw) y(jw) et ū = R(jw) u(jw) , on obtient dès lors le critère fréquentiel à pondération
unitaire suivant Z ∞³ ´
1 ∗
ȳ(jw) ȳ(jw) + ū∗(jw) ū(jw) dw
2π −∞
où d’après le théorème de Parseval le critère temporel à pondération unitaire suivant
Z ∞³ ´
T
ȳ(t) ȳ(t) + ūT(t) ū(t) dt
0
1/2 −1/2
avec ȳ(jw) la sortie du filtre
Q(jw) y(jw)
et u(jw) la sortie du filtre R(jw) ū(jw) .
Conclusion : La synthèse de commande LQ à pondération fréquentielle se ramène à un pro-
blème de synthèse de commande LQ à pondération unitaire sous la contrainte du système
ȳ (p) −1/2 1/2
Ḡ (p) = = R(p) G (p) Q(p) (5.1)
ū (p)
y(p)
où G (p) est le transfert du système originel u(p) et Ḡ (p) le transfert originel augmenté des pré-filtre
−1/2 1/2
et post-filtre, respectivement R(p) et Q(p) (voir figure 5.1). Bien-entendu les résultats de com-
mande optimale à synthèse LQ sont donnés sous la contrainte d’un système décrit par représentation
d’état, il reste donc à donner une représentation d’état du système (7.5). Laquelle se déduit des
−1/2 1/2
représentations d’états associées aux systèmes R(p) , G (p) et Q(p) , respectivement
½
−1/2 ẋR = A2 xR + B2 ū
R(p) : =
u = C2 x2 + D2 ū
½
ẋ1 = A1 x1 + B1 u
G (p) : =
y = C1 x1
½
1/2 ẋQ = A3 xQ + B3 y
Q(p) : =
ȳ = C3 xQ + D3 y
soit
ẋ = Ax + B ū
ȳ = Cx
£ ¤
avec xT = xT1 xTQ xTR l’état du système augmenté défini par les matrices A, B et C fonctions
de Ai , Bi , Ci , D2 et D3 , i = 1, 2, 3, le régulateur étant de la forme
ū = −Lx1 x1 − LxQ xQ − LxR xR
5.2. DESIGN 71
|R-1/2| |Q1/2|
kR kQ
1/τQ
1/τR w 1/10τQ w
kQ/10
µ ¶1/2
Q(p) 1 + τQ p kr
= kQ
R(p) 1 + 10τQ p 1 + τr p
−1/2
Rappel : R(p) permet une décroissance plus rapide hors de la bande passante et donc une amé-
1/2
lioration de la robustesse et Q(p) permet un accroissement de la pente dans la bande passante
(augmentation du gain en basse fréquence) et donc une amélioration des performances.
72 CHAPITRE 5. COMMANDE LQ À PONDÉRATIONS FRÉQUENTIELLES
5.3 Exemples
5.3.1 Cas académique
On considère le système
ẋ = x+u
y = x
WMIN=10^-2 ;
WMAX=10^2 ;
figure(1)
title(’Regulateur LQG sans ponderation’) ;
subplot(2,2,1), sigma(S1,{WMIN,WMAX}) ;
legend(’Sensitivity functions : S1’) ;
subplot(2,2,2), sigma(T1,{WMIN,WMAX}) ;
legend(’Complementary sensitivity functions : T1’) ;
subplot(2,2,3), sigma(series(G,S1),{WMIN,WMAX}) ;
legend(’Plant*sensitivity’) ;
subplot(2,2,4), sigma(series(K_,S1),{WMIN,WMAX}) ;
legend(’Controler*sensitivity’) ;
Voir figure(5.3).
2) Donner la solution du probleme de synthèse du regulateur 2 et preciser la fonction de sensibilité
S et la fonction complementaire T.
ȳ(s)
Sachant que ū(s) = G(s) 1s , ū = −K̄ (s) y (s), il nous faut déterminer K̄(s). Or
· ¸
dx̂a /dt = Āx̂a + B̄u + KO (ȳ − C̄ x̂a )
u = −Kr x̂a
où x̂a est l’estimé de xa , xa l’état du système augmenté, Ā, B̄, C̄ les matrices du système augmenté
¡ ¢−1
des filtres R−1/2 (s) et Q1/2 (s) . Soit le transfert frequentiel K̄ (s) = Kr sI − Ā + B̄Kr + Ko C̄ Ko .
Sous matlab le problème se reduit aux étapes suivantes :
%Procédé
G=tf([-3.434 244.3 -1.021e4 1.753e5], [1 2.411 1260 1296 1.647e5]) ;
[numG,denG]=tfdata(G,’v’) ;
%Systeme augmenté
k=1 ; %permet de jouer sur la Bande Passante
GI=tf([k],[1 0]) ; %integrateur
Ga=series(G,GI) ; %système augmenté
[numG,denG]=tfdata(G,’v’) ;
[A,B,C,D]=tf2ss(numG,denG) ;
[numGI,denGI]=tfdata(GI,’v’) ;
% Representation d’état du sys augmenté Ga
[AGI,BGI,CGI,DGI]=tf2ss(numGI,denGI) ;
Aa=[A zeros(size(A,1),size(AGI,2)) ;BGI*C AGI] ;
Ba=[B ;zeros(size(AGI,1),1)] ;
Ca=[DGI*C CGI] ;
Da=0 ;
%regulateur et obs synthetisé sur le sys aug
[KcR2,Sc2,Ec2]=lqr(Aa,Ba,Ca’*Ca,1) ; %regulateur ou [KcR2,Sc2,Ec2]=lqr(Aa,Ba,Ca’*Ca,alpha*Id_dim_u)
%alpha fixe la dynamique du controleur
[KoR2,So2,Eo2]=lqr(Aa’,Ca’,Ba*Ba’,1) ; %Observateur ou [KoR2,So2,Eo2]=lqr(Aa’,Ca’,Ba*Ba’,beta*Id_dim
%beta fixe la dynamique de l’observateur
5.3. EXEMPLES 75
%Id est l’identité, dim_u est le nombre d’actionneurs, dim_y est le nombre de mesures
KoR2=KoR2’ ;
[Ar2,Br2,Cr2,Dr2] = reg(Aa,Ba,Ca,Da,KcR2,KoR2) ; %Kbar
[numK3,denK3]=ss2tf(Ar2,Br2,Cr2,Dr2) ;
K3=tf(numK3,denK3) ;
%regulateur augmenté
K3a=series(K3,GI) ; %Correcteur augmenté de l’integrateur
S3=feedback(1,series(K3a,G)) ;
T3=feedback(series(K3a,G),1) ;
[MAG,PHASE] = bode(S3) ;
ModuleMargeS3=inv(max(MAG))
%Tracés
figure(3)
subplot(2,2,1), sigma(S3,{WMIN,WMAX}) ;
legend(’Sensitivity functions : S3’) ;
subplot(2,2,2), sigma(T3,{WMIN,WMAX}) ;
legend(’Complementary sensitivity functions : T3’) ;
subplot(2,2,3), sigma(series(G,S3),{WMIN,WMAX}) ;
legend(’Plant*sensitivity : G*S3’) ;
subplot(2,2,4), sigma(series(K3a,S3),{WMIN,WMAX}) ;
legend(’Controler*sensitivity :=K3a*S3’) ;
Voir figure(5.4).
2bis) Dans l’hypothèse où l’on souhaite diminuer l’ordre du filtre, l’obsevateur peut être synthétisé
à partir du procédé G et non à partir du système augmenté. Dans ce cas, pour y (s) =
G (s) ū (s) , ȳ (s) = 1s y (s) , ū (s) = u (s) et·ū (s)¸= −K̄ (s) ȳ (s), on recherche K̄ (s) avec
x̂
dx̂/dt = Ax̂ + B ū + KO (y − C x̂), u = −Kr = −Kr1 x̂ − Kr2 ya , et ẏa = y on obtient
ya
dx̂/dt = Ax̂ − BKr1 x̂ − BKr2 ya + KO (y − C x̂), soit sous forme matricielle
[numK1,denK1]=ss2tf(A-B*Kc1-Ko*C,Ko,Kc1,0) ;
K1=tf(numK1,denK1) ;
[numK2,denK2]=ss2tf(A-B*Kc1-Ko*C,B*Kc2,-Kc1,0) ;
K2=tf(numK2,denK2) ;
K12=parallel(K1,series(K2,GI)) ; %GI=1/s
K123=parallel(K12,series(Kc2,GI))
[numK123,denK123] = tfdata(K123,’v’) ;
Voir figure(5.5).
On constate sur les figures ci-après que la commande LQG à pondérations fréquentielles offrent
de nombreux avantages, outre la simplicité de mise en oeuvre, on observe un compromis Perfor-
mance.Robustesse remarquable.
10 0
Singular Values (dB)
−60
−10
−80
−20 −100
−2 0 2 −2 0 2
10 10 10 10 10 10
Frequency (rad/sec) Frequency (rad/sec)
10 0
Singular Values (dB)
0
−20
−10
Plant*sensitivity −40
−20
Controler*sensitivity
−30 −60
−2 0 2 −2 0 2
10 10 10 10 10 10
Frequency (rad/sec) Frequency (rad/sec)
20 0
Singular Values (dB)
−20 −100
−40 −150
−2 0 2 −2 0 2
10 10 10 10 10 10
Frequency (rad/sec) Frequency (rad/sec)
−20
20
−40
0
−60
−20
−80
−40 −100
−2 0 2 −2 0 2
10 10 10 10 10 10
Frequency (rad/sec) Frequency (rad/sec)
Fig. 5.4 – Tracés de S,T, SG,SK avec regulateur 2 et observateur synthetisé sur le système augmenté
78 CHAPITRE 5. COMMANDE LQ À PONDÉRATIONS FRÉQUENTIELLES
−40 −80
−2 0 2 −2 0 2
10 10 10 10 10 10
Frequency (rad/sec) Frequency (rad/sec)
20
−20
0
−40
−20
−40 −60
−2 0 2 −2 0 2
10 10 10 10 10 10
Frequency (rad/sec) Frequency (rad/sec)
Fig. 5.5 – Tracés de S,T, SG,SK avec regulateur 2 et observateur synthetisé sur le système non
augmenté
5.3. EXEMPLES 79
transfert de boucle
40
−.−. : K123*G
r: K3a*G
20 −: K1*G
0
Singular Values (dB)
−20
−40
−60
−80
−100
−120
−2 −1 0 1 2
10 10 10 10 10
Frequency (rad/sec)
bode du procede
40
20
Magnitude (dB)
−20
−40
−60
720
540
Phase (deg)
360
180
0
−3 −2 −1 0 1 2 3
10 10 10 10 10 10 10
Frequency (rad/sec)
100
−.−. : K123
50 r: K3a
Magnitude (dB)
−: K1
0
−50
−100
−150
360
180
Phase (deg)
−180
−360
−3 −2 −1 0 1 2 3
10 10 10 10 10 10 10
Frequency (rad/sec)
Conclusion
Pour conclure cette partie du cours, on propose de souligner les différents degrés de liberté à la
disposition de l’ingénieur qui souhaite mettre en œuvre une commande modale ou optimale.
– La synthèse de la commande laisse le choix des valeurs propres du système bouclé (approche
modale) ou des matrices de pondération du critère (approche optimale). Dans les 2 cas on peut
ainsi régler la dynamique du système bouclé compte tenu des contraintes antagonistes : obtenir
une dynamique stable et plus rapide qu’en boucle ouverte tout en évitant des commandes trop
fortes.
– Dans le cas d’une commande optimale on choisira de préférence un horizon infini lorsque le
système est invariant (A, B, C constantes) ce qui rend la commande elle même invariante.
– Lorsque l’état n’est pas entièrement accessible à la mesure, le choix de l’observateur s’appuie
sur différentes considérations : si le système est bruité, le filtre de Kalman s’impose sans
discussion (évite contrairement au filtre passe bas une dégradation de la phase, rapprochement
du pt critique -1). En général, le spectre des bruits est suffisamment large devant la bande
passante du système pour qu’on puisse le supposer blanc. Enfin si les variances des bruits sont
mal connues, on peut les considérer comme des matrices de pondération qui correspondent
donc à des degrés de liberté pour le calcul du filtre.
– La stabilité du filtre de Kalman impose que le système soit stabilisable «paire(A,Q1/2 ) stabi-
lisable» par le bruit d’état. Il peut arriver que cette condition ne soit pas remplie lorsque le
bruit n’affecte pas toutes les composantes de l’état et à fortiori sur une perturbation modélisée
par un système à valeurs propres instables. En utilisant la remarque précédente, on peut alors
introduire pour le calcul du filtre un bruit fictif qui rend le système stabilisable «paire(A,Q1/2 )
stabilisable».
– Lorsque le système n’est pas bruité (approche déterministe), l’utilisation d’un observateur
d’ordre réduit (observateur général de Luenberger par exemple) s’impose afin de réduire le
degré «volume» du correcteur. L’observateur est alors déterminé par l’approche modale.
– Enfin il reste à choisir entre l’approche continue et l’approche discrète du problème. Car
en effet le procédé à commander est en général analogique tandis que la réalisation de la
commande est grandement simplifiée par l’utilisation d’un calculateur dès que le nombre de
variables dépasse quelques unités, particulièrement lorsqu’un observateur est nécessaire. Le
système bouclé est alors hybride, le procédé étant analogique et la commande numérique.
Deux approches symétriques sont donc envisageables :
83
84 CHAPITRE 6. CONCLUSION
qj δ2
qj δx2j = qk δx2k ⇔ = x2k
qk δxj
On procède de la même façon vis à vis des commandes. Le critère J se réduit alors à l’expression
Z n m
1 X X
J= α qi x2i + β ri u2j dt
2 i=1 j=1
On peut alors fixer le quotient α/β qui traduit l’importance relative des 2 termes du critère et
permet de régler la dynamique du système bouclé.
Chapitre 7
Résumé
85
86 CHAPITRE 7. RÉSUMÉ
u∗k = −Lk xk
initialisées par PTf = QTf . Le minimum du critère est alors donné par la relation suivante
1 T
min J (u) = x P0 x 0
u 2 0
où P0 est déterminée par la récurrence précédente.
♥ Horizon infini
Problème : Déterminer
∞
1 X£ T ¤
min J (u) = xk Qxk + uTk Ruk
u 2
k=0
- Pk+1 = Pk = P admet une limite constante semi-definie positive, laquelle est solution de l’équation
algébrique de Ricatti suivante :
¡ ¢−1 T
P = Q + AT P A − AT P B R + B T P B B PA
7.1. REGULATEUR LQ : CAS DISCRET 87
AT P + P A − P BR−1 B T P + Q = 0
Nous posons
Fc (s) = I + Lc (s) = Su−1
−1
G (s) = C (sI − A) B
où Fc (s) représente l’inverse de la fonction de sensibilité.
On peut montrer qu’une commande LQ (sans l’observateur) permet d’affirmer dans le cas mo-
novariable (ou pour R = αI; α ∈ R+ ) que
marge de module ≥ 1
marge de gain ∞
marge de phase ≥ 60˚
Remarque 5 Il importe cependant de préciser que ces excellentes propriétés de robustesse concernent
uniquement les commandes par retour d’état. Généralement pour les commandes LQ par retour
d’état estimé, ces propriétés sont perdues. Une solution existe cependant en appliquant pour cela
une commande LQG/LTR (voir chapitre 3).
7.4. PROPRIÉTÉS DE ROBUSTESSE 91
Cas discret
Cas général : Trouver u*(x, k) qui maximise l’Hamiltonien
¡ ¢ ¡ ¢
Hk+1 = −L x, u, k + λTk+1 F x, u, k (7.3)
¡ ¢
où xk+1 = F x, u, k .
δ2 H
avec la condition au second ordre : δu2 <0
92 CHAPITRE 7. RÉSUMÉ
δ 2 Hk+1
avec la condition au second ordre : δu2k
<0
1. Pour Tf → ∞ (t1 non specifié), u = u∗ , λ = λ∗ , x = x∗ l’Hamiltonien associé est nul pour
tous t. ¡ ¢
H x∗ , u∗ , λ∗ = 0, Tf → ∞
2. Si on souhaite aller du point x (t = 0) = x0 au point x = x1 sans specificier le temps
t1 ¡d’atteinte de ce¢ point, il est necessaire d’assurer pour u = u∗ , λ = λ∗ , x = x∗ que
H x ∗ , u∗ , λ ∗ = 0
3. Si on souhaite aller du point x (t = 0) = x0 au point
¡ x (t = t1 ) =¢ x1 où t1 est specificié on
peut montrer pour u = u∗ , λ = λ∗ , x = x∗ que H x∗ , u∗ , λ∗ = Cte.
7.5. POURSUITE OPTIMALE 93
ẋ = Ax + Bu
y = Cx
² = yref − y
où yref est la référence à suivre définie sur [0, Tf ] (de différente nature : constante, exponentielle,
trajectoire cible. . .).
– Le cas où yref = 0 correspond à un problème de régulation (étudié dans les sections précé-
dentes)
– Le cas yref quelconque à un problème de poursuite.
L = R−1 B T P
0 = Q + AT P + P A − P BR−1 B T P
0 = (A − BL) x + Bhvref
y = Cx
³ ´−1
−1
En conclusion y (∞) → vref (∞) si h = − C (A − BL) B .
94 CHAPITRE 7. RÉSUMÉ
¡ ¢ 1¡ T ¢
−V̇ ² (t) , t = ²t Q²t + uTt Rt ut
2
1 T T 1 1 T
= xt C QCxt + uTt Rut − yref
T
QCxt + yref Qyref
|2 {z 2 } | {z } |2 {z }
coût état + commande coût de suivie coût final
7.6 Observateur LQ
7.6.1 Cas déterministe
On propose la structure suivante :
A → AT
B → CT
L → GT
−Ṗ → Ṁ
M = MT > 0
96 CHAPITRE 7. RÉSUMÉ
ẋ = Ax + Bu + w
y = Cx + v
T
min J (w) = (xt0 − x̂t0 ) S −1 (xt0 − x̂t0 )
w
Z µ ³ ´T ³ ´¶
1 t
(y − ŷ) R−1 (y − ŷ) + x̂˙ − Ax̂ − Bu Q−1 x̂˙ − Ax̂ − Bu
T
+ dτ
2 t0
Z tµ ³ ´T ³ ´¶
1 T −1 ˙ −1 ˙
min J (w) = lim (y − ŷ) R (y − ŷ) + x̂ − Ax̂ − Bu Q x̂ − Ax̂ − Bu dτ
w t0 →−∞ 2 t0
| {z }
coût immédiat t + coût intermédiaire t à t0
Pf AT + APf − Pf C T V −1 CPf + HW H T = 0
u = −Kc x̂
avec
Kc = R−1 B T Pc
Pc A + A Pc − Pc BR−1 B T Pc + N T QN = 0
T
Conclusion La synthèse LQG donne un correcteur K (s) reliant y (s) à u (s) fonction de la
commande LQ et du filtre, i.e.
−1
K (s) = −Kc (sI − A + BKc + Kf C) Kf
On peut montrer que les proprietés de robustesse d’une commande LQG présentent des pro-
priétés de robustesse très médiocres contrairement à la commande LQ. Afin de retrouver les
excellentes propriétés de robustesse de la commande LQ, nous proposons la commande robuste
LQG/LTR. Laquelle à pour but de rapprocher le transfert de boucle K (s) G (s) au transfert de
−1
boucle Kc (sI − A) B.
98 CHAPITRE 7. RÉSUMÉ
W = W0 + qBB T , V = V0
jusqu’à ce que le transfert de boucle LLQG (s) = K (s) G (s) du correcteur LQG recouvre, sur
une bande de fréquence suffisamment large, le transfert de boucle de retour d’état LLQ (s) =
−1
Kc (sI − A) B.
7.9. COMMANDE LQ À PONDÉRATIONS FRÉQUENTIELLES 99
Les termes Q(jw) et R(jw) représentent des pondérations fréquentielles, lesquels sont fixés par
le designer pour répondre aux objectifs de performance/robustesse souhaité. On montre par appli-
cation du theoreme de Parseval que la synthèse de commande LQ à pondération fréquentielle se
ramène à un problème de synthèse de commande LQ à pondération unitaire sous la contrainte du
système
ȳ (p) −1/2 1/2
Ḡ (p) = = R(p) G (p) Q(p) (7.5)
ū (p)
y(p)
où G (p) est le transfert du système originel u(p) et Ḡ (p) le transfert originel augmenté des pré-
−1/2 1/2
filtre et post-filtre, respectivement R(p) et Q(p) Bien-entendu les résultats de commande optimale
à synthèse LQ sont donnés sous la contrainte d’un système décrit par la représentation d’état du
−1/2 1/2
système augmenté des filtres R(p) et Q(p) , i.e.,
½
−1/2 ẋR = A2 xR + B2 ū
R(p) : =
u = C2 x2 + D2 ū
½
ẋ1 = A1 x1 + B1 u
G (p) : =
y = C1 x1
½
1/2 ẋQ = A3 xQ + B3 y
Q(p) : =
ȳ = C3 xQ + D3 y
soit
ẋ = Ax + B ū
ȳ = Cx
£ ¤
avec xT = xT1 xTQ xTR l’état du système augmenté. Le régulateur est alors de la forme
[1] P.Borne et al, "Commande et optimisation des processus", éditions Technip, 1990.
[2] Enid R. Pinch, "Optimal Control and the calculus of Variations", Oxford Science publications,
1993.
[3] K. Najim et G. Muratet, «Optimisation de la commande en génie des procédé», editions Masson,
1987.
[4] J.M Dion et D. Popescu, "Commande optimale : conception optimisée des systèmes" Diderot
Editeur, Arts et Sciences, 1996.
[5] J.P Babary et W. Pelczewski, "Commande optimale des systèmes continus déterministes" Edi-
tions Masson, 1985.
101