Académique Documents
Professionnel Documents
Culture Documents
Dr BELLOUFI MOHAMMED
Octobre 2015
0.1. OPTIMISATION SANS CONTRAINTES
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
3 Algorithmes 31
3.0.1 Convergence globale . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.0.2 Vitesse de convergence . . . . . . . . . . . . . . . . . . . . . . . . . 32
3.1 Méthode du gradient . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
i
TABLE DES MATIÈRES
ii
0.2. INTRODUCTION
0.2 Introduction
L’optimisation est une branche des mathématiques et de l’informatique en tant que
disciplines, cherchant à modéliser, à analyser et à résoudre analytiquement ou numérique-
ment les problèmes qui consistent à déterminer quelles sont la ou les solution(s) satisfaisant
un objectif quantitatif tout en respectant d’éventuelles contraintes.
Dans la vie courante, nous sommes fréquemment confrontés à des problèmes "d’op-
timisation" plus ou moins complexes. Cela peut commencer au moment où l’on tente de
ranger son bureau, de placer son mobilier, et aller jusqu’à un processus industriel, par
exemple pour la plani…cation des di¤érentes tâches. Ces problèmes peuvent être exprimés
sous la forme générale d’un "problème d’optimisation".
L’optimisation joue un rôle important en recherche opérationnelle (domaine à la fron-
tière entre l’informatique, les mathématiques et l’économie), dans les mathématiques ap-
pliquées (fondamentales pour l’industrie et l’ingénierie), en analyse et en analyse numé-
rique, en statistique pour l’estimation du maximum de vraisemblance d’une distribution,
pour la recherche de stratégies dans le cadre de la théorie des jeux, ou encore en théorie
du contrôle et de la commande.
L’optimisation peut être dé…nie comme la science qui détermine la meilleure solution à
certains problèmes mathématiquement dé…nie, qui sont souvent des modèles de physique
réal. C’est une technique qui permet de "quanti…er" les compromis entre des critères
parfois non commensurables ([2004]).
L’optimisation recouvre l’étude des critères d’optimalité pour les di¤érents problèmes,
la détermination des méthodes algorithmiques de solution, l’étude de la structure de telles
méthodes et l’expérimentation de l’ordinateur avec ces méthodes avec vrais problèmes de
la vie ([1987]).
D‘un point de vue mathématique, l‘optimisation consiste à rechercher le minimum
ou le maximum d’une fonction avec ou sans contraintes.
L’optimisation possède ses racines au 18ième siècle dans les travaux de :
-Taylor, Newton , Lagrange, qui ont élaboré les bases des développements limités.
- Cauchy ([1847]) fut le premier à mettre en œuvre une méthode d’optimisation,
méthode du pas de descente, pour la résolution de problèmes sans contrainte.
Il faut attendre le milieu du vingtième siècle, avec l’émergence des calculateurs et
surtout la …n de la seconde guerre mondiale pour voir apparaître des avancées spectacu-
laires en termes de techniques d’optimisation. A noter, ces avancées ont été essentiellement
obtenues en Grande Bretagne.
Aujourd’hui, tous les systèmes susceptibles d’être décrits par un modèle mathématique
sont optimisés. La qualité des résultats et des prédictions dépend de la pertinence du
(P ) minimiser f (x) x 2 Rn
1.1 Di¤érentiabilité
On se place dans Rn , n < 1, considéré comme un espace vectoriel normé muni de la
norme euclidienne notée k:k.
Soit un ouvert de Rn :
1.1.2 Gradient
Si les dérivées partielles @f =@xi exixtent pour tout i; le gradient de f est dé…ni de la
façon suivante.
5
1.1. DIFFÉRENTIABILITÉ
@f @f
(rf (x))T = ; :::; ,
@x1 @xn (x)
Exemple 1.1.1 Soit f (x1 ; x2 ; x3 ) = ex1 + x21 x3 x1 x2 x3 : Le gradient de f est donné par
0 1
ex1 + 2x1 x3 x2 x3
B C
rf (x1 ; x2 ; x3 ) = @ x1 x3 A.
2
x1 x1 x2
@f
Remarque 1.1.1 i) (x) = 0.
@0
@f @f
ii) (x) = (x).
@xi @ei
On note e1 ; e2 ; :::en les éléments de la base canonique de Rn , où ei est le vecteur
de Rn donné par :
(
6 i
0 Si j =
(ei )j = ij = 8i; j = 1; 2; :::; n,
1 Si j = i
(symboles de Kronecker).
@f
(x) = h5f (x); hi ; 8x 2 8h 2 Rn :
@h
@ 2f
H(x) = r(rT f )(x) = r2 f (x) = (x); i = 1; :::; n; j = 1; :::; n:
@xi @xj
Alors 0 1
@2f @2f @2f
@x1 @x1 @x1 @x2 @x1 @xn
B @2f @2f @2f C
B C
H(x) = B
B
@x2 @x1
..
@x2 @x2
.. ..
@x2 @xn
.. C:
C
@ . . . . A
@2f @2f @2f
@xn @x1 @xn @x2 @xn @xn
Exemple 1.1.3 Soit f (x1 ; x2 ; x3 ) = ex1 + x21 x3 x1 x2 x3 : L’hessienne de f est donné par
0 1
ex1 + 2x3 x3 2x1 x2
B C
H (x) = @ x3 0 x1 A:
2x1 x2 x1 0
Preuve. a) évidente
b) On a :
!
@ @ Xn
@f
hrf (x); hi = (x)hj
@xi @xi j=1
@xj
Xn
@ 2f
= (x)hj
i=1
@xi xj
= (52 f (x)h)i .
où a 2 Rn est un vecteur donné (c’est à dire, f est une fonction linéaire), Alors on calcule
@f
facilement : = ak ; donc
@xk
5f = a
où A 2 Mn (R) est une matrice carrée, réelle, de taille n (c’est à dire, f est la fonction
quadratique associée à la matrice A). Alors pour un p 2 f1; 2; :::ng …xé, on peut écrire
X
n X
n X
n X
n
f (x) = Ai;j xi xj = App x2p + Apj xp xj + Aip xi xp + Aij xi xj ,
i;j=1 j=1;j6=p i=1;i6=p i;j=1;i6=p;j6=p
@f Xn Xn Xn Xn
= 2App xp + Apj xj + Aip xi = Apj xj + Aip xi = (Ax)p + (AT x)p :
@xp j=1;j6=p i=1;i6=p j=1 i=1
5f (x) = (A + AT )x; 8x 2 Rn :
@f X n
(x) = (A + AT )ik xk 8i = 1; :::; n:
@xi k=1
On a alors immédiatement :
@ 2f
(x) = (A + AT )ij; 8i; j = 1; :::; n ,
@xi @xj
c’est à dire
r2 f (x) = A + AT ; 8x 2 Rn :
5 hAx; xi = 2Ax; 8x 2 Rn :
52 hAx; xi = 2A; 8x 2 Rn :
f (x + hd) f (x)
lorsque h tend vers 0:
h
Autrement dit :
f (x + hd) f (x)
f (x; d) = lim = rT f (x)d:
h!0 h
@f 1
(x) = lim [f (x + th) f (x)] = g 0 (0);
@h t!0 t
dT 5 f (x) < 0:
Preuve. ([1])
Preuve. ([1])
Exemple 1.1.6 Soit f (x) = 12 x21 + 2x22 et soit x = (1 1)T : Nous considérons trois direc-
tions ! ! !
1 1 1
d1 = rf (x) = ; d2 = et d3 = :
4 1 3
La dérivée directionnelle de f dans chacune de ces directions vaut :
5 f (x)T 5 f (x) = d T
5 f (x) dT 5 f (x);
Preuve. ([1])
Exemple 1.1.7 Soit f (x) = 12 x21 + 2x22 et soit x = (1 1)T : Nous considérons trois direc-
tions ! ! !
1 1 1
d1 = rf (x) = ; d2 = et d3 = :
4 1 3
La dérivée directionnelle de f dans chacune de ces directions vaut :
1. Si f 2 C 1 ( ) alors
2. Si f 2 C 2 ( ) alors
Dé…nition 1.3.1 Un ensemble C Rn est dit convexe si pour tout couple (x; y) 2 C 2 et
8 2 [0; 1] on a ;
x + (1 ) y 2 C:
X
k
tj xj :
j=1
Une fonction f est concave si f convexe. On dira que f est strictement convexe dans
C si et seulement si :
f (x) = f (b
x) + A(x b) + kx
x bk (b
x x; x b);
x
où : (b
x; x b) ! 0: On peut note le vecteur A comme suit :
x
x!b
x
@f (b
x) @f (b
x)
A = Of (b
x) = ( ; ::::; ):
@x1 @xn
Dé…nition 1.3.5 (Fonction convexe deux foix di¤érentiable) Soit C Rn non vide
et f : Rn ! R:est dite deux foix di¤érentiable ou point x
b 2 int(C) s’il existe un vecteur
Of (b
x) et une matrice symétrique H(bx) d’ordre (n; n) appellèe matrice hessienne, et une
1
x) + Of (b
8x 2 C : f (x) = f (b x)T (x b) + (x
x b)T H(b
x x)(x b) + kx
x bk2 (b
x x; x b);
x
2
où : (b
x; x b) ! 0:On peut écrire :
x
x!b
x
2 3
@ 2 f (^
x) @ 2 f (^
x) @ 2 f (^
x)
6 @x1 @x1 @x1 @x2 @x1 @xn 7
6 2 7
6 @ f (^ x) @ 2 f (^
x) @ 2 f (^
x) 7
6 7
6 @x2 @x1 @x2 @x2 @x2 @xn 7
H(x) = 6
6
7:
7
6 7
6 7
6 7
4 @ 2 f (^
x) @ 2 f (^
x) 2
@ f (^ x) 5
@xn @x1 @xn @x2 @xn @xn
epi (f ) = f( ; ) 2 V R j 2 U; f ( )g
F (u + v) F (u)
8 >0 ( )= :
p P
p P
p P
p
8 ( i )1 i p 2 (R+ ) tq i = 1, 8 (xi )1 i p 2 (Rn )p , f i xi if (xi ) :
i=1 i=1 i=1
–Si x (ou y) n’est pas dans K, alors IK (x) (ou IK (y)) = +8, et l’inegalité de convexité
est trivialement veri…ée.
(b) Reciproquement. Soient x; y 2 K et t 2 [0; 1] ; par convexite de IK
Comme IK ne prend que les valeurs 0 ou +8, IK (tx+(1 t)y) = 0 et tx+(1 t)y) 2 K.
Exercice 03
(a) Supposons f convexe ; soient (u; ) et (v; ) dans épi(f ) et t 2 [0; 1]. Comme U
est convexe, tu + (1 t)v 2 U et
f (tu + (1 t)v) = tf (u) + (1 t)f (v) = t + (1 t) ;
donc t(u; ) + (1 t)(v; ) 2épi(f ).
(b) Reciproquement. ´
Comme (u; f (u)) et (v; f (v)) sont dans épi(f ), t(u; f (u)) + (1 t)(v; f (v)) aussi.
La convexité de f en découle.
Exercice 04
Soient 1 2 > 0. Posons t = 1
2
2 ]0; 1] :
Donc
1
F (u + 2 v) F (u) t(F (u + 1 v) F (u)) = (F (u + 1 v) F (u));
2
c’est-à-dire ( 1) ( 2) :
Exercice 05
On montre que si f est lipschitzienne sur [0; 1] et dérivable, alors f0 est bornée sur
]0; 1] :
Soit x 2 ]0; 1] et h assez petit pour que x h 2 [0; 1]. Comme f est lipschitzienne sur
]0; 1]
kf (x h) f (x)k k jhj ;
P
p
comme x = i
xi , on utilise l’hypothèse de récurrence pour conclure.
i=1; i6=i0
L’étude de ces problèmes est importante pour des raisons diverses. Beaucoup de problèmes
d’optimisation avec contraintes sont transformés en des suites de problèmes d’optimisation
sans contraintes (multiplicateur de Lagrange, méthodes des pénalités, . . .). Létude des
problèmes d’optimisation sans contraintes trouve aussi des applications dans la résolution
des systèmes non linéaires. Une grande classe d’algorithmes que nous allons considérer
pour le problème d’optimisation sans contraintes ont la forme générale suivante
f (xk+1 ) f (xk );
qui assure la décroissance su¢ sante de la fonction objectif f . De tels algorithmes sont
souvent appellés méthodes de descente. Essentiellement la di¤érence entre ces algorithmes
réside dans le choix de la direction de descente dk , cette direction étant choisie nous
sommes plus où moins ramenés à un problème unidimensionnel pour la détermination de
k : Pour s’approcher de la solution optimale du problème (P ) (dans le cas général, c’est
un point en lequel ont lieu peut être avec une certaine précision les conditions nécessaires
d’optimalité de f ), on se déplace naturellement à partir du point xk dans la direction de la
décroissance de la fonction f . L’optimisation sans contraintes a les propriétés suivantes :
19
2.1. RÉSULTATS D’EXISTENCE ET D’UNICITÉ
8x 2 Rn ; f (^
x) f (x):
f (^
x) f (x); 8x 2 V" (^
x):
f (^
x) < f (x); 8x 2 V" (^
x) et x 6= x^ :
n
P
n
p
p
8x = (x1 ; :::; xn ) 2 R kxkp = jxi j .
i=1
Preuve. [09]
- Soit d = inf (P); d < +1 car f est propre. Soit (xp )p2N 2 Rn une suite minimisante,
c’est-à-dire telle que
lim f (xp ) = d:
p!+1
Montrons que (xp ) est bornée.
Si ce n’était pas le cas on pourrait extraire de cette suite une sous-suite (encore notée
(xp )) telle lim kxp k = +1 . Par coercivité de f on aurait lim f (xp ) = +1 ce qui
p!+1 p!+1
contredit le fait que lim f (xp ) = d < +1.
p!+1
Comme (xp ) est bornée, on peut alors en extraire une sous-suite (encore notée (xp ))
qui converge vers x 2 Rn Par continuité de f , on a alors
d = lim f (xp ) = f (x).
p!+1
En particulier d > 1 et x est une solution du problème (P).
Preuve. [09]
- Supposons que f admette au moins un minimum m et soient x1 6= x2 (dans Rn )
réalisant ce minimum :f (x1 ) = f (x2 ) = m. Par stricte convexité de la fonction f on a
alors :
x1 + x2 1
f < (f (x1 ) + f (x2 )) = m ;
2 2
ceci contredit le fait que m est le minimum. Donc x1 = x2 .
Donnons pour terminer un critère pour qu’une fonction soit strictement convexe et
coercive :
Théorème 2.1.3 Soit J une fonction C 1 de Rn dans R. On suppose qu’il existe > 0
tel que
8(x; y) 2 Rn Rn (rf (x) rf (y) ; x y) kx yk2 (2.2)
Alors J est strictement convexe et coercive ; en particulier le problème (P) admet une
solution unique .
Preuve. [09]
- La condition (2.2) implique que rJ est monotone et que f est convexe. De plus on
a la stricte convexité de J. En…n J est coercive : en e¤et, appliquons la formule de Taylor
avec reste intégral
Z1 Z1
d
f (y) = f (x) + f (x + t(y x)) dt = f (x) + (rf (x + t(y x)) ; y x) dt.
dt
0 0
Donc
Z1
f (y) = f (x) + (rf (x); y x) + (rf (x + t(y x)) rf (x) ; y x) dt: (2.3)
0
Proposition. 2.1.1 Une fonction f : Rn ! R deux fois di¤érentiable sur Rn est ellip-
tique si et seulement si
Preuve. [09]
- On utilise de nouveau la formule de Taylor appliquée à la fonction ' : t ! '(t) =
f (x + ty). La démonstration est laissée au lecteur.
Il faut maintenant donner des conditions pour pouvoir calculer la (ou les) solutions.
On va chercher à montrer que cette solution est solution de certaines équations, de sorte
qu’il sera plus facile de la calculer.
f (x + d) f (x)
= rf (x)t d + kdk (x; d); 6= 0;
Preuve. [09]
On démontre par l’absurde, on suppose que rf (^
x) 6= 0.
Si on suppose d = rf (^x), on obtient :
x)t :d =
rf (^ x)k2 < 0;
krf (^
f (^
x + d) < f (^
x); 8 2 ]0; [ :
ce qui donne une contradiction avec le fait que x^ est un minimum local, d’où rf (^
x) = 0.
Dé…nition 2.2.1 a) Une matrice symétrique A est dite semi dé…nie positive si :
8d 2 Rn ; dt Ad 0:
8d 2 Rn ; d 6= 0; dt Ad > 0:
Preuve. [09]
Soit d 2 Rn quelconque, f étant deux fois di¤érentiable au point x^, on aura pour tout
6= 0
1 2 t
f (^
x + d) = f (^x) + d H(^x)d + 2 kdk2 (^ x; d);
2
avec x; d) ! 0, quand ! 0:
(^
Ceci implique
f (^
x + d) f (^
x) 1
2
= dt H (^
x) d + d 2 (^
x; d) ;
2
f (^
x + d) f (^
x)
2
0; 8 2 ]0; [ :
Comme x est un minimum local alors f (x + d) f (x) pour su¢ samment petit, d’où
1 t
d H(x)d + kdk2 (x; d) 0 pour petit:
2
En passant à la limite qund ! 0; on obtient que dt H(x)d 0; d’où H(x) est semi
dé…nie positive.
Preuve. [09]
f étant deux fois di¤érentiable au point x^, on aura pour tout x 2 Rn
1
x) + (x
f (x) = f (^ x^)t H (^
x) (x x^) + k(x x^)k2 (^
x; (x x^)) ;
2
avec
(^
x; (x x^)) ! 0 (rf (^
x) = 0) :
x!^
x
Supposons que x^ n’est pas un optimum local strict. Alors il existe une suite fxk gk2N telle
que xk 6= x^ : 8k, et
xk 6= x^ : 8k; xk ! x^ et f (xk ) f (^x) :
k!1
f (xk ) f (^
x) 1 t
2 = dk H (^
x) dk + (^
x; (xk x^)) , (^
x; (xk x^)) ! 0
k(xk x^)k 2 k!1
Alors
1 t
d H (^
x) dk + (^
x; (xk x^)) 0; 8k:
2 k
D’autre part la suite fdk gk2N est bornée (kdk k = 1; 8n). Donc il existe une sous suite
fdk gk2N1 N telle que
dk ! ~
d:
k!1;k2N1
1~
x) d~
dH (~ 0:
2
cas convexe
Théorème 2.2.5 Soit f : Rn ! R telle que f est convexe et di¤érentiable. Alors x^ est
un minimum globale de f si et seulement si
rf (^
x) = 0:
Remarque 2.2.1 Dans le cas ou f est convexe, alors tout minimum local est aussi glo-
bale. De plus si f est strictement covexe, alors tout minimum local devient non seulement
global mais aussi unique.
8v 2 Rn (Av; v) kvk2 ;
couvercle) telles que pour un volume donné V , la somme des aires des côtés et du plancher
soit minimale.
Exercice 07
On se propose d’approcher un nuage de points donnés par les couples de réels (ti ; xi ),
i 2 f1; :::; N g par une parabole d’équation x(t) = at2 + bt + c où a; b et c sont trois réels
à déterminer. Autrement dit, on fait une régression “parabolique”.
(a) Exprimer le problème ci-dessus sous forme de problème de minimisation au sens des
moindres carrés. On précisera en particulier la fonction coût, les inconnues et l’ensemble
des contraintes.
(b) Ce problème de minimisation a-t’il une solution ? Pourquoi ? Est-elle unique ?
(c) Ecrire le système d’optimalité permettant de trouver le minimum.
P
N
On notera Sk la quantité Sk = tki :
i=1
Pour x2 = 0, la matrice a deux valeurs propres de signes di¤érents. Le point (0; 0) n’est
ni un minimum, ni un maximum. Pour x2 = 1, la matrice est d2…nie positive. Le point
( 21 ; 1) est un minimum strict.
b) Le point (0; 0) est un point critique mais ce n’est ni un minimum, ni un maximum.
c) Les deux points critiques sont (0; 0) et (3; 3). Le point (0; 0) n’est ni un maximum
ni un minimum car la matrice hessienne n’est ni semi-positive ni semi-négative. (3; 3) est
un minimum strict.
Exercice 05
Un rapide calcul donne pour tous u; v 2 Rn et t 2 [0; 1] :
t(t 1)
J(tu + (1 t)v) tJ(u) (1 t)J(v) = (A(u v); u v).
2
D’où a) et b).
La question c) est une application directe du cours.
d) Soient u; v 2 Rn et t > 0 :
t2
J(u + tv) J(u) = t(Au b; v) + (Au; u). (B.1)
2
S’il existe u 2 Rn tel que : 8v 2 Rn ; J(u) J(v), ( B.1) donne après division par t
t
8v 2 Rn (Au b; v) + (Au; u) 0.
2
En faisant tendre t vers 0 on voit que (Au b; v) 0 pour tout v et donc Au b=0
(l’ensemble fw 2 Rn j Aw = bg n’est donc pas vide) ; par conséquent
t
8v 2 Rn ; 8t > 0 (Au; u) 0,
2
V
xy > 0 (par exemple) et z = xy
. On doit donc minimiser la fonction
(x + y) 2V 2V
A(x; y) = xy + 2V = xy + + .
xy y x
(
y 3 = 2V; p
3
Le système d’optimalité est : et on obtient x = y = 2V .
x3 = 2V;
Exercice 07
a) Le problème s’écrit
min J(a; b); (a; b; c) 2 R3 ,
P
n
2
où J(a; b; c) = (xi at2i bti c) . Les inconnues sont (a; b; c) et il n’y a pas de
i=1
contraintes. 23
S4 S3 S2
6 7
b) Il y a solution unique si la matrice A = 4 S3 S2 S1 5 associée à la forme
S2 S1 N
P k
n
quadratique est dé…nie positive (Sk = ti ).
i=1 2 N 3
P 2
2 3 6 xi ti 7
a 6 i=1 7
6 7 6 PN 7
c) Le système d’optimalité s’écrit : A4 b 5 = 6
6 x i ti
7:
7
6 i=1 7
c 4 P N 5
xi
i=1
Algorithmes
Ecrire un algorithme n’est ni plus ni moins que se donner une suite (xk )k2N de Rn ; étudier
la convergence de l’algorithme, c’est étudier la convergence de la suite (xk )k2N .
31
La notion de convergence globale concerne le fait qu’on aura limite même si l’itéré ini-
tial est très éloigné de la limite x^: Au contraire , on aura seulement une convergence locale
si une suite fxk gk converge vers x^. Il est trés important de souligner qu’elle n’implique
pas (contrairement à ce que pourrait suggérer le terme) la convergence vers un optimum
global pour tout point de départ x0 . Il s’agirait là, du reste, d’une condition beaucoup très
sévère, qui ne serait remplir pratiquement par aucun des algorithmes cunnus. Néanmoins,
on peut noter que dés qu’un algorithme possède la propriété de convergence global, il su¢ t
d’imposer une condition de convexité pour obtenir précisément la convergence de l’algo-
rithme vers un optimum global du problème (P ), quelque soit le point de départ choisi. Il
est bien entendu que c’est très impotant d’assurer la convergence d’un algorithme, mais
la vitesse de la convergence est un facteur à prendre en compte lors de l’utilisation (où
la génération) d’un algorithme, on a en e¤et "intérêt" à ce que la méthode soit la plus
rapide possible tout en restant précise et stable.
3. Critère d’arrêt
Si kxk+1 xk k < " , STOP.
Sinon, on pose k = k + 1 et on retourne à 2.
Dans tout ce qui suit, " est un réel positif (petit) donné qui représente la
précision désirée.
Cette méthode a pour avantage d’être très facile à mettre en oeuvre. Malheureuse-
ment, les conditions de convergence sont assez lourdes (c’est essentiellement de la stricte
convexité) et la méthode est en général assez lente. Nous donnons ci-dessous un critère
de convergence :
2
Alors, si on choisit le pas k dans un intervalle [ 1 ; 2] tel que 0 < 1 < 2 < , la
M
méthode du gradient converge vers le minimum de J.
R1
J(xk+1 ) = J(xk ) + (rJ(xk ); xk+1 xk ) + (rJ(xk + t(xk+1 xk )) rJ(xk ); xk+1 xk )dt:
0
1 R1
J(xk+1 ) J(xk ) kxk+1 xk k2 + krJ(xk + t(xk+1 xk )) rJ(xk )k kxk+1 xk k dt;
k 0
1 M M 1
J(xk+1 ) J(xk ) kxk+1 xk k2 + kxk+1 x k k2 = kxk+1 xk k 2 :
k 2 2 k
2
Si on choisit k dans un intervalle [ 1; 2] tel que 0 < 1 < 2 < , nous obtenons
M
alors
M 1
J(xk+1 ) J(xk ) kxk+1 xk k 2 :
2 2
La suite J(xk ) est alors strictement décroissante ; comme elle est minorée elle converge.
Cela entraîne d’une part que J(xk+1 ) J(xk ) tend vers 0 et d’autre part que la suite (xk )
est bornée (par coercivité). On peut donc extraire de (xk ) une sous-suite convergente vers
x. De plus comme
1
2 1 M
kxk+1 xk k [J(xk+1 ) J(xk )] ;
2 2
xk+1 xk
la suite (xk+1 xk ) tend également vers 0. Par conséquent rJ(xk ) = tend
k
vers 0.
Par continuité de rJ, on obtient rJ(x) = 0. Donc x est l’unique minimum x de J.
Ceci étant vrai pour toute valeur d’adhérence de la suite (xk ) cela prouve que toute la
suite (xk ) converge vers x .
Remarque 3.1.1 Lorsque J véri…e (2:2) et (3:1), on peut aussi interpréter l’algorithme
du gradient à pas constant comme la méthode des approximations successives appliquée à
la recherche du point …xe de la fonction
S (x) = x rJ(x);
xk+1 = xk k rJ(xk );
Exemple 3.1.1 Les conditions du théorème peuvent paraître compliquées, aussi nous don-
nons un exemple. Soit J la fonction de Rn vers R déjà évoquée plusieurs fois (car elle
joue un rôle important) dé…nie par
1
J(x) = (Ax; x) (b; x);
2
Remarque 3.1.2 La notion d’ellipticité est très importante, car elle conditionne la conver-
gence de la plupart des algorithmes qui vont être décrits par la suite. Toutefois, les condi-
tions de convergence que nous donnons sont toujours des conditions su¢ santes. L’algo-
rithme converge si elles sont véri…ées mais il peut éventuellement converger, même
si elles ne le sont pas ....
En pratique, on ne calcule pas et M . Pour trouver l’intervalle de convergence de ,
on fait plusieurs tests pour di¤érentes valeurs. La non convergence se traduit en général,
soit par une explosion de la solution ( elle va clairement vers +1) soit par des oscillations
(périodiques ou non) qui empêchent la suite des itérés de converger vers une valeur.
Dé…nition 3.2.1 Soit A une matrice symétrique n n, dé…nie positive. On dit que deux
vecteurs x et y de Rn sont A conjugués (ou conjugués par rapport à A) s’ils véri…ent
xT Ay = 0:
Description de la méthode
Soit fd0 ; d1 ; :::; dn g une famille de vecteurs A-conjugués. On appelle alors méthode de
directions conjuguées toute méthode itérative appliquée à une fonction quadratique stric-
tement convexe de n variables : q(x) = 21 xT Ax + bT x + c; avec x 2 Rn et A 2 Mn n est
x0 donné,
xk+1 = xk + k dk ;
q0 ( k) = dTk rq(xk+1 ) = 0;
Soit :
dTk A(xk + k dk ) + dTk b = 0;
X
i
di+1 = i+1 + '(i+1)m dm :
m=0
Nous pouvons noter que si di+1 est construite d’une telle manière, elle est e¤ectivement
linéairement indépendante avec d0 ; :::; di .
En e¤et, le sous-espace généré par les directions d0 ; :::; di est le même que le sous-espace
généré par les directions 0 ; ::::; i , et i+1 est linéairement indépendant de 0 ; ::::; i :
i+1 ne fait donc pas partie du sous-espace généré par les combinaisons linéaires de la
X
i
forme '(i+1)m dm , de sorte que di+1 n’en fait
m=0
pas partie non plus et est donc linéairement indépendante des d0 ; :::; di .
Les coe¢ cients '(i+1)m , eux sont choisis de manière à assurer la A-conjugaison des
d0 ; :::; di+1 .
rq(x) = Ax + b;
et r2 q(x) = A:
On suppose ici que la fonction à minimiser est quadratique sous la forme : q(x) =
1 T
2
x Ax + bT x + c:
Si l’on note gk = rf (xk ), l’algorithme prend la forme suivante.
Cet algorithme consiste à générer une suite d’itérés fxk g sous la forme :
xk+1 = xk + k dk :
les coe¢ cients k+1 étant choisis de telle manière que dk soit conjuguée avec toutes les
directions précédentes. autrement dit :
dTk+1 Adk = 0;
on en déduit :
T
dTk+1 Adk = 0) rq(xk+1 ) + k+1 dk Adk = 0
) rT q(xk+1 )Adk + T
k+1 dk Adk =0
rT q(xk+1 )Adk T
gk+1 Adk
) k+1 = T
= T
:
dk Adk dk Adk
2-déterminer le pas k :
En particulier, une façon de choisir k consiste à résoudre le problème d’optimisation
unidimensionnelle suivant :
on en déduit :
dTk gk 1 dT dT gk
k = = gk kT = T k :
dTk Adk Adk dk dk Adk
Le pas k obtenu ainsi s’appelle le pas optimal.
Algorithme 3.1 (Algorithme du gradient conjugué "quadratique"
Etape 0 : (initialisation)
Soit x0 le point de départ, g0 = rq(x0 ) = Ax0 + b, poser d0 = g0 ;
poser k = 0 et aller à l’étape 1:
Etape 1 :
si gk = 0 : STOP ( x = xk )."Test d’arrêt"
si non aller à l’étape 2.
Etape 2 :
dTk gk
k = T ;
dk Adk
T
gk+1 gk+1
= T
: (3.4)
gk gk
c) Les directions d0 ; d1 ; :::; dk+1 engendrées par l’algorithme sont mutuellement conju-
guées.
Preuve. On raisonne par récurrence sur k en supposant que d0 ; d1 ; :::; dk sont mutuelle-
ment conjuguées.
a) Montrons d’abord l’équivalence de (3.2) et de (3.3).
On a : dk = gk + k dk 1 :
Donc (3.2) s’écrit :
dTk gk
k =
dTk Adk
[ gk + k dk 1 ]T gk
=
dTk Adk
gkT gk dTk 1 gk
= T k T
dk Adk dk Adk
Comme (d0 ; d1 ; :::; dk 1 ) sont mutuellement conjuguées, xk est l’optimum de q(x) sur la
variété k passant par x0 et engendrée par (d0 ; d1 ; :::; dk 1 ).
On a alors :
T 1 T
gk+1 Adk = gk+1 [gk+1 gk ] ;
k
et en utilisant (3.3)
gkT gk
k = ;
dTk Adk
il vient
T dTk Adk T
gk+1 Adk = :g [gk+1 gk ]
gkT gk k+1
g T Adk T
gk+1 [gk+1 gk ]
) k+1T
= :
dk Adk gkT gk
Or
T T
gk+1 Adk gk+1 [gk+1 gk ]
k+1 = T = ;
dk Adk gkT gk
car
gk = dk k dk 1 :
Appartient au sous-espace engendré par (d0 ; d1 ; :::; dk ) et que gk+1 est orthogonal à ce
sous-espace .
c) Montrons en…n que dk+1 est conjuguée par rapport à (d0 ; d1 ; :::; dk ).
T
dTk+1 Adk = gk+1 + k+1 dk Adk
T T
= gk+1 Adk + k+1 dk Adk
T
T gk+1 Adk T
= gk+1 Adk + d Adk
dTk Adk k
= 0:
On a :
dTk+1 Adi = T
gk+1 Adi + T
k+1 dk Adi :
Le seconde terme est nul par l’hypothèse de récurrence ((d0 ; d1 ; :::; dk )sont mutuelle-
ment conjuguées).
1
Adi = (Axi+1 Axi )
i
1
= (gi+1 gi ) :
i
En écrivant :
gi+1 = di+1 i di ;
gi = di i 1 di 1 ;
Mais puisque (d0 ; d1 ; :::; dk ) sont mutuellement conjuguées, on sait que le point xk+1
est l’optimum de q(x) sur la variété k+1 , engendrée par (d0 ; d1 ; :::; dk ) :
Donc gk+1 est orthogonal au sous-espace engendré par (d0 ; d1 ; :::; dk ) et comme Adi
T
appartient à ce sous-espace pour i = 0; 1; :::; k 1, on en déduit gk+1 Adi = 0 ce qui achève
la démonstration.
T
dTk rq(xk ) = rq(xk ) + k+1 dk 1 rq(xk )
= rq(xk )T rq(xk ) + T
k+1 dk 1 rq(xk )
T
HS gk+1 yk
k = T
:
dk yk
FR kgk k2
k = :
kgk 1 k2
D
T
gk+1 r2 f (xk ) dk
k = :
dTk r2 f (xk ) dk
P RP gkT yk
k = :
kgk 1 k2
CD kgk k2
k = :
dTk 1 gk 1
T
LS gk+1 yk
k = T
:
dk gk
DY kgk k2
k = T :
dk 1 y k 1
T
DL gk+1 (yk tsk )
k = :
ykT sk
kgk k
gkT gk g
kgk 1 k k 1
k = :
kgk 1 k2
11- Gradient conjugué variante de Hao Fan, Zhibin Zhu et Anwa Zhou
MN
kgk k2 kgk k T
g g
kgk 1 k k k 1
k = :
jgkT dk 1 j + kgk 1 k2
12- Gradient conjugué variante Rivaie-Mustafa-Ismail-Leong(RMIL)
RM IL gkT (gk gk 1 )
k = :
kdk 1 k2
HS P RP FR CD DY
k+1 = k+1 = k+1 = k+1 = k+1 :
Dans le cas non quadratique, ces quantités ont en général des valeurs di¤érentes.
Les méthodes du gradient conjugué générent des suites fxk gk=0;1;2::: de la forme sui-
vante :
xk+1 = xk + k dk :
Le pas k 2 R étant déterminé par une recherche linéaire. la direction dk est dé…nie
par la formule de récurrence suivante( k 2 R)
(
si k = 1;
gk
dk =
gk + k dk 1 si k 2:
Ces méthodes sont des extensions de la méthode du gradient conjugué linéaire du cas
quadratique, si k prend l’une des valeurs
P RP gkT yk
k = ;
kgk 1 k2
FR kgk k2
k = ;
kgk 1 k2
CD kgk k2
k = ;
dTk 1 gk 1
où yk 1 = gk gk 1 :
Etape0 : (initialisation)
où
k+1 : dé…ni selon la méthode.
Remarque 3.2.3 Dans le cas quadratique avec recherche linéaire exacte, on a vu que
P RP
k = Fk R = CD
k = DY
k .
k xk rf (xk ) dk k k
+5.00000e+00 +1.60000e+01 -1.60000e+01
+5.00000e+00 +2.80000e+01 -2.80000e+01
1 +1.20766e-01
+5.00000e+00 +3.60000e+01 -3.60000e+01
+5.00000e+00 +4.00000e+01 -4.00000e+01
+3.06775e+00 +1.50810e+00 -1.52579e+00
+1.61856e+00 +9.48454e-01 -9.79407e-01
2 +1.02953e+00 +1.10547e-03
+6.52430e-01 -2.29750e-01 +1.89953e-01
+1.69367e-01 -1.06038e+00 +1.01616e+00
+1.49690e+00 +1.70656e-01 -1.97676e-01
+6.10224e-01 -1.55585e-01 +1.38241e-01
3 +2.37172e+00 +1.77089e-02
+8.47993e-01 -9.20500e-02 +9.54138e-02
+1.21554e+00 +1.23492e-01 -1.05497e-01
+1.02806e+00 +5.77796e-03 -8.27569e-03
+9.38093e-01 -1.65085e-02 +1.82552e-02
4 +3.39118e+00 +1.26355e-02
+1.07429e+00 +2.31118e-02 -2.19062e-02
+9.65332e-01 -1.15559e-02 +1.02229e-02
+1.00000e+00 -1.66356e-12
+1.00000e+00 -3.12639e-12
5
+1.00000e+00 -4.21174e-12
+1.00000e+00 -4.78906e-12
(P ) : M in
n
f (x) ;
x2R
où f : Rn ! R:
Le principe de la méthode de Newton consiste à minimiser successivement les approxima-
posons
q (x) = f (x) + rf (xk )t (x xk ) + (x xk )t H (xk ) (x xk ) :
ou encore
H (xk ) (xk+1 xk ) = rf (xk ) ;
donc
1
xk+1 = xk [H (xk )] rf (xk ) :
Algorithme 2.1
Etape initiale : Soit " > 0, critère d’arrêt. Choisir x1 point initial, poser k = 1 et aller
a l’étape principale.
Etape principale : Si krf (xk )k " stop, sinon poser
1
xk+1 = xk [H (xk )] rf (xk ) remplacer k par k + 1 est aller a l’étape principale.
Si le point x1 et assez proche de la solution optimale locale x telle que H (x ) soit dé…nie
positive, alors l’algorithme de Newton converge de façon quadratique vers la solution x .
c’est à dire que l’on a,
kxk+1 xk kxk x k2 0:
Inconvénients :
1-Cette méthode fonctionne très bien pour les problèmes de petite dimension (1 n 10),
lorsque on peut calculer facilement la matrice Hessienne H et sont inverse. Ce calcul
nécessite des itérations plus nombreuses et couteuses dans les problèmes de grandes tailles.
1
2-Comme xk+1 = xk [H (xk )] rf (xk ) On voit bien que le successeur xk+1 de xk n’est
pas toujours bien dé…ni.
R1
F (x ) F (xk ) = DF (xk )(x xk ) + D2 F (x + t(xk x )) (x xk )2 tdt:
0
Comme F est C 2 , D2 F est continue et uniformément bornée sur B(x ; r0 ) par un réel
M > 0, et nous avons
R1 M
D2 F (x + t(xk x )) (x xk )2 tdt kx xk k 2 :
0 2
1
xk+1 x = xk x DF (xk ) [F (xk ) F (x )]
1
R1
= DF (xk ) D2 F (x + t(xk x )) (x xk )2 tdt ;
0
on obtient
M
kxk+1 xk m kx xk k 2 : (3.5)
2
2
Posons r = min(r0 ; ; 1) ; il est alors facile de voir par récurrence que si x0 2
mM
B(x ; r) alors pour tout k, xk 2 B(x ; r) : la suite des itérés est bien dé…nie et reste dans
mM
la boule. Posons alors ek = kxk x k. La relation (3:5) donne
2
ek+1 e2k :
mM
La suite ek converge donc vers 0 si e0 = kx0 x k < 1, cad si x0 est dans la
2
1
boule B(x ; r ) où r = min(r; ) par exemple.
mM
Pour obtenir une méthode qui converge superlinéairement, il est nécessaire d’approxi-
mer l’étape de Newton asymptotiquement. C’est le principe de Dennis et Moré. Comment
peut-on y aboutir sans évaluer la matrice Hessienne dans chaque itération ?
La réponse à été découverte par Davidon en 1959 et a été développée et popularisée par
Fletcher et Powell en 1963. Elle consiste à commencer par n’importe quelle approximation
de la matrice Hessienne et à chaque itération, on améliore la matrice en introduisant la
courbure du problème mesuré tous au long de l’étape. Si cette amélioration est faite
correctement, on obtient quelques méthodes remarquablement robustes et e¢ caces, qu’on
appelle les méthodes de la variable métrique ou quasi Newton. Ils ont libéré l’optimisation
non linéaire en procurant une alternative à la méthode de Newton, qui est très coûteuse
pour plusieurs applications.
Il y a plusieurs méthodes de variable métrique, on s’étalera particulièrement sur les trois
plus importantes, la méthode de correction de rang un, la méthode DFP (Davidon, Fet-
cher, Powell), et la méthode BFGS (Broyden, Fletcher, Goldfarb, Shano).
ce qui implique
1
[H (xk )] [rf (x) rf (xk )] ' x xk :
Bk+1 = Bk + k; (3.9)
avec k symétrique, assurant la relation de quasi Newton. ainsi que Bk+1 dé…nie positive,
sous l’hypothèse que Bk est dé…nie positive.
La formule (3.9) permet d’utiliser les nouvelles informations obtenues lors de l’étape k
de l’algorithme, c’est à dire essentiellement le gradient gk+1 = rf (xk+1 ) au point xk+1 ,
obtenu par une recherche linéaire (exacte où approchée) dans la direction dk . Il existe
di¤érentes formules de type (3.6). Suivant que k est de rang un ou deux, on parlera de
correction de rang un ou de rang deux.
Bk+1 = Bk + ak uk uTk ; uk 2 Rn ;
sk = Bk + ak uk uTk yk ;
ou encore
sk Bk yk = ak uk uTk yk :
D’ou l’on déduit que uk est proportionnel à sk Bk yk , avec un facteur qui peut être pris
en compte dans ak . Un choix évident pour véri…er cette dernière équation est de prendre
uk = sk Bk yk et ak tel que ak uTk yk = 1, on obtient :
(sk Bk yk ) (sk Bk yk )T
Bk+1 = Bk + : (3.10)
(sk Bk yk )T yk
Algorithme 2.2
Etape initiale : Soit " > 0, déterminer le critère d’arrêt. Choisir un point initial x1 et
une matrice symétrique dé…nie positive B1 poser k = 1, et aller aux étapes principales.
Etape principale :
Etape 1 : Si krf (xk )k < ". stop ; sinon, poser dk = Bk rf (xk ) et soit k solution
optimale du problème min f (xk + dk ) ; 0: et poser xk+1 = xk + k dk :
Etape 2 : Construire Bk+1 comme suit :
(sk Bk yk ) (sk Bk yk )T
Bk+1 = Bk + ;
(sk Bk yk )T yk
avec
sk = xk+1 xk ;
yk = rf (xk+1 ) rf (xk ) :
Avantages
Cette méthode présente l’avantage, que le point xk+1 n’a pas besoin d’être choisi
comme le minimum exact, c’est à dire qu’on n’a pas besoin d’e¤ectuer des recherches
linéaire exactes.
Inconvénients
-Même si la fonction est quadratique, et même si son Hessien est dé…ni positif, il se
peut que la matrice Bk ne soit pas dé…nie positive.
-Le dénominateur (sk Bk yk )T yk peut devenir nul ou très petit, ce qui rendre le
procédé instable.
Cette méthode a été proposée par Davidon en 1959 et développé plus tard en 1963 par
Fletcher. La formule de mise à jour de DFP est une formule de correction de rang deux.
De façon plus précise construisons Bk+1 en fonction de Bk de la forme :
Bk+1 = Bk + Ak + k; (3.11)
Ak = ak uk uTk ; k = bk vk vkT ;
donc
sk = Bk+1 yk (3.12)
= Bk + ak uk uTk + bk vk vkT yk ;
par suite
ak uk uTk yk + bk vk vkT yk = sk Bk yk ;
uk = sk , vk = Bk yk , ak uTk yk = 1, bk vkT yk = 1;
d’où
sk sTk Bk ykT yk Bk
Bk+1 = Bk + : (3.13)
sTk yk ykT Bk yk
Remarque 3.4.1 Le résultat suivant montre que sous certaines conditions, la formule
(3.13) conserve la dé…nie positivité des matrices Bk .
où k optimal, B1 dé…nie positive est donnée ainsi que x1 , alors les matrices Bk sont
dé…nies positives.
Exemple 3.4.1 La propriété sTk yk > 0 est véri…ée également par des méthodes de re-
cherche linéaires approchées comme par exemple la règle de Wollf et Powell.
En e¤et :
Dans ce cas on détermine un point xk+1 tel que
0
( k ) = rf (xk+1 )T dk 2 rf (xk )T dk 0< 2 < 1;
d’où
T xk+1 xk xk+1 xk
gk+1 > gkT ;
k k
(gk+1 gk )T sk > 0:
Algorithme 2.3
Etape initiale :
1-Soit " > 0, déterminer le critère d’arrêt. Choisir un point initial x1 et une matrice
symétrique dé…nie positive B1 quelconque (par exemple B1 = I) poser k = 1, et aller aux
étapes principales
Etapes principales.
Etape 1 :Si krf (xk )k < " stop ; sinon, poser dk = Bk gk et déterminer le pas optimal
k solution optimale du problème min f (xk + dk ), 0. et poser xk+1 = xk + k dk
Etape 2 :Construire Bk+1 comme suit :
sk sTk Bk yk ykT Bk
Bk+1 = Bk + ;
sTk yk ykT Bk yk
avec
sk = xk+1 xk :
yk = rf (xk+1 ) rf (xk ) :
Théorème 3.4.3 Appliqué à une forme quadratique f , l’algorithme DFP décrit par la
relation
sk sT Bk yk ykT Bk
Bk+1 = Bk + T k ;
sk y k ykT Bk yk
engendre des directions conjuguées s1 ; s2::::::::::: sk véri…ant
Avantages
Inconvénients
Bk+1 sk = yk :
On obtient donc
yk ykT Bk sk sTk Bk
Bk+1 = Bk + : (3.16)
ykT sk sTk Bk sk
Algorithme 2.4
Etape initiale : Soit " > 0, déterminer le critère d’arrêt. Choisir x1 point initial et
B1 dé…nie positive quelconque (par exemple B1 = I).
Poser k = 1 et aller aux étapes principales
Etapes principales.
Etape 1 : Si krf (xk )k < " stop ; sinon, poser dk = Bk gk et déterminer le pas
optimal k solution optimale du problème min f (xk + dk ), 0 et poser xk+1 = xk +
k dk
yk ykT Bk sk sTk Bk
Bk+1 = Bk + ;
ykT sk sTk Bk sk
avec
sk = xk+1 xk ;
yk = rf (xk+1 ) rf (xk ) :
Exemple 3.4.2 1-Notons que la direction dk est obtenue par une résolution d’un système
linéaire. En particulier la mise à jour de Bk est faite directement sur le facteur de Cholesky
Ck où Bk = Ck CkT ce qui ramène le calcule de dk au même coût que pour la formule de
DFP
2-La méthode BFGS possède les mêmes propriétés que la méthode DFP dans le cas
quadratique. Les directions engendrées sont conjuguées. Cette méthode est reconnue comme
étant beaucoup moins sensible que la méthode DFP aux imprécisions dans la recherche
linéaire, du point de vue de vitesse de convergence. Elle est donc tout à fait adaptée quand
la recherche linéaire est faite de façon économique, avec par exemple la règle de Goldstein
ou la règle de wolf et Powell.
yk y T Bk sk sTk Bk
3-La relation Bk+1 = Bk + T k permet de construire une approximation
y k sk sTk Bk sk
de la matrice Hessienne elle même (et non pas son inverse).
En e¤ et : Posons
yk ykT Bk sk sTk Bk
Ck = : (3.17)
ykT sk sTk Bk sk
Nous avons
1 1
Hk+1 = [Bk+1 ] = [Bk + Ck ] :
1 A 1 abT A 1
A + abT =A 1
; (3.18)
1 + bT A 1 a
Posons
yk ykT Bk sk
A = Bk + T
,a= T , bT = sTk Bk ;
yk sk sk Bk sk
donc
1 1
yk y T Bk sk T yk ykT
1 Bk + T k s Bk Bk +
yk y T y k sk sTk Bk sk k ykT sk
Hk+1 = Bk + T k 1 : (3.19)
y k sk yk ykT Bk sk
1 + sTk Bk Bk + T T
y k sk sk Bk sk
1
yk ykT
On doit calculer Bk + , pour cela on applique la formule de Sherman-Morrison-
ykT sk
Woodbury une deuxième fois, on pose
yk
A = Bk , a = T
, bT = ykT ;
y k sk
1 yk T
1 [Bk ] yk [Bk ] 1
yk ykT 1
T
y k sk
Bk + = [Bk ] yk
ykT sk 1 + ykT [Bk ] 1 T
y k sk
1 [Bk ] yk yk [Bk ] 1
1 T
= [Bk ] :
ykT sk + ykT [Bk ] 1 yk
1 1
Hk+1 = [Bk+1 ] = [Bk ]
" #
y T [Bk ] 1 yk sk ykT [Bk ] 1
+ [Bk ] 1
yk sTk
+ 1+ k T T
sk y k sk yk
ykT Hk yk sk sTk sk ykT Hk + Hk yk sTk
= Hk + 1 + : (3.20)
sTk yk sTk yk sTk yk
Bk sk sTk Bk yk ykT
Bk+1 = Bk + T + sTk Bk sk vk vkT ; (3.21)
sTk Bk sk y k sk
yk Bk sk
tel que 2 [0; 1] ; vkT = T T
:
yk sk sk Bk sk
Bk sk sTk Bk yk ykT
Bk+1 = Bk + ;
sTk Bk sk ykT Sk
On obtient ainsi la première coordonnée de l’itéré suivant X k+1 que l’on note xk+1
1 ;
on peut, pour e¤ectuer cette minimisation dans R, utiliser par exemple la méthode de
Newton dans R.
On recommence ensuite en …xant la première coordonnée à xk+1 1 et les n 2 der-
nières comme précédemment. On minimise sur la deuxième coordonnée et ainsi de suite.
L’algorithme obtenu est le suivant :
Méthode de relaxation successive
1. Initialisation
k = 0 : choix de X 0 2 Rn .
2. Itération k
pour i variant de 1 à n, on calcule la solution xk+1
i de
3. Critère d’arrêt
Si kxk+1 xk k < " , STOP
Sinon, on pose k = k + 1 et on retourne à 2.
2 3 2 3
2 1 0 0 :: :: 1
6 7 6 7
6 1 2 1 0 :: :: 7 6 1 7
6 7 6 7
6 0 7 6 .. 7
6 1 2 1 0 :: 7 6 . 7
G=6 . . . 7 c=6
6 ..
7:
7
6 :: .. .. .. :: :: 7 6 . 7
6 7 6 7
6 7 6 7
4 :: :: 0 1 2 1 5 4 1 5
:: :: :: 0 1 2 1
TP 02
Programmer l’algorithme du gradient conjugué pour résoudre Ax = b ; comparer avec
les procédures de MATLAB en terme de précision et de temps CPU.
On fera des tests sur des matrices dé…nies positives de grande taille et sur l’exemple
suivant : 0 1 0 1
0; 78 0; 02 0; 12 0:14 0; 76
B C B C
B 0; 02 0; 86 0; 04 0; 06 C B 0; 08 C
A=B B 0; 12
C et b = B
C B
C:
C
@ 0; 04 0; 72 0; 08 A @ 1; 12 A
0; 14 0; 06 0; 08 0; 74 0; 68
TP 03
On considére le problème de minimisation sans contraintes sur Rn
(P ) minn f (x) :
x2R
a) Initialisation : i = 0
z0 2 Rn est tel que l’ensemble Cz0 = fz 2 Rn j f (z) f (z0 )g est borné et le Hessien
2
H(z) = @ @zf (z)
2 est dé…ni positif sur cet ensemble.
Soit 2 0; 12 :
b) Itération i
• Calcul de rf (zi ) : Si rf (zi ) = 0 , STOP
SINON : calcul de H(zi )
• On pose : h(zi ) = H(zi ) 1 rf (zi )
• Calcul de i par la procédure suivante :
Soit 1 ( ; z) = (f (z + h(z)) f (z)) (1 ) hrf (z); h(z)i et
2 ( ; z) = (f (z + h(z)) f (z)) hrf (z); h(z)i
1. = 1
2. Calcul de 1 ( ; zi )
3. ISi 1 ( ; zi ) = 0, on pose i = et STOP
ISi 1 ( ; zi ) < 0 , on pose = + 1 et RETOUR à b.
I Si 1 ( ; zi ) > 0 on continue à 4.
4. Calcul de Calcul de 2 (1; zi )
5. ISi 2 (1; zi ) 0, on pose i = et STOP
ISinon on pose t0 = 1 ,r0 = et on continue à 6.
6. ( on a i 2 [t0 ; r0 ])
On pose j = 0
t +r
7. Calcul de j = j 2 j ; de 1 ( j ; zi ) et de 2 ( j ; zi )
8. Si 1 ( j ; zi ) 0 et 2 ( j ; zi ) 0 on pose j = j et STOP
SINON on va à 9.
9. Si 1 ( j ; zi ) > 0 alors tj+1 = tj et rj+1 = j , j = j + 1 et on va à 7.
SINON tj+1 = j et rj+1 = j , j = j + 1 et on va à 7.
c) zi + 1 = zi + i h(zi ), i = i + 1:
Exercice 02
On veut résoudre le système suivant par une méthode de gradient à pasramètre opti-
mal : (
1
2
x=0
c
où c 1:
2
y = 0
a) Ecrire le système sous la forme Ax = b et calculer les valeurs propres de A:
b) Soit r le résidu : b Ax: Calculer r et le paramètre correspondant à la minimisation
sur R de la fonction qui à associe J(xk + rk ):
c) Soit Pk le point de coordonnées xk et yk : Exprimer xk+1 et yk+1 en fonction de xk
et yk :
Exercice 03
On veut résoudre le système Ax = b; x 2 Rn (avec A symétrique, dé…nie, positive)
par une méthode
de gradient à pas constant.
Soit x la solution de ce système.
On propose l’algorithme suivant :
8
>
< x0 ; r0 = b Ax0 ;
xk+1 = xk + rk ;
>
:
ou rk = b Axk ;
2
c) Montrer que le meilleur choix de est : opt = 1+ n
et qu’alors :
1 n
(I opt A) = :
1 + n
Exercice 04
On veut résoudre le système suivant par une méthode de gradient à pasramètre opti-
mal : (
1
2
x=0
c
où c 1:
2
y=0
1 2
f (x; y) = x + y2 ;
2
1 2
(P ) : x + y 2 : (x; y) 2 R2 :
2
Exercice 08
Véri…er que le calcul de l’inverse d’un scalaire par la méthode de Newton correspond
à la méthode itérative :
xk+1 = xk (2 xk ) ; k 0:
Exercice 09
Une variante de la méthode de Newton pour la résolution des systèmes d’équations
non linéaires est la méthode de Gauss-Seidel qui se présente sous la forme suivante :
..
.
(k+1) (k+1) (k+1) (k)
f n x1 ; x2 ; :::; xn 1 ; xn
x(k+1)
n = x(k)
n ;
(k+1) (k+1) (k+1) (k)
@n fn x1 ; x2 ; :::; xn 1 ; xn
@
où @i = @xi
:
P
n
Montrer que si les fonctions fi sont a¢ nes : fi (x) = aij xj bi , cette méthode n’est
j=1
autre que la méthode itérative de Gauss-Seidel pour le résolution des systèmes linéaires.
( i )i=1;:::;n sont les valeurs propres de A rangées de manière croissante. On doit donca-
voir :
max j1 ij < 1 c’est-à-dire :
i=1;:::;n
On doit donc avoir d’une part > 0 (car les valeurs propres de A sont toutes stricte-
ment positives), et d’autre part
2
< 1 :::: n 1 n;
2 2
c’est-à-dire > 1 :::: n 1 n ; il su¢ t donc que < 1
.
3. Le meilleur choix de correspond au cas où le rayon spectral (I A) est minimal.
Or (I A) = max fj1 1 j ; j1 n jg . Une résolution graphique montre que
! !
x
1 x 1 2
J(x; y) = 2
cy
= x + cy 2 .
2 2
y 4
1 2 c 2
'( ) = x2k 1 + cyk2 1 .
4 2 2
x2 +c2 y 2
On véri…e que le minimum de ' est atteint pour ' = 2 xk2 +c3 yk2 .
k k
3. Un calcul élémentaire donne
4. tk+1 = c21tk pour tout k. Donc tk+2 = tk ce qui signi…e que les droites OPk+2 et
OPk sont parallèles. Par conséquent, pour tout k, les points O; Pk et Pk+2 sont alignés.
2
5. Calcul de :
yk+1 (1 c) x2k (1 c)
= 2 2
= :
yk 3
xk + c y k 1 + c3 t2k
Donc
2 (1 c)2 (1 c)2
= = 1
:
(1 + c3 t2k ) 1 + c3 t2k+1 (1 + c3 t2 ) 1 ct2
Exercice 08
1
Si on cherche les zéros de la fonction f : x 7 ! x
, la méthode de Newton donne
précisément l’itération indiquée.
En généralisant aux matrices, l’algorithme devient :
(
B0 donnée,
Bk+1 = Bk (2I ABk ).
iP1 P
n
aij xk+1
j + aij xkj bi
j=1 j=i
xk+1
i = xki ,
aii
c’est-à-dire
P
i P
n
aij xk+1
j = aij xkj + bi .
j=1 j=i+1
[1] M. Bergounioux, Optimisation et controle des systèmes linéaires, Dunod, Paris, 2001.
[2] M. Bierlaire, Introduction à l’optimisation di¤érentiable, PPUR, 2006.
[3] M. Bazaraa, N. Sherali, and C. Shetty, Nonlinear Programming, Theory and Appli-
cations, John Wiley & Sons, New York, Second ed, 1993.
[4] J-F. Bonnans, J-C. Gilbert, C. Lemaréchal, C. Sagastizàbal, Optimisation Numé-
rique, Aspects théoriques et pratiques, Springer M&A 27, 1997.
[5] R. Fletcher (1987), Practical methods of optimization, John Wiley&Sons, Chichster.
[6] R. Fletcher, Practical Methods of Optimization vol. 1 : Unconstrained Optimization,
John Wiley & Sons, New York, 1987.
[7] J. C. Gilbert , Eléments d’optimisation di¤érentiable : théorie et algorithmes, Notes
de cours, École Nationale Supérieure de Techniques Avancées, Paris, (2007).
[8] J-B. Hiriart-Urruty, Optimisation et analyse convexe, exercices corrigés, EDPs-
ciences, 2009.
[9] J. Nocedal, and S. J. Wright, Numerical Optimization, Springer Series in Operations
Research and Financial Engineering, second ed, 2006.
[10] Y. Yuan, Numerical Methods for Nonlinear Programming, Shanghai Scienti…c &
Technical Publishers, 1993.
69