Introduction à l'optimisation mathématique
Introduction à l'optimisation mathématique
Cours d’Optimisation
Références bibliographiques :
— Philippe G. Ciarlet, Introduction à l’analyse numérique matricielle et à l’optimi-
sation.
— Jean-Baptiste Hiriart-Urruty, Optimisation et analyse convexe (exercices cor-
rigés).
— Grégoire Allaire, Analyse numérique et optimisation, chap. 9 et 10.
1
2
Chapitre 1
Introduction à l’optimisation
On dit que problème (P) admet une solution s’il existe un choix de variables x0 ∈ K
tel que
∀x ∈ K J(x0 ) ≤ J(x).
On dit alors que x0 est un minimiseur (ou point de minimum) de J sur K, et que J(x0 )
est un minimum de J sur K.
Exemple 1.1. Un étudiant doit réviser pour ses examens. Il a 4 matières à passer et
dispose d’une semaine de révisions, ce qui représente 42 heures de travail (en comptant 6
jours et 7 heures par jour). Pour i = 1, . . . , 4, on note xi le nombre d’heures de révisions
3
pour la matière numéro i. L’ensemble K est alors décrit par
4
( )
X
K = x ∈ R4 , ∀1 ≤ i ≤ 4 xi ≥ 0, xi ≤ 42
i=1
On note M (x) la moyenne des notes (sur 20) obtenues par l’étudiant après avoir révisé xi
heures la matière numéro i. L’objectif est de maximiser M (x), ce qui revient à minimiser
la différence 20 − M (x). On peut donc formuler le problème d’optimisation suivant :
inf (20 − M (x))
x∈K
Remarque 1.1. Bien sûr, dans l’exemple précédent, on ne connaı̂t pas la formule
de M (x) de manière explicite ! De plus, il est évident que la moyenne obtenue ne
dépend pas seulement du nombre d’heures de révisions, mais de beaucoup d’autres
paramètres (assiduité en TD, concentration lors des révisions, qualité du sommeil la
veille des épreuves...). Le choix de la fonction coût découle d’un choix de modélisation
du phénomène étudié. Cependant, dans ce cours, les fonctions coût seront considérées
comme des données du problème.
Nous allons voir que la résolution d’un problème d’optimisation dépend en grande
partie des propriétés mathématiques de la fonction J. Pour l’illustrer, plaçons-nous en
dimension N = 1.
4
Bilan. Face au problème (P),
— l’existence d’un minimum est liée à la continuité de J,
— l’unicité du minimiseur x0 est liée à la convexité (stricte) de J,
— l’équation satisfaite par x0 est associée à la dérivée de J.
Toutes ces propriétés joueront des rôles analogues en dimension N ; la dérivée sera
remplacée par les dérivées partielles ou dérivées directionnelles de J.
BR (x) = y ∈ RN ,
ky − xk < R
B R (x) = y ∈ RN ,
ky − xk ≤ R
∀x ∈ U ∃R > 0, B(x, R) ⊂ U
La notation o(khk) signifie qu’il existe une fonction ε : RN → R t.q. limh→0 ε(h) =
0, et qui permette d’écrire le reste sous la forme o(khk) = khk ε(h).
Si L existe, elle est unique ; on la note L = DJ(u).
2. Soit d ∈ RN \ {0}. On dit que J admet une dérivée directionnelle dans la
direction d, au point u, si l’application t ∈ R 7→ J(u + td) est dérivable en 0. Si
c’est le cas, on note cette dérivée
∂J J(u + td) − J(u)
(u) := lim .
∂d t→0 t
5
Si d = ei est l’un des vecteurs de base de RN , on appelle cette dérivée direction-
nelle la i-ème dérivée partielle de J au point u, que l’on note
∂J J(u + tei ) − J(u) J(u1 , . . . , ui−1 , ui + t, ui+1 , . . . , uN ) − J(u1 , . . . , uN )
(u) := lim = lim .
∂xi t→0 t t→0 t
Proposition 1.1. Si J : U → R est différentiable au point u ∈ U , alors elle admet
des dérivées directionnelles en toute direction au point u (et en particulier, des dérivées
partielles). De plus, sa différentielle au point u s’écrit
N
X ∂J
∀h = (h1 , . . . , hN ) ∈ RN DJ(u)(h) = (u) hi .
∂xi
i=1
On montre que si J est différentiable au point u, alors ∇J(u) est l’unique vecteur de
RN t.q. la relation (1.1) soit vérifiée.
où w ∈ RN est un certain vecteur fixé. Alors, on peut affirmer que J est différentiable
en u, et que
w = ∇J(u).
Exercice 1.1. Montrer que si J est différentiable en u, alors pour tout d ∈ RN \ {0},
sa dérivée directionnelle dans la direction d s’écrit
∂J
(u) = h∇J(u), di.
∂d
6
Chapitre 2
Existence de minimum,
convexité, unicité
Définition 2.1 (Minimum global, minimum local). Soit x0 ∈ K. On dit que la fonction
J admet
(i) un minimum global sur K au point x0 , si
∀x ∈ K, J(x0 ) ≤ J(x);
7
(ii) un minimum local sur K au point x0 , si
Définition 2.2. On appelle suite minimisante pour le problème (P) toute suite
(xn )n∈N à valeurs dans RN t.q.
∀n ∈ N, xn ∈ K et lim J(xn ) = I.
n→∞
Proposition 2.1. Pour tout problème (P), il existe au moins une suite minimisante.
I ≤ J(xε ) < I + ε.
8
Théorème 2.1. Si K est un compact non vide de RN (i.e., un fermé borné), et si J
est continue en tout point de K, alors J admet un minimum sur K.
Preuve. Soit (xn )n∈N une suite minimisante. (xn ) est à valeurs dans K, qui est compact,
donc il existe x ∈ K et une suite extraite (xϕ(n) ) t.q. limn→∞ xϕ(n) = x. Comme J est
continue en x,
lim J(xϕ(n) ) = J(x).
n→∞
La suite (J(xϕ(n) )) étant une suite extraite de (J(xn )), elle converge vers la même limite,
d’où I = J(x).
Lorsque l’ensemble des contraintes K n’est pas compact, on pourra pallier cette
difficulté en considérant des fonctions J qui contraignent les suites minimisantes à rester
dans un ensemble compact de RN . On introduit pour cela la notion de fonction coercive.
Définition 2.3. On suppose U non borné. On dit que J est coercive (ou encore,
infinie à l’infini), si
lim J(x) = +∞.
x∈U,kxk→∞
Théorème 2.2. Soit K ⊂ RN t.q. (i) K est fermé, non vide, (ii) J est continue en
tout point de K, et (iii) J est coercive. Alors J admet un minimum global sur K.
Preuve.
L’infimum I de J sur K étant soit un réel, soit égal à −∞, on peut choisir un réel
M t.q. M > I. Par définition de la coercivité, il existe alors R > 0 t.q.
Soit (xn )n∈N une suite minimisante. Par définition, limn→∞ J(xn ) = I ; comme M > I,
il existe donc un entier N t.q.
∀n ∈ N, n ≥ N ⇒ J(xn ) < M.
9
2.2 Convexité et unicité du minimiseur
Soit U ⊂ RN un ouvert, J : U → R une application et K ⊂ U un ensemble non
vide.
Cela signifie que si deux points x, y sont dans K, alors le segment [x, y], qui relie ces
points, est contenu dans K.
Exercice 2.1. Soit N : RN → R+ une norme quelconque. Montrer que la boule unité
(fermée) pour cette norme est nécessairement convexe.
Proposition 2.2. Si J est strictement convexe sur K, alors J admet au plus un mini-
miseur sur K.
Preuve. Par l’absurde : supposons que J, strictement convexe sur K, possède deux
minimiseurs distints, x et y, sur K. On note m la valeur commune du minimum :
10
m = J(x) = J(y). Soit z = 12 (x + y) le milieu du segment [x, y]. K étant convexe, z ∈ K
et par la stricte convexité de J,
1 1 1 1
J(z) = J( x + y) < J(x) + J(y) = m.
2 2 2 2
Cela contredit la définition du minimum de J sur K.
La relation (ii) signifie géométriquement que le graphe de J est au-dessus de son hy-
perplan tangent en tout point.
Preuve. (i) ⇒ (ii) : Notons uθ := (1 − θ)u + θv = u + θ(v − u). Pour θ ∈]0, 1], on a
J(uθ ) ≤ (1 − θ)J(u) + θJ(v) = J(u) + θ(J(v) − J(u)), donc
1 θ→0+
J(v) − J(u) ≥ (J(uθ ) − J(u)) → h∇J(u), v − ui.
θ
(ii) ⇒ (i) : On a
11
En sommant on obtient l’inégalité désirée.
(iii) ⇒ (ii) : Soit g(t) := J(u + t(v − u)) pour t ∈ [0, 1]. On remarque que g 0 (t) =
h∇J(ut ), v − ui, et en particulier que g 0 (0) = h∇J(u), v − ui. Ainsi, par hypothèse,
1
g 0 (t) − g 0 (0) = h∇J(ut ) − ∇J(u), v − ui = h∇J(ut ) − ∇J(u), ut − ui ≥ 0.
t
D’autre part, comme g ∈ C([0, 1]) ∩ ∆(]0, 1[), d’après le théorème des accroissements
finis, il existe c ∈ (0, 1) tel que g(1)−g(0)
1 = g 0 (c) ≥ g 0 (0). Ainsi g(1) ≥ g(0) + g 0 (0), ce
qui donne l’inégalité désirée.
Proposition 2.4. On suppose que J est différentiable en tout point de K. Alors les
propriétés suivantes sont équivalentes :
(i) J strictement convexe sur K.
(ii) ∀(u, v) ∈ K 2 , u 6= v ⇒ J(v) > J(u) + h∇J(u), v − ui.
(iii) ∀(u, v) ∈ K 2 , u 6= v ⇒ h∇J(v) − ∇J(u), v − ui > 0.
12
Exercice 2.3. On suppose J deux fois différentiable en tout point de K ⊂ RN . Soit
α ≥ 0. Montrer que
N 2 2
∀u ∈ K, ∀h ∈ R , hD J(u)h, hi ≥ αkhk =⇒ J est α-convexe sur K,
Exercice 2.4. On suppose J deux fois différentiable en tout point de K. Montrer que
N 2
∀u ∈ K, ∀h ∈ R , hD J(u)h, hi > 0 =⇒ J est strictement convexe sur K.
Premières applications.
Proposition 2.5. Soit K un convexe fermé non vide de RN , contenu dans un ouvert
U . Soit J : U → R, différentiable en tout point de K. On suppose que J est α-convexe
sur K, avec α > 0. Alors J possède un unique minimiseur sur K.
Idée de la preuve : Soit u fixé dans K. De J α-convexe on déduit que pour tout
v ∈ K,
α
J(v) ≥ J(u) + h∇J(u), v − ui + kv − uk2
2
α kvk→∞
≥ J(u) − k∇J(u)kkv − uk + kv − uk2 → +∞.
2
Donc J est coercive, et admet un minimum sur K d’après le théorème 2.2. L’unicité du
minimiseur provient de la stricte convexité de J sur K.
Théorème 2.4 (projection sur un convexe fermé non vide). Soit K un convexe fermé
non vide de RN . Alors
13
Preuve. ū, s’il existe, est caractérisé de manière équivalente par
14
Chapitre 3
Conditions d’optimalité :
généralités
o
3.1 Généralités dans le cas u ∈K
Théorème 3.1. On suppose que J admet un minimum local en u, sur K. Si J est
o
différentiable en u et u ∈K , alors ∇J(u) = 0.
∀v ∈ K, kv − uk ≤ R ⇒ J(v) ≥ J(u).
o
Comme u ∈K , quitte à réduire le rayon R, on peut supposer que BR (u) ⊂ K. Pour
montrer que ∇J(u) = 0, nous allons montrer que pour tout h ∈ RN \{0}, h∇J(u), hi = 0.
Par linéarité, il suffit de le montrer pour des vecteurs h de norme 1.
Soit h ∈ RN t.q. khk = 1. Soit r ∈ (0, R]. Alors le vecteur u + rh ∈ BR (u), et donc
J(u + rh) ≥ J(u), que l’on peut écrire
J(u + rh) − J(u)
≥ 0.
r
15
J étant différentiable en u, limr→0 1r (J(u + rh) − J(u)) = h∇J(u), hi, d’où en passant à
la limite dans l’inégalité précédente :
h∇J(u), hi ≥ 0.
Enfin, on peut remplacer h par −h et reprendre la démarche précédente pour obtenir
l’inégalité dans l’autre sens, ce qui donne l’égalité.
16
Remarque 3.1. D’après l’exercice 2.3, si J est deux fois différentiable en tout point
de K et si pour tout u ∈ K, D2 J(u) est définie positive, alors J est α-convexe pour un
α > 0.
1
∀h ∈ RN u+h ∈ U ⇒ J(u+h) = J(u)+h∇J(u), hi+ hD2 J(u)h, hi+khk2 η(h). (3.1)
2
On peut également donner une formulation plus précise appelée formule de Taylor-
Lagrange :
1
∀h ∈ RN u+h ∈ U ⇒ ∃θ ∈]0, 1[, J(u+h) = J(u)+h∇J(u), hi+ hD2 J(u+θh)h, hi.
2
(3.2)
Théorème 3.3. On suppose que J admet un minimum local en u, sur K. Si J est 2 fois
o
différentiable en u et u ∈K , alors ∇J(u) = 0 et pour tout h ∈ RN , hD2 J(u)h, hi ≥ 0.
Preuve. On sait d’après le théorème 3.1 que ∇J(u) = 0. Il suffit de montrer que la
seconde propriété. D’après la formule de Taylor (3.1), on a pour tout h ∈ RN t.q.
u + h ∈ U,
1
J(u + h) − J(u) = hD2 J(u)h, hi + khk2 η(h) (3.3)
2
avec limh→0 η(h) = 0. Par l’absurde, supposons qu’il existe un vecteur x ∈ RN t.q.
hD2 J(u)x, xi < 0. Alors x est non nul et on peut définir le vecteur normalisé x = x/kxk,
o
qui vérifie également hD2 J(u)x, xi < 0. Puisque u ∈K , il existe R > 0 t.q. BR (u) ⊂ K.
Ainsi, pour tout 0 < ρ < R, u + ρx ∈ K donc d’après (3.3),
1
J(u + ρx) − J(u) = hD2 J(u)(ρx), ρxi + kρxk2 η(ρx),
2
17
qui s’écrit encore, par bilinéarité du produit scalaire et par homogénéité de la norme,
J(u + ρx) − J(u) 1
= hD2 J(u)x, xi + kxk2 η(ρx)
ρ2 2
1
= hD2 J(u)x, xi + η(ρx).
2
Enfin, limh→0 η(h) = 0 donc il existe R > 0 t.q.
1
∀h ∈ RN , khk < R ⇒ η(h) < − hD2 J(u)x, xi.
2
On en conclut que pour tout ρ ∈]0, min(R, R)[,
J(u + ρx) − J(u)
< 0.
ρ2
Cela contredit le fait que J possède un minimum local en u.
Remarque 3.2. On dira typiquement que ∇J(u) = 0 est une condition d’optimalité
d’ordre 1, et que la condition hD2 J(u)h, hi ≥ 0 pour tout h ∈ RN , est une condition
d’optimalité d’ordre 2. L’équation ∇J(u) = 0 est parfois appeléé ”équation d’Euler”.
o
Théorème 3.4 (Réciproque). On suppose J deux fois différentiable en u, u ∈K et
∇J(u) = 0. Alors :
(i) S’il existe α > 0 tel que pour tout h ∈ RN , hD2 J(u)h, hi ≥ αkhk2 , alors J admet un
minimum local en u.
(ii) S’il existe une boule BR (u) centrée en u, contenue dans K, telle que pour tout
v ∈ BR (u) et tout h ∈ RN , hD2 J(v)h, hi ≥ 0, alors J admet un minimum local en u.
Preuve. Cas (i). D’après la formule de Taylor-Young (3.1) (sachant que ∇J(u) = 0),
il existe une fonction η : RN → R t.q. limh→0 η(h) = 0 et
18
Comme le point u+θ(v−u) appartient encore à la boule BR (u), l’hypothèse (ii) implique
hD2 J(u + θ(v − u))(v − u), v − ui ≥ 0, donc J(v) ≥ J(u).
Preuve. Soit v ∈ K \ {u}. Pour θ ∈]0, 1[, on note uθ := (1 − θ)u + θv = u + θ(v − u).
J admet un minimum local en u sur K donc il existe R > 0 t.q.
Par convexité de K, le point uθ appartient à K quel que soit θ ∈]0, 1[. De plus, si
θ < R/kv − uk, uθ ∈ BR (u), d’où :
R
∀θ ∈]0, min(1, )[ J(uθ ) − J(u) ≥ 0.
kv − uk
J(uθ ) − J(u)
h∇J(u), v − ui = lim .
θ→0+ θ
19
(iii) J admet un minimum global sur K au point u.
On dira que la condition d’optimalité d’ordre 1 (3.5) caractérise la minimalité de u.
Remarque 3.3. On peut montrer que pour une fonction J convexe, l’équivalence entre
minimum local et minimum global reste valable sans hypothèse de différentiabilité de J
(voir le TD).
∀λ ≥ 0, ∀x ∈ Γ, λx ∈ Γ.
20
Définition 3.2. On appelle cône tangent en u, et on note TK (u), l’ensemble déterminé
par l’une des définitions équivalentes suivantes :
N
n→∞ un − u
TK (u) := d ∈ R ∃tn > 0, tn → 0, ∃un ∈ K, lim
=d (3.7)
n→∞ tn
n→∞
d ∈ RN ∃tn > 0, tn → 0, ∃dn ∈ RN , u + tn dn ∈ K et lim dn = d (3.8)
=
n→∞
N
n→∞
= d ∈ R ∃tn > 0, tn → 0, ∃un ∈ K, un = u + tn d + o(tn ) (3.9)
Pour vérifier que les définitions (3.7)-(3.8)-(3.9) sont équivalentes, il suffit de poser
dn = untn−u et d’écrire u + tn dn = un ∈ K, ou encore un = u + tn d + tn (dn − d) =
u + tn d + o(tn ).
γ(t) = u + td + o(t) qd t → 0.
Étant donnée une suite (tn ) de réels t.q. tn > 0 et limn→∞ tn = 0, en définissant
un = γ(tn ), la suite (un ) est à valeurs dans k et vérifie
un = u + tn d + o(tn ) qd n → ∞.
Preuve. TK (u) est non vide car il contient 0 (prendre un = u et (tn ) une suite quel-
conque). Si d ∈ TK (u), on considère des suites (tn ), (un ) comme dans la définition
(3.7). Pour tout λ > 0, il suffit alors de remplacer tn par t0n = tn /λ pour obtenir
limn→∞ unt0−u = λd, d’où λd ∈ K. TK (u) est donc un cône.
n
Montrons que TK (u) est fermé. Soit (dk )k∈N une suite de vecteurs de TK (u) convergeant
vers un vecteur d ∈ RN . Montrons que d ∈ TK (u). Comme d = limk→∞ dk et que chaque
dk s’écrit également comme une limite de suite, on va utiliser un argument diagonal.
21
Pour tout k ∈ N, on note (tk,n )n∈N une suite de réels strictement positifs convergeant
vers 0 et (uk,n )n∈N une suite de points de K t.q.
uk,n − u
lim = dk .
n→∞ tk,n
Le principe de l’argument diagonal est de construire à partir des valeurs uk,n , tk,n ,
dépendant de deux indices k, n, des suites uk,n(k) , tk,n(k) dépendant uniquement de k et
t.q.
uk,n(k) − u
lim tk,n(k) = 0 et lim = d. (3.10)
k→∞ k→∞ tk,n(k)
Pour cela, on considère une suite (εk )k∈N de réels strictement positifs et qui converge
vers 0. Par définition des limites, pour tout k ∈ N fixé, il existe un entier n(k) t.q.
uk,n(k) − u
0 < tk,n(k) ≤ εk et
− dk
≤ εk .
tk,n(k)
Par inégalité triangulaire, on obtient alors
uk,n(k) − u
uk,n(k) − u
∀k ∈ N
t − d
≤
t
− dk
+ kd − dk k ≤ εk + kd − dk k.
k,n(k) k,n(k)
On en déduit (3.10) par passage à la limite quand k → ∞ dans les inégalités précédentes.
Exercice 3.2. Montrer que Γ(a1 , . . . , ap ) est un cône convexe fermé non vide. (Indica-
tion : le caractère fermé pourra être démontré en raisonnant par récurrence sur p.)
Ao := v ∈ RN , ∀a ∈ A, hv, ai ≤ 0 .
(3.11)
22
Théorème 3.8 (CO1). Soit u un point de minimum local de J sur K. On suppose J
différentiable en u. Alors
∀d ∈ TK (u), h∇J(u), di ≥ 0.
d’où l’on déduit, après division par tn > 0 dans l’égalité qui précède :
Le résultat s’en déduit par passage à la limite car h∇J(u), dn i → h∇J(u), di et kdn kεn →
0.
23
D’après la formule de Taylor-Young à l’ordre 2, il existe une suite εn ∈ RN t.q. εn → 0
et
1 1
J(u)−J(u) = hD2 J(u)(un −u), un −ui+kun −uk2 εn = t2n hD2 J(u)dn , dn i+t2n kdn k2 εn .
2 2
Par définition du minimum local, puisque un → u, on a pour n assez grand : J(un ) ≥
J(u). On en déduit après division par t2n dans l’égalité précédente : pour n assez grand,
1 2
hD J(u)dn , dn i + kdn k2 εn ≥ 0.
2
Puisque hD2 J(u)dn , dn i → hD2 J(u)d, di et kdn k2 εn → 0, on en déduit le résultat par
passage à la limite.
24
Chapitre 4
Dans tout ce chapitre, nous allons considérer une fonction J : RN → R, que l’on
supposera α-convexe (pour un α > 0) et différentiable pour garantir l’existence d’un
unique u ∈ RN t.q.
∀v ∈ RN J(u) ≤ J(v)
(voir les résultats du chapitre 2). Rappelons que dans ce cas, le point u est caractérisé
par l’équation d’Euler :
∇J(u) = 0. (4.1)
Trouver u est donc équivalent à résoudre (4.1). Cependant, en général, il n’est pas
possible de déterminer une formule explicite pour u à partir du système d’équations (4.1)
(car ces équations peuvent être non linéaires par rapport aux coordonnées u1 , . . . , uN
du vecteur inconnu u). C’est pourquoi on est amené à chercher une valeur approchée
de u. Pour construire cette approximation, nous allons utiliser des algorithmes itératifs,
qui se présentent sous la forme d’algorithmes de descente.
25
la forme :
Ce que l’on espère, c’est que la suite (u(n) )n∈N converge vers le minimiseur u cherché ;
on dit alors que l’algorithme converge vers la solution du problème de minimisation. Si
un algorithme converge, on pourra mesurer son efficacité suivant deux critères :
— sa vitesse de convergence, qui mesure la rapidité avec laquelle la suite
(u(n) )n∈N converge vers le point u ;
— sa complexité calculatoire, qui mesure le coût des opérations nécessaires
pour obtenir une itération. Le coût global est alors donné par le coût d’une
itération multiplié par le nombre d’itérations nécessaires pour obtenir la solution
escomptée avec une certaine précision ε fixée a priori.
La précision ε est associée à un critère d’arrêt, permettant à l’algorithme de s’arrêter
et de fournir une valeur approchée u(n) du minimiseur, que l’on jugera acceptable .
Sachant que la solution exacte satisfait l’équation d’Euler (4.1), ce critère d’arrêt pourra
prendre, par exemple, la forme suivante :
k∇u(n) k ≤ ε. (4.2)
Ainsi, l’algorithme fournira comme résultat le premier vecteur u(n) obtenu, satisfaisant
la condition (4.2).
Dans ce chapitre, nous nous intéressons plus particulièrement à la vitesse de conver-
gence des algorithmes. Pour comparer ces vitesses de convergence, on introduit les
définitions suivantes.
Définition 4.2. Supposons connue une suite (u(n) )n∈N , obtenue à l’aide d’un algorithme
itératif, et telle que limn→∞ u(n) = u. Pour tout n ∈ N, on définit l’erreur e(n) à
l’itération n par
e(n) = ku − u(n) k.
26
Cette propriété s’écrit de manière équivalente :
Pour cette raison, on dira également que si une méthode satisfait (4.3), la conver-
gence est géométrique (l’erreur se comporte comme une suite géométrique de
raison inférieure strictement à 1).
• La méthode sera dite d’ordre p si elle satisfait une relation du type
Algorithmes de descente. Les algorithmes que nous allons considérer pour les
problèmes d’optimisation ont la forme générale suivante :
Le vecteur d(n) s’appelle la direction de descente, et le réel ρ(n) > 0 le pas de la méthode
à la n-ième itération. On pratique, on choisira la direction et le pas afin que l’inégalité
suivante soit satisfaite :
J(u(n+1) ) ≤ J(u(n) ).
J(u(n+1) ) = J(u(n) + ρ(n) d(n) ) = J(u(n) ) + h∇J(u(n) ), ρ(n) d(n) i + ρ(n) kd(n) k η(ρ(n) d(n) ),
où η : RN → R est une fonction vérifiant limh→0 η(h) = 0. Par linéarité du produit
scalaire, on peut donc écrire :
h i
J(u(n+1) ) − J(u(n) ) = ρ(n) h∇J(u(n) ), d(n) i + kd(n) k η(ρ(n) d(n) ) .
27
Étant donné que η tend vers 0 lorsque son argument tend vers 0, on peut supposer que,
pour ρ(n) suffisamment petit, le signe du second membre va être le même que le signe de
h∇J(u(n) ), d(n) i (rappelons que ρ(n) > 0). Pour s’assurer que J(u(n+1) ) − J(u(n) ) ≤ 0,
un choix possible pour d(n) est donc
On obtient alors :
h i
J(u(n+1) ) − J(u(n) ) = ρ(n) −k∇J(u(n) )k2 + k∇J(u(n) )k η(−ρ(n) ∇J(u(n) ))
h i
= −ρ(n) k∇J(u(n) )k k∇J(u(n) )k + η(−ρ(n) ∇J(u(n) )) .
Cette quantité sera négative si l’on choisit un pas ρ(n) suffisamment petit. En effet, on
peut supposer k∇J(u(n) )k > 0 (sinon u(n) = u et l’algorithme s’arrêterait), et alors il
existe un ρmax > 0 t.q. pour tout choix de ρ(n) t.q. 0 < ρ(n) < ρmax , η(−ρ(n) ∇J(u(n) )) >
−k∇J(u(n) )k, ce qui donne le résultat.
Les algorithmes de descente utilisant la direction (4.6) à chaque itération s’appellent
des algorithmes de gradient. Dans le raisonnement précédent, la borne supérieure
ρmax sur le pas dépend a priori de l’itération n, puisqu’elle dépend de la fonction
η (qui dépend elle-même de u(n) ) et de la norme de ∇J(u(n) ). Sous une hypothèse
supplémentaire sur le gradient de J, on peut en fait établir des bornes uniformes sur
ρ(n) permettant de garantir la convergence des algorithmes de gradient ; c’est l’objet du
théorème suivant.
28
Alors, pour toute valeur initiale u(0) ∈ RN , la méthode de gradient définie par l’itération
converge ; de plus, la convergence est géométrique : il existe une constante 0 < C < 1,
dépendant uniquement de α, M, a et b, t.q.
∀n ∈ N, ku(n) − uk ≤ C n ku(0) − uk
Puisque pour tout vecteur v ∈ RN , kvk2 = hv, vi, on obtient en développant les produits
scalaires :
ku(n+1) −uk2 = ku(n) −uk2 −2ρ(n) h∇J(u(n) )−∇J(u), u(n) −ui+(ρ(n) )2 k∇J(u(n) )−∇J(u)k2
29
ce qui implique, d’après la condition (4.7) :
Le minimum de τ est atteint au point ρmin = Mα2 ; de plus, τ (0) = 1 et par symétrie,
2α 2α
τ(M 2 ) = 1. Ainsi, si l’on fixe 0 < a < b < M 2 ), on obtient pour tout ρ ∈ [a, b],
En notant C = [max(τ (a), τ (b))]1/2 , on vérifie que pour toute suite (ρ(n) )n∈N à valeurs
dans [a, b],
∀n ∈ N ku(n+1) − uk ≤ Cku(n) − uk.
Une autre stratégie consiste à déterminer, s’il existe, un pas optimal à chaque
itération. En notant d(n) = −∇J(u(n) ) la direction de descente à l’itération n, cela
revient à déterminer un point sur la droite passant par u(n) et dirigée par d(n) , qui
minimise la valeur de J sur cette droite. Autrement dit, on cherche à chaque itération
n un pas ρ(n) ∈ R t.q.
L’algorithme de gradient à pas optimal consiste alors, à partir d’une valeur initiale u(0) ,
à réaliser l’itération
30
Théorème 4.2 (convergence de l’algorithme de gradient à pas optimal). Soit J : RN →
R, α-convexe, différentiable, t.q. ∇J soit M -lipschitzien. Pour tout point de départ
u0 ∈ RN , l’algorithme de gradient à pas optimal est bien défini, et converge vers l’unique
minimiseur u :
lim u(n) = u.
n→∞
Preuve. Notons que le minimiseur u est bien défini et caractérisé par ∇J(u) = 0 (cas
J est différentiable et α-convexe). On peut supposer que pour tout n ∈ N, d(n) 6= 0,
sinon l’algorithme converge en un nombre fini d’itérations. Pour tout n ∈ N, on définit
l’application gn : R → R, par
gn0 (ρ(n) ) = 0.
gn (ρ + h) − gn (ρ) J(u(n) + (ρ + h)d(n) ) − J(u(n) + ρd(n) ) J((u(n) + ρd(n) ) + hd(n) ) − J(u(n) + ρd(n) )
= = ,
h h h
31
d’où en passant à la limite quand h → 0 :
En appliquant cette formule avec ρ = ρ(n) , puisque d(n+1) = ∇J(u(n) + ρ(n) d(n) ), on en
déduit la propriété suivante :
hd(n+1) , d(n) i = 0. (4.9)
Ainsi, dans l’algorithme de gradient à pas optimal, deux directions de descente succes-
sives sont orthogonales.
Notons que J(un+1 ) ≤ J(u(n) ), par définition. Donc la suite (J(u(n) ))n∈N est décroissante
minorée (J est minorée par J(u)), donc convergente vers une limite notée `. D’autre
part, par α-convexité de J on a
α (n)
J(u(n) ) ≥ J(u(n+1) ) + h∇J(u(n+1) ), u(n) − u(n+1) i + ku − u(n+1) k2
2
De plus on remarque que h∇J(u(n+1) ), u(n) − u(n+1) i = −ρn hdn+1 , dn i = 0, et donc
α (n) n→∞
ku − u(n+1) k2 ≤ J(u(n) ) − J(u(n+1) ) → ` − ` = 0.
2
On a donc déja montré que ku(n) − u(n+1) k → 0.
Par ailleurs, comme h∇J(u(n) ), ∇J(u(n+1) )i = 0, en développant la norme au carré
et en utilisant la condition de Lipschitz sur ∇J,
et donc
k∇J(u(n) )k ≤ M ku(n) − u(n+1) k.
On en déduit finalement
1 M (n) n→∞
ku(n) − uk ≤ k∇J(u(n) )k ≤ ku − u(n+1) k → 0.
α α
32
4.3 Cas particulier : fonctionnelles quadratiques
Définition 4.3. On appelle fonctionnelle quadratique une application J : RN →
R de la forme
1
J(x) = hAx, xi − hb, xi,
2
où A ∈ R N ×N est une matrice symétrique et b ∈ RN .
∀x ∈ RN , ∇J(x) = Ax − b, D2 J(x) = A.
Remarque 4.2. En vertu du corollaire 4.2, on peut donc appliquer les algorithmes de
gradient à pas fixe ou à pas optimal pour la minimisation d’une fonctionnelle quadra-
tique elliptique. Cependant, en utilisant la linéarité du gradient, on peut montrer que,
dans ce cas, l’algorithme de gradient à pas fixe converge pour une plage plus large de
choix possibles de ρ que celle obtenue au théorème 4.1 (voir le TD).
33
où ρ(n) est défini par (4.8). Montrons que ρ(n) peut, dans ce cas, se calculer par une
formule explicite. En effet, on a vu dans la preuve du théorème 4.2, que deux directions
de descente successives étaient orthogonales (relation (4.9)), ce qui s’écrit également
h∇J(u(n+1) ), ∇J(u(n) )i = 0.
On peut supposer d(n) 6= 0 (sinon cela signifie que ∇J(u(n) ) = 0, c’est-à-dire que u(n) = u
et il est inutile de calculer le pas ρ(n) suivant), et donc hAd(n) , d(n) i =
6 0 puisque A est
(n)
définie positive. Ainsi, ρ s’exprime par la formule
kd(n) k2
ρ(n) = . (4.10)
hAd(n) , d(n) i
Le minimum de J sur R2 est clairement atteint au point (0, 0). Examinons les premières
étapes de l’algorithme de gradient à pas optimal. On se donne un premier point u(0) =
(x(0) , y (0) )T et on définit la direction de descente
!
(0) (0) (0) −x(0)
d = −∇J(u ) = −Au = .
−2y (0)
34
Le point suivant u(1) est sur la droite passant par u(0) et dirigée par d(0) , c’est-à-dire
l’ensemble des points de la forme (x(0) − ρx(0) , y (0) − 2ρy (0) ) pour un ρ ∈ R. Cette droite
passera par la solution exacte u = (0, 0), si et seulement si il existe ρ ∈ R t.q.
On voit que c’est possible uniquement si l’une des valeurs x(0) ou y (0) est nulle. Ainsi, si
l’on part d’un point u(0) qui n’est pas sur l’un des axes Ox ou Oy, le point suivant u(1)
ne coı̈ncidera pas avec la solution exacte. En utilisant la formule (4.10), on peut montrer
que ce phénomène se reproduit à chaque itération ; plus précisément, si l’on part d’un
u(0) t.q. x(0) 6= 0 et y (0) 6= 0, alors à chaque itération n, le point u(n) = (x(n) , y (n) ) vérifie
également x(n) 6= 0 et y (n) 6= 0. Par conséquent, l’algorithme ne pourra pas atteindre la
valeur exacte du minimiseur u = (0, 0) en un nombre fini d’itérations.
Pourtant, en partant par exemple de la valeur u(1) , la meilleure direction à choisir
pour poursuivre la descente est la direction du vecteur u(1) lui-même (puisque la droite
correspondasnte passe par l’origine). Nous allons voir que cette direction vérifie une
propriété remarquable. Reprenons pour cela la formule (4.10). Elle nous permet d’écrire
l’expression suivante :
kd(0) k2
u(1) = u(0) − d(0) .
hAd(0) , d(0) i
kd(0) k2
hAu(1) , d(0) i = hAu(0) , d(0) i − hAd(0) , d(0) i
hAd(0) , d(0) i
= kd(0) k2 − kd(0) k2
= 0.
Ainsi, on pourra utiliser une autre direction de descente que celle du gradient au point
u(1) ; cette direction d(1) , colinéaire à u(1) , pourra être définie (au signe près) par
Une telle direction d(1) vérifiant hAd(1) , d(0) i = 0 s’appelle une direction conjuguée
à la direction d(0) , relativement à la matrice A.
35
4.4 Méthode du gradient conjugué
Dans toute cette section, on considère une fonctionnelle quadratique elliptique
1
J : x ∈ RN 7→ hAx, xi − hb, xi
2
où A ∈ RN ×N est une matrice symétrique définie positive et b ∈ RN est un vecteur fixé.
Nous avons vu que les méthodes de gradient consistent, à partir d’un point u(n)
calculé à l’itération n, à chercher le point suivant u(n+1) sur la droite passant par u(n) et
dirigée par d(n) = −∇J(u(n) ). Ainsi, seule l’information fournie par le gradient de J à
l’étape n est utilisée pour déterminer la prochaine direction de descente. Le principe de
la méthode du gradient conjugué consiste, au contraire, à utiliser tous les gradients cal-
culés précédemment par l’algorithme ∇J(u(0) ), ∇J(u(1) ), . . . , ∇J(u(n) ) pour déterminer
la prochaine direction de descente.
∇J(u(k) ) 6= 0, 0 ≤ k ≤ n,
sinon la valeur exacte du minimiseur aurait déjà été atteinte. Pour k = 0, 1, . . . , n, appe-
lons Gn le sous-espace de RN engendré par les gradients ∇J(u(0) ), ∇J(u(1) ), . . . , ∇J(u(n) ) ;
c’est donc un sous-espace de dimension au plus n + 1. L’idée de la méthode consiste à
définir le vecteur suivant u(n+1) comme le minimiseur de J sur le plan affine passant
par u(n) et dirigé par Gn . Ainsi, en notant u(n) + Gn ce plan affine,
n
( )
X
u(n) + Gn := {u(n) + w; w ∈ Gn } = u(n) + δk ∇J(u(k) ) ; δk ∈ R, 0 ≤ k ≤ n ,
k=0
36
de gradient à pas optimal. En effet, la droite {u(n) − ρ∇J(u(n) ), ρ ∈ R} =: u(n) +
Vect(∇J(u(n) )) sur laquelle on minimise J pour mettre à jour le point u(n) dans la
méthode de gradient à pas optimal, est contenue dans le plan u(n) +Gn ; par conséquent,
n o n o
min J(v), v ∈ u(n) + Gn ≤ min J(v), v ∈ u(n) + Vect(∇J(u(n) )) .
Cependant, pour que la définition (4.11) soit applicable en pratique, il faut s’assurer
que le problème de minimisation associé, qui porte sur n + 1 variables δ0 , δ1 , . . . , δn ,
soit facile à résoudre. Nous allons voir que c’est le cas, et que sa résolution repose sur
l’utilisation des directions conjuguées associées à la matrice A.
Remarquons tout d’abord que les solutions des problèmes successifs de minimisation
h∇J(u(k+1) ), ∇J(u(l) )i = 0, 0 ≤ l ≤ k ≤ n,
Remarque 4.3. Cette propriété est plus forte que la propriété (4.9) établie pour l’al-
gorithme de gradient à pas optimal, où seulement deux gradients consécutifs sont or-
thogonaux.
Cette orthogonalité montre, en particulier, que les gradients ∇J(u(0) ), ∇J(u(1) ), . . . , ∇J(u(n) )
forment une famille libre (on a supposé qu’ils étaient tous non nuls). Cela implique que
l’algorithme converge en au plus N itérations : en effet, si les N premiers vecteurs
37
∇J(uk ), 0 ≤ k ≤ N − 1 sont différents de zéro, alors nécessairement le vecteur sui-
vant ∇J(u(N ) ) est nul, sinon le sous-espace GN ⊂ RN contiendrait N + 1 vecteurs
indépendants. Par conséquent, ∇J(uN ) = 0 et donc uN = u.
Supposons que, à partir d’un vecteur initial u(0) , on ait construit les vecteurs u(1) , . . . , u(n)
en résolvant les problèmes de minimisation successifs définis par (4.12). Pour tout
0 ≤ k ≤ n, on note ∆(k) := u(k+1) − u(k) la différence entre deux approximations
successives. Par construction, chaque vecteur ∆(k) appartient au sous-espace Gk , dont
il existe k + 1 paramètres réels δ0k , δ1k , . . . , δkk t.q.
k
X
(k)
∆ = δlk ∇J(u(l) ).
l=0
Nous allons montrer que ces vecteurs sont conjugués par rapport à la matrice A.
Définition 4.4. Soit A ∈ RN ×N une matrice symétrique. On dit que des vecteurs
w(0) , w(1) , . . . , w(n) de RN sont conjugués par rapport à la matrice A s’ils vérifient :
Remarque 4.4. Si l’on suppose de plus que A est définie positive, alors l’application
(x, y) ∈ RN 7→ hAx, yi ∈ R
définit un produit scalaire sur RN (le produit scalaire usuel correspondant au choix
A = IN ). Une famille de vecteurs non nuls est donc conjuguée par rapport à A si elle est
orthogonale pour ce produit scalaire ; en particulier, elle forme donc une famille libre.
Montrons que les vecteurs ∆(k) introduits plus haut sont conjugués par rapport à
A. En utilisant l’expression de ∇J, on remarque que
38
Comme on a supposé ∇J(u(k) ) 6= 0, on en déduit que hA∆(k) , ∇J(u(k) )i = 6 0 et donc
(k)
∆ 6= 0 pour tout 0 ≤ k ≤ n.
D’autre part, en écrivant u(k+1) = u(k) + ∆(k) , on calcule de la même manière
ce qui donne
hA∆(k) , ∇J(u(l) )i = 0, 0 ≤ l < k ≤ n.
Pour un entier m t.q. 0 ≤ m < k ≤ n, chaque vecteur ∆(m) ∈ Gm est une combinaison
linéaire des vecteurs ∇J(u(l) ), pour 0 ≤ l ≤ m. Par conséquent, l’égalité précédente
entraı̂ne
hA∆(k) , ∆(m) i = 0, 0 ≤ m < k ≤ n.
39
40
Chapitre 5
Contraintes d’égalité
où les fonctions ϕi : RN → R sont données, et où p est un entier ≥ 1 qui représente le
nombre de contraintes. On définira aussi la fonction à valeurs vectorielles ϕ : RN → Rp ,
par
ϕ1 (x)
..
ϕ(x) := .
ϕp (x)
Contraintes d’égalité affines. Il s’agit du cas particulier où chaque ϕi est affine :
il existe des coefficients (cij ) et (fi ) t.q.
N
X
ϕi (x) = cij xj − fi .
j=1
41
K est donc un sous-espace affine de RN dirigé par le sous-espace vectoriel {w ∈
RN , Cw = 0}. En effet, si x, y ∈ K, leur différence x − y vérifie C(x − y) = 0. En
particulier, on peut vérifier facilement que pour le cas de contraintes d’égalité affines,
K est convexe.
A⊥ := {x ∈ RN , ∀a ∈ A, hx, ai = 0}.
Rappelons que pour tout ensemble A, son orthogonal A⊥ est un sous-espace vectoriel
de RN .
Lemme 5.1. Lorsque K est affine, le cône tangent en tout point u de K est un espace
vectoriel donné par
42
Pour conclure la preuve, on observe enfin que ∇ϕi (x) = (ci1 . . . ciN )T , donc (Cd)i =
h∇ϕi , di. Ainsi
Cd = 0 ⇔ ∀i = 1, . . . , p, h∇ϕi , di = 0.
L’ensemble des vecteurs d ∈ RN tels que Cd = 0 est donc exactement l’ensemble des
vecteurs orthogonaux à tous les vecteurs ∇ϕ1 , . . . , ∇ϕp , d’où le résultat.
Notons au passage les identités suivantes :
h∇ϕ1 , di
..
C ≡ [∇ϕ1 , . . . , ∇ϕp ]T ,
Cd = . ,
h∇ϕp , di
et encore
C T = [∇ϕ1 , . . . , ∇ϕp ] .
∃λ ∈ Rp , ∇J(u) + C T λ = 0 (5.3a)
Cu − f = 0. (5.3b)
On dit que les composantes du vecteur λ = (λ1 . . . λp )T sont les multiplicateurs de La-
grange associés aux contraintes ϕi (x) = 0. Les conditions (5.3) constituent les condi-
tions d’optimalité d’ordre 1 du problème de minimisation. Elles s’écrivent de manière
équivalente
p
X
p
∃λ ∈ R , ∇J(u) + λi ∇ϕi (u) = 0 (5.4a)
i=1
ϕ(u) = 0. (5.4b)
Preuve. Nous avons établi au chapitre 3 que pour un problème général d’optimisation
sous contraintes, les conditions d’optimalité d’ordre 1 s’écrivaient : pour tout d ∈ TK (u),
h−∇J(u), di ≤ 0.
Mais comme ici TK (u) est un espace vectoriel, on a aussi −d ∈ TK (u) et donc
h−∇J(u), −di ≤ 0.
43
En combinant les deux inégalités, on obtient
∀d ∈ TK (u), h−∇J(u), di = 0
Ainsi,
−∇J(u) ∈ TK (u)⊥ ≡ {∇ϕ1 , . . . , ∇ϕp }⊥⊥
p
X
−∇J(u) = λi ∇ϕi (u).
i=1
p
X
∇ϕi (u)λi = [∇ϕ1 (u), . . . , ∇ϕp (u)] λ ≡ C T λ.
i=1
44
5.3 Cas de contraintes d’égalité quelconques
Le cas général est plus difficile mais va conduire, sous des hypothèses adéquates
(dites de qualification des contraintes ), à des conditions d’optimalité similaires. On
considère dans cette section que les fonctions ϕ1 , . . . , ϕp : RN → R, sont de classe C 1 .
Définition 5.1. On dira que les contraintes d’égalité (5.1) sont qualifiées en u ∈ K
si l’une des conditions suivantes est satisfaite :
• soit les contraintes sont linéaires : chaque fonction ϕi est affine ;
• soit la famille {∇ϕ1 (u), . . . , ∇ϕp (u)} est libre.
45
Donc par hypothèse on a
h∇ϕi (u), di
..
Dϕ(u) · d =
. =0
h∇ϕp (u), di
Le cas où les p contraintes sont toutes affines ayant déjà été traité, on suppose donc
que les gradients ∇ϕ1 (u), . . . , ∇ϕp (u) sont linéairement indépendants (ce qui impose en
particulier que N ≥ p, puisque les gradients forment une famille llibre de p vecteurs
de RN ). Cela signifie que la matrice Dϕ, dont les p lignes sont formées de vecteurs
linéairement indépendants, est de rang p. Par conséquent, Dϕ contient également p
vecteurs colonnes indépendants. Quitte à réordonner les coordonnées, on peut donc
supposer que les p premiers vecteurs colonnes de Dϕ(u) forment une famille libre dans
Rp .
Notons pour un vecteur x de RN , x = (x1 , x2 ) où x1 contient les p premières com-
posantes de x et x2 les N − p autres (N − p ≥ 0). En particulier, ϕ(x) = ϕ(x1 , x2 ), et on
peut noter D1 ϕ et D2 ϕ les dérivées par rapport aux coordonnées x1 et x2 respective-
ment. L’hypothese d’indépendance des gradients revient donc à dire que D1 ϕ(u) est une
matrice inversible. D’après le théorème des fonctions implicites il existe des voisinages
de u1 et de u2 et une fonction Ψ de classe C 1 t.q., dans ces voisinages,
ϕ(x1 , x2 ) = 0 ⇔ x1 = Ψ(x2 ).
En particulier, u1 = Ψ(u2 ).
Afin de construire une suite xn dans K, on procède en posant d’abord
1 2
x2n = u2 + d ,
n
et
x1n = Ψ(x2n ).
46
Montrons que
47
48
Chapitre 6
Contraintes d’inégalité,
contraintes mixtes
K ≡ {x ∈ RN , Cx − f ≤ 0}.
49
6.1 Cas des contraintes d’inégalité affines
On note que si K est un ensemble de contraintes d’inégalité affines, alors K est un
convexe.
On peut dire que le cône des directions admissibles, en tout point u de K, est le polaire
des gradients des contraintes actives .
0 ≥ ϕi (un ) = ϕi (u + tn dn )
= ϕi (u) + tn h∇ϕi (u), dn i + o(tn ).
ϕi (un )
h∇ϕi (u), dn i = + o(1).
tn
Comme ϕi (un ) ≤ 0 et que limn→∞ h∇ϕi (u), dn i = h∇ϕi (u), di, le résultat s’en déduit
par passage à la limite dans l’égalité précédente.
Cas (ii) : il s’agit de montrer que l’inclusion réciproque est vraie, dans le cas d’inégalités
affines. Soit donc d ∈ {∇ϕi (u), i ∈ A(u)}o . On définit un = u + n1 d (ce qui correspond
au choix tn = n1 , dn = d pour vérifier la définition de TK (u)). Vérifions que pour n
assez grand, un ∈ K. Considérons tout d’abord le cas des contraintes inactives. Soit
j ∈ {1, . . . , p}\A(u) ; ϕj (u) < 0 et un → u donc par continuité, il existe un entier Nj ∈ N
50
t.q. pour tout n ≥ Nj , ϕj (un ) < 0. En prenant N = max {Nj , j ∈ {1, . . . , p} \ A(u)},
on a donc :
∀n ∈ N, n ≥ N ⇒ ∀j ∈ {1, . . . , p} \ A(u), φj (un ) < 0.
Pour le cas des contraintes actives, on remarque que pour des contraintes affines, la
formule de développement de Taylor utilisée dans le cas précédent devient exacte (c’est-
à-dire sans terme de reste) : si i ∈ A(u), ϕi (u) = 0 et on peut écrire le développement
suivant :
1
ϕi (un ) = h∇ϕi (u), di ≤ 0
n
puisque d appartient au cône polaire des directions admissibles. On en déduit que pour
tout n ≥ N , un ∈ K.
∀x ∈ K, 0 ≥ (x − p, u − p) = −(d, x − p).
Donc
(x, d) ≥ (d, p) = (d, d) + (u, d).
Au final, on choisit b = 12 (d, d) + (u, d) : on vérifie que (x, d) > b, et b > (u, d).
51
Lemme 6.4. Γ(a1 , . . . , ap ) est fermé
Notons que
(i) hd, ui < 0 car on peut prendre v = 0 ∈ K dans (6.2).
(ii) Aussi, ∀λ ≥ 0, λai ∈ K donc
−d ∈ {a1 , . . . , ap }o .
(iii) Par définition, puisque u ∈ {a1 , . . . , ap }oo , on a donc h−d, ui ≤ 0, soit 0 ≤ hd, ui.
C’est en contradiction avec (i).
Voici un premier énoncé du Théorème de Karush, Kuhn et Tucker ou ”KKT”, dans
le cas simplifı́é de contraintes d’inégalité affines. (Le théorème général de KKT concerne
en fait les contraintes mixtes et sera vu plus loin.)
On dira encore que λ = (λ1 , . . . , λp )T sont des multiplicateurs. L’ensemble des conditions
(6.3) représentent les conditions d’optimalité d’ordre 1 du problème de minimisation.
52
Elles s’écrivent de manière équivalente
p
X
T p
∃λ = (λ1 , . . . , λp ) ∈ R , ∇J(u) + λi ∇ϕi (u) = 0 (6.4a)
i=1
λ ≥ 0, ϕ(u) ≤ 0, (6.4b)
hϕ(u), λi = 0. (6.4c)
ce qui conclut la preuve des relations (6.4). Pour obtenir l’écriture vectorielle (6.3), on
utilise le fait que i λi ∇ϕi (u) = C T λ pour λ = (λ1 , . . . , λp )T .
P
53
Géométriquement, ∇ϕi (u) représente la normale sortante à la courbe ϕi (v) = 0, en
v = u (normale dirigée suivant la région ou ϕi > 0). Donc cela revient à supposer qu’on
a un vecteur w qui est rentrant pour les contraintes (actives) d’inégalité, et strictement
rentrant par rapport aux contraintes d’inégalité (actives) non affines.
Théorème 6.2 (CO1, contraintes générales d’inégalité). On suppose que u est un point
de minimum local de J sur K, que J, ϕ1 , . . . , ϕp sont différentiables en u et que les
contraintes sont qualifiées en u. Alors les conclusions du théorème KKT, (6.4), restent
valables.
54
On en déduit que pour n assez grand, ∀i, ϕi (un ) ≤ 0. Cela montre que d + λw ∈ TK (u).
On conclut alors que d ∈ TK (u), ce qui conclut la preuve de (6.6), et du Théorème 6.2.
K = {x, Cx − f = 0, Dx − g ≤ 0},
Définition 6.3 (qualification des contraintes). Soit u ∈ K. On suppose que les fonctions
ϕi sont de classe C 1 au voisinage de u, et les ψj sont différentiables en u. On dira que
les contraintes sont qualifiées en u si : soit toutes les contraintes sont affines, soit il
existe un vecteur w ∈ RN ,
55
Géométriquement cela revient à supposer qu’on a un vecteur w qui est tangent aux
contraintes d’égalité, et rentrant pour les contraintes d’inégalité (strictement rentrant
si ψi n’est pas affine).
On remarque que si toutes les contraintes sont affines, alors tout point u de K est
qualifié.
56
et donc, d’après le lemme de Farkas 6.2,
o
−∇J(u) ∈ TK (u) = Γ ± ∇ϕi (u)1≤i≤p , (∇ψj (u))j∈A(u)
Preuve. Posons
X X
L(v, α, β) := J(v) + αi ϕi (v) + βj ψj (v),
i j
Mais par ailleurs, au vu des conditions (KKT), on a J(u) = L(u, λ, µ), et pour v dans
K on voit que L(v, λ, µ) ≤ J(v) (en utilisant que µ ≥ 0). Ainsi J(u) ≤ J(v) pour tout
v ∈ K.
57
58
Chapitre 7
Algorithmes de minimisation
pour les problèmes avec
contraintes
u = ΠK (u − ρ∇J(u)). (7.1)
59
2α 0 N
(ii) Si ρ ∈]0, M 2 [, alors pour tout u ∈ R , l’algorithme (GP) converge vers u :
lim un = u.
n→∞
(iii) Enfin, la convergence est linéaire : ∃0 ≤ R < 1, ∃C ≥ 0, kun −uk ≤ CRn (∀n ≥ 0).
On pourrait aussi décider de faire varier le pas à chaque itération, et proposer une
méthode de gradient à pas optimal projeté.
h∇J(u), v − ui ≥ 0, ∀v ∈ K. (7.2)
On en déduit que u ∈ K et
hu − ρ∇J(u) − u, v − ui ≤ 0, ∀v ∈ K.
u = ΠK (u − ρ∇J(u)). (7.3)
Réciproquement, cette relation est équivalente à (7.2). Comme J est convexe, cette
condition implique que u est un minimiseur global de J sur K.
(ii)-(iii) : On peut faire la différence entre le schéma et (7.3). En utilisant le fait
que ΠK est 1-lipschitzienne,
La fin de la preuve est la même que pour la méthode de gradient à pas fixe.
Le problème du schéma est qu’il faut pouvoir calculer ΠK . Si ΠK est facilement
calculable, on peut utiliser l’algorithme de gradient projeté (voir section 7.2). Sinon, on
verra d’autres algorithmes à la section 7.3.
60
7.2 Cas particuliers de projections
Lemme 7.1. Si A ⊂ Rp et B ⊂ Rq sont deux ensembles convexes fermés non vides, et
(x, y) ∈ Rp × Rq :
ΠA×B ((x, y)) = (ΠA (x), ΠB (y)).
K := {x, Cx − f = 0}.
∃λ ∈ Rp , ∇J(u) + C T λ = 0 (7.6a)
Cu − f = 0 (7.6b)
61
On réécrit ces équations, pour un ρ > 0, sous la forme
∃λ ∈ Rp , ∇J(u) + C T λ = 0 (7.7a)
λ = λ + ρ(Cu − f ). (7.7b)
Pour que l’algorithme soit bien défini il faudra montrer l’existence d’un vecteur un
solution de (i).
limn→∞ un = u.
(iii) Si, de plus, C est surjective et si ∇J est continue, alors on a aussi la convergence
de λn vers un unique λ solution de (7.7a).
Preuve. (i) est classique. (ii). Commençons par vérifier l’existence de un . On introduit
pour cela une fonction L : RN × Rp → R, appelée lagrangien du problème, et définie
par :
∀(v, µ) ∈ RN × Rp L(v, µ) = J(v) + hµ, Cv − f i.
C’est une fonction strictement convexe de v ; en effet, J est strictement convexe et les
contraintes étant affines, le terme hλn , Cv − f i est également une fonction affine de v et
en particulier c’est une fonction convexe de v. De plus, λn étant fixé, la fonction v 7→
62
L(v, λn ) est coercice car J est coercive, avec une croissance quadratique à l’infini (car α-
convexe), et les contraintes sont des fonctions affines donc à croissance linéaire à l’infini.
Ainsi L(·, λn ) possède un unique minimiseur un sur RN , caractérisé par ∇v L(un , λn ) =
0, c’est-à-dire
∇J(un ) + C T λn = 0.
On a d’une part kC(un − u)k2 ≤ kCk2 kun − uk2 , d’autre part, en utilisant les relations
sur les gradients et l’α-convexité de J :
Ainsi,
avec
γ := ρ(2α − ρkCk2 ).
2α
En particuliern si 0 < ρ < kCk 2 , on a γ > 0.
n 2
La suite n → kλ − λk est alors décroissante, minorée (par 0), donc convergente
vers une limite notée `. Ensuite on renverse l’inégalité (7.8) pour écrire
n→∞
γkun − uk2 ≤ kλn − λk2 − kλn+1 − λk2 → ` − ` = 0
63
Par conséquent CC T est inversible ; en effet, c’est une matrice carrée dont le noyau est
réduit à 0 (si un vecteur X ∈ RN vérifie CC T X = 0, alors kC T Xk2 = hC T X, C T Xi =
hX, CC T Xi = 0, donc C T X = 0 et X = 0 puisque C T est injective). En utilisant la
relation C T λn = −∇J(un ), on en déduit CC T λn = −C∇J(un ) et donc
K := {x, Cx − f ≤ 0}.
∃λ ∈ Rp , ∇J(u) + C T λ = 0 (7.9a)
λ ≥ 0, Cu − f ≤ 0, hλ, Cu − f i = 0. (7.9b)
64
Or,
hλ − λ + ρ(Cu − f ) , λ − µi = −hρ(Cu − f ), λ − µi
= −ρhCu − f, λi + ρhCu − f, µi ≤ 0
Ainsi on peut réécrire les conditions d’optimalité sous la forme suivante, pour tout
ρ>0:
∃λ ∈ Rp , ∇J(u) + C T λ = 0 (7.10a)
λ = ΠF (λ + ρ(Cu − f )). (7.10b)
65
2α 0
(ii) Pour tout ρ ∈]0, kCk 2 [, pour tout λ de départ, l’algorithme d’Uzawa (U2) est bien
Preuve. La preuve est pratiquement identique à celle du théorème 7.2 ; la seule différence
provient de la projection sur F , qui cependant n’a pas d’influence sur la convergence de
un , comme on le remarque en écrivant :
K := {x ∈ RN , ϕi (x) ≤ 0, 1 ≤ i ≤ p},
où chaque contrainte ϕi : RN → R est supposée convexe. On note ϕ(x) = (ϕ1 (x), . . . , ϕp (x))T ,
de sorte que K s’écrive aussi {x, ϕ(x) ≤ 0}.
Rappelons que si u est un point de minimum local de J sur K, avec J, ϕi différentiables
en u, et si les contraintes sont qualifiées en u, alors on peut écrire les conditions (KKT)
sous la forme suivante :
p
X
p
∃λ ∈ R , ∇J(u) + λi ∇ϕi (u) = 0 (7.11a)
i=1
λ ≥ 0, ϕ(u) ≤ 0, hλ, ϕ(u)i = 0. (7.11b)
66
Preuve. La preuve est identique à celle du lemme 7.3, où Cu − f est remplacé par ϕ(u).
Ainsi on peut réécrire les conditions d’optimalité sous la forme suivante, pour tout
ρ>0:
p
X
p
∃λ ∈ R , ∇J(u) + λi ∇ϕi (u) = 0 (7.12a)
i=1
λ = ΠF (λ + ρϕ(u)). (7.12b)
Pour que l’algorithme soit bien défini il faudra montrer l’existence d’un vecteur un
solution de (i).
est une fonction strictement convexe de v, car J est strictement convexe, les contraintes
ϕi sont convexes et les λni sont positifs. Elle est coercice car J l’est, avec une croissance
67
quadratique à l’infini (car α-convexe), et les ϕi sont à croissance au plus linéaire à l’infini
(car Lipschitz). Ainsi L(., λn ) possède un unique minimiseur un sur RN , caractérisé par
∇v L(un , λn ) = 0, soit
Xp
n
∇J(u ) + λni ∇ϕi (un ) = 0.
i=1
∀v ∈ RN L(un , λn ) ≤ L(v, λn ),
c’est-à-dire
68
P
En définissant comme plus haut le lagrangien L(v, λ) = J(v) + i λi ϕi (v), on constate
que la relation (7.16) s’écrit ∇v L(u, λ) = 0, ce qui montre que u est le minimiseur
unique de l’application v 7→ L(v, λ), sur RN (l’existence et l’unicité d’un tel minimiseur
s’obtiennent par les mêmes arguments que pour l’application v 7→ L(v, λn )). On a donc :
En sommant, on en déduit
p
X
h∇J(u) − ∇J(un ), un − ui + (λi − λni )(ϕi (un ) − ϕi (u)) ≥ 0.
i=1
69
en utilisant le caractère Lipschitz de ϕ et l’inégalité (7.18) avec
γ := ρ(2α − ρM 2 ).
s’écrit
∇J(un ) + C(un )T λn = 0,
d’où
C(un )∇J(un ) + C(un )C(un )T λn = 0.
Pour n assez grand, la matrice C(un )C(un )T est inversible, ce qui permet d’exprimer
λn sous la forme suivante :
∇J(un ) + C(un )T λn = 0,
70
on obtient (par continuité des dérivées partielles de J)
∇J(u) + C(u)T λ∗ = 0.
Ainsi λ∗ est solution de (7.12a) ; c’est même l’unique solution du système, puisque par
injectivité de C(u)T , si un vecteur µ∗ satisfait ∇J(u) + C(u)T µ∗ = 0, alors C(u)T µ∗ =
C(u)T λ∗ et donc µ∗ = λ∗ .
ϕ(v) ≥ 0,
et
ϕ(v) = 0 ⇔ v ∈ K.
L’avantage du problème pénalisé (7.21) est qu’il s’agit d’un problème de minimisation
sans contrainte (posé sur RN ).
Exemples type de pénalisations :
1. Pour K := {v, Cv − f = 0}, ϕ(v) := kCv − f k2 .
2. Pour K := {v, Cv − f ≤ 0}, ϕ(v) := k max(Cv − f, 0)k2 .
71
On a alors le résultat suivant.
Théorème 7.5. On suppose que (7.19) admet un unique minimiseur noté u. On suppose
que pour tout n ∈ N∗ , un est un point de minimum du problème (7.21) sur RN . Alors
lim un = u.
n→∞
Lemme 7.5. Soit (vn ) une suite à valeurs dans RN , telle que de toute suite extraite,
on puisse extraire une sous-suite convergente vers une même limite v ∈ RN . Alors toute
la suite (vn ) est convergente, et de limite v.
Soit (unk ) une sous-suite de (un ). Comme unk est bornée dans RN , on peut à nouveau
en extraire une sous-suite convergente, vers un v ∈ RN . (On note encore unk cette sous-
suite.) Tout d’abord
J(unk ) ≤ J(u),
J(v) ≤ J(u).
1 C
ϕ(unk ) ≤ (J(u) − J(unk )) ≤ .
nk nk
Ainsi, à la limite,
ϕ(v) ≤ 0.
72
On en déduit donc que ϕ(v) = 0, c’est-à-dire v ∈ K. Comme J(v) ≤ J(u), par unicité
du minimiseur pour le problème (7.19), cela implique que v = u. D’apres le lemme
précédent, on conclut donc que tout la suite (un ) converge vers u.
Estimation d’erreur. On peut dans certains cas estimer l’erreur faite sur le problème
pénalisé, en fonction de n ; par exemple, dans le cas de contraintes d’égalité K :=
{v, Cv−f = 0}. On considère ϕ(v) = 12 kCv−f k2 ; un calcul donne ∇ϕ(v) = C T (Cv−f ).
Supposons J différentiable. La condition d’optimalité pour un s’écrit alors
∇J(un ) + nC T (Cun − f ) = 0.
73