Commande optimale

De testwiki
Version datée du 22 juillet 2024 à 19:05 par imported>Maryleine (growthexperiments-addlink-summary-summary:3|0|0)
(diff) ← Version précédente | Version actuelle (diff) | Version suivante → (diff)
Aller à la navigation Aller à la recherche

La théorie de la commande optimale permet de déterminer la commande d'un système qui minimise (ou maximise) un critère de performance, éventuellement sous des contraintes pouvant porter sur la commande ou sur l'état du système. Cette théorie est une généralisation du calcul des variations, et elle fait partie de la théorie du contrôle. Elle comporte deux volets : le principe du maximum (ou du minimum, suivant la manière dont on définit l'hamiltonien) dû à Lev Pontriaguine et à ses collaborateurs de l'institut de mathématiques Steklov [1], et l'équation de Hamilton-Jacobi-Bellman, généralisation de l'équation de Hamilton-Jacobi, et conséquence directe de la programmation dynamique initiée aux États-Unis par Richard Bellman[2]. La théorie de la commande optimale fait partie de l'automatique et des mathématiques appliquées (optimisation des processus). En tant que cette théorie généralise le calcul des variations, elle a également un champ d'application en physique mathématique, et les développements théoriques actuels rejoignent les mathématiques pures.

Historique

Les idées sous-jacentes au principe du maximum et à la programmation dynamique sont fort anciennes et ont été intimement liées dès leur préhistoire. Elles ont été développées de manière indépendante et pratiquement simultanée, vers le milieu des années 1950, et elles continuent aujourd’hui d’avoir de nombreuses connexions.

La programmation dynamique a pour origine le principe de Huygens pour la propagation de la lumière : c’est le fameux principe des « sources intermédiaires » qui interprète les phénomènes de réflexion et de réfraction en supposant la propagation d'ondelettes sphériques secondaires issues d'une onde sphérique principale ; le principe d'Huygens est lui-même fondé sur le principe de Fermat qui postule que la lumière suit le trajet dont le temps de propagation est minimal.

Le principe du maximum est une généralisation des équations d' Hamilton du calcul des variations. L’invention de celui-ci remonte à la résolution du problème de la courbe brachistochrone, posé par Jean Bernoulli en 1696 ; il s’agit également d’un problème de temps minimal (comme l’indique la racine grecque : « βραχιστος (brachistos) », « le plus court » ; « χρονος (chronos) », « temps »). Ce problème fut résolu tout d’abord par Jean Bernoulli lui-même (ainsi que d'autres savants, dont son frère Jacques Bernoulli, Leibniz et Newton) grâce à une analogie avec le problème de propagation de la lumière et l'application du principe de Huygens ; c’était en quelque sorte utiliser la programmation dynamique avant la lettre.

Euler, élève de Jean Bernoulli, a posé ensuite les premières bases du Calcul des variations, en réponse à la demande de son maître de systématiser sa solution. À cette occasion, il a ébauché à partir de considérations géométriques la méthode des « petites variations », méthode à laquelle Lagrange a donné, un peu plus tard, une forme analytique plus élégante[3].

Weierstrass, au milieu du dix-neuvième siècle, soit un siècle plus tard, définit la notion d'extremum fort et établit une condition nécessaire ainsi qu'une condition suffisante pour qu'il y ait un tel extremum.

Le principe du maximum est une généralisation de la condition nécessaire d'extremum fort de Weierstrass, obtenue en remplaçant l'hamiltonien par un pseudo-hamiltonien (voir infra). Ce principe avait déjà été entrevu par Constantin Carathéodory dès 1935 et plus précisément encore par Magnus Hestenes en 1950. Mais c'est sur la base des intuitions de Pontriaguine et sous sa direction que le principe du maximum, tel que nous l'entendons aujourd'hui, a été démontré tout d'abord pour les problèmes de temps minimal, puis dans le cas général par V. G. Boltyanskii, R. V. Gamkrelidze et L. I. Rozonoer entre 1955 et 1959. La mise en œuvre de la technique des « variations en aiguille », déjà utilisée par James McShane en 1939, est néanmoins due à Boltyanskii, qui a également montré que le principe du maximum n'était qu'une condition nécessaire d'optimalité, et qui a donné au principe du maximum la forme qu'il a prise dans le célèbre livre de Pontriaguine et ses collaborateurs, paru en russe en 1961[1]Modèle:,[4]Modèle:,[5]. Tandis que le quatrième auteur de ce livre, E. F. Michtchenko, a, quant à lui, résolu un problème statistique de commande optimale).

C'est à la suite de la contribution de Pontriaguine et ses collaborateurs que la variable de commande d'un système a été notée u, управление (upravlenie) signifiant commande en russe[6].

Les travaux récents ont permis de généraliser ces deux approches sans les modifier profondément ; ils se sont pour une bonne part tournés vers l'affaiblissement des conditions de différentiabilité dans le cadre de l'« analyse non lisse » initiée par Frank H. Clarke, en utilisant les « gradients généralisés » (ou « différentielles généralisées ») introduits par cet auteur [7]Modèle:,[8]Modèle:,[9]. Cela a conduit à envisager des commandes de nature plus générale que les fonctions continues par morceaux du théorème originel de Pontriaguine et ses collaborateurs : notamment des fonctions mesurables au sens de Lebesgue. Un autre type d'extension porte sur les systèmes à retard [10] et plus généralement de dimension infinie[11].

D'autre part, Boltyanskii a donné une « version faible » du principe du maximum pour les systèmes à temps discret après avoir développé à cette fin des techniques mathématiques spécifiques[12], mais on peut démontrer sans difficulté son résultat à partir des conditions de Karush, Kuhn et Tucker[13]. Sous certaines conditions de convexité, on retrouve toutefois un véritable principe du maximum pour ce type de systèmes[14].

Principe du maximum et programmation dynamique : différences et similitudes

Par nature, le principe du maximum de Pontriaguine est une condition nécessaire d’optimalité, tandis que la programmation dynamique fournit une condition suffisante. D’autre part, le principe du maximum donne comme solution une commande en boucle ouverte (fonction du temps) alors que la programmation dynamique conduit à une commande en boucle fermée (fonction de l’état du système).

Toutefois, la commande solution du principe du maximum peut, dans les cas favorables, être mise sous forme d’une commande en boucle fermée. Un des grands avantages du principe du maximum sur la programmation dynamique est une plus grande facilité de mise en œuvre, celle-ci, quand elle est appliquée aux systèmes à temps continu, impliquant la résolution d’une équation aux dérivées partielles (l’équation d'Hamilton-Jacobi-Bellman), tandis que celui-là se ramène à la résolution d’équations différentielles ordinaires (résolution qui est toutefois sérieusement compliquée par le fait que le problème est « aux deux bouts »).

La programmation dynamique s'applique aussi bien aux systèmes déterministes qu'aux systèmes stochastiques[2]Modèle:,[15], tandis que le principe du maximum ne s'applique (avec quelques exceptions[16]) qu'aux systèmes déterministes.

Néanmoins, une étape commune à ces approches est le maximisation du pseudo-hamiltonien sur l'ensemble des commandes admissibles. Comme Pontriaguine et ses collaborateurs l'ont eux-mêmes noté[1], le principe du maximum peut se déduire du théorème de Bellman, dont la démonstration est fort simple, si l'on fait des hypothèses de régularité suffisantes sur la « fonction de Bellman ». Ces hypothèses ne sont toutefois pas vérifiées dans les cas où le principe du maximum a tout son intérêt, et pour lesquels il a été conçu, par exemple dans celui de la « commande Bang-Bang ».

Formulation d'un problème de commande optimale

Système et critère

Nous considérons le problème de commande optimale sans contrainte sur l'état avec les hypothèses de différentiabilité habituelles. Le problème, ou plutôt sa solution, se complique considérablement en cas de contrainte sur l'état, car un des multiplicateurs de Lagrange est alors une mesure qui n'est pas absolument continue par rapport à la mesure de Lebesgue[17]Modèle:,[18]. Pour simplifier les notations, nous considérons le cas où l'instant initial et l'état initial sont fixés. Soit le système :

x˙=f(t,x,u),
x(t0)=x0,t

est un intervalle compact de la droite réelle contenant t0 et où f est une fonction continue de ×Ω×𝐔 dans 𝐗, 𝐗 étant un espace de Banach (le lecteur peut supposer que 𝐗=n), Ω un ouvert de 𝐗, et 𝐔 un espace topologique (le plus souvent, un sous-ensemble de m). La variable x est l'état et u est la commande (voir l'article Représentation d'état). La fonction xf(t,x,u) est supposée continûment différentiable pour tout (t,u)×𝐔.

Soit le critère de performance

J(u)=K(tf,xf)+t0tf(t,x(t),u(t))dt

où le lagrangien vérifie les mêmes conditions que f et K est continûment différentiable sur 𝒱f.

Notions de commande admissible et d'optimum

Soit 𝒱f une sous-variété différentiable de ×𝐗[19], appelée variété finale. Nous dirons qu'une fonction u:𝐔 est admissible si elle est continue par morceaux et transfère le couple (t,x) de la condition initiale (t0,x0) à une condition finale (tf,xf)𝒱f (avec x(tf)=xf et tf>t0, tf). L'ensemble des commandes admissibles est noté 𝒰. Les hypothèses impliquent que f est localement lipschitzienne, donc si u est admissible, x est absolument continue, et la notion de solution est donc classique (l'égalité x˙(t)=f(t,x(t),u(t)) étant vérifiée presque partout au sens de Lebesgue).

Soit u𝒰, et désignons par x et tf l'état et l'instant final correspondants. Soit ε>0 et 𝒰ε le sous-ensemble de 𝒰 formé des commandes u𝒰 vérifiant la condition suivante : l'état x et l'instant final tf correspondants sont tels que

|tftf|<ε et x(t)x(t)<ε,t[t0,tf][t0,tf].

La commande u est dite optimale localement[20] s'il existe ε>0 tel que J(u)J(u),u𝒰ε, et optimale globalement si J(u)J(u),u𝒰.

Pour ε petit, on peut considérer 𝒰ε comme un « petit voisinage » de u. On notera que dans un tel voisinage, u(t) n'est pas nécessairement proche de u(t) à chaque instant t. Si 𝐔 est un sous-ensemble d'un espace vectoriel, une « petite variation » de u peut notamment être une variation δu de grande amplitude mais de faible durée, de sorte qu'elle entraîne une « petite variation » de la fonction x:tx(t). Cette formulation est identique à celle de Weierstrass, et indique que l'on recherche un « extremum fort » (un « extremum faible » serait obtenu avec uniquement des variations de u qui seraient de faible amplitude).

Pseudo-hamiltonien

On appelle pseudo-hamiltonien la fonction

:×Ω×𝐔×{0,1}×𝐗

(où 𝐗 est le dual de 𝐗) définie par

(t,x,u,λ,p)=p|f(t,x,u)λ(t,x,u).

(où .|. est le crochet de dualité).

Remarques

  • Dans la grande majorité des applications, 𝐗=n.
  • Si l'on suppose que 𝐔 est un sous-ensemble de m, on peut envisager des commandes admissibles plus générales que des fonctions continues par morceaux, par exemple, des fonctions mesurables au sens de Lebesgue. On peut alors remplacer 𝐔 par 𝐔(t)t𝐔(t) est une fonction de dans l'ensemble des sous-ensembles de n (appelée « multifonction ») dont le graphe est ×-mesurable, où est la tribu de Lebesgue de , est la tribu borélienne de n, et × est la tribu engendrée par les ensembles A×B,A,B[8]Modèle:,[9].

Principe du maximum

Énoncé

Le dual de ×𝐗 est identifié avec ×𝐗. On note KC1(;𝐗) l'espace vectoriel des fonctions continues par morceaux de dans 𝐗. Soit d'autre part les deux équations canoniques

x˙=p(t,x,u,λ,p),
p˙=x(t,x,u,λ,p).

Notons T(tf,xf)(𝒱f) l'espace tangent à la variété 𝒱f au point (tf,xf) et N(tf,xf)(𝒱f) l'orthogonal de T(tf,xf)(𝒱f) dans ×𝐗, c'est-à-dire l'ensemble des formes linéaires continues k×𝐗 telles que k|h=0,hT(tf,xf)(𝒱f). On appelle condition de transversalité la relation

0(λKt(tf,xf)(tf,xf,u(tf),λ,p(tf)),λKx(tf,xf)+p(tf))+N(tf,xf)(𝒱f).

Enfin, nous appellerons condition de non trivialité l'inégalité

(λ,p(tf))0.

On montre le résultat suivant[1]Modèle:,[21] :

Modèle:Théorème

La démonstration de ce théorème (avec 𝐗 de dimension finie) occupe près de 40 pages dans l'ouvrage de Pontriaguine et ses collaborateurs[1]. Lorsque l'état final est astreint à appartenir à une sous-variété de 𝐗 de codimension infinie, des variations en aiguille de la commande ne suffisent plus (elles ne donnent pas suffisamment de degrés de liberté) et un contre-exemple construit par Yu Vladimirovich Egorov en 1963 montre que le Principe du maximum est inexact. Il existe une extension du principe du maximum pour les systèmes semi-linéaires dont l'état est à valeurs dans un espace de Banach quelconque ; ce résultat est obtenu en utilisant des « variations diffuses » (« diffuse variations » ou « patch variations ») de la commande[22].

Une justification du théorème de Pontriaguine-Boltyansky est donnée plus loin, à partir du théorème de Bellman. Voir également l'utilisation du Lemme de Du Bois-Reymond généralisé lorsque 𝐔 est un ouvert de m et qu'on ne fait que des « variations faibles » de la commande.

Remarque

Supposons que l'instant initial t0 et l'état initial x0 ne soient plus fixés, et qu'on ait seulement une condition initiale (t0,x0)𝒱0𝒱0 est une sous-variété différentiable de ×𝐗 (variété initiale). On doit alors ajouter la condition de transversalité

0((t0,x0,u(t0),λ,p(t0)),p(t0))+N(t0,x0)(𝒱0).

Cas particuliers

Nous supposons maintenant que la variété 𝒱f est de la forme 𝒯f×𝒳f𝒯f et 𝒳f sont des sous-variétés de et de 𝐗, respectivement. L'équation de transversalité s'écrit donc

(a) 0λKt(tf,xf)(tf,xf,u(tf),λ,p(tf))+Ntf(𝒯f),
(b) 0λKx(tf,xf)+p(tf)+Ntf(𝒳f).

Dans le cas d'un instant final libre, on a 𝒯f=, par conséquent Ntf(𝒯f)=0 et (a) devient

(a') λKt(tf,xf)=(tf,xf,u(tf),λ,p(tf))

alors que dans le cas d'un instant final fixé, 𝒯f={tf} et Ntf(𝒯f)={0}, donc (a) est trivialement vérifiée. Dans les deux cas on a une équation: (a') dans le premier, tf=tf dans le second.

Dans le cas d'un état final libre, on a 𝒳f=𝐗, par conséquent Nxf(𝒳f)=0 et (b) devient

(b') p(tf)=λKx(tf,xf)

et la condition de non trivialité entraîne λ=1. Dans le cas d'un état final fixé, 𝒳f={xf} et Nxf(𝒳f)={0}, donc (b) est trivialement vérifiée. Dans les deux cas on a n équations, si 𝐗 est de dimension n : (b') dans le premier, xf=xf dans le second.

Commande Bang-Bang

Considérons maintenant le problème de commande en temps minimal. L'espace topologique 𝐔 est le sous-ensemble de m défini par ui_uiui(1im). Le critère est J=tft0, ce qui est un cas particulier de l'expression donnée plus haut avec K=0 et l=1. Le problème est évidemment à instant final libre, et il est à état final fixé: 𝒳f={0}. On suppose que x=0, u=0 est un point d'équilibre et que le système est affine en la commande, donc de la forme indiquée avec f(t,x,u)=h(t,x)+g(t,x)uh(t,0)=0. Représentons p par la ligne d'éléments pi(1in) et g par la matrice d'éléments gi,j. Il vient

(t,x,u,λ,p)=p|h(t,x)+j=1m(i=1npigij(t,x))uj+λ.

Si λ=0, on a également p=0 d'après (b'), ce qui contredit la condition de non trivialité; donc, λ=1. Le Principe du maximum implique que

uj(t)=uj (resp. uj_) si i=1npi(t)gij(t,x(t))>0 (resp. <0).

Cette commande toujours égale (dans le cas où elle a une seule composante) à sa valeur minimale ou à sa valeur maximale, avec des commutations. Dans le cas de systèmes linéaires d'ordre 2, on peut trouver des solutions explicites fondées sur le portrait de phase[1]. D'autre part, supposons le système linéaire stationnaire d'ordre n et commandable. Si les valeurs propres de la matrice d'état sont toutes réelles, le nombre de commutations est au plus égal à n1. Si ces valeurs propres sont toutes dans le demi-plan gauche et 0 appartient à l'intérieur de 𝐔, la commande optimale existe et est unique[1].

Condition suffisante d'optimalité sous forme de Principe du maximum

Supposons que le système soit linéaire et de dimension finie, soit

f(t,x,u)=A(t)x+B(t)u

où les fonctions tA(t) et tB(t) sont continues, et que les fonctions K et l du critère soient continûment différentiables. Supposons également que la variété 𝒱f soit affine et que l'instant final tf soit fixé. Supposons enfin que l'ensemble U et la fonction xfK(tf,xf) soient convexes, ainsi que la fonction (x,u)(t,x,u) pour tout t. Dans ce cas, les conditions de Pontriaguine avec λ=1 sont suffisantes pour que commande u soit optimale globalement. Si de plus la fonction (x,u)(t,x,u) est convexe, strictement par rapport à u, alors il y a unicité de la commande optimale[13].

Programmation dynamique (cas déterministe)

Reprenons le problème de commande optimale, tel qu'il a été posé plus haut.

Équation de Hamilton-Jacobi-Bellman

D'après le principe général de la programmation dynamique, la commande optimale minimise sur 𝒰, pour tout (τ,ξ)[t0,tf[×Ω, le critère

Jτ(u)=K(tf,xf)+τtf(t,x(t),u(t))dt

avec

x(τ)=ξ.

Désignons par ω(τ,ξ) la valeur optimale de ce critère. En plus des hypothèses précédentes, nous supposons maintenant que les fonctions f, et ω sont continûment différentiables. Nous supposons également que λ=1 et supprimons cette variable des arguments de , qui est donc maintenant une fonction

:(t,x,u,p)(t,x,u,p).

L'équation de Hamilton-Jacobi-Bellman est l'équation aux dérivées partielles

(HJB)::ωt(τ,ξ)=maxuU(τ,ξ,u,ωξ(τ,ξ))

avec pour condition aux limites

(CL):: ω(tf,xf)=K(tf,xf),(tf,xf)𝒱f.

On dit que le pseudo-hamiltonien est régulier si la fonction u(τ,ξ,u,p) admet un maximum unique sur U, atteint pour une valeur u0(τ,ξ,p) de u. Dans ce cas, soit la commande en boucle fermée u^(t,x)=u0(t,x,ωξ(t,x)). On a le résultat suivant[15]:

Modèle:Théorème Modèle:Démonstration

Justification du théorème de Pontriaguine-Boltyansky

On déduit dans ce qui suit le théorème de Pontriaguine-Boltyansky du théorème de Bellman en supposant la fonction ω:(t,x)ω(t,x) deux fois continûment différentiable[1], bien que cette seconde hypothèse ne soit malheureusement pas satisfaite dans les cas les plus courants tels que celui de la commande Bang-Bang, où ω n'est pas même différentiable sur les trajectoires optimales (cette hypothèse est satisfaite, néanmoins, dans le cas du Calcul des variations, lorsque le lagrangien et la fonction K sont analytiques, le temps final est fixé et l'état final est libre, comme on le verra plus loin).

Supposons donc l'équation de Hamilton-Jacobi-Bellman vérifiée avec ω de classe 𝒞2. On sait alors qu'une commande optimale existe ; soit x(t) et u(t) l'état optimal et la commande optimale à l'instant t, respectivement, et posons

p(t)=ωx(t,x(t)).

Il vient alors nécessairement

p˙(t)=2ωxt(t,x(t))2ωx2(t,x(t))x˙(t)

avec x˙(t)=f(t,x(t),u(t)), ce qui équivaut à la première équation canonique

x˙(t)=p(t,x(t),u(t),λ,p(t)).

L'équation de Hamilton-Jacobi-Bellman implique le Principe du maximum

u(t)=argmaxuU(t,x(t),u,p(t)).

ainsi que l'égalité

ωt(t,x)=(t,x,u(t),ωx(t,x)).

On tire de cette dernière

2ωtx(t,x)=x(t,x,u(t),ωx(t,x))p(t,x,u(t),ωx(t,x))2ωx2(t,x).

En plongeant 𝐗 dans son bidual, on a

p(t,x,u,(t),p(t))=f(x,u(t),t)

et on obtient finalement la seconde équation canonique

p˙(t)=x(t,x(t),u(t),p(t))

car avec le plongement ci-dessus, et compte tenu du fait que la forme bilinéaire continue 2ωx2(t,x(t)) est symétrique,

f(t,x(t),u(t))2ωx2(t,x(t)) et 2ωx2(t,x(t))f(t,x(t),u(t))

sont deux écritures différentes de la même forme linéaire continue.

(En effet, soit B une forme linéaire continue symétrique sur 𝐗×𝐗 et h,k𝐗. On a alors B.k𝐗. Considérons le crochet B.k|h. Il désigne le réel (B.k)h=B.(k,h). Mais en considérant h comme élément du bidual de 𝐗, il désigne également (hB)(k). Donc, (hB)(k)=B.(k,h), et puisque B est symétrique, (hB)(k)=B.(h,k), ce qui entraîne encore hB=B.h. Dans le cas où 𝐗 est de dimension finie, on peut vérifier cette égalité en développant les deux membres dans une base de 𝐗 et la base duale.)

Pour démontrer l'égalité t=ddt (en notation abrégée) sur les trajectoires optimales, supposons pour simplifier que 𝐔 soit un ouvert d'un espace de Banach. Le Principe du maximum implique alors la condition d'Euler u=0 à l'optimum. Par conséquent,

ddt=t+xx˙+pp˙+Hu=t+xppx.

Le même type de raisonnement que plus haut montre que xp=px, d'où le résultat.

Il reste à obtenir la condition de transversalité. Sur 𝒱f on doit avoir ω(tf,x(tf))=K(tf,x(tf)). Par conséquent, pour tout accroissement admissible infiniment petit (δtf,δxf)T(tf,xf(tf))𝒱f,

(Kt(tf,x(tf)ωt(tf,x(tf))δtf+(Kx(tf,x(tf)ωx(tf,x(tf))δxf=0.

Or, on a

ωt(tf,x(tf))=(tf,x(tf),u(tf),p(tf)) et
ωx(tf,x(tf))=p(tf,x(tf),u(tf),p(tf)).

La condition de transversalité est donc démontrée.

Application au Calcul des variations

Conditions d'Euler-Lagrange, de Legendre, Weierstrass, et de Weierstrass-Erdmann

Le problème du Calcul des variations consiste à minimiser un critère de la forme

J=K(tf,xf)+t0tf(t,x(t),x˙(t))dt

avec une condition finale du même type que celle qui a été considérée dans la position du problème de commande optimale. Ce n'est donc rien d'autre que le problème de commande optimale avec pour « équation du système » x˙=u, et 𝐔=𝐗, espace qu'on suppose de dimension finie. Il vient, en éliminant u,

(t,x,x˙,λ,p)=p|x˙λ(t,x,x˙).

La fonction est supposée continûment différentiable ainsi que sa différentielle partielle x˙. Le Principe du maximum est, de par sa formulation, une condition nécessaire d'« optimum fort ». Il implique

x˙(t,x,x˙,λ,p)=0p=λx˙(t,x,x˙).

La condition de non trivialité implique λ=1, et nous supprimons donc désormais λ des arguments de . Les équations canoniques se réduisent maintenant aux équations d'Hamilton habituelles. En remplaçant l'expression obtenue plus haut pour p dans la seconde équation canonique, on obtient la condition d'Euler-Lagrange :

ddt(x˙)=x.

D'autre part, en supposant que admet une différentielle partielle seconde par rapport à x˙ et que cette différentielle partielle seconde est une fonction continue, le Principe du maximum implique, au second ordre, la condition faible de Legendre

2x˙2(t,x(t),x˙(t),p(t))0

qui signifie que la forme bilinéaire continue symétrique 2x˙2(t,x(t),x˙(t),p(t)) doit être semi-définie positive. Pour qu'en plus l'hamiltonien soit régulier, il faut que soit satisfaite la condition forte de Legendre

2x˙2(t,x(t),x˙(t),p(t))>0

qui signifie que cette forme bilinéaire symétrique doit être définie positive.

Soit la fonction de Weierstrass, encore appelée l'« excessus »

(t,x,u;w)=(t,x,u,x˙(t,x,u))(t,x,w,x˙(t,x,u)).


Le Principe du maximum implique la condition de Weierstrass (t,x(t),x˙(t);w)0 (obtenue avec des « variations fortes », analogues aux « variations en aiguille » introduites par Boltyanskii pour la démonstration du Principe du maximum). On écrit également la fonction de Weierstrass sous la forme

(t,x,u;w)=(t,x,w)(t,x,u)x˙(t,x,u)(wu).

Enfin, la continuité de p et celle de la fonction t(t,x(t),x˙(t),x˙(t,x(t),x˙(t))) est la condition d'arrondissement des angles de Modèle:Lien.

Remarque

La différence essentielle entre le Principe du maximum et la condition de Weierstrass est que, dans cette dernière, on a dès le début l'égalité p=x˙, laquelle égalité, qui détermine x˙ comme fonction implicite de p, paraît essentielle dans le Calcul des variations classique (elle conduit à raisonner avec un hamiltonien plutôt qu'avec un pseudo-hamiltonien, comme on le verra plus loin). En s'affranchissant de cette condition, Weierstrass, ou d'autres avant lui, auraient pu formuler le Principe du maximum[23].

Condition de Carathéodory et équation d'Hamilton-Jacobi

Condition de Carathéodory

La condition de Carathéodory[24] peut s'exprimer sous la forme suivante  : supposons qu'il existe une fonction continûment différentiable S:(t,x)S(t,x) telle que, en posant, comme on l'a déjà fait plus haut,

u0(t,x,p)=argmaxu(t,x,u,p)

(à supposer que le maximum existe et soit strict), S soit solution de l'équation aux dérivées partielles « de Carathéodory »

St(t,x)=(t,x,u0(t,x,Sx(t,x)),Sx(t,x)).

Alors la fonction optimale x est solution de l'équation différentielle

x˙(t)=uo(t,x(t),Sx(t,x(t))).

L'équation d'Hamilton-Jacobi-Bellman n'est qu'une reformulation de cette condition avec ω=S+Cte. Cette différence de notation vient du fait qu'en Calcul des variations, l'« action » S est minimisée entre l'instant initial t0 et l'instant t courant, tandis que, suivant le Principe d'optimalité de Bellman, la fonction de Bellman ω est minimisée entre l'instant t courant et l'instant final tf.

Équation d'Hamilton-Jacobi

La maximisation de par rapport à u est effectuée sur un ouvert. La maximisation du pseudo-hamiltonien implique donc la condition d'Euler

u(t,x,u,p)=0p=u(t,x,u).

On peut écrire cette équation sous la forme G(z,u)=0 avec z=(t,x,p) et G(z,u)=pu(t,x,u). Le théorème des fonctions implicites implique que si le pseudo-hamiltonien est régulier et u est de classe 𝒞1, u est une fonction implicite de classe 𝒞1 de z, qu'on peut écrire u0(z).

Soit alors l'hamiltonien

(t,x,p)=(t,x,u0(t,x,p),p).

On obtient à partir de l'équation de Carathéodory l'équation d'Hamilton-Jacobi habituelle

St+(t,x,Sx)=0.

On a vu plus haut comment déduire le principe de Pontriaguine de l'équation d'Hamilton-Jacobi-Bellman en supposant ω de classe 𝒞2. On déduit exactement de la même manière toutes les conditions nécessaires de minimum fort du Calcul des variations de la condition de Carathéodory en supposant S de classe 𝒞2[25].

En particulier, les conditions nécessaires d'Euler-Lagrange, de Legendre et de Weierstrass sont des conséquences de la condition de Carathéodory si est régulier et analytique, K est analytique, l'instant final est fixé et l'état final est libre. En effet, le théorème des fonctions implicites entraîne alors que u0 est analytique ; donc l'est aussi, et le théorème de Cauchy-Kowalevski entraîne l'existence, dans un ouvert suffisamment petit, d'une solution unique S vérifiant, pour c fixé, la condition S(tf,xf)=cK(tf,xf), et cette solution est analytique[26]. Cela n'est qu'un résultat local, mais il est de grande importance, puisqu'en physique notamment, le « Principe de moindre action » correct est local lui aussi, comme on le verra plus loin.

Commande « linéaire quadratique »

Position du problème

Depuis l'article publié par Kalman en 1960[27], la « commande linéaire quadratique » a fait l'objet de nombreuses investigations. Supposons que le système soit linéaire et de dimension finie[28], ayant pour équation d'état

x˙=A(t)x+B(t)u

tA(t) et tB(t) sont des fonctions réglées de [t0,tf] dans n×n et n×m respectivement[29]. Le critère est supposé quadratique, de la forme

J=xfTPfxf+t0tf(xT(t)Q(t)x(t)+uT(t)R(t)u(t))dt

tQ(t) (resp. tR(t)) est une fonction réglée (resp. continue) de [t0,tf] dans n×n (resp. m×m); (.)T désigne la transposée de la matrice (.). Les matrices Q(t) et R(t) sont supposées symétriques réelles et R(t) est supposée définie positive (en abrégé : R(t)>0) pour tout t[t0,tf]. La matrice Pf est supposée symétrique réelle semi-définie positive. L'instant final tf est fixé tandis que l'état final xf est libre.

Application du théorème de Bellman

Appliquons maintenant la méthode de la programmation dynamique, de manière à obtenir une condition suffisante d'optimalité (qui, dans le cas considéré, sera également nécessaire ; et l'on pourrait également appliquer le Principe du maximum, qui conduirait au même résultat). Pour cela, choisissons une « fonction de Bellman » de la forme

ω(t,ξ)=ξTP(t)ξ.

On a

(τ,ξ,u,1,ωx(τ,ξ))=2ξTP(τ)(A(τ)ξ+B(τ)u)(ξTQ(τ)ξ+uTR(τ)u).

La fonction u(τ,ξ,u,1,ωx(τ,ξ)) est strictement concave sur m (autrement dit, le pseudo-hamiltonien est régulier), par conséquent elle admet un maximum global unique déterminé par l'« égalité d'Euler »

u(τ,ξ,u,1,ωx(τ,ξ))=0

ce qui donne u(τ,ξ)=R(τ)1BT(τ)P(τ)ξ. L'équation d'Hamilton-Jacobi-Bellman s'écrit donc (en omettant la dépendance des différentes matrices par rapport au temps pour alléger les notations)

ξTP˙ξ=2ξTP(AξBR1BTξ)(ξTQξ+ξTPBR1BTPξ)

ce qui conduit à choisir la fonction τP(τ) solution de l'équation de Riccati matricielle

P˙=ATP+PAPBR1BTP+Q

avec la condition finale

P(tf)=Pf.

Conditions de Jacobi

Sous les hypothèses considérées, le second membre de l'équation différentielle est une fonction localement lipschitzienne en P. Elle admet donc, avec la condition finale ci-dessus, une solution maximale unique P(t;tf) sur un intervalle (t1,tf] (ouvert ou fermé en t1). On voit facilement que pour tout t dans cet intervalle, P(t;tf) est symétrique réelle[13]. La théorie des équations différentielles implique que si t1>t0 ou si t1=t0 mais l'intervalle (t1,tf] est ouvert en t1, alors lim\limits tt1,t]t1,tf]P(t;tf)=+. L'instant t1 est alors dit conjugué de l'instant tf. (Souvent, en Calcul des variations, la notion de point conjugué est introduite plutôt pour un problème d'optimisation à état final fixé.) Le résultat suivant est maintenant clair :

Modèle:Théorème

On notera que les deux conditions suivantes sont équivalentes :

(1) La condition forte de Jacobi est satisfaite ;

(2) P(t;tf) est uniformément bornée (par rapport à t).

Modèle:Théorème

Modèle:Démonstration

Expression de la commande optimale

Supposons Q(t)0,t[t0,tf]. La commande optimale est donc bien définie ; elle est linéaire et en boucle fermée, et donnée par

u^(t,x)=K(t)x, K=R1BTP.

Notons que la valeur optimale du critère est ω(t0,x(t0))=xT(t0)P(t0;tf)x(t0).

Pour les systèmes linéaires stationnaires (dont les matrices A et B ne dépendent pas du temps), on prend habituellement Pf=0, on choisit pour Q et R des matrices constantes, et on choisit un « horizon infini », à savoir que l'on prend tf+. Écrivons Q sous la forme: Q=CTC. Soit les conditions suivantes :

(a) : Le système (ou, en abrégé, la paire (A,B)) est stabilisable.

(b) : La paire (C,A) est détectable.

On a le résultat suivant[30]Modèle:,[31]Modèle:,[32]:

Modèle:Théorème

Cas d'un critère comprenant un terme croisé

On considère parfois un critère quadratique plus général, comprenant un terme croisé, de la forme

J=xfTPfxf+t0tf(xT(t)uT(t))(Q(t)S(t)ST(t)R(t))(x(t)u(t))dt

où les fonctions tQ(t), tR(t), tS(t) sont continues. Or on a l'identité

(xTuT)(QSSTR)(xu)=xT(QSRST)x+(u+R1STx)R(u+R1STx),

par conséquent on se ramène au cas précédent en faisant le changement de variable v=u+R1STx et en posant Q1=QSRST.

Application à la Dynamique relativiste

Soit un point matériel de masse au repos m0, placé dans un champ de force U(x). Dans le cadre de la relativité restreinte, dans lequel on se place ici, l'action est donnée par

S(t0,tf)=t0tf(m0c21u2c2U(x))dt

u=x˙ et c=c(x) est la vitesse de la lumière dans le milieu considéré. Le pseudo-hamiltonien est donné par

(x,u,p)=p|u+m0c21u2c2+U(x).

La première équation canonique de Hamilton redonne u=x˙

La maximisation du pseudo-hamiltonien se fait sur l'ensemble uc.

1) Envisageons tout d'abord le cas classique où u<c. Si la vitesse c est constante, la seconde équation canonique de Hamilton donne

p˙=Ux.

Le principe du maximum implique u=0, d'où la relation bien connue

p=m01u2c2u

où le vecteur colonne p est le transposé du vecteur ligne p. 2) Considérons maintenant le cas où u=c(x). Contrairement au précédent, ce cas ne relève pas du calcul des variations habituel. Le pseudo-hamiltonien est maximum lorsque

p=pc(x)u

et l'équation de Hamilton-Jacobi-Bellman devient l'équation eikonale

St+c(x)Sx+U(x)=0,

classique lorsque U(x)=0.

Notes et références

Notes

Modèle:Références

Ouvrages ayant servi à établir le texte

Autres ouvrages

Articles connexes

Modèle:Palette Modèle:Portail

  1. 1,0 1,1 1,2 1,3 1,4 1,5 1,6 et 1,7 Modèle:Harvsp
  2. 2,0 et 2,1 Modèle:Harvsp
  3. Modèle:Harvsp
  4. Modèle:Harvsp
  5. Modèle:Harvsp
  6. R.V. Gamkrelidze, Discovery of the Maximum Principle, J. of Dynamical and Control Systems, 5(4), 85-99, 1999.
  7. Modèle:Harvsp
  8. 8,0 et 8,1 Modèle:Harvsp
  9. 9,0 et 9,1 Modèle:Harvsp
  10. Modèle:Harvsp
  11. Modèle:Harvsp
  12. Modèle:Harvsp
  13. 13,0 13,1 et 13,2 Modèle:Harvsp
  14. Modèle:Harvsp
  15. 15,0 et 15,1 Modèle:Harvsp
  16. Modèle:Harvsp
  17. Modèle:Harvsp
  18. Modèle:Harvsp
  19. Modèle:Harvsp
  20. Modèle:Harvsp
  21. Modèle:Harvsp
  22. Modèle:Harvsp
  23. Modèle:Harvsp
  24. Modèle:Harvsp, § 231
  25. Modèle:Harvsp, §§ 232-241.
  26. Modèle:Harvsp
  27. Modèle:Harvsp
  28. Le cas d'un système dont l'état appartient à un espace de Hilbert a été considéré par Modèle:Harvsp
  29. Les hypothèses de régularité peuvent être affaiblies par rapport au cas général: voir Modèle:Harvsp.
  30. Modèle:Harvsp
  31. Modèle:Harvsp
  32. Pour des compléments, voir l'article Commande LQ.