Poly
Poly
Poly
Année 2
MAP434
Alexandre Ern
Édition 2019
Table des matières
Avant-propos iii
i
Table des matières
Bibliographie 107
ii
Avant-propos
Ce cours est consacré à l’étude des systèmes commandés, c’est-à-dire des systèmes dyna-
miques sur lesquels on peut agir au moyen d’une commande ou d’un contrôle. Un premier
objectif peut être d’amener le système d’un état initial donné à un état final (une cible), en
respectant éventuellement certaines contraintes (par exemple, la valeur du contrôle ne peut
être trop grande ou bien l’état du système doit respecter certaines contraintes). Il s’agit du
problème de la contrôlabilité. Un deuxième objectif peut être celui de déterminer un contrôle
optimal, c’est-à-dire minimisant un certain critère dépendant du contrôle et de la trajectoire
résultant de ce contrôle. Il s’agit du problème de contrôle optimal. Nous aborderons ces deux
problèmes dans ce cours. Le champ d’applications est très vaste. On rencontre des problèmes
de contrôlabilité et de contrôle optimal dans des domaines très variés, comme l’aéronautique,
l’électronique, le génie des procédés, la médecine, l’économie et la finance, internet et les
communications, etc.
Ce cours se plaçant à un niveau introductif, nous nous restreindrons pour simplifier à
des systèmes dynamiques dont l’état peut être décrit par un nombre fini de variables. De
plus, nous considérerons uniquement des systèmes dépendant du temps et non pas du temps
et de l’espace ; en d’autres termes, nous considérerons uniquement le contrôle de systèmes
différentiels et non pas d’équations aux dérivées partielles. L’horizon temporel pourra être
fixé ou non, mais il sera toujours fini. Un exemple important où cet horizon n’est pas fixé
est celui de la temps-optimalité consistant à chercher un contrôle permettant d’atteindre une
cible (atteignable) en temps minimum. Enfin, nous considérerons uniquement des systèmes
déterministes et n’aborderons pas ici le cas (très important en pratique) des systèmes sto-
chastiques comme les systèmes avec bruit.
Afin de fixer les idées, donnons un exemple simple de système de contrôle, celui du contrôle
d’un aspirateur robot. On note t ∈ [0,T ] le temps où T > 0 est l’horizon temporel fixé. L’état
du système est décrit par le triplet (x, y, θ) : [0,T ] → R3 . Le couple (x, y) repère la position
de l’aspirateur dans le plan et θ l’angle des roues par rapport à l’axe des x. L’action sur le
système s’exerce par le biais d’une fonction u : [0,T ] → R qui prescrit la vitesse angulaire de
l’axe des roues. La dynamique du système est régie par le système différentiel suivant (qu’on
appelle système de Dubbins) :
ẋ(t) = v cos(θ(t)),
ẏ(t) = v sin(θ(t)),
θ̇(t) = u(t), ← action sur le système
iii
Avant-propos
où v est la vitesse de l’aspirateur, supposée constante pour simplifier. De manière plus générale,
nous considérerons des systèmes de contrôle sous la forme
Alexandre Ern
Paris, janvier 2019
iv
Chapitre 1
Ce chapitre est consacré à la contrôlabilité des systèmes linéaires. Le principal résultat est
le critère de Kalman qui fournit une condition nécessaire et suffisante pour la contrôlabilité
d’un système linéaire autonome. De manière tout à fait remarquable, ce critère se formule
de manière purement algébrique, et la condition à vérifier est indépendante de la condition
initiale et de l’horizon temporel. Dans un deuxième temps, nous considérons des systèmes de
contrôle linéaires avec des bornes sur le contrôle. Cela nous conduit à introduire la notion
importante d’ensemble atteignable.
u : [0,T ] → Rk (1.2)
nous permet d’agir sur le système afin d’en modifier l’état. On dit que u est le contrôle. Une
fois le contrôle u fixé, (1.1) est un problème de Cauchy. Afin d’expliciter le fait que la
trajectoire x, solution de (1.1), dépend du contrôle u, nous la noterons souvent xu , et nous
écrirons (1.1) sous la forme
u ∈ L1 ([0,T ]; Rk ), (1.4)
et nous serons parfois amenés à faire des hypothèses un peu plus fortes sur le contrôle, comme
par exemple que u prend ses valeurs dans un sous-ensemble fermé non-vide de Rk , ce que
1
Chapitre 1. Contrôlabilité des systèmes linéaires
nous noterons u ∈ L1 ([0,T ]; U ) ; nous ferons parfois des hypothèses d’intégrabilité plus forte
en temps, comme par exemple L2 ([0,T ]; U ) ou L∞ ([0,T ]; U ). Rappelons à toutes fins utiles que
l’espace L1 ([0,T ]; Rk ) est équipé de la norme
Z T
kukL1 ([0,T ];Rk ) = |u(s)|Rk ds, (1.5)
0
où |·|Rk désigne la norme euclidienne sur Rk . (On peut remplacer la norme euclidienne par toute
autre norme sur Rk .) Dans ce cours, on utilisera la notation † pour désigner la transposition
des vecteurs ou des matrices ; on écrira donc x† y pour le produit scalaire entre deux vecteurs
et Z † pour la transposée de la matrice Z.
Définition 1.1 (Systèmes de contrôle linéaires). On dit que (1.3) est un système de contrôle
linéaire. On dit que ce système est autonome (ou stationnaire) lorsque les matrices A et
B ne dépendent pas du temps. Plus généralement, on dit que le système de contrôle linéaire
est instationnaire lorsqu’il s’écrit sous la forme
avec A ∈ L1 ([0,T ]; Rd×d ) et B ∈ L1 ([0,T ]; Rd×k ). Enfin, on dit que le système de contrôle
linéaire a un terme de dérive lorsqu’il s’écrit sous la forme
Dans cette section, nous allons considérer le système de contrôle linéaire autonome (1.1).
La première question à se poser est si, pour tout contrôle u ∈ L1 ([0,T ]; Rk ) fixé, il existe une
unique trajectoire x : [0,T ] → Rd associée à ce contrôle, solution du problème de Cauchy (1.1).
Comme le contrôle u n’est a priori pas une fonction continue du temps, on ne peut pas chercher
une trajectoire de classe C 1 ([0,T ]; Rd ). Un bon cadre fonctionnel pour la trajectoire est celui
des fonctions absolument continues sur [0,T ], dont on rappelle la définition.
Définition 1.2 (Fonction absolument continue). On dit qu’une fonction F : [0,T ] → Rd est
absolument continue sur [0,T ] et on écrit F ∈ AC([0,T ]; Rd ) s’il existe f ∈ L1 ([0,T ]; Rd ) telle
que
Z t
F (t) − F (0) = f (s) ds, ∀t ∈ [0,T ]. (1.8)
0
Si une fonction F est absolument continue sur [0,T ], alors elle est continue sur [0,T ] et elle
est dérivable presque partout, de dérivée égale à f .
Proposition 1.3 (Formule de Duhamel). Pour tout contrôle u ∈ L1 ([0,T ]; Rk ), il existe une
unique trajectoire
xu ∈ AC([0,T ]; Rd ) (1.9)
2
1.2 Cas sans contraintes : critère de Kalman
solution de (1.1) au sens où cette trajectoire vérifie la condition initiale xu (0) = 0 et le système
différentiel ẋu (t) = Axu (t)+Bu(t) presque partout (p.p.) sur [0,T ]. Cette trajectoire est donnée
par la formule de Duhamel
Z t
tA
xu (t) = e x0 + e(t−s)A Bu(s) ds, ∀t ∈ [0,T ]. (1.10)
0
On notera que cette expression a bien un sens pour u ∈ L1 ([0,T ]; Rk ) car la fonction s 7→ e(t−s)A
est bornée sur [0,T ].
Remarque 1.4. [Exponentielle de matrice] On rappelle que eA = n≥0 n!1 An , dtd etA = AetA =
P
etA A, et que si A1 , A2 commutent (A1 A2 − A2 A1 = 0), alors eA1 eA2 = eA2 eA1 = eA1 +A2 .
Remarque 1.5. [Fonction dérivable presque partout] Attention, si une fonction F : [0,T ] → R
est continue sur [0,T ] et dérivable p.p. sur [0,T ], elle peut ne pas être égale à l’intégrale de
sa dérivée (même si celle-ci est L1 ). Un contre-exemple est fourni par l’escalier de Cantor (ou
escalier du diable) illustré à la figure 1.1 ; cette fonction n’est donc pas absolument continue.
Figure 1.1 – L’escalier de Cantor : fonction continue et dérivable presque partout qui n’est
pas égale à l’intégrale de sa dérivée.
Définition 1.6 (Contrôlabilité). On dit que le système (1.11) est contrôlable en temps T à
partir de x0 si
∀x1 ∈ Rd , ∃u ∈ L∞ ([0,T ]; Rk ), xu (T ) = x1 . (1.12)
On cherche donc à atteindre la cible x1 au temps T à partir de x0 .
3
Chapitre 1. Contrôlabilité des systèmes linéaires
C = B, AB, · · · , Ad−1 B .
(1.15)
Théorème 1.8 (Critère de Kalman). Le système linéaire autonome ẋu (t) = Axu (t) + Bu(t)
est contrôlable pour tout T > 0 et pour tout x0 ∈ Rd si et seulement si
rang(C) = d, (1.16)
ẏ(t) = Ay(t)
e + Bu(t),
e
4
1.2 Cas sans contraintes : critère de Kalman
Démonstration. (1) Supposons d’abord que rang(C) < d. Il existe donc un vecteur Ψ ∈ Rd ,
Ψ 6= 0, tel que
Ψ† B = Ψ† AB = · · · = Ψ† Ad−1 B = 0 (∈ Rk ),
où Ψ† désigne le transposé de Ψ (Ψ† est un vecteur ligne). D’après le théorème d’Hamilton–
Cayley, il existe des réels s0 , · · · , sd−1 tels que
Ad = s0 Id + · · · + sd−1 Ad−1 ,
où Id est la matrice identité dans Rd×d . On en déduit par récurrence que Ψ† Ak B = 0 pour
tout k ∈ N, puis que Ψ† etA B = 0 pour tout t ∈ [0,T ]. Par conséquent, Ψ† Φ(u) = 0 pour tout
contrôle u, i.e., l’application Φ ne peut être surjective.
(2) Réciproquement, si l’application Φ n’est pas surjective, il existe un vecteur Ψ ∈ Rd , Ψ 6= 0,
tel que
Z T
†
Ψ e(T −s)A Bu(s) ds = 0, ∀u ∈ L∞ ([0,T ]; Rk ).
0
†
En choisissant le contrôle u(s) = B † e(T −s)A Ψ, qui est bien dans L∞ ([0,T ]; Rk ), on en déduit
que
Ψ† etA B = 0 (∈ Rk ), ∀t ∈ [0,T ].
En t = 0, il vient Ψ† B = 0, puis en dérivant par rapport à t, il vient Ψ† AB = 0 et ainsi de
suite ; d’où
Ψ† B = Ψ† AB = · · · = Ψ† Ad−1 B = 0 (∈ Rk ).
La matrice C ne peut donc être de rang maximal.
Exemple 1.11. [Contrôle d’un tram] L’état du tram (supposé de masse unité) est décrit par
sa position x(t) et sa vitesse v(t) le long d’un axe unidirectionnel et on contrôle l’accélération
du tram sous la forme
ẍ(t) = u(t), ∀t ∈ [0,T ].
Cette équation différentielle du second ordre en temps se récrit comme un système d’ordre un
en temps (avec d = 2, k = 1) :
0 1 0 x(t)
Ẋ(t) = X(t) + u(t), X(t) = .
0 0 1 ẋ(t)
Le tram est donc contrôlable en tout temps T à partir de tout X0 = (x0 , v0 )† (position et
vitesse initiales) : cela signifie que quel que soit X1 = (x1 , v1 )† (position et vitesse cibles en
T ), il existe un contrôle u ∈ L∞ ([0,T ]; R) amenant le tram de X0 en X1 au temps T .
5
Chapitre 1. Contrôlabilité des systèmes linéaires
ou encore ẍ(t) = − R
L
ẋ(t) − LC1
x(t) + L1 u(t) On obtient le système de contrôle linéaire (avec
d = 2, k = 1) sous la forme
0 1 0 x(t)
Ẋ(t) = −1 −R X(t) + 1 u(t), X(t) = .
LC L L
ẋ(t)
si bien que Ψ† e(T −s)A B = 0 pour tout s ∈ [0,T ]. Par la formule de Duhamel, on obtient
Ψ† (xu (T )−eT A x0 ) = 0, ce qui montre que xu (T ) est dans un hyperplan affine. Par conséquent,
le système n’est pas contrôlable.
6
1.2 Cas sans contraintes : critère de Kalman
Comme dtd det(R(t)) = tr(A(t)) det(R(t)) et det(R(0)) = 1, la matrice R(t) est inversible à
tout temps (la quantité det(R(t)) s’appelle le Wronskien au temps t). On notera également
que, dans le cas autonome où A(t) = A, on a R(t) = etA . On vérifie sans peine que la solution
du système différentiel instationnaire (1.18) est
Z t
xu (t) = R(t)x0 + R(t) R(s)−1 B(s)u(s) ds, ∀t ∈ [0,T ]. (1.21)
0
est inversible.
Démonstration. Identique au cas autonome.
Remarque 1.16. [Matrice KT ] La condition (1.22) dépend de T , mais pas de x0 . Ainsi, la
contrôlabilité en temps T à partir de x0 implique la contrôlabilité en temps T à partir de tout
point ; en revanche, on ne peut s’affranchir de la dépendance en T . On notera également que
dans le cas autonome, on a R(s) = esA et B(s) = B, si bien que
Z T
−T A (T −s)A † (T −s)A† † †
KT = e e BB e ds e−T A = e−T A GT e−T A
0
7
Chapitre 1. Contrôlabilité des systèmes linéaires
−1 1 1 0
R(s) B(s) = =⇒ KT = .
0 0 0
La matrice KT n’est donc pas inversible, si bien que le système (1.23) n’est pas contrôlable.
Le problème vient du fait que la matrice R(s)−1 B(s) est indépendante de s. En revanche, si le
vecteur B était constant (et non-nul), le système serait contrôlable car B et AB seraient alors
des vecteurs orthogonaux non-nuls, si bien que la matrice de Kalman C = (B, AB) serait de
rang plein.
Comme ci-dessus, l’horizon temporel T > 0 et la condition initiale x0 ∈ Rd sont fixés. Les
résultats de cette section s’étendent au cas instationnaire avec terme de dérive, mais pour
simplifier, nous ne traiterons pas ce cas plus général.
Dans cette section, nous suppose le contrôle à valeurs dans un sous-ensemble compact
non-vide
U ⊂ Rk . (1.25)
En particulier, le contrôle u(t) est borné pour tout t ∈ [0,T ]. On a donc u ∈ L∞ ([0,T ]; U ). (On
notera que L1 ([0,T ]; U ) = L∞ ([0,T ]; U ) lorsque l’ensemble U est borné.)
Théorème 1.19 (Propriétés de l’ensemble atteignable). Pour tout t ∈ [0,T ], l’ensemble attei-
gnable A(t, x0 ) est compact, convexe, et varie continûment en t. La continuité en temps
est uniforme, i.e., pour tout > 0, il existe δ > 0 tel que
8
1.3 Cas avec contraintes : ensemble atteignable
où la distance de Hausdorff entre deux sous-ensembles A1 et A2 de Rd est définie comme suit
(cf. la figure 1.2) :
d(A1 , A2 ) := max sup d(x1 , A2 ), sup d(x2 , A1 )
x ∈A x2 ∈A2
1 1
= max sup inf |x1 − y2 |Rd , sup inf |x2 − y1 |Rd . (1.28)
x1 ∈A1 y2 ∈A2 x2 ∈A2 y1 ∈A1
A1 A2
d(x1, A2)
x1
d(x2, A1)
x2
9
Chapitre 1. Contrôlabilité des systèmes linéaires
et montrons à nouveau que θx1 + (1 − θ)x2 = x(t) ∈ A(t, x0 ). Par définition, il existe des
R t (t−s)A
∞ tA
contrôles ui ∈ L ([0,t]; U ), i ∈ {1, 2}, tels que xi = e x0 + 0 e Bui (s) ds. Posons
yi = xi − etA x0 et considérons la fonction f ∈ L1 ([0,t]; R2d ) telle que
(t−s)A
e Bu1 (s)
f (s) = (t−s)A ∈ R2d .
e Bu2 (s)
On a {0} f (s) ds = (0, 0)† et [0,t] f (s) ds = (y1 , y2 )† . En invoquant le lemme de Lyapunov, on
R R
Finalement, on pose (
u1 (s) si s ∈ E,
u(s) =
u2 (s) si s ∈ E c .
Le contrôle ainsi défini est bien une fonction mesurable de [0,t] dans U car les ensembles E et
E c sont mesurables. De plus, la trajectoire xu associée à ce contrôle satisfait
Z
tA
xu (t) − e x0 = e(t−s)A Bu(s) ds
[0,t]
Z Z
(t−s)A
= e Bu1 (s) ds + e(t−s)A Bu2 (s) ds = θy1 + (1 − θ)y2 ,
E Ec
10
1.3 Cas avec contraintes : ensemble atteignable
où on a fixé l’origine à la position initiale du point matériel. L’ensemble atteignable est
A(t, 0) = [−t, t] (qui est bien compact, convexe et varie continûment en t). On constate
qu’on obtient le même ensemble atteignable en se restreignant à des contrôles à valeurs dans
∂U = {−1, 1}. De tels contrôles sont appelés des contrôles bang-bang car ils ne prennent
que des valeurs extrémales dans ∂U . Une illustration est présentée à la figure 1.3.
x
u ≡ +1
x(t) ∈ A[−1,1](t, x0) = A{−1,1}(t, x0)
x0 t
u ≡ −1
Figure 1.3 – Ensemble atteignable par un point matériel dont on contrôle la vitesse dans
U = [−1, 1].
11
Chapitre 1. Contrôlabilité des systèmes linéaires
12
Chapitre 2
13
Chapitre 2. Contrôlabilité des systèmes non-linéaires
14
2.1 Théorème de Cauchy–Lipschitz
On voit donc que même si l’application f est régulière en u, le fait que le contrôle ne dépende
pas continûment du temps fait que l’application F ne sera pas nécessairement continue en t.
Afin de traiter cette situation, on dispose de la variante suivante du théorème 2.1 (la preuve uti-
lise des arguments analogues à ceux évoqués ci-dessus). On renvoie le lecteur à la définition 1.2
pour la notion de fonction absolument continue.
Théorème 2.2 (Cauchy–Lipschitz, cas mesurable et Lipschitz global). On suppose que :
(i) L’application F est mesurable en t et continue en x, i.e., pour tout x ∈ Rd , l’application
t 7→ F (t, x) est mesurable et pour presque tout t ∈ [0,T ], l’application x 7→ F (t, x) est continue ;
(ii) L’application F est intégrable en t, i.e.,
∃C0 ∈ L1 ([0,T ]; R+ ),
p.p. t ∈ [0,T ], ∀x1 , x2 ∈ Rd , |F (t, x1 ) − F (t, x2 )|Rd ≤ C0 (t)|x1 − x2 |Rd . (2.7)
x ∈ AC([0,T ]; Rd ). (2.8)
Cette solution, qui est dérivable p.p. sur [0,T ], satisfait le système différentiel (2.1) pour
presque tout t ∈ [0,T ] ; elle vérifie également
Z t
x(t) = x0 + F (s, x(s)) ds, ∀t ∈ [0,T ]. (2.9)
0
Remarque 2.3. [Intégrabilité] Grâce à la propriété (iii) du théorème 2.2, il suffit, afin d’établir
la propriété (ii), de montrer que F (t, 0) ∈ L1 ([0,T ]; Rd ).
Un cas d’application du théorème 2.2 est le cas linéaire (éventuellement avec un terme
de dérive) où on a F (t, x) = A(t)x + r(t) avec A ∈ L1 ([0,T ]; Rd×d ) et r ∈ L1 ([0,T ]; Rd ) ;
l’application F est alors globalement lipschitzienne de constante C0 (t) = |A(t)|Rd×d (où | · |Rd×d
désigne la norme matricielle subordonnée à la norme euclidienne). Lorsque l’application F est
non-linéaire en x, la propriété d’être globalement lipschitzienne est en général perdue. Dans ce
cas, il est bien connu que la solution x du problème de Cauchy (2.1) peut exploser en temps
fini.
Exemple 2.4. [Explosion en temps fini] Donnons un exemple simple d’explosion en temps
fini. On se place dans R (d = 1) et on considère l’application F (t, x) = 1 − x2 (qui ne dépend
que de x). Le problème de Cauchy est donc ẋ(t) = 1 − x(t)2 avec x(0) = x0 ∈ R. Si |x0 | ≤ 1,
il vient x(t) = tanh(t + t0 ) avec tanh(t0 ) = x0 et limt→∞ x(t) = 1 ; on a donc existence globale
en temps de la solution. En revanche, si |x0 | > 1, il vient x(t) = coth(t + t0 ) avec coth(t0 ) = x0
et deux situations peuvent se produire : (i) si x0 > 1, alors t0 > 0 et on a limt→∞ x(t) = 1,
i.e., on a encore existence globale en temps de la solution ; (ii) si x0 < −1, alors t0 < 0 et dans
ces conditions, limt↑t0 |x(t)| = +∞ ; on a donc explosion en temps fini.
15
Chapitre 2. Contrôlabilité des systèmes non-linéaires
16
2.2 Ensemble atteignable
Alors, l’ensemble A(t, x0 ) varie continûment en temps, et ce de manière uniforme, i.e., pour
tout > 0, il existe δ > 0 tel que
où la distance de Hausdorff entre deux sous-ensembles est définie en (1.28) (cf. la figure 2.1).
A1 A2
d(x1, A2)
x1
d(x2, A1)
x2
Remarque 2.10. [Cas linéaire] Les hypothèses du lemme 2.9 sont bien vérifiées dans le cas
linéaire. L’ensemble atteignable varie donc continûment en temps dans ce cas.
Démonstration. Soit > 0. On va montrer qu’il existe δ > 0 tel que
où A1 = A(t1 , x0 ) et A2 = A(t2 , x0 ). Supposons pour fixer les idées que t2 > t1 . Soit x2 ∈ A2 .
Il existe donc un contrôle u ∈ L∞ ([0,t2 ]; U ) tel que
Z t2
x2 = x0 + f (s, x(s), u(s)) ds.
0
17
Chapitre 2. Contrôlabilité des systèmes non-linéaires
Ceci montre que d(x2 , A1 ) ≤ |x2 − x1 |Rd ≤ C|t2 − t1 |. On raisonne de même pour x1 ∈ A1 , ce
qui conclut la preuve.
(iv) pour tout (t, x) ∈ [0,T ] × Rd , l’ensemble des vecteurs vitesse K(t, x) := {f (t, x, u) | u ∈ U }
est un sous-ensemble convexe de Rd .
Alors, pour tout t ∈ [0,T ], l’ensemble atteignable A(t, x0 ) est un sous-ensemble compact de Rd .
Remarque 2.12. [Cas linéaire] Les hypothèses du lemme 2.11 sont bien vérifiées dans le cas
linéaire avec U convexe. L’ensemble atteignable est donc compact dans ce cas.
D’après les hypothèses, la suite (gn )n∈N est bornée dans V . En invoquant le théorème 2.23 sur
la compacité faible dans les espaces de Hilbert, on en déduit qu’à une sous-suite près, la suite
(gn )n∈N converge vers une fonction g ∈ V pour la topologie faible. On définit la trajectoire
x ∈ AC([0,T ]; Rd ) en posant
Z t
x(t) = x0 + g(s) ds, ∀t ∈ [0,T ].
0
18
2.3 Contrôlabilité locale des systèmes non-linéaires
Rt Rt
Par convergence faible, on a 0
gn (s) ds = (gn , 1[0,t] )V → (g, 1[0,t] )V = 0
g(s) ds, i.e.,
lim xn (t) = x(t), ∀t ∈ [0,T ].
n→+∞
En particulier, on a donc
lim yn = x(T ).
n→+∞
Il reste à montrer que la trajectoire x(t) peut bien être engendrée par un contrôle u ∈
L∞ ([0,T ]; U ).
(2) Posons θn (s) = f (s, x(s), un (s)) et introduisons l’ensemble
Θ = {θ ∈ V | θ(s) ∈ K(s, x(s)), ∀s ∈ [0,T ]},
de sorte que (θn )n∈N est une suite de Θ. Par hypothèse, K(s, x(s)) est un sous-ensemble convexe
de Rd pour tout s ∈ [0,T ]. On en déduit que Θ est un sous-ensemble convexe de V . De plus,
Θ est fermé dans V car la convergence dans V implique la convergence p.p. d’une sous-suite,
et K(s, x(s)) est fermé dans Rd . Grâce au théorème 2.24 sur la fermeture faible des convexes
dans les espaces de Hilbert, on en déduit que Θ est faiblement fermé dans V . De plus, comme
la suite (θn )n∈N est bornée dans V , on déduit du théorème 2.23 qu’elle converge faiblement, à
une sous-suite près, vers une fonction θ ∈ Θ. Il existe donc une fonction u : [0,T ] → U telle
que θ(s) = f (s, x(s), u(s)) p.p. dans [0,T ], et la fonction u peut être choisie mesurable (cf. la
sous-section 2.4.3 pour plus de précisions sur ce point). Pour tout ϕ ∈ V , on a
Z T Z T Z T
gn (s)ϕ(s) ds = θn (s)ϕ(s) ds + (f (s, xn (s), un (s)) − f (s, x(s), un (s))ϕ(s) ds. (2.17)
0 0 0
Comme |f (s, xn (s), un (s)) − f (s, x(s), un (s))|Rd ≤ C|xn (s) − x(s)|Rd et |xn (s) − x(s)|Rd tend
vers zéro p.p. dans [0,T ], le deuxième terme au membre de droite de (2.17) tend vers zéro
(invoquer le théorème de convergence dominée de Lebesgue). En outre, par convergence faible,
RT RT
on a 0 g(s)ϕ(s) ds = 0 θ(s)ϕ(s) ds, i.e., g(s) = θ(s) p.p. dans [0,T ]. En conclusion, on a
bien g(s) = f (s, x(s), u(s)) p.p. sur [0,T ].
19
Chapitre 2. Contrôlabilité des systèmes non-linéaires
20
2.3 Contrôlabilité locale des systèmes non-linéaires
ẋu+δu (t) − ẋu (t) = f (t, xu+δu (t), u(t) + δu(t)) − f (t, xu (t), u(t))
= ∂f
∂x
(t, xu (t), u(t))(xu+δu (t) − xu (t)) + ∂f
∂u
(t, xu (t), u(t))δu(t) + o(δu)
= Au (t)(xu+δu (t) − xu (t)) + Bu (t)δu(t) + o(δu),
et on a vu que δu 7→ δx(T ) définit une forme linéaire continue sur δu pour la topologie de V .
Ceci conclut la preuve.
Remarque 2.19. [Point d’équilibre] On considère le cas particulier d’un point d’équilibre
d’un système différentiel autonome, i.e., un couple (x0 , u0 ) tel que f (x0 , u0 ) = 0. Noter que
x0 ∈ A(t, x0 ) en utilisant le contrôle constant égal à u0 . Le critère de contrôlabilité locale en
x0 consiste à vérifier que les matrices A = ∂f ∂x
(x0 , u0 ) et B = ∂f
∂u
(x0 , u0 ) vérifient la condition
de Kalman. En effet, comme f (x0 , u0 ) = 0, la trajectoire de référence est réduite à un point,
si bien que le système linéarisé est également autonome, et on peut appliquer la condition de
Kalman pour en vérifier la contrôlabilité.
21
Chapitre 2. Contrôlabilité des systèmes non-linéaires
on déduit par inversion du temps que pour tout y ∈ A(T, x0 ) tel que Vy ⊂ A(T, x0 ), on peut
ramener tout point y 0 ∈ Vy à x0 . En effet, en notant u0 le contrôle amenant x0 en y 0 en temps T ,
on pose ũ0 (t) = −u0 (T − t) et on vérifie que x̃(t) = xu0 (T − t) vérifie bien x̃(0) = y 0 , x̃(T ) = x0
et dtd x̃(t) = − dtd xu0 (T − t) = −u0 (T − t)g(xu0 (T − t)) = ũ0 (t)g(x̃(t)), ce qui montre que x̃ est
bien la trajectoire associée au contrôle ũ0 .
Exemple 2.21. [Pendule inversé] On considère l’exemple du pendule inversé (masse vers le
haut, tige vers le bas) avec pour simplifier une masse et une longueur unités (m = 1, l = 1).
On suppose que le pendule a un mouvement dans un plan et on repère l’extrémité supérieure
du pendule par son angle θ avec la verticale (dans le sens horaire). On contrôle l’accélération
horizontale du point inférieur de la tige. La dynamique s’écrit sous la forme
θ̈(t) = sin(θ(t)) − u(t) cos(θ(t)).
En posant x = (x1 , x2 ) = (θ, θ̇) ∈ R2 , on se ramène à un système d’ordre un :
x2
ẋ(t) = f (x(t), u(t)), f (x, u) = .
sin(x1 ) − u cos(x1 )
On calcule
∂f 0 1 ∂f 0
(x, u) = , (x, u) = .
∂x cos(x1 ) + u sin(x1 ) 0 ∂u − cos(x1 )
On considère le point d’équilibre instable (x0 , u0 ) = ((0, 0)† , 0). Le système linéarisé autour de
˙
ce point s’écrit sous la forme δx(t) = Aδx(t) + Bδu(t) avec
∂f 0 1 ∂f 0
A= (x0 , u0 ) = , B= (x0 , u0 ) = .
∂x 1 0 ∂u −1
La condition de Kalman est bien satisfaite car
0 −1
C = (B, AB) = .
−1 0
On a donc montré que le pendule inversé est localement contrôlable autour de son point
d’équilibre instable (x0 , u0 ) = ((0, 0)† , 0). Enfin, en adaptant le raisonnement présenté à la
remarque 2.20, on montre qu’on peut ramener tout point au voisinage du point d’équilibre
instable vers ce point.
22
2.4 Rappels/compléments : topologie faible, différentielle, sélection mesurable
Définition 2.22 (Convergence faible). On dit qu’une suite (vn )n∈N de V converge faible-
ment vers v ∈ V si
L’inégalité de Cauchy–Schwarz montre que si la suite (vn )n∈N converge fortement vers v
(i.e., limn→+∞ kvn − vkV = 0), alors la suite (vn )n∈N converge faiblement vers v.
Théorème 2.23 (Compacité faible). Si (vn )n∈N est une suite bornée dans V , on peut en
extraire une sous-suite faiblement convergente.
Théorème 2.24 (Fermeture faible des convexes). Soit K un sous-ensemble fermé non-vide de
l’espace de Hilbert V . On suppose que K est convexe. Alors, K est fermé pour la topologie
faible. En d’autres termes, si (vn )n∈N est une suite de K qui converge faiblement vers v dans
V , alors v ∈ K.
Dans le cas où V est un espace de Hilbert, on peut utiliser le théorème de représentation
de Riesz pour identifier la forme linéaire continue J 0 (v) ∈ V 0 avec son représentant
∇J(v) ∈ V. (2.29)
23
Chapitre 2. Contrôlabilité des systèmes non-linéaires
et on pose J = {t ∈ I | U (t) 6= ∅}. On souhaite savoir s’il existe une application u : J → Rk qui
soit mesurable et telle que u(t) ∈ U (t) pour tout t ∈ J. Une telle application est appelée une
sélection mesurable. Un résultat simple et utile est que si l’application Φ est mesurable
par rapport à t (à u fixé) et si elle est convexe et continue par rapport à u (à t fixé), alors
il existe une telle sélection mesurable.
Le reste de cette sous-section a pour objectif d’apporter une réponse mathématique un peu
plus complète au problème de la sélection mesurable. Dans un premier temps, on considère
des applications définies sur I à valeurs dans les sous-ensembles de Rk . On note S : I ⇒ Rk
une telle application (le symbole ⇒ est là pour nous rappeler que S(t) est un sous-ensemble
de Rk qui n’est pas forcément réduit à un point). On équipe I d’une σ-algébre notée A (par
exemple, la tribu borélienne de R restreinte à I).
24
2.4 Rappels/compléments : topologie faible, différentielle, sélection mesurable
25
Chapitre 2. Contrôlabilité des systèmes non-linéaires
ϕ(t) = inf Φ(t, u), U (t) = arg min Φ(t, u). (2.36)
u∈Rk u∈Rk
Proposition 2.36 (Convexité). Soit Φ : [0,T ]×Rk → R une application mesurable par rapport
à t et sci par rapport à u. Alors, si Φ est convexe par rapport à u (à t fixé), Φ est un intégrande
normal.
26
Chapitre 3
avec des matrices A ∈ Rd×d , B ∈ Rd×k , où d ≥ 1 et k ≥ 1. L’état du système est décrit par la
fonction xu : [0,T ] → Rd et on considère des contrôles u : [0,T ] → Rk dans l’espace de Hilbert
U = L2 ([0,T ]; Rk ). (3.2)
27
Chapitre 3. Optimisation dans les espaces de Hilbert
Nous serons amenés à nous poser les questions suivantes concernant le problème de contrôle
optimal (3.5), et plus généralement les problèmes de contrôle optimal rencontrés dans ce cours :
(Q1) existe-t-il une solution, i.e., un contrôle optimal ?
(Q2) cette solution est-elle unique ?
(Q3) peut-on formuler une condition suffisante d’optimalité, i.e., nous permettant d’affirmer
que si un contrôle u ∈ K vérifie cette condition, alors u est un contrôle optimal ?
Pour des problèmes de contrôle optimal relativement simples, comme celui considéré ci-dessus,
nous serons en mesure d’apporter une réponse complète à ces questions. Pour des problèmes
plus compliqués, nous devrons souvent nous contenter de traiter la question suivante :
(Q4) peut-on formuler une condition nécessaire d’optimalité, i.e., nous permettant d’affirmer
que si u ∈ K est un contrôle optimal, alors il vérifie cette condition.
L’intérêt pratique d’une condition nécessaire d’optimalité est qu’elle nous permet d’effectuer
un premier tri parmi les contrôles dans K. Dans le cas favorable où ce premier tri nous permet
d’identifier un nombre relativement restreint de contrôles candidats à l’optimalité, on pourra
ensuite vérifier la valeur du critère pour chacun d’entre eux et ainsi trouver un contrôle optimal.
Concluons cette section en exhibant un contrôle optimal dans K pour le problème (3.5).
Nous montrerons ultérieurement, grâce aux résultats abstraits de la section suivante, l’unicité
du contrôle optimal pour le problème (3.5). Cela nous permettra alors d’affirmer que nous
avons trouvé le contrôle optimal pour le problème (3.5). On considère la matrice GT ∈ Rd×d
définie en (1.17), i.e.,
Z T
†
GT = e(T −s)A BB † e(T −s)A ds. (3.6)
0
28
3.2 Minimisation de fonctionnelles
Comme le système de contrôle linéaire (3.1) est contrôlable par hypothèse, la matrice GT est
inversible (cf. le lemme 1.13). On pose
†
u(s) = B † e(T −s)A y, y = G−1
T (x1 − e
TA
x0 ). (3.7)
Lemme 3.1 (Synthèse d’un contrôle optimal). Le contrôle u défini par (3.7) est solution
de (3.5).
Démonstration. Nous devons vérifier que u ∈ K et que J(u) ≤ J(u) pour tout u ∈ K.
(1) On a bien u ∈ U = L2 ([0,T ]; Rk ) et en utilisant la formule de Duhamel, il vient
Z T
TA
xu (T ) = e x0 + e(T −s)A Bu(s) ds = eT A x0 + GT y = x1 . (3.8)
0
Ceci montre que u ∈ K.
(2) Soit u ∈ K, i.e., u ∈ L2 ([0,T ]; Rk ) et xu (T ) = x1 . En posant δ = u − u, on constate par
linéarité
R T (T −s)Aque le contrôle δ amène la condition initiale 0 à la cible 0 en temps T , i.e., on a
0
e Bδ(s) ds = 0. En développant, il vient
Z T
J(u) = J(u + δ) = |u(s) + δ(s)|2Rk ds
0
Z T
= J(u) + 2 δ(s)† u(s) ds + J(δ)
0
Z T
†
= J(u) + 2 δ(s)† (B † e(T −s)A y) ds + J(δ)
0
Z T
= J(u) + 2 (e(T −s)A Bδ(s))† y ds + J(δ)
0
Z T †
(T −s)A
= J(u) + 2 e Bδ(s) ds y + J(δ) = J(u) + J(δ) ≥ J(u),
0
29
Chapitre 3. Optimisation dans les espaces de Hilbert
Soit K un sous-ensemble convexe fermé non-vide d’un espace de Hilbert V . Pour tout
v ∈ V , on cherche le point de K le plus proche de v. Ce point (nous verrons qu’il est unique)
est appelé la projection de v sur K et est noté ΠK (v). Le problème de la projection d’un
point sur un convexe rentre dans le cadre du problème (3.9) en introduisant la fonctionnelle
J(w) = kv − wkV .
30
3.2 Minimisation de fonctionnelles
Corollaire 3.4 (Séparation d’un point et d’un convexe par un hyperplan). Soit K un sous-
ensemble convexe fermé non-vide d’un espace de Hilbert V . Soit v ∈ V tel que v 6∈ K. Alors,
il existe un hyperplan affine H = {w ∈ V | L(w) = α} où L ∈ V 0 et α ∈ R séparant v de K,
i.e., tel que
L(v) > α, K ⊂ {w ∈ V | L(w) ≤ α}. (3.14)
(ii) On dit que J est strictement convexe sur K si l’inégalité (3.15) est stricte pour tout
u 6= v et tout θ ∈ ]0, 1[.
(iii) On dit que J est fortement convexe ou α-convexe sur K s’il existe un réel α > 0 tel
que
u+v J(u) + J(v) α
J ≤ − ku − vk2V , ∀u, v ∈ K. (3.16)
2 2 8
Lorsque la fonctionnelle J est également continue, on a plus généralement
α
J(θu + (1 − θ)v) ≤ θJ(u) + (1 − θ)J(v) − θ(1 − θ)ku − vk2V , ∀u, v ∈ K, ∀θ ∈ [0, 1]. (3.17)
2
Bien entendu, on a les implications suivantes :
31
Chapitre 3. Optimisation dans les espaces de Hilbert
Démonstration. (1) Preuve de (3.19). Comme J est convexe et continue, son épigraphe, qui
est défini comme l’ensemble
Comme λ peut être arbitrairement grand au membre de droite, on doit avoir β ≥ 0 ; de plus,
en prenant v = v0 , on voit que β 6= 0. D’où β > 0. En prenant λ = J(v), on en déduit que
α 1
J(v) = λ > − L(v).
β β
(2) Preuve de (3.20). Soit v ∈ K arbitraire et soit u ∈ K fixé. En appliquant (3.16) puis (3.19),
on voit que
J(v) + J(u) v+u α
≥J + kv − uk2V
2 2 8
L(v) + L(u) α
≥ + δ + kv − uk2V .
2 8
On en déduit que
α
J(v) ≥ kvk2V + c1 kvkV + c2 ,
4
avec c1 = − α2 kukV −kLkV 0 et c2 = −J(u)+L(u)+2δ+ α4 kuk2V . Comme c1 kvkV ≥ − α8 kvk2V − α2 c21 ,
on obtient la minoration (3.20) avec γ = α8 et δ 0 = c2 − α2 c21 .
Démonstration. Comme J est infinie à l’infini, toute suite minimisante (vn )n∈N est bornée. Du
théorème 2.23, on déduit qu’à une sous-suite près, cette suite converge faiblement vers une
limite v ∈ V , et grâce au théorème 2.24, on montre que v ∈ K. Comme l’épigraphe de J
(cf. (3.21)) est un ensemble convexe fermé, il est fermé pour la topologie faible et on conclut
que J(v) ≤ inf w∈K J(w), ce qui prouve l’existence du minimiseur de J sur K.
32
3.2 Minimisation de fonctionnelles
33
Chapitre 3. Optimisation dans les espaces de Hilbert
Démonstration. (i) ⇒ (ii). Pour tout entier k ∈ N, en posant θk = 2−k , on montre par
récurrence sur k à partir de (3.16) que pour tout u, v ∈ K, on a
α
J((1 − θk )u + θk v) ≤ (1 − θk )J(u) + θk J(v) − θk (1 − θk )ku − vk2V ,
2
et en ré-arrangeant les différents termes, il vient
1 α
J(u + θk (v − u)) − J(u) ≤ J(v) − J(u) − (1 − θk )ku − vk2V .
θk 2
Pour s ≤ t, il vient ψ 0 (t) − ψ 0 (s) ≥ α(t − s)ku − vk2V . Soit θ ∈ [0, 1]. En intégrant cette inégalité
pour (t, s) ∈ [θ, 1] × [0, θ], on obtient
α
θψ(1) + (1 − θ)ψ(0) − ψ(θ) ≥ θ(1 − θ)ku − vk2V ,
2
∇J(v) = 0 (∈ V ). (3.23)
Cette condition, appelée équation d’Euler, signifie que si v ∈ V est solution de (3.10), alors v
vérifie (3.23).
(ii) Si la fonctionnelle J est convexe, la condition (3.23) est également suffisante ; ceci
signifie que si v ∈ V vérifie (3.23), alors v est solution de (3.10).
34
3.2 Minimisation de fonctionnelles
35
Chapitre 3. Optimisation dans les espaces de Hilbert
L’espace V est bien un espace de Hilbert. La fonctionnelle J est fortement convexe sur V de
paramètre α = 2 (utiliser la formule de la médiane). Enfin, K est un sous-ensemble convexe
fermé non-vide de V . En effet,
— K est non-vide car nous avons supposé que le système de contrôle linéaire est contrôlable ;
— K est convexe car pour deux contrôles u1 , u2 ∈ K et pour tout θ ∈ [0, 1], on a
Z T
e(T −s)A B(θu1 (s)+(1−θ)u2 (s)) ds = θ x1 −eT A x0 +(1−θ) x1 −eT A x0 = x1 −eT A x0 ;
0
— enfin, si (un )n∈N est une suite de K qui converge vers u dans V , on a
Z T Z T
(T −s)A
TA
x1 − e x0 = e Bun (s) ds → e(T −s)A Bu(s) ds,
0 0
On a donc (u, h)V ≥ 0 pour tout h ∈ H et comme H est un sous-espace vectoriel, on peut
considérer les vecteurs h et −h dans l’inégalité ci-dessus, ce qui montre que u ∈ H ⊥ . Soit
†
(ei )1≤i≤d une base cartésienne de Rd . Posons yi (t) = B † e(T −t)A ei ; on a yi ∈ V pour tout
i ∈ {1, . . . , d} et par définition H = (vect(yi )1≤i≤d )⊥ . Par suite, u ∈ vect(yi )1≤i≤d (qui est de
dimension finie donc fermé) ; en d’autres termes, il existe un vecteur y ∈ Rd tel que
†
u(t) = B † e(T −t)A y, ∀t ∈ [0,T ]. (3.28)
Finalement, le vecteur y ∈ Rd s’obtient en imposant que xu (T ) = x1 , et par la formule de
Duhamel, on retrouve bien l’expression donnée dans l’équation (3.7).
36
3.3 Exemple : temps-optimalité (cas linéaire)
37
Chapitre 3. Optimisation dans les espaces de Hilbert
Remarque 3.15. [Convexité] L’argument de convexité est essentiel dans la preuve ci-dessus.
On pourra s’en persuader en considérant les ensembles B(t) = {v ∈ V | 1 − t ≤ kvkV ≤ 2}
pour tout t ∈ [0, 1]. L’ensemble B(t) est fermé non-vide mais il n’est pas convexe pour t < 1 ;
de plus, B(t) varie continûment en temps. Or, le point v = 0 appartient à B(1) mais pas à
B(s) pour tout s < 1 ; or, v = 0 est situé à l’intérieur de B(1).
Un raisonnement identique à celui de la preuve du lemme 3.14 s’applique pour tout t ∈
[0,t∗ ] : si x∗ (t) est la trajectoire associée à un contrôle temps-minimal, on a
x∗ (t) ∈ ∂A(t, x0 ), ∀t ∈ [0,t∗ ]. (3.33)
Une illustration est présentée à la figure 3.1.
A(t∗, x0)
A(t, x0)
x0
x1
38
3.3 Exemple : temps-optimalité (cas linéaire)
A(T, x0)
xu(T )
y − xu(T ) pT
En introduisant l’état adjoint tel que ṗ(t) = −A† p(t), pour tout t ∈ [0,T ] et p(T ) = pT ,
l’inégalité ci-dessus se récrit
Z T Z T
†
p(t) B û(t) dt ≥ p(t)† Bu(t) dt.
0 0
On peut alors raisonner par l’absurde. Supposons que p(t)† Bu(t) > minv∈U p(t)† Bv sur un
sous-ensemble de [0,T ] de mesure strictement positive. Ceci implique que
Z T Z T
†
p(t) Bu(t) dt > min p(t)† Bv dt.
0 0 v∈U
39
Chapitre 3. Optimisation dans les espaces de Hilbert
Si xu (t) ∈ Å(t, x0 ), il existerait > 0 tel que xu (t) − p(t) ∈ A(t, x0 ) ; d’où
La fonction
t 7→ p(t)† B ∈ R
est la fonction de commutation, et les temps tc où le contrôle u change de valeur sont
appelés les temps de commutation. Ces temps de commutation correspondent aux zéros
de la fonction de commutation. On montre (voir par exemple la proposition 3.4 dans [11])
que dans le cas d’un système de contrôle linéaire autonome dont les matrices A et B vérifient
la condition de Kalman et si toutes les valeurs propres de A sont réelles, alors tout contrôle
extrémal a au plus (d − 1) commutations.
Exemple 3.21. [Contrôle d’un tram] Reprenons l’exemple 1.11 du tram. On rappelle que
le tram est repéré par sa position x(t) le long d’un axe unidirectionnel et qu’on contrôle
son accélération par le biais du contrôle u(t). En considérant une masse unité, l’équation du
mouvement est donc
ẍ(t) = u(t), ∀t ∈ [0,T ].
40
3.3 Exemple : temps-optimalité (cas linéaire)
On part d’une condition initiale (x0 , v0 )† ∈ R2 et on souhaite atteindre la cible (0, 0)† en temps
minimal. En appliquant le théorème 3.17, on introduit l’état adjoint p(t) = (px (t), pv (t))† tel
que ṗ(t) = −A† p(t). Il vient ṗx (t) = 0, ṗv (t) = −px (t), i.e.,
px (t) = px0 , pv (t) = pv0 − px0 t.
La condition de minimalité (3.35) s’écrit
u(t) = − signe(p(t)† B) = − signe(pv (t)).
Comme la fonction pv est affine en t, cela nous permet déjà de montrer qu’il y a au plus une
commutation et que le contrôle temps-optimal est nécessairement bang-bang. Pour aller plus
loin, on calcule les trajectoires dans l’espace des phases (i.e., dans le plan (x, v)).
— Si le contrôle est constant et égal à 1, on a x(t) − 12 v(t)2 = cste (car dtd (x(t) − 21 v(t)2 ) =
ẋ(t) − v(t)v̇(t) = v(t) − v(t)u(t) = 0) ; les trajectoires sont donc des paraboles d’axe
Ox, parcourues dans le sens des v croissants.
— Si le contrôle est constant et égal à −1, on a x(t) + 12 v(t)2 = cste ; les trajectoires sont
donc des paraboles d’axe −Ox, parcourues dans le sens des v décroissants.
Ces paraboles sont illustrées à la figure 3.3. Les deux demi-paraboles en rouge sur la figure 3.3
v
u = −1
11
00
00
11
00
11
u = −1
x
u=1
u=1
Figure 3.3 – Temps-optimalité pour l’arrêt d’un tram : trajectoires et courbe de commutation.
forment la courbe de commutation, et le point vert indique la commutation sur chaque tra-
jectoire. On notera que le contrôle optimal s’écrit comme un feedback en fonction de l’état
puisque l’on a
— u = 1 si X est au-dessous de la courbe de commutation (dans ce cas, il faut accélérer)
— u = −1 si X est au-dessus de cette courbe (dans ce cas, il faut décélérer).
L’obtention d’un contrôle optimal sous forme de feedback est très intéressant en pratique.
41
Chapitre 3. Optimisation dans les espaces de Hilbert
42
Chapitre 4
V = L2 ([0,T ]; Rk ). (4.2)
43
Chapitre 4. Le système linéaire-quadratique (LQ)
où exu = xu − ξ et où ξ ∈ C 0 ([0,T ]; Rd ) est une trajectoire cible donnée. On s’intéresse donc
au problème suivant :
Chercher u ∈ V tel que J(u) = inf J(u). (4.4)
u∈V
d×d
Dans la définition du critère J, les matrices Q, D ∈ R sont symétriques semi-définies po-
k×k
sitives, tandis que la matrice R ∈ R est symétrique définie positive. La définie positivité
de la matrice R jouera un rôle clé pour assurer l’existence et l’unicité du contrôle optimal
minimisant J sur L2 ([0,T ]; Rk ). On notera que le critère J résulte d’une pondération au sens
des moindres carrés entre l’atteinte de la trajectoire cible décrite par la fonction ξ et le fait
que le contrôle ne soit pas “trop grand” dans L2 ([0,T ]; Rk ). En revanche, on ne s’impose pas
ici d’atteindre exactement la cible au temps final T (ni à aucun temps intermédiaire). Une
illustration générale du problème de contrôle optimal LQ est présentée à la figure 4.1.
ξ(0)
x(t) x(T )
x0 ξ(T )
ξ(t)
44
4.2 Différentielle du critère : état adjoint
ce qui prouve la forte convexité de la fonctionnelle JR sur V avec paramètre α = λmin (R).
De plus, la fonctionnelle JR est clairement continue en u. Par ailleurs, la fonctionnelle JQD
est convexe sur V comme composée d’une application convexe par une application affine. En
effet,
Rt
— comme xu (t) = etA x0 + 0 e(t−s)A (Bu(s) + f (s)) ds, l’application qui à u ∈ L2 ([0,T ]; Rk )
associe exu = xu − ξ ∈ C 0 ([0,T ]; Rd ) est affine ;
— comme les matrices Q et D sont symétriques semi-définies positives, on montre facile-
1 T
ment que l’application qui à y ∈ C ([0,T ]; R ) associe 2 0 y(t)† Qy(t) dt+ 12 y(T )† Dy(T ) ∈
0 d
R
où l’état adjoint p ∈ C 1 ([0,T ]; Rd ) est l’unique solution de l’équation différentielle rétrograde
en temps
ṗ(t) = −A† p(t) − Qexu (t), ∀t ∈ [0,T ], p(T ) = Dexu (T ). (4.8)
45
Chapitre 4. Le système linéaire-quadratique (LQ)
46
4.2 Différentielle du critère : état adjoint
dp
(t) = −A† p(t) − Qex (t), ∀t ∈ [0,T ], p(T ) = Dex (T ), (4.10)
dt
où ex = x − ξ et où x = xu est la trajectoire associée au contrôle optimal u, i.e.,
dx
(t) = Ax(t) + Bu(t) + f (t), ∀t ∈ [0,T ], x(0) = x0 . (4.11)
dt
Le triplet (x, p, u) satisfaisant les conditions ci-dessus est appelé une extrémale.
Démonstration. Il suffit de combiner la proposition 3.10 avec le lemme 4.4, le caractère suffisant
de la condition (4.9) résultant de la convexité de la fonctionnelle J.
Remarque 4.6. [État adjoint] Attention, il n’y a pas de condition initiale sur p, mais une
condition finale en T . Par ailleurs, dans la littérature, la convention est parfois de définir l’état
adjoint comme un vecteur ligne pb := p† . Dans ce cas, le système différentiel rétrograde s’écrit
d
dt
p(t)A − ex (t)† Q, pour tout t ∈ [0,T ], et pb(T ) = ex (T )† D. Enfin, le contrôle optimal
pb(t) = −b
est u(t) = −R−1 B † pb(t)† .
Remarque 4.7. [Régularité] On notera que si (x, p, u) est une extrémale, on a p ∈ C 1 ([0,T ]; Rd )
et par conséquent u ∈ C 1 ([0,T ]; Rk ). Il n’y a pas ici de phénomène de commutation pour le
contrôle optimal.
Remarque 4.8. [Unicité de l’extrémale] Même si on sait déjà qu’on a unicité du contrôle
optimal u, donc de la trajectoire optimale x et de la trajectoire adjointe p, il est instructif de
montrer directement l’unicité de l’extrémale. Par linéarité (considérer la différence entre deux
extrémales), il suffit de montrer que dans le cas sans dérive et avec cible nulle, une extrémale
est nécessairement nulle. Considérons donc une extrémale (x, p, u) telle que
dx
(t) = Ax(t) + Bu(t), x(0) = 0,
dt
dp
(t) = −A† p(t) − Qx(t), p(T ) = Dx(T ),
dt
u(t) = −R−1 B † p(t).
47
Chapitre 4. Le système linéaire-quadratique (LQ)
Comme les matrices D et Q sont positives et que la matrice R est définie positive, on en déduit
que B † p(t) = 0 sur [0,T ]. Donc, u(t) = 0, ce qui implique que x(t) = 0, et ce qui implique
enfin que p(t) = 0.
Exemple 4.9. [Mouvement d’un point matériel] On considère un point matériel qui peut
se déplacer sur une droite et dont on contrôle la vitesse (cf. l’exemple 1.22). Le système de
contrôle linéaire s’écrit, avec d = k = 1,
1 T 1 T
Z Z
2
J(u) = xu (t) dt + u(t)2 dt,
2 0 2 0
qui réalise une pondération au sens des moindres carrés entre l’atteinte de la cible nulle sur
[0,T ] et le fait que le contrôle ne soit pas trop grand dans L2 ([0,T ]; R). Ce problème rentre
dans le cadre du système LQ introduit à la section 4.1 en posant
A = 0, B = 1, R = 1, Q = 1, D = 0, ξ ≡ 0.
u(t) = −p(t),
si bien que
48
4.3 Principe du minimum : Hamiltonien
x0
x0 tanh(T ) x0/ cosh(T )
t
T
−x0 tanh(T )
Figure 4.2 – Illustration de l’extrémale obtenue à l’exemple 4.9 (mouvement d’un point
matériel) : trajectoire x(t), état adjoint p(t), contrôle optimal u(t) ; la cible ξ(t) est identique-
ment nulle.
On notera que l’état adjoint initial est, à ce stade, encore inconnu. Afin de le déterminer, on
utilise la condition en t = T sur l’état adjoint, à savoir p(T ) = 0. On obtient facilement que
p(0) = x0 tanh(T ). En conclusion, l’extrémale s’écrit
1
x(t) = x0 cosh(T )
cosh(T − t),
1
p(t) = x0 cosh(T )
sinh(T − t),
1
u(t) = −p(t) = −x0 cosh(T )
sinh(T − t).
Cette extrémale est illustrée à la figure 4.2.
49
Chapitre 4. Le système linéaire-quadratique (LQ)
On considère maintenant l’extrémale (x, p, u) obtenue au théorème 4.5. Pour tout t ∈ [0,T ],
on évalue H et ses dérivées partielles en (t, x(t), p(t), u(t)). On constate d’une part que
dx
(t) = Ax(t) + Bu(t) + f (t) = ∇p H(t, x(t), p(t), u(t)), (4.14a)
dt
dp
(t) = −A† p(t) − Q(x(t) − ξ(t)) = −∇x H(t, x(t), p(t), u(t)), (4.14b)
dt
et d’autre part que
∇u H(t, x(t), p(t), u(t)) = 0. (4.15)
Comme la fonction v 7→ H(t, x, p, v) est fortement convexe en v ∈ Rk pour tout triplet (t, x, p)
fixé dans [0,T ] × Rd × Rd , l’équation (4.15) ne signifie rien d’autre que
Proposition 4.11 (PMP pour le système LQ). Le contrôle u ∈ V est optimal pour le problème
LQ si et seulement si on a
avec
dx
(t) = ∇p H(t, x(t), p(t), u(t)) = Ax(t) + Bu(t), x(0) = x0 , (4.18a)
dt
dp
(t) = −∇x H(t, x(t), p(t), u(t)) = −A† p(t) − Qex (t), p(T ) = Dex (T ), (4.18b)
dt
où ex (t) = x(t) − ξ(t).
b := −H et aboutir à un
Remarque 4.12. [Convention de signe] On aurait pu définir H
principe du maximum pour H.
b
Dans le cas particulier avec dérive et cible nulles, i.e., lorsque f ≡ 0 et ξ ≡ 0 sur [0,T ], le
Hamiltonien H ne dépend pas du temps, i.e., on a
∂H
(t, x, p, u) = 0. (4.19)
∂t
On dit que le Hamiltonien est autonome.
50
4.4 Équation de Riccati : feedback
A = 0, B = 1, R = 1, Q = 1, D = 0, ξ ≡ 0.
51
Chapitre 4. Le système linéaire-quadratique (LQ)
Théorème 4.15 (Équation de Riccati). On suppose que dérive et cible sont nulles. Il existe
une unique matrice P ∈ C 1 ([0,T ]; Rd×d ) solution de l’équation de Riccati
et on a
p(t) = P (t)x(t), ∀t ∈ [0,T ], (4.21)
si bien que le contrôle optimal s’écrit sous forme de boucle fermée :
De plus, la matrice P (t) est symétrique semi-définie positive, et définie positive si la matrice
D est définie positive. Enfin, la valeur optimale du critère est J(u) = 12 x†0 P (0)x0 .
Démonstration. (1) Dépendance linéaire. Le problème LQ étant bien posé, on sait qu’il existe
un unique couple (x, p) ∈ C 1 ([0,T ]; Rd × Rd ) tel que
dx
(t) = Ax(t) − BR−1 Bp(t), x(0) = x0 ,
dt
dp
(t) = −A† p(t) − Qx(t), p(T ) = Dx(T ).
dt
Par linéarité, le couple (x, p) dépend linéairement de la condition initiale x0 ∈ Rd . Il existe
donc des matrices X , P dans C 1 ([0,T ]; Rd×d ) telles que
et on a X (0) = Id .
(2) Inversibilité de X (t). Nous allons montrer que la matrice X (t) est inversible pour tout
t ∈ [0,T ]. Pour ce faire, on raisonne par l’absurde. Soit s ∈ [0,T ] et 0 6= x0 ∈ Rd tels que
x(s) = X (s)x0 = 0. On a nécessairement s > 0 car X (0) = Id . De plus, on a vu que
d
p(t)† x(t) = −x(t)† Qx(t) − (B † p(t))† R−1 B † p(t).
dt
En intégrant de s à T , et comme x(s) = 0, il vient
Z T
† † † † −1 †
0 = (Dx(T )) x(T ) + x(t) Qx(t) + (B p(t)) R B p(t) dt ≥ 0.
s
On a donc dx dt
(t) = Ax(t) et x(s) = 0 ; d’où x(t) = 0 sur [s, T ]. De même, comme on a
dp †
dt
(t) = −A p(t) et p(T ) = Dx(T ) = 0, il vient p(t) = 0 sur [s, T ]. On en déduit que (x, p)
vérifie un système différentiel linéaire avec conditions finales x(T ) = p(T ) = 0. Ceci implique
52
4.4 Équation de Riccati : feedback
53
Chapitre 4. Le système linéaire-quadratique (LQ)
On note R(t) = e(T −t)A la résolvante associée à ce système différentiel (telle que R(T ) = I2d ).
On pose
R1 (t) R2 (t)
R(t) = ∈ R(2d)×(2d) ,
R3 (t) R4 (t)
où les quatre blocs sont à valeurs dans Rd×d . On a x(t) = R1 (t)x(T ) + R2 (t)p(T ) et p(t) =
R3 (t)x(T ) + R4 (t)p(T ). Or p(T ) = Dx(T ), si bien qu’en posant XT (t) = R1 (t) + R2 (t)D et
PT (t) = R3 (t) + R4 (t)D, il vient x(t) = XT (t)x(T ) et p(t) = PT (t)x(T ). En conclusion, la
matrice P (t) solution de l’équation de Riccati s’obtient également à partir de la résolvante du
système linéaire de taille 2d ci-dessus en posant
Cette expression est intéressante en pratique car elle évite de devoir résoudre un système
différentiel non-linéaire.
Exemple 4.17. [Mouvement d’un point matériel] On reprend l’exemple 4.9 du mouvement
d’un point matériel le long d’une droite et dont on contrôle la vitesse, i.e., ẋu (t) = u(t), pour
RT
tout t ∈ [0,T ], et xu (0) = x0 . Le critère à minimiser est à nouveau J(u) = 21 0 xu (t)2 dt +
1 T
R
2 0
u(t)2 dt. Ce problème rentre dans le cadre du système LQ avec d = k = 1 et
A = 0, B = 1, R = 1, Q = 1, D = 0, ξ ≡ 0.
On obtient P (t) = tanh(T − t). Le contrôle optimal se met alors sous forme de boucle fermée
ce qui permet de retrouver l’expression ci-dessus liant u(t) à x(t). Enfin, la valeur optimale du
critère est J(u) = 21 x20 P (0) = 12 x20 tanh(T ).
54
Chapitre 5
Ce chapitre est consacré au problème de contrôle optimal pour des systèmes non-linéaires.
Le résultat phare est le principe du minimum de Pontryaguine (PMP) dont nous nous
contenterons de donner l’énoncé dans ce chapitre, une esquisse de preuve étant présentée
au chapitre suivant. Nous verrons que le PMP ne fournit que des conditions nécessaires
d’optimalité dont la formulation fait intervenir, comme pour le système LQ du chapitre
précédent, les notions d’état adjoint et de Hamiltonien. En revanche, le PMP ne dit rien
sur l’existence d’un contrôle optimal ni sur le caractère suffisant de ces conditions. L’intérêt
pratique du PMP est de nous permettre de faire un premier tri des contrôles candidats à
l’optimalité ; en espérant que les contrôles vérifiant les conditions nécessaires d’optimalité du
PMP ne sont pas trop nombreux, on pourra ensuite les examiner individuellement pour en
déterminer le caractère optimal ou non. Afin de nous familiariser avec l’emploi du PMP, nous
présentons dans ce chapitre deux exemples d’application : le système LQ avec des contraintes
sur le contrôle d’une part et un modèle non-linéaire de dynamique de populations d’autre part.
55
Chapitre 5. Principe du minimum de Pontryaguine (PMP)
Nous allons formuler quelques hypothèses (en général, raisonnables) sur les différents
ingrédients intervenant dans la formulation du problème de contrôle optimal (5.4), à savoir
la fonction f pour la dynamique et les fonctions g et h pour le critère. Commençons par les
hypothèses sur la dynamique. On suppose que
(a) f ∈ C 0 ([0,T ] × Rd × U ; Rd ) et f est de classe C 1 par rapport à x ;
(b) ∃C, |f (t, y, v)|Rd ≤ C(1 + |y|Rd + |v|Rk ), ∀t ∈ [0,T ], ∀y ∈ Rd , ∀v ∈ U ;
(c) Pour tout R > 0, ∃CR , | ∂f
∂x
(t, y, v)|Rd×d ≤ CR (1 + |v|Rd ), ∀t ∈ [0,T ], ∀y ∈ B(0, R), ∀v ∈ U .
Dans ces hypothèses, C et CR désignent des constantes génériques indépendantes de (t, y, v),
CR dépendant du rayon R de la boule fermée B(0, R) ; par la suite, nous utiliserons les symboles
C et CR avec la convention que les valeurs de C et de CR peuvent changer à chaque utilisation
tant qu’elles restent indépendantes du temps, de l’état du système et de la valeur du contrôle.
L’objectif des trois hypothèses ci-dessus est d’assurer, pour tout contrôle u ∈ U, l’existence et
l’unicité de la trajectoire associée xu ∈ AC([0,T ]; Rd ).
Lemme 5.1 (Existence et unicité des trajectoires). Dans le cadre des hypothèses (a), (b), (c)
ci-dessus, pour tout contrôle u ∈ U, il existe une unique trajectoire associée xu ∈ AC([0,T ]; Rd )
solution de (5.1).
Démonstration. Il s’agit d’une conséquence de la version locale du théorème de Cauchy–
Lipschitz avec une dynamique mesurable en temps uniquement (cf. le théorème 2.6). On
considère le système dynamique ẋ(t) = F (t, x(t)) avec la fonction F : [0,T ] × Rd → Rd
telle que F (t, x) = f (t, x, u(t)). La fonction F est mesurable en t, et elle est continue en x.
De plus, F est localement lipschitzienne par rapport à x puisque l’on a, pour tout t ∈ [0,T ] et
tout x1 , x2 ∈ B(0, R),
∂f
|F (t, x1 ) − F (t, x2 )|Rd ≤ C0 (t)|x1 − x2 |Rd , C0 (t) = sup ∂x
(t, y, u(t)) Rd×d .
y∈B(0,R)
Il reste enfin à s’assurer que la trajectoire maximale est bien définie sur tout l’intervalle [0,T ]
(i.e., qu’il n’y a pas eu d’explosion en un temps t∗ <R T ). Pour cela, on utilise le lemme de
t
Gronwall rappelé ci-dessous. Comme on a x(t) = x0 + 0 f (s, x(s), u(s)) ds, on peut appliquer
ce lemme avec z(t) = |x(t)|Rd et ψ(t) ≡ C. L’estimation (5.5) est satisfaite avec α = |x0 |Rd +
C(T + kukL1 ([0,T ];Rk ) ) grâce à l’hypothèse (b). On en déduit que la trajectoire reste bien bornée
sur [0,T ], i.e., il n’y a pas d’explosion.
56
5.2 PMP : énoncé et commentaires
Lemme 5.2 (Gronwall). Soit ψ, z : [0,T ] → R+ deux fonctions continues telles que
Z t
∃α ≥ 0, ∀t ∈ [0,T ], z(t) ≤ α + ψ(s)z(s) ds. (5.5)
0
Rt
ψ(s) ds
Alors, on a z(t) ≤ αe 0 pour tout t ∈ [0,T ].
Rt Rt
Démonstration. Posons Ψ(t) = 0 ψ(s) ds et considérons la fonction v(t) = e−Ψ(t) 0 ψ(s)z(s) ds.
En utilisant (5.5), on constate que
Z t
dv −Ψ(t)
(t) = −ψ(t)e ψ(s)z(s) ds + e−Ψ(t) ψ(t)z(t)
dt
0 Z t
−Ψ(t)
= ψ(t)e z(t) − ψ(s)z(s) ds ≤ αψ(t)e−Ψ(t) .
0
57
Chapitre 5. Principe du minimum de Pontryaguine (PMP)
On notera bien que dans cette écriture, (x, p, u) désigne un vecteur générique de Rd × Rd × U .
Lorsque l’application H ne dépend pas explicitement du temps, on dit que le Hamiltonien est
autonome.
Théorème 5.4 (PMP). Si u ∈ U est un contrôle optimal, i.e., si u est une solution de (5.4),
alors en notant x = xu ∈ AC([0,T ]; Rd ) la trajectoire associée au contrôle u et en définissant
l’état adjoint p ∈ AC([0,T ]; Rd ) solution de
dp ∂h
(t) = −A(t)† p(t) − b(t), ∀t ∈ [0,T ], p(T ) = (x(T )) ∈ Rd , (5.7)
dt ∂x
où pour tout t ∈ [0,T ],
∂f ∂g
A(t) = (t, x(t), u(t)) ∈ Rd×d , b(t) = (t, x(t), u(t)) ∈ Rd , (5.8)
∂x ∂x
on a, p.p. t ∈ [0,T ],
u(t) ∈ arg min H(t, x(t), p(t), v), (5.9)
v∈U
Remarque 5.5. [État adjoint] L’état adjoint p est solution d’un système linéaire (à (x, u)
fixés) instationnaire et rétrograde en temps. Ce système, ainsi que la condition finale sur p(T ),
sont bien définis grâce aux hypothèses (a) et (d) ci-dessus. De plus, ce système admet une
unique solution car la fonction b est bien intégrable en temps grâce à l’hypothèse (f) et la
fonction A est dans L1 ([0,T ]; Rd×d ) grâce à l’hypothèse (c).
Remarque 5.6. [Condition nécessaire] Dans le cas du système de contrôle non-linéaire (5.1)
avec la fonctionnelle J définie en (5.3), le PMP ne fournit qu’une condition nécessaire
d’optimalité. En revanche, le PMP ne dit rien sur l’existence d’un contrôle optimal, et il
ne fournit pas en général de condition suffisante (cf. toutefois la proposition 5.12 ci-dessous).
L’intérêt pratique du PMP est de restreindre le champ des possibles en vue de l’obtention
d’un contrôle optimal : on commence par considérer les extrémales et, en espérant qu’elles ne
sont pas trop nombreuses, on en fait ensuite le tri.
Remarque 5.7. [Amplitude de p] Si on multiplie les fonctions g et h par un facteur λ ∈ R+ ,
le nouveau critère à minimiser est Jλ = λJ, le nouvel état adjoint est pλ = λp, et le nouvel
Hamiltonien est Hλ = λH. Comme Hλ et H ont les mêmes minimiseurs, cela montre que
l’amplitude de p n’apporte pas d’information en vue de la résolution du problème de contrôle
optimal.
58
5.2 PMP : énoncé et commentaires
Remarque 5.8. [Hamiltonien autonome] Lorsque le Hamiltonien est autonome, i.e., que l’ap-
plication H ne dépend pas explicitement du temps, la condition (5.9) devient
u(t) ∈ arg min H(x(t), p(t), v).
v∈U
On observera que le contrôle optimal u dépend (en général) du temps car x(t) et p(t) dépendent
(en général) du temps.
Exemple 5.9. [Système LQ] Appliquons le théorème 5.4 au système LQ étudié au chapitre
précédent. Pour simplifier, on omet le terme de dérive. On a
f (t, x, u) = Ax + Bu, g(t, x, u) = 12 u† Ru + 12 ex (t)† Qex (t), h(x) = 12 ex (T )† Dex (T ),
où ex (t) = x − ξ(t) ; on rappelle que les matrices Q, D ∈ Rd×d sont symétriques semi-définies
positives, que la matrice R ∈ Rk×k est symétrique définie positive et que ξ ∈ C 0 ([0,T ]; Rd ) est
la trajectoire cible. Pour le système LQ, il n’y a pas de contraintes sur le contrôle, on a donc
U = Rk . Le Hamiltonien s’écrit
H(t, x, p, u) = p† (Ax + Bu) + 21 u† Ru + 12 ex (t)† Qex (t).
On a donc (noter l’unicité du minimiseur)
† 1 †
u(t) = arg min p Bv + v Rv ,
v∈Rk 2
ce qui équivaut à
u(t) = −R−1 B † p(t).
∂f ∂g ∂h
Comme ∂x
= A, ∂x
= Qex , ∂x
= Dex , l’équation (5.7) sur l’état adjoint devient
dp
(t) = −A† p(t) − Qex (t), ∀t ∈ [0,T ], p(T ) = Dex (T ),
dt
qui est bien l’équation différentielle rétrograde et la condition finale qui avaient été obtenues
au chapitre précédent pour l’état adjoint (cf. le théorème 4.5).
Exemple 5.10. [Non-existence de contrôle optimal] Donnons un exemple relativement simple
de non-existence de contrôle optimal. On considère le système de contrôle linéaire ẋu (t) = u(t)
avec xu (0) = x0 = 0 et T = 1. Le critère à minimiser est
Z 1 Z 1
2
J(u) = xu (t) dt + (u(t)2 − 1)2 dt, U = [−1,1].
0 0
Alors, on a inf u∈U J(u) = 0 et il n’existe pas de contrôle optimal. Pour le montrer, on considère
pour tout n ∈ N∗ la suite minimisante de contrôles
un (t) = (−1)k , k k+1
t ∈ [ 2n , 2n [, k ∈ {0, . . . , 2n − 1},
1
dont la trajectoire associée, xn , est en dents de scie et vérifie kxn kL∞ (0,1) ≤ 2n (cf. la figure 5.1).
1
On en déduit que J(un ) ≤ 4n2 . S’il existait u ∈ U tel que J(u) = 0, alors on aurait x(t) ≡ 0
et u(t) ∈ {−1, 1}, mais u(t) = dx dt
(t) = 0. La difficulté rencontrée dans cet exemple provient
de la non-convexité du critère.
59
Chapitre 5. Principe du minimum de Pontryaguine (PMP)
un(t)
xn(t)
Figure 5.1 – Illustration du (contre-)exemple 5.10 : contrôle issu d’une suite minimisante et
trajectoire associée.
On cherche donc à minimiser la distance de x(t) à l’ensemble {−1, 1} ; les contraintes sur u font
que x(t) ∈ [−1,1], ∀t ∈ [0,T ]. Il y a donc
R 1 2 deux2 contrôles optimaux, qui sont u± (t) ≡ ±1, pour
8
tout t ∈ [0,T ], et on a inf u∈U J(u) = 0 (t −1) dt = 15 . Or, si on considère le contrôle u(t) ≡ 0,
8
celui-ci vérifie les conditions du PMP mais ce n’est pas un contrôle optimal car J(0) = 1 > 15 .
2 2
En effet, on a f (t, x, u) = u, g(t, x, u) = (x − 1) , h = 0, la trajectoire associée est x(t) ≡ 0 et
l’état adjoint est p(t) ≡ 0. Le Hamiltonien à minimiser est H(t, x(t), p(t), v) = (x(t)2 −1)2 dont
un minimiseur est bien v = 0. La difficulté rencontrée dans cet exemple provient à nouveau
de la non-convexité du critère.
Concluons cette section par un résultat positif quant au caractère suffisant de la condition
d’optimalité du PMP.
Proposition 5.12 (Condition suffisante). Le PMP fournit une condition suffisante d’op-
timalité sous les hypothèses suivantes :
— f (t, x, u) = A(t)x + B(t)u avec A ∈ C 0 ([0,T ]; Rd×d ) et B ∈ C 0 ([0,T ]; Rd×k ) ;
— U = L2 ([0,T ]; U ) où U est un ensemble convexe fermé non-vide ;
— la fonction g est convexe et différentiable en (x, u) ∈ Rd × U ;
— la fonction h est convexe et différentiable en x ∈ Rd .
Démonstration. Nous nous contenterons d’esquisser la preuve. La fonctionnelle J est convexe
en u sur l’ensemble convexe K = L2 ([0,T ]; U ) (on travaille dans L2 afin de se placer dans le
cadre des espaces de Hilbert). De par la proposition 3.11, u est un contrôle optimal dans K si
et seulement si
(∇J(u), v − u)L2 ([0,T ];Rk ) ≥ 0, ∀v ∈ K.
Grâce à l’introduction de l’état adjoint p solution de (5.7), ceci se récrit
Z T
† ∂g †
p(t) B(v(t) − u(t)) + (t, x(t), u(t)) (v(t) − u(t)) dt ≥ 0, ∀v ∈ K.
0 ∂u
60
5.3 Application au système LQ avec contraintes
Cette inégalité, toujours grâce à la proposition 3.11, équivaut au fait que u soit minimiseur
sur K de la fonctionnelle
Z T
˜
J(u) = †
p(t) Bu(t) + g(t, x(t), u(t)) dt.
0
En raisonnant comme dans la preuve du théorème 3.17, on montre que cela équivaut au fait
que u(t) soit minimiseur instantané de v 7→ p(t)† Bv + g(t, x(t), v), ce qui n’est rien d’autre
que minimiser le Hamiltonien par rapport à v.
où exu = xu − ξ et ξ ∈ C 0 ([0,T ]; Rd ) est la trajectoire cible. Comme dans le chapitre 4, les
matrices Q, D ∈ Rd×d sont symétriques semi-définies positives, tandis que la matrice R ∈ Rk×k
est symétrique définie positive.
Lemme 5.13 (Existence et unicité). Il existe une unique solution au problème (5.12), i.e., la
fonctionnelle J définie par (5.13) admet un unique minimiseur sur le sous-ensemble K défini
par (5.11).
61
Chapitre 5. Principe du minimum de Pontryaguine (PMP)
Démonstration. Nous allons appliquer le théorème 3.8. D’une part, K est un sous-ensemble
convexe, fermé, non-vide de l’espace de Hilbert V = L2 ([0,T ]; Rk ). En effet,
— K est non-vide car le sous-ensemble U est non-vide (considérer un contrôle constant en
temps égal à un élément de U ) ;
— K est convexe car le sous-ensemble U est convexe (pour tout u1 , u2 ∈ K et θ ∈ [0, 1], on a
θu1 (t)+(1−θ)u2 (t) ∈ U p.p. t ∈ [0,T ] car U est convexe, si bien que θu1 +(1−θ)u2 ∈ K) ;
— enfin, K est fermé dans V car si (un )n∈N est une suite de K convergeant vers u dans V ,
comme la convergence dans L2 ([0,T ]; Rk ) implique la convergence p.p. (à une sous-suite
près) et que le sous-ensemble U est fermé, on en déduit que u(t) ∈ U p.p. t ∈ [0,T ],
i.e., u ∈ K.
D’autre part, la fonctionnelle J est fortement convexe et continue (elle est même différentiable)
sur V (cf. les lemmes 4.2 et 4.4).
Dans la suite de cette section, on notera u ∈ K = L2 ([0,T ]; U ) l’unique contrôle optimal
solution de (5.12) et x = xu la trajectoire associée. Le système LQ avec contraintes rentre
dans le champ d’application du PMP. En procédant comme à l’exemple 5.9 (qui traitait le cas
sans contraintes), on introduit l’état adjoint p ∈ C 1 ([0,T ]; Rd ) tel que
dp
(t) = −A† p(t) − Qex (t), ∀t ∈ [0,T ], p(T ) = Dex (T ), (5.14)
dt
où ex (t) = x(t) − ξ(t) p.p. t ∈ [0,T ], et le Hamiltonien H : [0,T ] × Rd × Rd × Rk → R tel que
1 1
H(t, x, p, u) = p† (Ax + Bu) + u† Ru + (x − ξ(t))† Q(x − ξ(t)). (5.15)
2 2
En appliquant le PMP (cf. le théorème 5.4), on en déduit qu’une condition nécessaire d’opti-
malité est que, p.p. t ∈ [0,T ], u(t) est un minimiseur de H(t, x(t), p(t), v) sur U , i.e.,
Lorsque U = Rk , on retrouve bien le résultat du chapitre 4, à savoir u(t) = −R−1 B † p(t). Dans
le cas général pour le sous-ensemble U , on n’a pas forcément d’expression explicite de u(t) en
fonction de p(t) car celle-ci dépend de la forme du sous-ensemble U .
62
5.3 Application au système LQ avec contraintes
Proposition 5.14 (Condition nécessaire et suffisante). La condition (5.18) est une condition
nécessaire et suffisante d’optimalité pour le problème (5.12). En outre, cette condition
définit un unique contrôle optimal u ∈ K et celui-ci est une fonction lipschitzienne du temps.
Remarque 5.15. [Fonction lipschitzienne] Le fait que le contrôle optimal u ∈ K soit une
fonction lipschitzienne du temps montre que pour le système LQ avec contraintes, il n’y a pas
de phénomènes de type bang-bang pour le contrôle optimal.
(Ru + B † p, v − u)V ≥ 0, ∀v ∈ K,
où la fonctionnelle
Z T
† † 1 †
Jp : V → R, Jp (v) = v(t) B p(t) + v(t) Rv(t) dt
0 2
est quadratique, différentiable et fortement convexe sur V . On pose pour tout t ∈ [0,T ],
† † 1 †
u] (t) = arg min v B p(t) + v Rv .
v∈U 2
(2) Montrons que la fonction u] (t) ainsi définie est lipschitzienne en t sur [0,T ]. Soit t1 , t2 ∈
[0,T ]. On a
63
Chapitre 5. Principe du minimum de Pontryaguine (PMP)
|u] (t2 ) − u] (t1 )|Rk = |δu] |Rk ≤ λmin (R)−1 kB † kRk×d |p(t2 ) − p(t1 )|Rd ,
où λmin (R) > 0 désigne la plus petite valeur propre de la matrice R. Comme la fonction
t 7→ p(t) est de classe C 1 en t, cela montre que la fonction t 7→ u] (t) est lipschitzienne en t.
(3) En conclusion, la fonction u] : [0,T ] → Rk est mesurable (car lipschitzienne), de carré
sommable et à valeurs dans U . On a donc u] ∈ K. De plus, comme u(t) ∈ U p.p. t ∈ [0,T ],
l’inégalité suivante est satisfaite p.p. t ∈ [0,T ] :
1 1
u(t)† B † p(t) + u(t)† Ru(t) ≥ u] (t)† B † p(t) + u] (t)† Ru] (t).
2 2
En intégrant cette inégalité de 0 à T , il vient
Jp (u) ≥ Jp (u] ).
Les paramètres du modèle α, β, γ sont des réels strictement positifs et on suppose que α > β.
On suppose également que a(0) > 0 ; comme ȧ(t) = ϕ(u(t))a(t), on a a(t) > 0 pour tout
t ∈ [0,T ]. On notera également que
— si u est constant égal à 1, on a ȧ(t) = −βa(t) < 0 : la population d’abeilles décroı̂t
(exponentiellement) ;
— si u est constant égal à 0, on a ȧ(t) = (α − β)a(t) > 0 : la population d’abeilles croı̂t
(exponentiellement).
64
5.4 Exemple non-linéaire : ruche d’abeilles
Notre objectif ici est de chercher un contrôle optimal afin de maximiser la population de reines
au temps T . En introduisant la fonctionnelle J : U = L1 ([0,T ]; U ) → R telle que
dp
a (t) = −ϕ(u(t))pa (t) − γu(t)pr (t),
dt ∀t ∈ [0,T ], (5.24)
dp
r (t) = 0,
dt
et la condition finale sur l’état adjoint est
On a donc
dpa
(t) = −ϕ(u(t))pa (t) + γu(t), pr (t) ≡ −1, ∀t ∈ [0,T ]. (5.26)
dt
Par ailleurs, le Hamiltonien est autonome (cf. la définition 5.3) et s’écrit sous la forme
La condition de minimisation (5.9) s’écrit, en utilisant le fait que a(t) 6= 0 pour tout t ∈ [0,T ],
La solution du problème de minimisation (5.28) est élémentaire ; on obtient, pour tout t ∈ [0,T ],
— si ψ(t) > 0, u(t) = 0 ;
— si ψ(t) = 0, u(t) ∈ [0, 1] ;
65
Chapitre 5. Principe du minimum de Pontryaguine (PMP)
La fonction pa est donnée par l’expression ci-dessus tant que le contrôle optimal u reste égal à
1. Pour que la valeur du contrôle change, la fonction de commutation (qui est continue) doit
s’annuler, i.e., pa (t∗ ) = − αγ . En utilisant l’expression de pa , on obtient
1 β
t∗ = ln(1 − ) + T. (5.31)
β α
On notera que t∗ < T . Deux cas peuvent alors se produire en fonction des paramètres du
problème.
— Cas 1. t∗ < 0 (ce qui correspond au cas d’un horizon temporel T petit) ; le contrôle
optimal est alors u ≡ 1 sur [0,T ], ce qui signifie que l’on fournit des reines en continu
depuis t = 0 jusqu’à t = T ;
— Cas 2. t∗ > 0 (ce qui correspond au cas d’un horizon temporel T relativement grand) ;
le contrôle optimal est u ≡ 0 sur [0, t∗ [ et u ≡ 1 sur ]t∗ , T ]. En effet, le contrôle u vérifie
bien le PMP car dpdta (t) = (β − α)pa (t), pa (t∗ ) = − αγ , d’où pa (t) = − αγ e(β−α)(t−t∗ ) < − αγ
sur [0, t∗ ], si bien que la fonction de commutation est positive, ce qui correspond bien
à u(t) = 0. L’ensemble {t ∈ [0,T ] | ψ(t) = 0} est réduit au singleton {t∗ } et est donc
de mesure nulle.
Une illustration de la trajectoire, de l’état adjoint et du contrôle optimal est présentée à la
figure 5.2 dans le cas où il y a une commutation.
66
5.4 Exemple non-linéaire : ruche d’abeilles
a
u
r
t∗ t
pa
Figure 5.2 – Trajectoire, état adjoint et contrôle optimal pour le modèle de ruche.
67
Chapitre 5. Principe du minimum de Pontryaguine (PMP)
68
Chapitre 6
On rappelle les hypothèses qui avaient été introduites afin de garantir l’existence et l’unicité
d’une trajectoire xu pour un contrôle donné u ∈ U (cf. en particulier le lemme 5.1) et le fait
que la fonctionnelle J(u) est bien définie :
69
Chapitre 6. PMP : preuve, extensions, application
Théorème 6.1 (PMP). Si u ∈ U est un contrôle optimal, i.e., si u est une solution de (6.4),
alors, en notant x = xu ∈ AC([0,T ]; Rd ) la trajectoire associée à u, et en définissant l’état
adjoint p ∈ AC([0,T ]; Rd ) solution de
dp ∂h
(t) = −A(t)† p(t) − b(t), ∀t ∈ [0,T ], p(T ) = (x(T )), (6.5)
dt ∂x
avec A(t) = ∂f ∂x
∂g
(t, x(t), u(t)) ∈ Rd×d et b(t) = ∂x (t, x(t), u(t)) ∈ Rd pour tout t ∈ [0,T ], on a,
p.p. t ∈ [0,T ],
u(t) ∈ arg min H(t, x(t), p(t), v), (6.6)
v∈U
On rappelle enfin qu’un triplet (x, p, u) satisfaisant les conditions ci-dessus est appelé une
extrémale et que le PMP ne fournit qu’une condition nécessaire d’optimalité ; en re-
vanche, il ne dit rien sur l’existence d’un contrôle optimal et il ne fournit pas a priori de
condition suffisante.
Démonstration. Nous allons nous contenter de donner une esquisse de la preuve, en insistant
sur les idées principales sans nécessairement fournir tous les détails techniques pour certains
résultats intermédiaires. Ce qui compte ici est donc davantage l’esprit de la démonstration que
sa lettre.
(1) L’idée fondamentale est de tester l’optimalité de J(u) en faisant des variations aiguille :
il s’agit de perturbations de u d’ordre un( !) mais sur un intervalle de temps de longueur très
petite δ 1. Soit t ∈ [0,T [ et δ ∈ ]0,T − t[, avec δ 1. La perturbation reste donc petite
70
6.1 PMP : esquisse de preuve
v xδ (t + δ) xδ
u
x(t) x
x(t + δ)
Iδ Iδ+ T Iδ Iδ+ T
Figure 6.1 – Principe de la variation aiguille pour le contrôle optimal u (à gauche), trajectoire
optimale et trajectoire perturbée (à droite).
On suppose dans la suite de la preuve que t est un point de Lebesgue ; le résultat ci-dessus
justifie donc que l’on considère bien tous les instants t ∈ [0,T ] à un sous-ensemble de mesure
nulle près.
(2) Comparaison des trajectoires. Comme xδ (t) = x(t) et xδ (s) = x(s) + O(δ) pour tout
s ∈ Iδ , on peut invoquer la continuité de f en (t, x) et la propriété des points de Lebesgue afin
d’obtenir les estimations suivantes :
Z
xδ (t + δ) = x(t) + f (s, xδ (s), v) ds = x(t) + δf (t, x(t), v) + o(δ),
Iδ
Z
x(t + δ) = x(t) + f (s, x(s), u(s)) ds = x(t) + δf (t, x(t), u(t)) + o(δ),
Iδ
si bien que
xδ (t + δ) − x(t + δ) = δ(f (t, x(t), v) − f (t, x(t), u(t))) + o(δ).
Une illustration est présentée à la figure 6.1. On va maintenant comparer xδ (s) et x(s) pour
tout s ∈ Iδ+ = [t + δ,T ]. Il est clair que xδ (s) − x(s) = O(δ) pour tout s ∈ Iδ+ , et on cherche à
préciser la différence à l’ordre un en δ. On introduit la solution yδ ∈ AC(Iδ+ ; Rd ) de l’équation
différentielle
ẏδ (s) = A(s)yδ (s), ∀s ∈ Iδ+ , yδ (t + δ) = f (t, x(t), v) − f (t, x(t), u(t)),
71
Chapitre 6. PMP : preuve, extensions, application
∂f
où on rappelle que A(s) = ∂x
(s, x(s), u(s)). On en déduit que
xδ (s) − x(s) = δyδ (s) + Φδ (s), ∀s ∈ Iδ+ , Φδ = o(δ) unif. sur Iδ+ .
En effet, on a vu que Φδ (t + δ) = o(δ) et Φ̇δ (s) = Ψδ (s) + A(s)Φδ (s), pour tout s ∈ Iδ+ , où
Ψδ (s) = o(s) uniformément sur Iδ+ , car
Ψδ (s) = f (s, xδ (s), u(s)) − f (s, x(s), u(s)) − A(s)(xδ (s) − x(s)).
En conclusion de cette première étape de la preuve, on a donc
xδ (s) − x(s) = δyδ (s) + o(δ) unif. sur Iδ+ .
(3) Comparaison des critères. Grâce à la comparaison des trajectoires, à la continuité de g en
(t, x) et à la propriété des points de Lebesgue, il vient
Z T
J(uδ ) − J(u) = g(s, xδ (s), uδ (s)) − g(s, x(s), u(s)) ds + h(xδ (T )) − h(x(T ))
Zt Z
= g(s, xδ (s), v) − g(s, x(s), u(s)) ds + g(s, xδ (s), u(s)) − g(s, x(s), u(s)) ds
Iδ Iδ+
∂h
+δ (x(T ))† yδ (T ) + o(δ)
∂x
Z T
= δ(g(t, x(t), v) − g(t, x(t), u(t))) + δ b(s)† yδ (s) ds
t+δ
∂h
+ δ (x(T ))† yδ (T ) + o(δ),
∂x
∂g
où on rappelle que b(s) = ∂x
(s, x(s), u(s)).
L’optimalité de u implique donc que
Z T
∂h
0 ≤ g(t, x(t), v) − g(t, x(t), u(t)) + b(s)† yδ (s) ds + (x(T ))† yδ (T ) + o(1).
t+δ ∂x
(4) Introduction de l’état adjoint et conclusion. L’état adjoint p, qui est par définition tel que
dp
dt
(s) = −A(s)† p(s) − b(s) sur [0,T ] et p(T ) = ∂h ∂x
(x(T )), nous permet d’éliminer la fonction
yδ . En effet, il vient
Z T Z T †
† ∂h † dp
b(s) yδ (s) ds + (x(T )) yδ (T ) = − (s) − A(s) p(s) yδ (s) ds + p(T )† yδ (T )
†
t+δ ∂x t+δ dt
Z T
dp
= − (s)† yδ (s) ds + p(T )† yδ (T )
t+δ dt
= p(t + δ)† yδ (t + δ)
= p(t + δ)† (f (t, x(t), v) − f (t, x(t), u(t))).
En faisant tendre δ ↓ 0, il vient par continuité de p,
0 ≤ g(t, x(t), v) − g(t, x(t), u(t)) + p(t)† (f (t, x(t), v) − f (t, x(t), u(t))),
72
6.2 Extensions du PMP : atteinte de cible
xu (T ) ∈ M, (6.8)
où M est une variété différentielle de classe C 1 de dimension 0 ≤ d0 ≤ d. Le cas d’une cible
ponctuelle correspond à M = {x1 } avec x1 ∈ Rd (et d0 = 0), et l’absence de contrainte de
cible (ou contrainte de cible triviale) correspond au cas où M = Rd (et d0 = d). L’ensemble
des contrôles admissibles devient
UM = {u ∈ L1 ([0,T ]; U ) | xu (T ) ∈ M }, (6.9)
et où le couple (p, λ) ∈ AC([0,T ]; Rd ) × R+ est tel que (p, λ) 6= (0, 0) et l’état adjoint p vérifie
dp
(t) = −A(t)† p(t) − λb(t), ∀t ∈ [0,T ], (6.13)
dt
73
Chapitre 6. PMP : preuve, extensions, application
Tx 1 M
Figure 6.2 – Variété M (homéomorphe à une sphère), point x1 ∈ M et espace tangent Tx1 M .
où A(t) = ∂f
∂x
∂g
(t, x(t), u(t)) ∈ Rd×d et b(t) = ∂x (t, x(t), u(t)) ∈ Rd . Enfin, on a la condition
de transversalité sur l’état adjoint au temps final
∂h
p(T ) − λ (x(T )) ⊥ Tx(T ) M. (6.14)
∂x
Un quadruplet (x, p, λ, u) satisfaisant les conditions ci-dessus est appelé une extrémale.
Remarque 6.4. [Extrêmales normales et anormales] Comme (p, λ) 6= (0, 0), deux cas peuvent
se produire :
— λ 6= 0 : le PMP étant invariant par un facteur d’échelle positif sur (p, λ), on peut
supposer que λ = 1 ; on dit que l’extrémale est normale ;
— λ = 0 : on a nécessairement p 6≡ 0 ; on dit que l’extrémale est anormale.
Lorsque M = Rd (pas de contrainte de cible), toute extrémale est normale. En effet, la condi-
tion de transversalité devient p(T ) = λ ∂h
∂x
(x(T )) car Tx(T ) M = Rd ; si λ = 0, on a p(T ) = 0
et la dynamique de p implique que p ≡ 0, ce qui est exclu. On a donc bien λ 6= 0 dans le cas
où M = Rd . En revanche, lorsque la variété M est de dimension d0 < d, il peut y avoir des
extrémales anormales.
Remarque 6.5. [Méthode de pénalisation] On peut remplacer la contrainte de cible par une
pénalisation dans le critère, ce qui conduit au problème (noter que ce problème est à nouveau
posé sur U et non plus sur UM comme (6.10))
74
6.2 Extensions du PMP : atteinte de cible
quand → 0+ , l’extrémale du système pénalisé tend vers une extrémale normale du système
contraint. En revanche, si |p |Rd → +∞ quand → 0+ , on obtient une extrémale anormale.
On pourra consulter la section 4.6 de [8] pour approfondir ces aspects.
Remarque 6.6. [Cas où T n’est pas fixé] Lorsque l’horizon temporel T pour rejoindre la cible
M n’est pas fixé a priori, on montre (voir à nouveau [7]) qu’on a également une condition
de transversalité sur le Hamiltonien au temps final T , qui s’écrit
min H(T, x(T ), p(T ), λ, v) = 0. (6.15)
v∈U
75
Chapitre 6. PMP : preuve, extensions, application
c(y) u `
(0, 0) x
76
6.3 Application : problème de Zermelo
c(y(t2))
c(y(t1))
−v
et on rajoute la contrainte de cible y(T ) = `. Le temps final0 est libre. Commençons par†
0 c0 (y(t))
considérer l’état adjoint. Comme A(t) = 0 0 et b(t) = ( 0 ), l’état adjoint p = (px , py )
satisfait
dpy
px = cste, (t) = −c0 (y(t))px , (6.18)
dt
et la condition de transversalité sur l’état adjoint s’écrit
px − λ 1
⊥ =⇒ px = λ. (6.19)
py (T ) 0
Montrons qu’il n’y a pas d’extrémale anormale. On raisonne par l’absurde en supposant
que λ = 0. Dans ce cas, on a px = λ = 0, ce qui implique que py est constant. En utilisant
la condition de transversalité sur H, on voit que py s’annule au temps final (sinon, le Ha-
miltonien minimisé au temps final vaudrait −|py (T )|v = 0, ce qui serait une contradiction).
Par conséquent, py serait également nul à tout temps, ce qui est exclu car (p, λ) 6= ((0, 0)† , 0).
L’extrémale étant normale, nous pouvons supposer que px = λ = 1. Par conséquent, on a
toujours p 6= (0, 0)† , si bien que le contrôle optimal est bien donné par l’équation (6.18).
77
Chapitre 6. PMP : preuve, extensions, application
c(y)
(0, 0) x
Figure 6.5 – Illustration de l’ensemble atteignable pour le problème de Zermelo sous hy-
pothèse de courant fort.
px (T ) = 0 =⇒ px ≡ 0, (6.27)
π
u(t) = . (6.30)
2
On retrouve un conseil (relativement) bien connu : “ne jamais naviguer contre le courant si
on veut atteindre la rive opposée le plus vite possible.”
On suppose que la cible a pour coordonnées (x1 , `)† où x1 est situé en aval du point de déport
minimal. On a g = 1 et h = 0 comme dans le cas précédent. Les équations d’évolution de l’état
adjoint restent inchangées, mais la condition de transversalité sur l’état adjoint devient triviale.
Le Hamiltonien est H(X, p, λ, u) = (px cos(u) + py sin(u))v + px c(y) + λ, et le Hamiltonien
minimisé est
H(t) = −|p(t)|v + px c(y(t)) + λ ≡ 0, ∀t ∈ [0,T ]. (6.31)
79
Chapitre 6. PMP : preuve, extensions, application
Remarque 6.9. [Méthodes directes] On peut aussi chercher un contrôle optimal en utilisant
une méthode directe qui n’invoque pas le PMP. Dans ce cas, on considère directement le
problème de contrôle optimal. On se ramène en dimension finie en discrétisant en temps la
dynamique (en utilisant un schéma d’Euler par exemple) et on considère par exemple des
contrôles constants par morceaux. On obtient ainsi un problème d’optimisation non-linéaire
sous contraintes en dimension finie, que l’on peut résoudre de plusieurs façons (par exemple,
en utilisant les techniques de Sequential Quadratic Programming). Les méthodes directes sont
de mise en œuvre simple ; en revanche, elles sont souvent peu précises et deviennent très chères
si d est grand. Enfin, on observera qu’on peut utiliser une méthode directe pour initialiser une
méthode de tir.
80
Chapitre 7
Ce chapitre introduit un nouveau point de vue pour la résolution des problèmes de contrôle
optimal. Pour simplifier, nous considérons des problèmes de contrôle optimal en temps dis-
cret ; nous reviendrons aux problèmes en temps continu au chapitre suivant. L’idée clé de ce
chapitre est de plonger le problème de contrôle optimal dans une famille de problèmes de
contrôle optimal paramétrés par une paire (x, tn ) représentant un état générique du système
x ∈ Rd à un instant discret tn ∈ {t0 = 0, . . . , tN = T }. On cherche alors pour chaque paire
(x, tn ), la fonction valeur définie comme la valeur minimale du critère pour le problème de
contrôle optimal défini à partir de tn en prenant x comme état du système. C’est à première
vue étonnant puisqu’on a maintenant à résoudre une famille de problèmes de contrôle opti-
mal au lieu d’un seul (même si souvent on considère de toutes façons plusieurs conditions
initiales...). Le point remarquable est que la famille de fonctions valeur est solution d’une
équation de récurrence rétrograde, appelée équation de programmation dynamique. De
plus, la résolution rétrograde de cette équation, du temps final au temps initial, nous four-
nit à chaque instant discret un contrôle optimal comme un feedback sur l’état du système.
Nous pouvons alors revenir au problème de contrôle optimal de départ qui était posé avec
une certaine condition initiale x0 ∈ Rd au temps t0 = 0, et en avançant du temps initial
au temps final, nous pouvons déterminer les contrôles optimaux à tous les instants discrets
ainsi que la trajectoire optimale associée. L’idée à la base de la programmation dynamique est
plus générale que le cadre des problèmes de contrôle optimal. Nous en donnerons un exemple
d’application en optimisation combinatoire.
81
Chapitre 7. Programmation dynamique en temps discret
familles discrètes
où Fm : Rd ×U → Rd , pour tout m ∈ {0:N −1}, et x ∈ Rd est la condition initiale. Étant donnée
la condition initiale x, la connaissance des contrôles (um )m∈{0:N −1} détermine par récurrence
les états successifs (xm )m∈{1:N } en utilisant (7.3). Au premier abord, il peut paraı̂tre surpre-
nant de noter x la condition initiale ; c’est en fait tout à fait naturel dans le contexte de la
programmation dynamique où une des idées clés est de considérer une famille de problèmes
de contrôle optimal paramétrés par la condition initiale.
Afin de définir un critère d’optimalité en temps discret, on se donne une famille de fonctions
(Gm )m∈{0:N −1} avec Gm : Rd × U → R, et une fonction h : Rd → R. Le critère à minimiser
J0 : Rd × U N → R est tel que
X
J0 (x; u0 , · · · , uN −1 ) = Gm (xm , um ) + h(xN ). (7.4)
m∈{0:N −1}
Remarque 7.1. [Lien avec le contrôle optimal en temps continu] Pour le problème de contrôle
optimal en temps continu, on rappelle que l’on a
Z T
ẋu (t) = f (t, xu (t), u(t)), J(u) = g(t, xu (t), u(t)) dt + h(xu (T )).
0
Le lien avec l’approche en temps discret se fait en considérant les approximations temporelles
xm ≈ xu (tm ), um ≈ u(tm ), le schéma d’Euler explicite pour la dynamique (avec un pas de
temps ∆tm = tm+1 − tm ) sous la forme
Z tm+1
xu (tm+1 ) = xu (tm ) + f (t, xu (t), u(t)) dt = xu (tm ) + ∆tm f (tm , xu (tm ), u(tm )) + o(∆t),
tm
82
7.2 Fonction valeur et programmation dynamique
ce qui conduit à
Gm (y, v) = ∆tm g(tm , y, v), ∀(y, v) ∈ Rd × U,
tandis que la fonction h est la même que dans le cas continu.
Définition 7.2 (Fonction valeur). La fonction valeur pour la dynamique discrète (7.7) et le
critère (7.8) est l’application Vn : Rd → R telle que, pour tout n ∈ {0:N −1},
qui se résout par récurrence rétrograde en n à partir de la condition finale VN (x) = h(x) pour
tout x ∈ Rd .
83
Chapitre 7. Programmation dynamique en temps discret
Remarque 7.4. [En pratique] Les problèmes de minimisation (7.10) sont bien posés si, par
exemple, U est un ensemble compact, les fonctions Fn et Gn sont continues sur Rd × U et
la fonction h est continue sur Rd . Les fonctions valeur Vn sont alors continues sur Rd . La
résolution des problèmes de minimisation (7.10) fournit de manière rétrograde les fonctions
ũN −1 (x), · · · , ũ0 (x) comme des feedbacks sur l’état x, i.e., comme des fonctions ũn : Rd → Rk
telles que
ũn (x) ∈ arg min Gn (x, v) + Vn+1 (Fn (x, v)) .
v∈U
Une fois qu’on a déterminé tous ces feedbacks en remontant jusqu’à la fonction valeur V0 , on
est en mesure de déterminer la trajectoire optimale et les contrôles optimaux en repartant
de n = 0 : il suffit en effet de poser u0 = ũ0 (x0 ), puis x1 = F0 (x0 , u0 ) et u1 = ũ1 (x1 ), puis
x2 = F1 (x1 , u1 ) et u2 = ũ2 (x2 ) et ainsi de suite.
Démonstration. Pour n = N − 1, comme xN −1 = x et xN = FN −1 (x, uN −1 ), il vient
n o
VN −1 (x) = inf GN −1 (x, uN −1 ) + h(xN )
uN −1 ∈U
n o
= inf GN −1 (x, uN −1 ) + VN (xN )
uN −1 ∈U
n o
= inf GN −1 (x, uN −1 ) + VN (FN −1 (x, uN −1 )
uN −1 ∈U
n o
= inf GN −1 (x, v) + VN (FN −1 (x, v)) .
v∈U
Pour n < N − 1, on a
Vn (x) = inf Jn (x; un , · · · , uN −1 )
(un ,··· ,uN −1 )∈U N −n
n X o
= inf inf Gm (xm , um ) + h(xN )
un ∈U (un+1 ,··· ,uN −1 )∈U N −n−1
m∈{n:N −1}
n n X oo
= inf Gn (x, un ) + inf Gm (xm , um ) + h(xN )
un ∈U (un+1 ,··· ,uN −1 )∈U N −n−1
m∈{n+1:N −1}
n o
= inf Gn (x, un ) + Vn+1 (xn+1 )
un ∈U
n o
= inf Gn (x, un ) + Vn+1 (Fn (x, un ))
un ∈U
n o
= inf Gn (x, u) + Vn+1 (Fn (x, u)) ,
u∈U
ce qui complète la preuve. On notera que l’argument essentiel est que le critère est additif le
long des trajectoires.
84
7.3 Application : système LQ en temps discret
qui est bien de la forme (7.3) avec F (y, v) = Ay + Bv. Le critère à minimiser s’écrit sous la
forme X n1 1 o 1
J0 (x; u0 , · · · , uN −1 ) = u†m Rum + x†m Qxm + x†N DxN , (7.12)
2 2 2
m∈{0:N −1}
où la matrice R ∈ Rk×k est symétrique définie positive et les matrices Q, D ∈ Rd×d sont
symétriques semi-définies positives. Le critère J0 est bien de la forme (7.4) avec G(y, v) =
1 †
2
v Rv + 12 y † Qy et h(y) = 12 y † Dy. Pour simplifier, on considère un état cible nul et il n’y a pas
de contraintes sur le contrôle si bien que U = Rk .
En appliquant la proposition 7.3, l’équation de programmation dynamique s’écrit
n1 1 o
Vn (x) = inf u† Ru + x† Qx + Vn+1 (Ax + Bu) , (7.13)
u∈Rk 2 2
avec la condition finale VN (x) = 21 x† Dx pour tout x ∈ Rd .
Lemme 7.5 (Résolution de l’équation de programmation dynamique). Les fonctions valeur
(Vn )n∈{0:N } de l’équation de programmation dynamique (7.13) sont telles que
1
Vn (x) = x† Pn x, ∀x ∈ Rd , (7.14)
2
où les matrices (Pn )n∈{0:N } sont symétriques semi-définies positives et données par la formule
de récurrence rétrograde suivante :
†
PN = D, Pn = A† Pn+1 A − En+1 (Fn+1 )−1 En+1 + Q, ∀n ∈ {0:N −1}, (7.15)
85
Chapitre 7. Programmation dynamique en temps discret
d’où l’expression de Pn en ré-arrangeant les termes. Cette expression montre que la matrice
Pn est symétrique. De plus, la fonction valeur Vn vérifie Vn (x) ≥ 0 pour tout x ∈ Rd car
Jn (x; un , · · · , uN ) ≥ 0. Ceci montre que la matrice Pn est bien semi-définie positive.
On considère les instants discrets 0 = t0 < t1 < · · · < tN = T et on considère les approxi-
mations temporelles xm ≈ x(tm ) et um ≈ u(tm ) pour tout m ∈ {0:N }. On suppose pour
simplifier que le pas de temps ∆t est constant. On considère un schéma d’Euler explicite pour
la dynamique, ce qui donne
A = I + ∆tA, B = ∆tB. (7.18)
et la formule des rectangles pour évaluer le critère, ce qui donne
On rappelle que pour le système LQ en temps continu, l’état adjoint est donné par la
formule p(t) = P (t)x(t) où P ∈ C 1 ([0,T ]; Rd×d ) est solution de l’équation de Riccati (qui est
rétrograde en temps)
Soit maintenant une fonction P∆t ∈ C 1 ([0,T ]; Rd×d ) telle que P∆t (tn ) = Pn , pour tout n ∈
{0:N }. La forme précise de la dépendance temporelle de P∆t n’est pas importante tant que P∆t
vérifie la propriété d’interpolation ci-dessus. En particulier, en tN = T , on a P∆t (T ) = PN = D.
De plus, en effectuant des développements de Taylor en temps, il vient
A† Pn+1 A = P∆t (tn ) + ∆t(A† P∆t (tn ) + P∆t (tn )A + Ṗ∆t (tn )) + o(∆t), (7.21a)
En+1 = B † Pn+1 A = ∆tB † P∆t (tn ) + o(∆t), (7.21b)
Fn+1 = R + B † Pn+1 B = ∆tR + o(∆t). (7.21c)
†
Comme Pn = A† Pn+1 A − En+1 (Fn+1 )−1 En+1 + Q, on obtient, en simplifiant par P∆t (tn ) et en
divisant par ∆t, que
Ṗ∆t (tn ) = −A† P∆t (tn ) − P∆t (tn )A + P∆t (tn )BR−1 B † P∆t (tn ) − Q + o(1), (7.22)
qui est, à o(1) près, l’équation de Riccati pour le problème en temps continu à l’instant tn .
86
7.3 Application : système LQ en temps discret
87
Chapitre 7. Programmation dynamique en temps discret
Ce problème pourrait se résoudre en considérant les 2N possibilités d’affection des objets, mais
ce n’est pas réaliste si N 1. La programmation dynamique permet de résoudre ce problème
bien plus efficacement sous l’hypothèse (raisonnable) que Q et les encombrements en sont des
entiers.
L’état du sac à dos est décrit par un entier q ∈ {0:Q} quantifiant sa capacité. On considère
la fonction valeur Vn : {0:Q} → R, où Vn (q) est la valeur optimale d’un sac à dos de capacité
q pour les objets énumérés de n à N . Pour n = N (seul l’objet d’indice N est considéré), on a
( (
vN , si eN ≤ q, 1, si eN ≤ q,
VN (q) = ũN (q) =
0, sinon, 0, sinon.
Noter que le contrôle optimal est obtenu comme un feedback par rapport à l’état q. On stocke
la fonction valeur et le contrôle optimal dans des tableaux à (Q + 1) lignes et N colonnes. Afin
d’illustrer notre propos, considérons un exemple numérique avec Q = 6, N = 3, les valeurs
(3, 3, 5) pour les trois objets, et les encombrements (3, 3, 4). On obtient alors les tableaux
88
7.4 Optimisation combinatoire
suivants :
Vn (q) 1 2 3 ũn (q) 1 2 3
6 5 6 1
5 5 5 1
4 5 4 1
3 0 3 0
2 0 2 0
1 0 1 0
0 0 0 0
L’équation de programmation dynamique s’écrit
Vn (q) = max uvn + Vn+1 (q − uen ) . (7.33)
u∈{0,1}
q≥uen
Si en > q, la seule possibilité est u = 0 si bien que Vn (q) = Vn+1 (q), alors que si en ≤ q, il vient
Vn (q) = max Vn+1 (q), vn + Vn+1 (q − en ) . (7.34)
89
Chapitre 7. Programmation dynamique en temps discret
90
Chapitre 8
Équation de Hamilton–Jacobi–Bellman
(HJB)
où l’état du système est décrit par la fonction xu : [0,T ] → Rd qui dépend du contrôle
u : [0,T ] → U . L’ensemble des contrôles admissibles est le sous-ensemble
91
Chapitre 8. Équation de Hamilton–Jacobi–Bellman (HJB)
condition est imposée en t = 0. Le problème de contrôle optimal que l’on considère est le
suivant :
Chercher u ∈ U tel que J(0, x0 ; u) = inf J(0, x0 ; u). (8.4)
u∈U
Comme dans le chapitre précédent, on plonge le problème de minimisation (8.4) dans une
famille de problèmes de contrôle optimal paramétrés par la paire (s, ξ) où s ∈ [0,T ] et ξ ∈ Rd .
Ces paramètres nous indiquent que le problème de contrôle optimal paramétré par (s, ξ) est
posé sur l’intervalle Is = [s,T ] avec la condition initiale x(s) = ξ. En résumé, on considère
donc la famille de systèmes de contrôle non-linéaires et de critères
où la fonction h : R → R est supposée paire, régulière et telle que h0 (x) < 0 si x > 0 (par
2
exemple, on pourra considérer la fonction h(x) = e−x sur R). Le problème de contrôle optimal
ci-dessus se résout directement ; on constate en effet que
92
8.1 Fonction valeur
V (T, ξ)
V (s, ξ)
93
Chapitre 8. Équation de Hamilton–Jacobi–Bellman (HJB)
Théorème 8.4 (Équation HJB). En tout point (s, ξ) ∈ [0,T [ × Rd où la fonction valeur est
différentiable, elle satisfait l’équation HJB
∂V ∂V
(s, ξ) + H[ s, ξ, (s, ξ) = 0, (8.10)
∂s ∂ξ
et elle vérifie en outre la condition à l’instant final
Exemple 8.5. Dans l’exemple considéré à la remarque 8.2, on a H(x, p, u) = pu et U = [−1, 1],
si bien que le Hamiltonien minimisé vaut H[ (x, p) = −|p|. On avait vu que la fonction valeur
est égale à V (s, ξ) = h(T − s − |ξ|). On vérifie facilement qu’en tout (s, ξ) où la fonction V
est régulière (i.e., si ξ 6= 0), elle satisfait l’équation HJB ∂V
∂s
− | ∂V
∂ξ
| = 0.
Démonstration. La preuve repose sur le principe d’optimalité de Bellman (cf. le théorème 8.3).
Pour simplifier, on se restreint au cas où le sous-ensemble U est borné. Soit (s, ξ) ∈ [0,T [×Rd un
point où la fonction valeur est différentiable. On applique le principe d’optimalité de Bellman
avec s0 = s + δ et 0 < δ < T − s. On obtient ainsi
Z
V (s, ξ) = inf g(t, xu (t), u(t)) dt + V (s + δ, xu (s + δ)) .
u∈Uss+δ Iss+δ
94
8.1 Fonction valeur
Cela repose sur l’observation élémentaire que l’on a inf u∈Uss+δ 1δ Iss+δ Φ(u(t)) dt = inf v∈U Φ(v)
R
Remarque 8.6. [Unicité de la solution régulière] On peut montrer que si une fonction W
suffisamment régulière (à savoir, W ∈ C 0 ([0,T ] × Rd ) ∩ C 1 ([0,T [ × Rd )) satisfait l’équation
HJB (8.10) et la condition en temps final (8.11) et si le sous-ensemble U est borné, alors on
a W ≡ V . En d’autres termes, l’équation HJB a au plus une solution régulière. Ce résultat
d’unicité s’étend au cas où le sous-ensemble U est non-borné sous hypothèse de décroissance
de W quand |ξ| → +∞ uniformément en t (voir par exemple la preuve du théorème 5.2 dans
la référence [8]). Le lecteur désireux d’en savoir plus sur l’équation HJB pourra également
consulter le livre [2].
Proposition 8.7 (Synthèse d’un feedback optimal). On suppose que la fonction valeur V est
suffisamment régulière, i.e.,
On suppose que pour tout (s, ξ) ∈ [0,T ] × Rd , on peut trouver un feedback optimal
∂V
ũ(s, ξ) ∈ arg min H s, ξ, (s, ξ), v . (8.13)
v∈U ∂ξ
95
Chapitre 8. Équation de Hamilton–Jacobi–Bellman (HJB)
(L’existence d’un tel feedback optimal est assurée par les hypothèses sur f et g ; en général,
on n’a pas unicité, ni dépendance continue en (s, ξ).) On suppose enfin que l’on peut choisir
le feedback ũ(s, ξ) de sorte à ce que le système différentiel
dx
(t) = f (t, x(t), ũ(t, x(t))), ∀t ∈ [0,T ], x(0) = x0 , (8.14)
dt
admette une solution x ∈ AC([0,T ]; Rd ). Dans ces conditions,
96
8.2 Application au système LQ
Démonstration. Pour s < T , on a V (s, x(s)) = J(s, x(s); u|Is ) de par le principe d’optimalité
de Bellman. Pour tout ξ ∈ Rd , on a V (s, ξ) = inf u∈Us J(s, ξ; u) ≤ J(s, ξ; u|Is ). La fonction
ξ 7→ V (s, ξ) − J(s, ξ, u|Is ) est donc maximale en ξ = x(s). Par suite, on a
∂ ∂
V (s, x(s)) = J(s, x(s), u|Is ), ∀i ∈ {1:d}.
∂ξi ∂ξi
On vérifie aisément que
Z
∂ ∂g ∂h
J(s, x(s), u|Is ) = (t, x(t), u(t))† yi (t) dt + (x(T ))† yi (T ),
∂ξi Is ∂x ∂x
∂h ∂V
Enfin, en s = T , il vient p(T ) = ∂ξ
(x(T )) = ∂ξ
(T, x(T )) puique V (T, ξ) = h(ξ).
Le Hamiltonien est
1 1
H(x, p, u) = p† (Ax + Bu) + u† Ru + x† Qx, (8.18)
2 2
et le Hamiltonien minimisé est
1 1
H[ (x, p) = min H(x, p, u) = p† Ax − p† BR−1 B † p + x† Qx, (8.19)
u∈Rk 2 2
où P : [0,T ] → Rd×d est solution de l’équation de Riccati. En effet, en reportant l’expres-
sion (8.21) dans (8.20) et en utilisant la symétrie de P (s) pour tout s ∈ [0,T ], il vient
† 1 † 1 † −1 † 1
ξ Ṗ (s) + P (s) A − P (s) BR B P (s) + Q ξ = 0, (8.22)
2 2 2
ce qui implique que la partie symétrique de la matrice entre parenthèses est nulle, ce qui
n’est rien d’autre que l’équation de Riccati. On notera au passage que pour le système LQ, la
fonction V est régulière sur [0,T ] × Rd (on notera également l’unicité du contrôle optimal ).
Exemple 8.9. [Mouvement d’un point matériel] On considère le mouvement d’un point
matériel avec un critère quadratique :
Z T
1 1
ẋu (t) = u(t), x(s) = ξ, J(s, ξ; u) = (u(t)2 + xu (t)2 ) dt + xu (T )2 .
s 2 2
Le Hamiltonien est H(x, p, u) = pu + 12 (x2 + u2 ), et le Hamiltonien minimisé est H[ (x, p) =
1
2
(x2 − p2 ) avec ũ = −p comme unique minimiseur. On obtient l’équation HJB et la condition
finale 2
∂V 1 2 ∂V 1
+ ξ − = 0, V (T, ξ) = ξ 2 .
∂s 2 ∂ξ 2
1 0
En cherchant une solution de la forme V (s, ξ) = 2 µ(s)ξ , il vient µ (s) = µ(s)2 −1 et µ(T ) = 1,
2
98
Annexe A
Définition A.1 (Point d’équilibre). On dit que le vecteur x ∈ Rd est un point d’équilibre
de (A.1) si
f (x) = 0 (∈ Rd ). (A.2)
Définition A.2 (Stabilité des points d’équilibre). Soit x ∈ Rd un point d’équilibre de (A.1).
(i) On dit que le point d’équilibre x ∈ Rd est stable (on parle également de stabilité orbitale)
si
∃0 > 0, ∀ ∈ ]0, 0 ], ∃δ > 0, ∀x0 ∈ B(x, δ), x(t) ∈ B(x, ), ∀t ≥ 0, (A.3)
où B(x, δ) désigne la boule fermée de centre x et de rayon δ.
(ii) On dit que le point d’équilibre x ∈ Rd est localement asymptotiquement stable
(LAS) si il est stable et de plus
99
Annexe A. Stabilité des systèmes dynamiques
B(x, ) B(x, )
B(x, δ) B(x, δ)
x x
Figure A.1 – Point d’équilibre stable (à gauche) et point d’équilibre localement asymptoti-
quement stable (à droite).
La stabilité des points d’équilibre s’analyse très facilement dans le cas linéaire. Soit A ∈
Rd×d . On considère le système dynamique linéaire
Il est clair que x = 0 est point d’équilibre et que c’est le seul point d’équilibre si la matrice A
est inversible. L’étude de la stabilité du point d’équilibre x = 0 repose sur l’étude du spectre
de la matrice A que l’on note σ(A) ⊂ C. Pour une valeur propre λ ∈ σ(A), on désigne par
<(λ) sa partie réelle.
Lemme A.3 (Stabilité, cas linaire). On considère le point d’équilibre x = 0 ∈ Rd .
(i) Si <(λ) ≤ 0, ∀λ ∈ σ(A), et toutes les valeurs propres à partie réelle nulle sont simples,
alors x = 0 est un point d’équilibre stable.
(ii) Si <(λ) < 0, ∀λ ∈ σ(A) (on dit que la matrice A est Hurwitz), alors x = 0 est un point
d’équilibre GAS.
(iii) S’il existe une valeur propre λ ∈ σ(A) telle que <(λ) > 0, alors le point d’équilibre x = 0
est instable.
L’analyse de la stabilité des points d’équilibre dans le cas non-linéaire est plus délicate.
Une première analyse, locale, peut se faire par linéarisation.
Lemme A.4 (Stabilité locale, cas non-linéaire). Soit x ∈ Rd un point d’équilibre du système
dynamique (A.1). On introduit la matrice
∂f
A= (x) ∈ Rd×d . (A.7)
∂x
(i) Si la matrice A est Hurwitz, alors le point d’équilibre x est LAS.
(ii) S’il existe une valeur propre λ ∈ σ(A) telle que <(λ) > 0, alors le point d’équilibre x est
instable.
˙
Démonstration. Ces résultats se montrent en posant δx(t) = x(t) − x de sorte que δx(t) =
f (x + δx(t)) = Aδx(t) + o(δx).
100
A.2 Fonction de Lyapunov et principe d’invariance de LaSalle
Exemple A.5. [Pendule inversé] On considère un pendule inversé, i.e., avec la masse vers
le haut et la tige vers le bas. On considère pour simplifier une masse et une longueur unités
(m = 1, l = 1). On suppose que le pendule a un mouvement dans un plan et on repère
l’extrémité supérieure du pendule par son angle θ avec la verticale (dans le sens horaire). Le
système dynamique s’écrit
θ̈(t) = sin(θ(t)).
En posant x = (x1 , x2 )† = (θ, θ̇)† ∈ R2 , on obtient
x2
ẋ(t) = f (x(t)), f (x) = .
sin(x1 )
On constate que x = (0, 0)† est point d’équilibre. De plus, en évaluant la matrice
∂f 0 1
A= (x) = ,
∂x 1 0
on constate que σ(A) = {−1, 1}, si bien que ce point d’équilibre est instable.
Exemple A.6. [Oscillateur anharmonique amorti] Soit une fonction g ∈ C 1 (R; R) vérifiant
g(0) = 0, g 0 (0) > 0 et xg(x) > 0, pour tout x 6= 0. On s’intéresse au mouvement d’un point
matériel (de masse unité) sous le champ de force décrit par la fonction g et d’un terme d’amor-
tissement (dû par exemple au frottement). Ce mouvement est régi par le système différentiel
d’ordre deux en temps
ẍ(t) + η ẋ(t) + g(x(t)) = 0, ∀t ≥ 0,
où le paramètre réel η ≥ 0 quantifie le terme d’amortissement. En posant X(t) = (x(t), ẋ(t))† ,
on obtient
X2
Ẋ(t) = F (X(t)), F (X) = .
−ηX2 − g(X1 )
On constate que X = (0, 0)† est point d’équilibre. De plus, on obtient
∂F 0 1 ∂F 0 1
A= (X) = , A= (X) = .
∂X −g 0 (X1 ) −η ∂X −g 0 (0) −η
p
Si η < 2 g 0 (0), les 2 valeurs propres de A sont imaginaires pures et simples ; par conséquent,
p
X = (0, 0)† est point d’équilibre stable du système linéarisé. En revanche, si η ≥ 2 g 0 (0),
alors la matrice A est Hurwitz, et le point d’équilibre X = (0, 0)† est GAS pour le système
linéarisé et LAS pour le système non-linéaire.
101
Annexe A. Stabilité des systèmes dynamiques
Définition A.7 (Fonction de Lyapunov). On dit que la fonction V : Ω → R est une fonction
de Lyapunov en x sur Ω si (i) V est de classe C 1 sur Ω ; (ii) V (x) < V (x), pour tout
x ∈ Ω \ {x} ; (iii) on a
(∇V (x), f (x))Rd ≤ 0, ∀x ∈ Ω, (A.8)
où (·, ·)Rd désigne le produit scalaire usuel sur Rd . On a donc
d
V (x(t)) = (∇V (x(t)), f (x(t)))Rd ≤ 0, ∀t ≥ 0, (A.9)
dt
ce qui signifie que la fonction t 7→ V (x(t)) décroı̂t le long des trajectoires. Si l’inégalité (A.8)
est stricte sur Ω \ {x}, on dit que la fonction de Lyapunov est stricte. Enfin, on dit que la
fonction de Lyapunov est propre sur Ω si l’image réciproque de tout compact dans V (Ω) est
un compact. Une illustration est présentée à la figure A.2.
x0
x(t)
102
A.3 Stabilisation par retour d’état
est une fonction de Lyapunov en X = (0, 0)† sur R2 . En effet, on a V (X) ≥ 0 et V (X) = 0 si
et seulement si X = (0, 0) ; en outre,
X2
(∇V (X), F (X))R2 = (g(X1 ) X2 ) = −ηX22 ≤ 0.
−ηX2 − g(X1 )
On en déduit que le point d’équilibre X = (0, 0)† est stable. Comme la fonction de Lyapunov
n’est pas stricte, on ne peut, à ce stade, aller plus loin dans l’application du théorème de
Lyapunov A.8.
Le principe d’invariance de LaSalle est utile si on sait montrer que S = {x}, i.e., que
le sous-ensemble S est réduit au seul point d’équilibre x. Dans ce cas, on peut déduire du
théorème A.10 que le point d’équilibre x est GAS même si la fonction de Lyapunov n’est pas
stricte.
103
Annexe A. Stabilité des systèmes dynamiques
Définition A.12 (Boucle par retour d’état). On dit que le système de contrôle linéaire auto-
nome (A.12) est bouclé par retour d’état (on dit aussi bouclé par feedback) s’il existe
une matrice K ∈ Rk×d telle que
u(t) = Kx(t), ∀t ≥ 0. (A.13)
La matrice K est appelée matrice de feedback. Dans ces conditions, le système linéaire de
contrôle bouclé par retour d’état s’écrit
ẋ(t) = (A + BK)x(t), ∀t ≥ 0. (A.14)
Définition A.13 (Stabilisation asymptotique). On dit que le système de contrôle linéaire est
stabilisable asymptotiquement s’il existe une matrice de feedback K ∈ Rk×d telle que la
matrice A + BK soit Hurwitz, i.e.,
<(λ) < 0, ∀λ ∈ σ(A + BK). (A.15)
Lorsque le système de contrôle linéaire est stabilisable asymptotiquement, toute trajectoire
du système bouclé (A.14) tend vers le point d’équilibre x = 0, i.e., le point d’équilibre x = 0
est GAS pour le système bouclé.
Proposition A.14 (Contrôlabilité =⇒ Stabilisable asymptotiquement). Si le système de
contrôle linéaire (A.12) est contrôlable, il est stabilisable asymptotiquement.
Démonstration. La preuve de ce résultat repose sur un résultat d’algèbre linéaire, le théorème
de placement des pôles A.15, qui est rappelé ci-dessous (pour la preuve, on pourra se référer à
celle du théorème 13.34 dans [11]). Le système de contrôle linéaire (A.12) étant contrôlable, les
matrices A et B vérifient la condition de Kalman (1.16). Grâce au théorème A.15, on déduit
l’existence d’une matrice K ∈ Rk×d telle que le polynôme caractéristique de A + BK soit tel
que χA+BK (λ) = (λ + 1)d . Ceci montre que la matrice A + BK est Hurwitz. Par suite, le point
d’équilibre x = 0 est GAS pour le système bouclé.
Théorème A.15 (Placement des pôles). On note χM le polynôme caractéristique d’une ma-
trice carrée M , i.e., χM (λ) = det(λI − M ). Soit A ∈ Rd×d et B ∈ Rd×k . On suppose que les
matrices A et B vérifient la condition de Kalman (1.16). Alors, pour tout polynôme π unitaire
de degré d, il existe une matrice K ∈ Rk×d telle que
χA+BK (λ) = π(λ). (A.16)
On considère maintenant le système de contrôle non-linéaire autonome
ẋ(t) = f (x(t), u(t)), ∀t ≥ 0, x(0) = x0 , (A.17)
où la fonction f : Rd × Rk → R est de classe C 1 . On suppose que la paire (x, u) ∈ Rd × Rk
est telle que f (x, u) = 0. Ainsi, x est point d’équilibre pour le système dynamique ẋ(t) =
f (x(t), u). Le système dynamique linéarisé en ce point est ẏ(t) = Ay(t) + Bv(t) avec
∂f ∂f
A= (x, u), B= (x, u). (A.18)
∂x ∂u
104
A.3 Stabilisation par retour d’état
Corollaire A.16 (Système non-linéaire bouclé). On suppose que le système linéarisé est sta-
bilisable asymptotiquement par le feedback v(t) = Ky(t). Alors, le point d’équilibre (x, u) est
LAS pour le système non-linéaire bouclé
Exemple A.17. [Pendule inversé] On rappelle que la dynamique du pendule inversé est décrite
par l’équation différentielle d’ordre deux
Il vient
0 −1
C = (B, AB) = ,
−1 0
ce qui montre que la condition de Kalman est vérifiée, et donc la contrôlabilité locale du
système non-linéaire. On peut choisir la matrice de feedback K = (2 2), ce qui donne
0 1
A + BK = ,
−1 −2
et par suite χA+BK (λ) = (λ + 1)2 . La commande en boucle fermée s’écrit u(t) = 2(θ(t) +
θ̇(t)).
105
Annexe A. Stabilité des systèmes dynamiques
106
Bibliographie
[1] Jean-Pierre Aubin. Mathematical methods of game and economic theory, volume 7 of
Studies in Mathematics and its Applications. North-Holland Publishing Co., Amsterdam-
New York, 1979.
[2] Martino Bardi and Italo Capuzzo-Dolcetta. Optimal control and viscosity solutions of
Hamilton-Jacobi-Bellman equations. Systems & Control : Foundations & Applications.
Birkhäuser Boston, Inc., Boston, MA, 1997. With appendices by Maurizio Falcone and
Pierpaolo Soravia.
[3] H. Brezis. Functional analysis, Sobolev spaces and partial differential equations. Univer-
sitext. Springer, New York, 2011.
[4] R. Fletcher. Practical methods of optimization. Vol. 1. John Wiley & Sons, Ltd., Chi-
chester, 1980. Unconstrained optimization, A Wiley-Interscience Publication.
[5] Henry Hermes and Joseph P. LaSalle. Functional analysis and time optimal control.
Academic Press, New York-London, 1969. Mathematics in Science and Engineering, Vol.
56.
[6] Alberto Isidori. Nonlinear control systems. Communications and Control Engineering
Series. Springer-Verlag, Berlin, third edition, 1995.
[7] E. B. Lee and L. Markus. Foundations of optimal control theory. Robert E. Krieger
Publishing Co., Inc., Melbourne, FL, second edition, 1986.
[8] Pierre-Louis Lions. Contrôle de modèles dynamiques. Cours polycopié. École Polytech-
nique, 2016.
[9] R. Tyrrell Rockafellar and Roger J.-B. Wets. Variational analysis, volume 317 of Grund-
lehren der Mathematischen Wissenschaften [Fundamental Principles of Mathematical
Sciences]. Springer-Verlag, Berlin, 1998.
[10] Eduardo D. Sontag. Mathematical control theory, volume 6 of Texts in Applied Mathema-
tics. Springer-Verlag, New York, second edition, 1998. Deterministic finite-dimensional
systems.
[11] Emmanuel Trélat. Contrôle optimal. Mathématiques Concrètes. Vuibert, Paris, 2005.
Théorie & applications.
[12] Richard Vinter. Optimal control. Systems & Control : Foundations & Applications.
Birkhäuser Boston, Inc., Boston, MA, 2000.
107