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.
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 de 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 de 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 xixe 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],[4],[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],[8],[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].
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],[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 ».
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],[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 :
, 
où
est un intervalle compact de la droite réelle contenant
et où
est une fonction continue de
dans
,
étant un espace de Banach (le lecteur peut supposer que
),
un ouvert de
, et
un espace topologique (le plus souvent, un sous-ensemble de
). La variable
est l'état et
est la commande (voir l'article Représentation d'état). La fonction
est supposée continûment différentiable pour tout
.
Soit le critère de performance

où le lagrangien
vérifie les mêmes conditions que
et
est continûment différentiable sur
.
Soit
une sous-variété différentiable de
[19], appelée variété finale. Nous dirons qu'une fonction
est admissible si elle est continue par morceaux et transfère le couple
de la condition initiale
à une condition finale
(avec
et
,
). L'ensemble des commandes admissibles est noté
. Les hypothèses impliquent que
est localement lipschitzienne, donc si
est admissible,
est absolument continue, et la notion de solution est donc classique (l'égalité
étant vérifiée presque partout au sens de Lebesgue).
Soit
, et désignons par
et
l'état et l'instant final correspondants. Soit
et
le sous-ensemble de
formé des commandes
vérifiant la condition suivante : l'état
et l'instant final
correspondants sont tels que
et
.
La commande
est dite optimale localement[20] s'il existe
tel que
, et optimale globalement si
.
Pour
petit, on peut considérer
comme un « petit voisinage » de
. On notera que dans un tel voisinage,
n'est pas nécessairement proche de
à chaque instant t. Si
est un sous-ensemble d'un espace vectoriel, une « petite variation » de u peut notamment être une variation
de grande amplitude mais de faible durée, de sorte qu'elle entraîne une « petite variation » de la fonction
. 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).
On appelle pseudo-hamiltonien la fonction

(où
est le dual de
) définie par
.
(où
est le crochet de dualité).
- Dans la grande majorité des applications,
.
- Néanmoins, on peut supposer que
est une variété différentielle (éventuellement banachique), le champ de vecteurs f étant tel que
appartient à l'espace tangent
;
appartient alors au fibré cotangent
, de sorte que dans le crochet
,
est dans l'espace cotangent
. Cette formulation est indispensable, par exemple, pour le calcul des géodésiques dans un espace de Riemann.
- Si l'on suppose que
est un sous-ensemble de
, 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
où
est une fonction de
dans l'ensemble des sous-ensembles de
(appelée « multifonction ») dont le graphe est
-mesurable, où
est la tribu de Lebesgue de
,
est la tribu borélienne de
, et
est la tribu engendrée par les ensembles
[8],[9].
Le dual de
est identifié avec
. On note
l'espace vectoriel des fonctions continues par morceaux de
dans
. Soit d'autre part les deux équations canoniques
,
.
Notons
l'espace tangent à la variété
au point
et
l'orthogonal de
dans
, c'est-à-dire l'ensemble des formes linéaires continues
telles que
. On appelle condition de transversalité la relation
.
Enfin, nous appellerons condition de non trivialité l'inégalité
.
On montre le résultat suivant[1],[21] :
Théorème de Pontriaguine-Boltyansky — Supposons
de codimension finie. Pour que la commande
soit optimale localement, il est nécessaire qu'il existe un état adjoint
et un multiplicateur de Lagrange
pour lesquels les deux équations canoniques, la condition de transversalité et la condition de non trivialité soient satisfaites, que la fonction
soit continue, et que le Principe du maximum
soit vérifié en tout point
auquel la commande
est continue. On a en tout point auquel
et
sont continues (donc sauf en un nombre fini de points)
et en particulier, si le pseudo-hamiltonien
ne dépend pas explicitement du temps,

.
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
et qu'on ne fait que des « variations faibles » de la commande.
Supposons que l'instant initial
et l'état initial
ne soient plus fixés, et qu'on ait seulement une condition initiale
où
est une sous-variété différentiable de
(variété initiale). On doit alors ajouter la condition de transversalité
.
Nous supposons maintenant que la variété
est de la forme
où
et
sont des sous-variétés de
et de
, respectivement. L'équation de transversalité s'écrit donc
- (a)
,
- (b)
.
Dans le cas d'un instant final libre, on a
, par conséquent
et (a) devient
- (a')

alors que dans le cas d'un instant final fixé,
et
, donc (a) est trivialement vérifiée. Dans les deux cas on a une équation: (a') dans le premier,
dans le second.
Dans le cas d'un état final libre, on a
, par conséquent
et (b) devient
- (b')

et la condition de non trivialité entraîne
. Dans le cas d'un état final fixé,
et
, donc (b) est trivialement vérifiée. Dans les deux cas on a n équations, si
est de dimension n : (b') dans le premier,
dans le second.
Considérons maintenant le problème de commande en temps minimal. L'espace topologique
est le sous-ensemble de
défini par
. Le critère est
, ce qui est un cas particulier de l'expression donnée plus haut avec
et
. Le problème est évidemment à instant final libre, et il est à état final fixé:
. On suppose que
,
est un point d'équilibre et que le système est affine en la commande, donc de la forme indiquée avec
où
. Représentons
par la ligne d'éléments
et
par la matrice d'éléments
. Il vient
.
Si
, on a également
d'après (b'), ce qui contredit la condition de non trivialité; donc,
. Le Principe du maximum implique que
(resp.
) si
(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
et commandable. Si les valeurs propres de la matrice d'état sont toutes réelles, le nombre de commutations est au plus égal à
. 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].
Supposons que le système soit linéaire et de dimension finie, soit

où les fonctions
et
sont continues, et que les fonctions K et l du critère soient continûment différentiables. Supposons également que la variété
soit affine et que l'instant final
soit fixé. Supposons enfin que l'ensemble U et la fonction
soient convexes, ainsi que la fonction
pour tout
. Dans ce cas, les conditions de Pontriaguine avec
sont suffisantes pour que commande
soit optimale globalement. Si de plus la fonction
est convexe, strictement par rapport à u, alors il y a unicité de la commande optimale[13].
Reprenons le problème de commande optimale, tel qu'il a été posé plus haut.
D'après le principe général de la programmation dynamique, la commande optimale minimise sur
, pour tout
, le critère

avec
.
Désignons par
la valeur optimale de ce critère. En plus des hypothèses précédentes, nous supposons maintenant que les fonctions
et
sont continûment différentiables. Nous supposons également que
et supprimons cette variable des arguments de
, qui est donc maintenant une fonction
.
L'équation de Hamilton-Jacobi-Bellman est l'équation aux dérivées partielles
(HJB)::
avec pour condition aux limites
(CL)::
.
On dit que le pseudo-hamiltonien
est régulier si la fonction
admet un maximum unique sur U, atteint pour une valeur
de u. Dans ce cas, soit la commande en boucle fermée
. On a le résultat suivant[15]:
Théorème de Bellman — Supposons le pseudo-hamiltonien régulier. Pour que la commande en boucle fermée
soit optimale, il est suffisant que (i) il existe une solution continûment différentiable
à l'équation de Hamilton-Jacobi-Bellman (HJB), avec la condition aux limites (CL), et (ii) la fonction
, où
est l'état résultant de l'application de la commande
, soit admissible. La valeur du critère obtenue avec cette commande en boucle fermée optimale est
.
Démonstration
Obtention de l'équation de Hamilton-Jacobi-Bellman et de la condition aux limites :
Soit
tel que
. On a

avec
. Par conséquent, en soustrayant
des deux membres, en divisant par
et en faisant tendre
vers 0, on obtient

,
ce qui équivaut à l'équation de Hamilton-Jacobi-Bellman. La condition aux limites et la valeur optimale du critère découlent de la définition de
.
Démonstration de la condition suffisante d'optimalité :
Supposons que
minimise par rapport à
la quantité
ci-dessous :
.
Soit u une commande admissible et
l'état déterminé par l'équation différentielle
et la condition initiale
. On a alors

et en conséquence

compte tenu de la condition aux limites. Puisque
et
sont fixés,
l'est aussi. La commande
est admissible et pour
, la quantité ci-dessus est nulle. Par conséquent, la commande
est optimale et
.
On déduit dans ce qui suit le théorème de Pontriaguine-Boltyansky du théorème de Bellman en supposant la fonction
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
. On sait alors qu'une commande optimale existe ; soit
et
l'état optimal et la commande optimale à l'instant t, respectivement, et posons
.
Il vient alors nécessairement

avec
, ce qui équivaut à la première équation canonique
.
L'équation de Hamilton-Jacobi-Bellman implique le Principe du maximum
.
ainsi que l'égalité
.
On tire de cette dernière
.
En plongeant
dans son bidual, on a

et on obtient finalement la seconde équation canonique

car avec le plongement ci-dessus, et compte tenu du fait que la forme bilinéaire continue
est symétrique,
et 
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
. On a alors
. Considérons le crochet
. Il désigne le réel
. Mais en considérant h comme élément du bidual de
, il désigne également
. Donc,
, et puisque B est symétrique,
, ce qui entraîne encore
. 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é
(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
à l'optimum. Par conséquent,
.
Le même type de raisonnement que plus haut montre que
, d'où le résultat.
Il reste à obtenir la condition de transversalité. Sur
on doit avoir
. Par conséquent, pour tout accroissement admissible infiniment petit
,
.
Or, on a
et
.
La condition de transversalité est donc démontrée.
Le problème du Calcul des variations consiste à minimiser un critère de la forme

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 »
, et
, espace qu'on suppose de dimension finie. Il vient, en éliminant
,
.
La fonction
est supposée continûment différentiable ainsi que sa différentielle partielle
. Le Principe du maximum est, de par sa formulation, une condition nécessaire d'« optimum fort ». Il implique
.
La condition de non trivialité implique
, 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
dans la seconde équation canonique, on obtient la condition d'Euler-Lagrange :
.
D'autre part, en supposant que
admet une différentielle partielle seconde par rapport à
et que cette différentielle partielle seconde est une fonction continue, le Principe du maximum implique, au second ordre, la condition faible de Legendre

qui signifie que la forme bilinéaire continue symétrique