You are on page 1of 60

DPARTEMENT STPI

3ME ANNE MIC


Introduction lOptimisation Numrique
Frdric de Gournay & Aude Rondepierre
Table des matires
Introduction 5
Rappels de topologie dans R
n
7
0.1 Ouverts et ferms de R
n
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
0.2 Notions de minimum, maximum, inmum, supremum . . . . . . . . . . . . . . . 8
1 Formulation et analyse dun problme doptimisation 13
1.1 Description dun problme doptimisation . . . . . . . . . . . . . . . . . . . . . 13
1.2 Condition sufsante dexistence dun point minimum . . . . . . . . . . . . . . . 15
1.2.1 Contre-exemples lexistence dun minimum . . . . . . . . . . . . . . . 15
1.2.2 Cas o lensemble X des contraintes est born . . . . . . . . . . . . . . 16
1.2.3 Cas o lensemble X des contraintes est non born . . . . . . . . . . . . 16
1.2.4 Cas des contraintes dgalit . . . . . . . . . . . . . . . . . . . . . . . . 18
1.3 Convexit et optimisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.3.1 Rsultats dexistence et dunicit en optimisation convexe . . . . . . . . 20
1.3.2 Caractrisation diffrentielle de la convexit . . . . . . . . . . . . . . . . 21
2 Optimisation numrique sans contraintes 23
2.1 Conditions doptimalit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.2 Gnralits sur les algorithmes de descente . . . . . . . . . . . . . . . . . . . . 25
2.2.1 Notion de direction de descente . . . . . . . . . . . . . . . . . . . . . . 25
2.2.2 Algorithme de descente modle . . . . . . . . . . . . . . . . . . . . . . 28
2.2.3 Convergence et vitesse de convergence . . . . . . . . . . . . . . . . . . 29
2.3 Premiers algorithmes de descente . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.3.1 Algorithmes de gradient pas xe/pas optimal . . . . . . . . . . . . . . 31
2.3.2 Mthode de Newton locale . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.3.3 Mthode de Gauss-Newton . . . . . . . . . . . . . . . . . . . . . . . . . 37
3 Introduction loptimisation sous contraintes 39
3.1 Conditions doptimalit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.1.1 Cas dune contrainte dingalit . . . . . . . . . . . . . . . . . . . . . . 40
3.1.2 Cas de contraintes dingalit et dgalit . . . . . . . . . . . . . . . . . 43
3.2 Lagrangien du problme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
3.3 Algorithme du gradient projet . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
3
4 TABLE DES MATIRES
A Complments 55
A.1 Rappels de calcul diffrentiel . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
A.2 Quelques dmonstrations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
A.2.1 Hessienne et convexit : dmonstration du Thorme 1.5 . . . . . . . . . 57
A.2.2 Mthode de Gauss-Newton pour la rsolution des problmes de moindres
carrs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Introduction
Loptimisation et particulirement loptimisation numrique a connu un essort important ces
dernires annes avec lavnement de lordinateur. Elle est souvent lultime tape de lanalyse
numrique o, aprs avoir tudi un phnomne physique, lavoir mis en quation, avoir tudi
ces quations et avoir montr que lon pouvait calculer les solutions avec un ordinateur, on com-
mence optimiser le systme en changeant certains paramtres pour changer la solution dans un
sens dsir.
Nous ne nous intresserons quaux notions de bases de loptimisation et pour se xer les
ides, imaginons-nous un tudiant qui doit rviser ses examens. Nous supposerons quil a trois
matires passer et quil rvise x
i
heures sur la i
eme
matire, pour i = 1, 2, 3. Nous supposons
que la note n
i
de la matire i dpend uniquement du temps pass x
i
. Pour se xer les ides
supposons que
n
1
(x
1
) = 3x
1
, n
2
(x
2
) = x
2
2
, n
3
(x
3
) = x
3
(100 x
3
)
Cet tudiant veut passer au plus 10 heures au total rviser et veut optimiser sa moyenne totale.
On note x = (x
1
, x
2
, x
3
) le triplet qui correspond aux heures passes travailler, et on note
f(x) =
1
3
(3x
1
+x
2
2
+x
3
(100 x
3
)) sa moyenne. Daprs les donnes du problme x ne peut pas
prendre nimporte quelles valeurs relles, on dit que le problme est "contraint". En effet x doit
appartenir X, lensemble des contraintes :
X = (x
1
, x
2
, x
3
) R
3
tel que i, x
i
0 et x
1
+ x
2
+ x
3
10
On note le problme de ltudiant
max
xX
f(x)
En gnralisant notre exemple la modlisation mathmatique de problme doptimisation,
on distingue trois tapes :
1. Identication des variables de dcisions (dsignes par le vecteur x R
3
dans notre
exemple) : ce sont les paramtres sur lesquels lutilisateur peut agir pour faire voluer
le systme considr.
2. Dnition dune fonction cot ou fonction objectif (la fonction f dans notre exemple)
permettant dvaluer ltat du systme (ex : rendement, performance,. . . ).
3. Description des contraintes imposes aux variables de dcision (lensemble X dans notre
exemple).
Le problme doptimisation consiste alors dterminer les variables de dcision conduisant aux
meilleures conditions de fonctionnement du systme (ce qui revient minimiser ou maximiser
5
6 TABLE DES MATIRES
la fonction cot), tout en respectant les contraintes dutilisation dnies ltape 3.
Dans ce cours, nous nous intressons aux mthodes numriques pour loptimisation continue,
diffrentiable et non linaire.
Le premier chapitre traite des notions mathmatiques fondamentales matriser avant de
sintresser la rsolution proprement parler de tout problme doptimisation : la description
mathmatique dun problme doptimisation, la notion de solution locale et quelques lments
danalyse convexe.
Dans les chapitres suivants, nous entrons dans le vif du sujet en nous intressant la r-
solution de problmes doptimisation sans contrainte (cf chapitre 2), puis avec contraintes (cf
chapitre 3). Pour chacun de ces problmes nous tenterons de rpondre aux questions suivantes :
1. Existe-t-il une solution (mme locale) du problme considr ? si oui, a-t-on unicit ?
2. Comment la caractriser ? (cf conditions doptimalit).
3. Comment la calculer ? Quel type dalgorithme choisir ?
Rappels de topologie dans R
n
0.1 Ouverts et ferms de R
n
Soient x R
n
et r > 0. On appelle boule ouverte de centre x et de rayon r lensemble :
B(x, r) =
_
y R
n
tel que |y x| < r
_
.
Dnition 0.1 (Ouvert, ferm) Un ensemble O de R
n
est dit ouvert si pour tout x O, il existe
une boule ouverte B(x, r) de centre x et de rayon r incluse dans O. Un ensemble F de R
n
est
dit ferm si son complmentaire est un ouvert.
Exemple 0.1.1 1. Les ensembles et R
n
sont ouverts, mais ils sont aussi ferms car leur
complmentaires respectifs sont R
n
et . Ce sont dailleurs les seuls exemples densemble
la fois ouverts et ferms.
2. Les boules ouvertes sont des ouverts.
3. Les intervalles de la forme ]a, b[, a < b +, sont des ouverts de R.
4. Les intervalles de la forme [a, b], < a < b < +, sont des ferms de R.
Linterprtationi gomtrique de "ouvert" et "ferm" est quun esnsemble est ouvert si et seule-
ment si il ne contient aucun point de sa frontire. Un ensemble est ferm si et seulement si il
contient tous les points de sa frontire. Les ensembles qui contiennent une partie de leur fron-
tire mais pas lintgralit ne sont ni ouverts ni ferms.
Aller plus loin : Il faut faire un peu attention la dnition que lon vient de donner des ensembles ouverts et
ferms car il en existe dautres, qui donnent des ouverts et des ferms diffrents. Se donner une dnition des
ouverts sappelle, en mathmatique, "se donner une topologie". La dnition que nous avons donn est la dnition
classique qui construit la "topologie usuelle".
Proposition 0.1 (Caractrisation des ferms) Soit F R
n
. F est un ferm si et seulement
si toute suite convergente dlments de F a sa limite dans F.
Preuve. () Supposons F ferm et notons O son complmentaire. Soit (x
n
)
nN
une suite dl-
ments de F qui converge vers x R
n
. Supposons par labsurde que x O.
7
8 0.2. Notions de minimum, maximum, inmum, supremum
Comme O est un ouvert de R
n
, il existe r > 0 tel que : B(x, r) O. Or (x
n
)
nN
converge
vers x do :
N N, n N, |x
n
x| < r,
Ceci implique x
n
B(x, r) O et donc x
n
O partir dun certain rang, ce qui est impossible
car x
n
F quel que soit n N par dnition.
() Supposons que toute suite convergente de F admet une limite dans F. Montrons que O,
le complmentaire de F, est ouvert.
Par labsurde, supposons que O ne soit pas ouvert, i.e. : il existe x O tel que : r >
0, B(x, r) , O. Autrement dit :
r > 0 B(x, r) F ,= .
Pour r =
1
n+1
, nous construisons une suite (x
n
)
nN
dlments de F telle que
x
n
B(x,
1
n + 1
).
Ceci peut tre traduit en |x
n
x|
1
n+1
. Il suit que x
n
converge vers x. Comme F est ferm,
x F, ce qui est impossible car x O.
0.2 Notions de minimum, maximum, inmum, supremum
On distinguera les notions de minimum et de maximum des notions dinmum et de su-
premum. Ces notions sont des prrequis pour les dmonstrations des rsultats dexistence et
dunicit dextrema dune fonction donne.
Dnition 0.2 (Minorant/Majorant) Soit E un sous-ensemble de R, m R , +
est un minorant de E ssi m est infrieur ou gal tous les lments de E tandis que M
R, + est un majorant de E ssi il est suprieur ou gal tous les lments de E. Ainsi
(m minorant x E m x) et (M majorant x E M x).
Si E admet un minorant (resp. majorant) ni alors il est dit minor (resp. major).
Dnition 0.3 (Inmum/Supremum) Soit E R. Linmum inf(E) R , + de E
est le plus grand des minorants. Le supremum sup(E) R , + de E est le plus petit
des majorants. On les note respectivement
inf(E) = inf
xE
(x) et sup(E) = sup
xE
(x).
Aller plus loin : La dnition 0.3 nest pas une vraie dnition. En effet rien ne prouve que lon puisse trouver
"le plus grand des minorants". Nous sommes en train dessayer dexpliquer ce quest le plus grand ou le plus petit
lment dun ensemble et nous utilisons pour cela le fait que lon puisse trouver "le plus grand des minorants". Si
on rchit bien, nous sommes en train de tourner en rond. Le fait quil existe toujours un inmum et un supremum
TABLE DES MATIRES 9
sappelle l"axiome de la borne suprieure" et vient de la construction de R (qui est compltement hors programme).
Cest dailleurs lunique proprit qui fait la spcicit de R. En effet les autres proprits importantes de R sont
quil est un corps archimdien (caractristiques quil partage avec Q).
Par dnition, on autorise les minorants ou les majorants, tre innis. Se pose la question
de savoir si linmum (resp. le supremum) est inni. La rponse cette question est donne par
la proposition suivante.
Proposition 0.2 Soit E R, alors inf(E) R (resp. sup(E) R) si et seulement si E est
minor (resp. major).
Nous avons parl dinmum et de supremum, nous les relions maintenant aux dnitions
classiques de minimum et de maximum.
Dnition 0.4 (Minimum, maximum) Soit E R. Linmum de E est appel minimum ssi
inf(E) E. Le supremum de E est appel maximum ssi sup(E) E. Dans ce cas, on les note
respectivement min(E) et max(E).
Exemple 0.2.1 Si on se donne E =]0, 1], alors lensemble des minorants de E est [, 0] et
lensemble des majorants est [1, +]. On en dduit que le linmum vaut 0 et le supremum vaut
1. Comme 1 appartient E alors cest aussi le maximum de E. Cependant 0 nappartient pas
E et donc E na pas de minimum. On dit souvent que linmum de E nest pas atteint.
Nous dmontrons maintenant une proprit importante des ferms.
Proposition 0.3 Soit F R un ferm non vide de R.
Si F est minor alors F admet un minimum et ainsi inf(F) = min(F) R.
Si F est major alors F admet un maximum et ainsi sup(F) = max(F) R.
Pour dmontrer la proposition 0.3, on introduit le concept de suites minimisante et de suite maxi-
misante :
Dnition-Proposition 0.1 (Suite minimisante/Suite maximisante) Soit E R, E ,= .
Il existe (x
n
)
n
et (y
n
)
n
deux suites dlments de E telle que
lim
n+
x
n
= inf(E), lim
n+
y
n
= sup(E).
La suite (x
n
)
n
est appele "suite minimisante" et (y
n
)
n
une "suite maximisante" de E.
Preuve. Comme E ,= , ncessairement : inf(E) R et sup(E) R +. 1er
cas : inf (E) R. Comme inf(E) est le plus grand des minorants de E, alors quel que soit
n N, inf(E) + 1/n nest pas un minorant de E. Il existe donc un lment x
n
E tel que
x
n
inf(E) + 1/n.
Cette suite (x
n
) dlments de E vrie inf(E) x
n
inf(E) + 1/n et admet donc inf(E)
comme limite.
10 0.2. Notions de minimum, maximum, inmum, supremum
2nd cas : inf (E) = . E admet seulement comme minorant. Par consquent pour tout
n N, il existe x
n
E tel que
x
n
n.
La suite x
n
ainsi construite converge vers . La construction de la suite (y
n
)
n
est similaire
celle de (x
n
)
n
et est laisse en exercice.
Preuve de la proposition 0.3. Soit (x
n
)
n
une suite minimisante
lim
n+
x
n
= inf(F).
Comme F est ferm, inf(F) F et, par consquent, inf(F) est le minimum de F. La dmons-
tration concernant le maximum est similaire et est laisse en exercice.
Thorme 0.1 (Bolzano-Weierstrass) De toute suite borne (x
n
)
n
de R
p
, il existe une sous-
suite qui converge.
Preuve. Soit (x
n
)
n
, une suite borne de R
p
, il nous faut montrer quil existe une fonction
: N N strictement croissante telle que la suite (x
(n)
)
n
converge vers une limite que nous
noterons x

. Nous posons (0) = 0 et nous construisons par le procd rcurent suivant :


Comme (x
n
)
n
est borne, il existe un A > 0 tel que pour tout n, x
n
soit inclus dans le pav
[A, A]
p
. Nous coupons chaque intervalle [A, A] en deux, ce qui donne deux intervalles [A, 0]
et [0, A] de sorte que le pav [A, A]
p
soit dcoup en 2
p
pavs de taille A. Comme il existe une
innit dlments de la suite, il y a forcment un de ces 2
p
petits pavs qui contient une innit
de terme. On choisit un tel pav et on prend (1) comme le plus petit des indices j tel que x
j
appartienne ce pav et soit strictement plus grand que (0). On continue construire ainsi de
suite en coupant chaque pav en 2
p
pavs plus petits chaque fois et en choississant un petit pav
qui contient une innit de termes de la suite. On a ainsi construit telle que est strictement
croissante et que pour tout n
0
N il existe un pav de taille 2
n
0
A tel que pour tout n > n
0
,
x
(n)
soit contenu dans ce pav. Une telle suite est dite : suite de Cauchy. Pour prouver que cette
suite converge, notons x
i
la i
eme
coordonne de x et introduisons les suites (y
n
)
n
et (z
n
)
n
dnies
par :
y
i
n
= sup
kn
x
i
(k)
et z
n
= inf
kn
x
i
(k)
La suite (y
i
n
)
n
(resp. (z
i
n
)
n
) est dcroissante (resp. croissante) et minore (resp majore) donc
converge vers une limite note x
i
+
(resp x
i

). Or comme pour tout n n


0
la suite x
(n)
est
contenue dans un pav de taille 2
n
0
A, alors
n
0
0, n > n
0
, [y
i
n
z
i
n
[ 2
n
0
A
En faisant tendre dabord n vers +puis ensuite n
0
vers +, on voit que les limites x
i
+
et x
i

sont gales. On utilise ensuite le thorme des gendarmes avec


n N, z
i
n
x
i
(n)
y
i
n
,
pour montrer que la suite numrique x
i
(n)
tend bien vers une limite pour tout i et par ainsi la
suite de vecteurs x
(n)
tend bien vers une limite.
TABLE DES MATIRES 11
Aller plus loin : Quand vous verrez les notions de compact, complet, suite de Cauchy, de liminf et de limsup, il
est utile de revoir la dmonstration du thorme 0.1 qui montre que les ensemble ferms borns de R
n
sont compact.
Par exemple, on dmontre dans la dmonstration du dessus que les suites de Cauchy convergent (ce qui veut dire
que R
n
est complet). La dmonstration de ce fait est base sur lintroduction des suites x
+
n
et x

n
qui sont la base
de la notion de liminf et limsup et sur laxiome de la borne suprieure. Cest pourquoi, il est sans doute important
de comprendre cette dmonstration qui est essentiellement la mme que dautres plus complexes que vous verrez
plus tard.
Chapitre 1
Formulation et analyse dun problme
doptimisation
1.1 Description dun problme doptimisation
Comme nous lavons vu en introduction, tous les problmes doptimisation que nous consi-
drerons peuvent tre exprims de la faon suivante :
min
xR
n
f(x) sous la contrainte : x X. (1.1)
o X est un sous-ensemble de R
n
. On pourra crire aussi
min
xX
f(x)
Les variables x = (x
1
, . . . , x
n
) sont appeles "variables doptimisation" ou variables de d-
cision. La fonction f : X R
n
R est appele fonction objectif et lensemble X ensemble des
contraintes. Le problme (1.1) est dit ralisable si X ,= .
Rsoudre le problme (1.1) revient chercher des points de minimum local (ou global, cest
encore mieux !) au sens de la dnition suivante :
Dnition 1.1 (Minimum local/Minimum global) Soit f : X R
n
R une fonction.
x R
n
est un point de minimum local de f sur X si
x X et r > 0 [ y X B(x, r), f(x) f(y). (1.2)
On dit alors que f(x) est un minimum local de f sur X.
x R
n
est un point de minimum global de f sur X ssi
x X et y X, f(x) f(y). (1.3)
On dit alors que f(x) est un minimum global de f sur X.
13
14 1.1. Description dun problme doptimisation
Maximum global
Minimum local
Maximum local
FIGURE 1.1 Exemples de minima et maxima locaux et globaux pour la fonction f : x
3e
x
2
+ e
(x3)
2
.
10 8 6 4 2 0 2 4 6 8 10
1.0
0.8
0.6
0.4
0.2
0.0
0.2
0.4
0.6
0.8
1.0
50 40 30 20 10 0 10 20 30 40 50
50
40
30
20
10
0
10
20
30
40
50
Pour la fonction f : x cos(x), il existe une
innit de minima et maxima globaux.
Pour la fonction f : x x cos(x), il existe
une innit de minima et maxima locaux mais
aucun minimum ou maximum global.
Les notions de maximum local et global sont dnies de faon tout fait similaire. En fait,
on peut facilement dmontrer que les problmes (avec ou sans contraintes) :
min
xX
f(x) et max
xX
f(x)
sont quivalents dans le sens o ils ont mme ensemble de solutions et :
min
xX
f(x) = max
xX
f(x) ou encore max
xX
f(x) = min
xX
f(x).
Ainsi la recherche dun maximum pouvant se ramener la recherche dun minimum, nous ne nous
intresserons qu la recherche du minimum.
Chapitre 1. Formulation et analyse dun problme doptimisation 15
Aller plus loin : On peut se demander sil existe dautres problmes doptimisation que nous naborderons pas.
Lhypothse simplicatrice la plus forte que nous ayons fait est de supposer que X soit un sous-ensemble de R
n
,
donc un sous-ensemble dun espace vectoriel ni. En fait beaucoup de problmes doptimisation se posent dans
des espaces de dimension inni. Par exemple le problme des godsiques dans S
2
(la sphre de dimension 2, par
exemple la terre) revient trouver le chemin le plus court du point A vers le point B, cest--dire de minimiser
la longueur des fonctions de [0, 1] dans S
2
qui valent A en 0 et B en 1. Lensemble sur lequel on minimise est
lensemble des fonctions de [0, 1] dans R
3
qui est un ensemble vectoriel de dimension 3 et les contraintes sont
le point de dpart, le point darrive et le fait que tous les chemins doivent tre inscrits sur la terre S
2
. Quand
les problmes son poss sur des espaces vectoriels de dimension innie, des problmatiques se posent que nous
naborderons pas ici.
Considrons nouveau le problme (1.1) mais dun point de vue ensembliste : rsoudre
min
xR
n
f(x) sous la contrainte : x X.
revient chercher le minimum de limage directe f(X) = f(x) : x X de X par f.
Daprs les rsultats du paragraphe 0.2, on sait quil existe un inmum ni ds que f(X)
est minor, et que cet inmum est un minimum (i.e. est atteint) si f(X) est ferm. Il sagit donc
maintenant dtudier les proprits respectives de f et X et den dduire des rsultats dexistence
de solution du problme (1.1).
1.2 Condition sufsante dexistence dun point minimum
Dans ce paragraphe, nous nous intressons aux proprits de la fonction objectif f et de len-
semble des contraintes X an den dduire des conditions sufsantes dexistence dun minimum
de lensemble f(X), i.e. dune solution du problme (1.1).
Il existe principalement deux thormes donnant des conditions sufsantes dexistence dun
point de minimum : le premier dans le cas o lensemble des contraintes est ferm born, le
second pour un ensemble de contraintes ferm mais non born.
1.2.1 Contre-exemples lexistence dun minimum
Avant de sintresser au thorme qui garantit lexistence dun minimum, il est bon de
connatre des exemples typiques o il ny a pas de minimum. Le problme min
X
f(x) na pas de
solution dans les cas suivants :
Fonction non continue : Si X = R et f(x) = x
2
+ 1 sur R

et f(0) = 3, linmum de f
est 1 mais f(0) = 3, il nexiste pas de points de x X tels que f(x) = 1.
Ensemble non ferm : Si X =]0, 1] et f(x) = x
2
+ 1. Linmum de f sur X vaut 1 mais
le point x = 0 nappartient pas X.
Minimum linni : Si X = R et f(x) = x
2
, alors linmum de f vaut et est
atteint en x = . Cependant il ny a pas de minimum.
16 1.2. Condition sufsante dexistence dun point minimum
1.2.2 Cas o lensemble X des contraintes est born
Nous nous intressons dabord au cas o X est born. Le premier rsultat est que limage
dun ferm born par une application continue est un ferm born : si f est continue et X ferm
born, alors f(X) est ferm born.
Thorme 1.1 (Thorme de Weierstrass) Soit X un ensemble ferm born non vide de
R
n
et f : X R
n
R une application continue sur X.
Alors f est borne et atteint ses bornes. Autrement dit, il existe x X point de minimum
global de f sur X i.e. :
y X, f(x) f(y).
De la mme faon, il existe un point de maximum global de f sur X.
Preuve. Soit (x
n
)
nN
une suite minimisante dans f(X), i.e. dlments de X telle que
lim
n+
f(x
n
) = inf f(X).
Comme X est ferm born, il existe une sous-suite extraite (x
(n)
)
nN
qui converge vers un
x X. Cette suite extraite vrie
x
(n)
x et f(x
(n)
) inf
yX
f(y).
Or f est continue, do par unicit de la limite, il suit
f(x) = inf
yX
f(y) avec x X,
et f ralise son minimum sur X.
1.2.3 Cas o lensemble X des contraintes est non born
Dans cette section nous nous intressons au cas o lensemble des contraintes est non born.
Cest le cas tout particulirement o il ny a pas de contraintes, cest--dire X = R
n
. Lide
gnrale est que le seul problme est quil existe un inmum mais quil nest pas atteint car
celui-ci se trouve linni. Une fonction qui illustre ce problme est la fonction f : x x
1
qui
admet 0 comme inmum sur R
+
pour x = +.
Nous introduisons la notion de coercivit dune fonction qui empche que linmumse trouve
linni.
Dnition 1.2 Une application f : X R
n
R est dite innie linni (ou coercive) sur X
ssi
A R, R > 0 [ x X, [|x| R = f(x) A] (1.4)
On note : lim
x +
x X
f(x) = +.
Chapitre 1. Formulation et analyse dun problme doptimisation 17
Exemple 1.2.1 1. f
1
(x) = |x|
2
est coercive.
2. f
2
(x) = x
2
1
x
2
2
nest pas coercive : en effet, la suite de terme gnral x
n
= (0, n), n N,
est telle que : lim
n+
|x
n
| = lim
n+
n = +mais : lim
n+
f
2
(x
n
) = lim
n+
n
2
= .
Exemple de fonction coercive (f
1
) Exemple de fonction non coercive (f
2
).
Comme la dnition 1.2 nest pas facile manier en pratique, on utilise souvent la proposition
suivante, qui est une hypothse un peu plus forte, pour montrer que la fonction est innie
linni.
Proposition 1.1 Soit f : X R
n
R une application et g : R R vriant
f(x) g(|x|) avec lim
t+
g(t) = +.
Alors, f est innie linni.
Preuve. Comme g tend vers +en +
A R, R > 0 [ t R t R = g(t) A.
Avec t = |x| et comme g(x) f(|x|), nous obtenons (1.4).
Thorme 1.2 Soient F un ferm non vide de R
n
et f : F R une application continue
innie linni sur F. Alors f admet un point de minimum global sur F, i.e. il existe x F
tel que
y F, f(y) f(x).
Preuve. Lide de la preuve est dutiliser le thorme de Weierstrass (Thorme 1.1) en mi-
nimisant f sur un ferm born K que nous construirons et en montrant que minimiser f sur
K revient minimiser f sur F. (i) Dnissons un K ferm born. Comme F ,= , on a :
18 1.2. Condition sufsante dexistence dun point minimum
inf(F) R . Soit A R, tel que A > inf
yF
f(y). Comme f est innie linni, il existe
R
1
> 0 tel que pour y R
n
|y| > R
1
= f(y) > A.
De plus F est non vide : il existe donc R
2
> 0 tel que
B(0, R
2
) F ,= .
Choisissons R = max(R
1
, R
2
)
|y| > R = f(y) > A et B(0, R) F ,= .
On introduit : K = B(0, R) F non vide, born (|y| R) et ferm (intersection de 2 ferms).
(ii) Minimisons f sur K. Comme f est continue et K est ferm born, f atteint son minimum
sur K, i.e. :
x K [ f(x) = inf
yK
f(y), (1.5)
(iii) Montrons que minimiser sur K revient minimiser sur F. Dune part, nous avons
inf
yF
f(y) = inf
_
inf
yK
f(y); inf
yF\K
f(y)
_
.
Dautre part, pour z F et z / K, on a :|z| R, soit :
f(z) > A > inf
yF
f(y)
Par consquent : inf
yF
f(y) < inf
yF\K
f(y). Il suit
inf
yF
f(y) = inf
yK
f(y)
et daprs (1.5) il existe x K F [ f(x) = inf
yF
f(y).
1.2.4 Cas des contraintes dgalit
Lhypothse X ferm est assez difcile montrer en pratique sauf dans le cas(frquent en
optimisation) o X est dni par des galits et des ingalits :
X = x R
n
: h(x) = 0, g(x) 0
o h : R
n
R
p
et g : R
n
R
q
. Lcriture h(x) = 0 reprsente en fait p contraintes dgalit :
h
i
(x) = 0, i = 1, . . . , p,
et de mme g(x) 0 reprsente q contraintes dingalit :
g
i
(x) 0, i = 1, . . . , q.
Dans le cas o les fonctions contraintes g et h sont continues, on a le rsultat suivant :
Chapitre 1. Formulation et analyse dun problme doptimisation 19
Proposition 1.2 Soient g : R
n
R
q
et h : R
n
R
p
deux fonctions continues.
X = x R
n
: h(x) = 0, g(x) 0 est un ensemble ferm de R
n
.
X = x R
n
: g(x) < 0 est un ouvert de R
n
.
Ainsi , on peut conclure directement que si f, g et h sont continues et soit
lensemble des contraintes X = x R
n
: h(x) = 0, g(x) 0 est born,
Ou f est innie linni,
alors le problme :
min
xR
n
f(x)
s.t. : g(x) 0, h(x) = 0.
admet au moins une solution globale. Autrement dit, f admet au moins un point de minimum
global sur X.
Aller plus loin : Si lensemble des contraintes X nest plus un sous-ensemble de R
n
mais un sous-ensemble dun
espace vectoriel mtrique complet (un Banach) de dimension innie alors le thorme de Weierstrass nest plus vrai.
Il faut dans ce cas une hypothse supplmentaire pour assurer lexistence dun minimum. Il faut en effet supposer
que X est compact ce qui assure que de toute suite on peut extraire une sous-suite qui converge et utiliser le mme
genre dargument que la dmonstration du thorme de Weierstrass.
Aller plus loin : La condition de continuit de f nest pas ncessaire, on peut la remplaer dans la preuve du
thorme de Weierstrass par la condition plus faible de "semi-continuit infrieure" qui dit essentiellement que
f(limx
n
) limf(x
n
), alors que la continuit impose lgalit.
Aller plus loin : En dimension innie, toutes les normes ne sont pas quivalentes, donc on peut choisir les normes
que lon veut. Tout le jeu en dimension innie est de trouver des normes (en fait on na besoin que dune topologie)
pour que X soit compact tout en ayant f semi-continue infrieure.
1.3 Convexit et optimisation
Les rsultats prcdents ne nous donnent aucune information quant lunicit ventuelle
dun point de minimum global, ni sur le lien entre possibles minima locaux et minimum global.
Nous introduirons donc la notion de convexit qui permet de garantir que les minimums locaux
sont en fait des minimums globaux. Attention la notion de convexit est sufsante pour garantir
que nous avons trouv un minimum global mais aucunement ncessaire.
Les problmes dont les donnes sont convexes, constituent une classe importante en optimi-
sation, car frquemment rencontrs dans les applications et la base de nombreuses mthodes
dveloppes pour des problmes plus gnraux.
Dnition 1.3 (Ensemble convexe) Soit X R
n
. Lensemble X est convexe ssi
(x, y) X
2
, ]0, 1[, x + (1 )y X,
cest--dire, si x et y sont deux lments de X alors le segment qui relie x y est inclus dans X.
20 1.3. Convexit et optimisation
Exemple 1.3.1 R
n
est convexe.
Les boules ouvertes et les boules fermes sont convexes
Dnition 1.4 (Fonction convexe/strictement convexe) Soit X R
n
convexe et f : X R.
f est convexe ssi
(x, y) X
2
, ]0, 1[, f(x + (1 )y) f(x) + (1 )f(y).
f est strictement convexe ssi
(x, y) X
2
, x ,= y, ]0, 1[, f(x + (1 )y) < f(x) + (1 )f(y).
On interprte gomtriquement le fait quune fonction soit convexe en disant quelle est situe
sous ses cordes.
La convexit est une notion globale, qui va donner des informations sur le caractre global
dun point de minimum.
Dnition 1.5 (Problme convexe) Soit X R
n
convexe et f : X R une fonction.
Le problme min
xX
f(x) est dit convexe si et seulement si la fonction objectif f est convexe et
si lensemble X des contraintes est convexe.
Si f est strictement convexe et lensemble X est convexe, alors le problme min
xX
f(x) est dit
strictement convexe.
1.3.1 Rsultats dexistence et dunicit en optimisation convexe
Thorme 1.3 (Condition sufsante doptimalit globale) Soient X R
n
un ensemble
convexe et f : X R une fonction. Soit x

un point de minimum local de f sur X.


i. Si f est convexe, alors x

est un point de minimum global de f sur X.


ii. Si f est strictement convexe, alors x

est lunique point de minimum global de f sur


X.
Preuve. i. Par labsurde : soit x

X un point qui ralise un minimum local de f sur X, i.e. :


r > 0 [ y X avec |y x

| < r, f(y) f(x

). (1.6)
tel que x

ne ralise pas un minimum global, i.e. quil existe un point x


+
de X tel que :
f(x
+
) < f(x

). (1.7)
On introduit le point : y
r/2
= x
+
+ (1 )x

, avec : =
r
2|x
+
x

|
]0, 1[.
Chapitre 1. Formulation et analyse dun problme doptimisation 21
Daprs les hypothses (1.6) et (1.7), on a : x
+
/ B(x

, r), ce qui implique : r < |x


+
x

|,
et : ]0, 1[. Par convexit de X, le point y
r/2
appartient donc au segment [x
+
, x

] lui-mme
contenu dans X. De plus :
f(y
r/2
) f(x
+
) + (1 )f(x

) par convexit de f
< f(x

) daprs (1.6).
Ceci contredit (1.6) car : |y
r/2
x

| =
r
2
. Le point y
r/2
appartient donc galement la boule
ouverte B(x

, r) i.e. : f(y
r/2
) f(x

).
ii. Raisonnons nouveau par labsurde. Soient x
1
et x
2
deux lments de X ralisant le
minimum de f. Par convexit de X,
x
1
+ x
2
2
X, et comme f est strictement convexe, il suit
f
_
x
1
+ x
2
2
_
<
1
2
f(x
1
) +
1
2
f(x
2
)
<
1
2
min
yX
f(y) +
1
2
min
yX
f(y) = min
yX
f(y),
Ce qui est impossible.
Exemple 1.3.2 Nous allons vrier que chaque hypothse du thorme est ncessaire.
Soit la fonction f : x x
1
, montrer quelle est convexe. Si X = [1, 2] [3, 4]. Montrer
que X nest pas convexe mais est ferm born. Montrer que 2 est un point de minimum
local mais nest pas un point de minimum global.
Soit la fonction f : x x cos(x) et X = [0, 8]. Montrer que X est convexe mais pas f et
montrer quil existe des points de minimum locaux qui ne sont pas des minimums globaux.
En conclusion, nous obtenons le rsultat suivant :
Corollaire 1.1 Soit X R
n
un ensemble ferm non vide, et convexe. Soit f : X R suppose
continue et strictement convexe . Si une des deux conditions suivantes est vrie :
soit X est born,
soit f est innie linni
Alors f admet un unique point de minimum global sur X.
1.3.2 Caractrisation diffrentielle de la convexit
Dans le cas o la fonction f est diffrentiable ( lordre 1 ou lordre 2) en tout point, on sait
caractriser la convexit dune fonction via son gradient ou sa hessienne. Ces caractrisations
sont la plupart du temps plus faciles manipuler que la dnition 1.4.
Thorme 1.4 Soit X R
n
convexe et f : X R diffrentiable. La fonction f est convexe
ssi :
(x, y) X
2
, f(y) f(x) +f(x), y x, (1.8)
ou de faon quivalente, ssi :
(x, y) X
2
, f(y) f(x), y x 0. (1.9)
22 1.3. Convexit et optimisation
Preuve. Soit (x, y) X
2
. Par convexit de f, on a donc pour tout t ]0, 1[ :
f((1 t)x + ty) (1 t)f(x) + tf(y) = f(x) + t(f(y) f(x)),
soit :
f(x + t(y x)) f(x)
t
f(y) f(x). En passant la limite pour t 0
+
, il suit (1.8).
Rciproquement, on applique (1.8) tx + (1 t)y et x, puis tx + (1 t)y et y, do :
f(x) f(tx + (1 t)y) + (1 t) f(tx + (1 t)y), y x
f(y) f(tx + (1 t)y) t f(tx + (1 t)y), y x
En combinant ces deux ingalits, on obtient : tf(x) + (1 t)f(y) f(tx + (1 t)y), et donc
la convexit de f.
En changeant les rles de x et y dans (1.8), puis en sommant les deux ingalits obtenues, on
dmontre sans problme que (1.8) implique (1.9). Pour montrer la rciproque, on introduit :
: t [0, 1] tf(x) + (1 t)f(y) f(tx + (1 t)y),
et on montre que est positive sur [0, 1]. Cette dmonstration est laisse en exercice (on pourra
tracer le tableau de variation de sur [0, 1]).
Si de plus, la fonction f est deux fois diffrentiable, on a alors une caractrisation dordre
deux de la convexit via la Hessienne. On rappelle (thorme de Schwarz) que si f : R
n
R
est de classe (
2
, alors sa matrice hessienne H[f](x) est symtrique.
Thorme 1.5 Soit f : R
n
R de classe (
2
. On note H[f](x) sa hessienne en x.
Si H[f](x) est semidnie positive pour tout x R
n
, alors f est convexe.
Si H[f](x) est dnie positive pour tout x R
n
, alors f est strictement convexe.
La preuve de ce rsultat est hors programme et faite en annexe.
Chapitre 2
Optimisation numrique sans contraintes
Nous nous intressons dans ce chapitre la conception de mthodes numriques pour la
recherche des points x R
n
qui ralisent le minimum dune fonction f : R
n
R :
(P) min
xR
n
f(x),
o f est suppose au moins diffrentiable. On parle doptimisation sans contrainte.
2.1 Conditions doptimalit
Nous commenons dans cette section tudier ce que lon appelle les conditions doptimalit
qui sont des caractrisations des points de minimum.
Thorme 2.1 (Conditions ncessaires doptimalit locale) Soit f : R
n
R une appli-
cation diffrentiable. Si x

R
n
ralise un minimum local (resp. maximum local) de f,
alors :
f(x

) = 0 (CN doptimalit du 1
er
ordre)
Si, de plus, f est deux fois diffrentiable dans un voisinage ouvert de x

, alors :
H[f](x

) est semidnie positive (CN doptimalit du 2


nd
ordre)
(resp. H[f](x

) est semidnie ngative)


Preuve. Soit h R
n
, h ,= 0. Pour s assez petit, on dnit : s R f(x

+ sh). admet
donc un minimum local en s = 0, do :

(0) = f(x

h = 0. Ceci tant vrai pour tout h, on


en dduit : f(x

) = 0.
Supposons maintenant f deux fois diffrentiable. On crit le dveloppement de Taylor dordre
2 de la fonction . Comme f(x

) = 0, on obtient :
f(x

+ sh) f(x

) =
s
2
2
h

H[f](x

)h + o(s
2
).
23
24 2.1. Conditions doptimalit
soit :
s
2
2
h

H[f](x

)h+o(s
2
) 0 puisque x

est un point de minimum local de f. Aprs division


par s
2
, on fait tendre s vers 0 et on obtient : h

H[f](x

)h 0.
La condition doptimalit du premier ordre montre que les points o le gradient sannule sont
des points importants. Ils sont appels points critiques et sont dnis comme suit :
Dnition 2.1 (Points critiques) Soit f : R
n
R une application diffrentiable. Tout point
x R
n
vriant :
f(x) = 0,
est appel point critique (ou point stationnaire) de f.
Mais attention ! Les conditions du thorme 2.1 ne sont que ncessaires : tout point o le
gradient est nul nest pas ncessairement un extremum. Les exemples suivants montrent les dif-
frents types de cas qui peuvent apparatre.
Exemple 2.1.1 La fonction x x
2
admet un point critique en x = 0 qui est aussi mini-
mum local.
La fonction x x
2
admet un point critique en x = 0 qui est aussi maximum local.
La fonction x x
3
admet un point critique en x = 0 qui nest ni minimum local ni
maximum local, cest ici un point dinexion.
La fonction x x
2
y
2
admet un point critique en (x, y) = (0, 0) qui nest ni minimum
local ni maximum local, cest ici un point-selle.
Cependant, la condition du premier ordre joue un rle central en optimisation numrique : elle
permet de slectionner un certain nombre de points candidats tre des extrema locaux, mme
sil faut vrier que les points critiques que lon a slectionn sont bien des minima locaux. Par
exemple dans lexemple suivant
Exemple 2.1.2 Trouver le(s) minima globaux de f : x ax
2
+ bx + c avec a, b, c R.
Si a > 0 alors la fonction est innie linni et admet un minimum global. Si a < 0 la fonction
vaut en et si a = 0 et b ,= 0 la fonction vaut en +ou selon le signe de b et
dans tous ces cas nadmet pas de minimum global. Si a = 0 et b = 0, la fonction est constante
et tout point est minimum global. Nous nous intressons donc au seul cas a > 0. Lquation des
points critiques est 2ax+b = 0, il existe un seul point critique x = b/(2a) et dans le cas a > 0
nous savons quil existe un minimum global qui est donc point critique donc cest b/(2a).
Nous avons vu qutre un point xe est une condition ncessaire pour tre un extremum, nous
voyons maintenant une condition sufsante.
Thorme 2.2 (Condition sufsante doptimalit locale) Soit O un ouvert de R
n
. Soit f :
R
n
R une application suppose de classe C
2
sur O. Si x O vrie :
f( x) = 0 et H[f]( x) symtrique, dnie positive (resp. dnie ngative)
Alors x est un point de minimum local (resp. maximum local) de f.
Chapitre 2. Optimisation numrique sans contraintes 25
Remarque 2.1 Dun point de vue gomtrique, la condition du second ordre : "H[f]( x) dnie
positive", revient dire que f est localement convexe en x

, i.e. convexe dans un voisinage ouvert


de x

. En pratique, elle est difcile vrier systmatiquement car elle ncessite de calculer les
drives secondes et dtudier les valeurs propres de la matrice hessienne.
Exemple 2.1.3 Lexemple qui suit montre que la condition du Thorme 2.2 est sufsante mais
non ncessaire :
Montrer que 0 est un minimum global de f : x x
4
, que cest bien un point critique de f mais
que la Hessienne de f en ce point est semidnie positive mais nest pas dnie positive (elle est
nulle).
Si de plus la fonctionnelle optimiser est convexe ou strictement convexe, en appliquant le
Thorme 1.3 au convexe X = R
n
, on obtient :
Thorme 2.3 (Condition Sufsante doptimalit globale) Soit f : R
n
R une application
diffrentiable et x un point critique de f.
i. Si f est convexe, alors x est un point de minimum global de f.
ii. Si f est strictement convexe, alors x est lunique point de minimum global de f.
2.2 Gnralits sur les algorithmes de descente
Nous allons maintenant nous intresser aux algorithmes de calcul de minimum et plus par-
ticulirement aux algorithmes de descente. Partant dun point x
0
arbitrairement choisi, un algo-
rithme de descente va chercher gnrer une suite ditrs (x
k
)
kN
telle que :
k N, f(x
k+1
) f(x
k
).
Commenons par dnir plus prcisment la notion de descente.
2.2.1 Notion de direction de descente
Le gradient joue un rle essentiel en optimisation. Dans le cadre des mthodes doptimisation,
il sera galement important danalyser le comportement de la fonction objectif dans certaines
directions. Commenons pour cela par rappeler le concept de drive directionnelle :
Dnition 2.2 Soit f : R
n
R une application continue. Soit x R
n
et d R
n
.
La drive directionnelle de f en x dans la direction d est dnie par :
df(x; d) := lim
t0
+
f(x + td) f(x)
t
,
si cette limite existe.
Proposition 2.1 Si f est diffrentiable en un point x R
n
, alors pour tout d ,= 0, f admet une
drive dans la direction d en x et :
df(x; d) = Df(x)(d) = f(x)

d.
26 2.2. Gnralits sur les algorithmes de descente
On rappelle que la rciproque est fausse ! La drivabilit selon tout vecteur en x nimplique
pas ncessairement la diffrentiabilit de f en x.
La drive directionnelle donne des informations sur la pente de la fonction dans la direction
d, tout comme la drive donne des informations sur la pente des fonctions une variable. En
particulier,
si df(x; d) > 0 alors f est croissante dans la direction d.
si df(x; d) < 0 alors f est dcroissante dans la direction d.
Dans ce dernier cas, on dira que d est une direction de descente de f.
Dnition 2.3 (Direction de descente) Soient f : R
n
R et x R
n
. Le vecteur d R
n
est
une direction de descente pour f partir du point x si t f(x + td) est dcroissante en t = 0,
cest--dire sil existe > 0 tel que :
t ]0, ], f(x + td) < f(x). (2.1)
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0
0
2
4
6
8
10
12
14
16
18
20
d
1
= f(1, 1)
d
3
=
_
1
1
_
d
2
=
_
1
3
_

(
t
)
=
f
(
x
+
t
d
i
)
FIGURE 2.1 Allure de la fonction f : x
1
2
x
2
1
+ 2x
2
2
au point x = (1, 1)

dans plusieurs
directions.
Proposition 2.2 Soient f : R
n
R diffrentiable et x R
n
tel que : f(x) ,= 0. Soit
d R
n
un veteur
Si f(x)

d < 0 alors d est une direction de descente.


Si d est une direction de descente alors f(x)

d 0.
Chapitre 2. Optimisation numrique sans contraintes 27
Preuve de la proposition 2.2. Soit d telle f(x)

d < 0. On crit le dveloppement de Taylor-


Young de t f(x + td) : pour t assez petit,
f(x + td) = f(x) + tf(x)

d + t(t), avec : (t)


t0
0.
Comme f(x)

d > 0, il existe > 0 tel que si [t[ , alors [(t)[ < f(x)

d. Do :
t ]0, ], f(x + td) f(x) = t
_
f(x)

d + (t)

< 0.
Ce qui montre la premire partie de la proposition Soit maintenant d une direction de descente,
supposons que f(x)

d > 0, en appliquant le mme raisonnement que ci-dessus, on montre


quil existe un tel que pour tout t tel que t , on a (t) > f(x)

d et ainsi f(x + td)


f(x) > 0, ce qui contredit le fait que d soit une direction de descente.
Parmi toutes les directions de descente existantes en un point x donn, il est naturel de sint-
resser celle o la pente est la plus forte. Un rsultat remarquable montre que cette direction est
donne par le gradient (ou plus exactement son oppos). Pour le dmontrer, il suft de comparer
les drives directionnelles :
Thorme 2.4 (Direction de plus forte descente) Soit f : R
n
R une fonction diffrentiable.
Soit x R
n
. Alors pour toute direction d de norme constante gale |d| = |f(x)|, on a :
(f(x))

f(x) d

f(x), (2.2)
Ainsi, la direction d

= f(x) est appele "direction de plus forte descente".


Preuve. Soit d R
n
une direction quelconque de norme : |d| = |f(x)|. On a alors :
(d)

f(x) | d||f(x)| daprs lingalit de Cauchy-Schwarz


|f(x)|
2
= f(x)

f(x) puisque |d| = |f(x)|.


On en dduit donc (2.2).
Sans surprise, si loppos du gradient correspond la plus forte descente, le gradient corres-
pond, lui, la plus forte pente de monte :
Corollaire 2.1 Le vecteur f(x) est appel direction de plus forte pente de f au point x R
n
et si d

= f(x) alors
(d

f(x) = max
dR
n
(d

f(x)) sous la contrainte |d| = |f(x)|


Exercice 2.2.1 Retrouver les conditions ncessaires doptimalit du thorme 2.1 en utilisant la
notion de direction de descente.
28 2.2. Gnralits sur les algorithmes de descente
2.2.2 Algorithme de descente modle
Partant dun point x
0
arbitrairement choisi, un algorithme de descente va chercher gnrer
une suite ditrs (x
k
)
kN
telle que :
k N, f(x
k+1
) f(x
k
)
Daprs la caractrisation de la descente (cf proposition 2.2), il sagit donc chaque itration k,
de trouver un point x
k+1
dans une direction d vriant : f(x
k
)

d < 0.
Le schma gnral dun algorithme de descente est le suivant :
ALGORITHME DE DESCENTE MODLE.
Donnes: f : R
n
R suppose au moins diffrentiable, x
0
point initial arbitrairement
choisi
Sortie: une approximation de la solution du problme : min
xR
n
f(x)
1. k := 0
2. Tant que test de convergence non satisfait,
(a) Trouver une direction de descente d
k
telle que : f(x
k
)

d
k
< 0.
(b) Recherche linaire : Choisir un pas s
k
> 0 faire dans la direction d
k
et tel que :
f(x
k
+ s
k
d
k
) < f(x
k
).
(c) Mise jour : x
k+1
= x
k
+ s
k
d
k
; k := k + 1 ;
3. Retourner x
k
.
Oracle/Boite noire. Pour obtenir le prochain itr, lalgorithme aura besoin dinformations sur
la fonction objectif f : la valeur numrique de f en un point donn x, et souvent galement du
gradient f(x). Ces informations sont fournies en boite noire, i.e. par un sous-programme
indpendant de lalgorithme doptimisation choisi : routine de calcul du gradient par diffrences
nies lorsque celui-ci nest pas calculable explicitement, ou simulateur renvoyant les valeurs
numriques f(x) et f(x) sans formule mathmatique explicite par exemple.
Test de convergence/Test darrt. Soit x

un point de minimum local du critre f optimiser.


Supposons que lon choisisse comme test darrt dans lalgorithme de descente modle, le critre
idal : x
k
= x

. Dans un monde idal (i.e. en supposant tous les calculs exacts et la capacit
de calcul illimite), soit lalgorithme sarrte aprs un nombre ni ditrations, soit il construit
(thoriquement) une suite innie x
1
, x
2
, . . . , x
k
, . . . de points de R
n
qui converge vers x

.
En pratique, un test darrt devra tre choisi pour garantir que lalgorithme sarrte toujours
aprs un nombre ni ditrations et que le dernier point calcul soit sufsamment proche de x

.
Soit > 0 la prcision demande. Plusieurs critres sont notre disposition : tout dabord (et
cest le plus naturel), un critre doptimalit bas sur les conditions ncessaires doptimalit du
premier ordre prsentes dans la section 2.1 : on teste si
|f(x
k
)| < , (2.3)
Chapitre 2. Optimisation numrique sans contraintes 29
auquel cas lalgorithme sarrte et fournit litr courant x
k
comme solution.
En pratique, le test doptimalit nest pas toujours satisfait et on devra faire appel dautres
critres (fonds sur lexprience du numrique) :
Stagnation de la solution : |x
k+1
x
k
| < |x
k
|.
Stagnation de la valeur courante : [f(x
k+1
) f(x
k
)[ < [f(x
k
)[.
Nombre ditrations dpassant un seuil x lavance : k < IterMax.
et gnralement une combinaison de ces critres :
Critre darrt = Test doptimalit satisfait
OU (Stagnation de la valeur courante & Stagnation de la solution)
OU Nombre maximum ditrations autorises dpass.
En pratique, on prfrera travailler avec les erreurs relatives plutt quavec les erreurs abso-
lues, trop dpendantes de lchelle.
2.2.3 Convergence et vitesse de convergence
tudier la convergence dun algorithme, cest tudier la convergence de la suite des itrs
gnrs par lalgorithme. Un algorithme de descente selon le modle prcdent, est dit convergent
si la suite de ses itrs (x
k
)
kN
converge vers un point limite x

, solution du problme :
min
xR
n
f(x).
De plus, la convergence est dite locale si elle na lieu que pour des points initiaux x
0
dans un
voisinage de x

. Sinon elle est dite globale.


En pratique, le but dun algorithme doptimisation ne sera que de trouver un point critique
(i.e. un point vriant la condition doptimalit du premier ordre : f(x

) = 0). On introduit
alors la notion de convergence globale dun algorithme doptimisation :
Dnition 2.4 Soit un algorithme itratif qui gnre une suite (x
k
)
kN
dans R
n
an de rsoudre
le problme :
min
xR
n
f(x),
o f : R
n
R est une application de classe C
1
. Lalgorithme est dit globalement convergent si
quel que soit le point initial x
0
R
n
,
lim
k+
|f(x
k
)| = 0.
Cette proprit garantit que le critre darrt |f(x
k
)| ? sera satisfait partir dun certain
rang quelle que soit la prcision > 0 demande.
Remarque 2.2 Attention, la notion de convergence que lon a vu ne suppose pas que lalgo-
rithme converge vers un minimum, mme un minimum local. Prenons par exemple la fonction
30 2.2. Gnralits sur les algorithmes de descente
f : (x, y) x
2
y
2
+y
4
qui est innie linni. Son minimum global est obtenu pour les points
(x, y) = (0, 1/

2). on peut montrer cependant que lalgorithme qui consiste poser


d
k
= (2x
k
, 2y
k
3y
3
k
), s
k
<< 1
est bien un algorithme de descente. Il converge au sens de la dnition 2.4, cependant, si on part
du point (1, 0), lalgorithme converge vers le point (0, 0) qui est bien un point de gradient nul
mais pas un point de minimum (mme local).
Il est bien entendu trs important de garantir la convergence dun algorithme sous certaines
hypothses, mais la vitesse de convergence et la complexit sont galement des facteurs prendre
en compte lors de la conception ou de lutilisation dun algorithme ; en effet, on a tout intrt ce
que la mthode choisie soit la fois rapide, prcise et stable. Pour cela, on introduit les notions
de vitesse (ou taux) de convergence qui mesurent lvolution de lerreur commise |x
k
x

|.
Dnition 2.5 Soit (x
k
)
kN
une suite ditrs gnres par un algorithme convergent donn.
On note x

la limite de la suite (x
k
)
kN
et on suppose : k N, x
k
,= x

(sinon lalgorithme
convergerait en un nombre ni ditrations). La convergence de lalgorithme est dite :
linaire si lerreur e
k
= |x
k
x

| dcrot linairement i.e. sil existe ]0, 1[ tel que :


lim
k+
|x
k+1
x

|
|x
k
x

|
= .
superlinaire si
lim
k+
|x
k+1
x

|
|x
k
x

|
= 0.
dordre p sil existe 0 tel que :
lim
k+
|x
k+1
x

|
|x
k
x

|
p
= .
En particulier, si p = 2, la convergence est dite quadratique (grosso modo partir dun
certain rang, le nombre de chiffres signicatifs exacts double chaque itration).
Bien entendu, on a intrt ce que la convergence dun algorithme soit la plus leve possible
an de converger vers la solution en un minimum ditrations pour une prcision donne.
Exemple 2.2.1 La fonction f : x x
3
6x + 1 admet un minimum local sur R en x

2.
Partant dune approximation grossire x
0
= 2 de x

, comparons plusieurs algorithmes de calcul


approch de x

avec 5 chiffres signicatifs exacts :


Soit lalgorithme x
k+1
= x
k
(x
2
k
2). Vrier que pour 0 < <
1

2
, cet algorithme
converge linairement avec un taux = [2

2 1[.
Chapitre 2. Optimisation numrique sans contraintes 31

2
3
0.5
1
3
1
2

2
= [2

2 1[ 0.885 0.414 0.057 0


Nb ditrations 105 15 6 4
Nb chiffres sign. exacts 5 5 7 10
Si =
1
2

2
, la convergence est dite superlinaire et cest la meilleure convergence pos-
sible de lalgorithme en question.
Soit lalgorithme : x
k+1
=
1
2
(x
k
+
2
x
k
) dont la convergence est quadratique. On peut
montrer que 4 itrations sufsent pour calculer une valeur approche de x

avec 5 chiffres
signicatifs exacts ; en ralit, on a mme 11 chiffres signicatifs exacts ds la quatrime
itration.
2.3 Premiers algorithmes de descente
Un algorithme de descente est dtermin par les stratgies de choix des directions de descente
successives, puis par le pas qui sera effectu dans la direction choisie. Concentrons nous dans
cette partie sur le choix de la direction de descente : lide est de remplacer f par un modle local
plus simple, dont la minimisation nous donnera une direction de descente de f.
2.3.1 Algorithmes de gradient pas xe/pas optimal
Soit x
k
R
n
litr courant. tant donns la valeur f(x
k
) et le gradient f(x
k
) (notre
oracle), on remplace f au voisinage de x
k
par son dveloppement de Taylor au premier ordre :
f(x
k
+ d) f(x
k
) +f(x
k
)

d.
On voudrait que la drive directionnelle f(x
k
)

d soit la plus petite possible dans un voisinage


de d = 0. On cherche donc rsoudre :
min
dR
n
f(x
k
)

d s.c. |d| = |f(x


k
)|,
dont la solution nous est donne par le thorme 2.4, par :
d
k
= f(x
k
).
Le choix de la direction de plus forte descente dnit une famille dalgorithmes appels algo-
rithmes de descente de gradient dont le schma est le suivant :
ALGORITHME DE DESCENTE DE GRADIENT.
Donnes: f, x
0
premire approximation de la solution cherche, > 0 prcision demande
Sortie: une approximation x

de la solution de : f(x) = 0
32 2.3. Premiers algorithmes de descente
1. k := 0 ;
2. Tant que critre darrt non satisfait,
(a) Direction de descente : d
k
= f(x
k
).
(b) Recherche linaire : trouver un pas s
k
tel que : f(x
k
+ s
k
d
k
) < f(x
k
).
(c) x
k+1
= x
k
s
k
f(x
k
) ; k := k + 1 ;
3. Retourner x
k
.
Il reste maintenant dnir une stratgie de recherche linaire pour le calcul du pas. Nous
tudions ici en premire approche une mthode pas optimal, puis une pas xe.
Mthode de plus profonde descente (Steepest descent)
Une ide naturelle consiste suivre la direction de plus forte descente et faire un pas qui
rende la fonction minimiser la plus petite possible dans cette direction. Cette mthode est
appele mthode de gradient pas optimal ou encore mthode de plus profonde descente.
Ltape 2(a) de lalgorithme de descente de gradient est alors remplace par :
RECHERCHE LINAIRE EXACTE.
2. (a) Calculer un pas optimal s
k
solution de : min
s>0
f(x
k
+ sd
k
).
La mthode de plus profonde descente est une sorte didalisation : dune part, nous ne savons
pas en pratique calculer de faon exacte un point minimum s
k
de lobjectif dans une direction
donne et le problme nest en gnral pas trivial. Dautre part, la rsolution du problme de
minimisation unidimensionnel de ltape 2 (a), mme de faon approche, cote cher en temps
de calcul. Pour ces raisons, on peut lui prfrer parfois lalgorithme de gradient pas constant
(ou pas xe).
Algorithme de gradient pas xe
Lide est trs simple : on impose une fois pour toutes la taille du pas effectu selon la direction
de descente calcule chaque itration. Les itrations 2 (b) et (c) de lalgorithme de descente de
gradient sont alors remplaces par :
x
k+1
= x
k
sf(x
k
).
La question est alors : comment choisir un pas qui garantisse la convergence de lalgorithme ?
Quelques observations numriques. On souhaite minimiser f : (x, y) R
2

1
2
x
2
+
7
2
y
2
,
en utilisant les algorithmes de descente de gradient pas xe et pas optimal.
Commenons par analyser le problme de minimisation : dune part, la fonction f est deux fois
diffrentiable sur R
2
et strictement convexe. Dautre part, le point (0, 0) vrie les conditions
sufsantes doptimalit du thorme 2.3. Donc (0, 0) est lunique point de minimum global de f.
Soit X
k
= (x
k
, y
k
) R
2
litr courant tel que : f(x
k
, y
k
) ,= 0. Calculons par la mthode
de plus profonde descente, litr suivant :
Chapitre 2. Optimisation numrique sans contraintes 33
FIGURE 2.2 Itrations des algos de gradient pas xe et optimal, gnres partir du point
(7, 1.5).
Direction de plus forte descente : d
k
= f(X
k
) =
_
x
k
7y
k
_
.
Calcul du pas optimal s
k
solution, si elle existe, du problme une dimension :
min
s>0
f(X
k
+ sd
k
) = min
s>0
1
2
x
2
k
(1 s)
2
+
7
2
y
2
k
(1 7s)
2
.
La solution se calcule de faon immdiate : s
k
= (x
2
k
+ 7
2
y
2
k
)/(x
2
k
+ 7
3
y
2
k
).
A chaque itration, la mthode gnre donc le point : x
k+1
= x
k
+
x
2
k
+ 7
2
y
2
k
x
2
k
+ 7
3
y
2
k
_
x
k
7y
k
_
.
Appliquons maintenant ces deux mthodes partir du point x
0
= (7, 1.5). Leurs comporte-
ments sont illustrs par la gure 2.2 et les itrations sont dcrites dans les tableaux 2.1 et 2.2
Cet exemple met en vidence la lenteur de la mthode de plus profonde descente, caractrise
par le comportement en zigzag des itrs. Essayons de comprendre do vient ce phnomne.
A litration k + 1, lalgorithme de plus profonde descente minimise : s R f(x
k

sf(x
k
)). Lobjectif f tant suppos diffrentiable, la fonction est drivable sur R de drive :

(s) = f(x
k
), f(x
k
sf(x
k
)).
Soit s
k
le pas optimal calcul ; ncessairement s
k
vrie :

(s
k
) = 0, soit :
f(x
k
), f(x
k
s
k
f(x
k
)) = 0.
Le point x
k+1
= x
k
s
k
f(x
k
) vrie donc : f(x
k
), f(x
k+1
) = 0.
Deux directions de descente successives calcules par lalgorithme de plus profonde des-
cente sont orthogonales ce que traduisent les zigzags des itrs, observs sur la gure 2.2.
34 2.3. Premiers algorithmes de descente
k f(x
k
, y
k
) |f(x
k
, y
k
)|
2
s
k
x
k
y
k
0 32.375 10.547512 7 1.5
1 16.925373 7.9786973 0.1940299 5.641791 0.5373134
2 8.8484403 6.5973298 0.3513514 3.6595401 0.7841872
3 4.6258889 3.5448339 0.1940299 2.9494801 0.2809029
4 2.4183752 3.4490276 0.3513514 1.9131763 0.4099663
5 1.2643059 1.8532089 0.1940299 1.541963 0.1468536
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
40 1.751e10 2.9343653 10
5
0.3513514 1.63 10
5
0.35 10
5
41 9.155e 11 1.5725775 10
5
0.1940299 1.31 10
5
0.12 10
5
42 4.786e 11 1.536522 10
5
0.3513514 0.85 10
5
0.18 10
5
43 2.502e 11 0.8292768 10
5
0.1940299 0.69 10
5
0.07 10
5
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
76 1.268e 20 0.2523886 10
9
0.3513514 0.14 10
9
0.03 10
9
77 6.630e 21 0.1303840 10
9
0.1940299 0.11 10
9
0.01 10
9
78 3.466e 21 0.1303840 10
9
0.3513514 0.72 10
10
0.16 10
10
79 1.812e 21 0.6989278 10
10
0.1940299 0.58 10
10
0.05 10
10
TABLE 2.1 Itrations de la mthode de plus profonde descente. Le critre doptimalit est
satisfait en 43 itrations pour une prcision = 10
5
et en 79 itrations si = 10
10
.
pas 0.325 0.25 0.125 0.05 0.01
Nb ditrations DV 49 101 263 1340
TABLE 2.2 Nombres ditrations de lalgorithme de gradient pas xe pour approcher lunique
argument minimum de f 10
5
prs, en fonction du pas choisi - Point initial : x
0
= (7, 1.5).
Enn, les donnes du tableau 2.2 illustrent limportance du choix du pas dans lalgorithme
de pas xe : un pas bien choisi donne des rsultats comparables ceux obtenus par la plus
profonde descente, un pas plus petit attnue les zigzag des itrs mais augmente signicativement
le nombre ditrations et enn, un pas trop grand fait diverger la mthode.
2.3.2 Mthode de Newton locale
Pour construire les mthodes de gradient, nous avons remplac f par son approximation
linaire au voisinage de litr courant. Nous avons vu que ces mthodes ne sont pas trs perfor-
mantes, en partie parce quelles ne tiennent pas compte de la courbure (ou de la Hessienne) qui
est une information de second ordre.
Principe Supposons maintenant que f est de classe C
2
et remplaons f au voisinage de litr
courant x
k
par son dveloppement de Taylor de second ordre :
f(y) q(y) = f(x
k
) +f(x
k
), y x
k
+
1
2
H[f](x
k
)(y x
k
), y x
k
,
Chapitre 2. Optimisation numrique sans contraintes 35
o la valeur f(x
k
), le gradient f(x
k
) et la matrice hessienne H[f](x
k
) sont donns par notre
oracle (boite noire).
On choisit alors comme point x
k+1
le minimum de la quadratique q lorsquil existe et est
unique, ce qui nest le cas que si H[f](x
k
) est dnie positive. Or le minimum de q est ralis
par x
k+1
solution de : q(x
k+1
) = 0, soit :
f(x
k
) + H[f](x
k
)(x
k+1
x
k
) = 0,
ou encore, en supposant que H[f](x
k
) est dnie positive :
x
k+1
= x
k
H[f](x
k
)
1
f(x
k
). (2.4)
On reconnat dans la formule (2.4) les itrations de la mthode de Newton vue en cours
danalyse numrique, applique ici la rsolution de lquation : f(x) = 0. La mthode ne
doit cependant jamais tre applique en utilisant une inversion de la matrice Hessienne (qui peut
tre de trs grande taille et mal conditionne) mais plutt en utilisant :
x
k+1
= x
k
+ d
k
o d
k
est lunique solution du systme linaire :
H[f](x
k
)d
k
= f(x
k
).
d
k
est appele direction de Newton.
Cette mthode est bien dnie si chaque itration, la matrice hessienne H[f](x
k
) est dnie
positive : ceci est vrai en particulier au voisinage de la solution x

cherche si on suppose que


H[f](x

) est dnie positive (par continuit de H[f]).


Algorithme
MTHODE DE NEWTON LOCALE.
Donnes: f : R
n
R de classe C
2
, x
0
premire approximation de la solution cherche,
> 0 prcision demande
Sortie: une approximation x

de la solution
1. k := 0 ;
2. Tant que |f(x
k
)| > ,
(a) Calculer d
k
solution du systme : H[f](x
k
)d
k
= f(x
k
) ;
(b) x
k+1
= x
k
+ d
k
;
(c) k := k + 1 ;
3. Retourner x
k
;
Remarque 2.3 1. La mthode de Newton est un algorithme de descente pas xe gal 1.
36 2.3. Premiers algorithmes de descente
2. Si la fonctionnelle f est quadratique, strictement convexe, alors lalgorithme converge en
une itration.
Exercice 2.3.1 Dmontrer les deux assertions de la remarque 2.3.
Convergence de la mthode de Newton locale
Lalgorithme hrite des proprits de lalgorithme de Newton vu en cours danalyse num-
rique pour la rsolution des quations non-linaires :
Proposition 2.3 Soit f de classe C
3
et x

un point de minimum local de f. On suppose en outre


que la matrice Hessienne H[f](x

) est dnie positive.


1. Il existe un voisinage 1

de x

tel que si x
0
1

, alors la suite des itrs (x


k
)
kN
gnrs
partir de x
0
par la mthode de Newton locale, converge vers x

.
2. La convergence est au moins quadratique.
La mthode peut diverger si le point initial nest pas sufsamment proche dun point de mi-
nimum local, et elle nest pas dnie si les matrices H[f](x
k
) ne sont pas dnies positives.
Utilise dans le cadre de loptimisation, la mthode de Newton locale prsente un autre incon-
vnient : la solution identie la n de lalgorithme nest pas forcment un point de minimum
local, mais uniquement un point critique de f.
2.3.3 Mthode de Gauss-Newton
Si maintenant F dsigne une application de R
n
dans R
m
, avec par exemple m > n, le sys-
tme dquations F(x) = 0 na gnralement pas de solutions. Le problme de moindres carrs
associ F consiste rechercher x

tel que
r(x

) = min
_
r(x) =
1
2
m

i=1
F
i
(x)
2
=
1
2
|F(x)|
2
2
, x R
n
_
. (2.5)
De tels problmes se rencontrent frquemment dans le cadre de lidentication de paramtres.
Les variables x
i
sont les n paramtres dun modle physique non linaire. On effectue m > n
mesures, et on cherche les x
i
qui permettent dajuster au mieux ce modle aux mesures.
La solution de (2.5) est caractrise par r(x

) = 0. Pour appliquer la mthode de Newton,


on doit rsoudre des systmes de la forme
H
r
(x) d = r(x)
_
J
F
(x)
T
J
F
(x) +
m

i=1
F
i
(x) H
F
i
(x)
_
d = J
F
(x)
T
F(x), (2.6)
o J
F
(x) = F(x)

= [F
1
(x) . . . F
m
(x)]

dsigne la matrice Jacobienne de F en x. Les


calculs permettant dobtenir la relation (2.6) sont dtaills en annexe.
Chapitre 2. Optimisation numrique sans contraintes 37
La matrice Hessienne H
r
(x) de r(x) a une expression assez complique. Cependant le terme
m

i=1
F
i
(x) H
F
i
(x) est tel que lorsque le rsidu |F(x)| devient petit, cest--dire lorsque lon se
rapproche de la solution, il devient lui mme ngligeable.
La mthode de Gauss-Newton consiste remplacer (2.6) par :
J
F
(x)

J
F
(x)d = J
F
(x)

F(x). (2.7)
Une autre faon de voir les choses consiste remplacer dans lexpression de r, la fonction F
par une approximation linaire au voisinage du point courant x. Autrement dit, on sintresse au
problme approch :
min
y
r(y) =
1
2
|F(x) + J
F
(x)(y x)|
2
.
La solution de ce problme est caractrise par la relation : r(y) = 0 i.e. :
J
F
(x)

(F(x) + J
F
(x)(y x)) = 0 soit : J
F
(x)

J
F
(x)(y x) = J
F
(x)

F(x)
On retrouve ainsi la direction de Gauss-Newton trouve prcdemment.
ALGORITHME DE GAUSS-NEWTON.
Donnes: F fonction diffrentiable, x
0
point initial, > 0 prcision demande
Sortie: une approximation de la solution du problme de moindres carrs :
min
xR
n
r(x) =
1
2
F(x)

F(x).
1. k := 0 ;
2. Tant que ,
(a) Calcul dune direction de recherche : calculer d
k+1
solution de :
J
F
(x
k
)
T
J
F
(x
k
) d = J
F
(x
k
)

F(x
k
).
(b) x
k+1
= x
k
+ d
k+1
;
(c) k := k + 1 ;
3. Retourner s
k
.
Application aux moindres carrs linaires. Dans le cas o la fonction F est linaire, i.e. :
F(x) = Ax b, avec A M
n,p
(R),
on obtient : J
F
(x) = A, et lquation de Gauss-Newton (2.7) devient : A

Ad
k+1
= A

(Ax
k

b). Comme d
k+1
= x
k+1
x
k
, on obtient :
A

Ax
k+1
= A

b
38 2.3. Premiers algorithmes de descente
et ceci quel que soit x
k
. On reconnat ici le systme dquations normales du problme de
moindres carrs linaire :
min
xR
n
1
2
|Ax b|
2
2
, (2.8)
On rappelle que daprs le thorme 2.4 du cours danalyse numrique, x

est solution du pro-


blme (2.8) si et seulement si x

vrie les quations normales : A

Ax = A

b. De plus si A est
de rang plein, x

est lunique solution de (2.8).


Ceci signie donc que la mthode de Gauss-Newton identie la solution en une seule itration
lorsque la fonction F est linaire.
Exercice 2.3.2 Soit F : R
3
R
n
une application dnie par :
F
i
(x
0
, x
1
, x
2
) = c
i
x
0
x
1
e
x
2
t
i
, i = 1, . . . , n.
1. Calculer F
i
et H[F
i
].
2. En dduire : J
r
et H
r
o r =
1
2
F(x)

F(x).
Chapitre 3
Introduction loptimisation sous
contraintes
Ce chapitre est une courte introduction loptimisation sous contraintes. On sintresse la
rsolution de problmes doptimisation de la forme :
min
xX
f(x), (3.1)
o X est un sous-ensemble non vide de R
n
dni par des contraintes dgalit ou dingalits de
fonctions :
X = x R
n
: h(x) = 0, g(x) 0 (3.2)
o h : R
n
R
p
et g : R
n
R
q
sont continues. Ici les critures h(x) = 0 et g(x) 0
signient :
_
i = 1, . . . , p, h
i
(x) = 0
j = 1, . . . , q, g
j
(x) 0.
Lensemble X est appel ensemble ou domaine des contraintes. Tout point x R
n
vriant :
x X, est appel point admissible du problme (3.1).
Daprs les rsultats du chapitre 1, rappelons que si g et h sont continues alors X est un
ensemble ferm (mais non ncessairement born). Dans la suite nous travaillerons toujours avec
un problme sous "forme standard" cest--dire un problme crit sous la forme suivante :
(P) min
xR
n
f(x)
s.c. h
i
(x) = 0, i = 1, . . . , p
g
j
(x) 0, j = 1, . . . , q.
Par exemple, la forme standard du problme
max
(x,y)R
2
f(x, y) s.t. : x
2
+ y
2
1 et x + y = 5,
est :
min
(x,y)R
2
f(x, y) s.t. : 1 x
2
y
2
0 et x + y 5 = 0.
39
40 3.1. Conditions doptimalit
Proposition 3.1 Le problme (P), crit sous forme standard, est dit convexe si h est afne, g
convexe et si la fonction objectif f est convexe sur X.
Concernant les contraintes dingalits, nous aurons galement besoin de la notion de contrainte
active :
Dnition 3.1 (Contraintes actives/inactives) Une contrainte dingalit g
j
(x) 0, j 1, . . . , q,
est dite active (ou "sature") en x si :
g
j
( x) = 0,
et inactive en x si :
g
j
( x) < 0.
Ce qui rend la notion de contrainte active attrayante, cest le fait quau point de minimum lo-
cal x

X, les contraintes actives peuvent tre remplaces par des contraintes dgalit et les
contraintes inactives peuvent tre ignores. Si lintrt de cette simplication reste essentielle-
ment thorique (on ne connat pas x

lavance !), un intrt pratique est que si lon trouve un


point de minimum local du problme sans contrainte, cest galement un point de minimum local
du problme contraint. En un point x X, lensemble des contraintes actives est lensemble des
j tel que g
j
(x) = 0.
Remarquons galement que si en un point x X, la contrainte g
k
(x) nest pas active, alors
g
k
(x) < 0 et ainsi, par continuit de g, pour tout x

dans un voisinage de x, on aura encore


g
k
(x

) < 0. Donc localement, on est sr que la contrainte est vrie.


3.1 Conditions doptimalit
Les conditions doptimalit dans le cadre de loptimisation sous contrainte sont de la mme
forme que les conditions dEuler du premier ordre vues au Chapitre 2, savoir des conditions sur
le gradient de f aux minima locaux. Il est noter que la condition dEuler (le gradient sannule
au points minima) nest plus valable telle quelle, comme le montre lexemple suivant :
Exemple 3.1.1 Soit le problme :
Minimiser f(x) = x
2
, x R
n
, sous la contrainte : x 1.
La solution de ce problme est : x = 1, et pourtant : f

(1) = 2 ,= 0.
3.1.1 Cas dune contrainte dingalit
Le cas le plus simple que nous saurons prouver (et le seul que nous ayons le temps daborder
en profondeur dans le cadre de notre cours) est celui dune seule contrainte dingalit, cest--
dire un problme du type
min
g(x)0
f(x),
o f et g sont des fonctions de R
n
dans R. La condition doptimalit du premier ordre est :
Chapitre 3. Introduction loptimisation sous contraintes 41
Thorme 3.1 Si f et g sont des fonctions diffrentiables de R
n
dans R et si x

est un minimum
local de f sur lensemble X = x[g(x) 0, si on suppose de plus que soit g(x

) ,= 0 soit g
est non-active en x

. Alors il existe 0 tel que


f(x

) + g(x

) = 0 et g(x

) = 0 (3.3)
De plus si f et g sont convexes alors lquation (3.3) est sufsante pour assurer que x

est un
minimum local (et mme global) de f sur lensemble X.
On remarque que lon a besoin dune hypothse qui est g(x

) ,= 0 quand g est active en x

,
cette hypothse sappelle "qualication des contraintes".
Exemple 3.1.2 Dans lexemple ci-dessous, le point x
1
est minimum sans contrainte et le mini-
mum global sous contrainte est le point x
3
.
Preuve. La preuve se fait dans le mme ordre dide que dans le cas sans contraintes, cest--
dire que les directions admissibles ne peuvent pas tre directions de descente. On rappelle quune
42 3.1. Conditions doptimalit
direction d est "admissible en un point x" si il existe > 0 tel que pour tout dans [0, [, x +d
appartient X. De mme une direction est dite "de descente au point x" si il existe > 0 tel
que pour tout dans ]0, [, f(x +d) < f(x). Dire que x

est un minimum local sur X entrane


donc quune direction admissible ne peut pas tre une direction de descente. On rappelle que si
d est telle que f(x), d < 0, alors un DL de Taylor montre que d est une direction de descente
au point x.
Nous pouvons distinguer deux cas, si la contrainte est active ou non en x

. Premirement,
si la contrainte est non-active alors g(x

) < 0 et, par continuit, toute direction est direction


admissible et en particulier ne peut tre direction de descente. On a ainsi f(x

), d 0 pour
tout d R
n
et on peut conclure comme dans le cas sans contrainte que f(x

) = 0.
Si la contrainte est active en x

, alors g(x

) = 0, toutes les directions ne sont pas forcment


admissibles (effectivement pour certaines directions, g peut devenir positif), cependant tous les d
tel que g(x

), d < 0 sont directions admissibles (un DL de Taylor montre que dans ces direc-
tions, g devient strictement ngatif). Comme une direction admissible ne peut pas tre direction
de descente, on en conclut que
f(x

), d 0 pour tout d tel que g(x

), d < 0
Un lemme fameux (Lemme de Farkas) permet de conclure que si g(x

) ,= 0, alors f(x

) doit
tre colinaire et de sens oppos g, ce qui se traduit par lexistence dun 0 tel que :
f(x

) + g(x

) = 0.
Le lemme de Farkas peut tre dmontr graphiquement assez simplement en dimension 2. Si
on suppose (quitte effectuer un changement de coordonnes) que g(x

) est le vecteur (1, 0),


alors lensemble des directions admissibles est lensemble des directions pointant vers le demi-
plan x < 0 et si toutes ces directions doivent avoir un produit scalaire positif avec f(x

), on
voit graphiquement que f(x

) doit tre colinaire et de sens oppos g.


Finalement la formulation de (3.3) nest quune formulation subtile des deux cas traits (soit
= 0 dans le cas de la contrainte non-active, soit g(x

) = 0 dans le cas de la contrainte active).

On peut se servir de ce Thorme pour chercher les minima locaux dune fonction
Exemple 3.1.3 Soit le problme :
Minimiser f(x) = x
2
, x R
n
, sous la contrainte : x 1.
Ici g(x) = 1 x, et g(x) = 1 ,= 0. On cherche les points x tel quil existe 0
f

( x) + (1) = 0
. .
(1)
et (1 x) = 0
. .
(2)
.
Lquation (2) donne soit x = 1 soit = 0. Dans le cas x = 1, lquation (1) donne = 2.
Dans le cas = 0, lquation (1) donne x = 0, qui nest pas un point admissible. Donc il existe
un seul minimum local qui est x = 1 pour = 2.
Chapitre 3. Introduction loptimisation sous contraintes 43
Il est bon davoir en mmoire un exemple o les contraintes ne sont pas qualies (cest--
dire g(x

) ,= 0) et o la conclusion du Thorme 3.1 est fausse :


Exemple 3.1.4 Soit le problme :
Minimiser f(x) = x, x R
n
, sous la contrainte : x
3
0.
Ici g(x) = x
3
, la solution de ce problme est : x = 0, et pourtant il nexiste pas de 0 tel
que f

(0) + g

(0) = 0 car g

(0) = 0 et le Thorme 3.1 ne sapplique pas .


3.1.2 Cas de contraintes dingalit et dgalit
Dans le cas o il y a plusieurs contraintes dgalit ou dingalit, le thorme devient :
Thorme 3.2 Si X est donn par (3.2). Si f, g, h sont des fonctions diffrentiables et si x

est
un minimum local de f sur X et si les contraintes sont qualies, alors il existe

R
p
,

R
q
tels que
_

_
f(x

) +
p

i=1

i
h
i
(x

) +
q

j=1

j
g
j
(x

) = 0
h
i
(x

) = 0, i = 1, . . . , p

j
g
j
(x

) = 0, j = 1, . . . , q

j
0, j = 1, . . . , q.
(3.4)
Les points qui vrient ces conditions sont appels points KKT (Karush,Kuhn,Tucker)
Concernant les contraintes dingalit, ce thorme est effectivement une extension raison-
nable du thorme prcdent. On peut aussi comprendre les contraintes dgalit en scindant
chaque contrainte dgalit en deux contraintes dingalit : effectivement h(x) = 0 est qui-
valent dire que h(x) 0 et h(x) 0. Comme dans le cas dune contrainte dingalit, il y a
une hypothse supplmentaire ajouter, qui est la "qualication des contraintes". Il y a plusieurs
types de qualication diffrente, mais une des plus gnrales est :
Dnition 3.2 En un point x X, les contraintes sont dites qualies si et seulement si les
vecteurs (h(x)
i
)
i
sont linairement indpendants et si il existe une direction d orthogonale
tous les vecteurs h(x)
i
telle que g
j
(x)

d < 0 pour tout les contraintes actives.


Sil y a une seule contrainte dingalit, cette contrainte est qualie en un point si et seulement si
son gradient est non nul quand elle est active. On retrouve les conditions du thorme prcdent.
Dans la dnition du dessus, la direction d est appelle "direction r-entrante". La dmonstration
de ce thorme se fera en 4me anne GMM, nous lutiliserons cependant dans le cadre de la
recherche de minimum locaux (ou globaux) qui sont soit des points de KKT soit des points o
les contraintes ne sont pas qualies.
Il faut faire attention cependant, tous les points de KKT ne sont pas minima locaux de la
mme manire que tous les points critiques ne sont pas minima locaux.
44 3.1. Conditions doptimalit
Exemple 3.1.5 Dans lexemple ci-dessous, seuls les points x
1
, x
2
et x
3
sont des points de KKT.
Ils sont tous des minima globaux. Le point x
9
vrie lquation mais nappartient pas len-
semble des points admissibles.
Exemple 3.1.6 Trouver les solutions de
min 2x + 3y, s.c. x 0 et x
2
+ y
2
1
Ici f(x, y) = 2x + 3y, g
1
(x, y) = x et g
2
(x, y) = x
2
+ y
2
1 leurs gradients valent respecti-
vement (2, 3), (1, 0) et (2x, 2y). La recherche des minima globaux se fait en trois tapes :
Points o les contraintes ne sont pas qualies : Les points o ni g
1
ni g
2
ne sont ac-
tives sont des points o les contraintes sont qualies.Les points o une seule des deux
contraintes est active et pas lautre sont aussi des points o les contraintes sont qualies
car leur gradient nest jamais nul. Il ne reste plus que les points (0, 1) et (0, 1) o les
Chapitre 3. Introduction loptimisation sous contraintes 45
deux contraintes sont actives en mme temps. Comme les gradients des contraintes en ces
points sont non-colinaires, il existe une direction rntrante. Ainsi, les contraintes sont
qualies en tout point.
Points de KKT : on doit rsoudre le systme
_
2
1
+ 2
2
x = 0
3 + 2
2
y = 0
et
_

1
x = 0

2
(x
2
+ y
2
1) = 0
et
_

1
0

2
0
et
_
x 0
x
2
+ y
2
1
Lunique solution est (x, y,
1
,
2
) = (0, 1, 2, 3/2)
Comparaison des points trouvs : On doit calculer la valeur de f pour tous les points
trouvs, ici on nen a quun, cest donc notre minimum global.
Il est important de connatre un exemple o les contraintes sont non qualies et o le mini-
mum global nest pas point de KKT :
Exemple 3.1.7 Trouver les solutions de
min y, s.c. (x 1)
2
+ y
2
1 et (x + 1)
2
+ y
2
1
Ici lensemble des contraintes est lintersection de deux disques de rayon 1 et de centre (1, 0)
et (0, 1), ce qui donne lunique point (0, 0). Le minimum de f vaut donc f(0, 0) = 0 mais
f = (0, 1) alors quen ce point g
1
= (2, 0) et g
2
= (2, 0), il est impossible dcrire f
comme combinaison linaire de g
1
et g
2
, donc le pojnt nest pas de KKT. Ceci est du au fait
que les contraintes ne sont pas qualies.
3.2 Lagrangien du problme
Le Lagrangien dun problme doptimisation sous contraintes dgalit et dingalit est un
objet dont nous ne pouvons quefeurer limportance dans ce cours.
Dnition 3.3 Soit R
p
et (R
+
)
q
. On dnit :
/(x, (, )) = f(x) +
p

i=1

i
h
i
(x) +
q

j=1

j
g
j
(x)
ou plus gnralement
/(x, (, )) = f(x) +, h(x)
R
p +, g(x)
R
q
le Lagrangien associ au problme (P).
Les paramtres (, ) sont appels multiplicateurs de Lagrange. A noter : le Lagrangien
fait intervenir autant de multiplicateurs que de contraintes, et les multiplicateurs
j
associs aux
contraintes dingalit "g
j
(x) 0" sont positifs ou nuls.
Lintrt du Lagrangien est de ramener le problme (3.1)-(3.2) de minimisation sous contrainte
de f sur X un problme sans contrainte :
46 3.2. Lagrangien du problme
Dnition-Proposition 3.1 Le point x

est un minimum global de f sur X (i.e. solution du


problme min
h(x)=0, g(x)0
f(x)) si et seulement si il est aussi une solution de
min
xR
n
max
(,)R
p
(R
+
)
q
/(x, (, ))
Preuve. Si x X alors /(x, (, )) = f(x) + , g(x) et le maximum de cette expression par
rapport est donn pour = 0 car g(x) 0 et 0. Si x / X alors le maximum de / par
rapport au couple (, ) vaut +.
Ainsi
max
(,)R
p
(R
+
)
q
/(x, (, )) =
_
f(x) si x X
+ si x / X
do :
min
xR
n
max
(,)R
p
(R
+
)
q
/(x, (, )) = min
xX
f(x),
et ainsi lgalit des deux problmes considrs.
Points-selles du Lagrangien
Lide gnrale de lintroduction du Lagrangien est que lon doit maximiser / par rapport
sa deuxime variable et le minimiser par rapport sa premire variable, cela ressemble la
recherche dun point selle.
Dnition 3.4 Soit / : U V R une fonction deux variables, le point (x

, p

) U V
est dit "point-selle" de / sur U V si et seulement si
/(x

, p) /(x

, p

) /(x, p

) (x, p) U V
Exemple 3.2.1 Un point-selle dune fonction deux variables / est donc un minimum en la
premire variable et un maximum en la deuxime variable. Larchtype de tous les points-selles
est le point (0, 0) de la fonction de R
2
dans R : /(u, v) = u
2
v
2
.
Thorme 3.3 Considrons le problme sous contraintes fonctionnelles (3.1)-(3.2) :
min
xR
n
f(x)
sous : h(x) = 0, g(x) 0
o f, g et h sont supposes diffrentiables. On note X le domaine des contraintes et / le La-
grangien associ f et aux contraintes X.
Si (x

, p

) est un point-selle de / sur R


n
(R
p
(R
+
)
q
) alors
x

est un minimum global de f sur X.


On a lquation suivante reliant x

et p

= (

) :
f(x

) +

i
h
i
(x

) +

j
g
j
(x

) = 0 et j,

j
g
j
(x

) = 0 (3.5)
Dans ce cas p

est appel le "multiplicateur de Lagrange" du point-selle (x

, p

).
Chapitre 3. Introduction loptimisation sous contraintes 47
Avant de dmontrer ce thorme, il faut bien en comprendre les implications. Ce thorme
ne dit pas que tous les minima globaux de f sur X viennent de point-selle, (ou mme que les
points-selles du Lagrangien existent), il dit seulement que si on trouve un point-selle (x

, p

),
alors x

est un minimum global de f sur X. De plus, on ne sait pas si tous les minima globaux
obissent lquation (3.5) (car il faut rajouter lhypothse de qualication des contraintes).
En ce sens, ce thorme nest pas un thorme de caractrisation des minima, au sens o on
donne une condition sufsante mais non ncessaire. Il va de soit que ce thorme ne dit pas que
tout (x

, p

) qui vrie (3.5) est forcment point-selle (ce qui entranerait que x

est minimum
global).
Preuve. On note p = (, ). On rappelle que les conditions de points-selles sont
/(x

, p) /(x

, p

) /(x, p

) (x, p) R
n
P (3.6)
En rcrivant la premire ingalit de (3.6), on obtient
f(x

) +, h(x

) +, g(x

) /(x

, p

) R
n
, R
p
+
On en conclut que h(x

) = 0 et g(x

) 0, sinon en choisissant des et des trs grand, on


peut rendre le terme de gauche aussi grand que lon veut. Ainsi x

appartient bien X. De plus,


on obtient, en prenant = = 0 :
f(x

) f(x

) +

, g(x

)
et comme

est positif et g(x

) ngatif, on en conclut que

, g(x

) = 0. En rcrivant la
deuxime ingalit de (3.6), on obtient, en se limitant des x dans X :
f(x

) = L(x

, p

) f(x) +

, g(x) x X
et comme

est positif et g(x) est ngatif pour tout x dans X, alors f(x) +

, g(x) f(x) et
ainsi
f(x

) f(x) x X.
Ainsi x

est bien un minimum global de f sur X. Maintenant en reprenant la deuxime ingalit


du Lagrangien :
/(x

, p

) /(x, p

) x R
n
On voit que x

est un minimum sans contrainte de la fonctionnelle diffrentiable g : x


/(x, p

) donc vrie lgalit dEuler, g(x

) = 0 qui est exactement la formule (3.5). On


remarquera que pour ltablissement de cette formule, p

est x et on ne doit driver que par


rapport x.

Le thorme prcdent assure que tout point-selle du Lagrangien est un minimum global
de la fonction initiale et que tout point-selle vrie lquation (3.5). De plus on sait que si les
contraintes sont qualies alors tout minimum local vrie (3.5). La question qui se pose est de
savoir quelles hypothse ajouter pour quun point qui vrie (3.5) soit un point-selle.
La rponse est donne en partie par le thorme de Kuhn-Tucker (aussi quelquefois appel
Karush,Kuhn,Tucker).
48 3.2. Lagrangien du problme
Thorme 3.4 (Kuhn-Tucker) Supposons X donn par des contraintes dingalit unique-
ment :
X = x R
n
: g(x) 0 ,
On note :
/(x, ) = f(x) +, g(x)
le Lagrangien associ f avec les contraintes X. On suppose toutes les fonctions f et g
j
convexes et diffrentiables. Si x

est un point de X o les contraintes sont qualies, alors


les propositions suivantes sont quivalentes :
x

est un minimum global de f sur X.


Il existe un

R
q
+
tel que (x

) est un point-selle du Lagrangien /.


Il existe un

R
q
+
tel que (x

) vrie :
f(x

) +
q

j=1

j
g
j
(x

) = 0 et j = 1, . . . , q,

j
g
j
(x

) = 0 (3.5)
Preuve. Comme la deuxime assertion entrane la premire (Thorme 3.3) et que la premire
entrane la troisime (Proposition 3.2), il suft de montrer que la troisime assertion entrane la
premire pour conclure. Soit un x

tel que g,

= 0 et
f(x

) +

j
g
j
(x

) = 0
Comme les g
j
sont convexes et

0, alors la fonction L : x /(x,

) est convexe. Et
comme
L(x

) = f(x

) +

j
g
j
(x

) = 0,
alors x

est le minimum global de L et on a bien


/(x

) = L(x

) L(x) = /(x,

) x R
n
.
De plus, comme g(x

),

= 0 et g(x

) 0, alors, pour tout 0 /(x

, ) = f(x

) +
g(x

), f(x

) = /(x

). Ainsi nous avons


/(x

, ) /(x

) /(x,

) x R
n
, P.
Ce qui prouve que (x

, ) est bien un point selle.


En rsum
Les conditions ncessaires doptimalit dun problme doptimisation avec contraintes din-
galit et dgalit, scrivent :
Chapitre 3. Introduction loptimisation sous contraintes 49
Proposition 3.2 (Conditions ncessaires doptimalit) Considrons le problme :
(P)
min
xR
n
f(x)
sous : h(x) = 0, g(x) 0
o f, g et h sont supposes diffrentiables. On note X le domaine des contraintes et / le
Lagrangien associ f et aux contraintes X.
Si x

est un minimum local de f sur X et si les contraintes sont qualies en x

alors il
existe des multiplicateurs (

) R
p
R
q
+
tel que :
1.
x
/(x, (

)) = 0, soit :
f(x

) +
p

i=1

i
h
i
(x

) +
q

j=1

j
g
j
(x

) = 0.
2. j = 1, . . . , q,

j
g
j
(x

) = 0 i.e. pour tout j = 1, . . . , q :

j
= 0 ou g
j
(x

) = 0.
Ces conditions sont appeles relations de complmentarit.
3. i = 1, . . . , p, h
i
(x

) = 0.
4. j = 1, . . . , p, g
j
(x

) 0.
5. j = 1, . . . , q,

j
0.
TERMINOLOGIE :
Le vecteur (

) est aussi appel solution duale du problme (P), x

solution primale
de (P) et (x

) solution primate-duale de (P).


On appelle point stationnaire du problme (P) tout point x vriant les conditions nces-
saires doptimalit du premier ordre :
_

x
/( x, (

, )) = 0

j
g
j
( x) = 0, j = 1, . . . , q
h
i
( x) = 0, i = 1, . . . , p

j
0, j = 1, . . . , q.
pour un certain multiplicateur (

, ) R
p
R
q
.
Les relations :
j
g
j
( x) = 0 sont appeles relations de complmentarit. Elles sont trivia-
lement satisfaites par toute contrainte j active en x et indiquent que pour toute contrainte
inactive, le multiplicateur
j
correspondant est nul. Cela signie que toute contrainte inac-
tive loptimum aurait pu tre relaxe.
On remarquera quil ny a pas de condition sur les multiplicateurs

i
associs aux contraintes
dgalit.
50 3.3. Algorithme du gradient projet
3.3 Algorithme du gradient projet
Le but de cette section est dlaborer un algorithme de rsolution du problme :
Minimiser f(x), x R
n
, sous la contrainte : x X, (3.7)
dans le cas o X est un sous-ensemble convexe ferm non vide de R
n
, non ncessairement dni
par des galits ou des ingalits. La condition ncessaire doptimalit locale est alors un peu
plus gnrale que ce qui a t vu au paragraphe prcdent :
Thorme 3.5 (Condition ncessaire doptimalit locale) Soit f : R
n
R une fonction dif-
frentiable et X un convexe ferm, non vide de R
n
. Soit x

R
n
un point de minimum local de
f sur lensemble admissible X, alors
f(x

), x x

0, x X (3.8)
Si de plus f est convexe alors la condition prcdente devient sufsante, cest--dire que tout
x

X vriant lquation (3.8) est un minimum global de f sur X.


La mthode du gradient projet sinspire des mthodes de gradient dcrites dans le chapitre
prcdent. Lide de base consiste suivre la direction de plus profonde descente, comme dans
le cas sans contrainte :
x
k+1
= x
k
s
k
f(x
k
)
o s
k
> 0 est choisi de sorte que : f(x
k
+ s
k
d
k
) < f(x
k
). Toutefois, si x
k
X, rien ne garantit
que x
k+1
appartienne galement X. Pour rsoudre ce problme, si daventure on obtient un
point x
k+1
non admissible, on le projette celui-ci sur lensemble de contraintes X.
Dnition-Proposition 3.2 (Projection sur un convexe) Soit X convexe ferm, non vide de R
n
.
La projection dun point x R
n
sur X, note p
X
(x), est dnie comme lunique solution de :
min
yX
1
2
|x y|
2
2
(3.9)
De plus p
X
(x) est lunique lment de X qui vrie :
p
X
(x) x, y p
X
(x) 0, y X. (3.10)
Preuve. On dnit la fonctionnelle f : y R
n

1
2
|xy|
2
2
, dont le gradient vaut f(y) = yx
et la Hessienne H[f](x) = Id. La fonctionnelle f est strictement convexe. Comme lensemble
des contraintes est ferm born et f est continue, le Thorme 1.1 nous assure lexistence dun
minimum global. Comme lensemble des contraintes est convexe et la fonction f est strictement
convexe, le Thorme 1.3 nous assure quil est unique. Comme f est strictement convexe et
que lensemble des contraintes est convexe, la condition (3.10) est une condition ncessaire et
sufsante pour dterminer lunique minimiseur de (3.9).
On remarque en particulier que si x X, alors ncessairement : p
X
(x) = x.
Chapitre 3. Introduction loptimisation sous contraintes 51
ALGORITHME DU GRADIENT PROJET.
Donnes: f, p
X
loprateur de projection sur X, x
0
un point initial et > 0 la prcision
demande
Sortie: une approximation x

de la solution
1. k := 0 ;
2. Tant que critre darrt non satisfait,
(a) y
k
= x
k
sf(x
k
) o s est le pas calcul par la mthode de gradient choisie ;
(b) Projection sur X : x
k+1
= p
X
(y
k
) ; k := k + 1 ;
3. Retourner x
k
.
Remarque 3.1 Il est important de remarquer que le calcul ltape 2(b) du projet sur X, peut
parfois tre aussi difcile que le problme initial. En effet y
k
est obtenu en rsolvant le problme :
min
yR
n
1
2
|x
k
sf(x
k
) y|
2
2
s.c. x X.
Il sagit donc de rsoudre un problme doptimisation sur un convexe, avec une fonction objectif
convexe. Lorsque le domaine X des contraintes est simple (contraintes de bornes en particulier),
cest faisable. Ds que les contraintes ne sont pas des contraintes de bornes, le calcul de la
projection devient beaucoup plus dlicat.
Vrions que la direction d
k
= x
k+1
x
k
, si elle est non nulle, est bien une direction de
descente de f en x
k
.
Lemme 3.1 Soit f : R
n
R suppose diffrentiable et X R
n
un convexe ferm, non vide.
Notons x
k
litr courant et :
d(s) = p
X
(x
k
sf(x
k
)) x
k
, s > 0
Si d(s) est non nulle, alors d(s) est une direction de descente pour tout s > 0.
Preuve. Soit s > 0 x. Supposons : d(s) = p
X
(x
k
sf(x
k
))x
k
,= 0. Il sagit de dmontrer
que d(s) est une direction de descente de f en x
k
, autrement dit que f(x
k
)

d(s) < 0.
Daprs la caractrisation (3.10) de la projection sur un convexe, on peut crire :
y X,

p
X
(x
k
sf(x
k
)) (x
k
sf(x
k
)) , y p
X
(x
k
sf(x
k
))
_
0,
Do, pour tout y X : d(s) + sf(x
k
), y x
k
d(s)
_
0. Puisque x
k
X, on choisit
y = x
k
, soit :

d(s) + sf(x
k
), d(s)
_
0, ou encore : f(x
k
), d(s)
1
s
d(s), d(s) 0.
Par hypothse, d(s) ,= 0 ce qui implique : f(x
k
), d(s) < 0.
52 3.3. Algorithme du gradient projet
Remarque 3.2 La direction d(s) possde les proprits suivantes :
1. Si d(s) = 0, alors : p
X
(x
k
sf(x
k
)) = x
k
. Cela signie que la direction choisie par
lalgorithme de gradient est orthogonale lensemble X des contraintes en x
k
. Le point x
k
est alors un point stationnaire car la condition ncessaire doptimalit (3.5) est satisfaite.
2. Supposons d(s) ,= 0. Alors x
k
et p
X
(x
k
sf(x
k
)) sont des points admissibles du pro-
blme (3.7). La convexit de X nous garantit alors : [0, 1], x
k
+ d(s) X.
Exemple 3.3.1 On veut rsoudre par une mthode de gradient projet le problme suivant :
min
(x,y)R
2
f(x, y) =
1
2
x
2
+
7
2
y
2
sous x + y = 1.
Le domaine des contraintes X = (x, y) R
2
/ x + y = 1 est un convexe ferm. Pour
lavoir rsolu au chapitre 2, on sait que le problme hors contrainte admet un minimum global
en (0, 0). Cependant (0, 0) ne satisfait pas la contrainte, ce nest donc pas un point admissible
du problme avec contrainte.
An de mettre en oeuvre lalgorithme de gradient projet, il faut choisir les mthodes de
calcul des pas s
k
et
k
aux tapes 2(a) et 2(c) de notre algorithme :
tape 2(a) : on choisit une mthode de gradient pour le calcul du pas s
k
.
tape 2(c) : en premire approche, on choisit un pas xe
k
= 1, ce qui implique : x
k+1
=
y
k
= p
X
(x
k
sf(x
k
)).
FIGURE 3.1 Itrations successives (avant et aprs projection) de lalgorithme du gradient pro-
jet - exemple 3.3.1 partir du point (4, 5.5)
Le comportement numrique de la mthode de gradient projet ainsi dnie, est illustr par
la gure 3.1 et le tableau 3.1 des itrations. On observe une convergence de la suite ditrs
gnrs partir du point x
0
= (4, 5.5) vers le point (0.875, 0.125).
Chapitre 3. Introduction loptimisation sous contraintes 53
k x
k
x
k
s
k
f(x
k
) |d
k
| = |y
k
x
k
|
0 [ 4 5.5] [ 3.4232925 0.0508095 ] 4.3472097
1 [ 1.1862415 2.1862415 ] [ 1.0159064 0.0112495 ] 1.6743058
2 [ 0.0023285 1.0023285 ] [ 0.0019958 9.462e 08 ] 0.7089885
3 [ 0.4990021 0.5009979 ] [ 0.4264826 0.0086691 ] 0.3091099
4 [ 0.7175758 0.2824242 ] [ 0.6037028 0.0313035 ] 0.1413186
5 [ 0.8175032 0.1824968 ] [ 0.6619890 0.0605186 ] 0.0618727
6 [ 0.8612538 0.1387462 ] [ 0.6636631 0.0840740 ] 0.0178399
7 [ 0.8738685 0.1261315 ] [ 0.6570769 0.0929058 ] 0.0015879
8 [ 0.8749913 0.1250087 ] [ 0.6562565 0.0937435 ] 0.0000123
9 [ 0.875 0.125 ] [ 0.65625 0.09375 ] 7.301e 10
TABLE 3.1 Itrations de la mthode du gradient projet : on note y
k
= p
X
(x
k
s
k
f(x
k
)). Le
critre darrt |d
k
| < est satisfait en 10 itrations pour une prcision = 10
5
.
Vrions analytiquement ce rsultat. On cherche un point (x, y) R
2
vriant la contrainte :
y = 1 + x et minimisant f, ce qui revient minimiser sans contrainte lapplication :

f : x f(x, 1 + x) = 4x
2
+ 7x +
7
2
.
Remarquons que

f est strictement convexe ; daprs le thorme 2.2 appliqu au point x

=
(
7
8
,
1
8
) = (0.875, 0.125),

f admet un point de minimum global en x

.
Annexe A
Complments
A.1 Rappels de calcul diffrentiel
Diffrentiabilit et gradient
Nous commenons par rappeler la notion de diffrentiabilit :
Dnition A.1 Soit J : R
n
R une fonctionnelle. J est diffrentiable au point x ssi il existe
L
x
une application linaire de R
n
dans R et une fonction deR
n
R
n
dans R telle que
J(x +h) = J(x) + L
x
(h) + |h| (h, x), h R
n
, (A.1)
avec
(h, x)
h0
0. (A.2)
Comme L
x
est une application linaire de R
n
dans R, il existe un vecteur appel gradient de f
au point x tel que
L
x
(h) = J(x), h, h R
n
(A.3)
Lorsquil existe, le gradient peut tre exprim laide des drives partielles
J(x) =
_

x
1
J(x)

x
2
J(x)

x
n
J(x)
_

_
. (A.4)
Aller plus loin : Nous avons choisi dintroduire la forme linaire L
x
(appele la diffrentielle au point x) dans
(A.1) au lieu de mettre la formule de Taylor :
J(x +h) = J(x) +J(x), h + |h| (h, x), h R
n
,
Il y a une raison foncamentale cela. En effet, si on change le produit scalaire de R
n
, alors on va changer la formule
(A.3) donc le gradient mais pas la diffrentielle. En effet, la formule (A.1) est indpendante du choix du produit
scalaire, cependant la formule (A.3) nest que lapplication du thorme suivant au produit scalaire usuel :
Si L est une forme linaire sur H et (, ) est un produit scalaire, il existe un seul et unique
vecteur u H tel que L(v) = (u, v) pour tout v H.
Ainsi, si on change le produit scalaire, on change la dnition du gradient.
55
56 A.1. Rappels de calcul diffrentiel
On donne un thorme qui permet de dire quune fonction est diffrentiable en calculant son
gradient.
Dnition-Proposition A.1 Soit J : R
n
R une fonctionnelle telle que chacune des compo-
santes (les drives partielles) de J existe et sont continues en un point x. Alors J est diffren-
tiable au point x et on dit que J est C
1
en ce point.
Drives dordre suprieur
Dnition A.2 On dit que J : R
n
R est deux fois diffrentiable au point x R
n
ssi J
est diffrentiable et chacune des composantes de J est diffrentiable. Dans ce cas on appelle
"Hessienne de J" la matrice :
H[J](x) = [
i

j
J(x)]
1i,jn
. (A.5)
De la mme manire quil est plus simple de montrer quune fonction est C
1
que de montrer
quune fonction est diffrentiable, il est plus souvent plus facile dtablir quune fonction est C
2
plutt que deux fois diffrentiable.
Dnition-Proposition A.2 Soit une fonctionnelle J : R
n
Rdont chacune des composantes
de H[J](x) est continue (les drives partielles secondes sont continues au point x), alors J est
deux fois diffrentiable et on dit que J est C
2
au point x.
Thorme A.1 (de Schwarz) Soit J : R
n
R une fonctionnelle de classe (
2
, alors, pour tout
x, la matrice H[J](x), est symtrique.
Formules de Taylor
On rappelle les notations de Landau :
g(h) = O(h
p
)
_
_
_
a > 0, M > 0, [h[ < a

g(h)
h
p

M :
g(h) tend vers 0 avec h aussi vite que h
p
.
g(h) = o(h
p
)
_
_
_
lim
h0
g(h)
h
p
= 0,
g(h) tend vers 0 avec h plus vite que h
p

On rappelle que la formules de Taylor scrivent pour une fonction f de R dans R :


f(x + h) = f(x) + hf

(x)
. .
(1)
+
h
2
2
f

(x)
. .
(2)
+. . . +
h
n
n!
f
(n)
(x) + o(h
n
). (A.6)
On remarque que, dans cette quation, le terme linaire en h du dveloppement de Taylor (le
terme (1)) fait intervenir la drive de f alors que le terme quadratique (le terme (2)) fait inter-
venir la drive seconde.
Chapitre A. Complments 57
Proposition A.1 Soit J : R
n
R une fonctionnelle de classe (
2
, les formules de Taylor
scrivent :
J(x + h) = J(x) +J(x), h +
1
2
h, H[J](x) h + o(|h
2
|). (A.7)
Proposition A.2 Soit J : R
n
R
p
une fonctionnelle. On dit que J est de classe (
2
si et
seulement si chacune de ses composantes J
i
: R
n
R est de classe (
2
. Dans ce cas, les
formules de Taylor scrivent :
J(x + h) = J(x) + L
x
(h) + Q
x
(h, h) + o(|h
2
|). (A.8)
o L
x
est une application linaire de R
n
dans R
p
et Q
x
est une application bilinaire de R
n
R
n
dans R
p
. Le terme Q
x
(h, h) est donc un terme quadratique. On a les formules suivantes pour L
x
et Q
x
, en notant J
i
(x) la i
eme
composante de J(x)
(L
x
(h))
i
=
n

k=1
J
i
(x)
x
k
h
k
i = 0, . . . , p
(Q
x
(a, b))
i
=

k=1
n

l=1

2
J
i
(x)
x
k
x
l
a
k
b
l
i = 0, . . . , p (A.9)
La matrice n p qui reprsente lapplication L
x
est appele Jacobienne J au point x.
Tout ceci se montre en crivant lquation A.6 pour chaque composante de J.
A.2 Quelques dmonstrations
A.2.1 Hessienne et convexit : dmonstration du Thorme 1.5
Thorme 1.5. Soit f : R
n
R de classe (
2
. On note H[f](x) sa hessienne en x.
Si H[f](x) est semidnie positive pour tout x R
n
, alors f est convexe.
Si H[f](x) est dnie positive pour tout x R
n
, alors f est strictement convexe.
Pour montrer ce rsultat nous avons besoin du lemme technique suivant.
Lemme A.1 Soit (
2
([0, 1]).
Si
(2)
(x) > 0, alors () < (1 )(0) + (1) pour ]0, 1[.
Si
(2)
(x) 0, alors () (1 )(0) + (1).
Preuve. Comme
(2)
(x) > 0 (resp. ) pour 0 x 1,

est strictement croissante (resp.


croissante) et par consquent
() (0) =
_

0

(t)dt <

() (resp. ),
(1) () =
_
1

(t)dt > (1 )

() (resp. ).
58 A.2. Quelques dmonstrations
En groupant ces deux ingalits, nous tirons
() (0)

<
_

() <
_
(1) ()
1
(resp. );
cest--dire : () < (1 )(0) + (1) (resp. ).
Preuve du thorme 1.5. Supposons H[f](z) symtrique dnie positive. Soient x et y deux
lments distincts de R
n
. Introduisons la fonction : [0, 1] R de classe (
2
dnie par
() = f(x + (1 )y).
Utilisons le dveloppement lordre deux de pour calculer la drive seconde de
( + h) = f(( + h)x + (1 h)y) = f(x + (1 )y + h(x y)).
Avec t = x + (1 )y, nous avons
( + h) = f(t) + h[f(t)]

(x y) +
1
2
h
2
(x y)

H[f](t)(x y)
+ h
2
|x y|
2
(t, h(x y)),
et, par consquent
( + h) = () + h
_
[f(t)]

(x y)
_
+
h
2
2
_
(x y)

H[f](t)(x y)
_
+ h
2
(h)
Comme est de classe (
2
, la drive premire et la drive seconde de sont donc donnes par

() = [f(x + (1 )y)]

(x y),

(2)
() = (x y)

H[f]((x + (1 )y)
. .
R
nn
(x y).
Donc la fonction
(2)
() est strictement positive car H[f](x +(1 )y) est symtrique dnie
positive et x ,= y. Le lemme A.1 scrit :
f(x + (1 )y) < (1 )f(y) + f(x).
puisque : (0) = f(y), (1) = f(x) et () = f(x + (1 )y).
Ceci prouve que f est strictement convexe. Si pour tout x, H[f](x) est positive, une preuve
similaire nous permet de montrer que f est convexe.
Chapitre A. Complments 59
A.2.2 Mthode de Gauss-Newton pour la rsolution des problmes de moindres
carrs
Problme de moindres carrs
F : R
p
R
n
, n > p : F(x) =
_
_
F
1
(x
1
, . . . , x
p
)
. . . . . .
F
n
(x
1
, . . . , x
p
)
_
_
.
r(x) =
1
2
|F(x)|
2
=
1
2
F(x), F(x).
On cherche x

= argmin r(x) r(x

) = min
_
1
2
n

i=1
F
2
i
(x), x R
p
_
.
Utilisation de la mthode de Newton
Condition ncessaire doptimalit du premier ordre : r(x

) = 0.
Rsolution par la mthode de Newton : pour k 0,
x
(k+1)
= x
(k)

_
H
r
(x
(k)
)
_
1
r(x
(k)
). (A.10)
Calcul de r(x) : on peut le faire en identiant de la partie linaire dun dveloppement au
voisinage de x :
2 r(x + h) = F(x + h), F(x + h) ,
= F(x) + J
F
(x) h +O(|h|
2
), F(x) + J
F
(x) h +O(|h|
2
), ,
= F(x), F(x) +F(x), J
F
(x) h +J
F
(x) h, F(x) +O(|h|
2
).
Comme en dimension 1, on assimile les termes qui seront au moins O(|h|
2
) :

F(x), O(|h|
2
)
_
+ J
F
(x) h, J
F
(x) h + . . . = O(|h|
2
).
Pour A M
n,p
(R), x R
n
et y R
p
, on a x, Ay =

A
T
x, y
_
:
r(x + h) = r(x) +

J
F
(x)
T
F(x), h
_
+O(|h|
2
).
Par identication,
r(x) = J
F
(x)
T
F(x). (A.11)
Calcul de r(x) : on peut le faire en calculant les drives partielles :
Pour tout i, 1 i p,

x
i
r(x) =
x
i
_
1
2
n

j=1
F
2
j
(x)
_
=
n

j=1
(
x
i
F
j
(x)) F
j
(x).
60 A.2. Quelques dmonstrations
En prenant en compte toute les lignes,
_
_

x
1
r(x)
. . .

x
p
r(x)
_
_
=
_
_

x
1
F
1
(x) . . .
x
1
F
n
(x)
. . . . . .

x
p
F
1
(x) . . .
x
p
F
n
(x)
_
_
_
_
F
1
(x)
. . .
F
n
(x)
_
_
=
n

j=1
(F
j
) F
j
= J
T
F
F.
Calcul de H
r
(x) : on peut le faire par identication de la partie quadratique dun dvelop-
pement au voisinage de x :
r(x + h) =
1
2
_
F(x) + J
F
(x) h +
1
2
Q
r
(h) +O(|h|
3
), F(x) + J
F
(x) h +
1
2
Q
F
(h) +O(|h|
3
),
_
,
= r(x) +r(x), h +
1
2
J
F
(x) h, J
F
(x) h . . .
. . . +
1
4
F(x), Q
F
(h) +
1
4
Q
F
(h), F(x) +O(|h|
3
),
(A.12)
La partie quadratique de (A.12) sidentie selon
H
r
(x) h, h =

J
F
(x)
T
J
F
(x) h, h
_
+
1
2
F(x), Q
F
(h)
Suivant (A.9), F(x), Q
F
(h) =
_
n

i=1
F
i
(x) h
T
H
F
i
(x)
_
h, do
H
r
= J
T
F
J
F
+
n

i=1
F
i
H
F
i
. (A.13)
Calcul de H
r
(x) : on peut le faire en drivant r(x) :
r =
n

j=1
(F
j
) F
j
.
On utilise la rgle de drivation dun produit : (r)

=
n

j=1
_
H
F
j
F
j
+ (F
j
) J
F
j
_
.
J
F
j
= (F
j
)
T
, et
n

j=1
(F
j
) (F
j
)
T
=
_
F
1
. . . F
n

_
_
F
T
1

F
T
n
_
_
= J
T
F
J
F
.
Calcul de H
r
(x) : on peut laborieusement le faire en calculant les drives partielles se-
condes ; on ne le fait pas.

You might also like