Sie sind auf Seite 1von 16

Chapitre 2

Optimisation sans contrainte


1 Denition
Soit f C(E, R) et E un espace vectoriel norme (le plus souvent R
N
). Lobjectif de ce chapitre est de rechercher des
minimas ou des maximas de f sans contrainte. Ce type de probl`eme secrit:
_
Trouver x E tel que :
f(x) f(y), y E.
(1)
Remarque 1 On denit un probl`eme de minimisation avec contrainte en remplacant dans (1), E par K avec K E
et K ,= E (voir le cours doptimisation du 2nd semestre).
Dans cette denition, on parle de minimum global large. Pour un minimum global strict, on remplace linegalite
large par une inegalite stricte.
On denit egalement le minimum local (large) comme etant un vecteur x E veriant: > 0 tel que f(x) f(y),
y B(x, ).
2 Rappels et notations de calcul dierentiel
Denition 2 Soient E et F des espaces vectoriels normes, f une application de E dans F et x E. On dit que
f est dierentiable en x sil existe T L(E, F) (ensemble des applications lineaires continues de E dans F) telle
que f(x + h) = f(x) + T(h) + |h|(h) avec (h) 0 quand h 0. Lapplication T est alors unique et on la note
Df(x) = T L(E, F).
Examinons quelques cas particuliers despaces E et F:
Cas o` u E = R
N
, F = R
p
Soit f : R
N
R
p
, x R
N
et supposons que f est dierentiable en x; alors Df(x) L(E, F),
et il existe A R
p,N
telle que Df(x)(y) = Ay, y R
N
. On confond alors lapplication lineaire Df(x) et la matrice
A qui la represente (appelee matrice jacobienne). On ecrit donc:
A = Df(x) = (a
i,j
)
1ip, 1jN
o` u a
i,j
=
j
f
i
(x).
Cas o` u E = R
N
, F = R Cest un sous-cas du paragraphe precedent. On a ici (avec le meme abus de notation signale
dans le paragraphe precedent) Df(x) R
1,N
et on peut denir le gradient de f en x par f(x) = (Df(x))
t
R
N
.
Pour (x, y) R
N
R
N
, on a donc
Df(x)y =
N

j=1

j
f(x)y
j
= f(x) y o` u f(x) =
_

1
f(x)
.
.
.

N
f(x)
_

_ R
N
.
Dierentielle dordre 2, matrice hessienne Revenons au cas general de 2 espaces vectoriels normes E et F,
et supposons maintenant que f C
2
(E, F). Cela signie donc que Df C
1
(E, L(E, F)). Par denition, on a
D
2
f(x) L(E, L(E, F)) et donc pour y E, D
2
f(x)(y) L(E, F); en particulier, pour z E, D
2
f(x)(y)(z) F.
Considerons `a nouveau le cas particulier E = R
N
et F = R. On a:
f C
2
(R
N
, R)
_
f C
1
(R
N
, R) et f C
1
(R
N
, R
N
)

.
Soit g = f C
1
(R
N
, R
N
), et x R
N
, alors Dg(x) R
N,N
et on peut denir la matrice hessienne de f, quon note
H
f
, par: H
f
(x) = Dg(x) = D(Df)(x) = (b
i,j
)
i,j=1,...,N
R
N,N
o` u b
i,j
=
2
i,j
f(x). Notons que par denition, Dg(x)
est la matrice jacobienne de g en x.
1
3 Condition necessaire doptimalite
Proposition 3 Soit E un espace vectoriel norme, et soient f C(E, R) et x E tel que f est dierentiable en x. Si
x est un minimum local alors necessairement Df(x) = 0.
Demonstration Supposons quil existe > 0 tel que f(x) f(y) pour tout y B(x, ). Soit z E 0, alors si
t <

z
, on a x + tz B(x, ) et on a donc f(x) f(x + tz).
Comme f est dierentiable en x, on a:
f(x + tz) = f(x) + Df(x)(tz) +[t[
z
(t),
o` u
z
(t) 0 lorsque t 0. On a donc f(x)+tDf(x)(z)+[t[
z
(t) f(x). Et pour

|z|
> t > 0, on a Df(x)(z)+
z
(t)
0. En faisant tendre t vers 0, on obtient que
Df(x)(z) 0, z E.
On a aussi Df(x)(z) 0 z E, et donc: Df(x)(z) 0 z E.
On en conclut que
Df(x) = 0.

Remarque 4 Attention, la proposition precedente ne donne quune condition necessaire. En eet, Df(x) = 0 (on dit
que x est un point stationnaire ou critique) nentrane pas que f atteigne un minimum (ou un maximum) meme
local, en x. Prendre par exemple f(x) = x
3
sur R et x = 0 pour sen convaincre.
4 Resultats dexistence et dunicite
Theor`eme 5 (Existence) Soit E = R
N
et f : E R une application telle que
(i) f est continue,
(ii) f(x) + quand |x| + (on dit que f est coercive).
Alors il existe x R
N
tel que f(x) f(y) y R
N
.
Demonstration La condition (ii) peut encore secrire
A R, R R; |x| R f(x) A.
Si on choisit A = f(0), on obtient alors:
R R; |x| R f(x) f(0).
On en deduit que inf
R
Nf = inf
B
R
f, o` u B
R
= x R
N
; [x[ R. Or, B
R
est un compact de R
N
et f est continue
donc il existe x B
R
tel que f(x) = inf
B
R
f et donc f(x) = inf
R
Nf.
Remarque 6 1. Le theor`eme est faux si E est de dimension innie (i.e. si E est est un espace de Banach), car
dans ce cas B
R
nest pas compacte.
2. Lhypoth`ese (ii) peut etre remplacee par
(ii)

b R
N
, R > 0 tel que |x| R f(x) f(b).
3. Sous les hypoth`eses du theor`eme il ny a pas toujours unicite de x meme dans le cas N = 1, prendre pour sen
convaincre la fonction f denie de R dans R par f(x) = x
2
(x 1)(x + 1).
Denition 7 (Convexite) Soit E un espace vectoriel et f : E R. On dit que f est convexe si (x, y) E
2
t.q.
x ,= y et t [0, 1],
f(tx + (1 t)y) tf(x) + (1 t)f(y).
On dit que f est strictement convexe si (x, y) E
2
t.q. x ,= y et t ]0, 1[,
f(tx + (1 t)y) < tf(x) + (1 t)f(y).
2
Theor`eme 8 (Condition susante dunicite) Soit E un espace vectoriel norme et f : E R strictement con-
vexe, alors il existe au plus un x E tel que f(x) f(y), y E.
Demonstration Supposons quil existe x E et x E tels que f(x) = f(x) = inf
R
Nf. Comme f est strictement
convexe, si x ,= x alors
f(
1
2
x +
1
2
x) <
1
2
f(x) +
1
2
f(x) = inf
R
Nf,
ce qui est impossible, donc x = x.
Remarque 9 Ce theor`eme ne donne pas lexistence. Par exemple dans le cas N = 1 la fonction f denie par
f(x) = e
x
natteint pas son minimum, car inf
R
f = 0 et f(x) ,= 0 x R, et pourtant f est strictement convexe.
Si on reunit les hypoth`eses des theor`emes (5) et (8), on obtient le resultat dexistence et dunicite suivant:
Theor`eme 10 (Existence et unicite) Soit E = R
N
et soit f : E R. On suppose que:
(i) f est continue,
(ii) f(x) + quand |x| +.
(iii) f est strictement convexe,
alors il existe un unique x R
N
tel que f(x) = inf
R
Nf.
Remarque 11 Ce theor`eme reste vrai si E est un espace de Hilbert.
Proposition 12 (1`ere caracterisation de la convexite) Soit E un espace vectoriel norme (sur R) et f C
1
(E, R)
alors:
1. f est convexe ssi f(y) f(x) + Df(x)(y x), (x, y) E
2
2. f est strictement convexe ssi f(y) > f(x) + Df(x)(y x), (x, y) E
2
; x ,= y.
Demonstration
Demonstration de 1.
() Supposons que f est convexe. Soit t [0, 1], on a alors f(ty + (1 t)x) tf(y) + (1 t)f(x) et donc:
f(x + t(y x)) f(x) t(f(y) f(x)). (2)
Comme f est dierentiable,
f(x + t(y x)) = f(x) + Df(x)(t(y x)) + t(t)
o` u (t) 0 lorsque t 0. Donc en reportant dans (2),
(t) + Df(x)(y x) f(y) f(x), t ]0, 1[.
En faisant tendre t vers 0, on obtient alors:
f(y) Df(x)(y x) + f(x).
() Montrons la reciproque. Soit (x, y) E
2
et t ]0, 1[ (pour t = 0 ou t = 1 on na rien `a demontrer). On pose
z = tx + (1 t)y. On a alors par hypoth`ese:
f(y) f(z) + Df(z)(y z),
f(x) f(z) + Df(z)(x z).
En multipliant la premi`ere inegalite pat 1 t, la deuxi`eme par t et en les additionnant, on obtient:
(1 t)f(y) + tf(x) f(z) + (1 t)Df(z)(y z) + tDf(z)(x z)
(1 t)f(y) + tf(x) f(z) + Df(z)((1 t)(y z) + t(x z)).
Et comme (1 t)(y z) + t(x z) = 0, on a donc (1 t)f(y) + tf(x) f(z) = f(tx + (1 t)y).
3
Demonstration de 2.
() On suppose que f est strictement convexe, on veut montrer que f(y) > f(x) + Df(x)(y x) si y ,= x.
On pose z =
1
2
(y x), et comme f est convexe, on peut appliquer la partie 1. de la proposition et ecrire que
f(x + z) f(x) + Df(x)(z). On a donc f(x) + Df(x)(
yx
2
) f(
x+y
2
). Comme f est strictement convexe, ceci
entrane que f(x) + Df(x)(
yx
2
) <
1
2
(f(x) + f(y)), do` u le resultat.
() La methode de demonstration est la meme que pour le 1.
Proposition 13 (Caracterisation des points tels que f(x) = inf
E
f) Soit E un espace vectoriel norme et f une
fonction de E dans R. On suppose que f C
1
(E, R) et que f est convexe. Soit x E. Alors:
f(x) = inf
xE
f(x) Df(x) = 0.
En particulier si E = R
N
alors f(x) = inf
xR
N
f(x) f(x) = 0.
Demonstration
() Supposons que f(x) = inf
xE
f(x) alors on sait (voir proposition 3) que Df(x) = 0 (la convexite est inutile).
() Si f est convexe et dierentiable, dapr`es la proposition 12, on a: f(y) f(x) + Df(x)(y x) y E et comme
par hypoth`ese Df(x) = 0, on en deduit que f(y) f(x) y E. Donc f(x) = inf
xE
f(x).
Proposition 14 (2`eme caracterisation de la convexite) Soit E = R
N
et f C
2
(E, R). Soit H
f
(x) la hessienne
de f au point x. Alors
1. f est convexe ssi H
f
(x) est symetrique et semi-denie positive pour tout x E.
2. f est strictement convexe si H
f
(x) est symetrique denie positive x E. (Attention la reciproque est fausse!)
Demonstration
Demonstration de 1.
() Il est clair que H
f
(x) est symetrique car f est C
2
et donc
2
i,j
f =
2
j,i
f. Par denition, H
f
(x) = D(f(x)) et
f C
1
(R
N
, R
N
). Soit (x, y) E
2
, comme f est convexe et de classe C
1
, on a grace `a la proposition 12:
f(y) f(x) +f(x) (y x). (3)
Soit C
2
(R, R) denie par (t) = f(x + t(y x)). Alors:
f(y) f(x) = (1) (0) =
_
1
0

(t)dt = [

(t)(t 1)]
1
0

_
1
0

(t)(t 1)dt,
cest-`a-dire: f(y) f(x) =

(0) +
_
1
0

(t)(1 t)dt. Or

(t) = f(x + t(y x)) (y x), et

(t) = H
f
(x + t(y x)))(y x) (y x).
On a donc:
f(y) f(x) = f(x)(y x) +
_
1
0
H
f
(x + t(y x))(y x) (y x)(1 t)dt. (4)
Les inegalites (3) et (4) entranent:
_
1
0
H
f
(x + t(y x))(y x) (y x)(1 t)dt 0 x, y E. On a donc:
_
1
0
H
f
(x + tz)z z(1 t)dt 0 (x, z) E
2
. (5)
En xant x E, on ecrit (5) avec z = y, > 0, y R
N
. On obtient:

2
_
1
0
H
f
(x + ty)y y(1 t)dt 0 x, y E, > 0,
4
et donc:
_
1
0
H
f
(x + ty)y y(1 t)dt 0 > 0.
Pour (x, y) E
2
xe, H
f
(x + ty) tend vers H
f
(x) uniformement lorsque 0, t [0, 1]. On a donc:
_
1
0
H
f
(x)y y(1 t)dt 0; c.`a.d.
1
2
H
f
(x)y y 0.
Donc pour tout (x, y) R
N
R
N
, H
f
(x)y y 0 donc H
f
(x) est semi-denie positive pour tout x E.
() Pour montrer la reciproque, on va utiliser la proposition 12 et montrer pour cela que f(y) f(x)+f(x)(yx)
pour tout (x, y) E
2
. Grace `a (4), on a
f(y) f(x) = f(x) (y x) +
_
1
0
H
f
(x + t(y x))(y x) (y x)(1 t)dt.
Or H
f
(x + t(y x)) est semi-denie positive donc f(y) f(x) + f(x) (y x) pour pour tout couple (x, y) E
2
.
La fonction est donc bien convexe.
Demonstration de 2.
() On utilise encore la caracterisation de la propostion 12. Linegalite (4) donne cette fois f(y) > f(x)+f(x)(y
x) si x ,= y, ce qui prouve que f est strictement convexe.
Contre-exemple Pour montrer que la reciproque de 2. est fausse, on propose le contre-exemple suivant: Soit N = 1
et f C
2
(R, R), on a alors H
f
(x) = f

(x). Si f est la fonction denie par f(x) = x


4
, alors f est strictement convexe
dapr`es la proposition 12 (le graphe est en tout point au dessus de la tangente en ce point). Pourtant f

(x) 0 mais
f

(0) = 0.
Cas dune fonctionnelle quadratique Soient A R
N,N
et f la fonction de R
N
dans R denie par f(x) =
1
2
Ax x b x. Alors f C

(R
N
, R). On montre (exo) que:
f(x) =
1
2
(Ax + A
t
x) b.
En particulier si A est symetrique, f(x) = Ax b. Le calcul de la hessienne de f donne:
H
f
(x) = D(f(x)) =
1
2
(A + A
t
).
On en deduit que si A est symetrique, H
f
(x) = A. On peut montrer en particulier (exo) que si A est symetrique
denie positive alors il existe un unique x R
N
tel que f(x) f(x) pour tout x R
N
, et que ce x est aussi lunique
solution du syst`eme lineaire Ax = b.
5 Algorithmes doptimisation sans contrainte
Soit E = R
N
et f C(E, R). On suppose quil existe x E tel que f(x) = inf
E
f. On cherche `a calculer x (si f est
de classe C
1
, on a necessairement f(x) = 0).
5.1 Methodes de descente
Denition 15 Soient f C(E, R) et E = R
N
.
1. Soit x E, on dit que w E 0 est une direction de descente en x sil existe
0
> 0 tel que
f(x + w) f(x) [0,
0
]
2. Soit x E, on dit que w E 0 est une direction de descente stricte en x sil existe
0
> 0 tel que
f(x + w) < f(x) ]0,
0
]
3. Une methode de descente pour la recherche de x tel que f(x) = inf
E
f consiste `a construire une suite (x
n
)
n
de la mani`ere suivante:
5
(a) Initialisation x
0
E,
(b) Iteration n: on suppose x
0
, ..., x
n
connus,
i. On cherche w
n
direction de descente stricte de x
n
ii. On prend x
n+1
= x
n
+
n
w
n
avec
n
> 0 bien choisi.
Proposition 16 Soient E = R
N
, f C
1
(E, R), x E et w E 0, alors
1. si w est une direction de descente en x alors w f(x) 0.
2. Si w f(x) < 0 alors w est une direction de descente stricte en x.
3. si f(x) ,= 0 alors w = f(x) est une direction de descente stricte en x.
Demonstration
1. Soit w E 0 une direction de descente en x alors par denition,

0
> 0 tel que f(x + w) f(w), [0,
0
].
Soit la fonction de R dans R denie par: () = f(x + w). On a C
1
(R, R) et

() = f(x + w) w.
Comme w est une direction de descente, on peut ecrire: () (0), [0,
0
], et donc
[0,
0
],
() (0)

0.
En passant `a la limite lorsque tend vers 0, on deduit que

(0) 0, c.`a.d. f(x) w 0.


2. Supposons que w f(x) < 0 donc

(0) < 0. Comme

est continue, il existe


0
> 0 tel que si [0,
0
] alors

() < 0. Si ]0,
0
], alors () (0) =
_

(t) dt < 0, et on a donc bien () < (0) pour tout ]0,


0
],
ce qui prouve que w est une direction de descente en x.
3. Soit w = f(x) ,= 0. On a alors w f(x) < 0 et on peut utiliser le resultat precedent.
Algorithme du gradient `a pas xe - Soient f C
1
(E, R) et E = R
N
. On se donne > 0.
_

_
Initialisation : x
0
E,
Iteration n : x
n
connu , (n 0)
w
n
= f(x
n
),
x
n+1
= x
n
+ w
n
.
(6)
Theor`eme 17 (Convergence du gradient `a pas xe) Soitent E = R
N
et f C
1
(E, R). On suppose que:
1. > 0 tel que (f(x) f(y)) (x y) [x y[
2
, (x, y) E
2
(condition dellipticite),
2. M > 0 tel que [f(x) f(y)[ M[x y[, (x, y) E
2
(condition de Lipschitz sur f),
alors:
1. f est strictement convexe,
2. f(x) + quand [x[ + (coercivite),
3. il existe un unique x E tel que f(x) = inf
E
f(consequence de 1. et 2.),
4. si 0 < <
2
M
2
alors la suite (x
n
)
nN
construite par (6) converge vers x lorsque n +.
Demonstration: Montrons `a partir des hypoth`eses linegalite suivante:
f(y) f(x) f(x) (y x) +

2
[y x[
2
, (x, y) E
2
. (7)
On consid`ere pour cela la fonction denie de R dans R
N
par: (t) = f(x + t(y x)). Alors (1) (0) =
_
1
0
f(x + t(y x)) (y x)dt, et donc:
f(y) f(x) =
_
1
0
f(x + t(y x)) (y x) dt.
6
On a donc:
f(y) f(x) f(x) (y x) =
_
1
0
(f(x + t(y x)) (y x) f(x) (y x) dt,
cest-`a-dire:
f(y) f(x) f(x) (y x) =
_
1
0
(f(x + t(y x)) f(x)) (y x) dt.
Grace `a la premi`ere hypoth`ese du theor`eme, ceci entrane:
f(y) f(x) f(x) (y x)
_
1
0
t[y x[
2
dt =

2
[y x[
2
> 0 si y ,= x.
ce qui donne (7).
On deduit de (7) et de la proposition 12 que f est strictement convexe.
Montrons maintenant que f coercive. On ecrit (7) pour x = 0:
f(y) f(0) +f(0) y +

2
[y[
2
.
Dapr`es linegalite de Cauchy Schwarz, f(0) y [f(0)[ [y[, on a donc
f(y) f(0) +[y[
_

2
[y[ [f(0)[
_
+quand [y[ +.
Montrons enn la convergence de lalgorithme. On pose h(x) = x f(x). Lalgorithme du gradient `a pas xe
est un algorithme de point xe pour h:
x
n+1
= x
n
f(x
n
) = h(x
n
).
On peut appliquer le theor`eme 3 (theor`eme du point xe avec relaxation) du chaptre 1 et en deduire que h est
strictement contractante si 0 < <
2
M
2
. Donc x
n
x unique point xe de h, cest-`a-dire x = h(x) = x f(x).
Ceci entrane f(x) = 0 donc f(x) = inf
E
f car f est convexe.
Algorithme du gradient `a pas optimal - Lidee est dessayer de calculer `a chaque iteration le param`etre
qui minimise la fonction dans la direction de descente donne par le gradient. Soient f C
1
(R, R) et E = R
N
, cet
algorithme secrit:
_

_
Initialisation : x
0
E.
Iteration n : x
n
connu.
On calcule w
n
= f(x
n
).
On choisit
n
> 0 tel que
f(x
n
+
n
w
n
) f(x
n
+ w
n
) 0.
On pose x
n+1
= x
n
+
n
w
n
.
(8)
Les questions qui se posent alors sont les suivantes:
1. Existe-t-il
n
tel que f(x
n
+
n
w
n
) f(x
n
+ w
n
), 0?
2. Comment calcule-t-on
n
?
3. La suite (x
n
)
nN
construite par cet algorithme converge-t-elle?
La reponse `a ces 3 questions est apportee par le theor`eme suivant:
Theor`eme 18 (Convergence du gradient `a pas optimal) Soit f C
2
(R
N
, R) telle que f(x) + quand
[x[ +. Alors:
1. La suite (x
n
)
nN
est bien denie par (8) (
n
existe mais nest pas necessairement unique).
2. La suite (x
n
)
nN
est bornee et si (x
n
k
)
kN
est une sous-suite convergente de limite

x, on a necessairement
f(

x) = 0. De plus si f est convexe on a f(

x) = inf
R
N f.
3. Si f est strictement convexe on a alors x
n
x quand n +, avec f(x) = inf
R
N f.
7
Demonstration sous forme dexercice:
1. Montrer quil existe R > 0 t.q. f(x) > f(x
0
) pour tout x , B
R
= x R
N
, [x[ R.
2. Montrer quil existe M > 0 t.q. [H(x)y y[ M[y[
2
pour tout y R
N
et pour tout x B
R+1
.
Indication: Utiliser le fait que H est continue.
3. (Construction de la suite) On suppose x
n
connu. On pose w
n
= f(x
n
). Si w
n
= 0, on pose x
n+1
= x
n
. Si
w
n
,= 0, montrer quil existe > 0 t.q. f(x
n
+ w
n
) f(x
n
+ w
n
) pour tout 0. On choisit alors un que
lon note
n
.
Indication: Etudier la fonction : R
+
R denie par () = f(x
n
+ w
n
).
4. Montrer que:
(a) La suite (f(x
n
))
nN
est une suite convergente.
Indication: Montrer que f est minoree et remarquer que la suite (f(x
n
))
nN
est decroissante.
(b) x
n
B
R
n N.
Indication: le deduire de la question precedente.
(c) f(x
n
+ w
n
) f(x
n
) [w
n
[
2
+ (
2
/2)M[w
n
[
2
[0, 1/[w
n
[].
Indication: Utiliser la fonction , la question 4.(b). et la question 2.
(d) f(x
n+1
) f(x
n
) [w
n
[
2
/(2M); si [w
n
[ M.
Indication: Utiliser le fait que le choix de
n
est optimal et le resultat de 4.(c).
(e) f(x
n+1
) + f(x
n
) [w
n
[
2
/(2M), avec M = max(M,

M), avec

M = sup[f(x)[, x B
R
.
Indication: Etudier le polynome du 2nd degre p
n
() = f(x
n
) [w
n
[
2
+
1
2
[w
n
[
2

2
dans les cas o` u [w
n
[ M
(cf. question 4.(c).) puis dans le cas [w
n
[ M.
5. Montrer que f(x
n
) 0 et quil existe une sous-suite t.q. x
n
k

x quand k + et f(

x) = 0.
Indication: Utiliser linegalite prouvee en 4.(e). pour montrer que [w
n
[ 0 lorsque n +.
6. On suppose quil existe un unique x R
N
t.q. f(x) = 0. Montrer que f(x) f(x) x R
N
et que x
n
x.
Indication: Pour montrer que toute la suite converge, utiliser largument dunicite de la limite, en raisonnant
par labsurde (supposer que la suite ne converge pas et aboutir `a une contradiction).
Solution:
1. On sait que f(x) + lorsque [x[ +. Donc A R, R R
+
; [x[ > R f(x) > A. En particulier pour
A = f(x
0
) ceci entrane
R > 0; x , B
R
f(x) > f(x
0
).
2. Comme f C
2
(R
N
, R), sa hessienne H est continue, donc |H| atteint son maximum sur B
R+1
qui est un ferme
borne de R
N
. Soit M = max
xB
R+1
|H(x)|, on a H(x)y y M[y[
2
.
3. Soit w
n
= f(x
n
). Si w
n
,= 0, montrons quil existe > 0 tel que
f(x
n
+ w
n
) f(x
n
+ w
n
) > 0.
On sait que f(x) + lorsque [x[ +. Soit () = f(x
n
+ w
n
). On a (0) = f(x
n
) et () =
f(x
n
+ w
n
) + lorsque +. En eet si +, on a [x
n
+ w
n
[ +.
Donc etant continue, elle admet un minimum, atteint en , et donc R
+
: f(x
n
+w
n
) f(x
n
+w
n
) >
0.
4. (a) Montrons que la suite (f(x
n
))
nN
est convergente. La suite (f(x
n
))
nN
verie (par construction)
f(x
n+1
) f(x
n
).
De plus f(x) + lorsque [x[ donc f est bornee inferieurement (sinon, (a
n
); f(a
n
) et
par continuite, la suite (a
n
) est non bornee, donc par coercivite f(a
n
) +(ou pour une sous-suite) do` u
la contradiction). On en conclut que la suite (f(x
n
))
nN
est convergente.
(b) Montrons que x
n
B
R
n N. On sait que si x , B
R
alors f(x) > f(x
0
). Or la suite (f(x
n
))
nN
est
decroissante donc f(x
n
) f(x
0
) n, donc x
n
B
R
.
8
(c) Montrons que f(x
n
+ w
n
) f(x
n
) [w
n
[
2
+

2
2
M[w
n
[
2
, [0,
1
[w
n
[
]. Soit () = f(x
n
+ w
n
). On a
() = (0) +

(0) +

2
2

), o` u

]0, [.
Or

() = f(x
n
+ w
n
) w
n
et

() = H(x
n
+ w
n
)w
n
w
n
. Donc
() = (0)
..
f(x
n
)
+ f(x
n
)
. .
w
n
w
n
+

2
2
H(x
n
+

w
n
)w
n
w
n
.
Si [0,
1
[w
n
[
] on a
[x
n
+

w
n
[ [x
n
[ +
1
[w
n
[
[w
n
[
R + 1,
donc x
n
+

w
n
B
R+1
et par la question 2.,
H(x
n
+

w
n
)w
n
w
n
M[w
n
[
2
On a donc bien linegalite cherchee.
(d) Montrons que f(x
n+1
) f(x
n
)
[w
n
[
2
2M
si [w
n
[ M.
Comme le choix de
n
est optimal, on a
f(x
n+1
) = f(x
n
+
n
w
n
) f(x
n
+ w
n
), R
+
.
donc en particulier
f(x
n+1
) f(x
n
+ w
n
), [0,
1
[w
n
[
].
En utilisant la question precedente, on obtient
f(x
n+1
) f(x
n
) [w
n
[
2
+

2
2
M[w
n
[
2
def
= p
n
(), [0,
1
[w
n
[
]. (9)
Or la fonction p
n
atteint son minimum pour
[w
n
[
2
+ M[w
n
[
2
= 0
c.a.d. M = 1 ou encore =
1
M
ce qui est possible si
1
[w
n
[

1
M
, (puisque qualors (9) est vraie).
Comme on a suppose [w
n
[ M, on a donc
f(x
n+1
) f(x
n
)
[w
n
[
2
M
+
[w
n
[
2
2M
= f(x
n
)
[w
n
[
2
2M
.
(e) Montrons que f(x
n+1
) + f(x
n
)
[w
n
[
2
2M
o` u M = max(M,

M) avec

M = sup[f(x)[, x B
R
. On sait
par la question precedente que si
[w
n
[ M, on a f(x
n+1
) + f(x
n
)
[w
n
[
2
2M
.
Montrons que si [w
n
[ M, alors f(x
n+1
) + f(x
n
)
[w
n
[
2
2

M
. On aura alors le resultat souhaite.
Dapr`es (9) on en deduit
f(x
n+1
) min
[0,
1
|w
n
|
]
_
f(x
n
) [w
n
[
2
+

2
2
M[w
n
[
2
_
. .
p
n
()
Si [w
n
[ M, la fonction p
n
() est decroissante sur [0,
1
[w
n
[
] et le minimum est donc atteint pour =
1
[w
n
[
.
Or
p
n
_
1
[w
n
[
_
= f(x
n
) [w
n
[ +
M
2
f(x
n
)
[w
n
[
2
f(x
n
)
[w
n
[
2
2

M
.
9
5. Montrons que f(x
n
) 0 lorsque n +. On a montre que n, [w
n
[
2
2M(f(x
n
) f(x
n+1
). Or la suite
(f(x
n
))
nN
est convergente. Donc [w
n
[
2
0 lorsque n + et w
n
= f(x
n
) ce qui prouve le resultat. La
suite (x
n
)
nN
est bornee donc (n
k
)
kN
et

x R
N
; x
n
k

x lorsque k + et comme f(x


n
k
) 0, on a par
continuite f(

x) = 0.
6. On suppose !

x R
N
tel que f(

x) = 0. Montrons que f(

x) f(x) x R
N
et que x
n


x quand
n +. Comme f est croissante `a linni, il existe un point qui realise un minimum de f, et on sait quen ce
point le gradient sannule; en utilisant lhypoth`ese dunicite, on en deduit que ce point est forcement

x, et donc
f(

x) f(x) pour tout x R


N
.
Montrons maintenant que la suite (x
n
)
nN
converge vers

x. En raison de lhypoth`ese dunicite, on a forcement

x = x, et on sait quon a la convergence dune sous-suite de (x


n
)
nN
vers x par la question 5. Il reste donc `a
montrer que cest toute la suite qui converge. Suppposons quelle ne converge pas; alors
; k N, n
k
0 et [x
n
k
x[ > . (10)
Mais dapr`es la question 5., on peut extraire de la suite (x
n
k
)
kN
une sous-suite qui converge vers x, ce qui
contredit (10). Donc la suite (x
n
)
nN
converge.
Algorithme du gradient `a pas variable - Dans ce nouvel algorithme, on ne prend pas forcement le
param`etre optimal pour , mais on lui permet detre variable dune iteration `a lautre. Lalgorithme secrit:
_

_
Initialisation : x
0
E.
Iteration n : x
n
connu.
On calcule w
n
= f(x
n
) o` u w
n
,= 0
(si w
n
= 0 l

algorithme s

arrete).
On choisit
n
0 tel que
f(x
n
+
n
w
n
) f(x
n
).
On pose x
n+1
= x
n
+
n
w
n
.
(11)
Theor`eme 19 (Convergence du gradient `a pas variable) Soit f C
1
(R
N
, R) telle que f(x) + quand
[x[ +. Alors:
1. La suite (x
n
)
nN
est bien denie par (11)
2. La suite (x
n
)
nN
est bornee. Si x
n
k

x quand k + et si f(x
n
k
) 0 alors f(

x) = 0. Si de plus f est
convexe on a f(

x) = inf
R
N f.
3. Si f(x
n
) 0 quand n + et si f est strictement convexe alors x
n
x et f(x) = inf
R
N f.
Demonstration: Elle est facile en adaptant la demonstration du theor`eme precedent.
Algorithme du gradient conjugue - Cette methode a ete decouverte en 1952 par Hestenes et Steifel pour
la minimisation de fonctionnelles quadratiques, cest-`a-dire de la forme
f(x) =
1
2
Ax x b x,
o` u A R
N,N
est une matrice symetrique denie positive et b R
N
. On rappelle que f(x) = inf
R
N f Ax = b.
Denition 20 (Vecteurs conjugues) Soit A R
N,N
une matrice symetrique denie positive,
1. Deux vecteurs v et w de R
N
0 sont dits A-conjugues si Av w = v Aw = 0.
2. Une famille (w
1
, . . . , w
p
) de R
N
0 est dite A-conjuguee si w
i
Aw
j
= 0 (i, j) 1, . . . , p
2
; i ,= j.
Proposition 21 Soit A R
N,N
une matrice symetrique denie positive, (w
1
, . . . , w
p
) une famille de R
N
, alors:
1. si la famille (w
1
, . . . , w
p
) est A-conjuguee alors elle est libre;
2. dans le cas o` u p = N, si la famille (w
1
, . . . , w
p
) est A-conjuguee alors cest une base de R
N
.
10
Demonstration Le point 2. est immediat d`es quon a demontre le point 1. Supposons donc que (w
1
, . . . , w
p
) est
une famille A-conjuguee; soit (
i
)
i=1,...,p
R. Supposons que

p
i=1

i
w
i
= 0, on a donc

p
i=1

i
w
i
Aw
j
= 0 et
donc
j
w
j
Aw
j
= 0. Or w
j
Aw
j
,= 0 car w
j
,= 0 et A est symetrique denie positive. On en deduit que
j
= 0
j = 1, . . . , p. La famille est donc libre.
Proposition 22 Soit A R
N,N
une matrice symetrique denie positive, b R
N
et f une fonction denie de R
N
dans R
N
, par f(x) =
1
2
Ax x b x. On suppose que la suite (x
n
)
nN
est denie par:
Initialisation x
0
R
N
Iteration n x
n+1
= x
n
+
n
w
n
o` u
1) w
n
,= 0 est une direction de descente stricte en x
n
2)
n
est optimal dans la direction w
n
.
Si la famille (w
0
, . . . , w
N1
) est une famille A-conjuguee alors x
N
= x avec Ax = b.
Demonstration: Soit w
n
direction de descente stricte en x
n
et
n
optimal dans la direction w
n
; alors
n
> 0 et
f(x
n+1
) w
n
= 0, cest-`a-dire
(Ax
n+1
b) w
n
= 0 (12)
On va montrer que
(Ax
N
b) w
p
= 0, p 0, . . . , N 1.
Comme (w
0
, . . . , w
N1
) est une base de R
N
, on en deduit alors que Ax
N
= b, cest-`a-dire x
N
= x. Remarquons
dabord grace `a (12) que (Ax
N
b) w
N1
= 0. Soit maintenant p < N 1. On a:
Ax
N
b = A(x
N1
+
N1
w
N1
) b = Ax
N1
b +
N1
Aw
N1
.
On a donc en iterant,
Ax
N
b = Ax
p+1
b +
N1
Aw
N1
+ . . . +
p+1
Aw
p+1
, p 0, . . . , N 1.
On en deduit que
(Ax
N
b) w
p
= (Ax
p+1
b) w
p
+
N1

j=p+1
(
i
Aw
j
w
p
).
Comme les directions w
j
sont conjuguees, on a donc (Ax
N
b) w
p
= 0 pour tout p = 0, . . . , N 1 et donc Ax
N
= b.

Le resultat precedent sugg`ere de rechercher une methode de minimisation de la fonction quadratique f selon le
principe suivant: pour x
0
, . . . , x
n
connus, w
0
, . . . , w
n1
connus, on cherche w
n
tel que:
1. w
n
soit une direction de descente stricte en x
n
,
2. w
n
soit A-conjugue avec w
p
pour tout p < n.
Si on arrive `a trouver w
n
on prend alors x
n+1
= x
n
+
n
w
n
avec
n
optimal dans la direction w
n
. La propriete
precedente donne x
N
= x avec Ax = b (la methode converge donc en au plus N iterations, cest une methode directe).
Denition 23 (Methode du gradient conjugue) Soit A R
N,N
une matrice symetrique denie positive, b R
N
et f(x) =
1
2
Ax x b x.
Initialisation
Soit x
0
R
N
, et soit r
0
= b Ax
0
= f(x
0
).
1) Si r
0
= 0, alors Ax
0
= b et donc x
0
= x
auquel cas lalgorithme sarrete.
2) Si r
0
,= 0, alors on pose w
0
= r
0
et on choisit
0
optimal dans la direction w
0
.
On pose alors x
1
= x
0
+
0
w
0
.
Iteration 1 n N 1:
On suppose x
0
, . . . , x
n
et w
0
, . . . , w
n1
connus et on pose r
n
= b Ax
n
.
11
1) Si r
n
= 0 on a Ax
n
= b et donc x
n
= x
auquel cas lalgorithme sarrete.
2) Si r
n
,= 0, alors on pose w
n
= r
n
+
n1
w
n1
avec
n1
tel que w
n
Aw
n1
= 0,
et on choisit
n
optimal dans la direction w
n
;
on pose alors x
n+1
= x
n
+
n
w
n
.
Theor`eme 24 Soit A symetrique denie positive, A R
N,N
, b R
N
et f(x) =
1
2
Ax x b x alors lalgorithme
precedent denit une suite (x
n
)
n=0,...,p
avec p N telle que x
N
= x avec Ax = b.
Demonstration
I nitialisation Si r
0
,= 0, comme w
0
= r
0
= b Ax
0
= f(x
0
), w
0
est une direction de descente stricte; il existe
donc
0
qui minimise la fonction denie de R dans R par () = f(x
0
+ w
0
). La valeur de
0
est obtenue en
demandant que

() = 0, ce qui donne
0
=
r
0
w
0
Aw
0
w
0
. Lelement x
1
= x
0
+
0
w
0
est donc bien deni. Notons que
r
1
= Ax
1
+ b = r
0

0
Aw
0
, et donc r
1
w
0
= 0.
I teration n Si r
n
,= 0, on pose w
n
= r
n
+
n1
w
n1
. Comme w
n1
,= 0, on peut choisir
n1
tel que w
n
Aw
n1
=
0, c.a.d. (r
n
+
n1
w
n1
) Aw
n1
= 0, en prenant

n1
=
r
n
Aw
n1
w
n1
Aw
n1
.
Montrons maintenant que w
n
est une direction de descente stricte en x
n
. On a:
w
n
(f(x
n
)) = (r
n
+
n1
w
n1
) (f(x
n
))
= (f(x
n
) +
n1
w
n1
) (f(x
n
))
= [f(x
n
)[
2

n1
w
n1
f(x
n
).
Or w
n1
f(x
n
) = 0 car
n1
est le param`etre de descente optimal en x
n1
dans la direction w
n1
, on a donc:
w
n
f(x
n
) = [f(x
n
)[
2
= [r
n
[
2
> 0
ceci donne que w
n
est une direction de descente stricte en x
n
. On peut choisir > 0 optimal en x
n
dans la direction
de w
n
, et le calcul de
n
(similaire `a celui de letape dinitialisation) donne

n
=
r
n
w
n
Aw
n
w
n
. (13)
On peut donc bien denir x
n+1
= x
n
+
n
w
n
. Remarquons que ce choix de
n
entrane que
r
n
w
n1
= 0. (14)
Pour pouvoir appliquer la proposition 22, il reste `a montrer que la famille w
0
, . . . , w
N1
est A-conjuguee. Ceci est
lobjet de la proposition qui suit. On en deduit nalement que x
N
= x.
Proposition 25 Sous les hypoth`eses et notations de la denition precedente, soit n N tel que 1 n N si r
q
,= 0
pour 0 q n, les proprietes suivantes sont veriees:
1. r
n
w
q
= 0, q = 0, . . . , n 1,
2. V ect(r
0
, . . . , r
n
) = V ect(r
0
, . . . , A
n
r
0
),
3. V ect(w
0
, . . . , w
n
) = V ect(r
0
, . . . , A
n
r
0
),
4. w
n
Aw
q
= 0, q = 0, . . . , n 1,
5. r
n
r
q
= 0, q = 0, . . . , n 1.
En particulier, la famille (w
0
, . . . , w
N1
) est A-conjuguee.
Lespace V ect(r
0
, . . . , A
n
r
0
) est appele espace de Krylov. La demonstration de cette proposition se fait par
recurrence et necessite les resultats preleminaires suivants:
12
Lemme 26 Sous les hypoth`eses de la denition 23, on a:

n
=
r
n
r
n
w
n
Aw
n
, (15)
r
n
= r
n1

n1
Aw
n1
, (16)
r
n
r
n1
= 0 (17)

n1
=
r
n
r
n
r
n1
r
n1
. (18)
Demonstration:
1. Comme
n
est le param`etre optimal dans la direction w
n
, on sait (voir (13)) que

n
=
r
n
w
n
Aw
n
w
n
.
Or par denition, w
n
= r
n
+
n1
w
n1
, et donc w
n
r
n
= r
n
r
n
+
n1
w
n1
r
n
. Il ne reste plus qu`a remarquer que
w
n1
r
n
= 0 en raison de loptimalite de
n1
(voir (14)). On en deduit (15).
2. Par denition, x
n
= x
n1
+
n1
w
n1
, donc Ax
n
= Ax
n1
+
n1
Aw
n1
, ce qui entrane r
n
= r
n1

n1
Aw
n1
.
3. Par denition, et grace `a (16), on a:
r
n
r
n1
= r
n1
r
n1

n1
Aw
n1
r
n1
.
Or w
n1
= r
n1
+
n2
w
n2
, et donc r
n1
= w
n1

n2
w
n2
. On en deduit que
r
n
r
n1
= r
n1
r
n1

n1
Aw
n1
w
n1
+
n1

n2
Aw
n1
w
n2
.
Or Aw
n1
w
n2
= 0 et par (15), on a r
n1
r
n1

n1
Aw
n1
w
n1
= 0.
4. Par denition,

n1
=
r
n
Aw
n1
w
n1
Aw
n1
.
Or, par (16), on a:
Aw
n1
=
1

n1
(r
n1
r
n
).
On conclut en reportant dans le numerateur de lexpression de
n1
et en tenant compte de (15) et (17).
Demonstration de la proposition 25 On demontre les proprietes par recurrence.
Etudions dabord le cas n = 1. Remarquons que r
1
w
0
= 0 en vertu de (13) (on rappelle que cette propriete
decoule du choix optimal de
0
).
On a grace `a (16):
r
1
= r
0

0
Aw
0
= r
0

0
Ar
0
,
car w
0
= r
0
. On a donc V ect(r
0
, r
1
) = V ect(r
0
, Ar
0
).
De plus, comme w
0
= r
0
et w
1
= r
1
+
1
w
0
, on a
vect(r
0
, r
1
) = V ect(w
0
, w
1
).
On en deduit que 2. et 3. sont vrais pour n = 1.
Enn, on a bien w
1
Aw
0
= 0 car w
0
et w
1
sont conjugues, et r
0
r
1
= 0 en vertu de (17).
On a ainsi montre que les proprietes 1. `a 5. sont veriees au rang n = 1. Supposons maintenant que ces proprietes
sont vraies jusquau rang n et demontrons quelles le sont encore au rang n + 1.
1. En vertu de (16), et par les hypoth`eses de recurrence 1. et 4., on a:
r
n+1
w
q
= r
n
w
q

n
Aw
n
w
q
= 0, q n 1.
De plus, (13) entrane r
n+1
w
n
= 0.
13
2. Montrons que V ect(r
0
, r
1
, . . . , r
n+1
) = V ect(r
0
, Ar
0
, . . . , A
n+1
r
0
). Pour ce faire, commencons par remarquer
que
r
n+1
V ect(r
0
, Ar
0
, . . . , A
n+1
r
0
).
En eet, en vertu de (16), on a: r
n+1
= r
n

n
Aw
n
, et par hypoth`ese de recurrence, on a
r
n
V ect(r
0
, Ar
0
, . . . , A
n
r
0
), et w
n
V ect(r
0
, Ar
0
, . . . , A
n
r
0
).
Montrons maintenant que A
n+1
r
0
V ect(r
0
, Ar
0
, . . . , r
n+1
). Comme r
n+1
V ect(r
0
, Ar
0
, . . . , A
(
n + 1)r
0
), il existe
une famille (
k
)
k=0,...,n+1
telle que
r
n+1
=
n+1

k=0

k
A
k
r
0
=
n

k=0

k
A
k
r
0
+
n+1
A
n+1
r
0
.
Or grace `a la propriete 1. on sait que r
n+1
w
q
= 0, q n, et donc r
n+1
, V ect(w
0
, w
1
, . . . , w
n
) = V ect(r
0
, Ar
0
, . . . , A
n
r
0
).
On a donc
n+1
,= 0, et on peut donc ecrire
A
n+1
r
0
=
1

n+1
(r
n+1

k=0

k
A
k
r
0
) V ect(r
0
, r
1
, . . . , r
n+1
),
par hypoth`ese de recurrence.
3. Montrons maintenant que
V ect(w
0
, . . . , w
n+1
) = V ect(r
0
, Ar
0
, . . . , A
n+1
r
0
).
On a w
n+1
= r
n+1
+
n
w
n
. Or on vient de montrer que
r
n+1
V ect(r
0
, Ar
0
, . . . , A
n+1
r
0
),
et par hypoth`ese de recurrence, w
n
V ect(r
0
, Ar
0
, . . . , A
n
r
0
). On a donc bien w
n+1
V ect(r
0
, Ar
0
, . . . , A
n+1
r
0
).
Montrons que reciproquement, A
n+1
r
0
V ect(w
0
, . . . , w
n+1
). On a montre en 2. que
A
n+1
r
0
=
1

n+1
(r
n+1

k=0

k
A
k
r
0
).
Or r
n+1
= w
n+1

n
w
n
V ect(w
0
, w
1
, . . . , w
n+1
), et
n

k=0

k
A
k
r
0
V ect(r
0
, . . . , r
n
) = V ect(w
0
, . . . , w
n
),
par hypoth`ese de recurrence. On en deduit que
A
n+1
r
0
V ect(w
0
, . . . , w
n+1
).
4. On veut maintenant montrer que w
n+1
Aw
q
= 0, q n. Pour q = n, cette propriete est veriee en raison du
choix de w
n+1
(conjugue avec w
n
).
Pour q < n, on calcule
w
n+1
Aw
q
= r
n+1
Aw
q
+
n
w
n
Aw
q
. (19)
Or w
n
Aw
q
= 0 q n 1 par hypoth`ese de recurrence. De plus, toujours par hypoth`ese de recurrence, w
q

V ect(r
0
, Ar
0
, . . . , A
q
r
0
), et donc
Aw
q
V ect(r
0
, Ar
0
, . . . , A
q+1
r
0
) = V ect(w
0
, w
1
, . . . , w
q+1
).
On a montre en 1. que r
n+1
r
q
= 0 pour tout k n, on a donc r
n+1
Aw
q
= 0, et en reportant dans (19), on obtient
donc que w
n+1
Aw
q
= 0 pour tout q n.
5. Il reste `a montrer que r
n+1
r
q
= 0 pour tout q n. Pour q = n, on la demontre dans le lemme 26. Pour
q n 1, on a
r
n+1
r
q
= (r
n

n
Aw
n
) r
q
= r
n
r
q

n
Aw
n
r
q
.
14
Or r
n
r
q
= 0 par hypoth`ese de recurrence, et Aw
n
r
q
= w
n
Ar
q
; or Ar
q
V ect(r
0
, . . . , r
q
) et w
n
r
k
= 0 pour tout
k n 1 par hypoth`ese de recurrence 1. On en deduit que r
n+1
r
q
= 0.
Ceci termine la demonstration de la proposition 25.
Methode de Newton
Soit f C
2
(R
N
, R) et g = f C
1
(R
N
, R). On a dans ce cas:
f(x) = inf
R
N
f g(x) = 0.
Si de plus f est convexe alors on a g(x) = 0 f(x) = inf
R
N f. Dans ce cas dequivalence, on peut employer la
methode de Newton pour minimiser f en appliquant lalgorithme de Newton pour chercher un zero de g = f. On a
D(f) = H
f
o` u H
f
est la matrice hessienne de f en x. La methode de Newton secrit dans ce cas:
_
Initialisation x
0
R
N
,
Iteration n H
f
(x
n
)(x
n+1
x
n
) = f(x
n
).
(20)
La methode de Newton pour minimiser une fonction f convexe est une methode de descente. En eet, si
H
f
(x
n
) est inversible, on a x
n+1
x
n
= [H
f
(x
n
)]
1
(f(x
n
)) soit encore x
n+1
= x
n
+
n
w
n
o` u
n
= 1 et
w
n
= [H
f
(x
n
)]
1
(f(x
n
)). Si f est convexe, H
f
est une matrice symetrique semi-denie positive (dej`a vu). Comme
on suppose H
f
(x
n
) inversible par hypoth`ese, la matrice H
f
(x
n
) est donc symetrique denie positive.
Dapr`es la proposition 16, w
n
est alors une direction de descente stricte si w
n
,= 0 (donc f(x
n
) ,= 0). On a en eet
w
n
f(x
n
) = [H
f
(x
n
)]
1
f(x
n
) f(x
n
) > 0
ce qui est une condition susante pour que w
n
soit une direction de descente stricte.
On peut egalement remarquer, dapr`es le theor`eme 10 vu dans la 1`ere partie du cours, que si f C
3
(R
N
, R), si x
est tel que f(x) = 0 et si H
f
(x) = D(f)(x) est inversible alors il existe > 0 tel que si x
0
B(x, ), alors la suite
(x
n
)
nN
est bien denie par (20) et x
n
x lorsque n +. De plus il existe > 0 tel que [x
n+1
x[ [x
n
x[
2
pour tout n N.
Gradient conjugue preconditionne
On peut montrer que le nombre doperations necessaires pour calculer x (cad pour calculer x
N
, sauf dans le cas
miraculeux o` u x
n
= x pour n < N) secrit 2N
3
+ O(N
2
). Or, on sait que le nombre doperations pour Cholesky est
N
3
/6; la methode nest donc pas interessante comme methode directe car elle demande 12 fois plus doperations que
Cholesky.
On peut alors se demander si la methode est interessante comme methode iterative, cad si on peut esperer que
x
n
soit proche de x pour n N. Malheureusement, si la dimension du syst`eme est grande, ceci nest pas le
cas en raison de laccumulation des erreurs darrondi. Il est meme possible de devoir eectuer plus de N iterations
pour se rapprocher de x. Cependant, dans les annees 80, des chercheurs se sont rendus compte que ce defaut pouvait
etre corrige `a condition dutiliser un preconditionneur. Donnons par exemple le principe du preconditionneur dit de
Cholesky incomplet.
On calcule une approximation de la matrice de Cholesky de A cad quon cherche L triangulaire inferieure
inversible telle que LL
t
soit proche de A, en un sens `a denir. Si on pose y = L
t
x alors le syst`eme Ax = b est
equivalent au syst`eme L
1
A(L
t
)
1
y = L
1
b. On consid`ere alors la matrice B = L
1
A(L
t
)
1
(si L est exactement la
matrice de Cholesky, alors B = I
d
). On montre tr`es facilement (exo) que B est symetrique denie positive. On peut
donc apppliquer lalgorithme du gradient conjugue `a la recherche du minimum de la fonction f denie par
f(y) =
1
2
By y L
1
b y.
On en deduit lexpression de la suite (y
n
)
nN
puis (x
n
)
nN
en inversant un syst`eme triangulaire superieur.
On peut alors montrer que lalgorithme du gradient conjugue preconditionne ainsi obtenu peut secrire directement
pour la suite (x
n
) de la mani`ere suivante:
15
Iteration n On pose r
n
= b Ax
n
,
on calcule s
n
solution de LL
t
s
n
= r
n
.
On pose alors
n1
=
s
n
r
n
s
n1
r
n1
et w
n
= s
n
+
n1
w
n1
.
Le param`etre optimal
n
a pour expression:
n
=
s
n
r
n
Aw
n
w
n
, et on pose alors x
n+1
= x
n
+
n
w
n
.
Le choix de la matrice L peut se faire par exemple dans le cas dune matrice creuse, en eectuant une factorisation
incompl`ete, qui consiste `a ne remplir que certains elements de la matrice L pendant la factorisation et laisser les autres
`a 0.
Generalisation de la methode du gradient conjugue
On peut generaliser le principe de lalgorithme du gradient conjugue `a une fonction f non quadratique. Pour cela,
on reprend le meme algorithme que celui de la denition 23, mais on adapte le calcul de
n1
et
n
. On obtient ainsi
les algorithmes de Fletcher-Reeves et Polak-Ribi`ere.
16

Das könnte Ihnen auch gefallen