Optimisation de la Commande
Code : AC431, Auteur Damien Koenig Plan de la présentation
– Principe d’optimalité de Bellman
Application: recherche du plus court chemin
– Synthèse LQ
Commande LQ, Stabilité et Robustesse Observateur LQ, Filtre de Kalman
– Synthèse LQG/LTR
– Commande LQ à pondérations fréquentielles
Étude de cas
8sc cours, 4 sc TD, 3 sc TP
Pondérations 25%TP, 75%Exam
Principe d’optimalité de Bellman
• Principe d’optimalité de Bellman
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.
• Rappel : pour un système MIMO à n états et m commandes, le gain K solution du problème de commande présente :
• n*m paramètres dont n*m-n paramètres libres
Il y a donc une infinité de solutions.
On propose ici de rechercher les paramètres du gain tels que la commande obtenue minimise un critère énergétique …
Exemples de problèmes d’optimisation
Problème 1
Problème 2: Gestion de stock
Critère énergétique
Problème LQ : On considère le système
L’objectif est de déterminer le gain optimal K tel que la commande u=Kx minimise le critère
où
sont des matrices de pondérations fixées selon les objectifs souhaités …
t Cx
ty
t Bu t
Ax t
x
u 21
x
t Qx t u
t Ru t
dtJ min
0
T T
u
0
Q
Q T R RT 0
Problème 3: Estimateur optimal de Kalman
• Horizon fini : on considère à nouveau le critère
Application du principe d’optimalité de Bellman
On s’intéresse ici à rechercher le chemin de distribution de l’eau le moins couteux entre les villes A et G, lesquelles sont reliées par différentes villes
Chaque arrête représente le coût d’acheminement de l’eau entre 2 villes, par exemple entre F1 et G, le coût est de 10 euros
A
B2 B1
C1
C2
C3
D1
D2
E1
E2
E3
F1
F2
G 3
3
2 1
6
3 2 6
10 5
7 7
8
4 3
5
4
5
3 4
Exemple : Recherche du chemin à coût minimal
On considère le réseau de distribution d’eau suivant :
• Déterminer d’après le principe de Bellman le chemin de coût minimal (plus court chemin) qui permet de relier A à G.
• On notera :
– d(P,Q) la distance entre P et Q
– L(P) la longueur du plus court chemin (coût optimal) entre un point P quelconque du graphe et le point G.
– On recherche donc L(A).
A
B2 B1
C1
C2
C3
D1
D2
E1
E2
E3
F1
F2
G 3
3
2 1
6
3 2 6
10 5
7 7
8
4 3
5
4
5
3 4
Solution
• Etape 1 :
– de F1, on a L(F1) = d(F1,G) = 10 – de F2, on a L(F2) =d(F2,G) = 3
• Etape 2 :
– de E1, on a L(E1) = d(E1,F1)+L(F1)=16
– de E2, on a L(E2) = min{d(E2,F1)+L(F1), d(E2,F2)+L(F2)}
= min{4+10, 7+3)}=10 – de E3, on a L(E3) = d(E3,F2)+L(F2)=8
• Etape 3 :
– de D1, on a L(D1) = min{d(D1,E1)+L(E1), d(D1,E2)+L(E2)}
= min{2+16, 5+10)} = 15
– de D2, on a L(D2) = min{d(D2,E2)+L(E2), d(D2,E3)+L(E3)}
= min{4+10, 7+8)} = 14
A
B2 B1
C1
C2
C3
D1
D2
E1
E2
E3
F1
F2
G 3
3 2
1 6
3 2 6
10 5
7 7
8
4 3
5
4
5
3 4
Etape 1 Etape 2
Etape 3
Suite de l’exercice
• Etape 4 :
– de C1, on a L(C1) = d(C1,D1)+L(D1) = 3+15 = 18
– de C2, on a L(C2) = min{d(C2,D1)+L(D1), d(C2,D2)+L(D2)}
= min{5+15, 8+14)} = 20
– de C3, on a L(C3) = d(C3,D2)+L(D2) = 3+14 = 17
• Etape 5 :
– de B1, on a L(B1) = min{d(B1,C1)+L(C1), d(B1,C2)+L(C2)}
= min{2+18, 1+20)} = 20
– de B2, on a L(B2) = min{d(B2,C2)+L(C2), d(B2,C3)+L(C3)}
= min{6+20, 4+17)} = 21
• Etape 6 :
– de A, on a L(A) = min{d(A,B1)+L(B1), d(A,B2)+L(B2)}
= min{3+20, 3+21)}=23
A
B2 B1
C1
C2
C3
D1
D2
E1
E2
E3
F1
F2 3 G
3 2
1 6
3 2 6
10 5
7 7
8
4 3
5
4
5
3 4
Etape 1 Etape 2
Etape 3 Etape 4
Etape 5 Etape 6
Parallèle avec l’Automatique : Commande LQ
On considère le système à temps discret
k k
1
k Ax Bu
x
f
f Tf TfT T T
k j
j j T
j j j T
u J u J x k k xjQ x u R u x P x
2 1 2
, 1 min
1
0
k k
1
k Ax Bu
x
où le critère à minimiser est :
Le problème consiste à déterminer la trajectoire unique reliant les points x(k0) et x(Tf) telle que cette trajectoire est optimale au sens où elle minimise le critère énergétique J sous la contrainte de la dynamique du modèle xk1 Axk Buk
Remarque : J représente la somme des coûts pour aller de x(k0) à x(Tf), notre travail consiste à trouver u telle que ce coût soit le plus petit possible.
Rappel: recherche du minimum de f(x)
Hyp: f de classe C2
Si x* est un minimum local de la fonction f alors
= 0 pour h = 0
On applique un DL à l’ordre 2 de f(x*+h) autour de x*,
x* h
f x* 0f
3*2
* 2 2
*
* *
*
2
1 O
x x h f
x x h f
x f h x
f
02
0 1 2
*
* 2 2
*
* *
*
x
x h f
x x h f
x f h x
soit f
Recherche du minimum
• h > 0, on en déduit
• h < 0, on en déduit
• comme, h est proche de 0 alors
02 1
*2
* 2
*
*
x x h f
x x f
02 1
*2
* 2
*
*
x x h f
x x f
0*
*
x
x
f est une condition nécessaire
Conditions pour un minimum
Pour que x* soit un minimum et non un maximum il faut de plus
Soit les conditions suivantes :
0x x f
*
*
0x x f
*2
*
2
0x x f
*2
*
2
Application à la commande LQ
Notations :
Le coût associé au point final est
où le poids final Ptf est donné par le designer.
Le coût associé pour aller du point x(k) au point final est
où Pk est un coût à déterminer
f ff T T
TT f
* f f
f
opt x P x
2 T 1
, T x J T
, T x
J
k kT k T
T T T T
k j
j j T
j j j T
u J u J x k k xjQ x u R u x P x x P x
f f f f
2 1 2
1 2
, 1 min
1
Application du principe de Bellman
• Partant de pt final x(Tf) connu au point précédent x(Tf-1). La dernière trajectoire à minimiser est alors donnée par le coût suivant :
• sous la contrainte de la dynamique du système
f ff f f f
f
f f T T T
1 T T 1 T T
1 1 T
T 1 T T
1 T
f u f
x P 2x
u 1 R
u x
Q 2 x
1
1 T
, 1 T
x J u
J min
k k
1
k Ax Bu
x
Solution
• Etape 1
• On obtient une commande linéaire fonction de l’état
• Etape 2
Soit
T 1
0u
1 T
, 1 T
x J
u*
f u
f
f
1 T T Tf 1T T 1
* T 1
Tf R B P B B P Ax
u f f f
0u
1 T
, 1 T
x J
2 1 T
f 2 f
f
R B P B
01 T
u
1 T
, 1 T
x J
f
f T T
1 T 2f f f
2
Solution
• Etape 3 : On remplace la solution u* dans le critère partiel que l’on identifie au coût minimal désirée, i.e,
– Soit
T T 1 T 11 f T
*T 1
f f f
f x f P x
2 1 1
T , u
, 1 T
x
J
R B P B
B P AB P A A
P A Q
P
A P B L
A P A Q
P
f f
f f
f f
f
f f f
f f
T T 1 T T
1 T T T
T T 1
T 1
T
T T TT 1 T T
1 T 1
T
Temps rétrograde
• EARD à temps rétrograde, déterminée hors ligne, i.e.,
...
u L
P u
L P
P
QT T T 1 T 1 T 1 T 2 T 2 T 2
f f
f f
f f
f
f
Exercice
• Pour xk+1= 2xk+uk déterminer la commande u qui stabilise x et minimise
• 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.
f
k k
f Tf TfT T T
k
T k T
u J u J x xk x u Ru x P x
2 1 2
0 1 , 0 min
1 0
Solution de l’exercice
Solution de l’exercice
Soit pour une commande optimale u2* = -x2 un coût optimisé égale à
Solution de l’exercice
• Si l’on itère les résultats précédents selon le principe de Hamilton Jacobi Bellman on trouve les résultats suivants :
LQ à horizon infini : cas discret
• Critère
• Contrainte
• Solution
– Gain
– EAR
T 1
0
k T k k
k k
T k T k
u
f
f
u R u x
Q 2 x
lim 1 ,
x J u
J min
k k
1
k Ax Bu
x
R B P B
B P AB P A A
P A Q
P T T T 1 T
R B P B
B P Axu* T 1 T
Application LQ à horizon infini : cas discret
Exercice: Pour xk+1= 2xk+uk déterminer la commande u qui stabilise x et minimise
1
2 0
lim 1 ,
min
f
f
T
k
k T k k
T T k
u J u J x x x u Ru
Résultat fondamental : cas discret
• Critère
• Contrainte
• Solution
D’après le principe de Bellman, ce problème se réduit à trouver une fonctionnelle V(x(t), t) définie sur [0, Tf] solution de
T 1
T
T f
0
k k k
1 T 1
0, u , u L x , u , k L x , T
u
J f f
f
f
x , u , k
F
xk1 k k
, , , , , 1
min
1 ,
1 ,
, min
,
t t u x F V t u x L
t t
x V t u x L t
t x V
t t t
u t
t u t
coût immédiat + coût optimisé
Résolution
• u* est la solution qui donne le min de la fonctionnelle V(x(t),t)
• Rappel
u 0
t , t x et V
u 0 t , t x V
1 t , t , u , x F V t
, u , x L min arg
u
2 2
u u
t t
t u t
*
*
f
min
x*
f min arg
x x
*
0x x f
*
*
0x x f
*2
*
2
LQ à horizon fini : par res. de l’eq aux différences
• Pb : Déterminer une fonctionnelle V(x(Tf-1), Tf-1) solution de
• Résolution
avec
Il reste à rendre la fonctionnelle V(x(Tf-1), Tf-1) la plus petite possible
xTf Tf LxTf uTf Tf Vx Tf Tf
V 1, 1 1, 1, 1 ,
f f f f f f
f Tf TfT T T
T T
T T
T T
T f
f T x Q x u R u x P x
T x
V 2
1 2
1 1 ,
1 1 1 1 1 1 1
1 1 12 1 1 ,
1
f Tf Tf
T T f
f T x P x
T x V
0
u2
f 1 T , f 1 T x 2V et 0 u* u u
f 1 T , f 1 T x
V
Résultat fondamental : cas continu
• LQ:
– contrainte
• Cas général – Minimiser
– Sous la contrainte
f
f ff
T
t T T T
t T T t
t T t
t x P x
2 dt 1 u R u Qx
2 x u 1
J
T
T
T f
t L x, u, t dt L x , T u
J f f
f
x, u, t
F x
Bu Ax
x
Hamilton Jacobi Bellman (HJB)
• D’après le principe de Bellman ce problème ramené au cas continu se réduit à trouver une fonctionnelle V(x(t), t) solution de l’eq. HJB
• Solution
F
x, u, t
x t V
, u , x L t min
t V , u , x L min t
, t x
V u u
u 0 et HJB
u 0 HJB
t , u , x x F
t V , u , x L min arg
u
2 2 u
u
t u t
*
*
LQ à horizon fini par résolution de l’éq HJB
• Critère
– Contrainte
• Résolution
– avec
f
f ff
T
t T T T
t T T t
t T t
t x P x
2 dt 1 u R u Qx
2 x u 1
J
Bu Ax
x
T t t
t T t
t Qx u R u 2 x
t 1 , t x
V
f
f f f
T
t T T T
t T T t
t T t
t x P x
2 dt 1 u R u Qx
2 x t 1
, t x V
xTt Ptxt 2t 1 , t x
V
Solution
• On détermine l’eq HJB
Où
• On obtient
x Qx u R u
HJBx P x x
P x x
P
xtT t t tT t t tT t t tT t tT t t
2
1 2
1 2
1 2
1
u 0 et HJB
u 0 HJB
2 2 u
u *
t t T t1
*t R B P x u
0 u R
HJB2 t
2
T t t1
t t
T t t
t Q A P P A P BR B P
P
f
f T
T Q
P
LQ à horizon infini : cas continu
• Critère
• Contrainte
• Solution
f
f
T
t T t t T T t
u J u J x x Q x u R u dt
2 0
lim 1 ,
min
Bu Ax
x
t T
t R B Px
u* 1
P B PBR PA
P A
Q T 1 T
0
Stabilité : continu
• Système bouclé
– Où la commande est donnée par – avec
– est stable au sens de Lyapunov ssi
il existe une fonction de Lyapunov candidate > 0
dont sa dérivée le long des trajectoires non nulles de (1) est < 0
– Preuve
t
* t
t L x
u P
B R
Lt t1 T
t
tt A BL x
x
x x P x 0 V t Tt t t x 12
x Q x u R u
12x
Q L R L
x 0V t Tt t t Tt t t Tt t Tt t t t
Propriétés de robustesse d’une commande LQ
• Le transfert de boucle s’écrit
• avec
On pose
On montre après quelques manipulations algébriques sur l’EAR que
Application: propriétés de robustesse
Application: propriétés de robustesse
On obtient la commande optimale suivante
Application: propriétés de robustesse
Commande Optimale par maximisation de l’Hamiltonien
PMP: Principe du Maximum de Pontryaguine
• On défini l’Hamiltonien
– Rq:
• Cas général – Continu
avec
– Discret
, x, u
12
x Qx u Ru
Ax Bu
H T T T
f
T T
f f f
T 0
Ru u Qx 2 x
1 T T
T T
T P x H , x, u Ax Bu dt
2x u 1
J
x, u, , t
L
x, u, t
F
x, u, t
H T
x, u, k
F
x, u, k
L
Hk1 Tk1
x, u, k
F x
Équations canonique de Hamilton
• Conditions au 1er ordre :
Avec la condition terminale
+conditions
H x
x H
f f
f T T
T T
T x P
x
final
Coût
u 0 H
* u u
u 0 H
2 2
1 k
1 1 k
k H
x
k 1 k xk
H
u 0 H
* k
k u
k u 1
k
u 0 H
2k 1 2 k
Application: Exercices
• Exercice 1: On considère le système
• Aide : on pose l’Hamiltonien
• Avec les conditions
x H
0
u H
* u u
0
u H
2 2
, x, u
12
x Qx u Ru
Ax Bu
H T T T
Exercice 1: Maximisation de l’Hamiltonien
• Solution de l’exercice 1
Exercice 2: Véhicule à essence
Eléments de réponse : exercice 2
• Rappel : Résolution par maximisation de l’Hamiltonien : H – Cas continu
avec
– Application : Véhicule à essence
avec
On désire maximiser x(T) et on souhaite S(T) = 0 pour dépenser tout le carburant. est un multiplicateur constant de Lagrange utilisé pour dualiser la containte S(T)=0.
– Le PMP affirme que si u est une solution optimale, alors :
x, u, , t Lx, u, t Fx, u, t
H T
x u k
F
x , ,
2 2
2 2 0 1
, ,
, u u
u u t
u x
H x s x s
f TTf Tf
T
Tf x P
T x
final Coût
0
*
u
u u
H
22 0
u H
T S T Cte x
final
Coût