You are on page 1of 130

Analyse matricielle et Optimisation

Serge GRATTON, INP Toulouse

Ress. Pedago. Ouv. INPT, 0727 (2014) 24h


Ed.
2

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
Table des mati`
eres

I Analyse matricielle 5

1 Complements dalg` ebre matricielle 7


1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.2 Matrices, vecteurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.3 Operations sur les matrices . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.4 Autres definitions relatives aux matrices . . . . . . . . . . . . . . . . . . . . 9

2 Normes de vecteurs et de matrices 13


2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2 Normes de vecteurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.3 Normes de matrices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.4 Norme induite et rayon spectral . . . . . . . . . . . . . . . . . . . . . . . . . 17

3 Resolution de syst` emes lin eaires 21


3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.2 Sensibilite dun syst`eme, qualite dune solution . . . . . . . . . . . . . . . . 21
3.3 Resolution par factorisation A = LU . . . . . . . . . . . . . . . . . . . . . . 24
3.4 Role du pivotage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.5 Factorisation de Cholesky dune matrice symetrique definie positive . . . . . 31

4 Resolution de probl` emes aux moindres carr es 35


4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.2 Generalites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.3 Algorithmes de resolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.4 Comparaison de la methode QR `a la methode des equations normales . . . 40
4.5 Perturbation dun probl`eme de moindres carres . . . . . . . . . . . . . . . . 41
4.6 Algorithmes de factorisation QR . . . . . . . . . . . . . . . . . . . . . . . . 43

5 Resolution de syst` emes lin eaires par des m ethodes de Krylov 47


5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
5.2 Generalites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
5.3 La methode GMRES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
5.4 La methode du gradient conjugue . . . . . . . . . . . . . . . . . . . . . . . . 55

3
4 Table des mati`eres

6 Resolution de syst` emes lin eaires par m ethodes it eratives stationnaires 61


6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
6.2 Suite recurrentes dordre 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
6.3 Methodes iteratives asymptotiques de basees sur du splitting . . . . . . . . 62
6.4 Raffinement iteratif dune solution et point fixe perturbe . . . . . . . . . . . 64

7 Probl`
emes aux valeurs propres 65
7.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
7.2 Origine de ces probl`emes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
7.3 Sensibilite dun probl`eme spectral . . . . . . . . . . . . . . . . . . . . . . . . 67
7.4 Quelques algorithmes de recherche des valeurs propres . . . . . . . . . . . . 69

II Optimisation 75

8 Optimisation sans contrainte 77


8.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
8.2 Rudiments en calcul differentiel . . . . . . . . . . . . . . . . . . . . . . . . . 80
8.3 Minimisation locale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
8.4 Algorithmes de minimisation sans contrainte . . . . . . . . . . . . . . . . . 87

9 Optimisation avec contraintes 101


9.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
9.2 Quelques resultats de convexite . . . . . . . . . . . . . . . . . . . . . . . . . 101
9.3 Conditions variationnelles . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
9.4 Cas du probl`eme quadratique `a contraintes lineaires . . . . . . . . . . . . . 111

10 Optimisation avec contraintes din egalite 117


10.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
10.2 Lien avec les contraintes degalite . . . . . . . . . . . . . . . . . . . . . . . . 117
10.3 Conditions doptimalite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
10.4 Application de la theorie des multiplicateurs de Lagrange : la methode des
contraintes actives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121

11 Introduction ` a loptimisation multicrit` eres 125


11.1 Introduction generale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
Premi`
ere partie

Analyse matricielle

5
Chapitre 1

Compl
ements dalg`
ebre matricielle

1.1 Introduction
Le but de ce chapitre est de presenter les principales notations qui seront utilisees dans
ce cours. Il sagit aussi de rappeler des relations entre noyau et image de matrices, qui
seront massivement utilisees, notamment lors de la resolution de probl`emes destimation
de param`etres par moindres carres lineaires. Enfin un rappel sera fait sur le procede
dorthogonalisation de Schmidt, qui sera re-ecrit sous la forme de factorisation QR dune
matrice ; cest ce point de vue matriciel qui sera adopte le plus possible dans la suite.

1.2 Matrices, vecteurs


Une matrice rectangulaire A de taille m n est un tableau rectangulaire de nombres
de la forme
a11 a12 . . . a1n
a21 a22 . . . a2n
A= . .. ..

.. . .
am1 am2 . . . amn
`a m lignes et n colonnes. Un vecteur de dimension n est un tableau de la forme

x1
x2
x = . .

.
.
xn

1.3 Op
erations sur les matrices
On aura principalement ` a considerer les quatre operations suivantes sur les matrices :
la multiplication par un scalaire : A = (aij ) 7 A = (aij )
la somme de matrices de memes dimensions : A = (aij ), B = (bij ) 7 A + B =
(aij + bij )

7
8 Chapitre 1 : Complements dalg`ebre matricielle

le produit de matrices :
k=n
X
A = (aik ), B = (bkj ) 7 A B = (cij ) avec cij = aik bkj
k=1
m
n
nl ml

Le produit AB nest defini que si le nombre n de colonnes de A est egal au nombre


de lignes de B.
la transposee 1 de A :
A = (aij ) 7 AT = (aji )
mn nm
On a echange les lignes et les colonnes de A.
la transposee-conjuguee 1 de A :

A = (aij ) 7 AH = A = (aji )
mn nm

Si A est reelle, AH = AT . On utilisera souvent les matrices carrees particuli`eres suivantes :


1. A est hermitienne ssi AH = A.
2. A, reelle, est symetrique ssi AT = A.
3. A definie positive ssi x 6= 0 xH Ax > 0.
4. A est semi-definie positive ssi x 6= 0 xH Ax 0.
5. A est unitaire ssi AH A = AAH = I.
6. A, reelle, est orthogonale ssi AT A = AAT = I.
7. A est normale ssi AH A = AAH .
8. A est triangulaire superieure ssi i > j aij = 0, cest `a dire ssi elle est nulle sous
la diagonale aii .
9. A est triangulaire inferieure ssi i < j aij = 0.
10. A est diagonale ssi elle est ` a la fois triangulaire superieure et triangulaire inferieure,
cest `
a dire ssi tous ses coefficients hors diagonaux sont nuls. On ecrit A = diag(a11 , . . . , ann ) =
diag(aii ).
11. A est de forme Hessenberg superieure ssi i >j + 1 aij = 0, cest`a dire ssi A est
... ... ...
.
. . . . . . ..


.. .

nulle sous la premi`ere sous-diagonale : A =
..
. .
..

..
. ... .


0

1. En Alg` ebre, la notation usuelle pour la transposee (resp. transposee-conjuguee) est le plus souvent
t
A (resp. A ).

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
9 Chapitre 1 : Complements dalg`ebre matricielle

12. A est tridiagonale ssi i > j + 1 et i < j + 1 aij = 0, cest `a dire ssi A est
nullesous la premi`ere sous-diagonale
et au-dessus de la premi`ere sur-diagonale :
0
... ...



A=
.. .. .. .

. . .
.. ..
. .


0
De meme, on consid`erera souvent les matrices rectangulaires suivantes :
1. A Rmn , m > n, est orthonormale si AH A = I. Une matrice carree (m = n)
orthonormale est unitaire.
2. A est triangulaire superieure (ou trap`eze) si j < i aij = 0.

1.4 Autres d
efinitions relatives aux matrices
1. Le noyau dans Rn de A Rmn est :
Ker A = {x Rn , A x = 0} Rn
2. Lespace image dans Rm de A Rmn est defini par :
Im A = {A x, x Rn } Rm
3. Le rang de A est rg(A) = dim(ImA) o`
u dim S designe la dimension du sous espace
vectoriel S. On rappelle que
rg(A) = rg(AT ).
Exercice 1.1 On suppose que A Rnn , est telle que A2 + A + I = 0. La matrice A
est-elle inversible ? Calculer son inverse en fonction de A.
Preuve 1.1 Demonstration.
De I = (I A)A = A(I A), on deduit que A1 = I A.
2
Exercice 1.2 Matrice du produit vectoriel. Soit u R3 et au : R3 R3 , v 7 u v, avec
defini par det (u, v, w) = (u v)T w pour tout w R3 . Explicitez A R33 telle que
u v = Av. Montrez et A est antisymetrique (AT = A)et calculer ses valeurs propres.
Preuve 1.2 Demonstration.
Partant de la definition du determinant

u1 v1 w1
w1 (u2 v3 u3 v2 ) w2 (u1 v3 u3 v1 )+
det u2 v2 w2 =
w3 (u1 v2 u2 v1 )
u3 v3 w3
T
0 u3 u2 v1 w1
= u3 0 u1 v2 w2 ,
u2 u1 0 v3 w3

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
10 Chapitre 1 : Complements dalg`ebre matricielle


0 u3 u2
on deduit que A = u3 0 u1 . La matrice A est reelle anti-symmetrique
u2 u1 0
(AT = A). Son determinant est 0 (car Au = 0) et sa trace est 0. Donc son polyn ome
3 3 2
caracteristique secrit p() = + a. Un calcul direct montre que p() = + kuk2 . Le
spectre de A est donc {0, i kuk2 , i kuk2 }. Si u 6= 0, A a 3 valeurs propres distinctes. Si
u = 0 alors A = 0.

Exercice 1.3 Calcul de nombres doperations. Soit Q Rm1 et Z Rmk des ma-
a elements non nuls). On consid`ere deux algorithmes devaluation de QQT Z.
trices denses (`
Lagorithme A1 implante (QQT )Z, lalgorithme A2 implante Q(QT Z). Comparez ces deux
algorithmes suivant leur nombre doperations et le co ut memoire de stockage des ma-
trices intermediaires. On utilisera le fait quun produit matrice-vecteur Ax co ute environ
2nnz(A) operations o` u nnz(A) est le nombre de non-zeros de A.

Preuve 1.3 Demonstration.


Pour lalgorithme A1, le calcul de C = QQT Rmm co ute m2 , et le calcul de CZ co
ute
2 2 2
2m k, ce qui fait en tout m (2k + 1) operations et un stockage m nombres pour C.
Pour lalgorithme A2, le calcul de D = QT Z R1k co ute 2mk, et le calcul de QD
ute mk, ce qui donne 3mk operations et un stockage k nombres pour D.
co
Donc r = m(2k+1)
3k est le ratio en nombre doperations entre les deux methodes, tandis
m2
que s = k est le ratio en memoire.
Si r > 1 , cest A2 qui est la plus interessante en operations. Cest notamment le cas
lorsque m > 1. Si de plus, k m2 , la methode A2 est aussi plus interessante en memoire :
s 1.

Exercice 1.4 Le determimant est-il une mesure raisonable de la singularite dune ma-
trice ? Soit A Rnn une matrice carree inversible. Que vaut det A en fonction de
det A ? (Application numerique pour A la matrice identite et n = 100 et = 101 ). On
calcule det (A) sur un ordinateur realisant 4 109 operations par seconde, en utilisant la
formule
X n
Y
||
det (A) = (1) ai (i) .
S(n) i=1

Quel temps dure ce calcul pour une matrice quelconque dordre 100 ?

Preuve 1.4 Demonstration.


On a det (A) = n det A. Application numerique det (A) = 10100 , alors que det (A) =
1. Le determinant nest pas invariant par multiplication par un scalaire et ne peut pas etre
utilise tel quel pour la detection de la singularite. Il y a approximativement 100 100!
operations. Cela donne 100 100!/(4 109 )/86400/366/100 7 10140 si`ecles de calcul.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
11 Chapitre 1 : Complements dalg`ebre matricielle

Proposition 1.1 Pour A Rmn , B Rnm , on a tr AB = tr BA. Quen est-il du


determinant de AB pour A et B carrees ?

Preuve 1.5 Demonstration.P


Soit C = AB. Alors tr C = m
Pm Pn Pn Pm
i=1 Cii = i=1 k=1 aik bki = k=1 i=1 bki aik = tr BA.
De plus, det AB = det A det B = det B det A = det BA.
2
Le resultat ci-dessous montre que la trace et le determinant dune matrice carree sont
invariants par changement de base. Soit A et B deux matrices telles quil existe une matrice
carree inversible telle que A = XBX 1 , alors tr A = tr XBX 1 = tr BX 1 X = tr B.
De meme, det A = det B.
Proposition 1.2 Pour A Rmn , Ker A = Ker AT A. De plus, on a Im(AT ) = Im(AT A).

Preuve 1.6 Demonstration.


Soit x Ker A, alors Ax = 0, donc AT Ax = 0, et x Ker AT A.. Soit x Ker AT A,
alors AT Ax = 0, donc xT AT Ax = kAxk22 = 0 (definition de la norme Euclidienne) et
donc dapr`es les proprietes de la norme, Ax = 0 donc x Ker A. Il est clair que si y
Im(AT A), y = AT Ax = AT (Ax) y Im(AT ). Donc Im(AT A) Im(AT ) et il suffit de
montrer que ces deux espaces ont la meme dimension donc que (puisque rg(AT ) = rg(A))
rg(A) = rg(AT A). Les formules du rang sur A et AT A donnent n = rg(A)+dim Ker(A) =
rg(AT A) + dim Ker(AT A), et le resultat decoule de Ker A = Ker AT A.
2

Proposition 1.3 Si A est m n, la matrice AT A est symetrique carree dordre n et ses


valeurs propres sont donc reelles. Elles sont de plus positives ou nulles.
Matrice de Gram. Soit A Rmn , avec m n. On appelle matrice de Gram associee aux
colonnes de A la matrice AT A. Notez que A est composee de produits scalaires. La matrice
de Gram est inversible ssi les colonnes de A forment un syst`eme libre (i.e. Ker A = {0}).

Preuve 1.7 Demonstration.


kAxk22
En effet, si AT Ax = x, x 6= 0, alors xT AT Ax = (Ax)T Ax = xT x. Soit = 0.
kxk22
a Ker AT A = {0}, ce
La condition Ker A = {0} equivaut, dapr`es la proposition 1.2, `
qui signifie que AT A est inversible.
2

Proposition 1.4 (orthonormalisation de Schmidt) Tout ensemble {a1 , . . . ap } de p n


vecteurs lineairement independants (i.e. formant une famille libre) de Rn peut etre trans-
forme en un ensemble de p vecteurs {q1 , . . . qp } deux `
a deux orthogonormaux par le pro-
cessus dorthonormalisation de Schmidt. On peut choisir les qi tels que pour tout j p,

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
12 Chapitre 1 : Complements dalg`ebre matricielle

les deux familles {q1 , . . . qj } et {a1 , . . . aj } gen`erent le meme espace. Montrez que cela peut
a peu pr`es 2np2 operations.
se faire en `
On en deduit le resultat suivant : Soit A Rmn de rang n. La matrice A peut
etre factorisee en A = QR o` u Q Rmn est orthogonale et R Rnn est triangulaire
superieure `
a elements positifs sur la diagonale.

Preuve 1.8 Demonstration. Soit P (k) lhypoth`ese de recurrence


{q1 , . . . qj } et {a1 , . . . aj } gen`erent le meme espace pour j k,
les qj , j k, sont deux ` a deux orthogonormaux.
Montrons tout dabord que P (1) est vraie. Comme (a1 ) est une famille libre, a1 6= 0. On
definit q1 = a1 / ka1 k2 et on a bien les proprietes voulues.  
Supposons que P (k1) est vraie. Posons alors qk = ak k1 u rij = qiT ak ,
P
i=1 ik i , o`
r q
ce qui entrane que qk est orthogonal aux qj , j < k. Il est clair que qk est non nul. En effet,
qk secrit comme ak + z o` u z est combinaisons lineaire de (a1 , . . . ap1 ) car, par hypoth`ese
de recurrence, {q1 , . . . qp1 } et {a1 , . . . ap1 } gen`erent le meme espace. Donc aj + z est
une combinaison lineaire des ai , dont le coefficient devant ak est non nul (cest 1). Le
caract`ere lineairement independant des ai entra ! ne donc que ak + z est non nul.
k1
1 X
On definit alors qk = ak u rkk = k
rik qi , o` qk k2 . La famille {q1 , . . . qk } est
rkk
i=1
bien une famille orthonormale.
Montrons que {q1 , . . . qk } et {a1 , . . . ak }Pgen`erent le P meme espace. Par hypoth`ese de
recurrence il existe des scalaires i tels que k1 i=1 rik q i = k1
i=1 i ai , et le r
esultat provient
facilement de Pk
ak = i=1 rik qi avec rkk!6= 0

k1
1 X
qk = r
ak i ai .
kk i=1

et donc P (k) est vraie. Pour resumer, on definit p vecteurs orthonormaux q1 , . . . , qp , par
lalgorithme
a1
q1 = ut 3n operations)
(co
ka1 k2
ut de lordre de 4n pj=2 j 2np2 )
P
pour j variant de 2 jusqu` a p, (co
 Pj1 
qj = aj i=1 ut (j 1)2n operations)
rij qi , (co
avec rij = qiT ak , i = 1, . . . j 1 (co
ut (j 1)2n operations)
q
rj,j = k qj k2 et qj = rjjj (cout 3n operations).
Dapr`es la formule du rang la condition rg(A) = n montre que Ker(A) = {0} et donc
que les colonnes de A sont lineairement independantes. En utilisant le theor` Pej1me 1.4
pour othogonaliser les colonnes de A = [a1 , . . . an ], on obtient rjj qj = aj i=1 rij qi
pour j = 1, n. Cette relation secrit matriciellement A = QR, o` u Q = [q, . . . qn ] et
R = [rij ]i{1...n},j{1...n} .

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
Chapitre 2

Normes de vecteurs et de matrices

2.1 Introduction
La plupart des probl`emes de la physique mettent en jeu des quantites approchees
connues par exemple avec un certain pourcentage derreur. Lorsque ces probl`emes sont
resolus sur ordinateur, se pose naturellement la question de la mesure des erreurs ` a la fin
du processus de calcul. De meme, lorsque des processus iteratifs sont utilises pour le calcul
des solutions, notamment pour les probl`emes non lineaires, la detection de la convergence
sexprime naturellement en termes de normes de vecteurs. Ainsi la premi`ere partie de ce
chapitre est consacree `a un expose elementaire de la notion de norme de vecteur.
Enfin, lorsquune analyse derreur est menee et que des operateurs lineaires sont en
jeu, comme cest le cas lors de la resolution de syst`emes dequations lineaires ou linearises,
cette analyse est grandement facilitee par lemploi de normes matricielles, qui seront
presentees en fin de chapitre.

2.2 Normes de vecteurs


Definition 2.1 Une fonction : Rn R est une norme sur Rn si elle satisfait les trois
conditions :
1. x 6= 0 (x) > 0
2. (x) = ||(x) pour R
3. (x + y) (x) + (y)

Trois consequences de la definition 2.1 sont :


(0) = 0
(x) = (x)
|(x) (y)| (x y)

Proposition 2.2 On sait quen dimension finie, toutes les normes sont equivalentes.
Nous voyons ici des cas particuliers. Pour tout x Rn ,

kxk2 kxk1 n kxk2

13
14 Chapitre 2 : Normes de vecteurs et de matrices

1
kxk2 kxk kxk2
n

kxk kxk1 nkxk


Dans chaque cas ces egalites peuvent etre atteintes.

Preuve 2.1PDemonstration. : Soit x = (x1 , . . . xn )T Rn . Pour kxk2 kxk1 n kxk2 ,
|xi |2 ( |xi |)2 , et en prenant la racine de cette inegalite entre positifs
P
on part de
on obtient la premi`ere P inegalite. En utilisant linegalite de Cauchy pour le produit scalaire

canonique, on obtient 1 |xi | n kxk2 , qui est bien la seconde inegalite. Ces inegalites
sont atteignables pour x = (1, 0, . . . , 0)T (kxk2 = kxk1 = 1) et pour x = (1, 1, . . . , 1)T (

n = kxk1 = n kxk2 ).
1
Pour kxk2 kxk kxk2 , on a que i |xi |2 i maxj |xj |2 nkxk2 . Pour
P P
n
la seconde inegalite, on a que maxj |xj |2 i |xi |2 , ce qui est bien le resultat escompte.
P
Ces inegalites sont atteignables pour x = (1, 0, . . . , 0)T (kxk2 = kxk = 1) et pour x =

(1, 1, . . . , 1)T ( n = kxk2 = nkxk ). La derni`ere serie dinegalites est une consequence
des deux premi`eres.

Exercice 2.1 Utilisation de normes relatives. Supposons que X et Y sont deux nombres
entiers positifs representes exactement en base 10 en utilisant 6 chiffres significatifs. Supp-
posons que X = [x1 x2 x3 x4 x5 x6 ] et Y = [x1 x2 x3 y4 y5 y6 ], avec x1 6= 0 et x4 6= y4 . Trouver
un majorant de la quantite erreur relative % = |XY |
|X| . G eneraliser au cas ou laccord de
X et Y a lieu sur p chiffres p > 2. Intuitivement que peut-il se passer si X et Y sont des
vecteurs ?

Preuve 2.2 Demonstration. Commencons par un exemple o` u X = 271828. Dans la table


ci-dessous, la quantite % est donnee pour plusieurs valeurs de Y :

approximation %
200000 2 101
270000 6 103
271000 3 103
271800 1 104
271820 6 105

Cet exemple montre que le nombre de chiffres de tete en commun a lair detre lie ` a la
valeur de %. Reprenons un cas plus general. Le plus grand ecart a lieu si X est le plus petit
possible et Y le plus grand possible. Cela a lieu pour X = x1 x2 x3 999 et Y = x1 x2 x3 000,
999
lecart est 999. Lerreur relative est donc majoree par 100000 < 102 . Plus generalement
si xi = yi pour i = 1 . . . p. Lecart maximal est 10np (majorant de lecart entre 9| .{z
. . 9} et
np

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
15 Chapitre 2 : Normes de vecteurs et de matrices

10np
0| .{z
. . 0}) lerreur relative est majoree par 10n1
= 101p . Donc si lerreur relative exc`ede
np
101p , on est s
ur que X et Y ont moins de p chiffres de tete en commun. La quantite
% est donc tr`es utile lorsque les erreurs sont exprimees en terme de chiffres significatifs,
ce qui est souvent le cas lorsque lon traite des quantites physiques mesurees. Lextension
aux vecteurs est delicate et depend de la norme vectorielle choisie. Prenons par exemple la
norme infinie. soit Y = (1000, 10, 1)T et X = (1002, 13, 2)T . On a alors kXY k
kXk = 310 ,
3

alors que les erreurs composantes ` a composantes sont (2 103 , 3 101 , 1 100 )T . Donc
lerreur en norme est plut ot liee dans ce cas au nombre de chiffres de tete en commun sur
la plus grande composante.

2.3 Normes de matrices


Par exemple, la norme de Frobenius kAkF = ( m 2 12
P Pn
i=1 j=1 |aij | ) est une norme de
matrice (cest la norme euclidienne de A consideree comme un long vecteur).
Definition 2.3 On appelle norme matricielle une norme definie pour des matrices
carrees qui verifie, en plus de la definition 2.1, la relation kABk kAkkBk. Si on consid`ere
A comme representant un operateur lineaire, la norme de lapplication lineaire A Rnn ,
induite par le choix dune norme k . k sur Rn , est une norme matricielle. Celle-ci est
definie par :
kAxk x
kAk = max = max kA k = max kAxk = max kAxk.
x6=0 kxk x6=0 kxk kxk=1 x6=0
kxk1

Ces notions se generalisent aisement aux matrices rectangulaires. On definit par exemple
ainsi, pour A Rmn ,
kAxk2
kAk2 = max .
x6=0 kxk2

Proposition 2.4 Montrez que la norme de Frobenius est une norme matricielle. Soit
kAkm = max
 ij |aij |.

1 1
Avec A = . La norme kkm est-elle une norme matricielle ?
1 1
Preuve 2.3 Demonstration. : Posons C = AB et soit ai la i`eme P ligne de A et bj la
j`eme colonne de B. Alors pour tout i, j cij = aTi bj . Donc kCk2F = ij (aTi bj )2 . Dapr`es
linegalite de Cauchy-Schwarz, pour tout i, j, (aTi bj )2 kai k22 kbj k22 , donc

X X
kCk2F kai k22 kbj k22 .
i j

Or kBk2F = 2 kbj k2F , et de meme, kAk2F = i kai k2F . Par consequent,


P P P
ij bij = j
X
kCk2F kai k22 kBk2F = kAk2F kBk2F .
i

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
16 Chapitre 2 : Normes de vecteurs et de matrices

   
1 1 2 2
Pour la seconde partie, avec A = , et A2 = , on obtient kA2 km =
1 1 2 2
2 > kAkm kAkm = 1.

Proposition 2.5 Soit A Rmn . Montrez que les normes induites par les normes de
vecteur kxk1 et kxk sont respectivement :
n
X
kAk1 = max |aij |
1jn
i=1
Xm
kAk = max |aij |
1im
j=1

Pm
Preuve 2.4 Demonstration. Premi`ere egalite. Soit y = Ax et C1 = max1jn i=1 |aij |.
Partant de
m m Xn n m n
!
X X X X X
|yi | |aij ||xj | |xj | |aij | |xj |C1 ,
i=1 i=1 j=1 j=1 i=1 j=1

on obtient que kAxk1 CkAk1 , do` u kAk1 C1 . Dautre part, soit j0 lindice permettant
le max dans C1 et ej0 le j0 -`eme vecteur de base canonique. Alors kej0 k1 = 1 et
datteindre P
kAej0 k1 = ni=1 |aij0 | = C1 kej0 k1 , do`
u kAk1 C1 et donc kAk1 = C1 .
Pm
a present Cinf = max1im
Deuxi`eme egalite. Soit ` j=1 |aij |.

n
X n
X
|yi | |aij ||xj | |aij |kxk Cinf kxk ,
i=1 i=1

ce qui montre que en passant au max sur i que kAxk Cinf kxk et donc que kAk
Cinf . Soit i0 lindice permettant datteindre le max dans Cinf et soit zj tel que zj ai0 j =
|ai0 j | si ai0 j 6= 0 et zj = 0 sinon. Si A = 0 le resultat est clair. Si A 6= 0, il existe
j0 tel que |zj0 | = 1 et,Pnpuisque |zj | 1, on a kzk = 1. Posons w = Az on a, |wi |
P n
j=1 |aij | Cinf = j=1 |ai0 j | = |wi0 | = Cinf kzk . Donc en passant au max sur i, on
obtient |wi0 | = kAzk = Cinf kzk , do` u Cinf kAk et donc Cinf = kAk .

Proposition 2.6 Soit A Rmn . On a


q
kAk2 = (AT A),

u est le rayon spectral defini comme le plus grand module des valeurs propres de A :
o`
(A) = max{||, valeur propre de A}

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
17 Chapitre 2 : Normes de vecteurs et de matrices

Preuve 2.5 Demonstration. La matrice AT A etant hermitienne semi-definie positive,


AT A secrit AT A = QDQT , avec dii 0 et (AT A) = maxi dii . On a alors kAxk22 =
2
xT QDQT x. Dapr`es linegalite de Cauchy, kAxk22 QT x 2 DQT x 2 QT x 2 kDk2 .

2
Comme QT x 2 = xT QQT x = xT x = kxk22 , on obtient kAxk22 (AT A) kxk22 , et donc

p
kAk2 (AT A). De plus, si i0 est tel que (AT A) = di0 i0 , et alors T
palors A Aqi0 =
2
(AT A)qp T
i0 , et donc kAqi0 k2 = (A A) kqi0 k2 , ce qui implique kAk2 (AT A) et donc
kAk2 = (A A). T

Definition 2.7 Une norme k.k est dite unitairement invariante si, quelles que soient les
matrices (carrees) unitaires Q et Q0 , alors
i) pour un vecteur x quelconque, kxk = kQxk o`u k.k est une norme de vecteur,
ii) pour une matrice A rectangulaire quelconque, kAk = kQAk = kAQ0 k = kQAQ0 k,
u k.k est une norme de matrice.
o`

Proposition 2.8 La norme euclidienne, sa norme induite et la norme de Frobenius sont


unitairement invariantes.

Preuve 2.6 Demonstration.


Cas de la p norme euclidienne
p :
kQxk2 = (Qx) Qx = xT QT Qx = xT x car Q est une matrice unitaire.
T

Cas de la norme induitep par la norme euclidienne : p


En utilisant kAk = (A T A), on obtient que kQAQ0 k = (Q0 AT QT QAQ0 ) =
p 2 p
0T T 0
(Q A AQ ) = (A A), o` T u lon a utilise successivement QT Q = I et le fait
0T T 0 T
que Q A AQ et A A ont les memes valeurs propres.
Cas de la norme de Frobenius : Pn Pm 2
Par definition du produit matrice matrice, kAk2F = tr(AT A) = i=1 k=1 aki .
0 2 0T T T 0 0T T 0 T
Alors kQAQ kF = tr(Q A Q QAQ ) = tr(Q A AQ ), car Q Q = I. En utili-
0 0 0
sant tr(AB) = tr(BA), et Q0 Q T = I, on obtient tr(Q T AT AQ0 ) = tr(AT AQ0 Q T ) =
tr(AT A) = kAk2F .

2.4 Norme induite et rayon spectral


Proposition 2.9 1. Soit A une matrice carree dordre n. Pour toute norme matri-
cielle, induite ou non,
(A) kAk.

2. Si A est diagonalisable, il existe une norme induite (dependant de A) telle que

kAk = (A).

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
18 Chapitre 2 : Normes de vecteurs et de matrices

3. On admet que (HouseholderOstrowski) Pour toute matrice A Rnn , et pour tout


 > 0, il existe au moins une norme induite (dependant de  et de A) telle que

kAk (A) + .

4. Soit A une matrice carree. Les conditions suivantes sont equivalentes :


i) limk Ak = 0,
ii) limk Ak x = 0 pour tout x,
iii) (A) < 1,
iv) kAk < 1 pour au moins une norme induite k.k .

P quek la matrice I A soit inversible est que (A) < 1.


5. Une condition suffisante pour
Dans ce cas (I A)1 = k=0 A .
6. Pour toute matrice carree A, et toute norme matricielle, induite ou non, on a

lim kAk k1/k = (A).


k+

Preuve 2.7 Demonstration.

1. Soit x un vecteur propre associe `


a une valeur propre de plus grand module, (A).
Alors,

xxT = AxxT et (A)kxxT k = kxxT k = kAxxT k kAkkxxT k.

Comme x 6= 0, xxT 6= 0 et (A) kAk.


2. Par hypoth`ese, A = XDX 1 ou encore D = X 1 AX, o`
u D = diag(i ) est la matrice
diagonale des valeurs propres. On sait que

kDk = max |i | = (A) (dapr`es le resultat de lexemple 2.5).


i

kX 1 AXxk
Par definition, kDk = maxx6=0 . On introduit (z) = kX 1 zk .
kxk
On montre que est une norme (cf definition 2.1) :
x 6= 0 X 1 x 6= 0 car X est inversible.
De plus comme k.k est une norme X 1 x 6= 0 (x) > 0.
(x) = kX 1 xk = kX 1 xk . Or comme k.k est une norme, kX 1 xk =
||kX 1 xk = ||(x)
(x + y) = kX 1 (x + y)k = kX 1 x + X 1 yk .
Et kX 1 x + X 1 yk kX 1 xk + kX 1 yk , donc (x + y) (x) + (y).
On en deduit, en posant y = Xx que kX 1 Ayk = (Ay) et kxk = kX 1 yk =
(y), donc
kX 1 AXxk (Ay)
(A) = max = max .
x6=0 kxk y6=0 (y)

La norme depend de A par lintermediaire de X, la matrice des vecteurs propres


de A.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
19 Chapitre 2 : Normes de vecteurs et de matrices

3. Admis
4. i) ii) Etant donne x, linegalite kAk xk kAk kkxk, montre que Ak x 0
lorsque k , si kAk k 0.
ii) iii) Si (A) 1, il existe un vecteur x tel que x 6= 0, Ax = x, || 1.
Puisque Ak x = k x, kAk xk = |k |kxk = ||k kxk kxk.
Donc limk kAk xk kxk = 6 0, ce qui est incompatible avec ii), donc (A) < 1.

iii) iv). Cest une consequence du theor`eme de Householder-Ostrowski.


iv) i) Il suffit dappliquer dappliquer kAk k kAkk (k.k etant une norme
induite, cest une norme sous-multiplicative) puisque kAk < 1.
5. Si (A) < 1 alors || < 1 pour toute valeur propre de A. Donc 1 6= 0 : les
valeurs propres de I A ne peuvent etre nulles. I A est donc inversible.
Considerons lidentite :

I Ak+1 = (I A)(I + A + + Ak ).

Par multiplication par (I A)1 `


a gauche, on obtient :
k
X
(I A)1 Ai = (I A)1 Ak+1 .
i=0

La propriete i) permet de conclure que (IA)1 Ak+1 0, cest `a dire k(I A)1 ki=0 Ai k
P
0 quand k .
Dautre part, si I A est singuli`ere, au moins une des valeurs propres de A est egale
a 1. Donc
`
1 (A) kAk, ( pour toute norme matricielle.)

6. Dapr`es la proposition 2.9, (Ak ) = (A)k kAk k, do` u, pour tout k, (A)
A
k 1/k
kA k . Soit  > 0 et A() = (A)+ . Alors (A()) < 1, et donc limk kA()k k = 0
dapr`es le 4.. Donc il existe N tel que k > N = kA()k k < 1. Comme kA()k k =
kAk k/((A) + )k , on obtient kAk k ((A) + )k pour k > N . On a ainsi en
rassemblant les resultats, pour tout , il existe N tel que si k > N , on a (A)
kAk k1/k (A) + , ce qui implique le resultat.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
20 Chapitre 2 : Normes de vecteurs et de matrices

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
Chapitre 3

R
esolution de syst`
emes lin
eaires

3.1 Introduction
Ce chapitre est consacre ` a la presentation des techniques fondamentales danalyse de
lerreur pour la resolution de syst`emes lineaires. Le conditionnement dun probl`eme est
notamment introduit comme un indicateur de la sensibilite de la solution ` a des perturba-
tions des donnees. Lautre notion, fort differente du conditionnement, qui intervient dans
lanalyse derreur est lerreur inverse qui permet dassocier, ` a une solution approchee, une
perturbation des donnees, ce qui est tr`es utile pour affirmer par exemple si une solution
est acceptable compte tenu des incertitudes connues sur les donnees.
Enfin est presentee la methode reine de resolution dun syst`eme lineaire : la factori-
sation de Gauss avec pivotage partiel. En raison de sa robustesse, notamment vis ` a vis
des erreurs dues ` a larithmetique des ordinateurs, cette methode (ou la factorisation de
Cholesky, pour des matrices symetriques definies positives) est ` a employer chaque fois que
la taille du probl`eme et la machine de calcul utilisee le permettent.

3.2 Sensibilit
e dun syst`
eme, qualit
e dune solution
Soit ` egulier de n equations `
a resoudre le syst`eme r a n inconnues

Ax = b (3.1)

a dire calculer x = A1 b. On suppose que les donnees du syst`eme A et b sont soumises


cest `
a des perturbations A et b. La perturbation x resultante satisfait lequation
`

(A + A)(x + x) = b + b, avec Ax = b. (3.2)

Soit k . k2 le norme Euclidienne ou sa norme matricielle induite.

Proposition 3.1 Montrez quau premier ordre, on a linegalite


kxk2 1 kAk2 kbk2
 
kAk2 A
2
+ .
kxk2 kAk2 kbk2

21
22 Chapitre 3 : Resolution de syst`emes lineaires

Preuve 3.1 Demonstration.


Developpons (3.2) au 1er ordre :

Ax + Ax + Ax + Ax = b + b.

Le terme du 2i`eme ordre Ax est negligeable, il vient Ax = b Ax soit x =


A1 (b Ax). Puisque A est inversible, b 6= 0 implique x 6= 0 donc

kxk2 kbk2
 
1

A

2
kAk2 + .
kxk2 kxk2

kAk2
Or b = Ax implique kbk2 kAk2 kxk2 , soit 1/ kxk2 . Par consequent
kbk2

kxk2 1 kAk2 kbk2


 
kAk2 A

2
+ .
kxk2 kAk2 kbk2

Puisque AA1 = I, on deduit que A1 2 kAk2 1.


Proposition 3.2 Montrez quil possible dobtenir le resultat de perturbation suivant, sans
au premier ordre, mais en supposant que la perturbation A est bornee. Si
se placer
kAk2 A1 2 1/2, on a

kxk2 1 kAk2 kbk2


 
2 kAk2 A 2 + .
kxk2 kAk2 kbk2

Preuve 3.2 Demonstration.


Partant de
Ax + Ax + Ax + Ax = b + b,
on obtient Ax = b Ax + Ax Ax. En multipliant par A1 , on obtient x =
A1 b A1 Ax A1 Ax , ce qui donne, en passant aux normes, et en utilisant
kAk2 A1 2 1/2,

kxk2 kbk2 1 kxk2


 
1

A

2
kAk2 + + .
kxk2 kxk2 2 kxk2

En utilisant kbk2 kAk2 kxk2 , on obtient finalement

kxk2 1 kAk2 kbk2


 
2 kAk2 A
2
+ .
kxk2 kAk2 kbk2
2
1
Le coefficient A 2 kAk2 , appele conditionnement de la matrice A, est le facteur
damplification des perturbations A et b sur les donnees A et b, en normes relatives.
Supposons ` a notre disposition une approximation x
a present que lon ait ` de x, obtenue
par exemple (mais pas necessairement) sur un ordinateur.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
23 Chapitre 3 : Resolution de syst`emes lineaires

Definition 3.3 On appelle erreur inverse associee `a x


la quantite
1
(
x) = min (kAk2 tels que (A + A) x = b) .
kAk2
Par analogie, lerreur de calcul kxk2 / kxk2 = k
x xk2 / kxk2 sappelle aussi erreur di-
recte.
Lerreur inverse mesure (en norme relative) la distance du probl`eme exact au probl`eme
kAk2
perturbe que x
resout exactement. Elle determine la mesure relative de la per-
kAk2
turbation de A equivalente au calcul de la solution x . Si x
est le resultat dun calcul sur
ordinateur, le calcul de x
est fiable si lerreur inverse associee est de lordre de la precision
machine , soit
x) C,
(
u C est une constante pas trop grande, qui peut dependre des donnees du probl`eme (ici
o`
A, b, n). Si de plus la matrice A et/ou le second membre b sont entaches derreur le calcul
de x
est fiable lorsque lerreur inverse associee est de lordre de ces erreurs.
Proposition 3.4 Soit r = A x b le vecteur residuel associe `
ax. Montrez qualors lerreur
inverse en x
est determinee par la formule
krk2
(
x) = .
kAk2 k
xk2
x) kAk2 A1 2 1/2 on a

Montrez que si (
kxk2
2 kAk2 A1 2 (

x).
kxk2
Preuve 3.3 Demonstration.
krk2
On pose = . Puisque (A + A) x = r et krk2 kA
x = b, A xk2
kAk2 k
xk2
kAk2 k
xk2 . Donc
krk2 kAk2
= quel que soit A.
kAk2 k
xk2 kAk2
On a donc ( x). Montrons que la borne inferieure peut etre atteinte par une pertur-
bation particuli`ere A de A. On choisit
xT
r
A = .
xk22
k
rxT
On verifie que (A + A) x
x = b, soit A x
= b, qui est une identite.
T T xk22
k
x 2 = maxy6=0 r(
Et r x y) 2 / kyk2 = krk2 maxy6=0 |xT y|/ kyk2 = krk2 k xk2 par linegalite
de Cauchy. Donc
kAk2 krk2 kxk2
= = .
kAk2 kAk2 kxk22
On conclut que = (
x).

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
24 Chapitre 3 : Resolution de syst`emes lineaires

Lerreur dans le calcul sexprime par :

erreur directe conditionnement erreur inverse en x




probl` eme algorithme de calcul
math ematique en precision finie

Si lerreur directe est grande, cela peut etre d


u au probl`eme `
a resoudre (conditionnement
grand) et/ou `a lalgorithme (grande erreur inverse). Le r ole de lerreur inverse est de
permettre de distinguer dans lerreur directe entre le facteur d u au probl`eme
et le facteur d u`a lalgorithme.

3.3 R
esolution par factorisation A = LU
A est une matrice rectangulaire de Rmn . Ak designe la sous-matrice principale A
dordre k, k = 1, . . . min(m, n).
L Rmm denote une matrice triangulaire inferieure (carree) `
a elements diagonaux egaux
a 1. U R
` mn designe une matrice triangulaire superieure rectangulaire : uij = 0 si i > j.

Exercice 3.1 Appliquer lalgorithme du pivot vu dans les classes anterieures `


a la matrice

1 4 7
A= 2 5 8
3 6 11

Preuve 3.4 Demonstration. On part de



1 4 7
A = 2 5 8 .
3 6 11

En utilisant 2 comme pivot pour la deuxi`eme ligne et 3 pour la troisi`eme ligne, on obtient

1 4 7
0 3 6 .
0 6 10

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
25 Chapitre 3 : Resolution de syst`emes lineaires

On note que
1 0 0 1 4 7
A = 2 1 0 0 3 6 .
3 0 1 0 6 10
En utilisant 2 comme pivot dans la troisi`eme ligne, on obtient

1 4 7
0 3 6 .
0 0 2

On note que

1 0 0 1 0 0 1 4 7 1 0 0 1 4 7
A = 2 1 0 0 1 0 0 3 6 = 2 1 0 0 3 6 ,
3 0 1 0 2 1 0 0 2 3 2 1 0 0 2

et que la matrice triangulaire inferieure contient les multiplicateurs.

3.3.1 Transformation de Gauss, factorisation de Gauss A = LU


Definition 3.5 Soit k un entier et

=( 0 . . . 0, tk+1 , . . . , tm )T Rm
k

Soit ek le ki`eme vecteur de la base canonique de Rm . La matrice de transformation de


a est la matrice carree dordre m G = Im eTk .
Gauss associe `

Proposition 3.6 1. Action de G sur une matrice A Rmn .


Soient = ( 0 . . . 0, tk+1 , . . . , tm )T Rm et B = G A Rmn . Les k premi`eres
lignes de B sont egales ` a celles de A, et que la ligne j de B, avec k < j m est
obtenue en retranchant ` a la j`eme ligne de A tj fois la k`eme ligne de A.
2. Soit = ( 0 . . . 0, tk+1 , . . . , tm ) Rm et j k, alors (I eTj )1 = I + eTj .

(j) (j)
3. Soient j = ( 0 . . . 0, tj+1 , . . . , tm Rm . Alors

n1
1 X
(I n1 eTn1 ) . . . (I 1 eT1 ) j eTj

=I+
j=1

est triangulaire inferieure.

Preuve 3.5 Demonstration.


1. La demonstration de cette propriete est purement calculatoire.
2. On utilise que (I eTj )(I + eTj ) = I eTj eTj et eTj = 0 pour j k.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
26 Chapitre 3 : Resolution de syst`emes lineaires

3. En effet, dapr`es le (2),


1
(I n1 eTn1 ) . . . (I 1 eT1 ) = (I + 1 eT1 ) . . . (I + n1 eTn1 ),


or si i < j, i eTi j eTj = 0 car alors eTi j = 0, et en developpant (I + 1 eT1 ) . . . (I +


n1 eTn1 ) on obtient I + n1 T
P
j=1 j ej .
Pn1
On constate que la matrice L = I + j=1 j eTj est triangulaire inferieure et que si
(j)
i = j, lij = 1 alors que si i > j, lij = ti .

Proposition 3.7 Si les Ak sont inversibles pour k = 1 . . . s = min(m 1, n), il existe L


et U telles que A = LU . De plus, ukk = detAk /detAk1 . Lalgorithme ci-dessous realise
3
ache en 2 n3 operations si A Rnn .
cette t

Preuve 3.6 On construit une suite de matrices (A(k) , k = 1 . . . s) telle que A(0) = A.
(k)
Supposons construites A(0) , . . . , A(k1) , et supposons que akk 6= 0. Soit

(k) (k)
!T
(k)
ak+1k amk
= 0, . . . 0, (k)
,...,..., (k)
akk akk

Dapr`es la proposition 3.6, A(k) = I (k) eTk A(k1) a tous ses elements sous-diagonaux


de la colonne k nuls. Donc par construction de la suite (A(k) , k = 1 . . . s), A(s) = U est
une matrice triangulaire superieure et on a
   
U = I (s) eTs . . . I (1) eT1 A.

Dapr`es la proposition 3.6, la matrice


s
X
L=I+ j eTj
j=1

est triangulaire inferieure et verifie A = LU.


(k)
A present, montrons que si les Ak sont inversibles, on a bien akk 6= 0. Sinon, pour
(l)
1 l s, all = 0, alors si C (l) est la sous-matrice principale dordre l de A(l) , comme par
constuction de la suite de matrices A(k) , C (l) est triangulaire superieure (tous les elements
(l) (l)
sous-diagonaux ont ete annules jusqu` a la colonne l de A(l) ), et que all = cll = 0, alors
(l) (l) (l)
la derni`ere ligne de C est nulle et donc rg(C ) < l . Or on sait que A a ete obtenue
en remplacant une ligne de A par cette ligne moins une combinaison lineaire des lignes
precedentes, ce qui preserve le rang, donc rg(C (l) ) = rg(Al ) < l. Or par hypoth`ese du
theor`eme, Al est inversible et donc de rang l, do` u contradiction.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
27 Chapitre 3 : Resolution de syst`emes lineaires

Algorithme de factorisation de Gauss (sans pivotage)


Pour k = 1 `a s = min(m 1, n)
si akk = 0 alors exit
sinon
w := ak,k+1:n
pour i = k + 1 ` a m
aik := aik /akk
:= aik
ai,k+1:n := ai,k+1:n w .
finpour
finsi
finpour
Un syst`eme triangulaire dordre n se resout par substitution en n2 operations. Ainsi la
resolution de Ax = b lorsque A = LU se fait par
Ly = b et U x = y.

3.4 R
ole du pivotage
Exemple 3.8 Considerons le syst`eme
105 x +

y = 1
.
x + y = 2
A cause du petit coefficient 105 , il est clair que la solution doit etre proche de x = y = 1. (1)
Supposons que lon resolve ce syst`eme sans pivotage avec une arithmetique `a 4 chiffres. Quelle
solution obtient-on ? (2) Avec pivotage maintenant. On echange les deux equations, soit

x + y = 2
.
105 x + y = 1
Quelle solution obtient-on ? Calculez dans les deux lerreur inverse associee.

(1) Par soustraction, il vient (1105 )y = 2105 . Or dans une arithmetique `a quatres chiffres,
les quantites 1 105 et 2 105 se representent par 105 , donc 105 y = 105 , soit y = 1. Mais
alors 105 x + 1 = 1 implique x = 0 (tr`es different de 1 !).
(2) On echange les deux equations, soit

x + y = 2
.
105 x + y = 1
Donc (1 105 ) y = 1 2 105 entrane encore y = 1. Mais cette fois-ci x + 1 = 2 implique
x = 1. Le seul fait de pivoter a remplace un resultat faux par un resultat satisfaisant.
Calculons en effet lerreur inverse associee `a chaque solution :
105 1
q  
kAk2 = T
(A A) avec A =
1 1

1 + 105 + 5 2 105 + 1010
=
2
' 1.61

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
28 Chapitre 3 : Resolution de syst`emes lineaires

 
0
Pour z1 = (0, 1)T , r1 = Az1 b = et donc
1

kr1 k2 1
(z1 ) = = ' 6.2 101
kAk2 kz1 k2 kAk2

105
 
T
Pour z2 = (1, 1) , r2 = Az2 b = et donc
0

kr2 k2 105
(z2 ) = = ' 4.4 106
kAk2 kz2 k2 2 kAk2

Or sur une arithmetique ` a 4 chiffres decimaux correspond `a une precision machine =


104+1 = 103 . Seule lerreur inverse (z2 ) est de lordre de 103 .

Lalgorithme suivant realise une factorisation de Gauss avec pivotage :

Algorithme de factorisation de Gauss avec pivotage partiel


a n1
Pour k = 1 `
eterminer p {k, . . . , n} tel que |apk | = max |aik |
d
kin
rk := p
echanger ak,1:n et ap,1:n

w := ak,k+1:n
pour i = k + 1 ` a n
aik := aik /akk
:= aik
ai,k+1:n := ai,k+1:n w
finpour
finpour

Propri
ete 3.9 Lalgorithme ci-dessus determine pour toute matrice A carree inversible,
une matrice de permutation P = Pn1 . . . P1 telle que P A = LU
(l)
Preuve 3.7 Demonstration. Admise. Si ` a la li`eme etape, all = 0 alors, il existe un
(l)
indice de ligne i > l tel que ail 6= 0, sinon les elements de A(l) en dessous de la l
1i`eme ligne seraient nuls. Donc A(l) serait non inversible, et comme nous avons vu que les
transformations de Gauss conservaient le rang, A serait non inversible, ce qui est exclu.
Soit alors B (l) = Pil A(l) o`
u Pil echange les lignes i et l. Si on pose

(l) (l)
!T
(l)
bl+1l bnl
= 0, . . . 0, (l)
,..., (l)
,
bll bll

alors les coefficients sous-diagonaux de A(l+1) = (I (l) eTl )B (l) sont non nuls jusqu`
a
la colonne l. On a ainsi construit une suite de matrices A (k) telles que A (n) = U . Soit

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
29 Chapitre 3 : Resolution de syst`emes lineaires

Mj = (I (j) eTj ). Alors U = Mn1 Pn1 . . . M1 P1 A, o` u les Pi sont des matrices de


permutations echangeant la ligne i avec une ligne dindice superieur o` u egal. Soit `
a present
fj = Pn1 . . . Pj+1 Mj Pj+1 . . . Pn1 , pour j n 2 et M
M fn1 = Mn1 . Comme pour tout
j, Pj Pj = I, alors
M
fn1 . . . M
f1 Pn1 . . . P1 A = U.
Posons P = Pn1 . . . P1 . Calculons ` fj pour j = 1 . . . n 1 :
a present M

M
fj = Pn1 . . . Pj+1 (I (j) eTj )Pj+1 . . . Pn1
= I Pn1 . . . Pj+1 (j) eTj Pj+1 . . . Pn1

Or pour tout l tel que l > j, eTj Pl = eTj car la sous-matrice principale dordre j de Pl
est lidentite. Donc M fj = I Pn1 . . . Pj+1 (j) eT , ce qui correspond `
a une transformation
j
de Gauss. Ainsi P A = LU , avec L = I + Pn1 . . . P2 ( e1 ) + Pn1 . . . P3 ( (2) eT2 ) +
(1) T

. . . (n1) en1 et P = Pn1 . . . P1 .


2
Il existe deux strategies de pivotage :
i) nous avons considere le pivotage partiel o` u seul lordre des equations peut etre
modifie,
ii) le pivotage total o`u lordre des equations et celui des variables peut etre modifies.
Lalgorithme ci-dessous determine des matrices de permutation P = Pn1 . . . P1 et =
1 . . . n1 telles que P A = LU .
Algorithme de factorisation de Gauss avec pivotage total
a n1
Pour k = 1 `
eterminer p et q {k, . . . , n} tels que |apq | = max kin |aij |
d
kjn
rk := p
ck := q
echanger ak,1:n et ap,1:n

echanger a1:n,k et a1:n,q

w = ak,k+1:n
pour i = k + 1 ` a n
aik := aik /akk
:= aik
ai,k+1:n := ai,k+1:n w
finpour
finpour

Definition 3.10 On appelle facteur de croissance de la factorisation de Gauss la quantite

aij |(k)
|
n = max
i,j,k kAk
 
(k)
u A(k) est la version calculee de A(k)
o` = aij ` a letape k de la factorisation.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
30 Chapitre 3 : Resolution de syst`emes lineaires

Dans la methode delimination de Gauss utilisee pour resoudre Ax = b, on ne calcule


pas explicitement la matrice L. En effet A = LU equivaut ` a L1 Ax = U x = L1 b = y.
1
Il suffit donc de determiner U et le vecteur y = L b, ce qui est lobjet de lalgorithme
delimination de Gauss. Il suffit dappliquer lalgorithme de la factorisation de Gauss `a la
matrice rectangulaire n (n + 1) formee de [A, b] et de ne pas stocker la matrice triangu-
laire inferieure L. La matrice triangulaire superieure de taille n (n + 1) resultante est
simplement [U, y].

Theor`eme 3.11 (Wilkinson) Pour toute matrice carree dordre n, lerreur inverse, en-
gendree sur un ordinateur (precision ) par lalgorithme de Gauss avec pivotage partiel
(ou total) satisfait
kAk 8 n3 n kAk  + O(2 ).

Autrement dit, la solution calculee x


est solution exacte du syst`eme (A + A)x = b.

Demonstration. Admise

Exemple 3.12 Pour la matrice de Wilkinson de taille 5,



1 0 0 0 1

1 1 0 0 1

W =
1 1 1 0 1

1 1 1 1 1
1 1 1 1 1

La factorisation de Gauss avec pivotage partiel appliquee `a W conduit successivement aux matrices
suivantes :

1 0 0 0 1 1 0 0 0 1 1 0 0 0 1

0 1 0 0 2


0 1 0 0 2


0 1 0 0 2


0 1 1 0 2 ,


0 0 1 0 4 ,


0 0 1 0 4 et

0 1 1 1 2 0 0 1 1 4 0 0 0 1 8
0 1 1 1 2 0 0 1 1 4 0 0 0 1 8

1 0 0 0 1
0 1 0 0 2
4


0 0 1 0 4 o`
u 16 = 2 .
0 0 0 1 8
0 0 0 0 16

On peut montrer que lelimination de Gauss appliquee `a une matrice de cette forme et de taille n
a un facteur de croissance de 2n1 .
conduit `

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
31 Chapitre 3 : Resolution de syst`emes lineaires

Exemple 3.13 Soit Wn la matrice de Wilkinson de taille n


1 0 0 1

.. .. ..
.

1 1 . .
.. ..

.. ..
.
Wn = . . 0 .
avec = 0.9.
..

..
.
. 1 1

1 1
On consid`ere b = (1, . . . , 1)T , alors la solution exacte est x defini par
1

xi = 2i1
pour i = 1 . . . n 1
i1
,
xn = 2


avec = 2n1 1 + .
On applique `a ce syst`eme les algorithmes de Gauss avec pivotage partiel et total, pour
diff
erentes
u K = kAk2 A1 2 , R =
valeurs de n. Les resultats sont resumes dans le tableau ci-dessous, o`
R kx xk2
kAx bk2 , EI = represente lerreur inverse et ED = lerreur directe.
kAk2 kxk2 kxk2
Pivotage partiel Pivotage total
n K R EI ED R EI ED
10 4.45 4.2 1014 6.8 1015 2.4 1014 6.7 1016 1.1 1016 1.0 1016
20 8.89 4.7 1012 3.7 1013 2.7 1012 0 0 6.5 1017
30 13.6 2.4 1008 1.3 1009 1.4 1008 2.2 10 16
1.2 10 17
7.8 1017
40 18.1 2.4 1005 9.7 1007 1.4 1005 6.8 10 16
2.8 10 17
7.8 1017
50 22.7 2.5 1002 7.9 1004 1.4 1002 2.2 10 16
7.0 10 18
7.8 1017
Il apparat tr`es clairement que sur cette matrice, d`es n = 30, il est necessaire dutiliser une strategie
de pivotage total pour que le calcul soit fiable et donne une solution proche de la solution exacte du
syst`eme. Rappelons neanmoins que dans la plupart des cas, le pivotage partiel suffit pour obtenir
un calcul fiable.
4

3.5 Factorisation de Cholesky dune matrice sym


etrique d
efinie
positive
Proposition 3.14 Supposons que A = C2 C2T = C1 C1T , o` u les Ci sont deux matrices
a elements diagonaux strictement positifs, alors C1 = C2 .
carrees triangulaires inferieures `
Preuve 3.8 Demonstration. On part de C2 C2T = C1 C1T et ainsi (C11 C2 )T = C11 C2 .
On verifie que linverse dune matrice triangulaire inferieure est triangulaire inferieure, et
la matrice T = C1 C21 est donc une matrice triangulaire inferieure ` a elements diagonaux
positifs qui verifie T T = T . Or comme T est triangulaire inferieure, T 1 lest aussi et
T T est triangulaire inferieure. Dapr`es legalite T T = T , on conclut que T est diagonale
(et donc reelle) ; le ie`me coefficient diagonal tii > 0 de T verifie tii = t1 ii , cest `
a dire
1
tii = 1. Ainsi T est la matrice identite, I, et C1 C2 = I, do` u C1 = C2 .

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
32 Chapitre 3 : Resolution de syst`emes lineaires

Proposition 3.15 Toute matrice A symetrique definie positive admet une factorisation
de Cholesky A = C T C obtenue gr
ace ` ute n3 /3 operations
a lalgorithme de Cholesky qui co
flottantes.

Preuve 3.9 Demonstration. Reglons tout de suite le cas de lunicite de la decomposition :


Si A = C1 C1T = C2 C2T , alors en utilisant la proposition 3.14, on deduit que C1 = C2 .
En ce qui concerne lexistence, on la traite par recurrence sur lordre de la matrice A. Si
n = 1, A = (a11 ) et comme A est definie positive, a11 > 0 et on peut choisir pour C la
matrice (a11 1/2 ). Supposons que pour toute matrice hermitienne definie positive de rang
a n, la factorisation de Cholesky existe. Soit
inferieur `

lT
 
A=
l Ae

une matrice Hermitienne definie positive dordre n. On cherche C triangulaire inferieure


de la forme
 
0
C= .
m B
Soit
mT
 
T
C = .
0 BT

Legalite CC T = A implique alors



=
m = l, .
mmT + BB T = A.
e

Comme A est definie positive, pour tout x 6= 0 de Rn , xT Ax > 0 et donc en prenant pour
x le premier vecteur de la base canonique, on obtient que eT1 Ae1 = > 0. Lequation

||2 = > 0 permet de choisir = positif et m = l/. Il reste ` a trouver B telle que
BB T = A e mmT = D. Il suffit dappliquer lhypoth`ese de recurrence `
a D qui est dordre
n 1, et qui est, comme nous allons le montrer, hermitienne definie positive.
En effet DT = D, car D = A e mmT o` uAe et mmT sont hermitiennes.

T
1 lT x 
l
 lT x
T T e T
x Dx = x (A ll )x =

lT A
x x
e
T
lT x lT x
= A .
x x

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
33 Chapitre 3 : Resolution de syst`emes lineaires


lT x
Soit x Rn1 non nul, et y = non nul dans Rn . Donc comme A est definie
x
positive, pour tout y non nul de R , y T Ay > 0 et donc xT Dx > 0. La matrice D hermi-
n

tienne definie positive dordre n1 admet le facteur de Cholesky B triangulaire inferieure a


`
diagonale positive telle que BB T = D. C est donc aussi triangulaire inferieure `
a diagonale
positive.

Proposition 3.16 Soit A une matrice definie positive. Montrez parq identification dans
T
Pi1 Pi1
lequation A = CC que, pour k i cki cii = aik p=1 cip ckp et cii = aii p=1 cip cip .
Et en deduire un algorithme de calcul de C.

Preuve 3.10 Demonstration. Le terme (i, k) de



c11 0 0 ... 0 c11 c21 c31 . . . cn1 a11 a21 a31 . . . an1
c21 c22 0 . . . 0 0 c22 c32 . . . cn2 a21 a22 a32 . . . an2

c31 c32 c33 . . . 0 0 0 c33 . . . cn3 a31 a32 a33 . . . an3
=


.. .. .. . . .. .. .. .. . . .. .. .. .. .. ..
. . . . . . . . . . . . . . .
cn1 cn2 cn3 . . . cnn 0 0 0 . . . cnn an1 an2 an3 . . . ann

u lon tire, pour k i, cki cii = aik i1


verifie aik = ip=1 cip ckp , do`
P P
q p=1 cip ckp et ckk =
Pi1
akk p=1 ckp ckp .

Algorithme de la factorisation de Cholesky


Pour i = 1q` a n
Pi1 2
cii := (aii p=1 cip )
Pour k = i + 1 ` a n
Pi1
cki := (aik p=1 cip ckp )/cii
finpour
finpour

On factorise A = C T C, et la solution de Ax = b sobtient par



T Cy = b
CC x = b
C T x = y.

Th eor`eme 3.17 Si on utilise lalgorithme de Cholesky sur un ordinateur (precision )


pour resoudre Ax = b, alors soit lalgorithme sarrete, soit il produit une solution x
qui
est solution exacte du syst`eme perturbe (A + A)
x = b. On a
1. kAk2 cn  kAk2

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
34 Chapitre 3 : Resolution de syst`emes lineaires

2. Si qn kAk2 A1 2  1 alors pas darret, o`



u qn est un polyn
ome de faible degre en
n.

Demonstration. Admise

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
Chapitre 4

R
esolution de probl`
emes aux
moindres carr
es

4.1 Introduction
Ce chapitre concerne la resolution du probl`eme de moindres carres lineaires. Comme
pour le cas des syst`emes lineaires, des outils fondammentaux danalyse derreur seront
presentes.
Les deux methodes, basees sur des factrorisations matricielles, les plus utilisees en
pratique seront decrites : la methode des equations normales et la methode de la factori-
sation QR. Ces deux methodes seront comparees du point de vue de leur co ut en nombre
doperations et de leur precision.
Nous allons voir dans un premier temps, un exemple de probl`eme de moindres carres
lineaires representatif de la classe des probl`emes destimation de param`etres.

4.2 G
en
eralit
es
Dans ce chapitre, A Rmn , b Rm , et m n. Dans de nombreuses applications,
a calculer x
on cherche ` tel que A
x approche b au sens des moindres carr
es, cest `
a dire

x bk2 = min(kAx bk2 , x Rn ).


kA

On dit alors que x


est une solution du probl`eme de minimisation

P : minn kAx bk2 .


xR

Exemple 4.1 Probl`eme destimation de param`etres. On recherche un param`etre x. Un


dispositif permet de realiser des mesures yi aux instants ti , i = 1, . . . m. On suppose
que sous certaines hypoth`eses (pas derreurs de mesure, physique suit une loi donnee,
des mod`eles sont lineaires), les mesures devraient theoriquement suivre une loi lineaire
yi = Ai x. En cherchant ` a minimiser lecart entre les mesures reelles yi et les mesures
theoriques yi , formuler la recherche de x sous la forme dun probl`eme de moindres carres

35
36 Chapitre 4 : Resolution de probl`emes aux moindres carres

lineaires. Un mobile est en chute libre rectiligne sous laction seule de lacceleration de
pesanteur x = g. On suppose donc la vitesse initiale suivant la verticale (trajectoire
rectiligne), et on dispose de mesures de sa position aux instants ti , i = 1, . . . m. Formulez
lestimation de la position initiale (t = 0)x0 , de la vitesse initiale x0 et de g sous la forme
dun probl`eme de moindres carres.

Preuve 4.1 Demonstration : Lequation de la trajectoire est x(t) = 21 gt2 + x0 t + x0 . On


i la position mesuree a linstant ti . Soit A Rm3 , telle que
note x
1 2
2 t1 t1 1 x
1
A=
.. .. .. et soit b = .. ,
. . . .
12 t2m tm 1 x
m
Pm
on a alors i=1 (xi i )2 = kAv bk22 , o`
x u v = [g, x0 , x0 ]T .

Proposition 4.2 Le probl`eme P admet toujours au moins une solution. Une condition
soit solution de P est que x
necessaire et suffisante pour que x soit solution de lequation
normale
AT Ax = AT b. (4.1)
La solution x est unique si et seulement si A est de rang maximal n. Dans ce cas AT A est
definie positive. Realiser une interpretation geometrique de ce resultat en faisant intervenir
sur un croquis Im(A) et b Ax.

Preuve 4.2 Demonstration : Nous faisons la demonstartion dans le cas reel (A, b sont
reels et la solution chercheee x est reelle). Le cas complexe sobtient par separation des par-
ties reelles et imaginaires dans kAx bk2 . Soit r(x) = b Ax. 1) Montrons que lequation
normale (4.1) admet toujours une solution. Dapr`es la proposition 1.2, Im(AT ) = Im(AT A).
Donc comme y = AT b Im(AT ), y Im(AT A), et donc il existe x tel que y = AT Ax =
AT b. 2) En utilisant

r(x)T r(x) = r(
x)T r( x)T A(x x
x) 2r( )T AT A(x x
) + (x x ), (4.2)

on obtient que si x x)k2 (puisque AT A est semi-definie


satisfait (4.1), alors kr(x)k2 kr(
positive).
Reciproquement, soit x1 qui minimise r(x). Soit x une solution de lequation normale.
Alors AT r( x) = 0 et donc on a r(x1 )T r(x1 ) = r( x)T r(
x) = r(x)T r(
x) 2r(x)T A(x1
) + (x1 x
x )T AT A(x1 x ) = r( x)T r(
x) + (x1 x)T AT A(x1 x) Ceci nest possible
que si kA(x1 x )k2 = 0 donc x1 x Ker(A) = Ker(AT A). Mais alors, AT A(x1 ) =
AT A(x + x1 x ) = AT A x = AT b.
Enfin, dun point de vue mathematique, resoudre le probl`eme de moindres carres est
equivalent `a resoudre lequation normale associee. Cette equation admet une unique so-
lution ssi AT A a un noyau reduit au vecteur nul, ce qui est equivalent par la formule du
rang sur A ` a n = 0 + rg(A). Cette condition entrane que AT A est definie positive.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
37 Chapitre 4 : Resolution de probl`emes aux moindres carres

Soit A Rmn o` u m et n sont quelconques, une  matricede rang r. La matrice A


r 0 r
peut secrire sous la forme A = U V T avec = 0 0 m r Rmn . o` u
r nr
les matrices U Rmm et V Rnn sont des matrices orthogonales (U T U = Im et
V T V = In ) et r est la diagonale des valeurs singuli`eres de A. Ces valeurs singuli`eres
sont strictement positives et r est une matrice dordre r inversible. Cette decomposition
de A est la decomposition en valeurs singuli`eres de A.

Proposition 4.3 Soit A Rmn de rang r < min(n, m). Il existe des matrices unitaires
U Rmm et V Rnn telles que :
 
T r 0 r
U AV =
0 0 mr
r nr

u r = diag (1 , . . . , r ), avec 0 < r 1 .


o`

Preuve 4.3 Demonstration : Comme A est de rang r, la matrice symetrique AT A poss`ede


exactement r valeurs propres positives (distinctes ou non). Donc les valeurs propres de
AT A sont :
12 r2 > 0 = r+1
2
= = n2 .
Comme AT A est diagonalisable dans une base orthonormale, on peut choisir dans Rn une
base orthonormale formee de vecteurs propres associes aux valeurs propres i2 , i = 1, . . . , n
prises dans cet ordre.
Cette base definit une matrice unitaire V que lon decompose en [V1 , V2 ], o`u V1 Rnr est
2
la matrice des vecteurs propres associes aux r valeurs propres positives i . La matrice V2
verifie donc AT AV2 = 0 et AV2 = 0 car Ker(AT A) =Ker(A).
Alors  T T
V1 A AV1 V1T AT AV2
  2 
T T r 0
V A AV = = .
V2T AT AV1 V2T AT AV2 0 0
On pose U1 = AV1 1 r , soit AV1 = U1 r .
V1T AT AV1 = 2r implique U1T U1 = I. On choisit U2 tel que U = [U1 , U2 ] soit unitaire.
Pour cela on compl`ete la base U1 via le theor`eme de la base incompl`ete, puis on utilise
le procede dorthonormalisation de Gram-Schmidt sur les vecteurs rajoutes comme vu aux
theor`emes ?? et 1.4. Alors :
 T   T
U1 AV1 U1T AV2
  
T U1 r 0
U AV = A[V1 V2 ] = = .
U2T U2T AV1 U2T AV2 0 0
2
1
 
r 0 r
On pose + = 0 0 nr Rnm .
r mr

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
38 Chapitre 4 : Resolution de probl`emes aux moindres carres

Definition 4.4 Soit A Rmn , o` u m et n sont quelconques. On appelle pseudo-inverse


de A la matrice definie par A = V + U T .
+

Proposition 4.5 Soit A Rmn , o` u m et n sont quelconques. La pseudo-inverse A+ de


A est lunique solution X des equations de Moore-Penrose


XAX = X
AXA = A


(AX)T = AX
(XA)T = XA.

La pseudo-inverse de A est quelquefois appelee Moore-Penrose inverse de A.

Preuve 4.4 Demonstration : Une verification elementaire montre que A+ definie par la
decomposition en valeurs singuli`ere verifie les equations de Moore-Penrose. Supposons `
a
T T T T
present que Xi = 1, 2 verifient ces equations. Alors Xi = Xi A Xi = (AXi ) Xi = T T

AXi XiT . Donc Im(X1T X2T ) Im(A). De plus, AT = AT XiT AT = (Xi A)T AT = Xi AAT ,
donc (X1 X2 )AAT = 0 et donc Im(X1T X2T ) Ker(AAT ) = Ker(AT ) (dapr`es la
proposition 1.2). On obtient donc Im(X1T X2T ) Im(A) Ker(AT ). Or si x Im(A)
Ker(AT ), x = Az et AT Az = 0, ainsi z T AT Az = 0, do` u kAzk2 = 0 et donc x = Az = 0.
Donc Im(A) Ker(AT ) = {0} et X1 = X2 .

Proposition 4.6 Si A est de rang maximal n, alors

A+ = (AT A)1 AT et x
= A+ b.

Si de plus m = n, alors A1 = A+ .

Preuve 4.5 Demonstration: Soitla decomposition en valeurs singuli`eres de A de rang


n
n : A = U V T avec = u n est une diagonale positive dordre n. Alors
, o`
0
AT A = V T V T , et  
T
 n
= n 0 = 2n .
0
Donc
(AT A)1 AT = V (2n )1 T U T .
Mais
(2n )1 T = (2n )1 1
 
n 0 = n 0 ,
Donc (AT A)1 AT = V + U T = A+ .
= (AT A)1 AT b, ainsi, x
De plus dapr`es (4.1), x = A+ b.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
39 Chapitre 4 : Resolution de probl`emes aux moindres carres

4.3 Algorithmes de r
esolution
La proposition 4.6 laisse penser quil est possible de resoudre le probl`emes de moindres
carres en calculant une decomposisiton en valeurs singuli`ere. Cependant il sav`ere que
cette technique est trop couteuse pour les probl`emes de grande taille. Nous presentons des
methodes qui ont des variantes adaptes a ces probl`emes exigeants.
Soit A Rmn , o` u m n de rang maximal n. Nous avons vu deux types de facto-
risations QR de la matrice A. La factorisation de Gram-Schmidt et ses variantes permet
decrire A = Q1 R, avec Q1 orthogonale (QT1 Q1 = In ) et R est triangulaire superieure ` a
elements diagonaux positifs. Les factorisations de Householder  (voir
 Section 4.6.1) ou de
R
Givens (voir Section 4.6.2) permettent decrire A = [Q1 , Q2 ] u O R(mn)n est
, o`
O
la matrice nulle, Q Rmm est orthogonale et Q1 Rmn et R sont en arithmetique
exacte les memes matrices que celles obtenue par lalgorithme de Gram-Schmidt.

Proposition 4.7 Le facteur R de la factorisation QR de A Rmn , ( o`


u m n et
rg(A) = n) est inversible.

a 0 = kRxk22 =
Preuve 4.6 La matrice R est inversible puisque Rx = 0 est equivalent `
2
xT RT Rx = xT RT QT1 Q1 Rx = X T AT Ax = kAxk2 , ce qui signifie que x Ker(A). La
formule du rang sur A montre que dim(KerA) = {0} do`
u x = 0. Donc KerR = {0} et R
est inversible.

Lequation AT Ax = AT b peut secrire RT QT1 Q1 Rx = RT Rx = AT b = RT QT1 b. Lin-


versibilite de R entrane que Rx = QT1 b. Nous disposons donc de deux syst`emes lineaires
dont x est solution :
AT Ax = AT b et Rx = QT1 b.

Normal equation method (cost : mn2 + n3 /3 flops)


1. Compute C = AT A and d = AT b
2. Compute de Cholesky factor R of AT A :
the normal equations read RT Rx = d
3. Solve in y the triangular system RT y = AT b
4. Solve in x the triangular system Rx = y

2 3
(Householder, Givens) QR method
  (cost : 2mn 2n /3 flops)
R
1. Factorize A = [Q1 , Q2 ]
O
2. Compute QT1 b and solve Rx = QT1 b

Les deux approches (equations normales, QR) fourniraient bien s ur tr`es precisement la
meme solution en arithmetique exacte. En revanche en presence derreurs darrondis, elles
se comportent de mani`ere tr`es differente, comme nous allons le voir dans le paragraphe
suivant.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
40 Chapitre 4 : Resolution de probl`emes aux moindres carres

4.4 Comparaison de la m
ethode QR `
a la m
ethode des
equations
normales
En ce qui concerne le nombre doperations, si m domine n, la methode QR est deux fois
uteuse que la methode des equations normales (2mn2 contre mn2 pour n << m).
plus co
Nous designons par cnm (ou cn ) une constante generique qui augmente faiblement avec m
et n, et on definit par cond2 (A) = kAk2 kA+ k2 le conditionnement (generalise) de A.
Theor`eme 4.8 Stabilite inverse de la methode QR. Supposons que la solution approchee
de minx kAx bk2 est obtenue en utilisant la methode (Givens, Householder) QR sur
x
une matrice verifiant cnm cond2 (A) < 1. Il existe alors deux matrices E et f telles que x

soit une solution exacte du probl`eme de moindres carres lineaires

kEkF Cmn  kAkF
min k(A + E)x (b + f )k2 avec
x kf kF Cmn  kbkF .
Demonstration : Wilkinson (65), admise.
2
Theor`eme 4.9 Stabilite inverse de la methode des equations normales. Supposons que la
de minx kAx bk2 est obtenue en utilisant la methode des equations
solution approchee x
normales. Si cm cond2 (A)2  < 1, lalgorithme de Cholesky sach`eve sans probl`eme. Il existe
alors une matrice telle que x soit une solution exacte du syst`eme lineaire
kbk2
 
2
(C + ) x = d avec kk2 cmn  kAk2 1 + + O(2 )
kAk2 k xk
Preuve 4.7 Demonstration : Admise
On part de A et b. Lors de la formation des equations normales, on cherche `a calculer
C = AT A et d = AT b. On obtient sur lordinateur C = C + C et d = d + d, avec
A kAk = cmn  kAk2
 T
kC1 k2 cmn T 2 2 2
kdk2 cmn  A 2 kbk2 = cmn  kAk2 kbk2 .
En utilisant le theor`eme 3.17, la factorisation de Cholesky engendre une erreur equivalente
a une perturbation C2 telle que x
` est solution exacte du syst`eme
!
d xT
C + C1 + C2 x
= d, (4.3)
xk22
k
u kC2 k2 cn kC + C1 k cn (1 + cmn ) kAk22 . En appelant la perturbation de C
o`
dans lequation (4.3), x
est solution de (C + )x = d, avec
kAk2 kbk2
kk2 cmn  kAk22 + cn (1 + cmn ) kAk22 + cmn  (4.4)
k
xk
kAk kbk
cmn  kAk22 + cmn  2 2
+ O(2 ) (4.5)
k
xk
kbk2
 
2
cmn  kAk2 1 + + O(2 ). (4.6)
kAk2 k xk

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
41 Chapitre 4 : Resolution de probl`emes aux moindres carres

Nous pouvons ` a present comparer numeriquement les deux methodes de resolution.


Tout dabord, il est a noter que la methode des equations normales peut ne pas
marcher du tout, et rencontrer une exception (racine carree dun nombre negatif ).
Dans ce cas, la condition cm cond2 (A) 2
 < 1 nest pas satisfaite.
Un probl`eme de ce
1 1
type se produit sur la matrice A = 0 1/2 /10 . En precision finie, on
1/2
 /10 0
a 1 + /100 = 1 et la matrice C calculee sur lordinateur nest plus inversible. La
factorisation de Cholesky echoue en effet sur cet exemple sur lordinateur.
Contrairement au resultat sur la methode QR, les erreurs exhibees par le theor`eme
portent sur C = AT A et non sur les donnees du probl`eme A et b. Cela peut rendre
compliquee la comparaison entre les erreurs (dorigine physique, ou de discretisation)
sur les donnees A et b, par rapport aux erreurs dues ` a la precision finie de lordi-
nateur.
Donc la methode QR permet donc de traiter une variete plus grande de probl`emes
que la methode des equations normales, et permet de detecter facilement si les er-
reurs dues `a larithmetique de lordinateur dominent les erreurs eventuelles sur A
et b.
Souvent les utilisateurs de logiciels numeriques sont interesses avant tout par la precision
obtenue sur leur solution. Un autre outil de comparaison de ces deux algorithmes et alors
A+ bk
letude de lerreur directe kxkA + bk . Cette
etude se m`ene aisement en utilisant la theorie
de la perturbation des moindres carres lineaires.

4.5 Perturbation dun probl`


eme de moindres carr
es
Dans ce paragraphe, on suppose que x est solution de minx kAx bk2 et que x+x est
solution du probl`eme perturbe minx k(A + A)x (b + b)k2 . Nous cherchons ` a borner
superieurement la norme de x en fonction des normes des perturbations A et b.

Proposition 4.10 Soit A Rmn , o` u m n de rang maximal n. Si x est la solution


du probl`eme minx kAx bk2 , la solution x + x du probl`eme perturbe est telle que, au
premier ordre,

kxk2 krk2 kAk2 kbk2 kbk2


 
2
cond2 (A) + cond2 (A) + cond2 (A) ,
kxk2 kAk2 kxk2 kAk2 kAk2 kxk2 kbk2

u r = b Ax.
o`

Preuve 4.8 On realise un developpement au premier ordre de

(A + A)T (A + A)(x + x) = (A + A)T (b + b),

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
42 Chapitre 4 : Resolution de probl`emes aux moindres carres

et on obtient
(AT A)x = AT b + AT (b Ax) AT Ax.
Comme A est de rang n, AT A est inversible. En multipliant legalite precedente par
(AT A)1 , et en pasant aux norme, on obtient, puisque A+ = (AT A)1 AT ,

kxk2 A+ 2 (kbk2 + kAk2 kxk2 ) + (AT A)1 2 kAk2 krk2 .


Le resultat final provient du fait que (AT A)1 = A+ A+T , ce qui entrane (AT A)1 2 =

2 2
kA+ k2 , puisque en utilisant la proposition 2.6, kA+ k2 = A+ A+T 2 = (A+ A+T ).
2
Nous pouvons maintenant rassembler les resultats de sensibilite avec les resultats der-
reur inverse pour obtenir une comparaison de la methode des equations normales avec la
methode QR du point de vue de lerreur directe kxk/kxk.

Th eor` eme 4.11 Si la methode QR (Householder, Givens) est utilisee sur une matrice A
verifiant cnm cond2 (A) < 1, lerreur sur la solution verifie
kxk2 kbk2 krk2
 
cnm cond2 (A) 1 + + cond2 (A) .
kxk2 kAk2 kxk2 kAk2 kxk2

Si la methode des equations normales est utilisee sur une matrice verifiant cnm cond2 (A)2 <
1, lerreur sur la solution verifie
kxk2 kbk2
 
2
cmn cond2 (A) 1 + .
kxk2 kAk2 k xk

Preuve 4.9 Demonstration : On rassemble le resultat de perturbation de syst`emes lineaires


et le theor`eme 4.9 pour la methode des equations normales, et des theor`emes 4.10 et 4.8
pour la methode QR.
2
krk
Pour un probl`eme o` u kAk kxk2
est faible, la methode QR ne fait pas intervenir de
2 2
conditionnement au carre et donc est beaucoup plus precise que la methode des
equations normales. Dans le cas contraire, il tous les cas de figure sont possibles.
Dans la litterature sur les moindres carres, la methode QR a la reputation detre la
plus precise des deux.
La methode QR sapplique ` a un ensemble de matrices plus vaste (cnm cond2 (A) < 1
2
contre cnm cond2 (A) < 1 pour les equations normales). Elle est donc toute indiquee
pour des logiciels generiques destines `
a traiter des classes de matrices pour lesquelles
le conditionnement nest pas bien connu.
Remarquons que pour m >> n la methode QR est deux fois plus lente que la methode
des equations normales. Il faut donc utiliser les equations normales, dans les cas o` u
elles donnent une precision acceptable. De fait, de nombreux logiciels notamment
dans le domaine de la statistique nutilisent que la methode des equations normales.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
43 Chapitre 4 : Resolution de probl`emes aux moindres carres

4.6 Algorithmes de factorisation QR


Nous realisons ici un bref expose des proprietes numeriques des factorisations QR en
les presentant sur le corps des complexes pour plus de generalite.

4.6.1 Factorisation QR de Householder


Definition 4.12 Soit u 6= 0, kuk2 = 1. La matrice H(u) = I 2uuH est appelee matrice
de Householder.

Exercice 4.1 Montrez que la matrice H = H(u) est hermitienne et unitaire.

Preuve 4.10 Demonstration. 1) H est hermitienne : H H = I H 2(uuH )H = I 2uuH =


H.
2) H est unitaire : H H H = H 2 = (I 2uuH )(I 2uuH ) = I 4uuH + 4u(uH u)uH = I
car kuk22 = uH u = 1.
2
Linportance de telles matrices en calcul vient du fait quelles permettent dannuler
tous les coefficients sauf un dans la 1e`re colonne dune matrice par premultiplication uni-
taire.
Exercice 4.2 Soit x = (xi )i=1...n un vecteur de Cl n , tel que la premi`ere composante x1 de
x soit reelle > 0. Montrez que le vecteur
x + kxk2 e1
u=
kx + kxk2 e1 k2

definit une matrice de Householder H(u) = H telle que Hx = kxk2 e1 .

Preuve 4.11 Demonstration.

kx + kxk2 e1 k22 = (xH + kxk2 eT1 )(x + kxk2 e1 ) = xH x + kxk2 eT1 x + xH kxk2 e1 + kxk2 kxk2
= 2 kxk2 (kxk2 + x1 ) > 0 puisque x1 > 0

Hx = kxk2 e1 equivaut ` a kxk2 He1 = x par multiplication par H. Or He1 = (I


2uuH )e1 = e1 2u(uH e1 ), avec

(kxk2 + x1 )
uH e1 = p .
2 kxk2 (kxk2 + x1 )

(kxk2 + x1 ) x
Donc He1 = e1 2 (x + kxk2 e1 ) = .
2 kxk2 (kxk2 + x1 ) kxk2
x
La matrice H admet donc comme premier vecteur colonne.
kxk2

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
44 Chapitre 4 : Resolution de probl`emes aux moindres carres

Remarque 4.13 Si le vecteur x est tel que x1 ne satisfait pas la condition x1 reel 0, on
peut encore definir H(u) = H telle que telle que Hx soit proportionnel `
a e1 de la mani`ere
suivante :
x + kxk2 ei arg(x1 ) e1
i) si x1 est un complexe non nul, u = x + kxk ei arg(x1 ) e1

2 2
x kxk2 e1
ii) si x1 est un reel < 0, u =
kx kxk2 e1 k2

Exercice 4.3 En deduire un algorithme de factorisation dune matrice A Cl mn en


A = QR, o` u Q Cl mm verifie QH Q = Im et R = (rij ) Cl mn , et est triangulaire
superieure (rij = 0, pour i > j).

4.6.2 Factorisation QR de Givens


Definition 4.14 La matrice reelle rothogonale de la figure (4.1) avec c = cos et s = sin
est une matrice de rotation de Givens.
... ....
.
.. ... ...
1 ...
.... ...
.
...
.
.
...
.
...
...
... .. ... ... ...
... .. . . ...
... .. ... ... ...
... .. ...
... .. .. .
... ...
.. ... ...
i
...
. 1c . s
.
.
....... ..... ..... ..... ..... ..... ......... ..... ..... ..... ..... ........ ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ....
..
.
..
... .. ... ...
... ...
..
... 1 . ..
... ..
..
.
... ...
...
.... . . ...
J(i, k, ) = ....
... ....
...
..
..
.. ...
...
.
...
...
...
...
s 1c . .
.... ..... ..... ..... ..... ..... ........ ..... ..... ..... ..... ....... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... .....
..
k ...
...
.
...
...
... ..
.
..
.
...
...
...
.
...
.
1 .
...
.
..
... ...
.
..
... .. ...
... ... ... .. ...
... ... ... .. ...
... . ...
.
... ... ... .. ...
... ..
... .. ...
... ... ..
...
...
..
....
..
... ...
.
...
. .. ...
... ... ... .. ...
...
... . . .. ....
. . .. .
.
... ... ... ..
..
...
. ...
.
...
. ... 1
... ...
. .

Figure 4.1

Exercice 4.4 Soit A Rmn . Supposons que pour i et j, 1 i, j m, aij 6= 0.


aij akj
Soit k 6= i, tel que akj 6= 0. Pour tel que : cos = q , sin = q ,
a2ij + a2kj a2ij + a2kj
montrez que lelement dindices (k, j) de J(i, k, )T A est nul. En deduire un algorithme
de factorisation de la matrice A.

Preuve 4.12 Demonstration. Soit B = J(i, k, )T A.


En ecrivant le produit matriciel, on obtient

bkj = sin aij + cos akj .

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
45 Chapitre 4 : Resolution de probl`emes aux moindres carres

Donc bkj = 0 pour la valeur de choisie. Lalgorithme de factorisation met a 0 les elements
situes sous la diagonale de A en les parcourant par colonne.

4.6.3 Comparaison en pr
esence derreurs darrondis
Nous disposons de quatre factorisations QR. La factorisation QR de Gram-Schmidt,
sa variante modifiee, et les factorisations de Householder et Givens. Quitte `a considerer
des sous matrices, elles permettent toutes dobtenir un facteur orthogonal m n, Q, et
un facteur carre triangualire superieur, R. Soit A R2515 , la matrice de Vandermonde
1
formee sur les scalaires pj = j . Son conditionnement est cond2 (A) = 3.9 109 . On appelle
15
Qe et R
e les facteurs obtenus par ces factorisations sur ordinateur. On a alors les resultats

A Q eR
e
2
suivants : Les errreurs residuelles associees aux factorisations QR soit = ,
kAk2
valent respectivement :

Methode Gram-Schmidt Gram-Schmidt Modifie Householder Givens


2 1016 2 1016 1015 1016

Les methodes se valent donc sur ce crit`ere. On compare `


a present les trois defauts dor-
eH e
= Q Q I :
thogonalites

2

Methode Gram-Schmidt Gram-Schmidt Modifie Householder Givens



6.02 107 2 1015 3 1016

Cest Householder et Givens que lon obtient la base orthogonale de meilleure qualite.
La methode de Gram-Schmidt donne une base qui nest plus orthonormale. La modifica-
tion de cette methode conduisant ` a la methode de Gram-Schmidt modifiee permet cepen-
dant dameliorer la qualite de la base orthogonale. Ces resultats peuvent etre consolides
theoriquement et il est possible de montrer que le defaut dorthogonalite est de lordre
de cmn cond2 (A)2  pour Gram-Schmidt, cmn cond2 (A) pour Gram-Schmidt modifiee, cmn 
pour Householder et Givens.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
46 Chapitre 4 : Resolution de probl`emes aux moindres carres

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
Chapitre 5

R
esolution de syst`
emes lin
eaires
par des m
ethodes de Krylov

5.1 Introduction
Que fait-on lorsquil sagit de resoudre un syst`eme lineaire et que les methodes basees
sur des factorisations matricielles sont trop co uteuses (en temps de calcul ou en memoire)
compte tenu du materiel informatique utilise ? On utilise des methodes iteratives qui gen`erent
une suite diteres senses converger vers la solution du probl`eme. Le but de ce chapitre est
de presenter les methodes qui figurent parmi les plus utilisees : les methodes basees sur
un espace dit de Krylov. Ce chapitre sera notamment loccasion de decrire la methode
GMRES, la methode du gradient conjugue, le but du precondiitonnement et la necessite
de disposer de bons crit`eres darret des iterations.
Dans les cas pratiques il est bon de se rappeler quil ne faut se tourner vers les methodes
iteratives que lorsque les methodes directes ne sont pas utilisables, car la mise en uvre
dune methode iterative peut necessiter beaucoup defforts, notamment concernant les tech-
niques de preconditionnement.

5.2 G
en
eralit
es
On definit par lespace de Krylov de dordre m associe ` a la matrice carree inversible
A Rnn et b Cn par K(A, b, m) = Span{b, Ab, ..., Am1 b}. Il est clair que les espaces
de Krylov sont des espaces embotes lorsque m crot. Dans ce chapitre, sauf precision
contraire, kk est la norme Euclidienne pour les vecteurs et la norme induite correspondante
pour les matrices.

Proposition 5.1 Montrez, en utilisant le polyn ome caracteristique, que la solution x =


A1 b appartient `a lespace de Krylov de dordre n (note K(A, b, n)). Noter que cet espace
peut etre de dimension tr`es inferieure a n (exemple si A est la matrice identite).
Pn j
Preuve 5.1 Si q(t) est le polyn
ome caracteristique, on a q(t) = j=0 j t . Donc 0 =

47
48 Chapitre 5 : Resolution de syst`emes lineaires par des methodes de Krylov

q(0) = det(A) 6= 0 ssi A est inversible. De plus, comme

0 = q(A) = 0 I + 1 A + ... + n An , (5.1)

on a
n1
1 X
A1 = j+1 Aj .
0
j=0

Ainsi x = A1 bappartient ` a lespace de Krylov de dordre n associe `


a A et b et note
K(A, b, n) = Span{b, Ab, ..., A n1 b}.
2
Les methodes de Krylov se repartissent en plusieurs classes suivant la mani`ere dont
litere xk K(A, b, k) est construit. Par convention on pose x0 = 0. Si x0 6= 0, cest a
dire, si lon dispose dune approximation de la solution, on se ram`ene au cas precedent en
resolvant Az = b Ax0 puis en faisant la mise ` a jour x = x0 + z. On trouve
Lapproche de Ritz-Galerkin : xk est tel que b Axk K(A, b, k).
Le residu minimum : trouver xk K(A, b, k) tel que ||b Axk ||2 . est minimum
Lapproche de Petrov-Galerkin : trouver xk tel que b Axk est orthogonal ` a un
espace de dimension k (eventuellement different de K(A, b, k)).
Lapproche erreur minimum : trouver xk AT K(A, b, k) tel que ||b Axk ||2 est
minimal.

5.3 La m
ethode GMRES
5.3.1 Pr
esentation de lalgorithme
Dans lalgorithme GMRES, on choisit xk K(A, b, k) tel que ||bAxk ||2 est minimum.
Soit lalgorithme suivant :

Arnoldis algorithm
1. v1 = b/kbk
2. For j=1,2, ... m-1 Do
3. Compute hij = viT Avj for i = 1, j
Compute wj = Avj ji=1 hij vi
P
4.
5. hj+1,j = kwj k
6. If (hj+1,j = 0) then Stop
7. vj+1 = wj /hj+1,j
8. EndDo

Proposition 5.2 Les vecteurs vj generes par lalgorithme sont orthogonaux.

Preuve 5.2 Demonstration. En effet, `a letape j de lalgorithme, on realise lorthogona-


a vi , i j, pour obtenir vj+1 . Les vi , i j + 1
lisation de Schmidt de Avj par rapport `
sont donc bien orthogonaux.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
49 Chapitre 5 : Resolution de syst`emes lineaires par des methodes de Krylov

Proposition 5.3 Si ` a letape js lalgorithme rencontre une quantite hjs +1,js nulle, il
sarrete.
Les quantites vj et hij generees par lalgorithme pour j < js peuvent etre reecrites `
a
chaque pas de la boucle en j sous forme matricielle

j,
AVj = Vj+1 H

uH
o` j Rj+1j est une matrice de Hessenberg superieure.

Preuve 5.3 Demonstration. En effet, dapr`es les etapes 4. et 7. de lalgorithme hj+1,j vj+1 =
Avj ji=1 hij vi , ce qui secrit bien AVj = Vj+1 H
P j avec Vj = [v1 , . . . , vj ] Rnj et
j = [hi,j ] Rj+1j Hessenberg superieure.
H

Proposition 5.4 On se place au dernier pas js de lalgorithme. On a alors AVjs = Vjs Hjs ,
u la matrice Hjs est une matrice carree dordre js . Les valeurs propres de Hjs sont des
o`
valeurs propres de A. Si y est un vecteur propre de Hjs associe a la valeur propre (de A
et de Hjs ), Vjs y est un vecteur propre de A associe.

Preuve 5.4 Demonstration. Si pour y 6= 0, Hjs y = y, AVjs y = Vjs Hjs y = Vjs y, avec
Vjs y 6= 0. Donc toute valeur propre de Hjs est une valeur propre de A. Pour tout vecteur
propre y de Hjs , Vjs y est un vecteur propre de A.

Proposition 5.5 Soit Hj = VjT AVj . La matrice Hj est Hessenberg superieure. En parti-
culier, si A est symetrique, Hj est tridiagonale.

Preuve 5.5 Demonstration. On sait que Hj Rjj est Hessenberg superieure (car elle
est constituee des j premi`eres lignes de la matrice rectangulaire Hessenberg superieure
H j Rj+1j ). Si de plus A est symetrique, H j = V T AVj . et H T = (V T AVj )T =
j+1 j j
VjT AT Vj = Hj . Donc Hj est carree Hessenberg superieure et symetrique ; elle est donc
carree et tridiagonale.

a js , est K(A, b, j). Lespace


Proposition 5.6 Lespace image de Vj , pour j inferieur `
K(A, b, js ) est un espace invariant pour A.

Preuve 5.6 Demonstration. Par recurrence. Vrai pour j = 1. Supposons le resultat sui-
vant vrai au rang j : il existe une matrice Xj Rjj telle que [b, . . . , Aj1 b] = [v1 , . . . vj ]Xj ,

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
50 Chapitre 5 : Resolution de syst`emes lineaires par des methodes de Krylov

la matrice Xj etant triangulaire superieure inversible (elements non nuls sur la diagonale).
Alors , on posant = kbk,

[b, . . . , Aj1 b, Aj b] = [v1 , A[b, . . . , Aj1 b]] = [v1 , A[v1 , . . . vj ]Xj ]




0
= [v1 , Vj+1 H j Xj ] = Vj+1 .. j Xj
H .
.
0

Montrons que la matrice entre crochets que nous appelons Xj+1 est triangulaire superieure
inversible. La matrice H j est de rang j (Hessenberg avec elements non nuls sur la sous-
diagonale sinon lalgorithme se serait arrete). La matrice H j Xj est Hessenberg superieure
et son element sous diagonal de la colonne k de H j par le ki`eme element diagonal de Xj : il
est donc non nul. La matrice Xj+1 est donc triangulaire superieure ` a elements diagonaux
non nuls : elle est inversible. Enfin on a AVjs = Vjs Hjs donc comme les colonnes de Vjs
forment une base de K(A, b, js ), on a AK(A, b, js ) K(A, b, js ).

Proposition 5.7 Litere xj minimisant la norme du residu kb Axk sur lespace K(A, b, j)
j zj k.
u zj minimise kkbke1 H
secrit xj = Vj zj o`

Preuve 5.7 Demonstration. Si x est dans limage de Vj , il existe z Rj tel que x =


Vj z. Alors kb Axk = kkbkv1 AVj zk = kkbkv1 Vj+1 H j zk = kVj+1 (kbke1 H j zk). La
norme euclidienne etant unitairement invariante, kb Axk = kkbke1 H j zk. Donc on est
ramene `a la resolution du probl`eme de moindres carres minzRj kkbke1 H j zk. Soit zj la
solution obtenue. La solution du probl`eme de depart est Vj zj .

Proposition 5.8 Le pas js etant celui o` u se produit larret de lalgorithme GMRES, xjs
est la solution du syst`eme lineaire Ax = b.

Preuve 5.8 Demonstration. En reprenant la demonstration de la question precedente,


pour le pas js , on obtient que kb Axk = kkbke1 H js zjs k = kkbke1 H js zjs k. La matrice
Hjs etant carree et inversible (les valeurs propres de Hs sont des valeurs propres de la
matrice inversible A), le minimum kkbke1 H js zjs k est nul ` a loptimum zjs . Donc xjs =

Vjs zjs verifie kb Axjs k = kkbke1 Hjs zjs k = 0.

En rassemblant les proprietes ci-dessus, nous obtenons lalgorithme GMRES :

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
51 Chapitre 5 : Resolution de syst`emes lineaires par des methodes de Krylov

GMRES algorithm
1. x0 initial guess, r0 = b Ax0 , = kr0 k and v1 = r0 /
2. For k=1,2, ... Do
3. Compute wk = Avk
4. For i=1, ...,k, Do
5. hi,k = wkT vi
6. wk = wk hi,k vi
7. EndDo
8. hk+1,k = kwk k
9. If hk+1,k = 0 set m = k and Goto 12
10. vk+1 = wk /hk+1,k
11. endDo
12. Set-up the (m + 1) m matrix H m = (hi,j )1im+1,1jm
13. Compute, ym the solution of ke1 H m yk2
14. Compute, xm = x0 + Vm ym

Notons que la resolution du probl`eme de moindres carres en 13. est realisee par une
methode stable (Givens),

5.3.2 GMRES restart


e (ou red
emarr
e)
Lalgorithme GMRES peut etre lent et necessiter un stockage trop important pour les
vecteurs vj . Cest pour cela que lon utilise lalgorithme redemarre suivant :

Restarted GMRES : GMRES(m)


1. x0 initial guess, r0 = b Ax0 , = kr0 k and v1 = r0 /
2. For k=1,2, ... Do
3. Compute wk = Avk
4. For i=1, ...,k, Do
5. hi,k = wkT vi
6. wk = wk hi,k vi
7. EndDo
8. hk+1,k = kwk k
9. If hk+1,k = 0 set m = k and Goto 12
10. vk+1 = wk /hk+1,k
11. endDo
12. Compute, ym the solution of ke1 H m yk2
13. Compute, xm = x0 + Vm ym
14. If hm+1,m 6= 0 then x0 = xm Goto 1

Nous etudions ` a present la convergence de lalgorithme redemarre. Une premi`ere chose


est que au passage ` a lalgorithme redemarre, on perd la propriete de terminaison en un
nombre fini de pas. Il existe des conditions necessaires et suffisantes de convergence de lal-
gorithme pour toute matrice, malheureusement elles font intervenir l image numerique
generalise, qui est une quantite que lon se sait pas actuellement exploiter.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
52 Chapitre 5 : Resolution de syst`emes lineaires par des methodes de Krylov

Nous citons donc ici des conditions de convergence plus utilisables en pratique.

Proposition 5.9 Soit A une matrice diagonalisable telle que A = V DV 1 , o`


u D est
diagonale. Pour lalgorithme non redemarre,

kAxj bk kV kkV 1 k min max |Q()|kAx0 bk,


QPj ,Q(0)=1 sp(A)

u Pj est lespace vectoriel des polyn


o` omes de degre au plus j.

Preuve 5.9 Demonstration. Toujours pour x0 = 0, sans perdre de generalite, xj =


Pj1 i kAx bk. Donc les i minimisent kb A j1 i
P
i=0 i A b minimise
Pj i=0 i A bk = kQ(A)bk,
u Q(t) = t i=1 i ti . Ainsi,
o`

kAxj bk = min kQ(A)bk,


QPj ,Q(0)=1

= min kV Q(D)V 1 bk
QPj ,Q(0)=1

kV kkV 1 kkbk min kQ(D)k


QPj ,Q(0)=1

= kV kkV 1 k min max |Q()|kAx0 bk.


QPj ,Q(0)=1 sp(A)

On definit l image numerique dune matrice comme la partie (convexe, theor`eme de


H
Haussdorf ) du plan complexe NR(A) = { zz HAz
z
, z 6= 0}. On suppose que limage numerique
de A est inclus dans un disque de centre c et de rayon r, avec r < |c|. Ainsi 0 ne fait pas
partie de limage numerique de A. On appelle rayon numerique de A la quantite r(A) =
H
max{ |zz HAz|
z
, z 6= 0}.

Proposition 5.10 Pour toute matrice carree, r(Am ) r(A)m .

Preuve 5.10 Demonstration.


a considerer A/r(A), de montrer que si r(A) 1, alors r(Am ) 1.
1. Il suffit, quitte `
Soit wk = e2k/m , k = 1 . . . m une racine m`eme de lunite. Comme 1 z m =
2. Q
m
k=1 (1 wk z) (consid
erer les racines), on a
m m
1 X Y
p(z) = (1 wk z)
m
j=1 k=1,k6=j
m
1 X 1 zm
= .
m 1 wj z
j=1

Or p(z) = p(w1 z) = = p( wm z) pour tout z. comme p est de degre au plus m 1,


cela implique que p(z) = p(0) = 1.
3. On a donc I Am = m 1 Pm Qm
Q
k=1 (I wk A) et I = m j=1 k=1,k6=j (1 wk A).

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
53 Chapitre 5 : Resolution de syst`emes lineaires par des methodes de Krylov

4. Pour x de norme 1, on a

1 xH Am x = (Ix)H (I Am )x
H
m m m
1 X Y Y
= (1 wk A)x (I wk A)x
m
j=1 k=1,k6=j k=1
m m
1 X Y
= zjH (1 wj A)zj , avec zj = (1 wk A)x
m
j=1 k=1,k6=j
m  H  !
1 X
2 zj zj
= kzj k 1 wj A
m kzj k kzj k
j=1,zj 6=0

5. En remplacant A par ei A, on obtient


m  H  !
im H m 1 X
2 i zj zj
1e x A x= kzj k 1 e wj A .
m kzj k kzj k
j=1,zj 6=0

Si r(A) 1, la partie reelle du membre droit de cette egalite est positive ou nulle. En
 H    H  
z z z z
effet, Re(1ei wj kzjj k A kzjj k |) 1| kzjj k A kzjj k | 0, ce qui implique
que Re(1 eim xH Am x) est positif ou nul. En prenant tel que eim xH Am x =
|xH Am x|, on obtient |xH Am x| 1, et donc r(Am ) 1.

Proposition 5.11 Pour toute matrice carree,


1
kAk r(A) kAk.
2
Preuve 5.11 Demonstration. La partie droite est sobtient en utilisant la sous-multiplicativite
des normes. Pour la partie gauche, A = 12 (A + AH ) + 12 (A AH ) de sorte que
1
kAk (kA + AH k + kA AH k).
2
Comme A AH est Hermitienne,
|z H Az z H AH z|
kA AH k = max
z6=0 zH z
r(A) + r(AH ) = 2r(A).

Proposition 5.12 On a linegalite suivante


 j
r
kAxj bk 2 kAx0 bk.
|c|

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
54 Chapitre 5 : Resolution de syst`emes lineaires par des methodes de Krylov

Preuve 5.12 Demonstration de la proposition. Soit Q0 le polyn


ome donne par Q0 (t) =
t m
1 c . Alors en utilisant les deux lemmes,kQ0 (A)k 2r(Q(A)) 2r(I A/c)m . Or


r(I A/c) r/|c|. Donc

kAxj bk = min kQ(A)bk


QPj ,Q(0)=1
 j
r
kQ0 (A)bk kQ0 (A)kkbk 2 kAx0 bk
|c|
2

5.3.3 Utilisation pratique de GMRES


5.3.4 Arr
et des it
erations
Le crit`ere darret presente dans lalgorithme jusquici consiste `
a detecter lespace inva-
riant K(A, b, js ) en observant si hjs +1,js = 0. Ce type de test nest jamais utilise en pratique
car il est trop dangereux en presence derreur darrondis. On pref`ere sarreter lorsque les
kAx bk2 kAxk bk2
residus normalises (erreurs inverses) kAk kxkk k +kbk ou kbk sont suffisamment petits.
2 2 2 2
Il faut noter aussi que le calcul de kAxk bk2 pour le crit`ere darr et peut se faire impli-
citement lors de la resolution du probl`eme de moindres carres min kbke1 H j zj , et ne
2
necessite pas de produit additionnel par A.
De plus, meme en presence derreurs darrondis, il a ete demontre que la methode
non redemarree decrite ci-dessus, appelee MGS GMRES permet dobtenir une valeur de
kAxk bk2
kAk2 kxk k2 +kbk2 de lordre de la pr ecision machine en n pas au plus (la methode est dite
inverse stable).

5.3.5 Pr
econditionnement
Les propositions ci-dessus permettent de donner des conditions suffisantes de reduction
de la norme du residu au cours dun restart et donc dobtenir des conditions de conver-
gence de lalgorithme redemarre. Des techniques de transformations du syst`eme lineaire
Ax = b en un syst`eme equivalent pour lequel GMRES converge plus vite sont appelees
techniques de preconditionnement. Les caracteristiques principales dune bonne technique
de preconditionnement sont :
ne pas etre tr`es couteuse en place memoire,
sa mise en oeuvre (preparation + utilisation dans la methode) ne doit pas engendrer
trop de calculs,
elle doit accelerer la methode iterative.
Pour les methodes pour matrices non-symetriques comme GMRES, on parle frequemment
de preconditionnement
`a gauche ; Ax = b est remplace par M 1 Ax = M 1 b o` u M est inversible.
`a droite ; Ax = b est remplace par AM t = b et x = M 1 t, o`
1 u M est inversible.
mixte ; Ax = b est remplace par M11 AM21 t = M1 b et x = M21 t, o` u M1 et M2
sont inversibles. est inversible.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
55 Chapitre 5 : Resolution de syst`emes lineaires par des methodes de Krylov

ut de la methode (les termes en O(k), O(k 2 ),.., sont negliges)


Co
Memoire : stockage de A, de Mi et pour un vecteur de taille n supplementaire ` a
chaque pas
Operations : pour chaque etape, une application de A et inversion dun syst`eme avec
Mi , et 4kn operations flottantes par iteration.

5.4 La m
ethode du gradient conjugu
e
Dans cette section, la matrice A est supposee symetrique definie positive. Soit x =
A1 b. La condition b Axk K(A, b, k) secrit

VkT (b Axk ) = 0.

Partant de b = r0 = kr0 kv1 (on suppose sans perdre de generalite que x0 = 0) on a


VkT b = kr0 ke1 . Comme de plus xk K(A, b, k), xk = Vk y on obtient

VkT AVk yk = kr0 ke1 . (5.2)

La matrice VkT AVk = Hk est generee par lalgorithme.


Puisque A est symetrique, Hk est tridiagonale Tk .
La matrice Tk est non singuli`ere. En effet, si Tk y = 0 alors VkT AVk y = 0 donc
y T VkT AVk y = 0, ce qui implique Vk y = 0 car A est definie positive, et donc VkT Vk y =
y = 0.
Litere de Ritz-Galerkin est donc defini par xk = Vk (Tk1 kr0 ke1 ).

Proposition 5.13 Comme A est symetrique definie positive, la fonction x 7 xT Ax
est une norme. La condition de Ritz-Galerkin devient b Axk K(A, b, k), do` u A(xk
x )K(A, b, k) ou encore, (xk x )A K(A, b, k). Cela signifie que xk est tel que kxk x kA
est minimum sur K(A, b, k).

Preuve 5.13 Demonstration. Soit xk = Vk yk , et x = Vk y K(A, b, k). Alors kx x k2A =


kx xk + xk x k2A = kx xk k2A + kxk x k2A + 2(xk x)T A(xk x ). Comme (xk
x )A K(A, b, k) et xk et x sont tous deux dans K(A, b, k), on a kx x k2A = kx xk k2A +
kxk x k2A kxk x k2A .

Proposition 5.14 Si la methode sarrete (AVk = Vk Tk ), alors xk est solution du probl`eme.

Preuve 5.14 Demonstration. On a en effet AVk yk r0 = Vk (Tk yk kr0 ke1 ) = 0.

Proposition 5.15 La methode RGM converge en au plus m iterations sur une matrice
ayant m valeurs propres distinctes.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
56 Chapitre 5 : Resolution de syst`emes lineaires par des methodes de Krylov

Preuve 5.15 Demonstration. Qm Suposons que A a m valeurs propres distinctes


T
i , i =
1, . . . m, et soit p() = i=1 ( i ). Alors en diagonalisant A = QDQ , on obtient
p(A) = Qp(D)QT = 0. En reprenant la demontration de la proposition 5.1, on obtient que
la solution appartient ` a lespace de Krylov de dordre m.

5.4.1 Convergence de la m
ethode de Ritz-Galerkin (RGM)
Comme xk x0 + K(A, b, k), on a xk = x0 + Qk1 (A)r0 o`
u Qk1 est un polyn
ome de
degre au plus k 1. On a alors

xk x = x0 + Qk1 (A)(Ax Ax0 ) x (5.3)



= (I Qk1 (A)A)(x0 x ) (5.4)

= (I AQk1 (A))(x0 x ), (5.5)

ce qui montre que


kxk x kA = k(I AQk1 (A))(x0 x )kA .
La minimalite de kxk x kA sur lespace K(A, b, k) entrane la proposition suivante.

ome Qk1 (A) construit par la procedure RGM verifie


Proposition 5.16 Le polyn

k(I AQk1 (A))(x0 x )kA = min k(I AQ(A))(x0 x )kA ,


QPk1

omes de degre au plus k 1.


u Pk1 est lensemble des polyn
o`

Proposition 5.17 Soit xk le ki`eme itere de la RGM. On a


p !k
(A) 1
kxk x kA 2 p kx0 x kA .
(A) + 1

Preuve 5.16 Demonstration La Proposition 5.16 permet decrire

kxk x kA = min kp(A)(x0 x )kA .


pPk ,p(0)=1



1
Soient i , i = 1, ..., n les valeurs propres de A et = ... o`
u i i = 1, ..., n sont les

n

composantes de (x0 x ) dans la base constituee des colonnes de V . On a A = V V T et
(xk x ) = V ce qui entrne

p(A)(x0 x ) = V p()V T (V )
= V p().

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
57 Chapitre 5 : Resolution de syst`emes lineaires par des methodes de Krylov

kp(A)(x0 x )k2A = (V p())T A(V p())


Xn
= p(i )2 i i2
i=1
n
X
2
max(p(i ) ) i i2
i
i=1
max(p(i ) )kx0 x k2A
2
i
max (p())2 kxo x k2A .
[min ,max ]

Ceci montre que


 

kxk x kA min max |p()| kxo x kA . (5.6)
pPk ,p(0)=1 [min ,max ]

Un resultat dapproximation par les polyn omes de Chebyshev montre que


 
1
min max |p()| (5.7)
pPk ,p(0)=1 [min ,max ] |Cm ( max +
max
min )|
min

o` ome de Chebyshev de premi`ere esp`ece et de degre k. Pour |t| > 1 on


u Ck (t) est un polyn
a  k  1 
1  p
2
k  p
2
p k
Ck (t) = t+ t 1 + t+ t 1 t + t2 1 .
2 2
min max +min
En posant = max min on a max min = 1 + 2
 
max + min
Ck = Ck (1 + 2)
max min
1  p k
1 + 2 + (1 + 2)2 1
2
1  p k
1 + 2 + 2 ( + 1)
2
1

p 2 k
+ +1
2
2 !k
1 min + max

2 max min
 k
1 max + min

2 max min
 k
1 +1
.
2 1

Cela implique
 k
1 1
2 .
|Cm ( max
max
+min
min
)| +1

ce qui permet de completer la preuve en utilisant (5.7) et (5.6).

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
58 Chapitre 5 : Resolution de syst`emes lineaires par des methodes de Krylov

2
En utilisant les propositions 5.17 et 5.15, il apparat quune technique visant a rem-
placer le syst`eme dorigine Ax = b en un syst`eme equivalent
mieux conditionne, ou bien o` u,
les valeurs propres distinctes sont moins nombreuses,
permet daccelerer la convergence de la methode. Plus generalement, on appelle preconditionnement
toute technique visant a accelerer (en temps de calcul, ou en nombre diteration) une
methode iterative.
On rappelle les caracteristiques principales dune bonne technique de preconditionnement
sont :
ne pas etre tr`es couteuse en place memoire ,
sa mise en oeuvre (preparation + utilisation dans la methode) ne doit pas engendrer
trop de calculs,
elle doit accelerer la methode iterative.

5.4.2 La m
ethode du gradient conjugu
e en pratique
Forme classique
La RCM permet de definir de mani`ere unique une suite diteres. Cette methode peut
etre implantee de differentes mani`eres dans les logiciels de calculs. La methode la plus
stable en presence derreurs darrondis est la methode du gradient conjugue. Nous donnons
ici lalgorithme sous sa forme la plus stable. Cette forme est derivee dans de nombreux
ouvrages tels que Matrix Computations de Golub et Van Loan.

Conjugate Gradient algorithm (CG)


1. Compute r0 = b Ax0 and p0 = r0
2. For k=0,2, ... Do
3. k = rkT rk /pTk Apk
4. xk+1 = xk + k pk
5. rk+1 = rk k Apk
T r
k = rk+1 T
6. k+1 /rk rk
7. pk+1 = rk+1 + k pk
8. if converged then stop
9. EndDo

Le crit`ere darret prend en pratique la forme de residus normalises cites ci-dessus :


kAxk bk2 kAxk bk2
kAk kxk k +kbk ou
2 2 2 kbk2
.

Pr
econditionnement
Contrairement aux methodes pour matrices nonsymetriques, le preconditionnement de
CG doit toujours garantir que la matrice preconditionnee est symetrique definie positive.
Pour cela on impose que le preconditionneur M 1 est symetrique defini positif. Dans ce
cas, une factorisation de Cholesky donne M 1 = CC T . Une idee naturelle est de remplacer

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
59 Chapitre 5 : Resolution de syst`emes lineaires par des methodes de Krylov

= C T b. On pose A = C T AC , C x
le syst`eme dorigine par le syst`eme C T AC x = x,
b = C T b et
xk = C x
k ,
C pk = pk ,
rk = C T rk ,
zk = CC T rk .

Lalgorithme secrit de deux mani`eres equivalentes :


Conjugate Gradient algorithm
1. Compute r0 = b A x0 and p0 = r0
2. For k=0,2, ... Do
3. pTk A
k = rkT rk / pk = rkT CC T rk /pTk Apk = rkT zk /pTk Apk
C
4. xk+1 = xk + k pk xk+1 = xk + k pk
pk CT
5. rk+1 = rk k A rk+1 = rk k Apk
T
6. rkT rk
k = rk+1 rk+1 / T
= rk+1 CC T rk+1 /rkT CC T rk = rk+1
T
zk+1 /rkT zk
C
7. pk+1 = rk+1 + k pk pk+1 = rk+1 + k pk
8. if converged then stop
9. EndDo
Cela nous donne finalement lalgorithme du gradient conjugue preconditionne, o`
u lon voit
que lon na plus besoin du facteur de Cholesky de M 1 , mais simplement de resolution
de syst`emes lineaires avec M .
Preconditioned Conjugate Gradient algorithm
1. Compute r0 = b Ax0 , z0 = M 1 r0 and p0 = r0
2. For k=0,2, ... Do
3. k = rkT rk /pTk Apk
4. xk+1 = xk + k pk
5. rk+1 = rk k Apk
6. zk+1 = M 1 rk+1
T
7. k = rk+1 rk+1 /rkT rk
8. pk+1 = rk+1 + k pk
9. if converged then stop
10. EndDo

Il est possible de montrer que, dans cet algorithme, les residus rk sont M 1 orthogonaux
(rkT M 1 rl = kl ) et que les pk sont Aorthogonaux (pTk Apl = kl ). Les pk sont appeles
aussi directions de descente dapr`es une interpretation en terme dalgorithme doptimisa-
tion. Co ut de la methode
Memoire : stockage de A, du preconditionneur M et de 4 vecteurs de taille n (A
Rnn )
Operations : pour chaque etape, une application de A et une resolution dun syst`eme
lineaire avec M , et 10n operations flottantes par iteration.
Cependant, les erreurs darrondis dans la methode font quen pratique la solution peut ne
pas etre obtenue en n pas. Des techniques co uteuses de reorthogonalisation permettent de
diminuer quelque peu limpact de ces erreurs.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
60 Chapitre 5 : Resolution de syst`emes lineaires par des methodes de Krylov

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
Chapitre 6

Resolution de syst`
emes lin
eaires
par methodes it
eratives
stationnaires

6.1 Introduction
Historiquement, les methodes iteratives, dites stationnaires, presentees dans ce cha-
pitre furent les premi`eres methodes iteratives `
a etre utilisees, lorsque les methodes basees
sur des factorisations de matrices netaient pas utilisables en raison de leur co ut, et ceci
bien avant lapparition des methodes de Krylov. Elles ne sont plus considerees actuelle-
ment en tant que telles comme des methodes efficaces pour resoudre des syst`emes lineaires
generaux. En revanche elles interviennent comme briques de bases importantes, notam-
ment dans des techniques de preconditionnement et dans les methodes multigrilles.

6.2 Suite r
ecurrentes dordre 1
On sinteresse au syst`eme lineaire Ax = b o`
u A est carree inversible. Nous considerons
les methodes iteratives de la forme

x0 donne et xk+1 = Bxk + c.

Proposition 6.1 Les suites

x0 , xk = Bxk1 + c, k = 1, 2, 3, . . . (6.1)

convergent vers une meme limite quel soit x0 si et seulement si (B) < 1. La matrice
I B est alors inversible et limk+ xk = (I B)1 c.

Preuve 6.1 Demonstration : Supposons que la limite existe. Alors elle verifie x? = Bx? +
c, et donc ek = xk x? = B k (x0 x? ) = B k e0 . Par hypoth`ese, B k converge vers 0 ce
qui implique que (B) < 1. Reciproquement, si (B) < 1, alors comme xk = B k x0 + (I +

61
62 Chapitre 6 : Resolution de syst`emes lineaires par methodes iteratives stationnaires

B + + B k1 )c, le resultat provient de ce que limk B k x0 = 0, limk k1 i


P
i=0 B c =
(I B)1 c si (B) < 1. La convergence est dautant plus rapide que (B) est petit par
rapport a ` 1.
2
Notons par exemple que si c = 0, et si Bv = v pour un certain v non nul. Alors
(B) 1, et pour x0 = v, xk = v, donc la suite bien que convergente, admet une limite
differente pour ces x0 differents.

Proposition 6.2 Reduction de lerreur. Supposons (B) < 1. Pour tout x0 , la suite (xk )
converge vers x tel que (I B)x? = c. Soit ek = xk x. Pour toute norme matricielle,
induite ou non, et pour tout  > 0, il existe N tel que k > N = kek k ((B) + )k . La
convergence vers x? est donc dautant plus rapide que (B) est petit par rapport a
` 1.

Preuve 6.2 Demonstration : Dapr`es la proposition 6.1, la suite des xk converge vers x?
tel que (I B)x? = b. Alors ek = Bek1 et donc pour toute norme matricielle, kek k =
kB k e0 k kB k kke0 k. Un utilisant la croissance de t 7 t1/k , on obtient 0 kek k1/k
kB k k1/k ke0 k1/k . Comme la limite du membre droit est (B), alors pour tout , il existe N
tel que k > N = kek k1/k (B) + . do` u le resultat.
2

6.3 Methodes it
eratives asymptotiques de bas
ees sur du
splitting
Parmi les plus anciennes de ces methodes figurent les methodes basees sur une decomposition
reguli`ere (splitting) de la matrice A : A = M N , o`u M est une matrice non singuli`ere.
A chaque splitting de A, on associe la methode iterative

x0 , xk = M 1 (N xk1 + b), k = 1, 2, 3, . . . (6.2)

La section 6.2 permet de dire


quune condition necessaire et suffisante de convergence vers A1 b pour tout x0 est
que (M 1 N ) < 1, (`a utiliser avec precaution en presence derreurs darrondis),
1
que plus (M N ) est faible plus on sattend ` a avoir une convergence rapide des
iterations.
Quelques remarques importantes pour les methodes de splitting.
Pour quun tel algorithme de resolution soit interessant dun point de vue pratique, il
ne faut pas calculer M 1 (car cela correspond a la resolution de n syst`emes lineaires
sur la base canonique). En general M est une matrice pour laquelle la resolution de
M y = z est aisee, ce qui est le cas si M est diagonale ou triangulaire.
Un splitting qui serait exclu serait M = A et N = A I pour lequel, si x0 = b, on
a x1 = A1 ((A I)x0 + b) = x. Ce splitting donne une methode qui converge en un
pas, mais dont le cout dune iteration est aussi important que celui de la resolution
du probl`eme de depart.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
63 Chapitre 6 : Resolution de syst`emes lineaires par methodes iteratives stationnaires

Les methodes de splitting ne sont que tr`es rarement utilisees seules pour resoudre
un syst`eme lineaire. Elles peuvent servir pour accelerer dautres methodes, on parle
alors de preconditionneur (voir la section sur les methodes de Krylov), ou inter-
viennent dans des solveurs multigrilles qui sont parmi les plus efficaces pour la
resolution dequations aux derivees partielles.
Les methodes de splitting les plus classiques sont basees sur la decomposition A =
L + D U ou D est la matrice diagonale de A, U est une matrice triangulaire
superieure stricte, et L est une matrice triangulaire inferieure stricte. Les methodes
les plus connues sont la methode de Jacobi (si D est inversible, on prend M = D,
N = L U et xk+1 = D1 ((L + U )xk + b)) et la mehode de Gauss-Seidel (si D L
est inversible, on prend M = D L, N = U , et xk+1 = (D L)1 (U xk + b)).
On montrerait que si A est symetrique definie positive, ces deux methodes sont bien
definies (M est inversible dans chaque cas), et la methode de Gauss-Seidel converge
(et pas necessairement la methode de Jacobi).
Une autre situation o` u les methodes de splitting convergent est donnee par la proposi-
tion suivante.

Proposition 6.3 Soit A une matrice symetrique definie positive. Pour M inversible,
considerons le splitting A = M N . Si M + N est definie positive, alors la methode
iterative associee converge pour tout x0 vers A1 b.

Preuve 6.3 Demonstration : Soit kkA definie par kxk2A = xT Ax (cest une norme). Alors

k(I M 1 A)xk2A = kxk2A 2xT AM T Ax + kM 1 Axk2A


= kxk2A 2xT AM T M M 1 Ax + xT AT M T AM 1 Ax
= kxk2A + xT AM T (A 2M )M 1 Ax = kxk2A xT AM T (M + N )M 1 Ax,
= kxk2A kM 1 Axk2M +N .

Ainsi, k(I M 1 A)xkA kxk2A , et donc (relation norme matricielle rayon spectral) (I
M 1 A) 1. Si (I M 1 A) = 1, alors il existe v 6= 0 et , avec || = 1 tel que
(I M 1 A)v = v. Alors k(I M 1 A)vk2A = ||2 kvk2A = kvk2A kM 1 Avk2M +N . Mais
alors, M 1 Av = 0 et donc (inversibilite de A et M ) v = 0 ce qui est impossible. Ainsi
(I M 1 A) < 1.

Une mani`ere equivalente de voir ces methodes de splitting est decrire les iterations
sous la forme

xk+1 = M 1 (N xk + b) = xk + M 1 (b (M N )xk ) = xk + M 1 (b Axk ).

Cette forme equivalente laisse apparatre la methode comme une methode des approxima-
tions successives xk+1 = (I M 1 A)xk +M 1 b. La continuite des valeurs propres entrane
alors que plus M approche A, plus le rayon spectral de I M 1 A sera faible et plus la
methode a des chances de converger rapidement.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
64 Chapitre 6 : Resolution de syst`emes lineaires par methodes iteratives stationnaires

6.4 Raffinement it
eratif dune solution et point fixe per-
turb
e
Une application importante des methodes iteratives stationnaires est la technique de
raffinement iteratif de la solution dun syst`eme lineaire. Supposons que lon dispose dune
methode de resolution permettant pour tout syst`eme Ax = b de donner une estimation x
telle que (A + E)x = b, avec kEk kAk. Lorigine de E peut-etre des erreurs darrondis
comme dans lelimination de Gauss, lutilisation de formules approchees pour le calcul de
A comme dans les elements finis. Soit lalgorithme suivant :

Iterative refinement
1. Choose x0
2. For k=0,2, ... Do
3. Compute rk = b Axr
4. Compute dk+1 such that (A + Ek )dk+1 = rk
5. Update xk+1 = xk + dk+1
6. EndDo

Proposition 6.4 On pose cond(A) = kAkkA1 k, et on suppose que kEk k/kAk = k est
cond(A)k
tel que 0 < 1cond(A) k
< 1. Alors lalgorithme de raffinement iteratif converge vers
1 0
A b pour tout x . Plus est petit plus on peut garantir une convergence rapide.

Preuve 6.4 Demonstration : 1) Soit Fk = (I + A1 Ek )1 I, x? = A1 b et ek = xk x? .


alors

xk+1 x? = (xk x? ) + (A + Ek )1 A(x? xk )


= (I (I + A1 Ek )1 )ek = Fk ek .
1 E k < 1, nous avons (I + A1 E )1 =
P+ 1 i
2) Comme kA k k i=0 (A EP k ) , do`
u Fk =
+ +
A Ek i=0 (A Ek ) . En passant aux normes, on a kFk k kA Ek k i=0 kA1 Ek ki =
1 1 i 1
P
kA1 Ek k cond(A)kEk k/kAk cond(A)k
1kA1 Ek k
1cond(A)kE k k/kAk
= 1cond(A) k
. Donc 0 kek+1 k k ke0 k, ce qui
montre la convergence.
En pratique, on fait par exemple une factorisation A = LU + E. La matrice E pro-
vient derreur numerique et sa norme fait intervenir le facteur de croissance. Loperation
(A + Ek )1 rk est alors obtenue en resolvant le syst`eme LU dk+1 = rk . Il apparat sur des
exemples numeriques que si cond(A) est grand, le raffinement peut ne pas converger.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
Chapitre 7

Probl`
emes aux valeurs propres

7.1 Introduction
Calculer des valeurs propres cest resoudre un probl`eme non lineaire. Il nest gu`ere
etonnant que les algorithmes de calcul soient iteratifs. Apr`es un expose de certaines si-
tuations pratiques donnant lieu a ` des probl`emes aux valeurs propres, quelques outils de
base danalyse derreur sont presentes, en soulignant notamment la nature qualitative-
ment differente des resultats si on les compare a` ceux obtenus dans le cadre des syst`emes
lineaires. En effet La precision dune valeur propre peut saverer dependre dune puissance
fractionnaire de la norme des perturbations, ceci se produisant lorsque les valeurs propres
sont defectives.
Nous decrivons ensuite les grandes etapes de la methode QR de calcul des valeurs
propres qui est souvent consideree comme la methode de base lorsque la totalite du spectre
est recherchee. Lorsquun sous-ensemble du spectre est desire, on peut utiliser par exemple
des methodes basees sur lalgorithme de la puissance que nous decrirons. Il existe bien
dautres techniques de calcul, tels que celles basees sur lalgorithme dArnoldi ou sur lal-
gorithme de Jacobi-Davidson.

7.2 Origine de ces probl`


emes
Exemple 7.1 On consid`ere le probl`eme de vibration m y + cy + ky = F (t), m, c, k positifs
et qui correspond au mouvement dune masse attachee ` a un ressort, soumise ` a la gravite
et `
a une force de frottement. Cherchons la solution dans des cas particuliers.
Syst`eme homog`ene : m y + cy + ky = 0. y Equation caracteristique mr2 + cr + k = 0.
2
Discriminant = c 4km. Etude du mouvement non force.
> 0 : solutions aer1 t + ber2 t , r1 , r2 negatives.
ct
= 0 : solutions (a + bt)e 2m . Amortissement critique.
ct
< 0 : solutions e 2m (acos(t) + bsin(t)). Oscillations amorties.
Pour des oscillations forcees m y + cy + ky = F (t), F (t) = F0 cost
Si c 6= 0 une solution particuli`ere est (t) = F0 cos(t)
2 2 2 2
, o` c
u tan = km 2.
(km ) +c

65
66 Chapitre 7 : Probl`emes aux valeurs propres

Si c = 0,
F0
p
si 6= 0 = k/m, (t) = m(02 2 )
cost.
F0 t
si = 0 , (t) = 2m 2 sin0 t : oscillation avec une amplitude dangereusement
0
croissante : resonnance. Donc toute solution est de la forme acos(t)+bsin(t)+
(t). En pratique c peut-etre petit engendrant une solution particuli`ere (t) tr`es
grande pour proche de 0 . Ce phenom`e doscillation forcee ` a une frequence
propre dsu syst`eme est `
a lorigine de la destruction douvrages tels que le pont de
Tacoma (1940).
Lorsque lon met plusieurs ressorts bout ` a bout, on obtient le prob`eme de vibration M y +
C y + Ky = F (t), o` u M , C et K sont des matrices. Les frequences propres du syst`eme sont
obtenues en cherchant les solutions du syst`eme libre sans frottement pour une excitation
de la forme y(t) = y0 eit , ce qui conduit ` a resoudre le probl`eme dit aux valeurs propres
generalisees 2 M y0 + Ky0 = 0. On pose z0 = (y0 , y0 )T . Ce probl`eme peut secrire sous
la forme du probl`eme aux valeurs propres
   
0 K M 0
z0 = z0 .
I 0 0 I
En pratique, on verifie `
a la conception que louvrage construit naura pas de frequence
propre de lordre de phenom`emes vibratoires connus.

Exemple 7.2 Stabilite de syst`emes differentiels


On suppose F differentiable.
Un etat permanent y de y = F (y) est une solution de F ( y ) = 0.
Stabilite locale : si il existe  tel que si ky(0) yk <  alors limt+ ky(t) yk 0.
La stabilite lineaire locale du syst`eme est obtenue en etudiant la stabilite de lap-
proximation lineaire de F en y.
Si F (y) = F 0 ( y ).(y y) + o(k y k), le syst`eme est localement stable ssi les valeurs
propres de F 0 ( y ) ont une partie reelle negative. En effet la solution du syt`eme
linearise z = Jz est z = z0 P eJt P 1 , avec eJt ayant des delements de type ti et .

Exemple 7.3 Chane de Markov


(k)
a N etats possibles. Posons pij = P (Xk = j|Xk1 = i).
Considerons un syst`eme `
(0) (0)
Soit q (0) = (q1 , . . . , qN ) une probabilite initiale. Alors q (k) = q (k1) P (k1) .
Syst`eme homog`ene si P (k) ne depend pas de k.
Distribution stationnaire telle que = lim q (k) pour un certain q (0) . Alors = P .
(Perron-Frobenius) Le rayon spectral de P est 1, et 1 est une valeur valeur propre
de P . Si P est irreductible (P ne peut pas secrire S T RS, ou R est triangulaire
par bloc et S est une matrice de permutation) il existe un vecteur propre ` a gauche
a1`
associe ` a elements positifs.
Si 1 est la seule valeur propre de P de module 1, literation q (k) = q (k1) P (k1)
converge vers sous de faibles hypoth`eses sur q (0) .

On peut dores et deja dire que les algorithmes de calculs de valeurs propres necessairement
iteratifs. Les valeurs propres sont en effet racines dun polynome, et le Theor`eme dAbel

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
67 Chapitre 7 : Probl`emes aux valeurs propres

montre quil nexiste pas de formule generale (utilisant les operations elementaires) de
omes de degre 5. Mais un grand succ`es du calcul matriciel
calcul de racines de polyn
moderne est algorithme QR de complexite n3 .Cest bien s ur une methode iterative, mais
qui en pratique est vue comme directe par lutilisateur.

7.3 Sensibilit
e dun probl`
eme spectral
Souvent nous calculons les valeurs propres dune matrice A e voisine de A pour estimer
les valeurs propres de A. Cest le cas notamment lorsque A provient dune discretisation
par elements finis, et que ses coefficients sont calcules par quadrature numerique. Cest
aussi le cas lorsque les coefficients de la matrice A ne sont pas representables dans larithmetique
finie des ordinateurs.
Les resultats qui vont nous interesser tendent `a quantifier et qualifier la variation du
spectre sous des perturbations de la matrice. La principale difficulte de cette etude est que
le spectre dune matrice est un ensemble. Donc on sinteresse a ` une fonction qui ` a une
matrice associe un ensemble de nombres complexes, qui sont les valeurs propres de A.

7.3.1 Continuit
e et sensibilit
e
Th eor`eme 7.4 Supposons f H(), g H(), le disque ferme D(a, r) , et |f (z)
g(z)| < |f (z)| sur le cercle de centre a et de rayon r. Alors f et g ont le meme nombre de
zeros dans D(a, r).

Un resultat de continuite des valeurs propres decoule du corollaire suivant :


Proposition 7.5 Si A a une valeur propre de multiplicite algebrique m, pour toute
norme k.k, et pour tout  > 0, il existe > 0, tel que, si kEk < , le disque D(, )
contient exactement m valeurs propres de A + E.

Preuve 7.1 Demonstration : Soit X le polyn a X. Les co-


ome characteristique associe `
efficients de dependent continument de X. Donc la fonction A Ae tend vers zero sur
le compact K = {|z | = }, lorsque A e A. Comme A est non nul pour tout z de K,
il existe > 0 tel que |A Ae| < |A | sur K d`es que kEk .
2
On peut mesurer la variation de spectre de la mani`ere suivante :
e = maxi minj |
Variation spectrale : svA (A) i j |.
La distance de Hausdorf : hd(A, A)
e = max(svA (A), e sv e(A))
n A o
Loptimal matching distance : md(A, A) = min maxi |
e (i) i |
hd et md sont des distances et pas sv.

Th eme 7.6 (Elsner) Pour toutes matrices A et A,


eor` e
 1 1 1
n
hd(A, A) kAk2 + A kEk n .
e e

2

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
68 Chapitre 7 : Probl`emes aux valeurs propres

Demonstration : Soit i0 realisant le max dans svA (A), e = i , x1 un vecteur propre de


0
norme 1 assoocie, et {xj }j=2...n tel X = [x1 , x2 , . . . xn ] soit unitaire.


e n j |j |
svA (A)

= det(A I)

= det((A I)X)


nj=1 (A I)x

j
2
n
= (A I)x1 j>1 (A I)x

j
2 2
n
A A kx1 k2 j>1 ( A + kAk2 )
e e
2 2

Proposition 7.7 (Ostrowsky) Pour toutes matrices A et A,


e

 1 1 1
n
e (2n 1) kAk +
md(A, A) Ae kEk n .
2
2

1
1
Preuve 7.2 Demonstration : Soit = (max{ 2 kA + Ek2 , 0 1}) N . Alors
1
e kEk n = (def ). Soit Di = {, | i | }. Si m quelconques des dispques Di
svA (A) 2
sont isoles des autres, ils contiennent exactement m valeurs propres de A(res1).
e Pour le
1

voir on pose A = A + (1 )A = A + E, on definit Di = {, | 1 i | }. Comme
n
e e
kAk2 + A , on a dapr`es le theor`eme precedent svA (Ae )
n , donc les valeurs
e
2 2
propres de A e sont dans lunion des disques D , et le resultat (res1) sobtient en utilisant
i
` present aise de borner md(A, ta). Soit C1 , . . . Ck
la continuite des valeurs propres. Il est a
les ensembles connexes de ni=1 Di , Cl etant la reunion de ml disques isole, ils contiennent
ml valeurs propres de A,e et la distance de chaque valeur propre de A e`
a la valeur propre de
 1 1 1
n
A de Cl la plus lointaine est inferieure `a (2ml 1) kAk2 + A kEk n .
e
2

Exemple 7.8 Pour la matrice dite bloc de Jordan suivante :



0 1

0 1

A=
0 1 ,

0 1
 0
2k
les valeurs propres sont i () = ei 5 1/5 , k = 1 . . . 5.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
69 Chapitre 7 : Probl`emes aux valeurs propres

Notons que a proposition 7.6 est tr`es different du resultat de perturbation sur les syst`emes
1
lineaires. La borne sugg`ere ici une variation du spectre en kEk n , contre une variation
en kEk pour les syst`emes lineaires. Par exemple pour n = 3 et kEk = 1012 , on une
1
variation proportionnelle `a kEk n = 104 pour les valeurs propres, contre 1012 pour les
syst`emes lineaires. Lexemple 7.8 montre que cette sensibilite sexprime pour certaines
matrices telles que les blocs de Jordan. La proposition 7.9 suivante montre que pour des
matrices diagonalisables, la connaissance dun residu r = Au u permet de localiser une
de A par rapport `
valeur propres a `
a condition de supposer connu le conditionnement
kXk2 X 1 2 dune matrice X permettant de diagonaliser A. Ce conditionnement vaut 1
si A est normale, car alors X peut etre choisie orthogonale.

Proposition 7.9 Cas des matrices diagonalisables, normales en particulier. Soit A =


XDX 1 avec D diagonale. Pour tout et u tel que kuk2 = 1 et r = Au u, il existe
une valeur propre de A telle que

| | kXk2 X 1 2 krk2 .

Preuve 7.3 Demonstration : Trivial si r = 0. Comme r = X(D I)X 1 u, on a 1 =


kuk2 1 1 1 (D I)1 krk , minsp(A) | |
X(D I) X r 2 kXk2 X

2 2 2
1
kXk2 X 2 krk2 .

7.4 Quelques algorithmes de recherche des valeurs propres


Il existe principalement deux types dalgorithmes de recherche de valeurs propres. Ceux
qui permettent de determiner la totalite du spectre de A, et ceux qui se concentrent sur
certaines parties du spectres. Des parties souvent cherches en pratiques, son celle constituee
des valeurs propres de plus grand module, celle constituee des valeurs propres de plus petit
module, par exemple.
Nous paragraphe est dexposer quelques principes de fonctionnement de ces algorithmes,
et denoncer quelques resultats simples de convergence.

7.4.1 Une m
ethode de d
etermination de la totalit
e du spectre : la m
ethode
QR
Il ne faut pas confondre la methode QR de recherche des valeurs propres, avec la
factorisation QR dun matrice (de Householder par exemple). Nous allons voir que la
methode QR est basee sur des factorisations QR de Householder de matrices carrees, car
ces factorisations sont tr`es robustes aux erreurs darrondis. Lalgorithme sous sa forme la
plus elementaire est en effet le suivant :

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
70 Chapitre 7 : Probl`emes aux valeurs propres

Naive QR method
1. Set A0 = A
2. For k=0,2, ... Do
3. Householder factorization Ak = Qk Rk (cost O(n3 ))
4. Compute Ak+1 = Rk Qk (cost O(n3 ))
5. if Ak is close enough to an upper-triangular matrix then stop
6. EndDo

Cet algorithme proc`ede par transformations unitaire de la matrice A. En effet, A2 =


R1 Q1 = QH H H
1 A1 Q1 = Q1 Q0 AQ0 Q1 . La matrice Ak poss` ede les memes valeurs propres
que A, et sous des hypoth`eses simples on montre que les elements sou-diagonaux de Ak
tendent vers 0, et donc la diagonale de Ak tend vers les valeurs propres de A. Le resultat
ci-dessous nest pas le plus general, mais a lavantage de la simplicite.
Theor`eme 7.10 On suppose que la matrice A est inversible, et que ses valeurs propres
sont toutes de modules differents. La matrice A est donc diagonalisable A = P DP 1 , avec
D = diag(1 , . . . n ) et |1 | > |2 | > > |n |. On suppose de plus que P 1 admet une
factorisation LU. Alors si (Ak )ij est lelement ij de Ak , on a le resultat suivant

limk+ (Ak )ii = i
limk+ (Ak )ij = 0 pour j < i.
Demonstration : Admise (voir Ciarlet).
2
Deux nombreuses modifications algorithmes sont ` a mener sur lalgorithme naif pour at-
teindre la methode QR telle quell est implantee dans les librairies actuelles. Cette methode
optimisee, tant du point de vue du nombre des operations, que du controle de la propagation
des erreurs darrondis, est la methode la plus sure actuellement pour calculer des valeurs
propres (comme lest lelimination de Gauss avec pivotage pour les syt`emes lineaires).
Cest donc la methode ` a utiliser si les ressources informatiques le permettent.
Nous citons deux ameliorations apportees a ` la methode naive : la reduction sous forme
Hessenberg, et le shift. La reduction sous forme Hessenberg part du principe que si A est
sous forme Hessenberg, alors toutes les Ak restent sous forment Hessenberg, ce qui permet
de reduire considerablement les temps de calcul dune iteration de la methode.
Lautres optimisation consiste a introduire un shift sk au cours des iterations. Certains
choix de ce shift permettent en effet de reduire les iterations necessaires `a la convergence.
Une premi`ere amelioration de lalgorithme precedent est donc :
Naive QR method
1. Set A1 = A
2. Compute A0 such that P A0 P H = A (cost O(n3 ))
where A0 is Hessenberg and P is orthogonal,
2. For k=0,2, ... Do
3. Householder factorization Ak sk In = Qk Rk (cost O(n2 ))
4. Compute Ak+1 = Rk Qk sk In (cost O(n2 ))
5. if Ak is close enough to an upper-triangular matrix then stop
6. EndDo

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
71 Chapitre 7 : Probl`emes aux valeurs propres

Proposition 7.11 Montrer que si A0 est Hessenberg superieure, Ak est Hessenberg superieure
pour tout k. Montrer que Ak est unitairement equivalent `
a A.
Preuve 7.4 Demonstration : On utilise par exemple une factorization QR de Gram-
Schmidt pour deduire les structures de nonzeros pour cette preuve. Quand on retranche
`
a une colnne dune matrice de Hessenberg, une combinaison lineaire des colonnes qui la
prec`edent, on nintroduit pas de non-zeros. Donc la factorisation QR dune matrice de
Hessenberg secrit Ak sk In = QR selon :



= .


Le produit RQ sk In = Ak+1 donne alors le calcul suivant




= ,


donc Ak+1 est bien une matrice de Hessenberg.
Pour lequivalence unitaire, on a A2 = R1 Q1 +s1 In = (QH H H
1 A1 s1 Q1 )Q1 +s1 Q1 Q1 =
H H H H
Q1 A1 Q1 et de meme A1 = Q0 A0 Q0 = Q0 P AP Q0 , do` u le resulat par recurence.
2
Lalgorithme QR pour la recherche des valeurs propres est un algorithme tr`es impor-
tant, qui a revolutionne lalg`ebre lineaire numerique et permet de disposer dune methode
fiable pour calculer tout le spectre dune matrice. Cet algorithme est en revanche co uteux
en memoire car il demande de stocker des matrices triangulaires et de Hessenberg de la
meme taille que A. De meme en termes de nombre doperations, il a une complexite en
n3 , ce qui peut saverer redhibitoire pour des matrices de la taille de quelques dizaines de
milliers de lignes. Pour cette raison, des methodes alternatives sont utilises lorsque seul
un sous-ensemble du spectre est desire.

7.4.2 Une m ethode de d


etermination dune partie du spectre : la m
ethode
de la puissance
La plus simple methode permettant de calculer une partie du spectre est la methode de
a calculer la valeur propre de plus grand module de A. Lalgorithme
la puissance qui vise `
est le suivant :
Power method
1. Choose x0
2. For k=0,2, ... Do
Axk
3. Compute xk+1 = kAx k k2
H
4. Set k+1 = xk+1 Axk
5. if (k+1 , xk+1 ) is reasonable eigenpair of A then stop
6. EndDo

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
72 Chapitre 7 : Probl`emes aux valeurs propres

Une condition simple de convergence de la methode de la puissance est donnee par le


theor`eme 7.12 suivant

Proposition 7.12 Soit A Cl nn telle que les valeurs propres de A sont les i , avec
|1 | > |2 | |n |. Soit y un vecteur propre ` a 1 . Si y T x0 6= 0,
a gauche de A associe `
alors on a limk+ k = 1 et limk+ xk est un vecteur propre de A associe ` a 1 .

Preuve 7.5 Demonstration : La valeur propre 1 est simple. Dapr`es le lemme ??, on
choisit X tel que  
0
A=X X 1 ,
0 R
o`u les valeurs propres de R sont plus petites que 1 en module et donc limk+inf ty Rk /k1 =
0. On sait de plus dapr`es le lemme ?? que X T e1 est un vecteur propres ` a gauche associe
T 1 T
a 1 , et lhypoth`ese de lenonce implique que e1 X x0 = e1 y0 6= 0. Dapr`es ce lemme,
`
Xe1 est un vecteur propre ` a droite de A associ
 ek a ` 1 .   k 
1 1 0 1 0
Posons yk = X xk . Alors, on a yk = y0 , puis xk = X y0 ,
0 Rk 0 Rk
et donc !
xk 1 0
y0 = X 10 eT1 y0 ,

limk+inf ty k = limk+inf ty X Rk
1 0 k1

u l on a utilise le fait que eT1 y0 6= 0. On en deduit donc que


o`

xk Xe1
lim = ,
k+inf ty kxk k kXe1 k
Xe1
ce qui montre que uk tend vers le vecteur propre `
a droite normalise kXe1 k . On obtient
eT T
1 X (A1 )Xe1
aussi que limk+inf ty k 1 = kXe1 k2
= 0, car (A 1 )Xe1 = 0, et donc k tend
bien vers 1 . Concernant les vitesses de convergence, dune mani`ere qualitative, plus la
quantite (R/1 ) est faible, plus vite yk /kyk k converge vers e1 , et donc plus vite xk /kxk k
converge vers x/kxk.

Plus la quantite (R/1 ) est faible, plus vite ces convergences ont lieu. Trois remarques
importantes peuvent etre faites sur la methode de la puissance :
Co ut de chaque iteration. En memoire, cette methode est peu co uteuse, vu quil sagit
de stocker les vecteurs uk essentiellement. En operations, le co ut est determine par
ut dun produit matrice vecteur, ce qui est peu si la matrice A est tr`es creuse,
le co
par exemple.
Pour la convergence. On a vu que si la plus grande valeur propre en module est
bien separee des autres (au sens o` u (R/1 ) = | 21 | est faible), la convergence de
la methode est rapide. Cette remarque peut conduire ` a lidee dappliquer la methode
de la puissance, non a A, mais a (A I)1 , pour calculer la valeur propre de A la
plus proche du param`etre dit de shift, . Bien s ur, la matrice inverse nest jamais

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
73 Chapitre 7 : Probl`emes aux valeurs propres

calculee, A I est factorisee une fois pour toutes en debut dalgorithme. Cette
methode sappelle la methode de la puissance avec shift et invert. La convergence
sera dautant plus rapide que est proche de la valeur propre desiree. Il existe
une methode ayant une convergence encore plus rapide : la methode du quotient de
Rayleigh. Cette derni`ere methode implante un shift variable au cours des iterations
et necessite donc de factoriser plusieurs fois la matrice shiftee, ce qui peut saverer
trop couteux pour certaines applications.
La methode de la puissance peut se generaliser `a la recherche de r valeurs propres
dominantes en module de A. Cette methode appelee methode diteration de sous-
espace secrit :
Subspace iteration method
1. Choose X0 Cl nr
2. Factorize X0 = Q0 R0 , R0 Cl rr
3. For k=0,2, ... Do
4. Compute Xk+1 = AQk
5. Factorize Xk+1 = Qk+1 Rk+1
6. Compute the eigen pairs (j , yj ) of QH k+1 AQk+1
7. if (j , Qk+1 yj+1 ) is reasonable set of eigenpairs of A then stop
8. EndDo
La convergence de cette methode depend cette fois du ratio | r+1 r
|.
Les algorithmes de la puissance et de literation de sous-espace, font intervenir
de mani`ere explicite un crit`ere darret pour stopper les iterations. Il serait tr`es
imprudent dutiliser un crit`ere sur la stationnarite des iteres du type |k+1 k | <
tol, car des plateaux peuvent apparatre avant que la convergence nait lieu. On
utilisera des crit`eres bases sur lerreur inverse kAy k k yk k
kAkkyk k pour juger de la qualite
de la pair propre approchee (k , yk ).

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
74 Chapitre 7 : Probl`emes aux valeurs propres

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
Deuxi`
eme partie

Optimisation

75
Chapitre 8

Optimisation sans contrainte

8.1 Introduction
On appelle probl`eme doptimisation un probl`eme note :

P : min f (x).
xC

La fonction f est appelee fonction objectif et lensemble C est lensemble des contraintes.
Nous nous limitons dans ce cours au cas o` u C est un sous-ensemble de Rn .

Exercice 8.1 Difference entre dimension infinie et dimension finie sur un exemple. Soit
1
Pn : min f (x) = xT x, o`
u Cn = {x Rn , x1 = , et kxk2 1}.
xCn Rn 2
Soit
1 1
1
Z Z
2
P : min f (x) = u C
x , o` = {x, x est continue et x(0) = , et x2 1}.
xC 0 2 0

Etudiez lensemble des solutions de Pn et P .

Preuve 8.1 Demonstration : Le vecteur x = ( 21 , 0 . . . 0)T est solution de Pn . Pour tout x,


on a f (x) > 0. Si
0 si t ] n1 , 1]

xn (t) = n 1 1 ,
2 (t n ) si t [0, n ]

R 1 limn+ f (xn ) = 0, mais il nexiste pas de fonction continue non nulle pour
on a alors
laquelle 0 x2 = 0. Donc P nadmet pas de solution.

a lexistence, lunicite et au calcul de points x


Il arrive que lon sinteresse ` qui mini-
misent f sur C, cest `a dire tels que

x) f (x) pour tout x dans C.


f (

77
78 Chapitre 8 : Optimisation sans contrainte

cest un probl`eme doptimisation globale. Dans les cas generaux, nous verrons quil est
parfois possible de donner des conditions necessaires, ou des conditions suffisantes dop-
timalite, ou meme quelquefois des conditions `a la fois necessaires et suffisantes. Les al-
gorithmes rechercheront des points qui verifient ces conditions. Le probl`eme de moindres
carres lineaires vu precedemment est un exemple de probl`eme doptimisation.
Exercice 8.2 Un fabricant de composants electroniques poss`ede deux types de fabriques :
A et B, notees Ai , 1 m et Bj , 1 j n. Lors de la fabrication, chacun de ces
composants doit tout dabord passer par une des usines de type A puis par une de type B.
Comme ces usines ne se trouvent pas dans le meme lieu geographique, le fabricant doit
etudier le meilleur moyen pour transporter ces composants ` a moindre co ut des usines Ai
vers les usines Bj . Connaissant la matrice des co uts C = [cij ] o` u cij correspond au co ut
de transport dune pi`ece de lusine Ai vers lusine Bj , ainsi que le nombre de pi`eces ai
produites par lusine Ai et le nombre de pi`eces bj que lusine Bj doit recevoir, formuler
le plan de transport optimal (en terme de cout de transport) sous la forme dun probl`eme
doptimisation. Donnees m = 2, n = 3, [a1 , a2 ] = [10, 20], [b1 , b2 , b3 ] = [5, 10, 15] et
 
2 8 7
C=
3 4 5

Preuve 8.2 Demonstration : Soient les variables de decision suivantes : xij nombre de
pi`eces allant de lusine Ai vers lusine Bj avec 1 i 2 et 1 j 3. Le probl`eme
doptimisation secrit : Minimiser z = 2x11 + 8x12 + 7x13 + 3x21 + 4x22 + 5x23 sous les
contraintes

x11 + x12 + x13 = 10



x 21 + x 22 + x 23 = 20
x11 + x21 = 5


x 12 + x 22 = 10
x + x = 15

13 23



x11 ; x12 ; x13 ; x21 ; x22 ; x23 0
2

Exercice 8.3 Principe de Fermat. Soient a, b, c trois reels positifs. On suppose que lon a
deux milieux M1 = {(x, y), y > 0} et M2 = {(x, y), y < 0} et que la vitesse de propagation
dun rayon lunimeux est ci dans Mi . On consid`ere que le rayon se propage en ligne droite
dans chaque milieu et que le rayon suit un trajet de temps global de parcours minimum
(principe de Fermat). Formuler le probl`eme de la recherche du trajet entre A(0, a) et
B(c, b) sous la forme dun probl`eme doptimisation. En utilisant une etude de fonction,
montrez que le principe de Fermat se traduit par la loi de Snell
sin1 sin2
= .
c1 c2
Preuve 8.3 Demonstration : Soit X(x0 , 0) le point o`
u le rayon change de milieu. Le
temps de trajet est
1p 2 1p
T (x) = a + x2 + (c x)2 + b2 ,
c1 c2
Ress. Pedag. Ouv. INPT, 0727 (2014) 24h
S. Gratton, Analyse matricielle et Optimisation, Ed.
79 Chapitre 8 : Optimisation sans contrainte

et x0 minimise T (x). Les minima dune fonction reelle verifient T 0 (x) = 0, ce qui donne
x cx
= p ,
c1 2
a +x 2 c2 (c x)2 + b2

ce qui donne bien la loi de Snell puisque sin(1 ) = x et sin(2 ) = cx


.
a2 +x2 (cx)2 +b2

Exercice 8.4 Mission : desamorcer une bombe nucleaire sur un yacht. Yacht amarre ` a 50
m`etres du rivage. James Bond se trouve ` a 100 m`etres du point le plus proche du yacht sur
la plage. Vitesses : course 18km/h, nage : 10km/h. Temps de desamorage : 30 secondes.
Explosion dans 65 secondes. Formaliser la faisabilite de cette mission sous la forme dun
probl`eme doptimisation.

Preuve 8.4 Demonstration : Le temps de parcours du heros est f (x) = x5 +0.36 502 + (100 x)2 .
p

` 65 30 = 35 secondes, ce qui conduit au probl`eme


On veut donc que f (x) soit inferieur a

min f (x),

sous les contraintes


x 0 et x 100.
Note : f (0) = 40.25, f (100) = 38 mais f (66) = 34.96.

Definition 8.1 Une fonction f est semicontinue inferieurement sur Rn ssi

pour tout R, lensemble {x, f (x) } est ferme .

Une fonction continue est semicontinue inferieurement.

Exercice 8.5 Nous supposons que C est ferme et quil existe un point de C en lequel f
est finie. Supposons de plus que f est semicontinue inferieurement sur C, et f est coercive
( lim f (x) = +). La fonction f admet un minimum sur C.
kxk +
xC

Preuve 8.5 Demonstration : Faisons la demonstration dans le cas o` u f est continue. Soit
x0 C en lequel f est finie. Une consequence de la coercivite est que il existe tel que
kxk > entrane f (x) f (x0 ). Alors le probl`eme doptimisation revient a la minimisation
de la fonction continue f sur le compact K = {x C, kxk }. Comme limage continue
dun compact est un compact, f (K) est un compact en dimension finie, donc cest un
ferme borne. Donc le reel infxK f (x) qui appartient ` a ladherence de f (K) appartient `
a
f (K), ainsi il existe x K tel que f (x ) = inf xK f (x) f (x) pour tout x Rn .

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
80 Chapitre 8 : Optimisation sans contrainte

Le resultat ci-dessus peut-etre utilise pour montrer que le probl`eme doptimisation de


lexemple 8.3 admet au moins une solution.
Definition 8.2 Une partie C est dite convexe ssi pour tout (x, y) C 2 , et pour tout
[0 , 1], x + (1 )y C. Une fonction f definie sur une partie C convexe est une fonction
convexe ssi (x, y) C 2 , et pour tout [0 , 1] on a f (x+(1)y) f (x)+(1)f (y)).
Une fonction f definie sur une partie C convexe est une fonction strictement convexe ssi
(x, y) C 2 , x 6= y, et pour tout ]0 , 1[ on a f (x + (1 )y) < f (x) + (1 )f (y)).

Exercice 8.6 Si C est convexe et si f est strictement convexe sur C, alors f admet au
plus un minimum sur C.

Preuve 8.6 Demonstration : Supposons quil existe deux minima x0 et x1 de f dans C(


i.e. f (x0 ) = f (x1 ) f (x) pour tout x C). Dapr`es la stricte convexite de f sur C, on a
x0 x1 1 1
f( + ) < f (x0 ) + f (x1 ) = f (x0 ),
2 2 2 2
ce qui est impossible dapr`es la definition meme du minimum.
2

8.2 Rudiments en calcul diff


erentiel
Definition 8.3 Une fonction f definie sur un ouvert O Rn est dite derivable (au sens
de Frechet) en x ssi il existe un vecteur ligne f 0 (x) tel que

f (x + h) = f (x) + f 0 (x)h + o(h),

o`u lon a pose o(h) = khk(h), avec limkhk0 (h) = 0. Le vecteur colonne f 0 (x)T sappelle
gradient de f en x et est note f (x). Notez que cette notion generalise la notion de
derivabilite dune fonction de R dans R et que f 0 (x) ne depend pas de la norme consideree.

Exercice 8.7 Montrez que si f est derivable en x, alors


1. f est continue en x,
2. f admet des derivees partielles en x et f 0 (x) = [ fx(x)
1
, . . . , f (x)
xn ] R
1n .

Preuve 8.7 Demonstration : Par definition de la differentiabilite en x, f (x + h) = f (x) +


f 0 (x)h + o(h) donc limh0 f (x + h) = limh0 f (x) + f 0 (x)h + o(h) = f (x), ce qui est bien
la definition de la continuite. En ce qui concerne les derivees partielles, posons h = ei ,
o`u 6= 0 et ei est le i-`eme vecteur de la base canonique de Rn . On a alors en considerant
la norme Euclidienne, f (x + ei ) f (x) = f 0 (x)ei + || (ei ), cest `
a dire, pour 6= 0,

f (x + ei ) f (x) ||
lim = lim f 0 (x)ei + (ei ) = f 0 (x)ei .
0 0
f (x)
On obtient donc xi = f 0 (x)ei .

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
81 Chapitre 8 : Optimisation sans contrainte

Exercice 8.8 On consid`ere la fonction quadratique definie sur Rn par f (x) = 12 xT Ax


xT b, o`
u A est carree et symetrique montrez que f (x) = Ax b.

Preuve 8.8 Demonstration : On a

1
f (x + h) = (x + h)T A(x + h) (x + h)T b
2
1 T 1 1 1
= x Ax + hT Ah + xT Ah + hT Ax (x + h)T b
2 2 2 2
T 1 T
= f (x) + (Ax b) h + h Ah.
2
|hT Ah| khk22 kAk2 |hT Ah|
De plus, 0 khk2 khk2 = kAk2 khk2 , donc limkhk2 0 khk2 = 0, ce qui montre
que hT Ah = o(h).

Definition 8.4 Une fonction f est dite deux fois derivable si chaque derivee partielle
f (x)
xi est d erivable. Une fonction est k fois derivable si elle est k 1 fois derivable et si
a lordre k 1 sont derivables.
les derivees partielles `

Exercice 8.9 (Derivation dune composee) Soit f , definie sur un ouvert O Rn , derivable
en tout x O. Soit d Rn . On definit localement en x la fonction de la variable reelle t
par : t 7 (t) = f (x + td). Montrez que est derivable en 0 et que
n
X f (x)
0 (0) = f (x)T d = di .
xi
i=1

On suppose chaque composante fi0 (x) = fx(x)


i
de f 0 (x) est derivable en x. Montrez que
est deux fois derivable en 0 et montrez que
n X
n
X 2 f (x)
00 (0) = di dj .
xi xj
i=1 j=1

Preuve 8.9 Demonstration : En utilisant la definition de la differentiabilite de f en x +


t d, on trouve que f (x + (t + t)d) = f (x + td) + f 0 (x)(d t) + kt dk(t d) =
f (x) + (f 0 (x + td)d)t + |t|1 (t), avec 1 (t) = kdk(t d) et limt0 1 (t) = 0, do` u
f (x+td)
le resultat obtenu en posant t = 0. On applique ce resultat ` a la fonction i (t) = xi ,
2 f (x)
n
pour obtenir que i0 (0) = j=1 xi xj dj . On finit en remarquant que 0 (t) = ni=1 i (t)di ,
P P

et donc que 00 (t) = ni=1 i0 (t)di .


P

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
82 Chapitre 8 : Optimisation sans contrainte

Exercice 8.10 Supposons que f est une fonction definie sur un ouvert convexe O et 3
ument derivable en tout x O. Montrez qualors la matrice carree symetrique
fois contin
2 2 f (x)
f (x) = [ x i xj
] appelee Hessien de f en x, est telle que

1
f (x + h) = f (x) + f (x)T h + hT 2 f (x)h + o(h2 ), (8.1)
2
u lon a pose o(h2 ) = khk2 (h), avec limkhk0 (h) = 0.
o`

Preuve 8.10 Demonstration : Soit h tel que x + h O. On pose (t) = f (x + th). On a


2
alors 0 (t) = nj=1 f (x+th) hj , 00 (t) = ni=1 nj=1 fx(x+th) hi hj = hT 2 f (x + th)h, et
P P P
xj i xj

n X
n X
n
X 3 f (x + th)
000 (t) = hi hj hk .
xi xj xk
k=1 i=1 j=1

Dapr`es la formule de Taylor avec reste integral on a (1) = (0) + 0 (0) + 12 00 (0) +
R1 2 000
1 1 2 000 (s)ds, et il reste ` 0 (1s) (s)ds
R
2 0 (1 s) a montrer que limkhk0 khk2
= 0. En utili-
sant lequivalence des normes en dimension finie, on peut travailler avec nimporte quelle
3
norme. Choisissons la norme infinie. Notons tout dabord que comme h 7 xfi(x+h) xj xk est
3
continue, il existe M et tel que | xfi(x+h)
xj xk | < M pour tout h tel que khk (pour
R1 R1
tout i et j). Alors, comme |hi | khk , on a | 0 (1 s)2 000 (s)ds| 0 |000 (s)|ds
R1
| (1s)2 000 (s)ds| 3 3
khk3 nk=1 ni=1 nj=1 M = M n3 khk3 . On a donc 0 0 khk2 M nkhkkhk
P P P
2

,

do`
u le resultat.

Exercice 8.11 On consid`ere la fonction quadratique definie sur Rn par f (x) = 12 xT Ax


xT b, o`
u A est carree et symetrique montrez que 2 f (x) = A.
f (x) Pn
Preuve 8.11 Demonstration : Dapr`es lexercice 8.8, xi = (Axb)i = j=1 aij xj bi .
2 f (x)
Donc xi xj = aij .
2

Exercice 8.12 (Taylor avec reste integral) Supposons que f est une fonction definie sur
un ouvert convexe O et 1 fois contin
ument derivable sur O. Montrez qualors pour tout x
et y de O, Z 1
f (y) = f (x) + f (x + s(y x))T (y x) ds.
0
ument derivable sur O,
Si f est 2 fois contin
Z 1
f (y) = f (x) + 2 f (x + s(y x))(y x) ds.
0

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
83 Chapitre 8 : Optimisation sans contrainte

Preuve 8.12 Demonstration : 1) Soit la fonction contin ument differentiable sur [0, 1],
(t) = f (x + t(y x)). Alors le premier resultat nest autre que
Z 1
(1) = (0) + 0 (s) ds.
s=0

f (x + t(y x))
2) Soit i la fonction contin ument differentiable sur [0, 1], (t) = .
xi
Z 1 X n
f (y) f (x) 2 f (x + s(y x))
Alors 1) secrit = + (y x)j ds, ce qui mis
xi xi 0 xj xi
j=1
sous forme matricielle donne 2), puisque par definition du Hessien, 2 f (x + s(y x)) =
2
[ f (x+s(yx))
xi xj ].

Definition 8.5 Soit f definie sur un ouvert O Rn ` a valeurs dans Rm . On dit que f
est derivable (au sens de Frechet) en x, si chacune des composantes fi est derivable (au
sens de Frechet) en x. On a alors

f (x + h) = f (x) + f 0 (x)h + o(h),

o`u lon a pose f 0 (x) = [f1 (x)0 ; . . . ; fm (x)0 ] Rmn ainsi que o(h) = khk(h) Rm , avec
limkhk0 (h) = 0 Rm . La matrice

f1 (x) f1 (x)

...
f1 (x)T

x1 xn
0
.. .. .. .. mn
f (x) = Df (x) = = R

. . . .
fm (x) fm (x)
fm (x)T
...
x1 xn
est appelee matrice Jacobienne de f en x.

Exercice 8.13 Derivation dune composee. Soit f definie sur un ouvert O Rn , differentiable
en x O, ` a valeurs dans Rm . Soit g definie sur un ouvert V Rm , differentiable en
f (x) V, ` a valeurs dans Rp . Alors la fonction x 7 gof (x) = g(f (x)) definie sur lou-
vert O est differentiable en x et verifie (gof )0 (x) = g 0 (f (x)) f 0 (x), o`
u f 0 (x) Rmn et
g 0 (f (x)) Rpm .

Preuve 8.13 Demonstration : Par definition de la differentiabilite en x de f , on a f (x +


h) = f (x) + f 0 (x)h + khk1 (h) et

g(f (x + h)) = g f (x) + f 0 (x)h + khk1 (h)




g(f (x + h)) = g(f (x)) + g 0 (f (x)) f 0 (x)h + khk1 (h)




+ f 0 (x)h + khk1 (h) 2 f 0 (x)h + khk1 (h)




Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
84 Chapitre 8 : Optimisation sans contrainte

Posons 3 (h) = khk 1


(f 0 (x)h + khk1 (h)) 2 (f 0 (x)h + khk1 (h)) + g 0 (f (x))khk1 (h). Alors
0 3 (h) (kf 0 (x)k + k1 (h)k) k2 (f 0 (x)h + khk1 (h))k + kg 0 (f (x))1 (h)k. Le membre
droit de cette inegalite tend bien vers 0 lorsque h tend vers 0 par definition de 1 et 2 .
Ainsi limkhk2 0 3 (h) = 0 et

g(f (x + h)) = g(f (x)) + g 0 (f (x))f 0 (x)h + o(h).

Exercice 8.14 Derivation numerique. Pour une fonction differentiable, nous avons vu
que le calcul de la derivee se ram`ene au calcul de derivees partielles, donc de derivees de
fonctions de R dans R. On suppose que est deux fois derivable et que |00 (x)| M .
Sur un ordinateur, levaluation de se fait ` a  pr`es : ` a la place de (x), on calcule
(x+h)(x)
(x) = (x) + (x), avec |(x)| . Posons h (x) = . Montrez que |0 (x)
e e e
e
h
h (x)| M2h + 2 h , En deduire que un choix raisonnable pour h est h0 = 2 M , pour
e p

lequel |0 (x) h0 (x)| 2 M .
e

Preuve 8.14 Demonstration : Dapr`es le theor`eme de Taylor Lagrange, il existe , 0 <


2
< 1, tel que (x+h) = (x)+0 (x)h+ h2 00 (x+h), ce qui montre que |0 (x)h (x)|
M h/2. Cette erreur est une erreur dapproximation de la derivee par une formule de
difference finie. De plus,

|(x + h) (x)| 
|h (x) h (x)| = 2 .
e
h h
Cette erreur est une erreur numerique due au calcul de la difference finie sur ordinateur.
On a alors
Mh 
|0 (x) h (x)| |0 (x) h (x)| + |h (x) h (x)| +2 .
e e
2 h

Une idee pour choisir h est de minimiser pour h > 0 la borne de lerreur M2h + 2 h . La
derivee vaut M  
p
2 2 h2 et sannule en h = 2 M , qui est bien le minimum (pour le voir
Mh 
etudier la fonction h 7 2 + 2 h .

8.3 Minimisation locale


Definition 8.6 Soit f une fonction definie sur un ouvert O de Rn . Un point x
pour lequel
il existe  > 0 tel que

x) f (x) pour tout x tel que k


f ( x xk < 

est un minimum local de f .

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
85 Chapitre 8 : Optimisation sans contrainte

Exercice 8.15 Si f est differentiable en x et si x est un minimum local f alors

f (x) = 0. (8.2)

Notez quen presence de contraintes, ce resultat ne tient plus (considerer min x).
x[0,1]

Preuve 8.15 Demonstration : Supposons quil existe d tel que f (x)T d < 0. Soit : t 7
f (x + td), on a alors 0 (0) = f (x)T d < 0. On a alors (t) = (0) + 0 (0)t + |t|(t).
0 0
Comme  tend vers 0 en 0, il existe t0 tel que si t t0 , (t) | 2(0)| = 2(0) . Mais alors,
0
pour t > 0, (t) (0) t 2(0) < 0, ce qui contredit que x
est un minimum local de f .

Exercice 8.16 Loi de Snell. En reprenant lexercice 8.3, montrez que le principe de Fer-
mat se traduit par la loi de Snell
sin1 sin2
= .
c1 c2

a T (x), il apparat que la


Preuve 8.16 Demonstration : En appliquant lexercice 8.5 `
fonction T (x) admet au moins un minimum global. Ces minima verifient T 0 (x) = 0, ce
qui donne
x cx
= p ,
2
c1 a + x 2 c2 (c x)2 + b2
ce qui donne bien la loi de Snell puisque sin(1 ) = x et sin(2 ) = cx
.
a2 +x2 (cx)2 +b2

Supposons f : O Rn Rn deux fois derivable au point x O.

Exercice 8.17 Si x est un minimum local de f et si f est deux fois differentiable en x,


alors
f (x) = 0 et 2 f (x) est semi-definie positive. (8.3)
Considerer min x3 pour montrer que (8.3) nest pas une condition suffisante de minimum
xR
local.

Preuve 8.17 Demonstration : Pour d Rn fixe, et : t 7 f (x + td), on a 0 (0) =


dT f (x), et 00 (0) = dT 2 f (x)d. Comme 0 est un minimum local de la fonction (de
la variable reelle t) on a 0 (0) = 0. Donc (t) = (0) + 00 (0)t2 /2 + t2 (t). Comme
(t) tend vers 0 en 0, il existe t0 tel que si 0 < t < t0 , (t) |00 (0)|/4. Mais alors si
00 (0) < 0, (t) (0) = 00 (0)t2 /2 + t2 (t) 00 (0)t2 (1/2 1/4) = 00 (0)t2 /2 < 0 pour
tout t < t0 . Cela contredit le fait que 0 est un minimum local de . Donc pour tout d,
00 (0) = dT 2 f (x)d 0.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
86 Chapitre 8 : Optimisation sans contrainte

Exercice 8.18 Si f est deux fois differentiable en x et si

f (x) = 0 et 2 f (x) est definie positive, (8.4)

alors x est un minimum local de f .

Preuve 8.18 Demonstration : Raisonnons par labsurde. On suppose que x nest pas un
minimum local de f et que f (x) = 0 ; montrons que 2 f (x) nest pas definie positive.
Si x nest pas un minimum local de f , il existe une suite (xk ) convergeant vers x dont le
terme k est defini ainsi : xk est tel que 0 < kx xk k 1/k et f (xk ) < f (x). Soit alors la
direction normalisee dk = kxxkk x
xk et tk = kxk xk (i.e. xk = x + tk dk ). Comme kdk = 1,
dk appartient `a un compact et on peut en extraire une sous-suite convergente. Soit d la
limite dune telle sous-suite notee sans perdre de generalite (dk ). Alors 0 > f (xkt2)f
/2
(x)
=
k
f (x+tk dk )f (x)
t2k /2
= h2 f (x)dk , dk i + 2(tk ), et comme (tk ) 0 on a par passage `
a la limite
h2 f (x)d, di 0. Cela montre que 2 f (x) nest pas definie positive.

Exercice 8.19 On consid`ere la fonction quadratique definie sur Rn par f (x) = 21 xT Ax


xT b, o`
u A est carree et symetrique montrez que si A est symetrique et definie positive,
alors A1 b est lunique minimum de f . Appliquez ce resultat aux moindres carres lineaires
minxRn kAx bk2 , avec rg(A) = n.

Preuve 8.19 Demonstration : Sans passer par les valeurs propres, le probl`eme minkxk=1 xT Ax
admet au moins une solution xmin (fonction continue sur un compact). De plus comme A
est symetrique et definie positive, xTmin Axmin = min > 0. Ainsi,

1 x T x 1
f (x) = kxk2 A xT b kxk(min kxk kbk),
2 kxk kxk 2

donc limkxk+ f (x) = +. La fonction f admet au moins un minimum car f est conti-
nue et coercive. Dapr`es les exercices 8.8 et 8.15, la condition necessaire doptimialite
secrit f (x) = Ax b = 0, ce qui entrane x = A1 b car A est symetrique et definie posi-
tive, donc inversible. Il est normal que ce minimum verifie aussi la condition necessaire du
second ordre de lexercice 8.17 (2 f (x) = A est semi-definie positive). De plus, il verifie
la condition suffisante du second ordre de lexercice 8.18 (2 f (x) = A est definie positive).
a present aux moindres carres lineaires. Alors f (x) = kAx bk22 = xT AT Ax
On sinteresse `
2xT AT b+bT b. Nous avons vu que si rg(A) = n, alors AT A est definie positive (Ker(AT A) =
Ker(A) et formule du rang sur A, n = rg(A) + dim Ker(A), do` u Ker(AT A) = {0}. La
matrice AT A est donc symetrique definie positive). Lexercice montre alors quune condi-
tion necessaire et suffisante doptimialite est f (x) = 2(AT Ax AT b) = 0, et on retrouve
bien lequation normale AT Ax = AT b.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
87 Chapitre 8 : Optimisation sans contrainte

8.4 Algorithmes de minimisation sans contrainte


8.4.1 La m
ethode de Newton
Cette methode et ses variantes moins couteuses, forment une des principales classes
de methode doptimisation pour les probl`emes sans contraintes. Cette methode secrit :

Newtons method
1. Choose x0
2. For k=0,2, ... Do
3. Compute if 2 f (xk ) is nonsingular
4. xk+1 = xk 2 f (xk )1 f (xk )
5. EndDo

Quelques remarques sur sa mise en uvre :


Cette methode necessite davoir ` a faire a` une fonction deux fois derivable et `
a ses
a lordre 2.
derivees jusqu`
Cette methode necessite aussi la resolution de syst`emes lineaires (on ne calcule pas
linverse). Cette operation peut etre co uteuse pour des syst`emes de grande taille.
Cette methode jouit de proprietes de convergence locale tr`es interessantes comme
nous allons le voir.
Soit x Rn . On consid`ere lapproximation quadratique de f , fonction deux fois derivable,
k

suivante : m(x) = f (xk ) + f (xk )T (x xk ) + 12 (x xk )T 2 f (xk )(x xk ). Supposons que


2 f (xk ) est symetrique et definie positive alors le minimum x? de m(x) verifie x?
xk = 2 f (xk )1 f (xk ) dapr`es lexercice 8.19. La methode de Newton minimise donc a `
chaque pas o` u 2 f (xk ) est symetrique et definie positive lapproximation quadratique de f
de lexercice 8.10. Notez que si 2 f (xk ) a des valeurs propres negatives, lapproximation
quadratique nest pas bornee inferieurement, et le point xk+1 peut meme dans certains cas
etre un maximum de m(x) (considerer (x xk )2 ). Cette situation narrive pas si lon est
suffisamment proche de points verifiant 8.18. Cela conduit aux conditions dites standart
pour lalgorithme de Newton. Hypoth`eses standart en x O, o` u O est un ouvert convexe
de R :n

c1 f est deux fois contin ument differentiable sur O


c2 x 7 2 f (x) est Lipschitz continue sur O : k2 f (y) 2 f (x)k ky xk
c3 f (x) = 0 et 2 f (x) est definie positive

Exercice 8.20 Sous les hypoth`eses standart, il existe > 0 et K > 0, tels que si
kx x0 k , kx xk+1 k Kkx xk k2 . Si K < 1, (xk ) converge vers x. Une telle
convergence est appelee locale quadratique.

Preuve 8.20 Demonstration : 1) En utilisant le Theor`eme de Rouche (ou un resultat de


u 2 f (x) est
continuite des valeurs propres), il existe un voisinage de x inclus dans O o`
2 2 1
definie positive. Les fonctions x 7 k f (x)k et x 7 k f (x) k sont continues dans un
1
voisinage de x inclus dans O car x 7 2 f (x) est continue, dans O et x 7 2 f (x)
est continue dans un voisinage de x car 2 f (x) est inversible. Donc il existe tel que

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
88 Chapitre 8 : Optimisation sans contrainte

kx xk (note x B()) entrane

k2 f (x)k 2k2 f (x)k et k2 f (x)1 k 2k2 f (x)1 k, et 2 f (x) est definie positive.
R1 2 (8.5)
Soit xk B(). Alors en utilisant lexercice 8.12 on obtient f (xk ) = 0 f (x + s(xk x))(xk
x) ds, qui montre que

kx xk+1 k = kx xk + 2 f (xk )1 f (xk )k (8.6)


 Z 1 
= k2 f (xk )1 2 f (xk )(x xk ) + 2 f (x + s(xk x))(xk x) ds(8.7)
k
0
Z 1
= k2 f (xk )1 2 f (x + s(xk x)) 2 f (xk ) (xk x) dsk

(8.8)
0
Z 1
2 1
2k f (x) k (1 s)kxk xk2 = Kkx xk k2 . (8.9)
0

Si K < 1, xk+1 B() (car kx xk+1 k Kkxk xkkxk xk Kkxk xk) et par
induction si x0 B(), alors xk B() pour tout k. De plus on verifie aisement que
k
(K)2
kx xk k , ce qui montre que (xk ) converge vers x.
K
2
Pn 1
Exercice 8.21 (Crit`ere darret) Pour la suite fn = k=1 , montrer que la stationarite
k
de fn (i.e. fn+1 fn petit) nindique pas la convergence. En deduire quarreter une methode
doptimisation sur |f (xk+1 ) f (xk )|  est dangereux. En revanche, sous les conditions
standart, montrez que pour xk suffisamment proche de x, on a
kx xk k kf (xk )k 4cond(2 f (x))kx xk k
.
4kx x0 kcond(2 f (x)) kf (x0 )k kx x0 k
En deduire que la norme relative du gradient est un crit`ere darret possible si le Hessien
`
a loptimum est bien conditionne.

Preuve 8.21 Demonstration : La suite fn diverge mais fn+1 fn tend vers 0. Par les
memes arguments que pour la preuve de 8.20 on a pour xk B(),
Z
kf (xk )k = k 2 f (x + s(xk x))(xk x) ds,k 2k2 f (x)kkx xk k.

Utilisant lexercice 8.12 on obtient


Z
(xk x)T 2 f (x + s(xk x))(xk x) ds = (xk x)T f (xk ) kxk xkkf (xk )k.

La matrice 2 f (x + s(xk x)) etant definie positive dans B() linegalite matricielle pour
une matrice A symetrique definie positive z T z/max (A1 ) = min (A)z T z z T Az montre
alors que Z 1
1
kxk xk2 2 f (x + s(x x))1 k
kxk xkkf (xk )k.
0 k k

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
89 Chapitre 8 : Optimisation sans contrainte

kxk xk 2
En utilisant k2 f (xk )1 k 2k2 f (x)1 k, on obtient 2k 2 f (x)1 k kxk xkkf (xk )k.

Finalement, en rassemblant les majorations et minorations obtenues, on a pour xk B()


kxk xk
2k2 f (x)1 k
kf (xk )k 2k2 f (x)kkx xk k et la meme inegalite pour x0 permet de
conclure.
2
Il
existe des variantes inexactes de la methode de Newton o` u
le gradient f (xk ) est approximatif,
le Hessien 2 f (xk ) est approximatif,
la solution du syst`eme lineaire 2 f (xk )s = f (xk ) est calculee de mani`ere ap-
prochee,
dans le but de rendre la methode moins co uteuse en memoire et en temps de calcul.
Pour toutes ces variantes, des theories de convergence locale existent, qui imposent un
bon contr
ole des approximations.

8.4.2 M
ethodes quasi-Newton
Une facon dapproximer la Hessienne, pour eviter de calculer et de stocker les derivees
dordre 2 est decrite comme suit. Pour une fonction quadratique, il est aise de montrer que
f (x1 ) f (x2 ) = 2 f (x1 )(x1 x2 ). Cela indique que la connaissance de deux vecteurs
distincts x1 et x2 et de la difference de gradient associee permet dobtenir dans le cas
quadratique -ou au voisinage de la solution sous les hypoth`eses standart, dans les etapes
ultimes de la convergence- de linformation sur la Hessienne 2 f (x). Plus generalement,
on suppose connus, s = x1 x2 et y = f (x1 ) f (x2 ), ainsi quune approximation
courante B de la Hessienne. On cherche une nouvelle approximation B e telle que B e soit
symetrique et Bs = y. Cela ne suffit pas pour definir de mani`ere unique B, et on recherche
e e
des Be de norme minimale (pour certaines normes) pour forcer lunicite.

Exercice 8.22 On recherche une matrice B e = B + B, supposee mieux approcher que


B la Hessienne en x2 en considerant le probl`eme

min kBkF .
B = B T
(B + B)s = y

La solution de ce probl`eme est donnee par la formule Powell-symmetric-Broyden :

(y Bs)sT + s(y Bs)T sT (y Bs)ssT


B0 = .
sT s (sT s)2

Preuve 8.22 Demonstration : On verifie aisement que B0 s = y Bs et que B0 est


symetrique. Soit q1 = s/ ksk2 . Pour tout B qui verifie les contraintes (et en particu-
lier pour B0 ), on a Bq1 = B0 q1 = yBs ksk . soient qi , i = 2, . . . n, qui compl`
etent
2
q1 en une base orthonormale de Rn . Alors de qiT q1 = 0 pour i > 1, on tire B0 qi =
s(Bs)T qi ssT 2 Pn 2
T
s s
= T
s s
Bq i . Do`
u , en notant Q = [q 1 , . . . , q n ], kB0 QkF = i=1 kB0 qi k2

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
90 Chapitre 8 : Optimisation sans contrainte

Pn 2
= kBQk2F . En utilisant le fait que la norme de Frobenius est unitairement
i=1 kBqi k2
invariante, on obtient kB0 kF kBkF , do` u le resultat.

Exercice 8.23 Soit f une fonction deux fois ument derivable, telle que 2 f (x)
R 1 contin
2
est definie positive pour tout x. Soit G = 0 f (x1 + s(x2 x1 )) ds. La matrice G
est symetrique definie positive. Soit une matrice symetrique W telle que W 2 = G. On
sinteresse au probl`eme
1
W BW 1 .

min F
B = B T
(B + B)s = y

La solution de ce probl`eme est donnee par la formule de Davidon-Fletcher-Powell

(y Bs)y T + y(y Bs)T sT (y Bs) yy T


B0 = .
sT y (sT y)2

Noter qualors
ysT sy T yy T
   
B + B0 = I T B I T + T .
s y s y s y

Preuve 8.23 Demonstration : On a dapr`es lexercice 8.12, puisque s = Rx1 x2 et y =


1
f (x1 ) f (x2 ) que Gs = y. De plus G est definie positive (considerer 0 uT 2 f (x1 +
s(x2 x1 ))u ds pour tout u de norme 1, et le fait que lintegrande est continu et strictement
positif ). Donc sT y = sT Gs > 0. Soit alors W une racine carree positive de G (en fait elle
est unique). Par changement de variable = W T BW 1 , le probl`eme devient

min kkF .
= T
(W 1 BW 1 + )W s = W 1 y

Dapr`es lexercice 8.22 precedent, et en notant que Gs = W W s = y et W s = W 1 y, la


solution secrit

(W 1 y W 1 BW 1 W s)sT W + s(W 1 y W 1 BW 1 W s)T


0 =
sT W W s
1 1 1
s W (W y W BW W s)W ssT W
T

(sT W W s)2
W 1 (y Bs)y T W 1 + W 1 y(y Bs)T W 1 sT (y BW s)W 1 yy T W 1
= .
sT y (sT y)2

En faisant le changement de variable B = W W , on obtient le resultat desire.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
91 Chapitre 8 : Optimisation sans contrainte

Exercice 8.24 Nous avons vu que dans la methode de Newton, il sagit se resoudre des
u lidee dapprocher 2 f (xk )1
syst`emes lineaires de la forme 2 f (xk )s = f (xk ). Do`
plut 2
ot que f (xk ). Montrez que la formule BFGS (Broyden, Fletcher, Goldfarb, Shanno)

sy T ysT ssT
   
H + H0 = I T H I T + T ,
y s y s y s
est telle que H0 est solution de

min kHk,
H = H T
(H + H)y = s

pour une norme k k que vous identifierez.

Preuve 8.24 Demonstration : Dans la demonstration de lexercice 8.23, on a demontre


que si Gs = y, avec G = W W definie positive, alors la mise a jour DFP pour
(B +B)s =
a jour avec la norme W 1 W 1 F . On consid`ere
y est solution du probl`eme de mise `
maintenant lequation (H + H)y = s. On peut appliquer DFP a ce probl`eme en notant
que s = G1 y (G = W 1 W 1 est definie positive). La formule BFGS est alors la mise a
jour de DFP correspondant au probl`eme

min kW HW kF .
H = H T
(H + H)y = s
2
Deux principales difficultes sont rapportees dans la litterature sur la methode de New-
ton pour la minimisation :
1. Son mauvais comportement lorsque le point de depart est loin de la solution sur des
probl`emes pour lesquels certains Hessiens 2 f (xk ) sont definis positifs.
2. Son mauvais comportement lorsquelle rencontre des Hessiens ayant des valeurs
propres negatives ou nulles.
Une amelioration possible pour le probl`eme 1) est la mise en place de strategies de re-
cherches lineaires. Le point 2) est souvent apprehende en utilisant des techniques de region
de confiance.

8.4.3 Globalisation des m


ethodes de Newton/quasi-Newton
2
Exercice 8.25 Calculez quelques iteres de la methode de Newton sur f (x) = ex , pour
x0 = 101 , x0 = 1/2 et x0 = 1.
2 2 2
Preuve 8.25 Demonstration : f (x) = ex , f 0 (x) = 2xex , f 00 (x) = (2 4x2 )ex .
Alors on a xk+1 = xk 2xk /(24x2k ) = 4x3k /(24x2k ). Pour x0 = 101 , on a x1 2103
et x2 2 108 . Pour x0 = 1/2, on a x1 = 1/2 et x2 = 1/2. Pour x0 = 1, on a x1 2.3
et x2 2.5, x23 5.4 et f (x23 ) 1013 .

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
92 Chapitre 8 : Optimisation sans contrainte

Nous voyons dans la suite deux techniques visant ` a rendre le convergence moins
dependante du point de depart. Ces deux techniques sont appelees techniques de globa-
lisation, et chercheront a
` approcher une convergence locale quadratique au voisinage des
solutions de f (x) = 0. Ces solutions sont appelees points critiques du premier ordre.

Recherche lin
eaire
Dans cette section, on suppose que la fonction f est deux fois contin
ument derivable.

Definition 8.7 Soit xk Rn . On dit que dk est une direction de descente en xk si


f (xk )T dk < 0.

La terminologie direction de descente sexplique aisement par lexercice 8.26.

Exercice 8.26 Si dk est une direction de descente en xk , alors il existe > 0 tel que

f (xk + dk ) < f (xk ) pour tout ]0, ].

Preuve 8.26 Demonstration : Soit (t) = f (xk + tdk ). Alors 0 (t) = f (xk + tdk )T dk ,
donc comme 0 est continue, et 0 (0) < 0, il existe u 0 (t) < 0. Alors
R t un0 intervalle ]0, ] o`
pour t dans ]0, ], on a f (xk + dk ) f (xk ) = s=0 (s) ds < 0.

On envisage alors un premier algorithme de minimisation base sur des directions de


descente :

Basic linesearch (bad algorithm)


1. Choose x0
2. For k=0,2, ... Do
3. Compute a descent direction such that f (xk )T dk < 0
4. Compute a step such that f (xk + k dk ) < f (xk ).
5. Update xk+1 = xk + k dk .
6. EndDo

Exercice 8.27 Lalgorithme ci-dessus ne suffit pas pour converger vers un minimum local
de f . Soit f (x) = x2 , x0 = 2.
1. On choisit dk = (1)k+1 et k = 2 + 3 2k1 . Verifier que xk = (1)k (1 + 2k ) et
que chaque direction dk est de descente. Verifier aussi que la suite ne converge pas,
que f (xk+1 ) < f (xk ) et que limk+ f (xk ) = 1. Tracer les iteres et verifier quentre
deux iteres successifs, la decroissance de f est tr`es petite par rapport au pas |k dk |.
2. On choisit dk = 1 et k = 2(k+1) . Verifier que xk = 1+2k et que chaque direction
dk est de descente. Verifier aussi que la suite converge vers 1 (et pas vers 0) que
f (xk+1 ) < f (xk ) et que limk+ f (xk ) = 1. Tracer les iteres et verifier quentre
a |f 0 (xk )dk |.
deux iteres successifs, les pas |k dk | deviennent tr`es petits par rapport `

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
93 Chapitre 8 : Optimisation sans contrainte

Preuve 8.27 Demonstration :


1. Par recurrence, xk+1 = xk + k dk = (1)k (1 + 2k ) + (2 + 3 2k1 )(1)k+1 =
(1)k+1 (1 + 2(k+1) ). Direction de descente : f 0 (xk )dk = 2(1)k (1 + 2k )(1)k+1 <
0. La suite admet 1 et 1 comme points daccumulation et limk+ f (xk ) = 1. De
plus f (xk+1 ) f (xk ) = (1 + 2k )2 (1 + 2(k1) )2 < 0.
2. Par recurrence, xk+1 = xk + k dk = 1 + 2k 2k1 = 1 + 2(k+1) . Direction de
descente : f 0 (xk )dk = 2(1 + 2k )(1) < 0, et f (xk+1 ) f (xk ) < 0.

Definition 8.8 Soit 1 ]0, 1[, 2 ]1 , 1[, et soit dk une direction de descente en xk . On
appelle conditions de Wolfe les deux conditions :
1. f (xk + dk ) f (xk ) + 1 f (xk )T dk (condition de diminution suffisante)
2. f (xk + dk )T dk 2 f (xk )T dk (condition de progr`es suffisant)
Ces deux conditions pallient respectivement les deux types de probl`emes rencontres dans
lexercice 8.27. Si f (xk + dk ) admet un minimum global, celui-ci verifie les condi-
tions de Wolfe (mais peut etre tr`es ou trop cher `
a calculer a
` des etapes preliminaires de
convergence).

Preuve 8.28 Demonstration :


1. Dans le cas 1., f (xk +k dk )f (xk ) = (1+2k1 )2 (1+2k )2 = 2k1 (2+32k1 )
et f (xk )T dk = 2(1 + 2k ). Donc la condition de diminution suffisante nest pas
verifiee.
2. Dans le cas 2, f (xk + k dk )T dk = 2xk+1 et f (xk )T dk = 2xk , et comme {xk }
tend vers 1, la condition de progr`es suffisant nest pas verifiee.

Exercice 8.28 Validite des conditions de Wolfe. Soient f : Rn R une fonction differentiable,
un point xk Rn et une direction (de descente) dk Rn telle que f est bornee inferieurement
a-dire il existe f0 tel que f (xk + dk ) f0 pour tout 0).
dans la direction dk (cest-`
Pour 0 < 1 < 1, il existe tel que la premi`ere condition de Wolfe soit verifiee pour tout
k , 0 < k . De plus, si 0 < 1 < 2 < 1, il existe > 0 tel que les deux conditions de
Wolfe soient toutes deux verifiees.

Preuve 8.29 Demonstration : On sinteresse aux > 0 tels que f (xk + dk ) = f (xk ) +
1 f (xk )T dk . Cet ensemble est non vide (car sinon 7 f (xk + dk ) serait en dessous
de 7 f (xk ) + 1 f (xk )T dk , ce qui est impossible car 0 < 1 < 1 et f est bornee
inferieurement), ferme (image reciproque de {0}) et borne inferieurement. Donc cet en-
semble admet un plus petit element 1 , qui verifie

f (xk + 1 dk ) = f (xk ) + 1 1 f (xk )T dk ,

donc qui verifie la premi`ere condition de Wolfe.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
94 Chapitre 8 : Optimisation sans contrainte

Dapr`es Taylor-Lagrange, applique a 7 f (xk + dk ), entre 0 et 1 , il existe 2 tel


que
f (xk + 1 dk ) = f (xk ) + 1 f (xk + 2 dk )T dk ,

En rassemblant les deux resultats, on obtient

f (xk + 2 dk )T dk = 1 f (xk )T dk > 2 f (xk )T dk ,

donc 2 verifie la seconde condition de Wolfe. Comme 2 < 1 , on a f (xk + 2 dk ) <


f (xk ) + 1 2 f (xk )T dk et donc 2 verifie la premi`ere condition de Wolfe est verifiee.

Descent algorithm with Wolfe linesearch


1. Choose x0
2. For k=0,2, ... Do
3. Compute a descent direction such that f (xk )T dk < 0
4. Compute a step such that the Wolfe conditions hold.
5. Update xk+1 = xk + k dk .
6. EndDo

Theor`eme 8.9 Supposons de f soit contin ument differentiable, bornee inferieurement,


et que son gradient verifie kf (x) f (x)k2 kx yk2 . supposons quun algorithme
de descente soit employe tel que chaque pas verifie les conditions de Wolfe. Alors soit
(xk )T dk
limk+ f (xk ) = 0, soit limk+ fkd kk
= 0.
2

Preuve 8.30 Demonstration : Admise, voir Denis et Schnabel 1996, p.121.

Le theor`eme ci-dessus indique que si langle entre dk et f (xk ) ne converge pas vers
langle droit, la limite du gradient de litere est 0 (on verifie asymptotiquement la condi-
tion necessaire du premier ordre) quel que soit x0 . Cest donc un resultat de convergence
globale. Malheureusement cet algorithme peut avoir une convergence tr`es lente si dk nest
pas choisi avec soin. Par exemple, le choix dk = f (xk ) sav`ere un tr`es mauvais choix
si lalgorithme converge vers un point x? tel que cond(2 f (xk )) est grand : la convergence
est lineaire, avec une vitesse de convergence modeste.
Dans le cas dune convergence vers un point x tel que 2 f (x ) est defini positif
(condition suffisante du second ordre), lidee consiste alors ` a preconditionner la recherche
lineaire et ` a la combiner avec la methode de Newton qui est localement quadratiquement
convergente, comme le fait lalgorithme ci-dessous. Il est possible de montrer que lorsque
les iteres sapprochent dune solution qui verifie les conditions suffisantes doptimalite au
second ordre, le pas de Newton est accepte et la convergence est quadratique.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
95 Chapitre 8 : Optimisation sans contrainte

Newton with linesearch


1. Choose x0
2. For k=0,2, ... Do
3. If 2 f (xk ) is SPD, compute the Newton step sN = 2 f (xk )1 f (xk ).
If sN is acceptable (Wolfe) accept it. If not, perform a line search (Wolfe) in direction sN
4. If 2 f (xk ) is not SPD, add a perturbation E so that 2 f (xk ) + E is SPD,
and perform a line search (Wolfe) in direction (2 f (xk )1 + E)f (xk )
5. Update xk+1 = xk + k dk .
6. EndDo

R
egion de confiance
Definition 8.10 Mod`ele quadratique. On appelle mod`ele quadratique de f en xk une
fonction quadratique mk (xk + s) telle que mk (xk ) = f (xk ) et mk (xk ) = fk (xk ). Il
existe alors une matrice Hk Rnn telle que
1
mk (xk + s) = f (xk ) + fk (xk )T s + sT Hk s.
2
Definition 8.11 Region de confiance. On appelle region de confiance Euclidienne centree
en xk , de rayon k > 0 la sph`ere Bk = xk + {s, ksk2 k }.

Lidee de lalgorithme de region de confiance et de resoudre approximativement le probl`eme

min mk (xk + s).


xk +sBk

On note xk+1 = xk + sk le point ainsi obtenu. La condition technique portant sur xk+1
demandee pour les resultats de convergence est la condition dite de decroissante suffisante :

kmk (xk )k2


 
mk (xk ) mk (xk + sk ) mdc kmk (xk )k2 min , k , (8.10)
k

u mdc ]0, 1[ et k = kHk (x)k2 + 1.


o`

Exercice 8.29 Le point de Cauchy xC


k qui est, par d
efinition, solution de

min mk (x)
t>0
x = xk tm(xk ) Bk

verifie
kmk (xk )k2
 
1
mk (xk ) mk (xC
k) kmk (xk )k2 min , k .
2 k

Preuve 8.31 Demonstration : Posons gk = x mk (xk ). On a mk (xk tgk ) = mk (tk )


tkgk k2 + 21 t2 gkT Hk gk .

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
96 Chapitre 8 : Optimisation sans contrainte

1. Supposons gkT Hk gk > 0. Alors le minimum de mk (xk tgk ) pour t R est atteint
2
en t = gTkgHk kg 0.
k k k
kgk k3
Premier cas. Supposons dabord que t kgk k = gkT Hk gk
k , donc xk t gk est dans
la region de confiance et cest xC T
k . Comme gk Hk gk k kgk k, on a alors

1 2 T kgk k4 1 kgk k4
mk (xk ) mk (xC 2
k ) = t kgk k t gk Hk gk T T
gkT Hk gk
2 gk Hk gk 2 (gk Hk gk )2

1 kgk k4 1 kgk k2
= .
2 gkT Hk gk 2 k
kgk k3 kgk k3
Deuxi`eme cas. Supposons maintenant que gkT Hk gk
k . Alors gkT Hk gk k et
le minimum dans la region de confiance est donc atteint sur la fronti`ere (faire un
dessin). Alors t kgk k = k et xC
k = xk k gk et

1 2k T 1 2k kgk k3 1
mk (xk ) mk (xC
k ) = k kgk k 2
gk Hk gk k kg k k 2
= k kgk k.
2 kgk k 2 kgk k k 2

2. Supposons gkT Hk gk 0. Le minimum est ` a nouveau atteint sur la fronti`ere de la


region de confiance et puisque gkT Hk gk 0
1 2k T
mk (xk ) mk (xC
k ) = k kgk k g Hk gk k kgk k.
2 kgk k2 k
En regroupant les differents sous-cas, on obtient le resultat.
2
Le calcul de xk+1 (donc de sk ) est bien moins cher que la resolution du probl`eme
initial minx f (x) car
1. mk est une fonction quadratique
2. la decroissance suffisante est obtenue ` a faible co
ut, en calculant le point de Cauchy,
et en cherchant eventuellement ` a diminuer encore mk ` a partir de xC k . La m
ethode
des regions de confiance a donc un rapport etroit avec la recherche lineaire suivant
la direction fk (xk ).
On introduit le ratio de la reduction observee sur f par rapport ` a la reduction predite sur
mk :
f (xk ) f (xk+1 )
k = .
m(xk ) m(xk+1 )
Si k est suffisamment proche de 1, le mod`ele represente la fonction de mani`ere fiable, on
accepte le pas, et on augmente eventuellement le rayon de la region de confiance. Si k est
faible, voire negatif, le mod`ele nest pas assez fiable, et lon reduit la region de confiance
(notez que pour k suffisamment petit mod`ele et fonction sont egaux au premier ordre).
Nous sommes en mesure de presenter ` a present lalgorithme des regions de confiance :

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
97 Chapitre 8 : Optimisation sans contrainte

Basic trust region algorithm (Conn, Gould, Toint (2000 p.116))


1. Choose x0 , an initial 0 > 0, and constants 0 < 1 2 < 1 and 0 < 1 2 < 1
2. For k=0,2, ... Do
3. Compute a step sk that sufficiently reduces mk in Bk ( 8.10).
f (xk )f (xk +sk )
4. Define k = m(x k )m(xk +sk )
.
5. If k 1 then define xk+1 = xk + sk ; otherwise define xk+1 = xk
6. Trust region update. Set
k+1 [k , +[ if k 2 or
k+1 [2 k , k ] if 1 k < 2 or
k+1 [1 k , 2 k ] if k < 1
7. If converged, exit,
8. EndDo

Th eor`
eme 8.12 On suppose que lalgorithme est applique ` a une fonction
deux fois differentiable,
bornee inferieurement n
2 sur R ,
a Hessien borne ( f (x) 2 uf h pour x Rn ),
`
et que les mod`eles mk sont
quadratiques,
que f en xk (coherence au premier ordre)
ont meme valeur et gradient
ont des Hessien bornes ( 2 f (x) 2 umh pour x Bk ).
alors pour tout x0 , lalgorithme des regions de confiance produit une suite diteres telle
que limk+ f (xk ) = 0.
Preuve 8.32 Demonstration : Admise (Conn, Gould, Toint (2000 p.136)).
2
Le theor`eme 8.12 montre une mani`ere aisee dobtenir un algorithme globalement
convergent : il suffit de choisir 2 mk (xk ) = Hk = 0 Rnn et de prendre pour itere
le point de Cauchy. Par contre on obtient alors un algorithme qui converge aussi peu ra-
pidement que celui implantant systematiquement la recherche lineaire dans la direction
f (xk ). Pour obtenir un algorithme plus performant et approcher la convergence locale
de lalgorithme de Newton, il convient de choisir un pas sk qui soit voisin du pas de Newton
dans les etapes ultimes de la convergence.
Ceci est realise si lon utilise pour algorithme de calcul de pas lalgorithme de gradient
conjugue tronque propose par Steihaug et Toint et si le Hessien du mod`ele approche celui
de la fonction. Cet algorithme commence par calculer le point de Cauchy puis poursuit
la minimisation de la quadratique m(xk + s) par la methode des gradients conjugues, en
sarretant au premier itere sortant de la region de confiance Bk . On a ainsi minimise
davantage m(xk + s) que m(xC k ), et donc on a, `
a la fin de cette procedure de gradient
conjugue tronque, la decroissance suffisante :
kx mk (xk )k2
 
C 1
m(xk ) m(xk + sk ) m(xk ) m(xk ) kx mk (xk )k2 min , k .
2 k
u la convergence a lieu vers un point x o`
Dans le cas o` u le Hessien est defini positif et si
2 2
mk (xk ) fk (xk ), le comportement typique de lalgorithme est alors le suivant :

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
98 Chapitre 8 : Optimisation sans contrainte

1. les pas deviennent de plus en plus petits (on converge),


2. comme le mod`ele et la fonction sont coherents au premier ordre, k devient proche
de 1,
3. la region de confiance a un rayon qui augmente,
4. lalgorithme des gradients conjugues ne rencontre plus le bord de la region de confiance,
5. les gradient conjugues resolvent alors le syst`eme 2 f (xk )sk + f (xk ) = 0 ce qui
correspond bien `
a la methode de Newton, qui a une convergence locale quadratique.

Steihaug Toint Conjugate Gradient algorithm


0. Input parameters : xk , f (xk ), H = 2 f (xk ). Output : s
1. Compute s0 = 0, g0 = f (xk )
2. For k=0,2, ... Do
3. k = pTk Hpk
4. If k 0, then
compute k as the positive root of ksk + pk k2 = k
sk+1 = sk + k pk and stop.
End If
5. k = rkT rk /k
6. If ksk + k pk k2 k , then
compute k as the positive root of ksk + pk k2 = k
sk+1 = sk + k pk and stop.
End If
4. sk+1 = sk + k pk
5. gk+1 = gk + k Hpk
T
7. k = gk+1 gk+1 /gkT gk
8. pk+1 = gk+1 + k pk
9. if converged then stop
10. EndDo

8.4.4 Globalisation des moindres carr


es non-lin
eaires
Exercice 8.30 Fonctionnelle des moindres carres non lineaires. Soit f definie sur un
ouvert O Rn , deux fois differentiable, ` a valeurs dans Rm . On definit la fonction F (x)
des moindres carres non lineaires par F (x) = 21 kf (x)k22 . Montrez que le gradient de F en
x
Pest f 0 (x)T f (x) = Df (x)T f (x) et que la matrice Hessienne de F en x est Df (x)T Df (x)+
m 2
i=1 fi (x) fi (x).

Preuve 8.33 Demonstration : Considerons (x) = fi (x)2 . Alors, par derivation dune
m
(x) fi (x) F (x) X fi (x)
composee, = 2fi (x) , et donc = fi (x), ce qui implique
xj xj xj xj
i=1

F (x) f1 (x) fm (x)



...
f1 (x)

x1 x1 x1

F (x) = ..
= .. .. .. .. 0 T T
= f (x) f (x) = Df (x) f (x).

. . . . .


F (x) f (x) fm (x) fm (x)

1
...
xn xn xn
Ress. Pedag. Ouv. INPT, 0727 (2014) 24h
S. Gratton, Analyse matricielle et Optimisation, Ed.
99 Chapitre 8 : Optimisation sans contrainte

fi (x)
Pour la derivee seconde, si on note (x) = 2fi (x) , on a
xj

2 (x) (x) fi (x) fi (x) 2 fi (x)


= =2 + 2fi (x) .
xk xj xk xk xj xk xj
m
2 F (x) X fi (x) fi (x) 2 fi (x)
On a alors = + fi (x) . Ce terme est bien le terme (k, l)
xk xj xk xj xk xj
i=1
de la matrice Df (x)T Df (x) + m 2
P
i=1 fi (x) fi (x).

Nous avons vu dans lexercice 8.30 que pour la fonction des moindres carres non
lineaires, F (x) = 12 kf (x)k2 , le gradient de F en Px est f 0 (x)T f (x) = Df (x)T f (x) et la
matrice Hessienne de F en x est Df (x)T Df (x) + m 2
i=1 fi (x) fi (x). Il est possible donc
dutiliser des variantes de la methode de Newton pour minimiser F (x), en utilisant une
recherche lineaire ou une region de confiance.
On remarque que 2 f (x) secrit sous la forme dun terme ne faisant intervenir que
des
Pmderivations (Df (x)T Df (x)) et un terme faisant intervenir des derivations dordre 2
( i=1 fi (x)2 fi (x)). Il est donc tentant dapprocher 2 f (x) par le terme Df (x)T Df (x)
pour eviter le calcul de derivees dordre 2. La variante de Newton faisant cette approxi-
mation sappelle la methode de Gauss-Newton

(GN ) : xk+1 = xk (Df (xk )T Df (xk ))1 Df (xk )T Df (xk ) = xk Df (xk )+ f (xk ).

Cette methode nest meme pas toujours localement convergente (il existe des points fixes
repulsifs). En la globalisant par une recherche lineaire o` u des regions de confiance on
obtient des methodes globalement convergentes tr`es utilisees en pratique.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
100 Chapitre 8 : Optimisation sans contrainte

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
Chapitre 9

Optimisation avec contraintes

9.1 Introduction
Nous avons vu dans le chapitre precedent des conditions necessaires doptimalite pour
des probl`emes
P : min f (x)
xC

sans contrainte, cest ` u C est Rn tout entier. Nous considerons `


a dire dans le cas o` a present
u C est strictement inclu dans Rn , et exhibons diverses conditions dependant
des situation o`
de la nature topologique de C.

9.2 Quelques r
esultats de convexit
e
Exercice 9.1 Propriete des probl`emes doptimisation convexes. Si C est convexe et si f
est convexe sur C, tout minimum local est un minimum global.

Preuve 9.1 Demonstration : Soit x une solution locale. Pour tout  > 0, notons B( x, ) la
boule centree en x et de rayon . Alors pour tout x dans C B( x, ), on a f (x) f (
x). Soit
y C, alors [x, y] = {x , x = (1 )
x + y, 0 1} C. Alors pour suffisamment
petit (pour 0 < < 0 ), f (x ) f (
x). Mais alors, pour 0 < < 0 ,

x) f (x ) (1 )f (
f ( x) + f (y),

x) f (y).
ce qui implique bien que f (
2
Lexercice 9.1 explique pourquoi les probl`emes convexes sont consideres plus simples `
a
manipuler que les autres. Nous allons utiliser la caracterisation importante des fonctions
convexes suivante.
Exercice 9.2 Soit O un ouvert de Rn et f une fonction differentiable sur O. Soit C O
une partie convexe de Rn . Alors f est convexe sur C si et seulement si (x, y) C 2 ,
f (y) f (x) + f 0 (x)(y x).

101
102 Chapitre 9 : Optimisation avec contraintes

Preuve 9.2 Demonstration : Soit (x, y) C 2 . Partant de f (x + t(y x)) tf (y) + (1


t)f (x), pour t [0, 1], on obtient f (x+t(yx))f
t
(x)
f (y) f (x). En passant a la limite,
0
on obtient f (x)(y x) f (y) f (x).
Reciproquement, utilisant, pour t [0, 1]

f (y) f (x + t(y x)) + f 0 (x + t(y x))(1 t)(y x)

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

on obtient, en multipliant par t(> 0) la premi`ere inegalite et par 1 t(> 0) la seconde et


en sommant,

tf (y) + (1 t)f (x) f (x + t(y x)) + f 0 (x + t(y x)) (t(1 t)(y x) (1 t)t(y x))
f (x + t(y x)) + 0

Exercice 9.3 Convexite sur C = Rn . Soit f une fonction deux fois differentiable sur
Rn . Alors f est convexe sur Rn si et seulement si 2 f (x) Rn est une matrice semi-
definie positive pour tout x Rn . La fonctionnelle des moindres carrees kAx bk22 est
donc convexe. La quadratique 12 xT Ax xT b, avec A symetrique semi-definie positive lest
aussi.

Preuve 9.3 Demonstration : Supposons f convexe. Pour tout t > 0 et , x + C = Rn .


Alors dapr`es lexercice 9.2, f (x + t) f (x) + f 0 (x)(t), et f (x) f (x + t) f 0 (x +
t)(t). On a donc f 0 (x)(t) f (x + t) f (x) f 0 (x + t)(t), ce qui donne pour tout
t > 0,
f 0 (x + t) f 0 (x)

0 ,
t
et 0 T 2 f (x) provient du passage `a la limite t 0 et de lexercice 8.9. Reciproquement,
supposons 2 f (x) semi-definie positive. Si on pose (t) = f (x + t). En utilisant lexer-
cice 8.9, on a dapr`es le therom`eme de Taylor Lagrange dans R, (1) = (0) + 0 (0) +
1 00 2
2 (t), avec t ]0, 1[. Comme f (x) d efinie positive, 00 (t) = T 2 f (x + t) 0, ce
qui donne (1) (0) + 0 (0). On reconnat la relation f (x + ) f (x) + f 0 (x) de
lexercice 9.2. Elle est ici vraie pour tout x et de Rn . La fonction f est donc convexe
sur Rn .
Remarque. Si C nest pas Rn tout entier il faut et il suffit que h0 (x) soit semi-definie positive
sur lensemble des directions admissibles en x relativement au convexe C, note Ka (C, x). La
demonstration est tr`es proche de la demonstration ci-dessus. On rappelle que Ka (C, x)
ssi il existe t > 0 tel que x + t C pour tout t [0, t ].

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
103 Chapitre 9 : Optimisation avec contraintes

9.3 Conditions variationnelles


Nous allons etablir des conditions, necessaires, suffisantes, ou les deux, pour des
probl`emes doptimisation avec contrainte.

9.3.1 u C est un ouvert de Rn


Cas o`
Exercice 9.4 Supposons que f est derivable dans louvert O et que C O. Supposons
que C est ouvert.
C est une solution locale de P alors f 0 (
Si x x) = 0.

Preuve 9.4 Demonstration : Soit x solution locale de P. Soit d Rn . Alors comme C


est ouvert, il existe t1 > 0 tel que |t| < t1 entrane x + t d C. Comme x est solution
locale, il existe t2 , 0 < t2 t1 tel que |t| < t2 entrane f ( x) f (
x + t d). Mais alors
pour t ]0, t2 [, on a f (x+td)f
t
(
x)
0. Par passage `
a la limite, on obtient f 0 (
x)d 0. En
faisant le meme raisonnement avec d, on obtient f ( 0 x)d 0, do` 0
u f (x)d = 0 pour tout
d, donc f 0 (
x) = 0.

Exercice 9.5 (Egalite dEuler) Supposons que f est derivable dans louvert O et que
C O. Supposons que C est ouvert, et que f et C sont convexes.
C est une solution locale de P si et seulement si f 0 (
Alors x x) = 0.

Preuve 9.5 Demonstration : On suppose que x C est une solution locale de P, alors
lexercice 9.4 permet de conclure.
Reciproquement, supposons que f , qui est une fonction convexe derivable, verifie
0
f (x) = 0 en x C. Alors par caracterisation de la convexite, pour tout x C, f (x)
f (x) + f 0 (
x)(x x u f (x) f (
)), do` x).

9.3.2 u C est convexe


Cas o`
Exercice 9.6 Supposons que f est derivable dans louvert O et que C O. Supposons C
convexe.
C est une solution locale de P alors x C, f 0 (
Si x x)(x x
) 0.

Preuve 9.6 Demonstration : Soit x C. Il existe tx tel que 0 t min(1, tx ) entrane


+ t (x x
x ) C (convexite de Ci) et f (x + t (x x
)) f (
x) 0 (minimum local). Mais
alors,
x + t (x x
f ( )) f (x)
0,
t
et par passage a la limite, f 0 (x)(x x) 0.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
104 Chapitre 9 : Optimisation avec contraintes

Exercice 9.7 (Inegalite dEuler) Supposons que f est derivable dans louvert O et que
C O. Supposons f et C sont convexes.
C est une solution locale de P si et seulement si x C, f 0 (
Alors x x)(x x
) 0.

Preuve 9.7 Demonstration : Si x C est une solution locale de P, lexercice 9.6 permet
de conclure. Reciproquement, comme f est convexe, alors f (x) f ( x) + f 0 (
x)(x x
).
0
Comme f ( x)(x x) 0, on a, x C, f (x) f (
x).
2

9.3.3 u C est quelconque


Cas o`
Definition 9.1 Soit x C. On dit que est tangent `
a C en x si et seulement si
1. il existe une suite (xn ) delements de C telle que limn+ xn = x, et
2. il existe une suite reelle strictement positive tn telle que limn+ tn (xn x) = .
On note Kt (C, x) lensemble des vecteur tangents `
a C en x.

Exercice 9.8 Supposons que f est derivable dans louvert O et que C O. Si x


C est
), f 0 (
une solution locale de P alors Kt (C, x x) 0.

Preuve 9.8 Demonstration : Soit x C est une solution locale de P et soit Kt (C, x
).
Soit alors les suites (xn ) et (tn ) associees `
a . Alors

x + xn x
f (xn ) = f ( x) + f 0 (
) = f ( x)(xn x
) + kxn x
k(xn x
).

Pour n > n0 on a (minimum local) f (xn ) f ( x), ce qui montre que, puisque tn > 0,
f 0 (
x)(xn x
)+kxn x ) 0 puis que f 0 (
k(xn x x)tn (xn x
)+ktn (xn x
)k(xn x
) 0.
En passant a 0 x)d + 0 0.
` la limite, on obtient f (
2

9.3.4 u C est donn


Cas o` e par des
egalit
es
On sinteresse ici `
a
P : min f (x),
h(x) = 0

u h est une fonction de Rn dans Rm .


o`
Definition 9.2 (Qualification des contraintes) Soit h est une fonction de Rn dans Rm .
On dit que x0 est un point regulier de la surface dequation h(x) = 0 si et seulement si
1. h est contin
ument differentiable dans un ouvert de x0 ,
2. h0 (x0 ) est surjectif (rg(h0 (x0 )) = m n).
On dit aussi que x0 verifie lhypoth`ese de qualification des contraintes.
Une condition necessaire doptimalite est obtenue en caracterisant Kt (C, x) et en utilisant
lexercice 9.8. Pour ce faire nous avons besoin du theor`eme des fonctions implicites pour
des fonctions Frechet differentiables, que nous enoncons sans demonstration.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
105 Chapitre 9 : Optimisation avec contraintes

Th eor`eme 9.3 Soit h : Rn Rm , avec n = m+p une fonction contin ument differentiable
sur un ouvert O de R . Pour tout x O on note x = (x1 , x2 ) avec x1 Rm et x2 Rp et
n

h0 (x) = [ h(x) h(x)


x1 , x2 ] R
mn , avec h(x) Rmm et h(x) Rmp .
x1 x1
h(x)
Supposons de plus que pour un x tel que h(x1 , x2 ) = 0, la matrice x1 est inversible.
Alors, il existe deux ouverts O1 et O2 contenant x1 et x2 tels que
1. lequation en x1 , h(x1 , x2 ) = 0 a une unique solution x1 = (x2 ) pour tout x2 O2 ,
2. La fonction : O2 Rm est differentiable au sens de Frechet en x2 , et
 1
3. 0 (x2 ) = h(x)
x1
h(x)
x2 .

est un point regulier de la surface dequation h(x) = 0, alors Kt (C, x


Exercice 9.9 Si x ) =
0
Ker h (
x).

Preuve 9.9 Demonstration : Supposons que Kt (C, x


). Alors il existe deux suites xk
et k provenant de la definition 9.1. On a alors

x + (xn x
h( x) + h0 (
)) = h( x)(xn x
) + kxn x
k(xn x
),

et puisque h(xn ) = h( x) = 0, on obtient, en multipliant par n , 0 = n h0 ( x)(xn


x) + kn (xn x )k(xn x ). Cela donne h0 (x) = 0 par passage ` a la limite n +
h. Reciproquement,
i soit Ker h0 (
x). Comme x est un point regulier, la matrice h0 (
x) =
h(
x) h(
x) 0
x1 , x2
a modifier lordre des colonnes de h (
est surjective, et donc, quitte ` x), on
peut supposer que h( x)
x1 R
mm est inversible. On peut alors appliquer le th eor`eme des
fonctions implicites ` a h(x) = 0 au voisinage de x = ( x1 , x
2 ). Cela permet de definir
une fonction (x2 ) dans un ouvert O2 de x 2 telle que h((x2 ), x2 ) = 0 pour x2 O2 .
h i
1
Comme = (1 , 2 ) Ker h0 ( x) = h(
x), on a h0 ( x) h(
x1 , x2
x)
= 0, ce qui montre
2
 0
2 + n1 2
   
(
x2 )2 x
que = . On definit alors xn = et n = n. Ces suites verifient
2 2 + n1 2
x
la definition 9.1 en x .

a P. On appelle Lagrangien associe a


Definition 9.4 Lagrangien associe ` ` P lapplication

L : Rn Rm R
(x, ) 7 f (x) + T h(x).

a et x constant on a , si f et h sont derivables en x, L 0


En derivant ` x (x, )=f (x) +
T 0 0 T T L T
h (x) = (f (x) + h (x) ) , et (x, )=h(x) . Si f et h sont deux fois derivables en
2 def
x, on a alors xL2 (x, ) = 2 f (x) + i 2 hi (x).
P

Exercice 9.10 (Condition necessaire au 1er ordre de Kuhn-Tucker-Lagrange (KTL) ou


de Karush-Kuhn-Tucker (KKT)) On suppose que x C est une solution locale de P et

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
106 Chapitre 9 : Optimisation avec contraintes

verifiant lhypoth`ese de qualification des contraintes. Si les fonctions f et h sont continument


differentiables dans un ouvert O contenant x m
, il existe R , appele multiplicateur de
Lagrange, tel que
= f 0 ( T h0 (
 L
x (
x, ) x) + x) = 0,
L
(
x ,
)=h(
x ) T = 0.

Preuve 9.10 Demonstration : Puisque x C est une solution locale de P, on a f 0 (


x) 0
pour tout Kt (C, x). Mais puisque les contraintes sont qualifiees en x , on a Kt (C, x
) =
0
Ker h ( 0
x), et donc f ( x) 0 pour tout Ker h ( 0 x). Comme Ker h ( 0 x) est un espace
vectoriel, si Ker h0 (
x), alors Ker h0 (x) et donc f 0 (
x) = 0 pour tout Ker h0 (
x)
ce qui implique f (x) (Ker h0 (x)) . Or h0 (
x) Rmn .En consid e rant la d
e composition
V1T

en valeurs singuli`eres de h0 (x), on a h0 (
x) = U [m 0] on a que (Ker h0 (x)) =
V2T
Imh0 (
x)T = span(V1 ). Donc f ( x) Imh0 ( x)T , et ainsi f ( x) = h0 ( x)T pour un
certain R .m

a surface donnee S, quelles sont celles de volume maxi-


Exemple 9.5 De toutes les botes `
q 3
mum ? Montrer que ce volume maximal est S6 .

Preuve 9.11 Demonstration : Soit xi 0 les longeurs des cotes. Le probl`eme secrit

min x1 x2 x3 .
x1 x2 +x1 x3 +x2 x3 =S/2

On a h(x) = x1 x2 + x1 x3 + x2 x3 S/2, donc h0 (x) = x2 + x3 x1 + x3 x1 + x2 . Si


 

les contraintes ne sont pas qualifiees, xi = xj pour i 6= j, donc les xi sont tous nuls. Un tel
point ne satisfait pas la contrainte. Supposons donc les contraintes qualifiees et les xi > 0.
Les conditions KTL secrivent pour L(x, ) = x1 x2 x3 + (x1 x2 + x1 x3 + x2 x3 S/2),

L(x,p)
0 =

x1 = x2 x3 + (x2 + x3 )
0 = L(x,p) = x x + (x + x )

x2 1 3 1 3
L(x,p)


0 = x3 = x x
1 2 + (x 1 + x 2)
0 = L(x,p) = x x + x x + x x S/2

1 2 1 3 2 3

Si = 0, alors dapr`es les 3 premi`eres equations, au moins 2 des xi sont nuls, donc on ne
peut pas avoir x1 x2 + x1 x3 + x2 x3 S/2 = 0 si S 6= 0. Donc necessairement, 6= 0. De
meme, si un des xi est nul, par exemple x1 , x1 x3 + (x1 + x3 ) = 0 entrane x3 = 0 (on
sait que 6= 0). Un tel point, avec x3 = 0 et x1 = 0 ne satisfait pas la contrainte si S 6= 0.
Donc les xi , i = 1, 2, 3 et sont tous non nuls. En faisant le ratio des 2 premi`eres
egalites, on obtient xx12 = xx21 +x
+x3 , ce qui donne x3 (x2 x1 ) = 0, donc x2 = x1 (x3 6= 0).
3

Similairement, on obtient, avec les egalites 2 et 3, que x2 = x3 . Les solutions du syst`eme


S
sont donc x1 = x2 = x3 = c et = 12c . Donc sil y a un minimum, il est atteint pour

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
107 Chapitre 9 : Optimisation avec contraintes

q
un cube, x1 = x2 = x3 = c avec c solution de min c3 , cest ` a dire c = S
6 , et
3c2 =S/2
q q 3
S
= 12c = 12 S6 , la valeur a loptimum est alors S6 donnant un volume maximal de
q 3
S
6 .
2
Exemple 9.6 On sinteresse au probl`eme dans R2 suivant
1
min kx ak2 .
x1 =0 2

Le resoudre en utilisant le syst`eme KKT. Que se passe-t-il si applique la meme technique


au probl`eme equivalent
1
min kx ak2 .
x1 =0 2
2

En deduire linportance de la qualification des contraintes.


Preuve 9.12 Demonstration : Pour le premier probl`eme, on a L(x, ) = (x1 a1 )2 +
(x2 a2 )2 + x1 . Les contraintes sont qualifiees car h0 (x) = [1, 0] qui est de rang 1, donc
surjective. Le syst`eme KTL est
L(x,)

0 =
x1 = x1 a1 +
L(x,)
0 = x2 = x2 a2
L(x,)

0 = = x1


Lunique candidat solution est donc x1 = 0, x2 = a2 et = a1 . Puisque le probl`eme admet
une solution (projection sur un espace vectoriel de dimension finie), celle-ci est (0, a2 ).
Pour le second probl`eme, h0 (x) = [2x1 , 0]. Le syst`eme KKT est
L(x,)

0 =
x1 = x1 a1 + 2x1
L(x,)
0 = x2 = x2 a2
L(x,)

0 = = x21


qui nadmet pas de solution o` u la contrainte est qualifiee. Il ne faut pas conclure que ce
probl`eme nadmet pas de solution, mais simplement que sil y a une solution, elle ne verifie
pas la qualification des contraintes, donc elle verifie x1 = 0.
2
Exemple 9.7 Extrema du quotient de Rayleigh. Soit A une matrice symetrique. Resoudre
les probl`emes
1 1 xT Ax
min xT Ax min
kxk22 =1 2 x 2 kxk2
2
et
1
max xT Ax,
kxk22 =1 2

et montrer que les valeurs propres de A sont les valeurs des optima.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
108 Chapitre 9 : Optimisation avec contraintes

Preuve 9.13 Demonstration : On forme L(x, ) = 12 xT Ax + 12 (kxk22 1). Alors le


syst`eme KKT est (
0 = L(x,)
x = xT A + xT
L(x,)
0 = = xT x 1

Regardons la qualification des contraintes. En tout x tel que xT x = 1 h0 (x) = 2xT est
de rang 1 donc surjectif. Donc toute solution du probl`eme de depart est une solution du
syst`eme KTL.
Les solutions du syst`eme KKT sont Ax = x et kxk = 1, ce sont donc les vecteurs
propres de A normalises. On sait que A est diagonalisable dans une base orthonormale et
il existe n valeurs propres (distinctes ou non) 1 n telles que Avi = vi . Pour
chaque vi , f (vi ) = i . On en deduit que la valeur minimale est 1 . En raisonnant sur A,
on obtient que la valeur maximale est n .

Exercice 9.11 (Condition necessaire au 2`eme ordre de Kuhn-Tucker-Lagrange (KTL)


ou de Karush-Kuhn-Tucker (KKT)) On suppose que x C est une solution locale de P
et verifiant lhypoth`ese de qualification des contraintes. Si les fonctions f et h sont deux
fois continument differentiables dans un ouvert O contenant x Rm , appele
, il existe
multiplicateur de Lagrange, tel que
= f 0 ( T h0 (
 L
x (x, ) x) + x) = 0,
L T
(x, )=h(
x) = 0,

) = Kerh0 (
et pour tout Kt (C, x x),

2 L(
x, )
T 0.
x2
Preuve 9.14 Demonstration : Soit x C est une solution locale de P et soit
Kt (C, x). Soit alors la suite (xn ) et la suite positive (tn ) associees a
` . Alors en faisant un
developpment de Taylor Young de x 7 L(x, ) on obtient

T h(xn ) = f ( T h( L n 1 2L n
f (xn )+ x)+ x)+ ( x, )(x x)+ (xn x)T 2 ( x, )(x x)+kxn x k2 (xn
x),
x 2 x
(9.1)
ce qui donne, en utilisant h(xn ) = h(
x) = 0, la condition du premier ordre, et le caract`ere
local du minimum contraint de f :

1 2L nx
)T 2 (
0 (xn x x, )(x k2 (xn x
) + kxn x ).
2 x
En multipliant cette equation par t2n et en passant a la limite n +, on obtient

2L
0 T (
x, ).
x2

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
109 Chapitre 9 : Optimisation avec contraintes

Exercice 9.12 (Condition suffisante au 2`eme ordre de Kuhn-Tucker-Lagrange (KTL)


ou de Karush-Kuhn-Tucker (KKT)) On suppose que les fonctions f et h sont deux fois
continument differentiables dans un ouvert O.
Rm , appele multiplicateur de Lagrange, tels que
Rn , et
Sil existe x
= f 0 ( T h0 (
 L
x (
x, ) x) + x) = 0,
(9.2)
L T
(
x, )=h(x) = 0,

et pour tout 6= 0 tel que Kt (C, x


), on a

2 L(
x, )
T > 0, (9.3)
x2
C est une solution locale de P.
alors x

Preuve 9.15 Demonstration : On demontre le resultat par labsurde. On suppose vraies


les equations (9.2) et (9.4) et que x C nest pas une solution locale de P. Il existe alors
une suite delements de C, notee (xk ), tendant vers x, telle que f (xk ) f (
x). La suite

n = kxxnn
x
xk
e tant dans la boule unit
e qui est compacte en dimension finie, elle admet un
1
une sous-suite convergente vers . En posant n = kxn xk , il apparat que Kt (C, x ).
En reprenant le developpement (9.1), on obtient

1 2L nx
)T 2 (
0 (xn x x, )(x k2 (xn x
) + kxn x ).
2 x
En multipliant par n2 et en passant `
a la limite n +, on obtient

1 2L
0 T 2 (
x, ),
2 x
ce qui est la contradiction attendue.
2

Exercice 9.13 (Interpretation des multiplicateurs de Lagrange) On consid`ere les probl`emes

Pu : min f (x), et P : min f (x),


h(x) = u h(x) = 0

et on pose (u) = inf{f (x), h(x) = u}. On suppose que f et h sont deux fois contin
ument
derivables dans un voisinage de x
sachant que
est un point regulier de C (h0 (
1. le point x x) est surjectif ),
est une solution locale de P ,
2. le point x
) = Ker(h0 (
3. pour tout 6= 0 tel que Kt (C, x x)), on a

2 L(
x, )
T > 0. (9.4)
x2

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
110 Chapitre 9 : Optimisation avec contraintes

Alors il existe un voisinage de u = 0 Rm , o` u Pu admet une solution locale x(u) et un


multiplicateur de Lagrange associe (u). La fonction u 7 (u) est alors derivable en u = 0
et on a (0) = (0).
Appliquer ce resultat `
a lexercice 9.5.

Preuve 9.16 Demonstration : LA demonstration se fait en plusieurs etapes.


tel que
1. Dapr`es 1. et 2. de lenonce et lexercice 9.11 il existe
L = f 0 ( T h0 (

x (
x, ) x) + x) = 0,
L T
(
x, )=h(
x) = 0,

2. Lemme preliminaire. Sous les hypoth`eses de lenonce, la matrice


" 2 #
L(
x,) 0T
x2
h (
x )
h0 (
x) O

est injective carree donc inversible. Soit en effet (x1 , 1 )T un vecteur du noyau de
cette matrice. Il verifie
2 L(
x, ) 0
2
x)1 = 0 et h0 (
x1 + h T ( x)x1 = 0,
x
et
2 L(
x, ) 2
T 0T T L(
x, )
xT1 2
x 1 + x 1 h (
x ) 1 = x 1 2
x1 = 0.
x x
Lhypoth`ese 3. montre alors que comme x1 Ker(h0 ( x) , on a x1 = 0, et donc
0 0
x)1 = 0. Comme h0 (
h T ( x) est surjectif, la formule du rang sur h T ( x) montre que
0T
h ( x) est injectif, et donc 1 = 0.
3. Considerons le syst`eme KTL perturbe
 0
f (x) + T h0 (x)

g((x, ), u) = = 0.
h(x) u

Notons z = (x, ). La fonction (z, u) 7 g(z, u) verifie


g(( 0) = 0,
x, ),
g est deux fois continument differentiable dans un ouvert contenant (( 0),
x, ),
et la matrice
 " 2 L(x,)

#
f (x) + i 2 hi (x) h0 T (x)
 2
g(z, u) 0
P
h T (x)
= = x2
z h0 (x) 0 h0 (x) 0

est inversible dapr`es le lemme preliminaire.


On peut donc appliquer le theor`eme des fonctions implicites pour montrer quil existe
des fonctions definies au voisinage de u = 0, derivables en 0, notees u 7 x(u) et
u 7 (u) telles que
f (x(u)) + (u)T h0 (x(u))
 0 
= 0. (9.5)
h(x(u)) u

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
111 Chapitre 9 : Optimisation avec contraintes

La derivee de u 7 (u) = f (x(u)) est alors, par composition, 0 (0) = f 0 (x(0))x0 (0).
En derivant h(x(u)) u par rapport ` a u en 0, on obtient h0 (x(u))x0 (0) = I. En
0 T 0
multipliant f (x(0)) + (0) h (x(0)) = 0 ` a droite par x0 (0) on obtient 0 (0) =
T 0 T
(0) h (x(0))x0 (0) = (0) .
a montrer que x(u) est une solution locale de pour u suffisamment petit et
4. Il reste `
pour cela on montre que les hypoth`eses de lexercice 9.12 sont satisfaites pour Pu .
La relation (9.5) montre que (9.2) est vraie pour le probl`eme perturbe et pour kuk
suffisamment petit.

Enfin la relation (9.4) est vraie pour le probl`eme perturbe Pu gr ace `a un argument
2 L(x(u),(u))
de continuite. Supposons pour etablir une contradiction que x2
nest pas
definie positive dasn le noyau de h0 (x(u)), meme pour u tr`es petit. Il existe alors une
suite xk telle que kuk k k1 et telle que pour tout k il existe vk tel que

2 L(xk , k )
h0 (x(uk ))vk = 0 et vkT vk 0. (9.6)
x2
Quitte a renormaliser vk , on peut supposer vk de norme 1. On a alors vk appartient
a la sph`ere unite, et il existe k0 tel que k k0 entrane k
` x x(uk )k 1/2. Ainsi
(vk ) et x(uk ) sont dans des ensembles compacts, et il est possible den extraire deux
sous-suites qui convergent vers v et x . En passant a la limite k + dans (9.6)
on obtient
2 L(
x, )
kv k = 1, h0 ( v = 0 et vT
x) v 0,
x2
ce qui est impossible dapr`es lhypoth`ese 3..
a lexercice 9.5, si lon perturbe la surface en S/2 + u, le
5. Pour finir, si on revient `
q 3 q
volume est S6 + u2 S6 + o(u)

9.4 Cas du probl`


eme quadratique `
a contraintes lin
eaires
Nous voyons ici un algorithme servant ` a resoudre des probl`emes quadratiques `
a contraintes
degalites. Cet algorithme est loin detre le seul posssible, mais les autres techniques sortent
du cadre de ce cours. On sinteresse ` a
1 T
P : min x Ax xT b,
Bx = 0 2

u A Rnn est symetrique definie positive, et B Rmn est surjective (i.e. de rang
o`
maximum m). Ce sous-probl`eme intervient dans les methodes SQP o` u la fonction est
representee par un mod`ele quadratique, et les contraintes sont linearisees.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
112 Chapitre 9 : Optimisation avec contraintes

Exercice 9.14 Verifiez lhypoth`ese de qualification des contraintes et montrez que le


syst`eme KKT associe `
a ce probl`eme est
Ax + B T = b

KKT : (9.7)
B = 0
Montrez toute solution de ce syst`eme, est solution du probl`eme P.

Preuve 9.17 Demonstration : On introduit L(x, ) = 12 xT Ax xT b + T Bx. On a alors


 L T T T
x (x, ) = x A b + B = 0,
L T T
(x, )=x B = 0,

ce qui secrit encore en transposant


Ax + B T = b


Bx = 0
Si une solution du syst`eme existe et est unique, elle verifie la condition suffisante du second
2
ordre de lexercice 9.12 car xL2 (x, ) = A est definie positive.
2

Exercice 9.15 Montrez que le syst`eme KKT admet une unique solution, et donc que
lunique solution de KKT est lunique solution de P.

Preuve 9.18 Demonstration : Pour cela il suffit de montrer que la matrice du syst`eme
lineaire est injective et carree, donc inversible. Suposons que
Ax + B T = 0


Bx = 0

En multipliant la premi`ere equation par xT , il vient xT Ax + (Bx)T = 0, cest `


a dire
xT Ax = 0 puisque Bx = 0. Comme A est definie positive, il vient x = 0 donc B T = 0.
Comme B T est injective, on a = 0, dont le noyau est reduit au vecteur nul.
2
Pour le reste de lenonce on suppose que  est un reel strictement positif.
Exercice 9.16 Montrez que la solution du syst`eme
Ax + B T  = b

(9.8)
Bx  = 0
existe et est unique. Par elimination de la variable  , montrez que x est solution dune
equation
A x = b , (9.9)
u A Rmn , et b Rn . Montrez que A est symetrique et definie positive. On remar-
o`
quera que le syst`eme (9.9) est de dimension plus petite que le syst`eme (9.8), mais quil
peut etre plus mal conditionne pour  petit.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
113 Chapitre 9 : Optimisation avec contraintes

Preuve 9.19 Demonstration : En remplacant la seconde equation de (9.9) dans la premi`ere,


on obtient (A + 1 B T B)x = b . do` u xT A x = xT Ax + 1 kBx k22 0 car somme de
termes positifs. Si x A x = 0, alors xT Ax = 0 donc x = 0, ce qui prouve que A est
T  

definie positive. Le syst`eme est mal conditionnne pour  petit, car si m < n, B T B est sin-
guli`ere, et on demontrerait que le conditionnement de A se comporte asymptotiquement
comme celui de 1 B T B (i.e. tend vers +).

Exercice 9.17 Montrez que x est solution de (9.9) si et seulement si x est solution de

1 T  1
min x Ax + kBx k22 xT b.
xT Rn 2 2

Interpreter ce resultat comme la resoltution dun probl`eme doptimisation avec contrainte


par penalisation de la contrainte.

Preuve 9.20 Demonstration : Le probl`eme doptimisation est simplement minx Rn 12 xT A x


xT b, et comme A est definie positive, la condition necessaire et suffisante doptimalite
est bien A x = b. Lorsque  est petit, le minimum sera atteint vraisemblablement pour
kBx k2 petit. On dit quon a penalise la contrainte, du probl`eme P.

Exercice 9.18 On suppose que (x, ) et (x ,  ) sont solutions respectives de (9.7) et (9.8).
a la limite de (x ,  ) pour  0.
On sinteresse `
1. Montrez que x = x x et  =  verifient

Ax + B T  = 0

(9.10)
Bx  = 

2. En deduire que lon a


2 2
kx k2 +   2  kk2  2 , (9.11)

u > 0 est la plus petite valeur propre de A.


o`
3. Montrez que la matrice BA1 B T est definie positive. Soit sa plus petite valeur
propre. En repartant de (9.10), montrez que

(BA1 B T + I) = ,

et en deduire que
 2  kk2 , (9.12)
puis que p
kx k2  kk2 . (9.13)

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
114 Chapitre 9 : Optimisation avec contraintes

4. Deduire des questions precedentes que lim0  = et lim0 x = x, et que lerreur


se comporte en O().

Preuve 9.21 Demonstration :


1. Il suffit de faire les differences equation `
a equation dans les syst`emes (9.7) et (9.8)
pour obtenir le syst`eme (9.10).
2. En multipliant le premi`ere equation de (9.10) `a gauche par x , puis la seconde a
`
  T   T   T 
2

gauche par , et en sommant, on obtient x Ax + x B Bx +  2 =
2 T
 T . En utilisant lexercice 9.7, on obtient que kx k2 x Ax ce qui montre
que
2 2 T
0 kx k2 +   2 =  = | |.
Le resultat (9.11) est alors une consequence de linegalite de Cauchy-Schwarz.
3. En injectant x = A1 B T  issu de la premi`ere equation de (9.10) dans la seconde
equation de (9.10), on obtient

(BA1 B T + I) = ,
T
puis en multipliant par  `
a gauche, et en se rappelant lexercice 9.7,
2 T T 2 T
 2  BA1 B T   BA1 B T  +   2 =  .
T
a nouveau linegalite de Cauchy-Schwarz, on a   2 kk2 , puis
en utilisant `

 2  kk2 , ce qui est bien (9.12). En utilisant (9.12) dans (9.10), on obtient

2 2 2 2
kk22 ,

kx k2 kx k2 +   2  kk2  2

ce qui est bien (9.14).


4. Le resultat est obtenu par passage `
a la limite dans (9.12) et (9.14).

Exercice 9.19 Cas o` u B est de rang strictement inferieur `a min{m, n}. On suppose que
(x, ) et (x ,  ) sont solutions respectives de (9.7) et (9.8). On sinteresse a
` la limite de
 
(x , ) pour  0.
1. Verifiez que la solution du syst`eme (9.8) existe et est unique.
2 2
2. Appelant > 0 la plus petite valeur propre de A. montrez que kx k2 +   2
1  2 2

2 ( 2 + kk2 ).

3. En conclure que 2 kx k2  kk2 et donc que lim0 x = x. Lerreur est donc

en O( ), et la convergence de  nest pas acquise.

Preuve 9.22 Demonstration :

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
115 Chapitre 9 : Optimisation avec contraintes

1. La demonstration est la meme que pour lexercice 9.16.


2. En reprenant (9.11) (obtenu sans supposer B de rang maximum), on obtient

2 2 1 2
kx k2 +   2  kk2  2 (  2 + kk22 ),

(9.14)
2
2 2
ce qui implique kx k2 + 2  2 12  kk22 , do`
u lon tire 2 kx k2  kk2 .

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
116 Chapitre 9 : Optimisation avec contraintes

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
Chapitre 10

Optimisation avec contraintes


din
egalit
e

10.1 Introduction
Nous avons vu dans le chapitre precedent des conditions necessaires doptimalite pour
des probl`emes
min f (x).
h(x) = 0

Dans de nombreux cas pratique, les contraintes mettent en jeu des contraintes dinegalite
du type g(x) 0, o`u g : Rn 7 Rp et g(x) = (g1 (x), . . . p, gp (x))T . Le probl`eme que nous
avons `
a traiter est donc
P : min f (x).
h(x) = 0
g(x) 0

Le but de ce chapitre est de montrer lextension de la theorie des multiplicateurs de La-


grange pour traiter ce probl`eme. Il sagira aussi de proposer quelques algorithmes pour
resoudre le probl`eme. Lidee centrale du chaptre, qui sera declinee tant au niveau des
resultats theoriques que des resultats algorithmiques, est de reutiliser les algorithmes dop-
timisation avec contraintes.

Definition 10.1 Soit x un point satisfaisant les contraintes et i {1, . . . , m}. On dit que
la contrainte gi est active en x ssi gi (x) = 0.

10.2 Lien avec les contraintes d


egalit
e
Exercice 10.1 On sinteresse au probl`eme

Pa : min (x a)2 .
x4
x 1

Preuve 10.1 Faire un dessin.

117
118 Chapitre 10 : Optimisation avec contraintes dinegalite

Ce probl`eme tr`es simple admet pour solution x = 1 si a 1, x = 4 si a 4, et


sinon, x = a. On voit donc que dans chaque cas, la solution du probl`eme avec contraintes
dinegalite est obtenue en resolvant un probl`eme degalite obtenu en selectionnant un en-
semble (eventuellement vide) de contraintes dinegalite et en les passant en egalite.
Ce resultat est tr`es general, et sapplique aux minima locaux et globaux, comme le
montre la proposition suivante.

Proposition 10.2 Supposons que g et h sont des applications continues. Tout minimum
local x du probl`eme P, et dindices de contraintes actives I est un minimum local du
probl`eme
PI : min f (x).
h(x) = 0
gi (x) = 0, si i I

Preuve 10.2 Demonstration : Soit x S. Soit I lensemble des indices des contraintes
actives en x. Pour tout i / I, il existe i > 0 tel que kx x k < i gi (x) < 0. Soit a
`

present  tel que [kx x k < i et h(x) = 0 et g(x) 0] f (x ) f (x) < 0. Donc si
 = min( , miniI
/ i ), on a [kx x k <  et h(x) = 0 et i I, gi (x) 0] f (x )
f (x) < 0. Donc x est solution locale de PI et i / I, on a gi (x ) < 0.

Exercice 10.2 On consid`ere le probl`eme

min (x 1)2 + (y 2)2 .


x0 ; y0 ; x2
x + 2(y 2) 0

Faire une representation graphique de ce probl`eme. Utiliser le resultat de la proposi-


tion 10.2 pour trouver la solution de ce probl`eme.

Preuve 10.3 Demonstration : Il sagit de trouver la solution en devinant les contraintes


actives. On parcourt donc tous les cas : 0, 1 ou 2 contraintes actives a
` la solution et en
raisonnant sur les courbes de niveau de la fonction, on voit quau minimum global, seule
la contrainte x + 2(y 2) nest active.

10.3 Conditions doptimalit


e
Nous etudions dans cette section les conditions doptimalite au 1er ordre et au second
ordre, en fonction dune fonction Lagrangienne.

a P. On appelle Lagrangien associe `


Definition 10.3 Lagrangien associe ` a P lapplication

L : Rn Rm Rp R
(x, , ) 7 f (x) + T h(x) + T g(x).

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
119 Chapitre 10 : Optimisation avec contraintes dinegalite

a et x constant on a , si f , g et h sont derivables en x, L 0


En derivant ` x (x, )=f (x) +
T h0 (x) + T g 0 (x) = (f (x) + h0 (x)T + g 0 (x)T )T . et Si f et h sont deux fois derivables
2 def
en x, on a alors xL2 (x, ) = 2 f (x) + i 2 hi (x) + i 2 gi (x).
P P

Nous allons deriver des caracterisations des optima locaux du probl`eme sous lhypoth`ese
que les contraintes sont suffisament reguli`eres.
Definition 10.4 (Qualification des contraintes) On dit que les contraintes sont qualifiees
en x, dindices de contraintes actives I(x) = [i1 , . . . im
] si et seulement si
1. h et g sont contin
ument differentiable dans un ouvert de x0 ,
2. la famille de vecteurs (h1 (x), . . . , hm(x), gi1 (x), . . . , gim (x)) est libre. Cette
h0 (x)
condition signifie aussi que la matrice est surjective, o` u x 7 gI (x) =
gI0 (x)
(gi1 (x), . . . , gim (x)) .

Proposition 10.5 On suppose que x C est une solution locale de P verifiant lhypoth`ese
de qualification des contraintes. Si les fonctions f et g et h sont contin ument differentiables
dans un ouvert O contenant x Rm , et
, il existe Rp tel que
= f 0 ( T h0 ( T g 0 (
L
x ( x, ) x) + x) x) = 0,
j 0, j = 1, . . . p,


j gj (
x) = 0, j = 1, . . . p.

Preuve 10.4 Demonstration : Nous presentons ici une demonstration concise, mais moins
intuitive que dans le cas des egalites. Pour toute fonction u on definit sa partie positive
u+ par par u+ (x) = max(0, u(x)). Soit x un minimum local du probl`eme P. Pour tout
entier naturel k, et pour tout reel non ne gatif , on introduit la fonction de type Lagran-
gien Fk (x) = f (x) + 2 kh(x)k + 2 jI [gj+ (x)]2 + 2 kx x
k 2 k P
k. Comme x est une minimum
local du probl`eme avec contrinate degalites h(x) = 0 et gI (x) = 0, il existe une boule
fermee B centree en x et de rayon  telle que f ( x) f (x) pour tout x tel que x B ,
h(x) = 0 et gI (x) = 0. Soit ` a present xk le minimum global de Fk sur B . On a alors
Fk (xk ) Fk (x) = f ( x), et donc la suite (Fk (xk )) est bornee. Comme f (xk ) est bornee
sur le compact B , pour que (Fk (xk )) il faut que (h(xk )) et que pour tout j I, (gj+ (xk ))
tendent vers 0. Soit x un point daccumulation de la suite. Par prolongement de linegalite
Fk (xk ) f ( x) + 2 k
x) inegalie, il verifie f ( xx k f ( x) f (x). Puisque x est admissible
pour le probl`eme ` a contraintes degalite et dinegalites active, et est dans B , on a de plus
x) f (
f ( x). Ainsi, x =x , et la suite (xk ) converge vers x . En ecrivant la condition de
stationnarite de Fk en xk , on obtient

kh1 (xk )
..

.

khm (xk )
f (xk ) + [h1 (xk ), . . . hm (xk ), gi1 (xk ), . . . , gim (xk )]
+ (xk x) = 0.
kgi 1 (x k )

..
.
kgim (xk )

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
120 Chapitre 10 : Optimisation avec contraintes dinegalite

i = limk+ khi (xk ), et


` la limite et en definissant
On obtient le resultat en passant a
+
i = limk+ kgi (xk ) 0. Ces limites existent comme on le voit en multipliant lequation

par la pseudo-inverse de la matrice jacobienne des contraintes degalite.

Nous enoncons ` a present sans demonstration les conditions du second ordre, et la


sensibilite par rapport `
a une modification des contraintes. Ces resultats se deduisent faci-
lement des resultats avec contraintes degalite, en considerant que les contraintes actives,
en exploitant la proposition 10.2.

Proposition 10.6 (Condition necessaire au 2`eme ordre de Kuhn-Tucker-Lagrange (KTL)


ou de Karush-Kuhn-Tucker (KKT)) On suppose que x est une solution locale de P den-
semble de contraiontes actives I, et verifiant lhypoth`ese de qualification des contraintes.
Si les fonctions f , g et h sont deux fois contin ument differentiables dans un ouvert O
contenant x m
, il existe R et p
R , appeles multiplicateurs de Lagrange, tel que
= f 0 ( T h0 ( T g 0 (
L
x (x, ) x) + x) x) = 0,
0, j = 1, . . . p,

j

j gj (
x) = 0, j = 1, . . . p,

et pour tout Kerh0 (


x) KergI0 (
x),

2 L(
x, )
T 2
0.
x
Proposition 10.7 (Interpretation des multiplicateurs de Lagrange) On consid`ere les probl`emes

Pu : min f (x), et P : min f (x),


h(x) = u h(x) = 0
g(x) v g(x) 0

et on pose (u) = inf{f (x), h(x) = u, g(x) v}. On suppose que f et h sont deux fois
ument derivables dans un voisinage de x
contin sachant que
1. le point x
est un point regulier,
2. le point x
, de contraintes actives I, verifie les conditions suivantes doptimalite locale
= f 0 ( T h0 ( T g 0 (
L
(
x, ) x) + x) x) = 0,
x


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

j



j gj ( j > 0, j I,
x) = 0, j = 1, . . . p,

et pour tout Kerh0 (


x) KergI0 (
x),

2 L(
x, )
T > 0.
x2
est alors une solution locale de P,
Le point x

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
121 Chapitre 10 : Optimisation avec contraintes dinegalite

Alors il existe un voisinage de (u, v) = 0 Rm+p , o` u Pu admet une solution locale


x(u, v) et des multiplicateurs de Lagrange associes (u, v) et (u, v). La fonction (u, v) 7
f (x(u, v)) = (u, v) est alors derivable en (u, v) = 0 et on a (u, v) = (0, 0) (0)T u
(0)T v + o((u, v)).

Exercice 10.3 Dans une usine, deux produits ui , i = 1, 2 sont fabriques, et rapportent
par unite, ei kilo euros en necessitant ti heures de travail machines et qi tonnes de mati`eres
premi`eres. On dispose de 10 heures en tout de travail machines, et de 15 tonnes de
mati`eres premi`eres. Formaliser ce probl`eme sous la forme dun probl`eme doptimisation
et le resoudre, pour (e1 , t1 , q1 ) = (6, 2, 1) et (e2 , t2 , q2 ) = (5, 1, 3). Est-il interessant, fi-
nanci`erement, daugmenter la quantite de mati`ere premi`eres ? Jusqu` a quel point ?
Preuve 10.5 Faire un dessin.
min 6x1 5x2 .
2x1 + x2 10
x1 + 3x2 15
x1 0
x2 0

On voit sur un dessin que les contraintes actives ` a la solutions seront les deux premi`eres
contraintes. La solution du probl`eme est donnee par les points critiques de la fonction
L(x, 1 , 2 ) = 6x1 5x2 + 1 (2x1 + x2 10) + mu2 (x1 + x2 15). La solution est donnee
par le syst`eme lineaire
6 + 21 + 2 = 0
5 + 1 + 32 = 0 ,
x1 + 3x2 = 15

ce qui donne (x1 , x2 , 1 , 2 ) = (3, 4, 13/5, 4/5). Si on augemnte les mati`eres premi`eres de
15 `a 15 + M , le gain augmente de 4/5M . Par contre pour M > 15, la seconde contrainte
cesse detre active. Dans ce cas, il ne sert ` a plus rien daugmenter les mati`eres premi`eres,
il faut augmenter aussi les 10 heures machines.
2

10.4 Application de la th
eorie des multiplicateurs de La-
grange : la m
ethode des contraintes actives
Nous avons vu que la reslution du probl`eme doptimisation avec contraintes degalite et
dinegalites se ram`ene `
a la resolution dun probl`eme avec contraintes degalite lorsque les
contraintes actives ` a la solution sont connnues. Le principe de la methode des contraintes
actives et de creer une suite (x(k) , I (k) ) contenant un itere et une estimation des contraintes
actives. Sous des hypoth`eses de convexite du probl`eme, il est possible de montrer que cette
methode est convergente.
Nous presentons ici le passage de (x(k) , I (k) ) `
a (x(k+1) , I (k+1) ) dans le cas dun probl`eme
quadratiquei en x
1 T
min x Hx + xT g.
Ax = b 2
Cx f 0

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
122 Chapitre 10 : Optimisation avec contraintes dinegalite

1. Resolution du probl`eme en la variable d


1 (k)
min (x + d)T H(x(k) + d) + (x(k) + d)T g,
A(x (k)
+ d) = b 2
(C(x(k) + d) f )i = 0, pour i I (k)

pour obtenir d(k) , (k) , et (k) .


a jour de x et I
2. Mise `
(a) Si d(k) = 0, et (k) 0, arret.
(b) Si d(k) = 0, et le vecteur (k) a au moins une composante negative, on choisit
(k)
jk = argminj j , et on pose I (k+1) ) = I (k) ) \ {jk }, et x(k+1) = x(k) .
(c) Si d(k) =
6 0.
i. Si x(k) + d(k) appartient ` a lensemble des contraintes, C = {x, h(x) =
0, et g(x) 0}, on definit x(k+1) = x(k) + d(k) .
ii. Sinon, on calcule le plus grand t [0, 1] tel que x(k) + td(k) C . Soit tk+1
ce scalaire. On pose alors x(k+1) = x(k) + tk d(k) .
Dans ces deux cas, (x(k) + d(k) appartient ou non ` a C), lensemble I (k+1) est
obtenu en rajoutant ` a I (k) lune des contraintes rendues nouvellement actives
en x(k+1) , sil en existe une (contraintes activees par le pas). Sinon, si aucune
contrainte nest activee par le pas, I (k+1) = I (k) .

Exercice 10.4 Appliquer iterativement lalgorithme ci-dessous au probl`eme

min (x 1)2 + (y 2)2 ,


x0 ; y0 ; x2
x + 2(y 2) 0

en partant de x(0) = (2, 0) et I (0) = {2, 3}

Preuve 10.6 Le probl`eme secrit sous forme standard

min (x 1)2 + (y 2)2 .


x 0
y 0
x2
x + 2(y 2) 0

2
1. Le lagrangien du probl`eme secrit

L(d1 , d2 , 2 , 3 ) = (1 + d1 )2 + (d2 2)2 + 2 (d2 ) + 3 (d1 ).

La condition doptimalite donne




2d1 + 2 + 3 = 0
2d2 4 2 = 0

,
d =0
2


2 + d1 = 2
ce qui montre que (d1 , d2 , 2 , 3 ) = (0, 0, 4, 2).

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
123 Chapitre 10 : Optimisation avec contraintes dinegalite

2.b x(1) = (2, 0)T , I (1) = {3}.


1. Le lagrangien du probl`eme secrit

L(d1 , d2 , 2 , 3 ) = (1 + d1 )2 + (d2 2)2 + 3 (d1 ).

La condition doptimalite donne



2d1 + 2 + 3 = 0
2d2 4 = 0 ,
2 + d1 = 2

ce qui montre que (d1 , d2 , 3 ) = (0, 2, 2).


2.c.ii Comme (2, 0) + (0, 2) nest pas dans le domaine, on cherche le plus grand 0
t 1 tel que

2 0
2t 0

,
22

2 + 2(2t 2) 0

On obtient alors t = 1/2, x(3) = (2, 0)+1/2(0, 2) = (2, 1), et on a active la contrainte
4. Donc I (3) = {3, 4}. item[1.] Le lagrangien du probl`eme secrit

L(d1 , d2 , 3 , 4 ) = (1 + d1 )2 + (d2 1)2 + 3 (d1 ) + 4 (d1 + 2d2 ).

La condition doptimalite donne




2d1 + 2 + 3 + mu4 = 0
2d2 2 + 24 = 0

,
d1 = 0

d1 + 2d2 = 0

ce qui montre que (d1 , d2 , 3 , 4 ) = (0, 0, 3, 1).


2.b On enl`eve la contrainte 3. x(4) = (2, 1)T , I (4) = {4}. item[1.] Le lagrangien du
probl`eme secrit

L(d1 , d2 , 3 , 4 ) = (1 + d1 )2 + (d2 1)2 + 4 (d1 + 2d2 ).

La condition doptimalite donne



2d1 + 2 + mu4 = 0
2d2 2 + 24 = 0 ,
d1 + 2d2 = 0

ce qui montre que (d1 , d2 , 4 ) = 1/5(6, 3, 2).


2.c.i x(5) = (4, 8)/5T , appartient lensemble des containtes et I (5) = {4}. Donc on ne
bouge pas. item[1.] Comme on apas bouge, la solution est (d1 , d2 , 4 ) = 1/5(0, 0, 2),
et on a converge.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
124 Chapitre 10 : Optimisation avec contraintes dinegalite

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
Chapitre 11

Introduction `a loptimisation
multicrit`
eres

11.1 Introduction g
en
erale
Jusqu`a present, nous avons considere des situation o`
u il sagissait de minimiser une
unique fonction (un crit`ere) sous certaines contraintes. Cependant, dans bien des situa-
tions pratiques, il sagit de trouver la meilleure situation possible pour un ensemble de
crit`eres. Il est rare que le minimum pour tous ces crit`eres soit atteint au meme point.
Il sagit donc de faire compromis entre ces crit`eres, et cest le but de ce chapitre dindi-
quer le sens que prend alors le mot solution dun tel probl`eme de minimisation, et de
mentionner quelques algorithmes permettant dobtenir de telles solutions.

Exemple 11.1 Conception daile davion multicrit`ere. Nous considerons une conception
daile telle que lon veuille minimiser simultannement la trainee en plusieurs conditions de
croisi`ere (plusieurs conditions de vol) simultanement. Nous considerons alors le probl`eme

min(f1 (x), . . . , fp (x))


sous {gi (x) pi , i = 1, . . . , p}

chaque fi (x) represente la valeur de la tranee pour la condition de vol i. La i-`eme


contrainte gi (x) pi correspond `
a une condition de portance. Un pratique quelques cen-
taines de param`etre au plus sont consideres, et le calcul de des fonctions et des gradients
met en jeu des calculs CFD co uteux.

Definition 11.2 On appelle espace des crit`eres lespace dans lequel les differentes sur-
faces du probl`eme sont parametres en prenant les crit`eres comme param`etres. Lexer-
cice 11.1 explicite cette notion.

Exercice 11.1 Considerons le probl`eme

min(f1 (x), f2 (x))


subject to x 0,

125
126 Chapitre 11 : Introduction `
a loptimisation multicrit`eres


u f1 (x) = 1 + x et f2 (x) = x2 4x + 5. Lespace de decision est R et lespace des
o`
crit`eres est R2 . Figure 11.1 represente le probl`eme dans lespace de decision. Nous voyons
que f1 and f2 natteignent pas de minimum pour les memes valeurs de x dans [0, +[.
Representer la situation dans lespace des crit`eres.

Preuve 11.1 Demonstration : Considerons ` a present lespace des crit`eres. Dans cet es-
pace, le probl`eme est parametrise en utilisant les valeurs des fi (x) comme param`etre. Pour
obtenir
limage de lensemble des points admissibles dans lespace des crit`eres, nous posons
y1 = 1 + x et y2 = x2 4x + 5. la condition x 0 devient x = (y1 )2 1 et y1 1.
En substituant x = (y1 )2 1 dans y2 = x2 4x + 5 on obtient y2 = y14 6y12 + 10.
Ainsi, lensemble des contraintes {x : x 0} est represente dans lespace des crit`eres
par larc {(y1 , y2 ) : y2 = y14 6y12 + 10, y1 1}, illustre en gras sur la Figure 11.4. Le
point important est de decider quel point sur cet arc est la meilleure solution du probl`eme
multicrit`ere.

6
f1 (x) =5 4x+x2
4
1
f2 (x) =(x+1)2
2

0 2 4 6
x

Figure 11.1 Probl`eme dans lespace de decision.

Il sagit maintenant de donner un sens ` a minimiser la fonction vectorielle f (x) =


(f1 (x), . . . , fm (x)), ce qui na pas de sens precis a priori.

Definition 11.3 Le vecteur x C domine x C ssi


on a fi (x) fi (x) pour chacun des crit`eres fi ,
x) < fi0 (x) pour un certain i0 {1, . . . , k}.
il existe i0 tel que fi0 (
C est dit Pareto optimal ssi il nest domine par aucun autre vecteur x C.
Un vecteur x

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
127 Chapitre 11 : Introduction `
a loptimisation multicrit`eres

10

y1 = 3
8

y2 6
y2 =y14 6y12 +10
4

0
0 1 2 3 4
y1

Figure 11.2 Probl`eme dans lespace des crit`eres.

Figure 11.3 Front de Pareto en gras. f (X ) est limage des contraintes.

Lensemble Y := {(f1 (x), . . . , fk (x)) | x Pareto optimal} est appele front (ou sur-
face) de Pareto pour le probl`eme doptimisation multicrit`ere donne. On voit sur la fi-
gure 11.4 quen general, que cet ensemble Y nest pas un ensemble tr`es simple. Dans un
probl`eme multicrit`ere la personne chargee de la minimisation cherche en general plusieurs
(et idealement, toutes les) solutions Pareto optimales. Cest ensuite un decideur qui fait
sa preference en fonction de crit`eres plus ou moins formalises mathematiquement.
Un technique tr`es rependue dexploration du front de Pareto est la technique de la

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
128 Chapitre 11 : Introduction `
a loptimisation multicrit`eres

somme ponderee. On introduit le probl`eme auxilliaire


 Pk
min i=1 pi fi (x)
(Pp )
x C.

Cette procedure est dite de scalarisation (on remplace la minimisation dun vecteur par
celle dun scalaire).

Exercice 11.2 Toute solution de Pp est un point Pareto optimal pour le probl`eme de
minimisation multicrit`ere de (f1 , . . . , fk ) sur C. Interpreter geometriquement ce resultat.
Cette technique permet-elle de decrire compl`etement le front de Pareto sur la figure 11.4 ?

est solution de Pp et quil existe x C


Preuve 11.2 Demonstration : Supposons que x
qui domine x. Dapr`es la definition,

fi (x) fi (
x) pour tout i = 1, . . . , k

et
x) pour un certain i0 {1, . . . , k} .
fi0 (x) < fi0 (
Pk Pk
On a alors i=1 pi fi (x) < i=1 pi fi (x), ce qui contredit le fait que x
est solution de
(Pp ).
Interpretons geometriquement cette procedure de scalarisation (avec deux crit`eres f1
et f2 ).
Pour resoudre (Pp ), on minimise p1 y1 + p2 y2 sur F = f (C) ce qui correspond ` a
chercher une droite p1 y1 + p2 y2 = c dordonnee `a lorigine minimale et sappuyant sur F.
Non, si le front de Pareto nest pas lui meme convexe, cette technique ne permet pas de
decrire la totalite du front.

Une autre technique de scalarisation fort employee est la technique C -contrainte, o`u
a un probll`eme mono-crit`ere en traitant les p1 autres crit`eres sous forme
lon se ram`eme `
de contrainte. Pour ce faire, on introduit le probl`eme

min fj (x) 
P(, j) : xX , (11.1)
subject to
fi (x) i , i = 1, . . . , p, i 6= j

La Figure 11.4 montre le comportement de la methode pour p = 2 et j = 2, pour un


ensemble f (X ) qui nest pas convexe, avec 4 valeurs differentes pour 1 . On voit sur cet
exemple que la technique C -contrainte permet de mieux decrire le front de Pareto.

Exercice 11.3 Supposons que P(, j) admette une solution unique x , alors elle est Pareto
optimale. Reciproquement toute solution Pareto optimale est solution dun certain P(, j).
Appliquer ce resultat au probl`eme de la figure 11.4.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
129 Chapitre 11 : Introduction `
a loptimisation multicrit`eres

Figure 11.4 Methode C pour divers 1 .

est solution de P(, j) et quil existe x


Preuve 11.3 Demonstration : Supposons que x
C qui domine x. Dapr`es la definition,

fi (x) fi (
x) pour tout i = 1, . . . , k

et
x) pour un certain i0 {1, . . . , k} .
fi0 (x) < fi0 (
Alors x est une autre solution de P(, j), ce qui est impossible. La reciproque setablit
aisement en considerant P(, j) pour  = (f1 ( x))T et j = 1.
x), . . . , fk (

Exercice 11.4 Toute solution de commune ` a P(, j), pour j = 1, . . . k, est un point Pareto
optimal pour le probl`eme de minimisation multicrit`ere de (f1 , . . . , fk ) sur C. Reciproquement,
si x
est Pareto optimal, il existe  tel que x est solution de tous les probl`emes P(, j), pour
j = 1, . . . k. Interpreter geometriquement ce resultat.

Preuve 11.4 Demonstration : Supposons que x est solution de P(, j) pour tout j et quil
existe x C qui domine x. Dapr`es la definition,

fi (x) fi (
x) i pour tout i = 1, . . . , k

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.
130 Chapitre 11 : Introduction `
a loptimisation multicrit`eres

et
x) pour un certain i0 {1, . . . , k} .
fi0 (x) < fi0 (
Cela qui contredit le fait que x est solution de P(, i0 ). Pour la reciproque, il suffit de
prendre  = (f1 ( x))T . Alors x
x), . . . , fk ( est solution de P(, j) pour tout j.

Les techniques les plus sures pour decrire le front meme lorsquil nest pas convexe
sont basees sur des algorithmes genetiques. Ces techniques ont besoin devaluer de tr`es
nombreuses fois les fonctions et sont donc peu praticables pour les fonctions tr`es co
uteuses
que lon ne sait pas approximer avec peu de calculs. De nombreuses techniques dapproxi-
mation sont disponibles pour resoudre ces probl`emes : utilisation de reseaux de neurones,
de techniques krigeage, ou de support vector machines.

Ress. Pedag. Ouv. INPT, 0727 (2014) 24h


S. Gratton, Analyse matricielle et Optimisation, Ed.

You might also like