Vous êtes sur la page 1sur 40

Techniques de commande

Chapitre 2 : Commande optimale

Dr. Billel TALBI


Département d’Electronique
Université Mohamed El Bachir El Ibrahimi de Bordj Bou Arréridj
Commande optimale

Références
Plan du
bibliographiques
chapitre

Introduction

Indice de performance

Commande linéaire quadratique

Observateur de Kalman

Commande linéaire quadratique gaussienne

2
Commande optimale
Introduction

• Les problèmes de commande optimale se rencontrent dans la vie de tous les jours : comment
arriver à destination le plus rapidement possible, comment minimiser sa consommation...

• Pour un système dynamique donné et dont les équations sont connues, le problème de
commande optimale consiste à trouver la commande optimisant (extrémisant) un critère (Fonction
de cout, fonction objective ou indice de performance) donné.

• L’objectif de la commande optimale est alors de trouver la commande u(t) qui conduit le système
d’un état initial vers un état final sous quelques contraintes sur la commande et sur l’état en même
temps optimiser un certain critère ou indice de performance.

3
Commande optimale
Indice de performance (Critère, Fonction objective, Fonction de cout)

Définition-indice de performance : est une fonction à optimiser pour imposer au système


d’atteindre un objectif au de suivre des trajectoires.

Remarque : Sur le plan pratique il n’est pas facile de déterminer un critère de performance; toutefois
on peut toujours se ranger dans l’une des catégories suivantes :
• Minimiser un temps.
• Optimiser une amplitude.
• Maximiser un profit où un revenu.
• Minimiser une erreur.
• Minimiser une consommation.

4
Commande optimale
Indice de performance (Critère, Fonction objective, Fonction de cout)

Les critères les plus utilisés sont :


 Critère pour temps minimal : tf

Transfer le système de x(t0) à x*(tf) souhaité en un temps minimal: J  dt


t0
 Critère pour carburant optimal :
Soit le problème d’un hélicoptère. Soit u(t) la poussée du moteur. |u(t)| va être
proportionnel au taux de consommation du carburant. Donc pour minimiser la
tf 
consommation, l’indice de performance sera : 
J  | u (t ) | dt
t0
ou 
J  | u (t ) | dt
0

Dans le cas où l’hélicoptère possède plusieurs moteurs:


tf 
J  
t0
i | ui (t ) | dt ou J  
0
i | ui (t ) | dt avec αi facteurs de pondérations.

5
Commande optimale
Indice de performance (Critère, Fonction objective, Fonction de cout)

 Critère pour énergie minimale :


Soit un signal s(t), alors son énergie est proportionnelle à s²(t). Alors soit ui(t) un courant de la
iéme boucle d’un réseau électrique. Donc ∑riui²(t) représente l’énergie totale du réseau, où ri est
une résistance de la boucle i. Pour minimiser l’énergie consommée, le critère devra être :
tf 
J   r u ²(t ) dt
t0
i i ou J   r u ²(t ) dt
0
i i

Ou en générale: tf 


J  uT (t ) Ru (t ) dt
t0
ou 
J  u T (t ) Ru (t ) dt
0

 u1 (t )   R1 0 0 
 u (t )  0 R2 
avec: u (t )   2  et R    est une matrice de pondération diagonale
   0 
h     définie positive.
 m 
u ( t ) 0 0 Rm 

6
Commande optimale
Indice de performance (Critère, Fonction objective, Fonction de cout)

Remarque :
Dans ce contexte, on peut minimiser l’intégrale de l’erreur carré d’un système de poursuite:
tf 
J 
t0
xT (t )Qx(t ) dt ou 
J  xT (t )Qx(t ) dt
0

avec : x(t )  xr (t )  xd (t ) où : xr (t) vecteur d’état réel (actuel) et xd (t) vecteur d’état désiré,

Q1 0 0
0 Q 
Q 2  est une matrice de pondération semi-définie positive
 0
 
0 0 Qn 

7
Commande optimale
Commande linéaire quadratique ‘LQR’\Régulateur LQR
Situation du problème
• Supposons qu’on a le système d’ordre n à une seule entrée u(t)/une seule sortie y(t) :
 x(t )   A B   x(t ) 
 y (t )   C 0  u (t ) 
  
• On cherche la commande u(t) qui, quelle que soit la condition initiale x(0)=x0 fixée, minimise le
critère linéaire quadratique : 
J   x(t ) 
Qx(t )  u (t )T Ru (t ) dt
T

où Q et R sont des matrices symétriques de pondération, respectivement semi définie positive et


définie positive.
• L’objectif du problème est donc de ramener l’état au voisinage de l’origine, en assurant un compromis
entre l’évolution de l’état et celle de la commande.
8
Commande optimale
Commande linéaire quadratique ‘LQR’ \Régulateur LQR

Solution du problème
• Si la paire (A, B) est stabilisable (commandable), il existe une commande solution optimale du
problème du régulateur linéaire quadratique à horizon infini en temps continu, dont la
structure sur la figure ci-contre, est donnée par :
u (t )   Kx(t )   R 1 BT Px(t )
Où P=PT est l’unique solution semi-définie
positive de l’équation de Riccati :

PA  AT P  PBR 1 BT P  Q  0
K est un vecteur ligne
• Le système bouclé est asymptotiquement stable, et de n composantes.

la valeur optimale du critère est : Figure 1. Structure en boucle fermée de la


solution optimale.
J min  x0T Px0
9
Commande optimale
Commande linéaire quadratique ‘LQR’ \Régulateur LQR
Démonstration de la solution LQR

• La dynamique du système en boucle fermée • Ceci signifie, qu’il existe une fonction de
sur la loi de commande u(t)=-Kx(t) donne à Lyapunov :
V ( x)  xT (t ) Px(t )
l’équation : x(t )  ( A  BK ) x(t )  ABF x(t )
ABF
définie positive et dont la dérivée :
• La contrainte ABF stable entraine qu’il existe
une matrice symétrique définie positive P vérifie
d T
dt
 
x (t ) Px(t )  xT (t ) ABF T P  PABF x(t )

l’équation de Lyapunov: est semi-définie négative, ce qui peut

ABF T P  PAABF  Q s’exprimer par l’existence de Q  0 telle que :


d T
avec Q matrice symétrique définie négative. x (t ) Px(t )  xT (t )Qx(t )
dt

10
Commande optimale
Commande linéaire quadratique ‘LQR’ \Régulateur LQR
Démonstration de la solution LQR
• Par ailleurs, la loi de commande implique que • Il en résulte que l’on peut choisir :
le critère J se réexprime : Q  Q

• Alors le critère J peut s’exprimer :
J   x(t ) 
Qx(t )  ( Kx(t ))T R( Kx(t )) dt
T

 

  
0
d 


J   x(t )T Qx(t ) dt    xT (t ) Px(t )  dt
  x(t ) Qx(t )  x(t ) K RKx(t ) dt   dt 
T T T
0 0

 J    xT (t ) Px(t )    xT () Px()  xT (0) Px(0)
0

  
 0
 

  x(t )T    
Q  K T RK x(t )  dt  x(t )T Qx(t ) dt • La stabilité asymptotique du système bouclé
0  0
 Q 
impose que x(∞)=0, ce qui implique que le
• Il est rappelé que le choix de la matrice Qh
critère à minimiser vérifie :
(semi- ou strictement) définie négative est
J min  xT (0) Px(0)  x0T Px0
arbitraire (sous quelques réserves).
11
Commande optimale
Commande linéaire quadratique ‘LQR’ \Régulateur LQR
Démonstration de la solution LQR

• D’autre part, on a : • La variation sera :


dK T RK  K T RdK  AT dP  dK T BT P  K T BT dP  dPA  dPBK  PBdK  0
T T
 T

d T
x (t )Qx(t )  x (t ) Q  K RK x(t )   x (t ) Px(t )
dt      
dK T RK  BT P  K T R  PB dK  AT  K T BT dP  dP  A  BK   0

 xT (t )   A
BF
T

P  PABF x(t ) • Le critère J sera minimum pour dP=0 et dK≠0.
 Q  K T RK   ABF T P  PABF Soit :
  
dK T RK  BT P  K T R  PB dK  0 
 Q  K RK  ABF P  PABF  0
T T
 K  R 1 BT P
 Q  K T RK  AT P  K T BT P  PA  PBK  0 ....(*)
• On remplace K dans l’équation (*) et on
• Si K varie de dK et P variera de dP( A, B, R et obtient la condition; P doit vérifier l'équation
Q étant constant). de Riccati :
Q  PA  AT P  PBR 1 BT P  0

12
Commande optimale
Commande linéaire quadratique ‘LQR’ \Régulateur LQR

Exemple :  Procédure pour le régulateur LQR :


• Soit le système linéaire décrit par les
• Ecrire A et B du système;
équations d’état :  x1 (t )  x2 (t )
 • Choisir les matrices de pondération R
 x2 (t )  u (t )
et Q;
• Calculer la loi de commande optimale en
• Résoudre l’équation algébrique de
régime stationnaire qui minimise la fonction
 Riccati pour trouver P :
de coût : J  x12 (t )  u 2 (t )  dt avec 
2
0
0 Q  PA  AT P  PBR 1 BT P  0
• Déterminer les pôles du système bouclé • Calculer K via :
par cette loi de commande et commenter K  R 1 BT P
sa stabilité en fonction de .

13
Commande optimale
Commande linéaire quadratique ‘LQR’ \Régulateur LQR

Exemple (Solution) :
• L’équation d’état de ce système est de la  P11 P12  0 1  0 0   P11 P12   P11 P12  0  P11 P12    2 0
    1 0   P P    P P  1  10 1  P P    0
 P12 P 22  0 0    12 22   12 22    12 22 
  0 0 
forme : 0 P11   0 0   P12    2 0
0 1  0         P12 P22    0
x(t )  Ax(t )  Bu (t ) avec A    et B  1  0 P12   P11 P12   P22   0 0
 0 0   
 0 P11   P12 P12 P22    2 0
2
   0
et la fonction de coût est le critère quadratique :  11
P 2 P12   P12 P22 P22  
2
0 0 
   2  P122
  2 0 P11  P12 P22 
J  
x(t ) Qx(t )  u (t ) Ru (t ) dt avec Q    et R  1  0
T T
 P11  P12 P2211 2 P12  P222 
0  0 0 
Cette équation matricielle est équivalente au
Ecrivons l’équation algébrique de Riccati (en
système de trois équations suivant :
posant P symétrique):   2  P12 2  0

PA  AT P  PBR 1 BT P  Q  0  P11  P12 P22  0

2 P12  P22  0
2

14
Commande optimale
Commande linéaire quadratique ‘LQR’ \Régulateur LQR

Exemple (Solution) :
• On vérifie aisément que la solution unique 0 1  0  0 1 
ABF  A  Bk        
2   
     2  
0 0 1  
définie positive est donnée par :
  2
et son polynôme caractéristique :
 
P    s 0  0 1 
  2   det( sI  ABF )  det( sI  A  Bk )  det    
 0 s      2   
  
• La loi de commande résultante est alors : s 1  
 det      s( s  2  )    s ²  2  s  
   s  2  
  2    x1 (t )   
u (t )  kx(t )   R B Pxt ()  1 0 1 
1 T
 
  2    x2 (t )  • Les pôles du système bouclé sont donc :
  
 x (t ) 

2    1     x1 (t )  2  x2 (t )  S1   / 2  1  J  et S2   / 2  1  J 
  x (t )
 2 
La stabilité du système bouclé est donc garantie
• La matrice d’état du système bouclé vaut :
quel que soit la valeur de .
15
Commande optimale
Commande linéaire quadratique ‘LQR’ \Régulateur LQR

Remarque :
Supposons que le critère quadratique est défini sur un horizon fini en temps et donné par :
tf

J   x(t ) Qx(t )  u(t ) 


T T
Ru (t ) dt
t0
La commande optimale du régulateur linéaire quadratique est alors :

u (t )   K (t ) x(t )   R 1BT P(t ) x(t )


Où P(t) est la solution de l’équation différentielle de Riccati:

P(t ) A  AT P(t )  P(t ) BR 1BT P(t )  Q   P(t )


La valeur optimale du critère est :
J  x0T P(0) x0

16
Commande optimale
Commande linéaire quadratique ‘LQR’ \Problème de poursuit

• Le problème à résoudre consiste à déterminer une loi de commande optimale u(t) permettant
de minimiser un critère quadratique et transférer la sortie du système y(t) d’une valeur initiale à
une valeur suffisamment voisine d’une consigne constante yc(t) définie dans l’espace d’état.

H est un scalaire dit


• La loi de commande optimale u(t), dans de précommande.

le cas du problème de poursuit, est


alors :

u (t )  Hyc (t )  Kx(t )
1 T K est un vecteur ligne
 Hyc (t )  R B P x(t ) de n composantes.

Figure 2. Structure en boucle fermée de la commande


LQR avec une précommande H.
17
Commande optimale
Commande linéaire quadratique ‘LQR’ \Problème de poursuit

Problème de poursuit avec critère quadratique

• Dans l’état stationnaire (régime permanant), qui correspond à x(t )  0, on doit avoir y (t )  yc .

• L’équation du système en boucle fermée avec la commande s’écrit, pour cet état :

0  ( A  BK ) x(t )  BHyc (t )
 x(t )  ( BK  A) 1 BHyc (t )
• L’équation de sortie donne alors :

y (t )  yc (t )  Cx(t )  C ( BK  A) 1 BHyc (t )

• D’où il découle que :


1
C ( BK  A) BH  1  H  C ( BK  A) 1 B 
1
 

18
Commande optimale
Commande linéaire quadratique ‘LQR’ \Problème de poursuit
Exemple (simulation sur MATLAB):
Considérons le système défini par :
 x(t )   A B   x(t )  clc ; clear all ; %------------------------------------------------------------------
 y (t )     %-------------------------------------------------------- % Calcul du vecteur K de retour d’état LQR
  C 0  u (t )  % Création du système dans l’espace d’état %------------------------------------------------------------------
%--------------------------------------------------------
1 4 1 2 Q=[ 30 0 0; 0 1 0; 0 0 1]; % Définir la matrice de pondération Q
A=[ 1 4 -1; 6 -1 3; 2 2 -5]; % Définir la matrice d’état
avec A   6 1 3  , B   3  et C  1 0 0
 R=1; % Définir la matrice de pondération R
B=[ 2; 3;-1]; % Définir la matrice de commande [K, P, VP]=lqr(A, B, Q, R) % Calcul du vecteur optimale K
C=[1 0 0]; % Définir la matrice d’observation
 2 2 5  1 D=0 ; % Définir la matrice d’action directe
sys_BF=ss(A-B*K,B,C,D); % Définir le modèle d'état
%en BF par vecteur K
On souhaite calculer la loi de sys_BO=ss(A, B, C, D); % Définir le modèle d'état
%--------------------------------------------------------
figure
step (sys_BF, 10) % Réponse indicielle du système en BF
% Réponse indicielle du système en BO
commande : u (t )  Hyc (t )  Kx(t ), %--------------------------------------------------------
figure
% par vecteur K sur 10 s
%-------------------------------------------------------------------
step (sys_BO, 10) % Calcul de la précommande H
qui minimise le critère LQ suivant : %-------------------------------------------------------- %-------------------------------------------------------------------
% Vérification de la commandabilité H=(C*(B*K-A)^-1*B)^-1; %Calcul de précommande H
 30 0 0  %--------------------------------------------------------

 
sys_BFH=ss(A-B*K,H*B,C,0); % Définir le modèle d'état
J x(t )T Qx(t )  u (t )T Ru (t ) dt avecQ   0 1 0  et R  1 Comd = ctrb(A,B); % Calcul de la matrice % en BF par vecteur K
% de commandabilité % et précommande H
0  0 0 1  rang = rank(Comd); % Calcul du rang de la matrice figure
%de commandabilité
et permet d’avoir un gain statique if rang == size (A, 1) % Logique pour
step (sys_BFH, 10) % Réponse indicielle du système en BF
% par vecteur K et précommande H
% évaluer la commandabilité
% sur 10 s
unitaire pour une consigne yc(t) disp('System est commandable')
else
disp('System n est pas commandable')
échelon unitaire. end

19
Commande optimale
Commande linéaire quadratique ‘LQR’ \Problème de poursuit

Exemple (simulation sur MATLAB):


La réponse indicielle du système en boucle fermée (Sans précommande)
Résultats de simulation
System est commandable

Amplitude
K=

6.2970 2.0105 0.0576

H=

6.7810

La réponse indicielle du système en boucle ouverte Temps (secondes)


La réponse indicielle du système en boucle fermée (Avec précommande)
Amplitude

Amplitude
Temps (secondes)
Temps (secondes)
20
Commande optimale
Commande linéaire quadratique ‘LQR’ avec intégrateur

• Dans ce cas, pour assurer une meilleur précision de la commande LQ, une action intégrale est
incorporée avec la commande LQ.
• Afin de synthétiser la loi de commande
LQ, nous travaillons dans l’espace d’état
augmenté de l’état de l’intégrateur, en
considérant l’état intégrale comme suit:
xi (t )  yc (t )  y (t )  yc (t )  Cx(t )
• Par conséquent, le système augmenté de
l’intégration de l’erreur devient : Ki est un scalaire dit coefficient Kx est un vecteur ligne de
  x(t )   x(t )   A 0   x(t )   B  0 d’intégrateur. n composantes.
 x (t )             u (t )    yc (t )
  e(t )   xi (t )   C 0   xi (t )   0  1 

 A B1 B2
Figure 3. Structure en boucle fermée de la commande

 y (t )  C 0 x (t )

 C
LQ avec intégrateur.
21
Commande optimale
Commande linéaire quadratique ‘LQR’ avec intégrateur

• Le critère quadratique à minimiser est alors:



J    x (t ) 
Qx (t )  u (t )T Ru (t ) dt
T

• Dans ce nouvel espace, le problème LQR se résout via l’équation de Riccati associée :

Q  PA  AT P  PB1 R 1 B1T P  0

• La solution P de cette équation de Riccati nous permet d’obtenir directement la matrice de gain
LQR recherchée :
K  R 1 BT P
• Finalement, pour notre problème LQR avec action intégrale, la matrice de gains se décompose
de la façon suivante :
K   K x, LQR  Ki , LQR   u (t )   Kx (t )   R 1 BT Px (t )

22
Commande optimale
Commande linéaire quadratique ‘LQR’ avec intégrateur
Exemple :
• Considérons le système défini par :
 x(t )   A B   x(t ) 
 y (t )   C 0  u (t ) 
  
0 1  1 
avec A    , B    et C  1 0
 2 1 0
• On souhaite stabiliser ce système et suivre une consigne yc(t) (échelon) avec une erreur statique
nulle. Pour cela, on pondère dans le critère LQ l’intégrale xi(t) de l’erreur d’asservissement. Le

critère s’écrit donc :
J   10 x (t )  20 x (t )  0.1u ²(t )  dt
2 2
1 i
0

 x(t ) 
Calculer la loi u (t )   K   qui minimise le critère J .
 xi (t ) 
23
Commande optimale
Commande linéaire quadratique ‘LQR’ avec intégrateur

Exemple (solution) :
• La représentation d’état du système augmenté • La solution au problème LQR est donnée par le
de l’intégration de l’erreur est : système d’équations de Riccati suivant :
  x1 (t )   0 1 0   x1 (t )  1  0
        
  x2 (t )    2 1 0   x2 (t )   0  u (t )   0  yc (t ) Q  PA  AT P  PB1 R 1 B1T P  0
  x (t )   1 0 0   x (t )  0  1 


 i    i  K  R 1 BT P
 A B1 B2
  x1 (t )  • L’application numérique permet d’obtenir les
  
 y (t )  1 0 0  x2 (t ) 
  xi (t ) 
résultats suivants :

 C

• A partir du critère LQ, les matrices de K   K LQR  J LQR   11.5015 1 14.1421


K x, LQR  11.5015 1
pondérations sont : 10 0 0 
Ki , LQR  14.1421
Q   0 0 0  et R  0.1
 0 0 20 

24
Commande optimale
Commande linéaire quadratique ‘LQR’ avec intégrateur

Exemple (simulation sur MATLAB): La réponse indicielle du système en boucle fermée (Sans intégrateur)

• Schéma de simulation de la commande LQR


avec intégrateur sous MATLB/Simulink
Erreur statique
(Avec les paramètres d’exemple précédent).

La réponse indicielle du système en boucle fermée (Avec intégrateur)

Erreur statique ≈ 0

25
Commande optimale
Commande linéaire quadratique ‘LQR’
Remarques sur le choix des matrices de pondération

 Les matrices Q et R ne sont pas des données du problème (Comme les matrices A et B), mais des
paramètres de réglage, qui sont à la disposition de l’utilisateur pour ajuster les performances du
système commandé.
 La multiplication des pondérations Q et R par un même scalaire ne modifie pas le régulateur LQ.
 Restriction à des pondérations diagonales.
 Méthodologie itérative :
 Pondérations initiales : matrices identités.
 Régler globalement la dynamique en multipliant Q ou R par un scalaire.
 Ajuster les dynamiques sur les différents états en ajustant les éléments de Q.
 Ajuster les dynamiques des actionneurs en ajustant les éléments de R.
26
Commande optimale
Observateur de Kalman\Estimation linéaire quadratique

• Considérons le système stochastique d’ordre n à une seule entrée u(t)/une seule sortie y(t)
suivant :
 x(t )  Ax(t )  Bu (t )  v(t )

 y (t )  Cx(t )  w(t )

avec v(t) est un bruit blanc gaussien centré sur l'état de variance E{vvT}=V ≥ 0 (représenté les
perturbations extérieures agissant sur le système ou même les erreurs de modélisation) et w(t)
est un bruit blanc gaussien centré sur la sortie de variance E{wwT}=W > 0 (représenté le bruit de
mesure lié aux capteurs utilisés). La matrices de variance V est semi définie positive et la
matrice de variance W est définie positive.

• La présence de bruit sur la mesure et sur les états empêche une bonne reconstruction
de l’état. Il est alors nécessaire d’utiliser un filtre pour estimer l’état x(t).

27
Commande optimale
Observateur de Kalman\Estimation linéaire quadratique

• Un filtre (observateur) de Kalman est un système dynamique avec 2 entrées : la commande u(t)
et la mesure y(t), c’est-à-dire tous les signaux connus du système. L’état x(thou
) la sortie de ce
système dynamique est un estimé de l’état x(t) du système.

• Si la paire (A, C) est observable, l’ équation


du filtre de Kalman s’écrit :

x  Ax (t )  Bu (t )  L( y (t )  Cx (t ))

• Kalman et Bucy ont montré en 1961 que


pour un système linéaire bruité, cette L est le gain de Kalman (vecteur
colonne de n composantes).
forme de l’observateur est la meilleure
possible si les bruits sont gaussiens. Figure 5. Observateur de Kalman.
28
Commande optimale
Observateur de Kalman\Estimation linéaire quadratique
• Du fait que les signaux de bruits v(t) et w(t) du système soient gaussiens et du fait que le
système soit linéaire, on peut affirmer que l’erreur d’estimation e(t )  x(t )  x (t ) est une variable
aléatoire gaussienne.
• On calcule le gain de Kalman L afin de minimiser la variance de l’erreur d’estimation en régime
permanent (c’est-à-dire lorsque ce signal aléatoire est devenu stationnaire et que l’effet de
conditions initiales a disparu). Le critère que l’on cherche à minimiser s’écrit :
 

J  lim E   x(t )  x (t )  x(t )  x (t )  dt 
T
   
0 
• De façon tout à fait analogue au calcul du retour d’état LQ optimal, le gain optimal de Kalman
est : L  C T W 1
Avec    est la solution semi-définie positive de l’équation algébrique de Riccati :
T

AT  A  C T W 1C   V  0
29
Commande optimale
Observateur de Kalman\Estimation linéaire quadratique
Exemple :
• Soit le système stochastique décrit par les équations d’état :
  x1 (t )   0 1   x1 (t )  0  1 
 
  
  x (t )   4  u (t )  0  v(t )
 2  
x ( t )  20 0  2     

  x1 (t ) 
 y (t )  1 0     w(t )
  2 
x (t )

où v(t) et w(t) désignent deux bruits blancs indépendants, de moyenne nulle et de variance :

E{vvT}= 0.05 et E{wwT}=0.01


A partir de la mesure y(t) et de la commande u(t), on désire construire un filtre de Kalman
permettant d’estimer le vecteur d’état x(t).

• Donner les équations d’état du modèle de Kalman.


• Calculer le gain de Kalman en régime permanent.
30
Commande optimale
Observateur de Kalman\Estimation linéaire quadratique
Exemple (solution) :
• L’ équation du filtre de Kalman s’écrit : AT  A  C T W 1C   V  0
x  Ax (t )  Bu (t )  L( y (t )  Cx (t )) avec :
0.05 0 
 x1 (t )   0 1   x1 (t )  0  l1    x1 (t )   V   et W  0.01
 
   x (t )    4  u (t )  l   y (t )  1 0  x (t )    0 0 
 x2 (t )   20 0  2     2  2 
 l1 1   x1 (t )   0 l1  u (t )  • L’application numérique permet d’obtenir le
     

 2 l  20 0  2  
x (t ) 4 l2 y (t )  résultat suivant :

l  0.0223 0 
avec L   1  est le gain optimal de Kalman donné  
l2   0 0.4472 
par :
L  C T W 1
 2.2361
où  est la solution symétrique semi-définie L 
 0 
positive de l’équation algébrique de Riccati :
31
Commande optimale
Observateur de Kalman\Estimation linéaire quadratique
Exemple ((simulation sur MATLAB):
• Schéma de simulation du filtre de Evolution temporelle du filtre de Kalman

Kalman sous MATLB/Simulink (Avec les


paramètres d’exemple précédent, les
conditions initiales pour le système (π/2; 0),
pour le filtre de Kalman (π/8; 0)).

32
Commande optimale
Commande linéaire quadratique gaussienne ‘LQG’
Situation du problème
• Supposons qu’on a le système stochastique d’ordre n à une seule entrée u(t)/une seule sortie
y(t) :  x(t )  Ax(t )  Bu (t )  v(t )

 y (t )  Cx(t )  w(t )
Où v(t) est un bruit blanc gaussien sur l'état de variance E{vvT}=V ≥ 0 et w(t) est un bruit blanc
gaussien sur la sortie de variance E {wwT}=W > 0.

• On cherche la commande u(t) qui, quelle que soit la condition initiale fixée x(0)=x0, minimise le
critère linéaire quadratique :
 
 
J  lim E  x(t ) Qx(t )  u (t ) Ru (t ) dt 
T T
   
0 
avec Q ≥ 0 et R > 0.
33
Commande optimale
Commande linéaire quadratique gaussienne ‘LQG’

Solution du problème

• Si le système est détectable (c’est-à-dire la paire (A, B) est commandable et la paire (A, C)
observable), il existe une commande solution optimale du problème du régulateur linéaire
quadratique gaussienne à horizon infini en temps continu, est donnée par la théorème de
séparation. Ce théorème énonce que la solution du problème est composée de deux parties :

• Un observateur de Kalman (filtre de Kalman) permettant de donner l’estimée x(t ) de x(t) qui
est non déformée et à variance minimale.

• La commande par retour d’état à appliquer u (t )   Kx (t ) ; où K est calculé en considérant le


problème LQR correspondant (en enlevant v et w de l’équation d’état et E dans le critère).

34
Commande optimale
Commande linéaire quadratique gaussienne ‘LQG’

Solution du problème

Figure 6. Commande linéaire quadratique gaussienne .


35
Commande optimale
Commande linéaire quadratique gaussienne ‘LQG’
Exemple :
• Soit le système stochastique décrit par les équations d’état :
 x(t )   x(t )  u (t )  v(t )

 y (t )  x(t )  w(t )
où v(t) et w(t) sont des bruits blancs indépendants, centrés, de variances respectives V=3 et
W=1.
• Calculer l’observateur optimal (filtre de Kalman) permettant l’estimation de l’état x du
système, au sens de la minimisation de la variance de l’erreur d’estimation d’état.
 
• Calculer la loi de commande LQG qui minimise le critère :
  
0

J  lim E   x ²(t )  u ²(t )  dt 


• Donner le schéma bloc de la commande LQG.

36
Commande optimale
Commande linéaire quadratique gaussienne ‘LQG’
Exemple (solution) :
• L’équation d’état de ce système est de la forme : L’unique solution positive de l’équation de
 x(t )  Ax(t )  Bu (t )  v(t ) Riccati est :
  1
 y (t )  Cx(t )  w(t )
avec A  1, B  1, C  1, E[v]  3 et E[ w]  1 Alors le gain de Kalman est :
L  C T W 1
Ecrivons l’équation algébrique de Riccati : 1
AT  A  C T W 1C   V  0 • L’observateur optimale est donné donc par :
 2   2  3  0   2  2  3  0 x (t )  ( A  LC ) x (t )  Bu (t )  Ly (t )
Soit :  2 x (t )  u (t )  y (t )
  3 ou   1
37
Commande optimale
Commande linéaire quadratique gaussienne ‘LQG’
Exemple (solution) :

• En enlevant E dans le critère : Alors le vecteur optimal K est :


K  R 1 BT P
 

   x(t ) Qx(t )  u (t )Ru(t )  dt


1
J   x ²(t )  u ²(t )  dt  T T

0
2
0  0.4142
avec Q  1 et R  1
• Le contrôle LQG optimal est alors :
L’équation algébrique de Riccati est : u (t )   Kx (t )  0.4142 x (t )
PA  AT P  PBR 1 BT P  Q  0  2 P  P 2  1  0 avec:
 P 2  2 P  1  0  P  0.4142 ou P =  2.4142 x (t )  2 x (t )  u (t )  y (t )
L’unique solution positive de l’équation de
Riccati est : P  0.4142

38
Commande optimale
Commande linéaire quadratique gaussienne ‘LQG’
Exemple (solution) :
• Schéma bloc de la commande LQG :

39
Commande optimale

Fin du chapitre 2

40

Vous aimerez peut-être aussi