Sunteți pe pagina 1din 43

DPARTEMENT STPI

3ME ANNE MIC


Introduction lOptimisation Numrique
Aude Rondepierre & Sbastien Tordeux
Anne 2009-2010
Table des matires
Introduction 5
1 Formulation et analyse dun problme doptimisation 7
1.1 Notions de minimum, maximum, inmum, supremum . . . . . . . . . . . . . . . 7
1.2 Description dun problme doptimisation . . . . . . . . . . . . . . . . . . . . . 8
1.2.1 Formulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2.2 Ensemble des contraintes . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.3 Convexit et optimisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.3.1 lments danalyse convexe . . . . . . . . . . . . . . . . . . . . . . . . 12
1.3.2 Rsultats dunicit en optimisation convexe . . . . . . . . . . . . . . . . 14
2 Optimisation numrique sans contraintes 15
2.1 Condition sufsante dexistence dun point minimum . . . . . . . . . . . . . . . 15
2.2 Conditions doptimalit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.3 Gnralits sur les algorithmes de descente . . . . . . . . . . . . . . . . . . . . 18
2.3.1 Notion de direction de descente . . . . . . . . . . . . . . . . . . . . . . 18
2.3.2 Algorithme de descente modle . . . . . . . . . . . . . . . . . . . . . . 20
2.3.3 Convergence et vitesse de convergence . . . . . . . . . . . . . . . . . . 22
2.4 Premiers algorithmes de descente . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.4.1 Algorithmes de gradient pas xe/pas optimal . . . . . . . . . . . . . . 23
2.4.2 Mthode de Newton locale . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.4.3 Mthode de Gauss-Newton . . . . . . . . . . . . . . . . . . . . . . . . . 29
3 Introduction loptimisation sous contraintes 31
3.1 Condition sufsante dexistence dun point minimum . . . . . . . . . . . . . . . 31
3.2 Conditions doptimalit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.3 Algorithme du gradient projet . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
A Complments 39
A.1 Rappels de calcul diffrentiel . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
A.1.1 Diffrentiabilit et gradient . . . . . . . . . . . . . . . . . . . . . . . . . 39
A.1.2 Drives dordre suprieur . . . . . . . . . . . . . . . . . . . . . . . . . 39
A.1.3 Formules de Taylor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
A.2 Quelques dmonstrations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3
4 TABLE DES MATIRES
A.2.1 Mthode de Gauss-Newton pour la rsolution des problmes de moindres
carrs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Introduction
Tout problme doptimisation comporte une tape essentielle : la modlisation mathmatique.
Elle consiste en trois tapes :
1. Identication des variables de dcisions (souvent dsignes par un vecteur x R
n
dans
ce cours) : ce sont les paramtres sur lesquels lutilisateur peut agir pour faire voluer le
systme considr.
2. Dnition dune fonction cot (appele fonction objectif) permettant dvaluer ltat du
systme (ex : rendement, performance,. . . ).
3. Description des contraintes imposes aux variables de dcision.
Le problme doptimisation consiste alors dterminer les variables de dcision conduisant aux
meilleures conditions de fonctionnement du systme (ce qui revient minimiser ou maximiser
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 rsolu-
tion de problmes doptimisation sans contrainte (cf chapitre 2), puis avec contraintes (cf chapitre
3). Pour chacun de ses 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 ?
5
Chapitre 1
Formulation et analyse dun problme
doptimisation
1.1 Notions de minimum, maximum, inmum, supremum
On distinguera les notions de minimum et de maximum des notions dinnimum et de su-
premum. Ces notions sont des prrequis pour les dmonstrations des rsultats dexistence et
dunicit dextrema dune fonction donne.
Dnition 1.1 (Minorant/Majorant) Soit E un sous-ensemble de R.
m R , + est un minorant de E ssi
x E m x.
M R , + est un majorant de E ssi
x E M x.
Dnition 1.2 (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 note aussi
inf
xE
(x) et sup
xE
(x).
Dnition-Proposition 1.1 (Suite minimisante/Suite maximisante) Soit E R, E ,= .
Il existe (x
n
)
n
une suite dlments de E telle que
lim
n+
x
n
= inf(E)
et une suite (y
n
)
n
dlments de E telle que
lim
n+
y
n
= sup(E).
La suite (x
n
)
n
est une suite minimisante et (y
n
)
n
une suite maximisante de E.
7
8 1.2. Description dun problme doptimisation
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.
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
) est laisse en
exercice.
Dnition 1.3 (Minimum, maximum) Soit E R. Un inmumest un minimumsi inf(E) E.
Un supremum est un maximum si sup(E) E.
Dans ce cas, on note
min(E) = inf(E) et max(E) = sup(E).
1.2 Description dun problme doptimisation
1.2.1 Formulation
On considre le problme doptimisation suivant :
min
xR
n
f(x) sous la contrainte : x X. (1.1)
o X est un sous-ensemble de R
n
. La fonction f : X R
n
R, appele fonction objectif, est
suppose au moins diffrentiable. Lensemble X est appel ensemble des contraintes.
Le problme (1.1) est dit ralisable si X ,= .
Un cas frquent en optimisation est celui 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
sont supposes continues. Lcriture h(x) = 0 reprsente p
contraintes dgalit :
h
i
(x) = 0, i = 1, . . . , p,
et de mme g(x) 0 reprsente q contraintes dingalits :
g
i
(x) 0, i = 1, . . . , q.
Dans ce cas, on dit quil sagit dun problme doptimisation n variables de dcisions, p
contraintes dgalits et q contraintes dingalits.
Rsoudre le problme (1.1) revient chercher des points de minimum local (ou global, cest
encore mieux !) au sens de la dnition suivante :
Chapitre 1. Formulation et analyse dun problme doptimisation 9
Dnition 1.4 (Minimum local/Minimum global) Soit f : X R
n
R une fonctionnelle.
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.
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
x
f(x) et max
x
f(x)
sont quivalents dans le sens o ils ont mme ensemble de solutions et :
min
x
f(x) = max
x
f(x) ou encore max
x
f(x) = min
x
f(x).
Ainsi la recherche dun maximum pouvant se ramener la recherche dun minimum, nous por-
terons une attention plus particulire la recherche du minimum.
5 0 5 10
0.0
0.5
1.0
1.5
2.0
2.5
3.0
3.5
Maximum local
Maximum global
Minimum local
FIG. 1.1 f : x 3 e
x
2
+ e
(x3)
2
: exemples de minima et maxima locaux/globaux
10 1.2. Description dun problme doptimisation
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
FIG. 1.2 Fonction f : x cos(x) : innit de minima et maxima globaux.
50 40 30 20 10 0 10 20 30 40 50
50
40
30
20
10
0
10
20
30
40
50
FIG. 1.3 Fonction f : x x cos(x) : innit de minima et maxima locaux mais aucun mini-
mum ou maximum global.
Chapitre 1. Formulation et analyse dun problme doptimisation 11
1.2.2 Ensemble des contraintes
Commenons cette section par quelques notions lmentaires de topologie dans R
n
.
Dnition 1.5 (Ensemble ouvert) Soit O R
n
. Lensemble O est ouvert si pour tout x O, il
existe une boule ouverte B(x, r) =
_
y R
n
[ |y x| < r
_
de centre x et de rayon r telle que :
B(x, r) 0
Exemple 1.2.1 1. Les ensembles et R
n
sont ouverts.
2. Les boules ouvertes sont des ouverts.
3. Les intervalles de la forme ]a, b[, a < b +, sont des ouverts de R.
Dnition 1.6 (Ensemble ferm) Soit F R
n
. Lensemble F est un ferm si son complmen-
taire est un ouvert.
Exemple 1.2.2
1. Les ensembles et R
n
sont ferms, leurs complmentaires respectifs tant R
n
et .
2. Les intervalles de la forme [a, b], < a < b < +, sont des ferms de R.
Proposition 1.1 Soit F R
n
. F est un ferm si et seulement si toute suite convergente dl-
ments de F admet une limite dans F.
Preuve. () Supposons F ferm. Soit (x
n
)
nN
une suite dlments de F qui converge vers
x R
n
. On note O le complmentaire de F. Supposons par labsurde que x 0.
Comme O est ouvert, 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.
Revenons maintenant la caractrisation de lensemble des contraintes dans le cas de contraintes
dgalit et/ou dingalit.
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
.
12 1.3. Convexit et optimisation
1.3 Convexit et optimisation
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.
1.3.1 lments danalyse convexe
Dnition 1.7 (Ensemble convexe) Soit C R
n
. Lensemble C est convexe ssi
(x, y) C
2
, ]0, 1[, x + (1 )y C,
cest--dire, si x et y sont deux lments de C alors le segment qui relie x y est inclus dans C.
Exemple. R
n
est convexe.
Dnition 1.8 (Fonction convexe/strictement convexe) Soit C R
n
convexe et f : C R.
f est convexe ssi
(x, y) C
2
, ]0, 1[, f(x + (1 )y) f(x) + (1 )f(y).
f est strictement convexe ssi
(x, y) C
2
, x ,= y, ]0, 1[, f(x + (1 )y) < f(x) + (1 )f(y).
Thorme 1.1 Soit C R
n
convexe et f : C R diffrentiable. La fonction f est convexe ssi :
(x, y) C
2
, f(y) f(x) +f(x), y x), (1.4)
ou de faon quivalente, ssi :
(x, y) C
2
, f(y) f(x), y x) 0. (1.5)
Preuve. Soit (x, y) C
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.4).
Rciproquement, on applique (1.4) 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.4), puis en sommant les deux ingalits obtenues,
on dmontre sans problme que (1.4) implique (1.5). 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]. Dmonstration laisse en exercice (on pourra tracer le
tableau de variation de sur [0, 1]).
Chapitre 1. Formulation et analyse dun problme doptimisation 13
Remarque 1.1 Si f est strictement monotone i.e. si les ingalits (1.4) et (1.5) sont strictes
pour x ,= y, alors f est strictement convexe.
Si de plus, la fonctionnelle f est deux fois diffrentiable, on a alors une caractrisation dordre
deux de la convexit via la Hessienne.
Thorme 1.2 Soit f : R
n
R une fonctionnelle de classe (
2
.
Si la hessienne H[f](x) de f est une matrice symtrique dnie positive pour tout x R
n
, alors
f est strictement convexe.
Si H[f](x) est une matrice symtrique semidnie positive pour tout x R
n
, alors f est convexe.
Pour montrer ce rsultat nous avons besoin du lemme technique suivant.
Lemme 1.1 Soit f (
2
([0, 1]).
Si f
(2)
(x) > 0, alors f() < (1 )f(0) + f(1) pour ]0, 1[.
Si f
(2)
(x) 0, alors f() (1 )f(0) + f(1).
Preuve. Comme f
(2)
(x) > 0 (resp. ) pour 0 x 1, f

est strictement croissante (resp.


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

0
f

(t)dt < f

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

(t)dt > (1 )f

() (resp. ).
En groupant ces deux ingalits, nous tirons
f() f(0)

<
_
f

() <
_
f(1) f()
1
(resp. );
cest--dire : f() < (1 )f(0) + f(1) (resp. ).
Preuve du thorme 1.2. 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) + [f(t)]

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

H[f](t)h(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)
14 1.3. Convexit et optimisation
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 1.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.
1.3.2 Rsultats dunicit en optimisation convexe
Thorme 1.3 (Condition sufsante doptimalit globale) Soient C R
n
un convexe et f :
C R une fonctionnelle. Soit x

un point de minimum local 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.


Preuve. i. Par labsurde : soit x

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


r > 0 [ y C 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 C 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[.
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 C, le point y
r/2
appartient donc au segment [x
+
, x

] lui-mme
contenu dans C. 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 C ralisant le
minimum de f. Par convexit de C,
x
1
+ x
2
2
C, 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
inf
yC
f(y) +
1
2
inf
yC
f(y) = inf
yC
f(y),
Ce qui est impossible.
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 Condition sufsante dexistence dun point minimum
Avant dtudier la solution (ou les solutions) de (P), il faut sassurer de leur existence.
Dnition 2.1 Une application f : X R
n
R est dite innie linni (ou coercive) ssi
A R, R > 0 [ x X, [|x| R = f(x) A] (2.1)
On note : lim
x+
f(x) = +.
Exemples
Exemple de fonction coercive Exemple de fonction non coercive
1. f(x) = |x|
2
est coercive.
15
16 2.2. Conditions doptimalit
2. f(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(x
n
) = lim
n+
n
2
= .
Pour montrer que f est innie linni on utilise souvent la proposition suivante :
Proposition 2.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 (2.1).
Thorme 2.1 Soit f : R
n
R une fonction continue et innie linni. Alors il existe un
point x F qui ralise le minimum de f sur F. Autrement dit, il existe x R
n
tel que
f(x) f(y), y R
n
.
Preuve. Soit d = inf
xR
n
f(x) < +. Soit (x
n
)
nN
une suite minimisante cest--dire telle que :
lim
n+
f(x
n
) = d < +. (2.2)
Montrons que la suite (x
n
)
nN
est borne. Par labsurde, on suppose quelle ne lest pas cest-
-dire quil existe une sous-suite note (x
(n)
)
n
de (x
n
)
n
telle que : lim
n+
|x
(n)
| = +. Par
coercivit de f, on a alors : lim
n+
f(x
(n)
) = +, ce qui contredit (2.2).
La suite (x
n
)
nN
est donc borne : il existe alors une suite extraite note (x
(n)
)
n
de (x
n
)
n
,
qui converge vers x R
n
. En utilisant maintenant la continuit de f, on a alors :
f( x) = lim
n+
f(x
(n)
) = d.
On en dduit alors deux choses : d > et x solution du problme (P).
2.2 Conditions doptimalit
Thorme 2.2 (Conditions ncessaires doptimalit locale) Soit f : R
n
R une application
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

) semidnie positive (CN doptimalit du 2


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

) semidnie ngative)
Chapitre 2. Optimisation numrique sans contraintes 17
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
).
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 du premier ordre joue un rle central en optimisation numrique : elle permet
de slectionner un certain nombre de points candidats tre des extrema locaux, appels points
critiques ou points stationnaires. Parmi eux, gurent des minima locaux, des maxima locaux
et dautres qui ne sont ni lun, ni lautre, appels points selle.
Dnition 2.2 (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.2 ne sont que ncessaires : tout point o le
gradient est nul nest pas ncessairement un extremum. En effet, la fonctionnelle : f : x R
x
3
admet en x = 0 un point de drive nulle, qui nest pas un extremum mme local de f.
Thorme 2.3 (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.
Remarque 2.1
1. Comme f est de classe C
2
, par le thorme de Schwarz, il nest pas ncessaire de vrier
que la matrice hessienne H[f] est symtrique.
2. 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.
Si de plus la fonctionnelle optimiser est convexe ou strictement convexe, en appliquant le
thorme 1.3 au convexe C = R
n
, on obtient :
Thorme 2.4 (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.
18 2.3. Gnralits sur les algorithmes de descente
2.3 Gnralits sur les algorithmes de descente
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
).
Commenons par dnir plus prcisment la notion de descente.
2.3.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.3 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.2 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.
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.4 (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.3)
Chapitre 2. Optimisation numrique sans contraintes 19
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
)
FIG. 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.3 Soient f : R
n
R diffrentiable et x R
n
tel que : f(x) ,= 0. Le vecteur
d R
n
est une direction de descente pour f partir du point x ssi la drive directionnelle de
f en x dans la direction d vrie :
df(x; d) = f(x)

d < 0. (2.4)
De plus pour tout < 1, il existe > 0 tel que :
t ]0, ], f(x + td) < f(x) + tf(x)

d. (2.5)
Autrement dit, la relation (2.5) nous dit que la dcroissance de la fonction objectif f en fai-
sant un pas de taille t dans la direction d, est dau moins le pas fois une fraction de la pente.
Preuve de la proposition 2.3. Soit d une direction de descente de f en x, soit : 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.
Sachant que = f(x)

d > 0, il existe > 0 tel que si [t[ , alors [(t)[ < . Do :


t ]0, ], f(x + td) f(x) = t
_
f(x)

d + (t)

< t
_
f(x)

d +

= 0.
On dmontre de la mme faon lingalit (2.5), en choisissant : = ( 1)f(x)

d dans la
dnition de Landau, et < 1.
20 2.3. Gnralits sur les algorithmes de descente
Parmi toutes les directions de descente existant en un point x donn, une des plus remar-
quables est celle o la pente est la plus forte, cest--dire selon le gradient. Pour le dmontrer, il
suft de comparer les drives directionnelles :
Thorme 2.5 (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.6)
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.6).
Sans surprise, si loppos du gradient correspond la plus forte descente, le gradient corres-
pond, lui, la plus forte pente :
Corollaire 2.1 Le vecteur f(x) est appele direction de plus forte pente de f au point x R
n
.
On remarquera que si x

est un point de minimumlocal de f, alors il nexiste aucune direction


de descente pour f au point x

.
Exercice 2.3.1 Retrouver les conditions ncessaires doptimalit du thorme 2.2 en utilisant la
notion de direction de descente.
2.3.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.3), 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,
Chapitre 2. Optimisation numrique sans contraintes 21
(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 cette direction 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 le
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.2 : on teste si
|f(x
k
)| < , (2.7)
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 ditrations maximum autoris dpass.
En pratique, on prfrera travailler avec les erreurs relatives plutt quavec les erreurs abso-
lues, trop dpendantes de lchelle.
22 2.3. Gnralits sur les algorithmes de descente
2.3.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.5 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.
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.6 Soit (x
k
)
kN
une suite ditrs gnrs 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).
Chapitre 2. Optimisation numrique sans contraintes 23
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.3.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[.

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. Alors 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.4 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.4.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 de 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| = 1,
dont la solution nous ait donne par le thorme 2.5, comme la direction de plus profonde des-
cente normalise :
d
k
=
f(x
k
)
|f(x
k
)|
.
24 2.4. Premiers algorithmes de descente
Le choix de la direction de plus profonde descente dnit une famille dalgorithmes appels
algorithmes 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.
1. k := 0 ;
2. Tant que critre darrt non satisfait,
(a) Direction de descente : d
k
= f(x
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
)
|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.
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 (a) et (b) de lalgorithme de
descente de gradient sont alors remplaces par :
x
k+1
= x
k
s
f(x
k
)
|f(x
k
)|
.
La question est alors : comment choisir un pas qui garantisse la convergence de lalgorithme ?
Chapitre 2. Optimisation numrique sans contraintes 25
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.4. 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 :
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 compor-
tements sont illustrs par la gure 2.2 et les itrations sont dcrites dans les tableaux 2.1 et 2.2
FIG. 2.2 Itrations des algos de gradient pas xe et optimal, gnres partir du point (7, 1.5).
26 2.4. 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
TAB. 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
TAB. 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).
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.
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.
Chapitre 2. Optimisation numrique sans contraintes 27
2.4.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 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
(y x
k
)

H[f](x
k
)(y x
k
),
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.8)
On reconnat dans la formule (2.8) 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]).


28 2.4. Premiers algorithmes de descente
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.2 Deux observations importantes :
1. La mthode de Newton est un algorithme de descente pas xe gal 1.
2. Si la fonctionnelle f est quadratique, strictement convexe, alors lalgorithme converge en
une itration.
Exercice 2.4.1 Dmontrer les deux assertions de la remarque 2.2.
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.4 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.
Chapitre 2. Optimisation numrique sans contraintes 29
2.4.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.9)
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.9) 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.10)
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.10) sont dtaills en annexe.
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.10) par :
J
F
(x)

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

F(x). (2.11)
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)
T
J
F
(x) d = J
F
(x)

F(x).
(b) x
k+1
= x
k
+ d
k+1
;
(c) k := k + 1 ;
3. Retourner s
k
.
30 2.4. Premiers algorithmes de descente
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.11) 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
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.12)
On rappelle que daprs le thorme 2.4 du cours danalyse numrique, x

est solution du pro-


blme (2.12) 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.12).


Ceci signie donc que la mthode de Gauss-Newton identie la solution en une seule itration
lorsque la fonction F est linaire.
Exercice 2.4.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 contrainte. On sintresse la
rsolution de problmes doptimisation de la forme :
min f(x) s.c. x X, (3.1)
o X est un sous-ensemble non vide de R
n
.
TERMINOLOGIE :
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).
Chercher une solution du problme avec contraintes (3.1) revient chercher un point de
minimum local de f dans lensemble des points admissibles.
3.1 Condition sufsante dexistence dun point minimum
La premire question est celle de lexistence du point de minimum global de la fonction f
sur C. Il existe principalement deux thormes qui permettent de rpondre cette question. Le
premier afrme lexistence dun point de minimum lorsque lensemble des contraintes est ferm
born. Le second est son quivalent pour les ensembles de contraintes ferms mais non borns.
Thorme 3.1 (Thorme de Weierstrass) Soit X un compact (i.e. un 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).
Preuve. Introduisons limage directe de X par f
f(X) =
_
f(y)

y X
_
.
31
32 3.1. Condition sufsante dexistence dun point minimum
Considrons une suite minimisante dans f(X), cest--dire une suite de (x
n
)
nN
dlments de
X telle que
f(x
n
) inf
yX
f(y).
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.
Thorme 3.2 Soient F un ferm non vide de R
n
et f : F R
n
Rune application continue
innie linni. Alors f admet un point de minimum sur F. Autrement dit, il existe x F tel que
y F, f(x) f(y).
Preuve. (i) Dnissons K compact. Comme F ,= , nous avons : 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 alors : K = B(0, R) F. Lensemble K est un compact non vide car il est born
(|y| R) et ferm (intersection de deux ferms).
(ii) Minimisons f sur K. Comme f est continue et K est compact, f atteint son minimum sur
K, cest--dire
x K [ f(x) = inf
yK
f(y), (3.2)
(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 (3.2) il vient : x K F [ f(x) = inf
yF
f(y).
Chapitre 3. Introduction loptimisation sous contraintes 33
3.2 Conditions doptimalit
Lcriture des conditions doptimalit en prsence de contraintes est base sur la mme in-
tuition que dans le cas sans contraintes, savoir quil est impossible de descendre partir dun
minimum. Toutefois les conditions doptimalit vues au chapitre 2 ne sont plus valables comme
le montre lexemple suivant.
Exemple 3.2.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.
Dans le cas o le domaine des contraintes est convexe, on a la condition ncessaire doptima-
lit locale suivante :
Thorme 3.3 (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 du
problme :
min
xR
n
f(x) sous la contrainte : x X.
Alors, pour tout x X, f(x

(x x

) 0.
Preuve. Soit x X. Par convexit de X, x

+(xx

) est un lment de X pour tout [0, 1],


do :
[0, 1], f(x

+ (x x

)) f(x

)
puisque x

est un point de minimum local de f sur X. On divise ensuite par (> 0) et on fait
tendre vers 0
+
.
Rappelons que dans le cas convexe (i.e. si f est en plus convexe) alors la condition prcdente
devient ncessaire et sufsante.
Une autre approche : notion de direction admissible Une difcult importante en optimi-
sation sous contrainte consiste savoir se dplacer dans lensemble des contraintes, i.e. tant
donne une direction de recherche comment garantir que lon reste dans lensemble C. Pour
cela, on introduit la notion de direction admissible.
Dnition 3.1 (Direction admissible) Soit x R
n
un point admissible du problme (3.1).
Une direction d R
n
sera dite admissible en x sil existe > 0 tel que x+sd soit admissible
quel que soit s ]0, ].
Dans le cas particulier o le domaine des contraintes est convexe, dterminer une direction d
admissible en x revient dterminer un point admissible y, diffrent de x : d = y x est alors
une direction admissible. En effet, quel que soit [0, 1], x + d = (1 )x + y est une
combinaison convexe dlments du convexe X, et donc un lment de X.
34 3.3. Algorithme du gradient projet
Autre preuve du thorme 3.3. Raisonnons par labsurde. Supposons quil existe un point x
X tel que :
f(x

(x x

) < 0.
Daprs la dnition 2.4 vue au chapitre 2, d = x x

est donc une direction de descente de f


au point x

. En utilisant la caractrisation donne par la proposition 2.3 : il existe > 0 tel que :
s ]0, ], f(x

+ sd) < f(x

).
Or : x

X. De plus, d = x x

dnit une direction admissible du problme (3.1). Donc pour


tout s ]0, min(, 1)], x

+ sd est un point admissible de (3.1).

3.3 Algorithme du gradient projet


Construisons maintenant un algorithme de rsolution du problme :
Minimiser f(x), x R
n
, sous la contrainte : x X, (3.3)
dans le cas o X est un sous-ensemble convexe ferm non vide de R
n
.
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. Ds que lon obtient un point non admissible, on projette
celui-ci sur lensemble de contraintes X.
Projection sur un convexe. Soit X un convexe ferm, non vide de R
n
. La projection dun point
x R
n
sur X, note p
X
(x), est obtenue comme solution du problme doptimisation suivant :
Minimiser
1
2
|x y|
2
2
sous la contrainte : y X (3.4)
La fonctionnelle : y R
n

1
2
|x y|
2
2
tant convexe et f(y) = y x, le thorme 3.3 nous
donne une condition ncessaire et sufsante pour que x

= p
X
(x) soit solution de (3.4) :
y X, (x

x)

(y x

) 0. (3.5)
On remarque en particulier que si x X, alors ncessairement : x

= x.
Chapitre 3. Introduction loptimisation sous contraintes 35
Principe de lalgorithme. Soit x
k
litr courant. On gnre litration suivante le point
admissible :
y
k
= p
X
(x
k
s
k
f(x
k
))
o p
X
dsigne loprateur de projection sur lensemble X. Avant daller plus loin, vrions que
la direction d
k
= y
k
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.5) 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.
Remarque 3.1 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 simplement 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.3)
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.3). La convexit de X nous garantit alors :
[0, 1], x
k
+ d(s) X.
ALGORITHME DU GRADIENT PROJET.
Donnes: f, p
X
un oprateur de projection sur X, x
0
premire approximation de la solution
cherche, > 0 prcision demande.
Sortie: une approximation x

de la solution.
1. k := 0 ;
2. Tant que critre darrt non satisfait,
36 3.3. Algorithme du gradient projet
(a) Projection sur X : y
k
= p
X
(x
k
sf(x
k
))
o s est le pas calcul par la mthode de gradient choisie (s = 1 par exemple) ;
(b) Direction de descente : d
k
= y
k
x
k
;
(c) Recherche linaire : trouver un pas
k
tel que : f(x
k
+
k
d
k
) < f(x
k
) ;
(d) x
k+1
= x
k
+
k
d
k
; k := k + 1 ;
3. Retourner x
k
.
Il est important de remarquer que le calcul ltape 2(a) 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.
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
s.c. 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 nous 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
)).
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).
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.3 appliqu au point x

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

f admet un point de minimum global en x

.
Chapitre 3. Introduction loptimisation sous contraintes 37
FIG. 3.1 Itrations successives (avant et aprs projection) de lalgorithme du gradient projet -
exemple 3.3.1 partir du point (4, 5.5)
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
TAB. 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
.
Annexe A
Complments
A.1 Rappels de calcul diffrentiel
A.1.1 Diffrentiabilit et gradient
Dnition A.1 Soit J : R
n
R une fonctionnelle. J est diffrentiable au point x ssi il existe
J(x) R
n
et h (h, x) vriant
J(x + h) = J(x) + [J(x)]

h + |h| (h, x), h R


n
, (A.1)
avec
(h, x)
h0
0. (A.2)
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.3)
Dnition A.2 Soit J : R
n
R une fonctionnelle. J est de classe C
1
.
J est diffrentiable au point x,
chacune des composantes de J est continue.
A.1.2 Drives dordre suprieur
Dnition A.3 On dit que J : R
n
R est deux fois diffrentiable au point x R
n
ssi
J est diffrentiable ;
chacune des composantes de J est diffrentiable.
Dnition A.4 Soit J : R
n
R deux fois diffrentiable. La Hessienne de J dnie laide de
ses drives partielles dordre 2
H[J](x) = [
i

j
J(x)]
1i,jn
. (A.4)
39
40 A.1. Rappels de calcul diffrentiel
Dnition A.5 Une fonctionnelle J : R
n
R est de classe (
2
ssi
J est deux fois diffrentiable ;
chacune des composantes de H[J] est continue.
Thorme A.1 (de Schwarz) Soit J : R
n
R une fonctionnelle de classe (
2
.
La matrice H[J](x), x R
n
, est symtrique.
A.1.3 Formules de Taylor
Pour une fonction f : R R, les formules de Taylor scrivent
f(x + h) = f(x) + hf

(x) +
h
2
2
f

(x) + . . . +
h
n
n!
f
(n]
(x) +O(h
n+1
). (A.5)
La drive f

(x) au point x dnit le terme linaire de ce dveloppement, h f

(x) h.
La drive f

(x) dnit le terme quadratique de ce dveloppement, h


1
2
hf

(x) h.
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

Pour une fonction f : R


p
R, les formules de Taylor scrivent
f(x + h) = f(x) +
p

j=1
h
j

x
j
f(x) +
1
2
p

j=1
p

k=1
h
j
h
k

2
x
j
x
k
f(x) +O(|h
3
|),
= f(x) +
p

j=1
h
j

x
j
f(x) +
1
2
p

j=1
h
j
p

k=1
h
k

2
x
k
x
j
f(x) +O(|h
3
|),
J
f
(x) = Matrice Jacobienne =
_

x
1
f(x), . . . ,
x
p
f(x)

= (f(x))
T
.
Le gradient de f est le vecteur transpos de sa matrice jacobienne.
H
f
(x) = Matrice Hessienne =
_

2
x
i
x
j
f(x)
_
1i,jp
M
p
(R). Elle est symtrique.
f(x + h) = f(x) + J
f
(x) h +
1
2
h
T
H
f
(x) h +O(|h
3
|). (A.6)
La notation AB dsigne le produit matriciel. Dans le cas du produit dune matrice ligne
par une matrice colonne, on peut utiliser une notation de produit scalaire de deux matrices
(vecteurs) colonnes
(A.6) f(x + h) = f(x) +f(x), h) +
1
2
H
f
(x) h, h) +O(|h
3
|). (A.7)
Chapitre A. Complments 41
Pour une fonction f : R
p
R
n
, les formules de Taylor scrivent
f(x + h) = f(x) + L
f
(h) +
1
2
Q
f
(h) +O(|h
3
|). (A.8)
x, h R
p
et f(x) R
n
: (A.8) est une galit dans R
n
. L
f
(h) dsigne un terme (vecteur
de R
n
) linaire en h, Q
f
(h) dsigne un terme quadratique en h. Pour les expliciter, on peut
crire une formule de type (A.6) pour chaque composante f
i
de f ; pour 1 i n,
f
i
(x + h) = f
i
(x) + J
f
i
(x) h +
1
2
h
T
H
f
i
(x) h +O(|h
3
|).
En rassemblant toutes les lignes et suivant les rgles du produit matrice-vecteur, on obtient
L
f
(h) = J
f
(x) h avec
J
f
(x) = Matrice Jacobienne =
_

_
J
f
1
(x)
. . .
. . .
J
f
n
(x)
_

_
M
n,p
(R).
Pour chaque i, le terme quadratique du dveloppement de f
i
est donn par
1
2
h
T
H
f
i
(x) h.
En rassemblant toutes les lignes et en factorisant h droite, on obtient :
_

_
h
T
H
f
1
(x) h
. . .
. . .
h
T
H
f
n
(x) h
_

_
=
_

_
p

k=1
h
k

2
x
k
x
1
f
1
(x) . . .
p

k=1
h
k

2
x
k
x
p
f
1
(x)
. . . . . .
. . . . . .
p

k=1
h
k

2
x
k
x
1
f
n
(x) . . .
p

k=1
h
k

2
x
k
x
p
f
n
(x)
_

_
_

_
h
1
. . .
. . .
h
p
_

_
. (A.9)
On a obtenu une expression de Q
f
(h) qui permet dcrire (A.8) sous la forme
f(x + h) = f(x) +
_

_
J
f
1
(x)
. . .
. . .
J
f
n
(x)
_

_
h +
1
2
_

_
h
T
H
f
1
(x)
. . .
. . .
h
T
H
f
n
(x)
_

_
h +O(|h
3
|).
42 A.2. Quelques dmonstrations
A.2 Quelques dmonstrations
A.2.1 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)
Chapitre A. Complments 43
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).
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.

S-ar putea să vă placă și