Documente Academic
Documente Profesional
Documente Cultură
(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
). (1.6)
tel que 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
|,
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 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
) = 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
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
. 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)
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
_
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
.
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
. 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
) = 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
|
|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
2
, cet algorithme
converge linairement avec un taux = [2
2 1[.
2
3
0.5
1
3
1
2
2
= [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
d.
On voudrait que la drive directionnelle 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
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
de x
tel que si x
0
1
.
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
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)]
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
Ax = A
b. De plus si A
est de rang plein, 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
+ (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
. En utilisant la caractrisation donne par la proposition 2.3 : il existe > 0 tel que :
s ]0, ], f(x
).
Or : x
X. De plus, d = x x
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)
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)]
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) h.
La drive f
(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
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
) = 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.