Rappels sur le calcul des variations

Le chapitre précédent a mis en évidence la notion de critère ou fonction de coût, expression analytique qui vise à conférer à un système certaines performances. Lobjectif de ce cours est lélaboration dune loi de commande optimale u* qui minimise un critère J. Le système est décrit par une équation détat.

Lexpression du critère :

Equation détat du système :

Il sagit dun problème de minimisation, rappelons quelques résultats utiles.

Minimum sans contrainte

Une fonction f(x) admet un minimum au point x* si elle vérifie :

Le critère J à minimiser est une fonction de plusieurs variables. Les conditions de minimum peuvent être établies à partir de son développement de Taylor :

On utilise avantageusement lécriture matricielle, comme

en posant Le gradient de J par rapport à x,

et le hessien

il vient :

On peut dès lors établir les conditions de minimum :

Jx = 0 " dx

Jxx > 0 " dx

Remarque : Une matrice est définie positive lorsque elle vérifie : xT.A.x > 0 " x

Minimum sous contraintes

Le problème à résoudre est différent. Dans lexpression du critère , lévolution du vecteur détat x nest pas libre, elle est assujettie à léquation détat . On dit encore quelle est contrainte. Il sagit là dun problème de minimisation sous contraintes quillustre lexemple suivant.

 Exemple 

Soit à minimiser la fonction , sous la contrainte . Il sagit simplement ici de mininimiser la distance OP.

 

Figure 1

La méthode qui suit permet de se ramener à un problème de minimisation classique i.e. sans contrainte. Considérons une fonction J(x) contrainte par g(x) = 0 " x , dans le cas où il y a p contraintes, on la note g(p)(x) = 0.

On a pour tout x et en particulier en x*:

g(p)(x* + dx ) g (p) ( x* ) = 0 Û gx (p)(x*).dx = 0

Comme au point x* les p gradients gx(p)(x*) ne sont pas nécessairement nuls, ils sont orthogonaux à dx.

Par ailleurs la condition de minimum Jx(x*) = 0 valable sans contrainte nest plus vérifiée. Il faut considérer la condition de minimum sous sa forme complète i.e.

Jx(x*).dx = 0 Þ dx orthogonal à Jx(x*), dx nest pas quelconque.

Jx(x*) et les p vecteurs gradients gx(p)(x*) sont orthogonaux aux dx. On peut écrire Jx(x*) comme une combinaison linéaire des gx(p)(x*).

Jx(x*) + mi.g(p)x(x*) = 0 Û Jx(x*) + mT.g(p)x(x*) = 0 ,

Avec m = [ m1, mp ]T  où les mi sont les multiplicateurs de Lagrange.

On se ramène à un problème de minimisation sous contraintes à un problème de minimisation sans contrainte en introduisant le hamiltonien H(x, m ,t )

H(x, m, t) = J(x) + mT.g(p)(x)

Rechercher le minimum de J(x) sous les p contraintes g(p)(x) = 0 est équivalent à rechercher le minimum de H sans contrainte. Avec les variations de x et de m indépendantes ; en effet :

Hx(x*) = Jx(x*) + mT.gpx(x*) = 0 n relation qui fournissent x*(m).

Hm = g(p)(x) = 0 fournit p relations qui donnent m

Il faut en toute rigueur vérifier Hxx > 0.

Exemple :

On résout lexemple précédent. Ecrivons le hamiltonien :

On Remarque quen x* on a colinéaire à ( problème à une seule contrainte ) et que dx est porté par le plan déquation g(x) = 0.

Application au problème de la commande optimale

On cherche à établir la commande optimale u* qui minimise le critère :

soit J* la valeur minimale du critère.

Lévolution des n états , est soumise aux n contraintes quon met sous la forme .

 

Le critère peut encore sécrire :

Pour se ramener à un problème de minimisation sans contrainte on introduit le hamiltonien :

On intègre par partie le second terme sous lintégrale,

Pour un système partant de létat initial x(t0) à linstant t0 et devant atteindre létat final x(t1) à linstant t1, le minimum du critère, J* est obtenu pour la commande optimale u*. Comme on cherche à minimiser J, on va créer une petite variation dJ autour de J* et on cherchera les conditions pour lesquelles dJ sannule. Pratiquement cela revient à faire varier ce que lon peut et à en évaluer les conséquences sur la trajectoire détat et la fonction de coût.

Quels sont les paramètres susceptibles de faire varier  la trajectoire détat et par suite le critère ?

- Linstant initial et linstant final : t0 + dt0 , t1 + dt1 ( le système ne " démarre " pas tout à fait à linstant souhaité et ne parvient pas à létat final dans les temps imposés, ces variations peuvent avoir pour origine des retards non pris en compte, des perturbations etc. )

- Les conditions initiales et finales : x0 + dx0 , x1 + dx1 ( sous leffet de perturbations aux instants t0 et t1, létat initial et létat final sont différents des états désirés )

- La commande u* + du ( la commande réelle appliquée au système diffère de la commande calculée, cette variation peut avoir pour origine le bruit de quantifiquation dans le cas dune commande numérique, des dérives sur les alimentations dun amplificateur de puissance générant la commande u, etc. )

Par hypothèses, ces variations sont supposées être toutes indépendantes.

Remarque : Dans la plupart des problèmes posés, linstant et létat initial sont imposés dx0 = dt0 = 0.

Trajectoire optimale et trajectoire perturbée

Figure 2

Pour déterminer dJ, on a besoin de deux résultats intermédiaires :

On calcule dJ puis on sépare les effets propres à chacune des variations supposées indépendantes.

+

+

+

+

Dans un premier temps on suppose les instants et les états terminaux parfaitement imposés, les variations associées dt0, dt1, dx0, dx1 sont nulles. La condition de minimum porte le long de la trajectoire et J est minimum si :

 

$ On exploite ici le lemme de Lagrange ; Si y(t) est une fonction continue sur [t0, t1] et si : pour toute fonction a(t) continue alors y(t) est nulle sur [t0,t1]

Principe du minimum de Pontryaguin

Les équations de Hamilton déterminées au paragraphe précédent fournissent la loi de commande qui minimise le critère le long de la trajectoire détat.

fournit u* qui minimise J en fonction des n multiplicateurs de Lagrange

fournit les n multiplicateurs de Lagrange.

la connaissance de u*, permet dintégrer léquation détat.

Dans la pratique, des contraintes sur la commande rendent parfois impossible lélaboration de u*.

Dune manière plus générale et pour prendre en compte ces cas particuliers, Pontryaguin a énoncé le principe suivant :

 

Enoncé du principe du minimum

La commande ( u* ) qui minimise le critère

sous la contrainte

est telle que la fonction de Hamilton H = L + mT.f soit minimale :

H(x*, u, m, t ) H(x*, u*, m, t ) " t , " u Î U

Et

Remarque : Un cas fréquent dapplication du principe concerne les hamiltonien linéaires par rapport à la commande u alors que celle-ci est contrainte d1 u d2. Lhamiltonien sécrit : H = a(t).u + b(t).

On discute des variations de a(t) sur [t0, t1] afin détablir son signe,

a > 0 Þ H minimum si u = d1

a < 0 Þ H minimum si u = d2

Conditions de transversalités

Les équations de Hamilton précitées constituent une condition nécessaire de minimum pour le critère J. Elles permettent délaborer la loi de commande optimale u*. Il reste quil faut tenir compte des variations sur les états terminaux dt0 , dt1 , dx0 , dx1 pour intégrer les équations détats. Le tableau page 8 envisage les cas les plus fréquents.

Remarque : Lorsque linstant final t1 est libre et que la fonction F ( coût terminal ) ne dépend pas du temps, le hamiltonien est nul à linstant t1. Il est nul sur toute la trajectoire si le critère est invariant dans le temps.

 Cas rencontrés

Données

Instants initial et final imposés

Etats initial et final imposés

dt0 = dt1 = dx0 = dx1 = 0

Hu = 0 è u*(m)

Hx = -m è m è u*

u* dans

+ n conditions initiales + n conditions finales

Instants initial et final imposés

Etat initial imposé, final libre

dt0 = dt1 = dx0 = 0 , dx1 0

Hu = 0 è u*(m)

Hx = -m è m è u*

= m(t1) è x(t1)

+ n conditions initiales + n conditions extraites de

Instants initial imposé, final libre

Etats initial et finaux imposés

dt0 = dx0 = dx1 = 0 , dt1 0

Hu = 0 è u*(m)

Hx = -m è m è u*

è t1

u* dans

+ n conditions initiales + n conditions finales

Instants initial et final imposés

Etats initiaux et finaux libres

dt0, dx0 = 0 ; dx1, dt1 0

Ø Combiner les conditions de transversalité précédentes.

Calcul de lhamiltonien sur la trajectoire optimale

Le calcul de la dérivée totale de lhamiltonien par rapport au temps :

est égale à la dérivée partielle car Hu = 0, Hm = et Þ le long de la trajectoire optimale.

Comme H = L + mT.f, si le critère et le système ne dépendent pas explicitement du temps Þ et lhamiltonien est constant sur toute la trajectoire. Si de plus, le temps final est libre, H[x*(t1), u*(t1), m(t1) ] = 0, on en déduit que lhamiltonien est nul sur toute la trajectoire. Ce résultat fournit une équation supplémentaire exploitable lors de la recherche dune loi de commande optimale.

 Exemple

On cherche à réaliser une loi de commande qui minimise la distance de freinage d dun avion lors de latterrissage tout en minimisant le coût énergétique. On nutilise que la reverse moteur, les effets aérodynamiques sont négligés.

Le critère à minimiser :

Lappareil de masse M égale à 10 tonnes se présente au sol à linstant t0 = 0 en x(t0) = 0 avec une vitesse v0 égale à 50 m/s, la manette des gaz permet de créer une force de freinage u.

Le critère représente un compromis entre la distance de freinage x(t1) et lénergie dépensée.

Conditions terminales

Equations détat avec : x(t) = x1(t) et v(t) = x2(t)

Þ 2 contraintes Þ m = [ m1(t) , m2(t) ]T

Hamiltonien

Equations de Hamilton

La commande u nest pas contrainte, (1)

Conditions de transversalité

- état position finale libre : Fx[ x1(t1) , t1 ] = m1(t1) Þ m.x1(t1) = m1(t1)

comme daprès (2), m1(t) = cte Þ m10 = m.x1(t1) = m.d

Þ

daprès (1) Þ (4)

 

(4) dans (3) doù :

 

Intégration des équations détat

comme

On exploite les conditions terminales à t = 0:

x1(0) = 0 Þ

x2(0) = v0 Þ

 

Figure 3