Cours de Commande optimale Mastère professionnelle - de satisfaire diverses contraintes imposées. - d’optimiser un critère choisi. Chapitre 1 : Introduction à la commande optimale La théorie de la commande optimale à un champ d’application 1- Objet de la commande optimale extrêmement vaste : Pour introduire la notion de commande optimale, considérons - l’exemple suivant : Pour arrêter la rotation d’un rotor tournant à une Régulation de la température d’une pièce ou d’un four en utilisant le minimum d’énergie. vitesse constante, on peut lui appliquer une charge extérieure C (t ) - perpendiculaire à son axe de rotation. Il s’agit alors de déterminer la Problème de poursuite : on souhaite que la sortie du système suive le mieux possible la consigne désirée ou prévue. Il s’agit commande C (t ) qui permet d’amener la vitesse de rotation du système dans ce cas de déterminer la commande qui minimise l’énergie de v = v0 à v = 0 . de poursuite. Cette détermination répond souvent à un objectif tel que, l’arrêt du D’un point de vue formel, le problème de commande optimale est un système en un temps minimum. Trouver C (t ) qui répond à cet objectif, problème de minimisation ou de maximisation d’une fonctionnelle ; est l’objet de la théorie de la commande optimale. c'est-à-dire, un problème de calcul des variations Le problème de détermination d’une commande optimale d’un 2- Formulation du problème de commande optimale processus peut s’énoncer comme suit : La théorie de la commande optimale couvre toutes les activités Un processus dynamique étant donné et défini par son modèle dynamiques où une performance optimale est exigée. Les systèmes à (représentation commander peuvent donc être d’origine diverses : mécanique, d’état, matrice de transfère, équations aux différences,…), trouver parmi les commandes admissibles celles qui électrique, électronique, biologie, chimie, économie,… permet à la fois : - Chaque problème de commande nécessite une description des de vérifier des conditions initiales et finales donnés. ISSAT Kairouan propriétés dynamiques du processus à commander. 1 2010-2011 Cours de Commande optimale Mastère professionnelle 1. Détermination du modèle mathématique du système 2. Formulation de l’indice de performances et des contraintes physiques Les systèmes étudiés sont décrits par des variables d’état. Par exemple : Il s’agit d’une grandeur mathématique désignée dans la littérature (a) Systèmes linéaires continus commandés X& = A(t ) X + B(t )U techniques selon le domaine : critère (en automatique), fonction coût où X ∈ ℜ et U ∈ ℜ . n m (en économie), fonctionnelle (en mathématique). Dans le cas où les matrices A et B sont constantes, on dit que le Dans ce qui suit, on utilise le mot critère. système est stationnaire. Remarque : (b) Systèmes non linéaires continus commandés X& = f ( X ,U , t ) où Sur le plan pratique il n’est pas facile de déterminer un critère ; toutefois on peut toujours se ranger dans l’une des catégories f ( X , U , t ) est une fonction suivantes : vectorielle non linéaire. - minimiser un temps ; - optimiser une amplitude ; - maximiser un profit où un revenu ; - minimiser une erreur ; - minimiser une consommation. (c) Systèmes discrets linéaires X k +1 = Ak X k + BkU k (d) Systèmes discrets non linéaires X k +1 = f ( X k ,U k , k ) Les critères les plus utilisés sont : Outre ce modèle, il faut formuler, pour un problème de commande (a) Problème à temps minimal optimale, le critère de performance à optimiser et les contraintes physiques. T J = ∫ dt t0 (b) Cas linéaire quadratique ISSAT Kairouan 2 2010-2011 Cours de Commande optimale Mastère professionnelle T1 1 J = ∫ X T QX + U T RU dt t0 2 2 Cas général : T J = φ ( X (T ), T ) + ∫ L( X , U , t ) dt t0 où L ( X , U , t ) est une fonction non linéaire et φ ( X (T ), T ) représente la fonction coût terminal. Pour la formulation des contraintes, il faut noter leur diversité lors de la commande d’un processus : soit sur le temps de simulation, sur la valeur de la commande, sur l’état du système,… On peut citer : - temps final fixe : T est donné ; - temps final libre ; - état initial fixe ; - contrainte sur l’état X (T ), ψ ( X (T )) = 0 ; - contrainte sur la commande U . Par exemple : −1 ≤ U (t ) ≤ 1 . ISSAT Kairouan 3 2010-2011 Cours de Commande optimale Mastère professionnelle où J (⋅) et h (⋅) sont deux fonctionnelles scalaires (c-à-d fonctions de la Chapitre 2 : Commande optimale des systèmes continus fonction X (t ) ). Alors : 1- Éléments de calcul des variations T Nous présentons les deux relations les plus importantes pour la dJ ( X ) = h( X (T ), T ) dT − h( X (t0 ), t0 ) dt0 + ∫ hXT ( X (t ), t )δ X (t ) dt t0 résolution du problème de commande optimale des systèmes continus. ( hX = Ces relations seront utiles pour la détermination des conditions nécessaires d’optimalité à partir de la minimisation du critère augmenté. ∂h ) ∂X 2- Solution du problème de commande optimale des systèmes 1.1 Relation entre variation et différentielle continus Soit X (t ) une fonction continue en t , les deux différentielles dX (t ) et dt sont alors dépendantes. On définit la variation δ X (t ) qui représente 2.1 Position du problème la variation sur X (t ) à t fixé : Soit le système décrit par les équations d’état : X& (t ) = f ( X (t ),U (t ), t ) & dX (t ) = δ X (t ) + Xdt (1) avec X (t ) ∈ℜn et U (t ) ∈ℜm , 1.2 Règle de Leibnitz et soit à minimiser le critère : La règle de Leibnitz permet de déterminer la variation d’une fonctionnelle de la forme : T J (t0 ) = φ ( X (T ), T ) + ∫ L( X (t ), U (t ), t ) dt t0 (2) T J ( X ) = ∫ h( X (t ), t ) dt t0 où φ ( X (T ), T ) est la fonction coût terminal et L ( X (t ), U (t ), t ) décrit le coût à chaque instant sur la trajectoire X (t ) . ISSAT Kairouan 4 2010-2011 Cours de Commande optimale Mastère professionnelle On suppose que f , L et φ sont de classes C 2 . appelé Hamiltonien. Il s’agit de déterminer U * (t ) sur l’intervalle [t0 , T ] qui transfère Le critère augmenté devient : le système décrit par (1) le long d’une trajectoire optimale X * (t ) qui T J ′ = φ ( X (T ), T ) + υ Tψ ( X (T ), T ) + ∫ H ( X (t ), U (t ), t ) − λ T X& dt t0 minimise le critère (2) et tel que : ψ ( X (T ), T ) = 0 (3) En utilisons la règle de Leibnitz pour déterminer dJ ′ , on obtient après avec ψ ∈ ℜ p appelé cible. calcul : dJ ′ = 2.1 Hamiltonien et équations adjointes Pour résoudre ce problème de C.O nous allons utiliser les dJ ′ = 0 donne les conditions d’optimalité : multiplicateurs de Lagrange. Soit λ (t ) ∈ℜn et υ ∈ ℜ p les multiplicateurs correspondant La première condition redonne les équations d’états du système : respectivement à la contrainte donnée par les équations (1) et à la contrainte donnée par la cible (3). ∂H X& = + = f ( X (t ), U (t ), t ), t f t0 ∂λ Le critère augmenté est alors : La deuxième condition donne le système suivant : T J ′ = φ ( X (T ), T ) + υ Tψ ( X (T ), T ) + ∫ L( X (t ), U (t ), t ) + λ T ( f ( X (t ), U (t ), t ) − X& dt t0 ∂H ∂f ∂L , t p t0 −λ& = = λ+ ∂X ∂X ∂X T (4) Posons : appelé système adjoint. H ( X (t ),U (t ), λ (t ), t ) = L( X (t ),U (t ), t ) + λ f ( X (t ),U (t ), t ) T ISSAT Kairouan 5 2010-2011 Cours de Commande optimale Mastère professionnelle En effet on a : −λ& = H X (4) et HU = 0 (5). La troisième condition est appelée condition de stationnarité : ∂H ∂f ∂L = λ+ ∂U ∂U ∂U T 0= Si f et L ne dépendent pas du temps alors : (5) H& = 0 X (t0 ) donné, les variables dX (T ) et dT ne sont pas indépendantes, la Dans le cas des systèmes stationnaires, le Hamiltonien est constant le condition terminale est alors : (φ X +ψ υ − λ ) dX + (φt +ψ υ + H ) dt = 0 T T X T t T T long d’une trajectoire. (6) et enfin on retrouve la contrainte sur l’état final : ψ ( X (T ), T ) = 0 Remarques : i. La solution du problème de C.O dépend de la condition initiale X (t0 ) et de la condition terminale λ (T ) déterminée à partir de (6). Ce problème est en général très difficile à résoudre. ii. Le long d’une trajectoire optimale nous avons : H& = H t + H XT X& + HUT U& + H λT λ& ( ) T = H t + HUT U& + H X + λ& f { 14243 0 0 = Ht ISSAT Kairouan 6 2010-2011 Cours de Commande optimale Mastère professionnelle H= Chapitre 3 : Commande optimale linéaire quadratique (LQ) 1 T X QX + U T RU ) + λ T ( AX + BU ) ( 2 La première condition nécessaire d’optimalité redonne les équations d’états du système : Dans ce cas le système à commander est représenté par des équations ∂H X& = = AX + BU ∂λ d’états linéaires et le critère à minimiser est quadratique. 1- Mise en équations du problème La deuxième condition (4) donne le système adjoint : Soit le système linéaire décrit par les équations suivantes : X& = A(t ) X (t ) + B(t )U (t ) −λ& = (7) 0= et soit le critère quadratique suivant : 1 T 1 T X (T ) S (T ) X (T ) + ∫ ( X T Q (t ) X + U T R (t )U ) dt 2 2 t0 (9) et la condition de stationnarité est donné par : avec X ∈ ℜ n et U ∈ ℜ m , l’instant initial X (t0 ) est donné. J (t0 ) = ∂H = QX + AT λ ∂X (8) ∂H = RU + BT λ ∂U (10) D’où l’expression de U : U = − R −1 BT λ où S (T ) et Q sont des matrices semi-définies positives et R , matrice définie positive. (11) En remplaçant (11) dans (7) on obtient : Résoudre le problème LQ, revient à déterminer U * (t ) qui minimise X& = AX − BR −1 BT λ J (t0 ) sur [t0 , T ] . (12) Les équations d’état et les équations adjointes couplées donne alors le système suivant : 2- Hamiltonien et équations adjointes Le hamiltonien de ce problème est donné par : ISSAT Kairouan 7 2010-2011 Cours de Commande optimale Mastère professionnelle X& A − BR −1 BT X & = − AT λ λ −Q J (t0 ) = (13) 1 T T U RUdt 2 ∫t0 Il s’agit donc de déterminer la commande qui transfère le système de 3- Solution du problème LQ l’état initial X (t0 ) donné, à l’état final X (T ) = r (T ) donné, en Pour résoudre le système (13), il faut tenir compte des conditions minimisant l’énergie de commande. terminales. Deux cas sont envisagés : - Etat final connu, conduisant à une commande en boucle ouverte. - Etat final libre, conduisant à une commande en boucle fermée. Dans ce cas les équations d’état et les équations adjacentes sont données par : 3.1 Commande en boucle ouverte (Etat final connu) X& = AX − BR −1 BT λ (14) λ& = − AT λ (15) et On suppose que l’état final est connu X (T ) = r (T ) , c’est-àdire dX (T ) = 0 , le temps final étant fixé, alors dT = 0 , la condition (6) est donc vérifiée. D’autre part, puisque X (T ) est fixé, le La solution de (15) est obtenue simplement en fonction de λ (T ) : terme λ (t ) = e A T X (T )T S (T ) X (T ) est une constante, il est donc inutile de le garder dans le critère. (T − t ) λ (T ) (16) En utilisons (16) dans (14) : Il s’agit de résoudre le système Hamiltonien (13) formé par 2n T X& = AX − BR −1BT e A (T −t ) λ (T ) équations différentielles couplées connaissant la condition initiale (17) d’où : X (t0 ) et condition finale X (T ) . Solution analytique dans le cas particulier Q = 0 t X (t ) = e A (t −t0 ) X (t0 ) − ∫ e A (t −τ ) BR −1 BT e A t0 T (T −τ ) λ (T )dτ (18) Le critère est alors réduit à : ISSAT Kairouan 8 2010-2011 Cours de Commande optimale Mastère professionnelle En l’absence d’entrée, X (t ) = e A ( t −t0 ) X (t0 ) . On a : T X (T ) = e A(T −t0 ) X (t0 ) − ∫ e A (T −τ ) BR −1 BT e A T (T −τ ) t0 ii. λ (T )dτ L’expression de U * (t ) montre que la commande optimale est proportionnelle à la différence entre l’état final désiré et la solution du système en régime libre à t = T . où encore : iii. X (T ) = e A(T −t0 ) X (t0 ) − G (t0 , T )λ (T ) U * (t ) existe si G (t0 , T ) est inversible, ce qui correspond à la ( A, B ) condition de commondabilité du système. Donc si avec : commandable T G (t0 , T ) = ∫ e A (T −τ ) BR −1 BT e A T ( T −τ ) t0 existe une commande optimale 1 T T U RUdt ) 2 ∫t0 et qui transfère le système d’un état initial donné à n’importe quel état désiré. λ (T ) = −G −1 (t0 , T ) ( r (T ) − e A(T −t ) X (t0 ) ) 0 3.2 Commande en boucle fermée (Etat final libre) L’état X (T ) étant libre, dX (T ) ≠ 0 . D’autre part, le temps T est fixé, et la commande optimale d’après (11) : U * (t ) = − R −1 BT e A T (T − t ) dT = 0 , la condition (6) devient alors : G −1 (t0 , T ) r (T ) − e A(T −t0 ) X (t0 ) S (T ) X (T ) = λ (T ) Remarques : En effet (6) ⇒ La commande optimale est en boucle ouverte puisqu’elle φ X = λ (T ) car ( φ = 1 T X (T ) S (T ) X (T ) ) soit 2 S (T ) X (T ) = λ (T ) . dépend de l’état initial et non de l’état courant X (t ) . ISSAT Kairouan il minimisant l’énergie de commande (c-à-d J (t0 ) = dτ λ (T ) est alors donné par : i. alors est 9 2010-2011 Cours de Commande optimale Mastère professionnelle U * (t ) = − R −1 BT S (t ) X (t ) = −G (t ) X (t ) Cette relation est la nouvelle condition terminale. On démontre qu’elle est vraie pour t p T . λ (T ) = S (T ) X (T ) G (t ) est appelé le gain de Kalman. (a) Le système en boucle fermé est donné par : En utilisons cette relation dans (12), on obtient : X& = ( A − BG ) X X& = AX (t ) − BR −1 BT S (t ) X (t ) On peut montrer aussi que le critère optimisé ne dépend que de X (t0 ) & + SX& = SX & + S ( AX − BR −1 BT SX ) or (a) : λ& = SX et S (t0 ) . donc (9) devient : J * (t0 ) = & = ( Q + AT S + SA − SBR −1 BT S ) X − SX 4- Commande LQ à horizon infini Cette condition, valable pour tout t , nous avons : − S& = Q + AT S + SA − SBR −1 BT S , 1 X (t0 )T S (t0 ) X (t0 ) 2 On suppose que les matrices A, B, Q, R sont indépendantes du temps. tpT (19) En régime permanent, c'est-à-dire pour T → ∞ , en supposant que S (t ) Cette équation différentielle non linéaire est appelée équation de converge, nous avons alors : Ricatti dans le cas continu. Connaissant S (T ) , on peut déterminer S (t ) S& = 0, t p T pour t p T . Dans ce cas S est une constante solution de l’équation algébrique de La commande optimale est donné par : Ricatti : U (t ) = − R B λ (t ) * −1 T AT S + SA − SBR −1 BT S + Q = 0 (20) Soit : ISSAT Kairouan 10 2010-2011 Cours de Commande optimale Mastère professionnelle Supposons que ( A, C ) est observable. Alors ( A, B ) est stabilisable si et La commande optimale est : U = −GX (t ) seulement si : - avec : il existe une solution unique S définie positive de l’équation de Ricatti. Mieux encore cette solution, est l’unique solution G = R −1 BT S définie positive de l’équation algébrique de Ricatti. (21) - et le système bouclé est donné par : Le système bouclé donné par (22), où G est donné par (21), est asymptôtiquement stable. X& = ( A − BG ) X (22) Remarques : Nous devons donc connaître les conditions d’existence d’une telle i. La condition de stabilisabilité du système est une condition limite pour tout S (T ) . De plus, il serait intéressant de savoir quand nécessaire pour la résolution du problème LQ à horizon infini. Or cette limite est indépendante de S (T ) . un système est stabilisable s’il est commandable, ou si les variables non commandables ont une dynamique stable. Les théorèmes suivants permettent de répondre à ces questions : Une condition moins forte que la condition de commandabilité Théorème 1 : du système est donc exigée. Notons que, comme on l’a déjà vu, Si ( A, B ) est stabilisable alors pour chaque S (T ) , il existe une limite la solution dans le cas LQ à état final libre et à horizon fini, ne bornée S quand T → ∞ , solution de l’équation de Ricatti. Mieux nécessite pas la commandabilité du système. encore S est une solution semi définie positive de l’équation ii. Le deuxième théorème a aussi permis de conclure à la stabilité algébrique de Ricatti. asymptôtique du système en boucle fermée. Théorème 2 : iii. Par un choix convenable de Q et R , on peut placer les pôles Soit C une matrice tel que Q = C T C . ISSAT Kairouan désirés du système en boucle fermée. 11 2010-2011 Cours de Commande optimale Mastère professionnelle W11 W21 5- Solution analytique de l’équation de Ricatti Pour le problème LQ, les équations d’état et les équations adjointes couplées s’écrivent : les n vecteurs propres correspondant aux n valeurs propres stables de X& A − BR −1 BT X & = − AT λ λ −Q H. Nous avons donc : W −1 HW = D Posons : A − BR −1 BT H = − AT −Q Définissons le changement de variables suivants : x W11 W12 w = W W λ 21 22 z On montre que la solution de Ricatti peut être déterminée en fonction des valeurs propres et vecteurs propres de la matrice H . Si S (T ) est la condition terminale de l’équation de Ricatti, définissons : Posons : −M D= 0 V (T ) = − (W22 − S (T )W12 ) 0 M −1 (W21 − S (T )W11 ) et où M est une matrice diagonale contenant les valeurs propres instables V (t ) = e − M (T −t )V (T )e − M (T −t ) de H (valeurs propres à partie réelle positive), et soit : On obtient alors la solution de l’équation de Ricatti : W W12 W = 11 W21 W22 S (t ) = (W21 + W22V (t ) )(W11 + W12V (t ) ) la matrice de passage formée par les valeurs propres de H , avec : −1 Quand T → ∞ la solution de l’équation algébrique de Ricatti s’écrit : S = W21W12−1 ISSAT Kairouan 12 2010-2011