Vous êtes sur la page 1sur 109

Optimisation de la commande

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

1.3 Horizon fini et infini . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.3.1 Cas discret . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3


1.3.2 Synthèse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.3.3 Exercice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.3.4 Cas continu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.3.5 Exercice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.4 Stabilité au sens de Lyapunov . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.4.1 Cas continu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.4.2 Cas discret . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.5 Propriétés de Robustesse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.6 Commande optimale par maximisation de l’Hamiltonien (i.e. PMP) . . . . . . . . . . 24
1.6.1 Résultat fondamental : maximisation de l’Hamiltonien . . . . . . . . . . . . . 26
1.7 Exemples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

1.7.1 Véhicule à essence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31


1.7.2 Pédalo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
1.7.3 Gestion de stock : exemple1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
1.7.4 Gestion de stock : exemple2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
1.8 Poursuite optimale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
1.8.1 Problème de poursuite à horizon infini : yref = cte 6= 0. . . . . . . . . . . . . 34
1.8.2 Problème de poursuite à horizon fini : yref non cte . . . . . . . . . . . . . . . 37

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

2.2.2 Etude selon la minimisation de la variance de l’erreur d’estimation . . . . . . 51


2.2.3 Etude selon le principe d’optimalité de Bellman : cas discret . . . . . . . . . . 52
2.2.4 Etude selon la minimisation de la variance de l’erreur d’estimation . . . . . . 52

3 Méthode Linéaire Quadratique Gaussienne (LQG) 55


3.1 Principe de la synthèse LQG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.2 Méthode LQG/LTR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
3.2.1 Recouvrement asymptotique à l’entrée . . . . . . . . . . . . . . . . . . . . . . 61
3.3 Passage d’un régulateur sous forme de représentation d’état au RST . . . . . . . . . 62

4 Analyse des fonctions de sensibilité 63


4.1 Analyse de S et T en fonction des coûts de pondération . . . . . . . . . . . . . . . . 63
4.2 Analyse de S et T en fonction des horizons de commande et d’observation . . . . . . 64
4.2.1 Grammien de commandabilité . . . . . . . . . . . . . . . . . . . . . . . . . . 64
4.2.2 Normalisation du système par la commandabilité . . . . . . . . . . . . . . . . 67
4.2.3 Grammien d’observabilité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

5 Commande LQ à pondérations fréquentielles 69


5.1 Principe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
5.2 Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
5.3 Exemples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
5.3.1 Cas académique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
5.3.2 Transmission élastique composée de 3 poulies . . . . . . . . . . . . . . . . . . 72
5.3.3 Elements de reponses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

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

7.7 Méthode Linéaire Quadratique Gaussienne (LQG) . . . . . . . . . . . . . . . . . . . 97


7.8 Méthode LQG/LTR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
7.8.1 Recouvrement asymptotique à l’entrée . . . . . . . . . . . . . . . . . . . . . . 98
7.9 Commande LQ à pondérations fréquentielles . . . . . . . . . . . . . . . . . . . . . . . 99
Preface

Ce cours s’adresse aux étudiants de l’Institut National Polytechnique de Grenoble (INPG) et


plus précisément aux étudiants de 4ème année de l’Ecole Supérieure d’Ingénieurs des Systèmes
industriels Avancés Rhône-alpes (ESISAR).
En 3ème année, nous avons montré que sous certaines conditions, un système linéaire peut être
stabilisé par une commande linéaire, et que les valeurs propres du système bouclé peuvent être
arbitrairement choisies. Toutefois l’approche passée (i.e., la commande modale) ne permet pas de
fixer de manière indiscutable la dynamique qu’il est souhaitable de conférer au système bouclé.
Dans la pratique, celle-ci est nécessairement limitée par les amplitudes maximales que peuvent
supporter les actionneurs. La recherche de la commande doit ainsi s’accommoder d’un compromis
qui tienne compte de cette contrainte. De là découle naturellement l’idée de formuler le problème
en terme d’optimisation d’un critère qui traduise ce compromis sur le plan mathématique.
L’utilisation de critères quadratiques temporels ou fréquentiels est présentée. Lesquels per-
mettent de formuler de manière originale le compromis perfomance/robustesse et de conférer à
la commande une évolution optimale au sens du critère fixé. Les formulations continue et discrète
sont traitées. Nous présentons le principe de Bellman, la résolution des problèmes de commande par
résolution de l’équation de Hamilton Jacobi Bellman et par Maximisation de l’Hamiltonien (i.e.,
principe de Pontryaguine). Différents exemples illustrent nos propos.

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.

Solution : Optimiser un critère de performance de type énergétique (en référence à l’énergie


mise en jeu dans le système) sous la contrainte de la dynamique du système.

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

Critère de commande en temps minimum


Trouver la commande u fonction de l’état x qui minimise
Z Tf
J = tf − t0 = 1 dt
t0

sous la contrainte de la dynamique du système (1).

Critère de commande avec non saturation de la commande


Il s’agit de trouver la commande permettant de faire évoluer le système (1) de l’état x0 , fixé à
RT
t0 = 0 à l’état final xTf = 0 à l’instant Tf fixé en minimisant J = t0f |u| dt sous les contraintes de
l’actionneur |u| ≤ 1 et de la dynamique du système (1).

Critère de commande à temps minimum et avec non saturation de la


commande
Il s’agit de trouver la commande permettant de faire évoluer le système (1) de l’état x0 (fixé à t0
RT
= 0) à l’état final xTf = 0 (à l’instant Tf non fixé) en minimisant J = t0f 1 dt sous les contraintes
de l’actionneur |u| ≤ 1 ⇔ u2 − 1 ≤ 0 et de la dynamique du système (1).

Critère de commande pour un suivi de trajectoire


On considère la fonction de transfert YU (p)
(p) 1
= 1+p du premier ordre dont une des représentations
d’état possible est ½
ẋ = −x + u
y=x
RT 2
Problème : Déterminer la commande à appliquer au procédé telle que le critère J = t0f (x (t) − r (t)) dt
soit minimal.
−t
Données : x(t) est l’état interne du système, il correspond à la sortie du procédé et r (t) = t2 e 2
est la référence à suivre.
Chapitre 1

Commande LQ

1.1 Principe d’optimalité de Bellman

Les 2 principes suivants sont équivalents :

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.

1.2 Application : recherche du chemin à coût minimal

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

Fig. 1.1 – schéma du réseau

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

Fig. 1.2 – Chemin à coût optimal

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.

1.3 Horizon fini et infini

1.3.1 Cas discret


Si x(k) est un point intermédiaire de la trajectoire optimale allant de x(k0 ) à x(Tf ), la portion
terminale x(k) à x(Tf ) de cette trajectoire est optimale (voir figure 1.3).
D’après le principe de Bellman, la portion de la trajectoire x(k) à x(Tf ) décrite par le système

xk+1 = f (xk , uk )

est optimal au sens du critère partiel suivant :


Tf −1
1 X £ T ¤ 1
min J (u) = J (x (k) , k) = xj Qj xj + uTj Rj uj + xTTf PTf xTf
u 2 2
j=k
4 CHAPITRE 1. COMMANDE LQ

x(Tf)

x(k)

x(k0)

Fig. 1.3 – Trajet optimal


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

Fig. 1.4 – Trajectoire finale

sous la contrainte de la dynamique du système (2).


On part du pt final x(Tf ) connu au point précédent x(Tf − 1) (voir figure 1.4). La dernière
trajectoire à minimiser est alors donnée par le coût suivant :

min J (u) = J (x (Tf − 1) , Tf − 1)


u
1h T i 1
= xTf −1 QTf −1 xTf −1 + uTTf −1 RTf −1 uTf −1 + xTTf PTf xTf
2 2
h i
où 12 xTTf −1 QTf −1 xTf −1 + uTTf −1 RTf −1 uTf −1 est le coût immédiat et 12 xTTf PTf xTf le coût final
donné par le designer (en fonction des objectifs).
Solution du problème
Algorithme
1. On dérive J (x (Tf − 1) , Tf − 1) par rapport à u(Tf − 1) i.e.,

∂J (x (Tf − 1) , Tf − 1)
∂u (Tf − 1)

Rappel :

∂xT A
= A
∂x
T
∂x Ax ¡ ¢
= A + AT x
∂x

2. On annule la dérivée, la solution est la commande optimale u* i.e.,


¯
∂J (x (Tf − 1) , Tf − 1) ¯¯
¯ =0
∂u (Tf − 1) u=u∗

3. On vérifie que la solution u* minimise J, i.e.

∂ 2 J (x (Tf − 1) , Tf − 1)
>0
∂u2Tf −1
6 CHAPITRE 1. COMMANDE LQ

min

x*

Fig. 1.5 – Minimum local

4. On remplace la solution u* dans le critère partiel J (x (Tf − 1) , Tf − 1) et l’on identifie l’équa-


tion obtenue au coût minimal désiré, pour obtenir finalement l’EARD. i.e,
³ ´ 1
J x (Tf − 1) , u∗Tf −1 , Tf − 1 = xTTf −1 PTf −1 xTf −1
2

Les étapes 1, 2 et 3 sont l’extension de la recherche du minimum d’une fonction scalaire f (x).

Analogie avec la recherche du minimum d’une fonction scalaire

Hypothèse f est de classe C2 . Si x∗ est un minimum local de la fonction f alors

f (x∗ + h) − f (x∗ ) ≥ 0 (1.1)

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

Preuve : Un DL à l’ordre 2 de la fonction f (x∗ + h) autour de x∗ donne :

∂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)

Étape 1 : On dérive J par rapport à u


³ h i ´
∂J (x (Tf − 1) , Tf − 1) ∂J 21 xTTf −1 QTf −1 xTf −1 + uTTf −1 RTf −1 uTf −1 + 21 xTTf PTf xTf
=
∂u (Tf − 1) ∂u (Tf − 1)
 h i 
1 T T
x Q x
T −1 Tf −1 + u R u
T −1 Tf −1
∂J  ³2 Tf −1 f ´ Tf ¡−1 f ¢ 
1 T T T T
+ 2 xTf −1 A + uTf −1 B PTf BuTf −1 + AxTf −1
=
∂u (Tf − 1)
 h i 
1 T T
2 xTf −1 QTf −1 xTf −1 + uTf −1 RTf −1 uTf −1
 
∂J  +xTT −1 AT PTf BuTf −1 + 1 xTT −1 AT PTf AxTf −1 
f 2 f
+ 21 uTTf −1 B T PTf BuTf −1
=
∂u (Tf − 1)

Or J est scalaire, sachant que pour un scalaire k, on a : k = k T , on obtient :


∂J (x (Tf − 1) , Tf − 1)
∂u (Tf − 1)
 h i 
1 T T
2 x T −1 QT f −1 x T f −1 + uT −1 RT f −1 uT f −1
 f f

∂  + 1 xTT −1 AT PTf AxT f −1 + uTT −1 B T PTf AxT f −1 
2 f f
+ 21 uTTf −1 B T PTf BuT f −1
=
∂u (Tf − 1)
¡ ¢
= RTf −1 + B PTf B uT f −1 + B T PTf AxT f −1
T

Rappel R = RT , P = P T et Q = QT .

Étape 2 :On annule la dérivée


¯
∂J (x (Tf − 1) , Tf − 1) ¯¯
¯ =0
∂u (Tf − 1) u=u∗
8 CHAPITRE 1. COMMANDE LQ
¡ ¢
soit RTf −1 + B T PTf B u∗T f −1 +B T PTf AxT f −1 = 0 et sous réserve RTf −1 +B T PTf B soit inversible,
on obtient la commande
¡ ¢−1 T
u∗T f −1 = − RTf −1 + B T PTf B B PTf AxT f −1

Laquelle est une commande linéaire fonction de l’état


u∗T f −1 = −LTf −1 xT f −1
¡ ¢−1 T
où LTf −1 = RTf −1 + B T PTf B B PTf A.

Étape 3 : On s’assure qu’il s’agit bien d’un minimum


∂ 2 J (x (Tf − 1) , Tf − 1)
>0
∂u2Tf −1

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.

Étape 4 : On remplace la solution u∗ dans le critère partiel J (x (Tf − 1) , Tf − 1) et l’on identifie


l’équation obtenue au coût minimal désirée, i.e,
³ ´ 1
J x (Tf − 1) , u∗Tf −1 , Tf − 1 = xTTf −1 PTf −1 xTf −1
2

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

PTf −1 = QTf −1 + AT PTf A − LTTf −1 B T PTf A


¡ ¢−1 T
⇔ PTf −1 = QTf −1 + AT PTf A − AT PTf B RTf −1 + B T PTf B B PTf A
1.3. HORIZON FINI ET INFINI 9

Cette équation est dite équation à temps rétrograde et est déterminée hors ligne, i.e.,

QTf → PTf → PTf −1 → LTf −1 → uTf −1 → PTf −2 → LTf −2 → uTf −2 → ...


à t = Tf

 PTf = QTf
¡ ¢−1 T
LTf −1 = RTf −1 + B T PTf B B PTf A

PTf −1 = QTf −1 + AT PTf A − LTTf −1 B T PTf A
à t = Tf −1
( ¡ ¢−1 T
LTf −2 = RTf −2 + B T PTf −1 B B PTf −1 A
¡ ¢−1 T
PTf −2 = QTf −2 + A PTf −1 A − A PTf −1 B RTf −2 + B T PTf −1 B
T T
B PTf −1 A
etc. . .
L’équation algébrique de Riccati discrète est une récurrence qui ne fait intervenir que des opéra-
tions matricielles élémentaires (la matrice à inverser dans l’expression de L est de dimension réduite,
égale au nombre de commande).

Résultat fondamental
De l’étude précédente on peut etablir le résultat suivant.

Problème général : Trouver u∗ (t, x) telle que le critère :


Tf −1
X ¡ ¢
J (u0 , u1 , ...uT f −1 ) = L (xk , uk , k) + LTf xTf , Tf
k=0
sous la contrainte xk+1 = F (xk , uk , k) soit minimal.

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

V (x (t) , t) = min {L (xt , ut , t) + V (x (t + 1) , t + 1)} (1.2)


u
= min {L (xt , ut , t) + V (F (xt , ut , t) , t + 1)}
u

où L (xt , ut , t) est le coût immédiat à minimiser et V (F (xt , ut , t) , t + 1) le coût précédent optimisé.


PTf
De ce fait V (x (k) , k) = t=k Lt (xt , ut , t) représente bien la somme de l’ensemble des coûts inter-
médiaires de la trajectoire optimale.
La solution du pb optimal au sens de Bellman est alors donnée par

u∗ = arg min {L (xt , ut , t) + V (F (xt , ut , t) , t + 1)}


u
i.e., rechercher la commande optimale u telle que
( ∂V (x(t), t) ¯¯
∂u ¯
u=u∗
∂ 2 V (x(t), t)
∂u2 >0
10 CHAPITRE 1. COMMANDE LQ

où V (x (t) , t) est donnée par (1.2).

Rappel : x∗ = arg minx f représente le minimum de la fonction f (voir figure 1.5).

Application : On considère le système (2) où le coût à minimiser est :


Tf −1
1 X £ T ¤ 1
J (u) = xj Qj xj + uTj Rj uj + xTTf PTf xTf (1.3)
2 2
j=k

Problème : Déterminer une fonctionnelle V (x (Tf − 1) , Tf − 1) solution de l’équation aux diffé-


rences
© ¡ ¢ ª
V (x (Tf − 1) , Tf − 1) = L xTf −1 , uTf −1 , Tf − 1 + V (x (Tf ) , Tf )
Résolution : On propose d’après (1.3) la fonctionnelle V (x (Tf − 1) , Tf − 1) = 12 xTTf −1 PTf −1 xTf −1 ,
d’où l’équation aux différences suivante

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

Conclusion : La commande optimale est une fonction linéaire de l’état

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

sous la contrainte du système


xk+1 = Ak xk + Bk uk
yk = Ck xk
où Qk = QTk ≥ 0, Rk = RkT > 0, PTf = QTf ≥ 0 sont des matrices connues données par le designer.
Solution : La commande solution du problème posée est

u∗k = −Lk xk

où Lk est solution des récurrences à temps rétrogrades suivantes


¡ ¢−1 T
Lk = Rk + BkT Pk+1 Bk Bk Pk+1 Ak
¡ ¢−1 T
Pk = Qk + ATk Pk+1 Ak − ATk Pk+1 Bk Rk + BkT Pk+1 Bk Bk Pk+1 Ak
= Qk + ATk Pk+1 Ak − ATk Pk+1 Bk Lk
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.

♥ Régulateur LQ invariant à Horizon infini

Problème : Déterminer

1 X£ T ¤
min J (u) = xk Qxk + uTk Ruk
u 2
k=0

sous la contrainte du système stationnaire (A, B et C sont constantes)

xk+1 = Axk + Buk


yk = Cxk

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

Théorème 1 Si le système (2) est stabilisable, alors

- 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

- la commande optimale est donnée par :


u∗k = −Lxk
où ¡ ¢−1 T
L = R + BT P B B PA
- et le coût optimal est :
1 T
min J (u) =
x P0 x 0
u 2 0
¡ ¢
Théorème 2 Si le système (2) est stabilisable et le couple A, Q1/2 détectable alors

- P est l’unique solution semi-definie positive de l’équation algébrique de Ricatti :


¡ ¢−1 T
P = Q + AT P A − AT P B R + B T P B B PA

- le système bouclé est asymptotiquement stable


¡ ¢
- si de plus A, Q1/2 est observable alors P est definie positive.

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

1) Avec Tf = 3 et PTf = 1, montrer respectivement pour R = 1, R = 10 et R = 1000 l’influence de


la pondération R sur les pôles de la BF.
2) Avec Tf = 3 et R = 1, montrer respectivement pour PTf = 0.1, PTf = 10 et PTf = 1000
l’influence du poids final. Déterminer x3 fonction de L0 , L1 , L¡2 et x0 ¢
3) Reprendre la question 1 pour Tf → ∞ i.e. à horizon infini PTf = 0 .
Conclure.
1.a) Résolution pour Tf = 3, R = 1 et PTf = P3 = 1

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

sous la contrainte du système


x3 = 2x2 + u2
La commande solution du problème est donnée par :
h i
1 2 R 2 P3 2
∂J (x (2) , 2) ∂ x
2 2 + u
2 2 + 2 (2x2 + u2 )
= = Ru2 + P3 (2x2 + u2 ) = 0
∂u (2) ∂u (2)
−1
⇔ u∗2 = −2 (R + P3 ) P3 x2 = −x2

soit un coût optimal


1 2 R 2
J (x (2) , 2) = x + u + J (x (3) , 3)
2 2 2 2
1 2 R 2 P3 2 1
= x + u + (2x2 + u2 ) = xT2 3x2
2 2 2 2 2 2
– De la même façon nous déterminons u∗1
1 2 1 2
J (x (1) , 1) = x + u + J (x (2) , 2)
2 1 2 1
1 2 1 2 3 2
= x + u + x
2 1 2 1 2 2
sous la contrainte du système
x2 = 2x1 + u1
La commande solution du problème est donnée par :
∂J (x (1) , 1)
= u1 + 3 (2x1 + u1 ) = 0
∂u (1)
3
⇔ u∗1 = − x1
2
soit un coût optimal
1 2 1 2
J (x (1) , 1) = x + u + J (x (2) , 2)
2 1 2 1
µ ¶2
1 2 9 2 3 3
= x1 + x1 + 2x1 − x1
2 8 2 2
1 T
= x 4x1
2 1
– De la même façon nous déterminons u∗0
1 2 1 2
J (x (0) , 0) = x + u + J (x (1) , 1)
2 0 2 0
1 2 1 2
= x + u + 2x21
2 0 2 0
sous la contrainte du système
x1 = 2x0 + u0
14 CHAPITRE 1. COMMANDE LQ

La commande solution du problème est donnée par :

∂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

1.b) Résolution pour Tf = 3, R = 10 et PTf = P3 = 1

On applique les résultats synthétisés en section 1.3.2, nous obtenons

L2 = 0.1818 P2 = 4.6364
L1 = 0.6335 P1 = 13.6708
L0 = 1.1551 P0 = 24.1015

1.c) Résolution pour Tf = 3, R = 1000 et PTf = P3 = 1

On applique les resultats synthetisés en section 1.3.2, nous obtenons

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

2.a) Résolution pour Tf = 3, R = 1 et PTf = P3 = 0.1

On applique les résultats synthétisés en section 1.3.2, nous obtenons

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

2.b) Résolution pour Tf = 3, R = 1 et PTf = P3 = 10

On applique les résultats synthétisés en section 1.3.2, nous obtenons

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

2.c) Résolution pour Tf = 3, R = 1 et PTf = P3 = 1000

On applique les résultats synthétisés en section 1.3.2, nous obtenons

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

et nous obtenons une équation du second ordre que l’on résoud.

PTf = 0 pour Tf → ∞ R=0.1 R=1 R=10 R=100


Gain L=1.86 L=1.62 L=1.51 L=1.5
Valeur propre de la BF (i.e., eig(A-BL)) 0.13 0.38 0.48 0.5
Sol P de ARED P=1.37 P=4.23 P=31.3 P=301

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

1.3.4 Cas continu


¡ ¢
Objectif : Trouver u∗ x (t) , t qui minimise
Z Tf
1 ¡ T ¢ 1
J (u) = xt Qxt + uTt Rt ut dt + xTTf PTf xTf
2 t 2
sous la contrainte de la dynamique du système (1).
Cas général : Trouver u∗ (t, x)telle que :
Z Tf ¡ ¢ ¡ ¢
J (u) = L x, u, t dt + LTf xTf , Tf
t
¢ ¡
sous la contrainte ẋ = F x, u, t .
D’après le
¡ principe précédent,
¢ ce problème ramené au cas continu se réduit à trouver une fonc-
tionnelle V x (t) , t définie sur [0, Tf ] de <n → <, de classe C1 solution de l‘équation de
Hamilton Jacobi Bellman (HJB)

¡ ¢ ¡ ¢
−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

Commande LQ à horizon fini par résolution de l’éq HJB


On considère le système ẋ = Ax + Bu où le coût à minimiser est :
Z Tf
1 ¡ T ¢ 1
J (u) = xt Qxt + uTt Rt ut dt + xTTf PTf xTf
2 0 2
1.3. HORIZON FINI ET INFINI 17

¡ ¢
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 .

Commande optimale LQ à horizon infini : cas continu


Dans la section précédente, nous avons exposé la solution correspondant à un instant final Tf
fini. En pratique il est souvent intéressant de commander un système sur un grand intervalle de
temps [t0 , Tf ], voire même de s’affranchir de l’existence d’une borne supérieure.
18 CHAPITRE 1. COMMANDE LQ

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

soit une boucle fermée (BF)


à √ !
2R − 2 R2 + x2 R
ẋ = −2 + x
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 ¡ 

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.

1.4 Stabilité au sens de Lyapunov


1.4.1 Cas continu
Le retour d’état u∗t = −Lt xt où Lt = Rt−1 B T P stabilise le système bouclé ẋt = (A − BLt ) xt et
le critère J (x (0) , 0) = 12 xT0 P0 x0 est minimal pour toute condition initiale x0 bornée (voir figure
1.6).
Preuve : Le système ẋt = (A − BLt ) xt est stable au sens de Lyapunov (1890) si et seulement
si il existe une fonction de Lyapunov (1890) définie positive pour tout x 6= 0 et que la dérivée de
cette fonction le long de toutes les trajectoires non nulle de x donne une dérivée définie négative.
Prenons par exemple pour fonction de Lyapunov V (xt ) = xTt Pt xt . Cette fonction est une
fonction de Lyapunov candidate pour le système bouclé ẋt = (A − BLt ) xt car
1. V (xt ) = xTt Pt xt > 0où Pt = PtT > 0
20 CHAPITRE 1. COMMANDE LQ

c(t)=0 dx/dt x(t)


B s-1I

y(t)
(1) C
A

Fig. 1.6 – Schéma général de la commande LQ

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 .

1.4.2 Cas discret


¡ ¢ © ¡ ¢ ¡ ¢ª
Même réflexion avec V x (t) , t = min L xt , ut , t + V x (t + 1) , t + 1
u
Lemme : Le système xk+1 = Axk est asymptotiquement stable si et seulement si il existe une
fonction de Lyapunov candidate qui vérifie :
1. V (xk ) > 0, continue en xk et telle que V (0) = 0
£ ¤
2. ∇V = V (xk+1 ) − V (xk ) < 0 ∀k ou ∇V ≤ 0 et ∇V 6= 0 ∀ t ∈ t1 , ∞

1.5 Propriétés de Robustesse


On propose d’étudier le schéma général de la commande LQ représenté en figure 1.6.
Nous nous intéressons ici à l’étude des propriétés de robustesse de la commande LQ en précisant
les propriétés de la fonction de sensibilité à l’entrée du système (i.e. Su )
On ouvre la boucle au point (1), le transfert de boucle s’écrit
−1
Lc (s) = L (sI − A) B

où L = R−1 B T P est le gain obtenu par résolution de l’ARE

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)

Fig. 1.7 – Lieu de Nyquist du transfert de boucle LQ

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

Rappel : marge de module=inverse du max de la fonction de sensibilité, marge de gain Gm =


1/ |L (jwπ )| , marge de phase ϕm = π + arg (L (jw1 )) où |L (jwπ )| , arg (L (jw1 )) représentent res-
pectivement le module du transfert de boucle à la pulsation wπ , l’argument du transfert de boucle
à la pulsation w1 . La pulsation wπ est déterminée telle que arg (L (jwπ )) = π et w1 est déterminée
telle que |L (jw1 )| = 1.
Remarque 3 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. Nous verrons cela après le chapitre observation. Une
solution existe cependant en appliquant pour cela une commande LQG/LTR (voir chapitre 3).
Exemple 1 On considère le système continu
½
ẋ = ax + u
(1.6)
y=x

où a ∈ R1 et le critère J Z ∞
1 ¡ 2 ¢
J= x + Ru2 dt
2 0

1. Déterminer la commande u qui minimise le critère J sous la contrainte du système (1.6).


2. Donner le transfert de boucle, pour a = −1 et R = 31 , tracer le nyquist associé et la fonction
de sensibilité Su .
Solution
1)
ARE P 2 − 2aRP − R = 0
:
q
2
P + = aR + (aR) + R
à r !
1
u = − a + a2 + x
R
Ãr !
2
1
BF : ẋ = − a + x
R

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

Fig. 1.8 – Tracés de la fonction de sensibilité S et du Nyquist du transfert de boucle

Le nyquist du transfert de boucle Lc (jw) donne

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˚

Exercice 1 Commande LQ d’un micro satellite (voir adresse suivante)


http ://artemmis.univ-mrs.fr/cybermeca/Formcont/mecaspa/SCAO/OPTIMALE/optimale.htm#Présentation

Exercice 2 On considère le système discret

Y (z) 1
= G (z) = (1.7)
U (z) 1+z

1) Donner la représentation d’état discrète du système.


Solution
yk+1 = −yk + uk
2) Donner le critère de commande J (xk , k) permettant d’atteindre l’état xTf = 0 sous la contrainte
(1.7) en un temps minimum et en déduire la commande optimale uk solution du pb.
1. Solution Z tf
J= 1dt
t0
24 CHAPITRE 1. COMMANDE LQ

La commande, solution du pb est


¯ ¯
∂ytT Pt yt ¯¯ ∂ ¡ ¢¯
= 1 + yt+1 Pt+1 yt+1 ¯¯
T
=0
∂t ¯u=u∗ ∂t u=u∗
⇐⇒ u∗ = y
Résultat évident, la commande u∗ = y, annule y en une période d’échantillonnage.

1.6 Commande optimale par maximisation de l’Hamiltonien


(i.e. PMP)
Sans perte de généralité nous considérons Q et R constants. Définissons l’Hamiltonien H par :
¡ ¢ 1¡ T ¢
H λ, x, u =− x Qx + uT Ru + λT (Ax + Bu)
2
on obtient dés lors le critère
Z Tf
1 T ¡ ¢
J (u) = x PT xT + −H λ, x, u + λT (Ax + Bu) dt
2 Tf f f 0 | {z }
1 T T
2 (x Qx+u Ru)

Si on considère une variation δu de u telle que v = u + δu, il en résulte une variation δx de x.


Or on souhaite que

δ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

et l’on obtient après simplification et factorisation

³ ´ 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

Rappelons que l’on veut δJ = J (u + δu) − J (u) ≥ 0 soit

xTTf PTf + λTTf = 0


T δH
λ̇ + =0
δxT
Conclusion J (u + δu) ≥ J (u) si et seulement si

T δH
λ̇ = −
δxT
avec la condition terminale

λTTf = −xTTf PTf


RT ¡ ¡ ¢ ¡ ¢¢ ¡ ¢ ¡ ¢
Dans ce cas δJ = 0 f H λ, x, u − H λ, x, v dt ≥ 0 ⇔ H λ, x, u ≥H λ, x, v
et donc u maximise belle et bien l’Hamiltonien ou encore J (u) ≤ J (v).

1.6.1 Résultat fondamental : maximisation de l’Hamiltonien


Cas continu
Cas général : Trouver u ∗ (x(t), t) qui maximise l’Hamiltonien
¡ ¢ ¡ ¢ ¡ ¢
x, u,H λ, t = −L x, u, t + λT F x, u, t (1.8)
¡ ¢
où ẋ = F x, u, k .

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 .

Equations canoniques de Hamilton : cas continu


Au vue des résultats précédents, les conditions d’optimalité s‘expriment simplement par les
équations canoniques de Hamilton et le principe du maximum, i.e.,
Conditions au premier ordre :

δH
ẋ =
δλ
δH
λ̇ = −
δx

avec la condition terminale λTTf = −xTTf PTf .


1.6. COMMANDE OPTIMALE PAR MAXIMISATION DE L’HAMILTONIEN (I.E. PMP) 27

La maximisation de H conduit à la commande optimale :


¯
δH ¯¯
=0
δu ¯ u=u∗

avec la condition au second ordre :


δ2 H
<0
δu2

Equations canonique de Hamilton : cas discret


Conditions au premier ordre :
δHk+1
xk+1 =
δλk+1
δHk+1
λk =
δxk
avec la condition terminale λTTf = −xTTf PTf .
La maximisation de H conduit à la commande optimale :
¯
δHk+1 ¯¯
=0
δuk ¯uk =u∗
k

avec la condition au second ordre :

δ 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 :

λk = AT λk+1 − Qk xk ⇔ −Pk xk = −AT Pk+1 (Axk + Bu∗k ) − Qk xk


¡ ¢
⇔ −Pk xk = −AT Pk+1 A + AT Pk+1 BLk+1 − Qk xk
⇔ −Pk = −AT Pk+1 A + AT Pk+1 BLk+1 − Qk ∀ x 6= 0
¡ ¢−1 T
ou encore Pk = AT Pk+1 A−AT Pk+1 B Rk + B T Pk+1 B B Pk+1 A+Qk ∀ x 6= 0 avec la condition
terminale PTf = QTf .
1.7. EXEMPLES 29

1.7 Exemples

Exercice 3 Reprendre l’étude de la commande LQ pour un système continu et retrouver à l’aide


des équations canoniques de Hamilton les résultats obtenus par résolution de l’equation de HJB.
Exercice 4 On considère le système
ẋ1 = −x1 + u
Partant de x1 = 0 à t = 0, on souhaite atteindre l’état x1 = 2 à t = 1. Déterminer la commande
optimale u qui minimise Z
1 1¡ 2 ¢
J= 3x1 + u2 dt
2 0
sous la contrainte du système et des conditions aux limites énoncées.

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

Fig. 1.9 – Evolution d’un mobile

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

où sgn désigne la fonction signe


½
1 si Θ (t) > 0
sgnΘ (t) =
−1 si Θ (t) < 0

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é).

1.7.1 Véhicule à essence


Un véhicule à essence est modélisé par les équations suivantes

ẋ (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

Quelques éléments de correction


1. Le critère se réduit à la simple expression suivante

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)

où w = 12 est la vitesse du courant (constant et horizontal) du fleuve et u et v sont respectivement


les composantes commandées de la vitesse du pédalo.
1. En supposant que le moindre effort consiste à minimiser le critère quadratique
Z T
1¡ 2 ¢
J= u + v 2 dt
0 2

sous la contrainte du système (1.10) déterminer les commandes optimales u et v.


2. Comment seraient modifiées les commandes si le courant w dépendait linéairement de y (par
exemple w (x, y) = y).

1.7.3 Gestion de stock : exemple1


Un fermier produit un certain type de céréale à reproduction rapide. Après chaque récolte, il
peut stocker une partie de sa production et réutiliser le reste comme engrais pour la nouvelle récolte.
Partant de l’instant t = 0, il souhaite maximiser son stock à une date donnée T = 10, pour le
vendre en totalité à la date T.
On note à l’instant t

x1 (t) le niveau de production


u(t) la part de production servant d’engrais pour la production suivante
v(t) la part de production stockée

avec x1 (0) = 100 le stock initial acheté.


On propose le modèle suivant
ẋ1 = u
sous la contrainte algébrique x1 (t) = u (t) + 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

Quelques éléments de correction


1. Le problème est un problème de commande optimale à temps minimal, cela consiste à maxi-
miser J = x2 (T ) − x2 (0) = x2 (10) − x2 (0) sous les contraintes du modèle
ẋ1 = u
ẋ2 = v
x1 (t) = u (t) + v (t)
avec x1 (0) = 100 et x2 (0) = 0. Le modèle ẋ2 = v s’explicite aisément puisque v représente
la part de production stockée, en d’autre terme, à l’instant k discret on dispose d’un stock
x2 (k) ,au pas suivant x2 (k + 1) = x2 (k) + v (k) où v (k) représente la nouvelle part à stocker
soit x2 (k+1)−x
k+1−k
2 (k)
= v (k) ⇔ ẋ2 = v (en representation continu). De plus, on nécessairement
x1 (t) ≥ u (t) ≥ 0
x1 (t) ≥ v (t) ≥ 0
xi (t) ≥ 0, i = 1, 2
Compte tenu de l’équation de répartition x1 (t) = u (t) + v (t), le problème peut se réécrire
sous la forme suivante

 ẋ1 = u,
min −x2 (T ) sous ẋ2 = x1 (t) − u (t)

0 ≤ u (t) ≤ x1 (t)
le seul coût à minimiser est un coût final Cf = −x2 (T ) . Il reste à appliquer le PMP.
2. On note x̃2 (t) la nouvelle variable d’état telle que
v (t)
x̃˙ 2 (t) =
t+1
Le nouveau problème est le suivant

 ẋ1 = u,
min −x̃2 (T ) sous x̃˙ 2 = x1 (t)−u(t)
t+1

0 ≤ u (t) ≤ x1 (t)
Lequel se ramène au cas précédent, i.e., minimiser le coût final Cf = −x̃2 (T ) sous la contrainte
de la dynamique du système. Il reste à appliquer le PMP.

1.7.4 Gestion de stock : exemple2


Une usine fabrique un certain produit dont le stock est noté x et le taux de production u = ẋ.
On désire produire une quantité Q = 10 en un temps donné T = 10, le coût de production étant
RT © ª
J = 0 bx + a2 u2 dt avec a = 5 et b = 1.
1. Déterminer le taux de production u permettant de minimiser J. Indication : on notera µ le
paramètre de Lagrange associé à la contrainte finale x (T ) = Q. Cela conduit à introduire un
coût final Cf = µ (x (T ) − Q) .
2. Comparer le coût optimal avec le coût correspondant à une production à taux constant.
34 CHAPITRE 1. COMMANDE LQ

1.8 Poursuite optimale


L’évolution du système est décrite par la représentation d’état

ẋ = 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.

1.8.1 Problème de poursuite à horizon infini : yref = cte 6= 0

Préambule : On considère la commande suivante

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

Reprenons cette étude en appliquant la minimisation du critère J


Z Tf
1 ¡ ¢
J (u) = lim ²Tt Q²t + uTt Rut dt
Tf →∞ 2 t
Z Tf ³ ´
1 T
= lim (yref − Cxt ) Q (yref − Cxt ) + uTt Rut dt
Tf →∞ 2 t
Z Tf
1 ¡ ¢
= lim xTt C T QCxt + uTt Rut dt
Tf →∞ 2 t
Z Tf
T
− lim yref QCxt dt
Tf →∞ t
Z Tf
1 T
+ lim yref Qyref dt
Tf →∞ 2 t

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

AT Pt + Pt A − 2LTt B T Pt + C T QC + LTt RLt = 0


⇔ AT Pt + Pt A − Pt BR−1 B T Pt + C T QC = 0

avec Lt = R−1 B T Pt , l’inconnu gt :


T
gtT A − yref QC − gtT BLt = 0
T T −1
⇔ gt = yref QC (A − BLt )

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.8.2 Problème de poursuite à horizon fini : yref non cte


Nous nous intéressons au problème de poursuite, le critère prend la forme
Z
1 Tf ¡ T ¢ 1
J (u) = ²t Qt ²t + uTt Rt ut dt + ²TTf PTf ²Tf
2 t 2
où l’Hamiltonien est défini par la relation

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

Résolution par l’équation HJB


¡ ¢
Problème : Il s’agit de déterminer une fonctionnelle V x (t) , t définie sur [0, Tf ] de <n →
<, de classe C 1 solution de l’équation de Hamilton Jacobi Bellman (HJB)
¡
1¡ T ¢ ¢
−V̇ ²t Q²t + uTt Rt ut
² (t) , t =
2
¡ ¢
Résolution 1 : On doit trouver une fonction V x (t) , t qui vérifie l’équation HJB i.e.,
¡ ¢ ¡ ¢
−V̇ ² (t) , t = L ², u, t
1¡ T ¢
= ²t Qt ²t + uTt Rt ut
2
1³ T
´
= (yreft − Cxt ) Qt (yreft − Cxt ) + uTt Rt ut
2
1 T T 1 1 T
= x C Qt Cxt + uTt Rt ut − yreft Qt Cxt + yref Qt yreft
2 t 2 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

Enfin en reportant la solution u∗t = −R−1 B T Pt xt − R−1 B T gt dans l’égalité


³ ´ ³ ´
− 12 xTt AT Pt + Pt A + Ṗt xt − ġtT + gtT A − yref
T
QC + uTt B T Pt xt
−gtT But − 12 xTt C T QCxt − 21 uTt Rut − 12 yref
T
Qyref − ḣ
=0

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

Ṗt + AT Pt + Pt A − 2LTt B T Pt + C T QC + LTt RLt = 0


⇔ Ṗt + AT Pt + Pt A − Pt BR−1 B T Pt + C T QC = 0
1.8. POURSUITE OPTIMALE 39

avec Lt = R−1 B T Pt et la condition terminale PTf = C T QTf C


L’inconnu gt :

ġtT + gtT A − yref


T
QC − gtT BLt = 0

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*).

Résolution par maximisation de l’Hamiltonien


Même principe que précédemment avec λt = Kt xt + kt et l’Hamiltonien

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

2.1 Cas déterministe


Rappel : Le système est complètement observable si à partir d’un état quelconque pris à
l’instant t on sait déterminer son évolution jusqu’à l’état initial xt0 .
Question : La connaissance des trajectoires d’observation y et de commande u permet-elle de
reconstituer la trajectoire de l’état x ? "Observabilité".
On propose la structure suivante :

x̂˙ = Ax̂ + Bu + G (y − ŷ) ; ŷ = C x̂


³ ´
Cette structure correspond à une simulation x̂˙ = Ax̂ + Bu + · · · . , corrigée par l’écart constaté
entre la sortie observée et la sortie reconstruite (· · · G (y − C x̂)).
On peut également donner de manière équivalente la structure suivante :

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 :

ė (t) = (A − GC) e (t)


L’analyse est immédiate : on aura e (t) → 0 si l’on peut trouver une matrice de gain G telle que
(A − GC) soit asymptotiquement stable. On reconnaît un problème dual de la stabilisabilité en
remarquant
¡ que les
¢ valeurs propres de la matrice (A − GC) sont également celles de sa transposée,
soit AT − C T GT .
On définit donc le système fictif :

ż (t) = AT z (t) + C T h (t)


¡ ¢
pour lequel la commande h∗ = −GT z assure la stabilité AT − C T GT .

2.1.1 Horizon infini


Nous avons vu que la recherche d’une commande optimale w∗ minimisant le critère
Z
1 ∞¡ T ¢
min J (w) = z Qz + hT Rh dt
w 2 0
où Q = QT > 0, R = RT > 0 conduit à une structure bouclée :

h∗ = −R−1 CM z
¡ ¢ ¡ ¢
ż (t) = AT z (t) − C T R−1 CM z = AT − C T GT z

avec M une matrice symétrique définie positive solution de l’ARE :

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

On s’est ainsi ramené à un problème de commande optimale identique à celui traité


en section précédente. Toutes les techniques utilisables pour la stabilisation (trouver K tel que
(A-BK) soit stable) peuvent être mises en œuvre pour la reconstruction d’état, en remplaçant :

A → AT
B → CT
L → GT
−Ṗ → Ṁ
M = MT > 0

2.1.2 Horizon fini


L’observateur est un observateur optimal au sens où son gain est solution du problème d’opti-
malité

V (t, e (t)) =min J (w)


w
Z tµ ³ ´T ³ ´¶
(y − ŷ) R−1 (y − ŷ) + x̂˙ − Ax̂ − Bu Q−1 x̂˙ − Ax̂ − Bu
T
= dτ
To
| {z }
Coût immediat + coût intermédiaire
T −1
+(x̄t0 − x̂t0 ) S (x̄t0 − x̂t0 )
| {z }
coût initial
Z t ¡ T T −1 ¢
= e C R Ce + wT Q−1 w dτ
To
+eTt0 S −1 et0

sous

x̂˙ = Ax̂ + Bu + w
ŷ = C x̂,

avec e = x − x̂, ė = Ae − w et V (e) = eT M −1 e, M = M T > 0.


Il s’agit d’un problème de commande optimale avec un état initial 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’.
La solution de ce problème d’optimalité peut être obtenue de différentes manières. Nous traitons
ici 3 possibilités : minimisation de l’HJB, maximisation de l’Hamiltonien et enfin le calcul des
variations.
44 CHAPITRE 2. OBSERVATEUR LQ

1re approche : Minimisation de l’HJB


Solution optimale proposée :

x̂˙ = Ax̂ + Bu + M C T R−1 (y − C x̂)


| t {z }
Gt = gain optimal

où Mt est solution de l’équation différentielle de Riccati


dMt
= Mt AT + AMt + Q − Mt C T R−1 CMt
dt
avec M (t = T0 ) = S > 0.
Preuve : Soit

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

la fonctionnelle à minimiser sous la contrainte de


dt = Ae − w.
On se ramène au problème de commande optimale classique (de t à To + coût final To)
par le changement de coordonnées temporelles t = −t0. Le critère se réécrit alors sous la forme

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

On cherche u qui minimise l’expression précédente, soit


46 CHAPITRE 2. OBSERVATEUR LQ

¡ ¢¯
−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

La dérivée seconde assure que w minimise la fonctionnelle.


¡ −1 −1
¢
∂ 2M−t 0 e−t0 + 2Q w
=2>0
δw
∗ −1
Enfin il reste à réinjecter w−t 0 = −QM−t0 e−t0 dans

−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

2ème approche : Maximisation de l’Hamiltonien


Soit la fonctionnelle V

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 λ

avec la condition terminale


−1
λ−t0 = −M−t e
0 −t0

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é

δJ (w (σ)) = J (w + δw) − J (w) = 0 ∀ δ x̂t0 , δxt , δ x̂t , δwt



 T

Z t (y − C x̂) R−1 (y − C x̂)
1 T 1  T −1 
J (w (σ)) = (x̂t0 − xt0 ) S −1 (x̂t0 − xt0 ) +  ³ +w Q w ´  dτ
2 2 t0
+2λT Ax̂ + Bu + w − x̂˙

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 :

δJ = δ x̂Tt0 S −1 (x̂t0 − xt0 )


Z t " −δ x̂T C T R−1 (y − C x̂) + δwT Q−1 w #
³ ´
+ T ˙ + Aδ x̂ + δw dτ
t0 +λ −δ x̂

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 + λ

La condition nécessaire d’optimalité δJ (w) = 0 ∀ δ x̂t0 , δxt , δ x̂t , δwt , donne :

S −1 (x̂t0 − xt0 ) + λt0 = 0


λt = 0
−C T R−1 (y − C x̂) + AT λ + λ̇ = 0
Q−1 v + λ = 0

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

x̂τ = −Mτ λτ + ατ avec Mt0 = S


2.2. CAS STOCHASTIQUE 49

on dérive cette dernière expression, il vient

x̂˙ τ = −Ṁτ λτ − Mτ λ̇τ + α̇


= Ax̂τ + Bu + w
= −Ṁτ λτ − Mτ C T R−1 (y − C (−Mτ λτ + α)) + Mτ AT λ + α̇
= A (−Mτ λτ + α) + Bu − Qλ

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

α̇t = Aαt + Bu + Mt̄ C T R−1 (y − Cα)

Ṁτ = Mτ AT + AMτ − Mτ C T R−1 CMτ + Q

Par ailleurs la seconde condition d’optimalité λt = 0 assure que

x̂τ = −Mτ λτ + α = α

à t̄ = t soit x̂˙ = Ax̂ + Bu + Mτ C T R−1 (y − C x̂) . CQFD

2.2 Cas stochastique


Le processus aléatoire correspondant est

ẋ = 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

Objectif : déterminer un estimateur de l’état x non biaisé et à variance minimale


50 CHAPITRE 2. OBSERVATEUR LQ

2.2.1 Etude selon le principe d’optimalité de Bellman : cas continu


Horizon fini : Filtre prédicteur de Kalman
On considère à nouveau le critère J à minimiser
 
Z t T
(y − ŷ) R−1 (y − ŷ)
T 1  ³ ´T ³ ´  dτ
min J (w) = (xt0 − x̂t0 ) S −1 (xt0 − x̂t0 ) +
w 2 t0 + x̂˙ − Ax̂ − Bu Q−1 x̂˙ − Ax̂ − Bu

où x̂˙ − Ax̂ − Bu = w et y − ŷ = Ce.


On obtient bien entendu les mêmes résultats que précédemment, auxquels on peut remarquer
que Q, R, M0 jouent les rôles respectifs de
¡ pondérations
¢ Q−1 −1 −1
¡ , R , ¢S et vérifient l’interprétation
physique suivante (Rappel , (i.e. w ∼
= N 0, Q , v ∼ = N 0, R ) :

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.

La connaissance de la précision des différents capteurs permet de quantifier R : chacun de ses


termes diagonaux est de l0 ordre de grandeur du carré de l0 écart-type sur la mesure, cet écart-
type étant d0 autant plus élevé que le capteur est imprécis. Quant à la matrice Q, chacun de ses
termes diagonaux est de l0 ordre de grandeur du carré de l0 écart-type des perturbations affectant la
dynamique.

Horizon infini : Filtre de Wiener


L’horizon étant fini, le critère de performance est réduit à l’expression suivante

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

où la solution du problème d’estimation est

x̂˙ = Ax̂ + Bu + M∞ C T R−1 (y − C x̂)


avec M∞ solution de l’ARE

M∞ AT + AM∞ − M∞ C T R−1 CM∞ + Q = 0


2.2. CAS STOCHASTIQUE 51

2.2.2 Etude selon la minimisation de la variance de l’erreur d’estimation


Cas continu
L’état estimé x̂ est la meilleure estimation de x au sens de la minimisation du coût quadratique
de l’erreur d’estimation e = x − x̂ pondérée par la matrice M
Z ∞
J= eT M edt
0

où M est solution de ARE associée.

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 :

x̂˙ = Ax̂ + Bu + G (y − C x̂)


L’objectif est de déterminer le gain G qui assure à la fois : la minimisation de la variance de l’erreur
d’estimation, une estimation de x̂ non biaisée et un estimateur stable.
L’étude de la dynamique de l’erreur d’estimation e = x − x̂ donne

ė = (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])

de e(t) est solution de l’équation différentielle :


½ T T
Ṁ = (A − GC)
© M +T M (A ª − GC) + Q + GRG
M (t0 ) = E e (t0 ) e (t0 )
où GT = R−1 CM est le gain optimal au sens de la minimisation de la variance de l’erreur d’esti-
mation et est obtenu en annulant la dérivée de Ṁ par rapport à G :

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

soit (après substitution de G) l’équation différentielle de Riccati :

Ṁ = 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.

2.2.3 Etude selon le principe d’optimalité de Bellman : cas discret


L’observateur est un observateur optimal au sens où son gain est solution du problème d’opti-
malité
t
1 X ¡ T T −1 ¢
min J (w) = eTt0 S −1 et0 + ek C R Cek + wkT Q−1 wk
w 2
k=t0 +1

Solution : utilisation du principe de "Bellman à l’envers"

x̂k+1 = Ax̂k + Buk + Gk (yk − C x̂k )


¡ ¢−1
où G = AMk C T R + CMk C T avec Mk solution de
½ ¡ ¢−1
Mk+1 = Q + AMk AT − AMk C T R + CMk C T CMk AT
Mt0 = S
Le filtre ainsi obtenu est l’équivalent du filtre prédicteur de Kalman, obtenu pour les systèmes à
temps discrets.

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

2.2.4 Etude selon la minimisation de la variance de l’erreur d’estimation


Cas discret
On propose l’estimateur suivant :

x̂k+1 = Ax̂k + Buk + G (yk − C x̂k )


2.2. CAS STOCHASTIQUE 53

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

ek+1 = (A − GC) ek + wk − Gvk


où la moyenne des erreurs d’estimation définie par E[e] est nulle à t0 → −∞ car A − GC stable et
w et v sont des bruits à moyenne nulle.
h i
T
Il reste à minimiser la variance des erreurs d’estimation Mk+1 = E (ek+1 − E [ek+1 ]) (ek+1 − E [ek+1 ])
soit
· ¸
{(A − GC) (ek − E [ek ]) + wk − Gvk }
Mk+1 = E T
× {(A − GC) (ek − E [ek ]) + wk − Gvk }
h i
T T
= (A − GC) E (ek − E [ek ]) (ek − E [ek ]) (A − GC)
£ ¤ £ ¤
+E wk wkT + GE vk vkT GT
T
= (A − GC) Mk (A − GC) + Q + GRGT
¡ ¢−1
où Mt0 = S et G = AMk C T R + CMk C T est le gain optimal au sens de la minimisation de la
variance de ek+1 et est obtenu en annulant la dérivée Mk+1 par rapport à G :

dMk+1 ¡ ¢
T
= R + CMk C T GT − CMk AT = 0
dG
¡ ¢−1
⇒ GT = R + CMk C T CMk AT

soit (après substitution de G) l’équation aux différence de Riccati :


½ ¡ ¢−1
Mk+1 = Q + AMk AT − AMk C T R + CMk C T CMk AT
Mt0 = S
54 CHAPITRE 2. OBSERVATEUR LQ
Chapitre 3

Méthode Linéaire Quadratique


Gaussienne (LQG)

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.

3.1 Principe de la synthèse LQG


Nous supposons que le système d’ordre n obéit aux équations suivantes

 ẋ = Ax + Bu + Hw
y = Cx + v

z = Nx
où z désigne le vecteur à réguler, w et v représentent des bruits blancs, de moyenne nulle, indépen-
dants, avec respectivement pour matrice de covariance W et V .
£ ¤ £ ¤
E w (t) wT (t) = W δ (t) , E v (t) v T (t) = V δ (t) ,
£ ¤
E w (t) v T (t) = 0, W = W T ≥ 0, V =VT ≥0
A partir du vecteur y de mesures bruitées, nous recherchons une loi de commande qui minimise le
critère "Z #
T ¡ ¢
J = lim E z T Qz + uT Ru dt (3.1)
T →∞ 0

où Q et R sont deux matrices de pondération avec Q = QT ≥ 0 et R = RT > 0.


La solution de ce problème s’appuie sur le principe de séparation (voir cours AC321) qui établit
que la commande optimale est obtenue

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

Fig. 3.1 – Structure d’une commande LQG

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.

x̂˙ = Ax̂ + Bu + Kf (y − C x̂)

avec Kf = Pf C T V −1 où Pf obéit à l’équation de Riccati suivante

Pf AT + APf − Pf C T V −1 CPf + HW H T = 0

avec Pf = PfT > 0.


2ème étape Sous réserve que la paire(A, B) est stabilisable et la paire(A, Q1/2 N ) détectable la
commande optimale est alors de la forme

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

synthétisé par sa matrice de gain d’estimation Kf . En se référant à la figure 3.1 ou encore à la


représentation d’état
x̂˙ = (A − BKc − Kf C) x̂ + Kf y
u = −Kc x̂
le correcteur K (s) reliant y (s) à u (s) s’écrit immédiatement
−1
K (s) = −Kc (sI − A + BKc + Kf C) Kf
On constate immédiatement que le transfert de boucle K (s) obtenu avec une commande LQG
−1
présente un transfert très différent de la commande LQ (Kc (sI − A) B). Nous verrons notam-
ment dans l’exemple suivant que les proprietés de robustesse d’une commande LQG présentent
des proprié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 developperons dans la section
suivante la commande robuste LQG/LTR. Laquelle à pour but de rapprocher le transfert de boucle
−1
K (s) G (s) au transfert de boucle Kc (sI − A) B.

Exemple 2 On considère le système à minimum de phase (1.6) avec a = −1 et R = 1/3. L’on


suppose que le système est perturbé par des bruits aléatoires
½
ẋ = −x + u + w
y =x+v
où w et v représentent des bruits blancs, de moyenne nulle, indépendants, avec respectivement pour
matrice de covariance W = 3 et V = 1.
1. Déterminer l’observateur optimal au sens de la minimisation de la variance de l’erreur d’esti-
mation d’état
2. Déterminer la commande optimale u = −Kc x̂ au sens du critère (7.4) avec Q = 1 et z = x.
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
1 1 LLQG (s)
4. En déduire les fonctions de sensibilité SLQG = 1+LLQG (s) , SLQ = 1+LLQ (s) , TLQG = 1+LLQG (s)
LLQ (s)
et TLQ (s) = 1+LLQ (s)
5. Tracer le module de S, LLQG , LLQ et T avec et sans l’observateur.
Solution

1) Etape 1 : La paire(A, HW 1/2 ) = paire(−1, 3) est stabilisable et la paire(A, C) = paire(−1, 1)
est détectable ¡ √ ¢
rang s + 1 3 = 1, ∀s commandable
µ ¶
s+1
rang = 1, ∀s observable
1
On détermine Kf = Pf C T V −1 où Pf est la solution positive de l’équation de Riccati
Pf AT + APf − Pf C T V −1 CPf + HW H T = 0
⇔ Pf2 + 2Pf − 3 = 0
soit Kf = Pf = 1.
58 CHAPITRE 3. MÉTHODE LINÉAIRE QUADRATIQUE GAUSSIENNE (LQG)

2) Etape 2. La paire(A, B) = paire(−1, 1) est stabilisable et la paire(A, Q1/2 N ) = paire(−1, 1)


est détectable
¡ ¢
rang s + 1 1 = 1, ∀s commandable
µ ¶
s+1
rang = 1, ∀s observable
1

On détermine Kc = R−1 B T Pc où Pc est la solution positive de l’équation de Riccati

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)

Fig. 3.2 – Valeurs singulières de la fonction de sensibilité S


3.1. PRINCIPE DE LA SYNTHÈSE LQG 59

Singular Values
0

−10
L LQ

−20

−30

Singular Values (dB)


−40

L LQG

−50

−60

−70

−80
−2 −1 0 1 2
10 10 10 10 10
Frequency (rad/sec)

Fig. 3.3 – Tracés de la fonction de sensibilité S et du Nyquist du transfert de boucle


Singular Values
0

−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)

Fig. 3.4 – Valeurs singulières de la fonction de sensibilité complémentaire T

Exemple 3 On considère le système à non minimum de phase


 · ¸ · ¸ · ¸
 0 1 0 0
ẋ = x+ u+ w
0 0 £ 1¤ 1

y = 1 −1 x + v

et on se propose de synthétiser le régulateur minimisant le critère quadratique


"Z #
T ¡ ¢
J = lim E y 2 (t) + Ru2 (t) dt (3.2)
T →∞ 0

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.

1. Déterminer l’observateur optimal au sens de la minimisation de la variance de l’erreur d’esti-


mation d’état. Donner les valeurs propres associées à l’observateur. i.e., eig (A − Kf C)
60 CHAPITRE 3. MÉTHODE LINÉAIRE QUADRATIQUE GAUSSIENNE (LQG)

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

Fig. 3.5 – Nyquist du transfert de boucle

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).

3.2 Méthode LQG/LTR


Puisque le régulateur LQ et le filtre de Kalman, chacun pris isolément, ont d’excellentes proprié-
tés de robustesse, on pourrait penser que les compensateurs LQG constitués de l’un et de l’autre
possèdent ces bonnes propriétés. L’exemple précédent montre à l’évidence que la synthèse LQG
entraîne de faibles marges de stabilité.
3.2. MÉTHODE LQG/LTR 61

Nichols Chart
80

60

Black L LQG
40

Open−Loop Gain (dB) 20

−20

−40

−60

−80
−180 −135 −90 −45 0 45
Open−Loop Phase (deg)

Fig. 3.6 – BlackNichols du transfert de boucle

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.

3.2.1 Recouvrement asymptotique à l’entrée


a) Synthétiser dans une première étape, le correcteur LQ par un choix approprié des pondérations
Q et R obéissant aux exigences du cahier des charges. Les aspects de cette première synthèse
concernent le comportement basse fréquence des valeurs singulières du transfert LLQ (s) =
−1
Kc (sI − A) B, les fréquences de coupures, l’affaiblissement haute fréquence, etc...
b) Dans une seconde étape, à partir d’un réglage nominal W0 et V0 du filtre de Kalman, on
augmentera le paramètre q du nouveau réglage

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)

faut un affaiblissement de la fonction de sensibilité complémentaire en sortie aux hautes fréquences


afin d’assurer une bonne robustesse aux incertitudes non structurées.

3.3 Passage d’un régulateur sous forme de représentation d’état


au RST
Objectif : Établir le contrôleur RST à partir du régulateur LQG et étudier l’influence des
pondérations Rr et Ro sur les marges de robustesse (Sensibilité) et la bande passante (Sensibilité
complémentaire). Il est biensûr inutile pour étudier les fonctions de sensibilité de transformer le
regulateur LQG en un RST. Cette transformation est donnée ici uniquement dans le but de pouvoir
appliquer l’algorithme de commande RST de l’année passée (cf. cpoly.exe).
Les gains L et G sont déterminés pour Qr = C T C, Qo = BB T et un couple de pondéra-
tion Rr , R0 choisi en fonction des marges de robustesse et bande passante souhaitée . . .. Soit la
commande :

µ ¶
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

que l’on identifie à la commande issue du contrôleur RST :


T R
u= yc − (y + b)
S S
On obtient dès lors les polynômes inconnus T et S par le calcul du transfert u/yc associé au
système (3.3) et le polynôme -R par le calcul du numérateur du transfert u/y associé au système
(3.3) évidemment. On détermine alors la fonction de sensibilité
AS
Sens =
AS + BR
BR
et son complémentaire T = AS+BR et l’on vérifie que les propriétés de robustesse/performance
désirées sont atteintes. Dans le cas contraire on modifie le couple de pondération Rr , Ro jusqu’à
atteindre les propriétés de robustesse/performance souhaitées.
Chapitre 4

Analyse des fonctions de sensibilité

4.1 Analyse de S et T en fonction des coûts de pondération


L’approche que l’on développe ici est utilisable pour les systèmes SISO. Le procédé est décrit
par la représentation d’état discrète suivante :

xk+1 = Axk + Buk


yk = Cxk

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 :

ż (t) = y (t) − yref (t)


⇔ zk+1 − zk = yk − yref k

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 )

qui assure la stabilité du système bouclé et donc zk+1 = zk soit yk = yref k .


On vient d’ajouter explicitement un intégrateur dans la boucle qui rejette les perturbations
constantes. Le gain L est déterminé par résolution du problème LQ associé au système augmenté

µ ¶ µ ¶µ ¶ µ ¶ µ ¶
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

Quant à l’observateur, on ne s’intéresse qu’à l’estimé de x et non z (variable connue), le problème


est donc identique à la section précédente, déterminer

x̂k+1 = Ax̂k + Buk + G (yk − C x̂k )


associé à la dynamique xk+1 = Axk + Buk , yk = Cxk sous la contrainte du coût désiré.
En conclusion : On fixe les matrices de pondération Qr = C T C et Qo = BB T et l’on ajuste les
coefficients de pondération Rr et Ro pour obtenir les marges de robustesse (Sensibilité) et bande
passante souhaitées (Sensibilité complémentaire). Les pondérations Qr = C T C et Qo = BB T
sont données par le fait que la synthèse LQ est donnée sur un horizon infini et minimise le coût
quadratique
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

Soit une pondération fixe Qr = C T C pour la commande et Qo = BB T pour l’observateur (obtenu


par dualité).

4.2 Analyse de S et T en fonction des horizons de commande


et d’observation
Objectif : Assurer les objectifs de robustesse/performance en ajustant non plus les matrices
de pondération mais uniquement les temps (horizon) d’observation et de commande.
Les matrices de pondération sont dans ce cas données par le calcul des grammiens de comman-
dabilité et d’observabilité, solutions des équations de Lyapunov associées.

4.2.1 Grammien de commandabilité


L’énergie de commande minimale nécessaire pour transférer l’état depuis 0 (x(0) = 0) jusqu’à x
quelconque en un temps Tc fini (appelé horizon de commande)
Z TC
uT udt
t0 =0
4.2. ANALYSE DE S ET T EN FONCTION DES HORIZONS DE COMMANDE ET D’OBSERVATION65

est appelée fonction de commandabilité Ec = xT Wc−1 x où


Z Tc
T
Wc = eAt BB T eA t dt
0

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

à Tc=0 on veut V (x (−T c) , T c = 0) = V (x (0) , 0) = xT0 Wc−1


0
x0 = 0 soit une pénalité infinie
Wc−1
0
→ ∞ (ou encore W c 0
= 0) pour assurer x0 = 0.
La résolution de l’Eq HJB associée à la dynamique du système
66 CHAPITRE 4. ANALYSE DES FONCTIONS DE SENSIBILITÉ

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

On cherche u qui minimise l’expression précédente, soit

³ ´¯
∂ −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

La dérivée seconde assure que u minimise la fonctionnelle.


¡ ¢
∂ −2B T Wc−1 xc + 2u
=2>0
δu
Enfin il reste à réinjecter u∗−t0 = B T Wc−1
−t0
x−t0 dans

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

pour obtenir l’équation différentielle de Lyapunov

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

4.2.2 Normalisation du système par la commandabilité


Intérêt : Fixer
" Z #−1
Tc
At T AT t −1
Qr = Qc = Tc e BB e dt = (Tc W ) et Rr = I
0

On considère à nouveau le système originel ẋ = Ax + Bu que l’on normalise en temps

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É

4.2.3 Grammien d’observabilité


RT
L’énergie d’observation Eo = 0 O y T ydt nécessaire pour reconstruire l’état x0 depuis x quel-
conque pris à l’instant To jusqu’à x0 est appelée fonction d’observabilité Eo = xT Wo x où Wo =
R To AT t T At
0
e C Ce dt est le grammien d’observabilité, définit positif, symétrique et est la solution
unique de l’équation de Lyapunov

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

xR(t) x1(t) xQ(t)


LxR Lx1 LxQ

Fig. 5.1 – Commande LQ à pondérations fréquentielles

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

Fig. 5.2 – Choix usuel des pondérations fréquentielles Q et R

−1/2 kr 1/2 1+τ p 1 1


En règle générale, on fixe R(p) = 1+τr p Im et Q(p) = kQ 1+10τQQ p Iq où τr > τQ , m est la dimension
−1/2
des entrées et q la dimension des sorties. R(p) permet une décroissance plus rapide hors de la bande
1/2
passante et donc une amé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.
³ ´
−1/2 1/2 Q(p) 1/2
Exemple1 : Poser R(p) = p+1 k
et Q(p) = p+1
p donne un transfert R(p) = kp soit un inté-
grateur dans le transfert de boucle. Lequel permet d’assurer les objectifs de performance/robustesse
où k est un paramètre à fixer en fonction de la bande passante et des marges souhaitées.

−1/2 kr 1/2 1+τ p 1 1


Exemple2 : Poser R(p) = 1+τr p et Q(p) = kQ 1+10τQQ p avec τr > τQ donne le transfert suivant

µ ¶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

avec pour critère fréquentiel suivant


Z ∞³ ´
1 ∗
y(jw) Q(jw) y(jw) + u∗(jw) R(jw) u(jw) dw
2π −∞
10 1+T2 p
où R−1/2 (p) = 1+T1 p et Q1/2 (p) = 1+10T2 p .
1. Calculer le régulateur LQ solution du problème optimal sans chercher à résoudre l’equation
de Riccati.
Remarque : Nous détaillerons la solution de cet exemple en CM et/ou TD.

5.3.2 Transmission élastique composée de 3 poulies


On considère un système de transmission élastique composé de 3 poulies reliées par deux cour-
roies métalliques comportant chacune deux ressorts. Le problème de commande considéré est celui
de l’asservissement en position de la troisième poulie à partir de la position de la première poulie.
Pour la synthèse du régulateur, un modèle du système nominal à vide obtenu par identification
est donné par le transfert suivant

−3.434s3 + 244.3s2 − 1.021e4 s + 1.753e5


G (s) = (5.2)
s4 + 2.411s3 + 1260s2 + 1296s + 1.647e5
Ce système est supposé soumis à une référence yref et à une perturbation en sortie dy . Par ailleurs,
le système présente un gain statique non unitaire, on propose d’étudier deux synthèses différentes
de régulateurs H2 ,
Régulateur 1. Il s’agit d’un contrôleur LQG sans pondération fréquentielle, donc à pondéra-
tions fixes Qr = C T C et Rr = 1 pour le régulateur optimal LQ et avec Q0 = BB T et R0 = 1
pour la synthèse de l’observateur LQ.
Régulateur 2. Il s’agit d’un contrôleur LQG avec pondérations fréquentielles définies par les
1
filtres R−1/2 (s) = 1+s et Q1/2 (s) = s+1
s . Le régulateur est alors synthétisé à partir du système
augmenté des filtres R−1/2 (s) et Q1/2 (s) lequel minimise le critère
Z
1 ∞³ T ´
min J = ȳ(t) ȳ(t) + ūT(t) ū(t) dt
ū 2 0

avec pour matrice de pondérations Qr = C̄ T C̄ et Rr = 1. Le régulateur optimal LQ peut être


synthétisé à partir du système augmenté (afin d’obtenir l’estimer du système augmenté) ou être
synthétisé à partir du système G car l’état des filtres R−1/2 (s) et Q1/2 (s) est connu. Dans l’hypo-
thèse où l’observateur est synthétisé sur le système augmenté les matrices de pondérations seront
fixées ainsi Q0 = B̄ B̄ T et R0 = 1.
5.3. EXEMPLES 73

1. Donner la solution du problème de synthèse du régulateur 1 et préciser les fonctions de


sensibilité S et de sensibilité complémentaire T.
2. Donner la solution du problème de synthèse du régulateur 2 et préciser la fonction de sensibilité
S et la fonction complémentaire T.
3. Appliquer les deux synthèses sous matlab et tracer les Bodes de S et T, conclure.

5.3.3 Elements de reponses


1) Régulateur 1. Il s’agit d’un contrôleur H2 sans pondération fréquentielle, donc à pondérations
fixes Qr = I et Rr = 1 pour le régulateur optimal LQ et avec Q0 = I et R0 = 1 pour la
synthèse de l’observateur LQ.
y(s)
Sachant que u(s) = G(s), u = −K (s) y (s), il nous faut déterminer K(s). Or
· ¸
dx̂/dt = Ax̂ + Bu + KO (y − C x̂)
u = −Kr x̂
−1
soit le transfert frequentiel K (s) = Kr (sI − A + BKr + 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’) ;
%represensation d’état
[A,B,C,D]=tf2ss(numG,denG) ;
%regulateur 1 sans ponderation fréquentielle
[KcR1,Sc1,Ec1]=lqr(A,B,C’*C,1) ;
% Observateur 1 sans ponderation ponderation fréquentielle
[KoR1,So1,Eo1]=lqr(A’,C’,B*B’,1) ;
KoR1=KoR1’ ;
% [numK,denK]=ss2tf(A-B*KcR1-KoR1*C,KoR1,KcR1,0) ;
% recherche de K1(s) telle que u=K1(s)*ya(s)
% K_=tf(numK,denK) ;
%reg est une fonction qui retourne directement K1(s)
[Ar,Br,Cr,Dr] = reg(A,B,C,D,KcR1,KoR1) ;
[numK,denK]=ss2tf(Ar,Br,Cr,Dr) ;
K_=tf(numK,denK) ;
%calcul des fonctions de Sensibilité, S, T, KS, SG
%sensibilité complementaire T=I-S
T1=feedback(series(K_,G),1) ;
%sensibilité
S1=feedback(1,series(K_,G)) ;
%controller*sensitivity
KS1=series(K_,S1) ;
%plant*sensitivity
GS1=series(G,S1) ;
%Tracés
74 CHAPITRE 5. COMMANDE LQ À PONDÉRATIONS FRÉQUENTIELLES

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

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

dx̂/dt = (A − BKr1 − KO C) x̂ − BKr2 ya + KO y


u = −Kr1 x̂ − Kr2 ya

ou encore le transfert frequentiel


−1
u (s) = −Kr1 (sI − A + BKr1 + Ko C) KO y (s)
−1 1 1
+Kr1 (sI − A + BKr1 + Ko C) BKr2 y (s) − Kr2 y (s)
s s
soit
−1
K (s) = Kr1 (sI − A + BKr1 + Ko C) KO
−1 1 1
−Kr1 (sI − A + BKr1 + Ko C) BKr2 + Kr 2
s s
Sous matlab le problème se reduit aux étapes suivantes :
76 CHAPITRE 5. COMMANDE LQ À PONDÉRATIONS FRÉQUENTIELLES

[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.

Sensitivity functions: S1 Complementary sensitivity functions: T1


Singular Values Singular Values

10 0
Singular Values (dB)

Singular Values (dB)


−20
0
−40

−60
−10
−80

−20 −100
−2 0 2 −2 0 2
10 10 10 10 10 10
Frequency (rad/sec) Frequency (rad/sec)

Singular Values Singular Values

10 0
Singular Values (dB)

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)

Fig. 5.3 – Tracés de S,T, SG,SK avec regulateur 1


5.3. EXEMPLES 77

Sensitivity functions: S3 Complementary sensitivity functions: T3


Singular Values Singular Values

20 0
Singular Values (dB)

Singular Values (dB)


0 −50

−20 −100

−40 −150
−2 0 2 −2 0 2
10 10 10 10 10 10
Frequency (rad/sec) Frequency (rad/sec)

Singular Values Singular Values :=K3a*S3


Controler*sensitivity
Plant*sensitivity : G*S3
40 0
Singular Values (dB)

Singular Values (dB)

−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

Singular Values Singular Values


Sensitivity functions: S2 Complementary sensitivity functions: T2
20 0
Singular Values (dB)

Singular Values (dB)


−20
0
−40
−20
−60

−40 −80
−2 0 2 −2 0 2
10 10 10 10 10 10
Frequency (rad/sec) Frequency (rad/sec)

Singular Values Singular Values


Plant*sensitivity : G*S2 Controler*sensitivity :=K2a*S2
40 0
Singular Values (dB)

Singular Values (dB)

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)

Fig. 5.6 – Tracés du transfert de boucle


80 CHAPITRE 5. COMMANDE LQ À PONDÉRATIONS FRÉQUENTIELLES

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)

Fig. 5.7 – Tracé du bode du système


5.3. EXEMPLES 81

bode des différents controleurs

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)

Fig. 5.8 – Tracé des différents controleurs


82 CHAPITRE 5. COMMANDE LQ À PONDÉRATIONS FRÉQUENTIELLES
Chapitre 6

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

1. Calculer la commande et l’observateur en supposant l’ensemble analogique, donc en adoptant


la formulation continue, puis discrétiser les équations du correcteur obtenu. La validité de
cette démarche suppose que la période d’échantillonnage soit petite en comparaison avec de
la dynamique du système bouclé afin que la correction se rapproche le plus possible de la cor-
rection analogique calculée. Auquel cas la discrétisation peut s’effectuer de manière simplifiée
en remplaçant les dérivées ẋ par des différences x((k+1)TTee)−x(kTe ) . Elle est particulièrement
avantageuse lorsque toutes les variables d’état sont accessibles à la mesure car la discrétisation
de la commande u (t) = −Lx (t)est alors triviale.
2. Calculer d’abord un modèle discret du procédé et des convertisseurs CAN et CNA (échan-
tillonneurs + bloqueurs) et résoudre le problème en adoptant la formulation discrète, qui
conduit directement aux équations du correcteur. Cette approche est développée en TP.
Signalons enfin que dans l’approche dite commande optimale les matrices de pondérations Q et
R , éventuellement QT f constituent en pratique un problème très important car elles influencent le
comportement dynamique du système bouclé et le compromis robustesse/performance.

Il n’existe malheureusement pas de méthode systématique. Notons cependant que l’approche


par les grammiens réduit le problème à fixer le quotient Tc/To en fonction du compromis robus-
tesse/performance souhaité. D’autres possibilités simples s’offrent à l’ingénieur comme fixer les
matrices de pondération diagonales. Quelques règles générales peuvent alors être énoncées : plus le
coefficient de pondération affecté à une variable dans l’expression figurant sous le signe somme est
élevé, plus les écarts permis à cette variable vont être limités ; s’il s’agit d’une sortie, elle rejoindra
plus rapidement sa valeur nominale, s’il s’agit d’une commande, elle s’en écartera d’autant moins.
Basée sur ces considérations, une démarche simple peut être adoptée : on commence par effectuer
une normalisation des matrices Q et R en considérant les variations maximales que l’on autorise
aux différentes sorties ou variables d’état et aux différentes commandes autour de leurs valeurs
nominales. Si on décide par exemple qu’un écart δxj sur j−ième variable d’état est aussi néfaste que
δxk sur la k−ième , on choisit qj et qk tels que :

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É

7.1 Regulateur LQ : Cas discret


♥ 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

sous la contrainte du système


xk+1 = Ak xk + Bk uk
(7.1)
yk = Ck xk
où Qk = QTk ≥ 0, Rk = RkT > 0, PTf = QTf ≥ 0 sont des matrices connues données par le designer.
Solution : La commande solution du problème posée est

u∗k = −Lk xk

où Lk est solution des récurrences à temps rétrogrades suivantes


¡ ¢−1 T
Lk = Rk + BkT Pk+1 Bk Bk Pk+1 Ak
¡ ¢−1 T
Pk = Qk + ATk Pk+1 Ak − ATk Pk+1 Bk Rk + BkT Pk+1 Bk Bk Pk+1 Ak

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

sous la contrainte du système (7.1).


Solution : Le système bouclé est asymptotiquement
¡ ¢ stable sous réserve que le système (7.1) 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

Théorème 3 Si le système (7.1) est stabilisable, alors

- 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

- la commande optimale est donnée par :


u∗k = −Lxk
où ¡ ¢−1 T
L = R + BT P B B PA
- et le coût optimal est :
1 T
min J (u) = x P0 x 0
u 2 0
¡ ¢
Théorème 4 Si le système (7.1) est stabilisable et le couple A, Q1/2 détectable alors

- P est l’unique solution semi-definie positive de l’équation algébrique de Ricatti :


¡ ¢−1 T
P = Q + AT P A − AT P B R + B T P B B PA

- le système bouclé est asymptotiquement stable


¡ ¢
- si de plus A, Q1/2 est observable alors P est definie positive.
88 CHAPITRE 7. RÉSUMÉ

7.2 Regulateur LQ : Cas continu


♥ Horizon fini
On considère le système ẋ = Ax + Bu où le coût à minimiser est :
Z Tf
1 ¡ T ¢ 1
J (u) = xt Qxt + uTt Rt ut dt + xTTf PTf xTf
2 0 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
Solution : La commande optimale est une fonction linéaire de l’état u∗t = −Lt xt où Lt =
−1 T
Rt B Pt est 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
¢ Pt1 avec PTf = QTf . La valeur du coût partiel désirée
T
entre les instants t et Tf est J x (t) , t = 2 xt Pt xt .
♥ Horizon infini
Il est souvent intéressant de commander un système sur un grand intervalle de temps [t0 , Tf ],
voire même de s’affranchir de l’existence d’une borne supérieure. Nous obtenons dès lors le pb
suivant : RT ¡ ¢
Probleme : minJ (u) = J (x (∞) , ∞) = lim 21 0 f xTt Qt xt + uTt Rt ut dt
u Tf →∞
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 .
7.3. STABILITÉ AU SENS DE LYAPUNOV 89

7.3 Stabilité au sens de Lyapunov


7.3.1 Cas continu
Le retour d’état u∗t = −Lt xt où Lt = Rt−1 B T P stabilise le système bouclé ẋt = (A − BLt ) xt .
Prenons par exemple pour fonction de Lyapunov V (xt ) = xTt Pt xt . Cette fonction est une
fonction de Lyapunov candidate pour le système bouclé ẋt = (A − BLt ) xt car
1. V (xt ) = xTt Pt xt > 0où Pt = PtT > 0
¡ ¢ ¡ ¢
2. −V̇ (xt ) = 12 xTt 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

7.3.2 Cas discret


¡ ¢ © ¡ ¢ ¡ ¢ª
Même réflexion avec V x (t) , t = min L xt , ut , t + V x (t + 1) , t + 1
u
Lemme : Le système xk+1 = Axk est asymptotiquement stable si et seulement si il existe une
fonction de Lyapunov candidate qui vérifie :
1. V (xk ) > 0, continue en xk et telle que V (0) = 0
£ ¤
2. ∇V = V (xk+1 ) − V (xk ) < 0 ∀k ou ∇V ≤ 0 et ∇V 6= 0 ∀ t ∈ t1 , ∞
90 CHAPITRE 7. RÉSUMÉ

7.4 Propriétés de Robustesse


On considère le transfert de boucle
−1
Lc (s) = L (sI − A) B

où L = R−1 B T P est le gain obtenu par résolution de l’ARE

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

FcT (−s) Fc (s) ≥ I

soit |Fc (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. Il en résulte les propriétés de robustesse suivantes

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

7.4.1 Maximisation de l’Hamiltonien


Cas continu
Cas général : Trouver u ∗ (x(t), t) qui maximise l’Hamiltonien
¡ ¢ ¡ ¢ ¡ ¢
x, u, λ, t = −L x, u, t + λT F x, u, t
H (7.2)
¡ ¢ ¡ ¢ 1¡ T ¢
où ẋ = F x, u, k . Remarque pour une commande LQ : L x, u, t = 2 xt Qt xt + uTt Rt ut

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 .

Equations canoniques de Hamilton : cas continu


Les conditions d’optimalité s‘expriment simplement par les équations canoniques de Hamilton
et le principe du maximum, i.e.,
Conditions au premier ordre :
δH
ẋ =
δλ
δH
λ̇ = −
δx
avec la condition terminale λTTf = −xTTf PTf .
La maximisation de H conduit à la commande optimale :
¯
δH ¯¯
=0
δu ¯ u=u∗

δ2 H
avec la condition au second ordre : δu2 <0
92 CHAPITRE 7. RÉSUMÉ

Equations canonique de Hamilton : cas discret


Conditions au premier ordre :
δHk+1
xk+1 =
δλk+1
δHk+1
λk =
δxk
avec la condition terminale λTTf = −xTTf PTf .
La maximisation de H conduit à la commande optimale :
¯
δHk+1 ¯¯
=0
δuk ¯uk =u∗
k

δ 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

7.5 Poursuite optimale


L’évolution du système est décrite par la représentation d’état

ẋ = 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.

7.5.1 Problème de poursuite : horizon infini, yref = cte 6= 0


On peut montrer que le retour d’état ut = −Lxt + hvref stabilise la boucle fermée, avec

L = R−1 B T P
0 = Q + AT P + P A − P BR−1 B T P

on obtient dès lors en régime permanent l’équation statique

0 = (A − BL) x + Bhvref
y = Cx
³ ´−1
−1
En conclusion y (∞) → vref (∞) si h = − C (A − BL) B .
94 CHAPITRE 7. RÉSUMÉ

7.5.2 Problème de poursuite à horizon fini : yref non cte


Nous nous intéressons au problème de poursuite, le critère prend la forme
Z Tf
1 ¡ ¢ 1
J (u) = ²Tt Qt ²t + uTt Rt ut dt + ²TTf PTf ²Tf
2 t 2

ou selon l’écriture l’Hamiltonien suivant


1¡ T ¢
H=− ²t Qt ²t + uTt Rt ut + λT ẋ
2
ou encore l’équation de HJB

¡ ¢ 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

Solution : On obtient le système d’équations différentielles suivant :




 −Ṗ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
avec pour commande optimale u∗t = −R−1 B T Pt xt − R−1 B T gt
Rq : la dernière relation ḣ = gtT BR−1 B T gt − yref
T
Qyref assure que le problème de poursuite
existe, si yref est constant alors ġt = 0 et ḣ = 0.
7.6. OBSERVATEUR LQ 95

7.6 Observateur LQ
7.6.1 Cas déterministe
On propose la structure suivante :

x̂˙ = Ax̂ + Bu + G (y − ŷ)


⇔ x̂˙ = (A − GC) x̂ + Bu + Gy

et le système fictif suivant :

ż (t) = AT z (t) + C T h (t)


¡ ¢
pour lequel la commande h∗ = −GT z assure la stabilité AT − C T GT et donc la stabilité de
A − GC. Il suffit dès lors d’appliquer le principe de la dualité pour retrouver les résultats énoncés
pour la commande. Toutes les techniques utilisables pour la stabilisation (trouver K tel que (A-BK)
soit stable) peuvent être mises en œuvre pour la reconstruction d’état, en remplaçant :

A → AT
B → CT
L → GT
−Ṗ → Ṁ
M = MT > 0
96 CHAPITRE 7. RÉSUMÉ

7.6.2 Cas stochastique : Horizon fini


Le processus aléatoire correspondant est

ẋ = 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,


On considère le critère J à minimiser

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

où x̂˙ − Ax̂ − Bu = w et y − ŷ = Ce.


Solution
x̂˙ = Ax̂ + Bu + Mτ C T R−1 (y − C x̂)
Ṁτ = Mτ AT + AMτ − Mτ C T R−1 CMτ + Q
avec Mt0 = S.
On peut remarquer que Q−1 , R−1 , S −1 jouent les rôles respectifs de pondérations et vérifient
l’interprétation physique suivante :
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.

7.6.3 Horizon infini :

L’horizon étant infini, le critère de performance est réduit à l’expression suivante

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

où la solution du problème d’estimation est

x̂˙ = Ax̂ + Bu + M∞ C T R−1 (y − C x̂)


avec M∞ solution de l’ARE

M∞ AT + AM∞ − M∞ C T R−1 CM∞ + Q = 0


7.7. MÉTHODE LINÉAIRE QUADRATIQUE GAUSSIENNE (LQG) 97

7.7 Méthode Linéaire Quadratique Gaussienne (LQG)


On considère le système 
 ẋ = Ax + Bu + Hw
y = Cx + v

z = Nx
où z désigne le vecteur à réguler, w et v représentent des bruits blancs, de moyenne nulle, indépen-
dants, avec respectivement pour matrice de covariance W et V . A partir du vecteur y de mesures
bruitées, nous recherchons une loi de commande qui minimise le critère
"Z #
T ¡ ¢
T T
J = lim E z Qz + u Ru dt (7.4)
T →∞ 0

où Q et R sont deux matrices de pondération avec Q = QT ≥ 0 et R = RT > 0.


Deux étapes composent cette synthèse :
1er étape Sous réserve que la paire(A, HW 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.

x̂˙ = Ax̂ + Bu + Kf (y − C x̂)

avec Kf = Pf C T V −1 où Pf obéit à l’équation de Riccati suivante

Pf AT + APf − Pf C T V −1 CPf + HW H T = 0

avec Pf = PfT > 0.


2ème étape Sous réserve que la paire(A, B) est stabilisable et la paire(A, Q1/2 N ) détectable la
commande optimale est alors de la forme

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É

7.8 Méthode LQG/LTR


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. Les bruits d’états et de mesures sont fictifs et servent à engendrer un gain de Kalman
et par voie de conséquence un correcteur dynamique avec des propriétés du transfert de boucle
intéressantes telles du gain en basse fréquence et une atténuation des hautes fréquences.

7.8.1 Recouvrement asymptotique à l’entrée


a) Synthétiser dans une première étape, le correcteur LQ par un choix approprié des pondérations
Q et R obéissant aux exigences du cahier des charges. Les aspects de cette première synthèse
concernent le comportement basse fréquence des valeurs singulières du transfert LLQ (s) =
−1
Kc (sI − A) B, les fréquences de coupures, l’affaiblissement haute fréquence, etc...
b) Dans une seconde étape, à partir d’un réglage nominal W0 et V0 du filtre de Kalman, on
augmentera le paramètre q du nouveau réglage

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

7.9 Commande LQ à pondérations fréquentielles


On s’intéresse ici à modeler le transfert de boucle afin de répondre aux objectifs de perfor-
mance/robustesse.
Rappel : Théorème de Parseval :
Z ∞ Z ∞³ ´
¡ T ¢ 1
y Qy + uT Ru dt ⇔ ∗
y(jw) Q(jw) y(jw) + u∗(jw) R(jw) u(jw) dw
0 2π −∞

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

ū = −Lx1 x1 − LxQ xQ − LxR xR


−1/2
kr 1/2 1+τ p
En règle générale, on fixe R(p) = 1+τ rp
Im et Q(p) = kQ 1+10τQQ p Iq où τ1r > τ1Q , m est la dimension
des entrées et q la dimension des sorties.
−1/2
Rappel : R(p) permet une décroissance plus rapide hors de la bande passante et donc une
1/2
amé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.
100 CHAPITRE 7. RÉSUMÉ
Bibliographie

[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

Vous aimerez peut-être aussi