Commande optimale — Wikipédia

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 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],[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].

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

[modifier | modifier le code]

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 ».

Formulation d'un problème de commande optimale

[modifier | modifier le code]

Système et critère

[modifier | modifier le code]

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 :

,

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 .

Notions de commande admissible et d'optimum

[modifier | modifier le code]

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).

Pseudo-hamiltonien

[modifier | modifier le code]

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 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].

Principe du maximum

[modifier | modifier le code]

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 est une sous-variété différentiable de (variété initiale). On doit alors ajouter la condition de transversalité

.

Cas particuliers

[modifier | modifier le code]

Nous supposons maintenant que la variété est de la forme 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.

Commande Bang-Bang

[modifier | modifier le code]

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 . 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].

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

[modifier | modifier le code]

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].

Programmation dynamique (cas déterministe)

[modifier | modifier le code]

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

Équation de Hamilton-Jacobi-Bellman

[modifier | modifier le code]

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 .

Justification du théorème de Pontriaguine-Boltyansky

[modifier | modifier le code]

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.

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

[modifier | modifier le code]

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 doit être semi-définie positive. Pour qu'en plus l'hamiltonien soit régulier, il faut que soit satisfaite la condition forte de Lege