00poly PDF
00poly PDF
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
Table des matières
I Analyse matricielle 5
3
4 Table des matières
II Optimisation 75
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
Première partie
Analyse matricielle
5
Chapitre 1
1.1 Introduction
Le but de ce chapitre est de présenter les principales notations qui seront utilisées dans
ce cours. Il s’agit aussi de rappeler des relations entre noyau et image de matrices, qui
seront massivement utilisées, notamment lors de la résolution de problèmes d’estimation
de paramètres par moindres carrés linéaires. Enfin un rappel sera fait sur le procédé
d’orthogonalisation de Schmidt, qui sera ré-écrit sous la forme de factorisation QR d’une
matrice ; c’est ce point de vue matriciel qui sera adopté le plus possible dans la suite.
7
8 Chapitre 1 : Compléments d’algèbre matricielle
– le produit de matrices :
k=n
X
A = (aik ), B = (bkj ) 7−→ A B = (cij ) avec cij = aik bkj
k=1
m×
n
n×l m×l
1. En Algèbre, la notation usuelle pour la transposée (resp. transposée-conjuguée) est le plus souvent
t
A (resp. A∗ ).
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
9 Chapitre 1 : Compléments d’algèbre matricielle
12. A est tridiagonale ssi i > j + 1 et i < j + 1 ⇒ aij = 0, c’est à dire ssi A est
nullesous la première sous-diagonale
et au-dessus de la première sur-diagonale :
× × 0
× ... ...
A=
.. .. .. .
. . .
.. ..
. . ×
0 × ×
De même, on considèrera souvent les matrices rectangulaires suivantes :
1. A ∈ Rm×n , m > n, est orthonormale si AH A = I. Une matrice carrée (m = n)
orthonormale est unitaire.
2. A est triangulaire supérieure (ou trapèze) si j < i ⇒ aij = 0.
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
10 Chapitre 1 : Compléments d’algèbre matricielle
0 −u3 u2
on déduit que A = u3 0 −u1 . La matrice A est réelle anti-symmétrique
−u2 u1 0
(AT = −A). Son déterminant est 0 (car Au = 0) et sa trace est 0. Donc son polynôme
caractéristique sécrit p(λ) = λ3 + aλ. Un calcul direct montre que p(λ) = λ3 + kuk22 λ. 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 d’opérations. Soit Q ∈ Rm×1 et Z ∈ Rm×k des ma-
trices denses (à éléments non nuls). On considère deux algorithmes d’évaluation de QQT Z.
L’agorithme A1 implante (QQT )Z, l’algorithme A2 implante Q(QT Z). Comparez ces deux
algorithmes suivant leur nombre d’opérations et le coût mémoire de stockage des ma-
trices intermédiaires. On utilisera le fait qu’un produit matrice-vecteur Ax coûte environ
2nnz(A) opérations où nnz(A) est le nombre de non-zeros de A.
Exercice 1.4 Le détermimant est-il une mesure raisonable de la singularité d’une ma-
trice ? Soit A ∈ Rn×n une matrice carrée inversible. Que vaut det αA en fonction de
det A ? (Application numerique pour A la matrice identité et n = 100 et α = 10−1 ). On
calcule det (A) sur un ordinateur réalisant 4 · 109 opérations 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 d’ordre 100 ?
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
11 Chapitre 1 : Compléments d’algèbre matricielle
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
12 Chapitre 1 : Compléments d’algèbre matricielle
les deux familles {q1 , . . . qj } et {a1 , . . . aj } génèrent le même espace. Montrez que cela peut
se faire en à peu près 2np2 opérations.
On en déduit le résultat suivant : Soit A ∈ Rm×n de rang n. La matrice A peut
être factorisée en A = QR où Q ∈ Rm×n est orthogonale et R ∈ Rn×n est triangulaire
supérieure à éléments positifs sur la diagonale.
et donc P (k) est vraie. Pour résumer, on définit p vecteurs orthonormaux q1 , . . . , qp , par
l’algorithme
a1
– q1 = (coût 3n opérations)
ka1 k2
– pour j variant de 2 jusqu’à p, (coût de l’ordre de 4n pj=2 j ∼ 2np2 )
P
Pj−1
– q̄j = aj − i=1 rij qi , (coût (j − 1)2n opérations)
– avec rij = qiT ak , i = 1, . . . j − 1 (coût (j − 1)2n opérations)
q̄
– rj,j = kq̄j k2 et qj = rjjj (coût 3n opérations).
D’après la formule du rang la condition rg(A) = n montre que Ker(A) = {0} et donc
que les colonnes de A sont linéairement indépendantes. En utilisant le théorème
Pj−1 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 s’écrit matriciellement A = QR, où Q = [q, . . . qn ] et
R = [rij ]i∈{1...n},j∈{1...n} .
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
Chapitre 2
2.1 Introduction
La plupart des problèmes de la physique mettent en jeu des quantités approchées
connues par exemple avec un certain pourcentage d’erreur. Lorsque ces problèmes sont
résolus sur ordinateur, se pose naturellement la question de la mesure des erreurs à la fin
du processus de calcul. De même, lorsque des processus itératifs sont utilisés pour le calcul
des solutions, notamment pour les problèmes non linéaires, la détection de la convergence
s’exprime naturellement en termes de normes de vecteurs. Ainsi la première partie de ce
chapitre est consacrée à un exposé élémentaire de la notion de norme de vecteur.
Enfin, lorsqu’une analyse d’erreur est menée et que des opérateurs linéaires sont en
jeu, comme c’est le cas lors de la résolution de systèmes d’équations linéaires ou linéarisés,
cette analyse est grandement facilitée par l’emploi de normes matricielles, qui seront
présentées en fin de chapitre.
Proposition 2.2 On sait qu’en dimension finie, toutes les normes sont équivalentes.
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
Exercice 2.1 Utilisation de normes relatives. Supposons que X et Y sont deux nombres
entiers positifs représentés 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 quantité erreur relative % = |X−Y |
|X| . Généraliser au cas ou l’accord 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 Démonstration. Commencons par un exemple où X = 271828. Dans la table
ci-dessous, la quantité % est donnée pour plusieurs valeurs de Y :
approximation %
200000 2 · 10−1
270000 6 · 10−3
271000 3 · 10−3
271800 1 · 10−4
271820 6 · 10−5
Cet exemple montre que le nombre de chiffres de tête en commun a l’air d’être lié à la
valeur de %. Reprenons un cas plus général. Le plus grand écart 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
l’écart est 999. L’erreur relative est donc majorée par 100000 < 10−2 . Plus généralement
si xi = yi pour i = 1 . . . p. L’écart maximal est 10n−p (majorant de l’écart entre 9| .{z
. . 9} et
n−p
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
15 Chapitre 2 : Normes de vecteurs et de matrices
10n−p
0| .{z
. . 0}) l’erreur relative est majorée par 10n−1
= 101−p . Donc si l’erreur relative excède
n−p
101−p , on est sûr que X et Y ont moins de p chiffres de tête en commun. La quantité
% est donc très utile lorsque les erreurs sont exprimées en terme de chiffres significatifs,
ce qui est souvent le cas lorsque l’on traite des quantités physiques mesurées. L’extension
aux vecteurs est délicate et dépend 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 kX−Y k∞
kXk∞ = 3·10 ,
−3
alors que les erreurs composantes à composantes sont (2 · 10−3 , 3 · 10−1 , 1 · 100 )T . Donc
l’erreur en norme est plutôt liée dans ce cas au nombre de chiffres de tête en commun sur
la plus grande composante.
Ces notions se généralisent aisément aux matrices rectangulaires. On définit par exemple
ainsi, pour A ∈ Rm×n ,
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 Démonstration. : Posons C = AB et soit ai la ième P ligne de A et bj la
jème colonne de B. Alors pour tout i, j cij = aTi bj . Donc kCk2F = ij (aTi bj )2 . D’après
l’inégalité de Cauchy-Schwarz, pour tout i, j, (aTi bj )2 ≤ kai k22 kbj k22 , donc
X X
kCk2F ≤ kai k22 kbj k22 .
i j
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
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 ∈ Rm×n . Montrez que les normes induites par les normes de
vecteur kxk1 et kxk∞ sont respectivement :
n
X
kAk1 = max |aij |
1≤j≤n
i=1
Xm
kAk∞ = max |aij |
1≤i≤m
j=1
Pm
Preuve 2.4 Démonstration. Première égalité. Soit y = Ax et C1 = max1≤j≤n 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 , d’où kAk1 ≤ C1 . D’autre part, soit j0 l’indice permettant
le max dans C1 et ej0 le j0 -ème vecteur de base canonique. Alors kej0 k1 = 1 et
d’atteindre P
kAej0 k1 = ni=1 |aij0 | = C1 kej0 k1 , d’où kAk1 ≥ C1 et donc kAk1 = C1 .
Pm
Deuxième égalité. Soit à présent Cinf = max1≤i≤m 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 l’indice permettant d’atteindre 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 résultat 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∞ , d’où Cinf ≤ kAk∞ et donc Cinf = kAk∞ .
où ρ est le rayon spectral défini comme le plus grand module des valeurs propres de A :
ρ(A) = max{|λ|, λ valeur propre de A}
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
17 Chapitre 2 : Normes de vecteurs et de matrices
Definition 2.7 Une norme k.k est dite unitairement invariante si, quelles que soient les
matrices (carrées) unitaires Q et Q0 , alors
i) pour un vecteur x quelconque, kxk = kQxk où k.k est une norme de vecteur,
ii) pour une matrice A rectangulaire quelconque, kAk = kQAk = kAQ0 k = kQAQ0 k,
où k.k est une norme de matrice.
kAk = ρ(A).
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
18 Chapitre 2 : Normes de vecteurs et de matrices
kAk ≤ ρ(A) + .
1. Soit x un vecteur propre associé à une valeur propre λ de plus grand module, ρ(A).
Alors,
kX −1 AXxk∞
Par définition, kDk∞ = maxx6=0 . On introduit ν(z) = kX −1 zk∞ .
kxk∞
On montre que ν est une norme (cf définition 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∞ = kαX −1 xk∞ . Or comme k.k∞ est une norme, kαX −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 déduit, 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)
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
19 Chapitre 2 : Normes de vecteurs et de matrices
3. Admis
4. i) ⇒ ii) Etant donné x, l’inégalité 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.
I − Ak+1 = (I − A)(I + A + · · · + Ak ).
La propriété i) permet de conclure que (I−A)−1 Ak+1 → 0, c’est à dire k(I − A)−1 − ki=0 Ai k →
P
0 quand k → ∞.
D’autre part, si I − A est singulière, au moins une des valeurs propres de A est égale
à 1. Donc
1 ≤ ρ(A) ≤ kAk, ( pour toute norme matricielle.)
6. D’après la proposition 2.9, ρ(Ak ) = ρ(A)k ≤ kAk k, d’où, pour tout k, ρ(A) ≤
A
kAk k1/k . Soit > 0 et A() = ρ(A)+ . Alors ρ(A()) < 1, et donc limk→∞ kA()k k = 0
d’après 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 résultats, pour tout , il existe N tel que si k > N , on a ρ(A) ≤
kAk k1/k ≤ ρ(A) + , ce qui implique le résultat.
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
20 Chapitre 2 : Normes de vecteurs et de matrices
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
Chapitre 3
3.1 Introduction
Ce chapitre est consacré à la présentation des techniques fondamentales d’analyse de
l’erreur pour la résolution de systèmes linéaires. Le conditionnement d’un problème est
notamment introduit comme un indicateur de la sensibilité de la solution à des perturba-
tions des données. L’autre notion, fort différente du conditionnement, qui intervient dans
l’analyse d’erreur est l’erreur inverse qui permet d’associer, à une solution approchée, une
perturbation des données, ce qui est très utile pour affirmer par exemple si une solution
est acceptable compte tenu des incertitudes connues sur les données.
Enfin est présentée la méthode reine de résolution d’un système linéaire : la factori-
sation de Gauss avec pivotage partiel. En raison de sa robustesse, notamment vis à vis
des erreurs dues à l’arithmétique des ordinateurs, cette méthode (ou la factorisation de
Cholesky, pour des matrices symétriques définies positives) est à employer chaque fois que
la taille du problème et la machine de calcul utilisée le permettent.
Ax = b (3.1)
c’est à dire calculer x = A−1 b. On suppose que les données du système A et b sont soumises
à des perturbations ∆A et ∆b. La perturbation ∆x résultante satisfait l’équation
21
22 Chapitre 3 : Résolution de systèmes linéaires
Le terme du 2ième ordre ∆A∆x est négligeable, il vient A∆x = ∆b − ∆Ax soit ∆x =
A−1 (∆b − ∆Ax). Puisque A est inversible, b 6= 0 implique x 6= 0 donc
k∆xk2
k∆bk2
−1
≤ A
2
k∆Ak2 + .
kxk2 kxk2
kAk2
Or b = Ax implique kbk2 ≤ kAk2 kxk2 , soit 1/ kxk2 ≤ . Par conséquent
kbk2
Proposition 3.2 Montrez qu’il possible d’obtenir le résultat de perturbation suivant, sans
au
premier ordre, mais en supposant que la perturbation ∆A est bornée. Si
se placer
k∆Ak2
A−1
2 ≤ 1/2, on a
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
23 Chapitre 3 : Résolution de systèmes linéaires
k∆xk2
≤ 2 kAk2
A−1
2 η(x̃).
kxk2
Preuve 3.3 Démonstration.
krk2
On pose θ = . Puisque (A + ∆A)x̃ = b, ∆Ax̃ = r et krk2 ≤ k∆Ax̃k2 ≤
kAk2 kx̃k2
k∆Ak2 kx̃k2 . Donc
krk2 k∆Ak2
θ= ≤ quel que soit ∆A.
kAk2 kx̃k2 kAk2
On a donc θ ≤ η(x̃). Montrons que la borne inférieure θ peut être atteinte par une pertur-
bation particulière δA de A. On choisit
rx̃T
δA = − .
kx̃k22
rx̃T
On vérifie que (A + δA)x̃ = b, soit Ax̃ − x̃ = b, qui est une identité.
T
T
kx̃k22
Et
rx̃
2 = maxy6=0
r(x̃ y)
2 / kyk2 = krk2 maxy6=0 |x̃T y|/ kyk2 = krk2 kx̃k2 par l’inégalité
de Cauchy. Donc
kδAk2 krk2 kx̃k2
= = θ.
kAk2 kAk2 kx̃k22
On conclut que θ = η(x̃).
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
24 Chapitre 3 : Résolution de systèmes linéaires
Si l’erreur directe est grande, cela peut être dû au problème à résoudre (conditionnement
grand) et/ou à l’algorithme (grande erreur inverse). Le rôle de l’erreur inverse est de
permettre de distinguer dans l’erreur directe entre le facteur dû au problème
et le facteur dû à l’algorithme.
Exercice 3.1 Appliquer l’algorithme du pivot vu dans les classes antérieures à la matrice
1 4 7
A= 2 5 8
3 6 11
En utilisant 2 comme pivot pour la deuxième ligne et 3 pour la troisième ligne, on obtient
1 4 7
0 −3 −6 .
0 −6 −10
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
25 Chapitre 3 : Résolution de systèmes linéaires
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ème 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
τ =( 0 . . . 0, tk+1 , . . . , tm )T ∈ Rm
k
n−1
−1 X
(I − τn−1 eTn−1 ) . . . (I − τ1 eT1 ) τj eTj
=I+
j=1
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
26 Chapitre 3 : Résolution de systèmes linéaires
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(k−1) , et supposons que akk 6= 0. Soit
(k) (k)
!T
(k)
ak+1k amk
τ = 0, . . . 0, (k)
,...,..., (k)
akk akk
D’après la proposition 3.6, A(k) = I − τ (k) eTk A(k−1) a tous ses éléments 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 supérieure et on a
U = I − τ (s) eTs . . . I − τ (1) eT1 A.
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
27 Chapitre 3 : Résolution de systèmes linéaires
(1) Par soustraction, il vient (1−105 )y = 2−105 . Or dans une arithmétique à quatres chiffres,
les quantités 1 − 105 et 2 − 105 se représentent par −105 , donc 105 y = 105 , soit y = 1. Mais
alors 10−5 x + 1 = 1 implique x = 0 (très différent de 1 !).
(2) On échange les deux équations, soit
x + y = 2
.
10−5 x + y = 1
Donc (1 − 10−5 ) y = 1 − 2 10−5 entraı̂ne encore y = 1. Mais cette fois-ci x + 1 = 2 implique
x = 1. Le seul fait de pivoter a remplacé un résultat faux par un résultat satisfaisant.
– Calculons en effet l’erreur inverse associée à chaque solution :
10−5 1
q
kAk2 = T
ρ(A A) avec A =
1 1
√
1 + 10−5 + 5 − 2 10−5 + 10−10
=
2
' 1.61
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
28 Chapitre 3 : Résolution de systèmes linéaires
0
Pour z1 = (0, 1)T , r1 = Az1 − b = et donc
1
kr1 k2 1
η(z1 ) = = ' 6.2 10−1
kAk2 kz1 k2 kAk2
10−5
T
Pour z2 = (1, 1) , r2 = Az2 − b = et donc
0
kr2 k2 10−5
η(z2 ) = =√ ' 4.4 10−6
kAk2 kz2 k2 2 kAk2
Propriété 3.9 L’algorithme ci-dessus détermine pour toute matrice A carrée inversible,
une matrice de permutation P = Pn−1 . . . P1 telle que P A = LU
(l)
Preuve 3.7 Démonstration. Admise. Si à la lième étape, all = 0 alors, il existe un
(l)
indice de ligne i > l tel que ail 6= 0, sinon les éléments de A(l) en dessous de la l −
1ième 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ù Pil échange 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’à
la colonne l. On a ainsi construit une suite de matrices A(k) telles que A(n) = U . Soit
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
29 Chapitre 3 : Résolution de systèmes linéaires
Mj = (I − τ (j) eTj ). Alors U = Mn−1 Pn−1 . . . M1 P1 A, où les Pi sont des matrices de
permutations échangeant la ligne i avec une ligne d’indice supérieur où égal. Soit à présent
fj = Pn−1 . . . Pj+1 Mj Pj+1 . . . Pn−1 , pour j ≤ n − 2 et M
M fn−1 = Mn−1 . Comme pour tout
j, Pj Pj = I, alors
M
fn−1 . . . M
f1 Pn−1 . . . P1 A = U.
Posons P = Pn−1 . . . P1 . Calculons à présent Mfj pour j = 1 . . . n − 1 :
M
fj = Pn−1 . . . Pj+1 (I − τ (j) eTj )Pj+1 . . . Pn−1
= I − Pn−1 . . . Pj+1 τ (j) eTj Pj+1 . . . Pn−1
Or pour tout l tel que l > j, eTj Pl = eTj car la sous-matrice principale d’ordre j de Pl
est l’identité. Donc M fj = I − Pn−1 . . . Pj+1 τ (j) eT , ce qui correspond à une transformation
j
de Gauss. Ainsi P A = LU , avec L = I + Pn−1 . . . P2 (τ (1) eT1 ) + Pn−1 . . . P3 (τ (2) eT2 ) +
. . . τ (n−1) en−1 et P = Pn−1 . . . P1 .
2
Il existe deux stratégies de pivotage :
i) nous avons considéré le pivotage partiel où seul l’ordre des équations peut être
modifié,
ii) le pivotage total où l’ordre des équations et celui des variables peut être modifiés.
L’algorithme ci-dessous détermine des matrices de permutation P = Pn−1 . . . P1 et Π =
Π1 . . . Πn−1 telles que P AΠ = LU .
Algorithme de factorisation de Gauss avec pivotage total
Pour k = 1 à n − 1
déterminer p et q ∈ {k, . . . , n} tels que |apq | = max k≤i≤n |aij |
k≤j≤n
rk := p
ck := q
échanger ak,1:n et ap,1:n
échanger a1:n,k et a1:n,q
w = ak,k+1:n
pour i = k + 1 à n
aik := aik /akk
η := aik
ai,k+1:n := ai,k+1:n − ηw
finpour
finpour
|ãij |(k)
ρn = max
i,j,k kAk∞
(k)
où Ã(k) est la version calculée de A(k) = aij à l’étape k de la factorisation.
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
30 Chapitre 3 : Résolution de systèmes linéaires
Théorème 3.11 (Wilkinson) Pour toute matrice carrée d’ordre n, l’erreur inverse, en-
gendrée sur un ordinateur (précision ) par l’algorithme de Gauss avec pivotage partiel
(ou total) satisfait
k∆Ak∞ ≤ 8 n3 ρn kAk∞ + O(2 ).
Démonstration. Admise
La factorisation de Gauss avec pivotage partiel appliquée à 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
où 16 = 24 .
0 0 1 0 4
0 0 0 1 8
0 0 0 0 16
On peut montrer que l’élimination de Gauss appliquée à une matrice de cette forme et de taille n
conduit à un facteur de croissance de 2n−1 .
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
31 Chapitre 3 : Résolution de systèmes linéaires
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
32 Chapitre 3 : Résolution de systèmes linéaires
Proposition 3.15 Toute matrice A symétrique définie positive admet une factorisation
de Cholesky A = C T C obtenue grâce à l’algorithme de Cholesky qui coûte n3 /3 opérations
flottantes.
α lT
A=
l Ae
Comme A est définie 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. L’équation
√
|β|2 = α > 0 permet de choisir β = α positif et m = l/β. Il reste à trouver B telle que
BB T = A e − mmT = D. Il suffit d’appliquer l’hypothèse de récurrence à D qui est d’ordre
n − 1, et qui est, comme nous allons le montrer, hermitienne définie positive.
En effet DT = D, car D = A e − mmT où A e 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
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
33 Chapitre 3 : Résolution de systèmes linéaires
lT x
Soit x ∈ Rn−1 non nul, et y = − α non nul dans Rn . Donc comme A est définie
x
positive, pour tout y non nul de R , y T Ay > 0 et donc xT Dx > 0. La matrice D hermi-
n
tienne définie positive d’ordre n−1 admet le facteur de Cholesky B triangulaire inférieure à
diagonale positive telle que BB T = D. C est donc aussi triangulaire inférieure à diagonale
positive.
Proposition 3.16 Soit A une matrice définie positive. Montrez parq identification dans
T
Pi−1 Pi−1
l’équation A = CC que, pour k ≥ i cki cii = aik − p=1 cip ckp et cii = aii − p=1 cip cip .
Et en déduire un algorithme de calcul de C.
vérifie aik = ip=1 cip ckp , d’où l’on tire, pour k ≥ i, cki cii = aik − i−1
P P
q p=1 cip ckp et ckk =
Pi−1
akk − p=1 ckp ckp .
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
34 Chapitre 3 : Résolution de systèmes linéaires
2. Si qn kAk2
A−1
2 ≤ 1 alors pas d’arrêt, où qn est un polynôme de faible degré en
n.
Démonstration. Admise
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
Chapitre 4
4.1 Introduction
Ce chapitre concerne la résolution du problème de moindres carrés linéaires. Comme
pour le cas des systèmes linéaires, des outils fondammentaux d’analyse d’erreur seront
présentés.
Les deux méthodes, basées sur des factrorisations matricielles, les plus utilisées en
pratique seront décrites : la méthode des équations normales et la méthode de la factori-
sation QR. Ces deux méthodes seront comparées du point de vue de leur coût en nombre
d’opérations et de leur précision.
Nous allons voir dans un premier temps, un exemple de problème de moindres carrés
linéaires représentatif de la classe des problèmes d’estimation de paramètres.
4.2 Généralités
Dans ce chapitre, A ∈ Rm×n , b ∈ Rm , et m ≥ n. Dans de nombreuses applications,
on cherche à calculer x̂ tel que Ax̂ approche b au sens des moindres carrés, c’est à dire
35
36 Chapitre 4 : Résolution de problèmes aux moindres carrés
linéaires. Un mobile est en chute libre rectiligne sous l’action seule de l’accélération de
pesanteur ẍ = −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
l’estimation de la position initiale (t = 0)x0 , de la vitesse initiale x˙0 et de g sous la forme
d’un problème de moindres carrés.
Proposition 4.2 Le problème P admet toujours au moins une solution. Une condition
nécessaire et suffisante pour que x̂ soit solution de P est que x̂ soit solution de l’équation
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
définie positive. Réaliser une interprêtation géométrique de ce résultat en faisant intervenir
sur un croquis Im(A) et b − Ax.
Preuve 4.2 Démonstration : Nous faisons la démonstartion dans le cas réel (A, b sont
réels et la solution chercheée x est réelle). Le cas complexe s’obtient par séparation des par-
ties réelles et imaginaires dans kAx − bk2 . Soit r(x) = b − Ax. 1) Montrons que l’équation
normale (4.1) admet toujours une solution. D’après 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̂) − 2r(x̂)T A(x − x̂) + (x − x̂)T AT A(x − x̂), (4.2)
on obtient que si x̂ satisfait (4.1), alors kr(x)k2 ≥ kr(x̂)k2 (puisque AT A est semi-définie
positive).
Réciproquement, soit x1 qui minimise r(x). Soit x̂ une solution de léquation 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 −
x̂) + (x1 − x̂)T AT A(x1 − x̂) = r(x̂)T r(x̂) + (x1 − x̂)T AT A(x1 − x̂) Ceci n’est 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 Ax̂ = AT b.
Enfin, d’un point de vue mathématique, résoudre le problème de moindres carrés est
équivalent à résoudre l’équation normale associée. Cette équation admet une unique so-
lution ssi AT A a un noyau réduit au vecteur nul, ce qui est équivalent par la formule du
rang sur A à n = 0 + rg(A). Cette condition entraı̂ne que AT A est définie positive.
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
37 Chapitre 4 : Résolution de problèmes aux moindres carrés
Proposition 4.3 Soit A ∈ Rm×n de rang r < min(n, m). Il existe des matrices unitaires
U ∈ Rm×m et V ∈ Rn×n telles que :
T Σr 0 r
U AV =
0 0 m−r
r n−r
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
38 Chapitre 4 : Résolution de problèmes aux moindres carrés
Preuve 4.4 Démonstration : Une vérification élémentaire montre que A+ définie par la
décomposition en valeurs singulière vérifie les équations de Moore-Penrose. Supposons à
présent que Xi = 1, 2 vérifient ces équations. Alors XiT = XiT AT XiT = (AXi )T XiT =
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 ) (d’après 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, d’où kAzk2 = 0 et donc x = Az = 0.
Donc Im(A) ∩ Ker(AT ) = {0} et X1 = X2 .
A+ = (AT A)−1 AT et x̂ = A+ b.
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
39 Chapitre 4 : Résolution de problèmes aux moindres carrés
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 (équations normales, QR) fourniraient bien sûr très précisément la
même solution en arithmétique exacte. En revanche en présence d’erreurs d’arrondis, elles
se comportent de manière très différente, comme nous allons le voir dans le paragraphe
suivant.
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
40 Chapitre 4 : Résolution de problèmes aux moindres carrés
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
41 Chapitre 4 : Résolution de problèmes aux moindres carrés
où r = b − Ax.
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
42 Chapitre 4 : Résolution de problèmes aux moindres carrés
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 l’égalité précédente par
(AT A)−1 , et en pasant aux norme, on obtient, puisque A+ = (AT A)−1 AT ,
Le résultat final provient du fait que (AT A)−1 = A+ A+T , ce qui entraı̂ne
(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 résultats de sensibilité avec les résultats d’er-
reur inverse pour obtenir une comparaison de la méthode des équations normales avec la
méthode QR du point de vue de l’erreur directe k∆xk/kxk.
Théorème 4.11 Si la méthode QR (Householder, Givens) est utilisée sur une matrice A
vérifiant cnm cond2 (A) < 1, l’erreur sur la solution vérifie
k∆xk2 kbk2 krk2
≤ cnm cond2 (A) 1 + + cond2 (A) .
kxk2 kAk2 kxk2 kAk2 kxk2
Si la méthode des équations normales est utilisée sur une matrice vérifiant cnm cond2 (A)2 <
1, l’erreur sur la solution vérifie
k∆xk2 kbk2
2
≤ cmn cond2 (A) 1 + .
kxk2 kAk2 kx̃k
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
43 Chapitre 4 : Résolution de problèmes aux moindres carrés
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
(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
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
44 Chapitre 4 : Résolution de problèmes aux moindres carrés
Remarque 4.13 Si le vecteur x est tel que x1 ne satisfait pas la condition x1 réel ≥ 0, on
peut encore définir H(u) = H telle que telle que Hx soit proportionnel à e1 de la manière
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 réel < 0, u =
kx − kxk2 e1 k2
Figure 4.1 –
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
45 Chapitre 4 : Résolution de problèmes aux moindres carrés
Donc bkj = 0 pour la valeur de θ choisie. L’algorithme de factorisation met a 0 les éléments
situés sous la diagonale de A en les parcourant par colonne.
Les méthodes se
valent donc
sur ce critère. On compare à présent les trois défauts d’or-
eH e
thogonalités ω̂ =
Q Q − I
:
2
C’est Householder et Givens que l’on obtient la base orthogonale de meilleure qualité.
La méthode de Gram-Schmidt donne une base qui n’est plus orthonormale. La modifica-
tion de cette méthode conduisant à la méthode de Gram-Schmidt modifiée permet cepen-
dant d’améliorer la qualité de la base orthogonale. Ces résultats peuvent être consolidés
théoriquement et il est possible de montrer que le défaut d’orthogonalité est de l’ordre
de cmn cond2 (A)2 pour Gram-Schmidt, cmn cond2 (A) pour Gram-Schmidt modifiée, cmn
pour Householder et Givens.
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
46 Chapitre 4 : Résolution de problèmes aux moindres carrés
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
Chapitre 5
5.1 Introduction
Que fait-on lorsqu’il s’agit de résoudre un système linéaire et que les méthodes basées
sur des factorisations matricielles sont trop coûteuses (en temps de calcul ou en mémoire)
compte tenu du matériel informatique utilisé ? On utilise des méthodes itératives qui génèrent
une suite d’itérés sensés converger vers la solution du problème. Le but de ce chapitre est
de présenter les méthodes qui figurent parmi les plus utilisées : les méthodes basées sur
un espace dit de Krylov. Ce chapitre sera notamment l’occasion de décrire la méthode
GMRES, la méthode du gradient conjugué, le but du précondiitonnement et la nécessité
de disposer de bons critères d’arrêt des itérations.
Dans les cas pratiques il est bon de se rappeler qu’il ne faut se tourner vers les méthodes
itératives que lorsque les méthodes directes ne sont pas utilisables, car la mise en œuvre
d’une méthode itérative peut nécessiter beaucoup d’efforts, notamment concernant les tech-
niques de préconditionnement.
5.2 Généralités
On définit par l’espace de Krylov de d’ordre m associé à la matrice carrée inversible
A ∈ Rn×n et b ∈ Cn par K(A, b, m) = Span{b, Ab, ..., Am−1 b}. Il est clair que les espaces
de Krylov sont des espaces emboı̂tés lorsque m croı̂t. Dans ce chapitre, sauf précision
contraire, kk est la norme Euclidienne pour les vecteurs et la norme induite correspondante
pour les matrices.
47
48 Chapitre 5 : Résolution de systèmes linéaires par des méthodes de Krylov
on a
n−1
1 X
A−1 = − αj+1 Aj .
α0
j=0
Arnoldi’s 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
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
49 Chapitre 5 : Résolution de systèmes linéaires par des méthodes de Krylov
Proposition 5.3 Si à l’étape js l’algorithme rencontre une quantité hjs +1,js nulle, il
s’arrête.
Les quantités vj et hij générées par l’algorithme pour j < js peuvent être réécrites à
chaque pas de la boucle en j sous forme matricielle
Preuve 5.3 Démonstration. En effet, d’après les étapes 4. et 7. de l’algorithme hj+1,j vj+1 =
Avj − ji=1 hij vi , ce qui s’écrit bien AVj = Vj+1 H̄j avec Vj = [v1 , . . . , vj ] ∈ Rn×j et
P
H̄j = [hi,j ] ∈ Rj+1×j Hessenberg supérieure.
Proposition 5.4 On se place au dernier pas js de l’algorithme. On a alors AVjs = Vjs Hjs ,
où la matrice Hjs est une matrice carrée d’ordre js . Les valeurs propres de Hjs sont des
valeurs propres de A. Si y est un vecteur propre de Hjs associé a la valeur propre λ (de A
et de Hjs ), Vjs y est un vecteur propre de A associé.
Preuve 5.4 Démonstration. 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 supérieure. En parti-
culier, si A est symétrique, Hj est tridiagonale.
Preuve 5.5 Démonstration. On sait que Hj ∈ Rj×j est Hessenberg supérieure (car elle
est constituée des j premières lignes de la matrice rectangulaire Hessenberg supérieure
H̄j ∈ Rj+1×j ). Si de plus A est symétrique, H̄j = Vj+1 T AV . et H T = (V T AV )T =
j j j j
VjT AT Vj = Hj . Donc Hj est carrée Hessenberg supérieure et symétrique ; elle est donc
carrée et tridiagonale.
Proposition 5.6 L’espace image de Vj , pour j inférieur à js , est K(A, b, j). L’espace
K(A, b, js ) est un espace invariant pour A.
Preuve 5.6 Démonstration. Par récurrence. Vrai pour j = 1. Supposons le résultat sui-
vant vrai au rang j : il existe une matrice Xj ∈ Rj×j telle que [b, . . . , Aj−1 b] = [v1 , . . . vj ]Xj ,
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
50 Chapitre 5 : Résolution de systèmes linéaires par des méthodes de Krylov
la matrice Xj étant triangulaire supérieure inversible (éléments non nuls sur la diagonale).
Alors , on posant β = kbk,
Montrons que la matrice entre crochets que nous appelons Xj+1 est triangulaire supérieure
inversible. La matrice H̄j est de rang j (Hessenberg avec éléments non nuls sur la sous-
diagonale sinon l’algorithme se serait arrêté). La matrice H̄j Xj est Hessenberg supérieure
et son élément sous diagonal de la colonne k de H̄j par le kième élément diagonal de Xj : il
est donc non nul. La matrice Xj+1 est donc triangulaire supérieure à éléments 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 L’itéré xj minimisant la norme du résidu kb − Axk sur l’espace K(A, b, j)
s’écrit xj = Vj zj où zj minimise kkbke1 − H̄j zj k.
Proposition 5.8 Le pas js étant celui où se produit l’arrêt de l’algorithme GMRES, xjs
est la solution du système linéaire Ax = b.
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
51 Chapitre 5 : Résolution de systèmes linéaires par des méthodes 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 )1≤i≤m+1,1≤j≤m
13. Compute, ym the solution of kβe1 − H̄m yk2
14. Compute, xm = x0 + Vm ym
Notons que la résolution du problème de moindres carrés en 13. est réalisée par une
méthode stable (Givens),
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
52 Chapitre 5 : Résolution de systèmes linéaires par des méthodes 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ù D est
diagonale. Pour l’algorithme non redémarré,
= min kV Q(D)V −1 bk
Q∈Pj ,Q(0)=1
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
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
53 Chapitre 5 : Résolution de systèmes linéaires par des méthodes 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
Si r(A) ≤ 1, la partie réelle du membre droit de cette égalité est positive ou nulle. En
H H
z z z z
effet, Re(1−eiθ 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.
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
54 Chapitre 5 : Résolution de systèmes linéaires par des méthodes de Krylov
5.3.5 Préconditionnement
Les propositions ci-dessus permettent de donner des conditions suffisantes de réduction
de la norme du résidu au cours d’un restart et donc d’obtenir des conditions de conver-
gence de l’algorithme redémarré. Des techniques de transformations du système linéaire
Ax = b en un système équivalent pour lequel GMRES converge plus vite sont appelées
techniques de préconditionnement. Les caractéristiques principales d’une bonne technique
de préconditionnement sont :
– ne pas être très coûteuse en place mémoire,
– sa mise en oeuvre (préparation + utilisation dans la méthode) ne doit pas engendrer
trop de calculs,
– elle doit accélérer la méthode itérative.
Pour les méthodes pour matrices non-symétriques comme GMRES, on parle fréquemment
de préconditionnement
– à gauche ; Ax = b est remplacé par M −1 Ax = M −1 b où M est inversible.
– à droite ; Ax = b est remplacé par AM −1 t = b et x = M −1 t, où M est inversible.
– mixte ; Ax = b est remplacé par M1−1 AM2−1 t = M1 b et x = M2−1 t, où M1 et M2
sont inversibles. est inversible.
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
55 Chapitre 5 : Résolution de systèmes linéaires par des méthodes de Krylov
VkT (b − Axk ) = 0.
Proposition 5.15 La méthode RGM converge en au plus m itérations sur une matrice
ayant m valeurs propres distinctes.
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
56 Chapitre 5 : Résolution de systèmes linéaires par des méthodes de Krylov
Proposition 5.16 Le polynôme Qk−1 (A) construit par la procédure RGM vérifie
ξ1
Soient λi , i = 1, ..., n les valeurs propres de A et ξ = ... où ξi i = 1, ..., n sont les
ξn
∗
composantes de (x0 − x ) dans la base constituée des colonnes de V . On a A = V ΛV T et
(xk − x∗ ) = V ξ ce qui entrı̂ne
p(A)(x0 − x∗ ) = V p(Λ)V T (V ξ)
= V p(Λ)ξ.
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
57 Chapitre 5 : Résolution de systèmes linéaires par des méthodes de Krylov
où Ck (t) est un polynôme de Chebyshev de première espèce et de degré k. Pour |t| > 1 on
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
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
58 Chapitre 5 : Résolution de systèmes linéaires par des méthodes de Krylov
2
En utilisant les propositions 5.17 et 5.15, il apparaı̂t qu’une technique visant a rem-
placer le système d’origine Ax = b en un système équivalent
– mieux conditionné, ou bien où,
– les valeurs propres distinctes sont moins nombreuses,
permet d’accélerer la convergence de la méthode. Plus généralement, on appelle préconditionnement
toute technique visant a accélérer (en temps de calcul, ou en nombre d’itération) une
méthode itérative.
On rappelle les caractéristiques principales d’une bonne technique de préconditionnement
sont :
– ne pas être très coûteuse en place mémoire ,
– sa mise en oeuvre (préparation + utilisation dans la méthode) ne doit pas engendrer
trop de calculs,
– elle doit accélérer la méthode itérative.
Préconditionnement
Contrairement aux méthodes pour matrices nonsymétriques, le préconditionnement de
CG doit toujours garantir que la matrice préconditionnée est symétrique définie positive.
Pour cela on impose que le préconditionneur M −1 est symétrique défini positif. Dans ce
cas, une factorisation de Cholesky donne M −1 = CC T . Une idée naturelle est de remplacer
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
59 Chapitre 5 : Résolution de systèmes linéaires par des méthodes de Krylov
Il est possible de montrer que, dans cet algorithme, les résidus rk sont M −1 −orthogonaux
(rkT M −1 rl = δkl ) et que les pk sont A−orthogonaux (pTk Apl = δkl ). Les pk sont appelés
aussi directions de descente d’après une interprétation en terme d’algorithme d’optimisa-
tion. Coût de la méthode
– Mémoire : stockage de A, du préconditionneur M et de 4 vecteurs de taille n (A ∈
Rn×n )
– Opérations : pour chaque étape, une application de A et une résolution d’un système
linéaire avec M , et 10n opérations flottantes par itération.
Cependant, les erreurs d’arrondis dans la méthode font qu’en pratique la solution peut ne
pas être obtenue en n pas. Des techniques coûteuses de réorthogonalisation permettent de
diminuer quelque peu l’impact de ces erreurs.
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
60 Chapitre 5 : Résolution de systèmes linéaires par des méthodes de Krylov
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
Chapitre 6
6.1 Introduction
Historiquement, les méthodes itératives, dites stationnaires, présentées dans ce cha-
pitre furent les premières méthodes itératives à être utilisées, lorsque les méthodes basées
sur des factorisations de matrices n’étaient pas utilisables en raison de leur coût, et ceci
bien avant l’apparition des méthodes de Krylov. Elles ne sont plus considérées actuelle-
ment en tant que telles comme des méthodes efficaces pour résoudre des systèmes linéaires
généraux. En revanche elles interviennent comme briques de bases importantes, notam-
ment dans des techniques de préconditionnement et dans les méthodes multigrilles.
x0 , xk = Bxk−1 + c, k = 1, 2, 3, . . . (6.1)
convergent vers une même 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 Démonstration : Supposons que la limite existe. Alors elle vérifie x? = Bx? +
c, et donc ek = xk − x? = B k (x0 − x? ) = B k e0 . Par hypothèse, B k converge vers 0 ce
qui implique que ρ(B) < 1. Réciproquement, si ρ(B) < 1, alors comme xk = B k x0 + (I +
61
62 Chapitre 6 : Résolution de systèmes linéaires par méthodes itératives stationnaires
Proposition 6.2 Réduction de l’erreur. 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 d’autant plus rapide que ρ(B) est petit par rapport à 1.
Preuve 6.2 Démonstration : D’après la proposition 6.1, la suite des xk converge vers x?
tel que (I − B)x? = b. Alors ek = Bek−1 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) + . d’où le résultat.
2
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
63 Chapitre 6 : Résolution de systèmes linéaires par méthodes itératives stationnaires
– Les méthodes de splitting ne sont que très rarement utilisées seules pour résoudre
un système linéaire. Elles peuvent servir pour accélérer d’autres méthodes, on parle
alors de préconditionneur (voir la section sur les méthodes de Krylov), ou inter-
viennent dans des solveurs multigrilles qui sont parmi les plus efficaces pour la
résolution d’équations aux dérivées partielles.
– Les méthodes de splitting les plus classiques sont basées sur la décomposition A =
−L + D − U ou D est la matrice diagonale de A, U est une matrice triangulaire
supérieure stricte, et L est une matrice triangulaire inférieure stricte. Les méthodes
les plus connues sont la méthode de Jacobi (si D est inversible, on prend M = D,
N = −L − U et xk+1 = D−1 ((L + U )xk + b)) et la méhode 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 symétrique définie positive, ces deux méthodes sont bien
définies (M est inversible dans chaque cas), et la méthode de Gauss-Seidel converge
(et pas nécessairement la méthode de Jacobi).
Une autre situation où les méthodes de splitting convergent est donnée par la proposi-
tion suivante.
Proposition 6.3 Soit A une matrice symétrique définie positive. Pour M inversible,
considérons le splitting A = M − N . Si M + N est définie positive, alors la méthode
itérative associée converge pour tout x0 vers A−1 b.
Preuve 6.3 Démonstration : Soit k·kA définie par kxk2A = xT Ax (c’est une norme). Alors
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 (inversibilité de A et M ) v = 0 ce qui est impossible. Ainsi
ρ(I − M −1 A) < 1.
Une manière équivalente de voir ces méthodes de splitting est d’écrire les itérations
sous la forme
Cette forme équivalente laisse apparaı̂tre la méthode comme une méthode des approxima-
tions successives xk+1 = (I −M −1 A)xk +M −1 b. La continuité des valeurs propres entraı̂ne
alors que plus M approche A, plus le rayon spectral de I − M −1 A sera faible et plus la
méthode a des chances de converger rapidement.
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
64 Chapitre 6 : Résolution de systèmes linéaires par méthodes itératives stationnaires
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) = kAkkA−1 k, et on suppose que kEk k/kAk = ηk est
cond(A)ηk
tel que 0 < 1−cond(A)η k
≤ ρ < 1. Alors l’algorithme de raffinement itératif converge vers
−1 0
A b pour tout x . Plus ρ est petit plus on peut garantir une convergence rapide.
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
Chapitre 7
7.1 Introduction
Calculer des valeurs propres c’est résoudre un problème non linéaire. Il n’est guère
étonnant que les algorithmes de calcul soient itératifs. Après un exposé de certaines si-
tuations pratiques donnant lieu à des problèmes aux valeurs propres, quelques outils de
base d’analyse d’erreur sont présentés, en soulignant notamment la nature qualitative-
ment différente des résultats si on les compare à ceux obtenus dans le cadre des systèmes
linéaires. En effet La précision d’une valeur propre peut s’avérer dépendre d’une puissance
fractionnaire de la norme des perturbations, ceci se produisant lorsque les valeurs propres
sont défectives.
Nous décrivons ensuite les grandes étapes de la méthode QR de calcul des valeurs
propres qui est souvent considérée comme la méthode de base lorsque la totalité du spectre
est recherchée. Lorsqu’un sous-ensemble du spectre est désiré, on peut utiliser par exemple
des méthodes basées sur l’algorithme de la puissance que nous décrirons. Il existe bien
d’autres techniques de calcul, tels que celles basées sur l’algorithme d’Arnoldi ou sur l’al-
gorithme de Jacobi-Davidson.
65
66 Chapitre 7 : Problèmes aux valeurs propres
– Si c = 0,
F0
p
– si ω 6= ω0 = k/m, η(t) = m(ω02 −ω 2 )
cosωt.
F0 t
– si ω = ω0 , η(t) = 2mω 2 sinω0 t : oscillation avec une amplitude dangereusement
0
croissante : résonnance. Donc toute solution est de la forme acos(ωt)+bsin(ωt)+
η(t). En pratique c peut-être petit engendrant une solution particulière η(t) très
grande pour ω proche de ω0 . Ce phénomè d’oscillation forcée à une fréquence
propre dsu système est à l’origine de la destruction d’ouvrages tels que le pont de
Tacoma (1940).
Lorsque l’on met plusieurs ressorts bout à bout, on obtient le probème de vibration M ÿ +
C ẏ + Ky = F (t), où M , C et K sont des matrices. Les fréquences propres du système sont
obtenues en cherchant les solutions du système libre sans frottement pour une excitation
de la forme y(t) = y0 eiωt , ce qui conduit à résoudre le problème dit aux valeurs propres
généralisées −ω 2 M y0 + Ky0 = 0. On pose z0 = (ωy0 , y0 )T . Ce problème peut s’écrire sous
la forme du problème aux valeurs propres
0 K M 0
z0 = ω z0 .
I 0 0 I
En pratique, on vérifie à la conception que l’ouvrage construit n’aura pas de fréquence
propre de l’ordre de phénomèmes vibratoires connus.
On peut dores et déja dire que les algorithmes de calculs de valeurs propres nécessairement
itératifs. Les valeurs propres sont en effet racines d’un polynôme, et le Théorème d’Abel
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
67 Chapitre 7 : Problèmes aux valeurs propres
montre qu’il n’existe pas de formule générale (utilisant les opérations élémentaires) de
calcul de racines de polynômes de degré ≥ 5. Mais un grand succès du calcul matriciel
moderne est algorithme QR de complexité n3 .C’est bien sûr une méthode itérative, mais
qui en pratique est vue comme directe par l’utilisateur.
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
68 Chapitre 7 : Problèmes aux valeurs propres
Démonstration : Soit i0 réalisant le max dans svA (A), e λ̃ = λ̃i , x1 un vecteur propre de
0
norme 1 assoocié, 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)xj
2
n
=
(A − λ̃I)x1
Πj>1
(A − λ̃I)xj
2
2
n
≤
A − A
kx1 k2 Πj>1 (
A
+ kAk2 )
e
e
2 2
1− 1 1
n
e ≤ (2n − 1) kAk +
md(A, A)
Ae
kEk n .
2
2
1
1−
Preuve 7.2 Démonstration : 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 isolés 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 définit Di = {ξ, |ξ
−1λ
i | ≤ τ }. Comme
n
e e
kAk2 +
A
≤ µ, on a d’après le théorème précédent svA (Aeτ ) ≤ µ
τ n
, donc les valeurs
e
2 2
propres de Aeτ sont dans l’union des disques Dτ , et le resultat (res1) s’obtient en utilisant
i
la continuité des valeurs propres. Il est à présent aisé de borner md(A, ta). Soit C1 , . . . Ck
les ensembles connexes de ∪ni=1 Di , Cl étant la réunion de ml disques isolé, ils contiennent
ml valeurs propres de A,e et la distance de chaque valeur propre de A e à la valeur propre de
1− 1 1
n
A de Cl la plus lointaine est inférieure à (2ml − 1) kAk2 +
A kEk n .
e
2
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
69 Chapitre 7 : Problèmes aux valeurs propres
Notons que a proposition 7.6 est très différent du résultat de perturbation sur les systèmes
1
linéaires. La borne suggère ici une variation du spectre en kEk n , contre une variation
en kEk pour les systèmes linéaires. Par exemple pour n = 3 et kEk = 10−12 , on une
1
variation proportionnelle à kEk n = 10−4 pour les valeurs propres, contre 10−12 pour les
systèmes linéaires. L’exemple 7.8 montre que cette sensibilité s’exprime pour certaines
matrices telles que les blocs de Jordan. La proposition 7.9 suivante montre que pour des
matrices diagonalisables, la connaissance d’un résidu r = Au − αu permet de localiser une
de A par rapport à α à condition de supposer connu le conditionnement
valeur
propres
kXk2
X −1
2 d’une matrice X permettant de diagonaliser A. Ce conditionnement vaut 1
si A est normale, car alors X peut être choisie orthogonale.
|λ − α| ≤ kXk2
X −1
2 krk2 .
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
70 Chapitre 7 : Problèmes 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
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
71 Chapitre 7 : Problèmes aux valeurs propres
Proposition 7.11 Montrer que si A0 est Hessenberg supérieure, Ak est Hessenberg supérieure
pour tout k. Montrer que Ak est unitairement équivalent à A.
Preuve 7.4 Démonstration : On utilise par exemple une factorization QR de Gram-
Schmidt pour déduire les structures de nonzéros pour cette preuve. Quand on retranche
à une colnne d’une matrice de Hessenberg, une combinaison linéaire des colonnes qui la
précèdent, on n’introduit pas de non-zeros. Donc la factorisation QR d’une matrice de
Hessenberg s’écrit 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 l’équivalence 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 même A1 = Q0 A0 Q0 = Q0 P AP Q0 , d’où le résulat par récurence.
2
L’algorithme QR pour la recherche des valeurs propres est un algorithme très impor-
tant, qui a révolutionné l’algèbre linéaire numérique et permet de disposer d’une méthode
fiable pour calculer tout le spectre d’une matrice. Cet algorithme est en revanche coûteux
en mémoire car il demande de stocker des matrices triangulaires et de Hessenberg de la
même taille que A. De même en termes de nombre d’opérations, il a une complexité en
n3 , ce qui peut s’avérer rédhibitoire pour des matrices de la taille de quelques dizaines de
milliers de lignes. Pour cette raison, des méthodes alternatives sont utilisés lorsque seul
un sous-ensemble du spectre est désiré.
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
72 Chapitre 7 : Problèmes aux valeurs propres
Proposition 7.12 Soit A ∈ Cl n×n telle que les valeurs propres de A sont les λi , avec
|λ1 | > |λ2 | ≥ · · · ≥ |λn |. Soit y un vecteur propre à gauche de A associé à λ1 . Si y T x0 6= 0,
alors on a limk→+∞ µk = λ1 et limk→+∞ xk est un vecteur propre de A associé à λ1 .
Preuve 7.5 Démonstration : La valeur propre λ1 est simple. D’après le lemme ??, on
choisit X tel que
λ 0
A=X X −1 ,
0 R
où les valeurs propres de R sont plus petites que λ1 en module et donc limk↔+inf ty Rk /λk1 =
0. On sait de plus d’après le lemme ?? que X −T e1 est un vecteur propres à gauche associé
à λ1 , et l’hypothèse de l’énoncé implique que eT1 X −1 x0 = eT1 y0 6= 0. D’après ce lemme,
Xe1 est un vecteur propre à droite de A associé
k à λ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 λk 1
xk Xe1
lim = ,
k↔+inf ty kxk k kXe1 k
Xe1
ce qui montre que uk tend vers le vecteur propre à droite normalisé kXe1 k . On obtient
eT T
1 X (A−λ1 )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, d’une manière qualitative, plus la
quantité ρ(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 quantité ρ(R/λ1 ) est faible, plus vite ces convergences ont lieu. Trois remarques
importantes peuvent être faites sur la méthode de la puissance :
– Coût de chaque itération. En mémoire, cette méthode est peu coûteuse, vu qu’il s’agit
de stocker les vecteurs uk essentiellement. En opérations, le coût est déterminé par
le coût d’un produit matrice vecteur, ce qui est peu si la matrice A est très creuse,
par exemple.
– Pour la convergence. On a vu que si la plus grande valeur propre en module est
bien séparée des autres (au sens où ρ(R/λ1 ) = | λλ21 | est faible), la convergence de
la méthode est rapide. Cette remarque peut conduire à l’idée d’appliquer la méthode
de la puissance, non á A, mais a (A − σI)−1 , pour calculer la valeur propre de A la
plus proche du paramètre dit de shift, σ. Bien sûr, la matrice inverse n’est jamais
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
73 Chapitre 7 : Problèmes aux valeurs propres
calculée, A − σI est factorisée une fois pour toutes en début d’algorithme. Cette
méthode s’appelle la méthode de la puissance avec shift et invert. La convergence
sera d’autant plus rapide que σ est proche de la valeur propre désirée. Il existe
une méthode ayant une convergence encore plus rapide : la méthode du quotient de
Rayleigh. Cette dernière méthode implante un shift variable au cours des itérations
et nécessite donc de factoriser plusieurs fois la matrice shiftée, ce qui peut s’avérer
trop coûteux pour certaines applications.
– La méthode de la puissance peut se généraliser à la recherche de r valeurs propres
dominantes en module de A. Cette méthode appelée méthode d’itération de sous-
espace s’écrit :
Subspace itération method
1. Choose X0 ∈Cl n×r
2. Factorize X0 = Q0 R0 , R0 ∈Cl r×r
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 méthode dépend cette fois du ratio | λλr+1 r
|.
– Les algorithmes de la puissance et de l’itération de sous-espace, font intervenir
de manière explicite un critère d’arrêt pour stopper les itérations. Il serait très
imprudent d’utiliser un critère sur la stationnarité des itérés du type |λk+1 − λk | <
tol, car des plateaux peuvent apparaı̂tre avant que la convergence n’ait lieu. On
utilisera des critères basés sur l’erreur inverse kAy k −λk yk k
kAkkyk k pour juger de la qualité
de la pair propre approchée (λk , yk ).
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
74 Chapitre 7 : Problèmes aux valeurs propres
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
Deuxième partie
Optimisation
75
Chapitre 8
8.1 Introduction
On appelle problème d’optimisation un problème noté :
P : min f (x).
x∈C
La fonction f est appelée fonction objectif et l’ensemble C est l’ensemble des contraintes.
Nous nous limitons dans ce cours au cas où C est un sous-ensemble de Rn .
Exercice 8.1 Différence entre dimension infinie et dimension finie sur un exemple. Soit
1
Pn : min f (x) = xT x, où Cn = {x ∈ Rn , x1 = , et kxk2 ≤ 1}.
x∈Cn ⊂Rn 2
Soit
1 1
1
Z Z
2
P∞ : min f (x) = x , où C∞ = {x, x est continue et x(0) = , et x2 ≤ 1}.
x∈C∞ 0 2 0
R 1 limn→+∞ f (xn ) = 0, mais il n’existe pas de fonction continue non nulle pour
on a alors
laquelle 0 x2 = 0. Donc P∞ n’admet pas de solution.
Il arrive que l’on s’intéresse à l’existence, l’unicité et au calcul de points x̄ qui mini-
misent f sur C, c’est à dire tels que
77
78 Chapitre 8 : Optimisation sans contrainte
c’est un problème d’optimisation globale. Dans les cas généraux, nous verrons qu’il est
parfois possible de donner des conditions nécessaires, ou des conditions suffisantes d’op-
timalité, ou même quelquefois des conditions à la fois nécessaires et suffisantes. Les al-
gorithmes rechercheront des points qui vérifient ces conditions. Le problème de moindres
carrés linéaires vu précédemment est un exemple de problème d’optimisation.
Exercice 8.2 Un fabricant de composants électroniques possède deux types de fabriques :
A et B, notées Ai , 1 ≤ m et Bj , 1 ≤ j ≤ n. Lors de la fabrication, chacun de ces
composants doit tout d’abord passer par une des usines de type A puis par une de type B.
Comme ces usines ne se trouvent pas dans le même lieu géographique, le fabricant doit
étudier le meilleur moyen pour transporter ces composants à moindre coût des usines Ai
vers les usines Bj . Connaissant la matrice des coûts C = [cij ] où cij correspond au coût
de transport d’une pièce de l’usine Ai vers l’usine Bj , ainsi que le nombre de pièces ai
produites par l’usine Ai et le nombre de pièces bj que l’usine Bj doit recevoir, formuler
le plan de transport optimal (en terme de coût de transport) sous la forme d’un problème
d’optimisation. Données 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 Démonstration : Soient les variables de décision suivantes : xij nombre de
pièces allant de l’usine Ai vers l’usine Bj avec 1 ≤ i ≤ 2 et 1 ≤ j ≤ 3. Le problème
d’optimisation s’écrit : 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 réels positifs. On suppose que l’on a
deux milieux M1 = {(x, y), y > 0} et M2 = {(x, y), y < 0} et que la vitesse de propagation
d’un rayon lunimeux est ci dans Mi . On considère 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ème de la recherche du trajet entre A(0, a) et
B(c, −b) sous la forme d’un problème d’optimisation. En utilisant une étude de fonction,
montrez que le principe de Fermat se traduit par la loi de Snell
sinα1 sinα2
= .
c1 c2
Preuve 8.3 Démonstration : Soit X(x0 , 0) le point où le rayon change de milieu. Le
temps de trajet est
1p 2 1p
T (x) = a + x2 + (c − x)2 + b2 ,
c1 c2
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
79 Chapitre 8 : Optimisation sans contrainte
et x0 minimise T (x). Les minima d’une fonction réelle vérifient T 0 (x) = 0, ce qui donne
x c−x
√ = p ,
c1 2
a +x 2 c2 (c − x)2 + b2
Exercice 8.4 Mission : désamorcer une bombe nucléaire sur un yacht. Yacht amarré à 50
mètres du rivage. James Bond se trouve à 100 mètres du point le plus proche du yacht sur
la plage. Vitesses : course 18km/h, nage : 10km/h. Temps de désamorage : 30 secondes.
Explosion dans 65 secondes. Formaliser la faisabilité de cette mission sous la forme d’un
problème d’optimisation.
Preuve 8.4 Démonstration : Le temps de parcours du héros est f (x) = x5 +0.36 502 + (100 − x)2 .
p
On veut donc que f (x) soit inférieur à 65 − 30 = 35 secondes, ce qui conduit au problème
min f (x),
Exercice 8.5 Nous supposons que C est fermé et qu’il existe un point de C en lequel f
est finie. Supposons de plus que f est semicontinue inférieurement sur C, et f est coercive
( lim f (x) = +∞). La fonction f admet un minimum sur C.
kxk → +∞
x∈C
Preuve 8.5 Démonstration : Faisons la démonstration dans le cas où f est continue. Soit
x0 ∈ C en lequel f est finie. Une conséquence de la coercivité est que il existe α tel que
kxk > α entraı̂ne f (x) ≥ f (x0 ). Alors le problème d’optimisation revient a la minimisation
de la fonction continue f sur le compact K = {x ∈ C, kxk ≤ α}. Comme l’image continue
d’un compact est un compact, f (K) est un compact en dimension finie, donc c’est un
fermé borné. Donc le réel infx∈K f (x) qui appartient à l’adhérence de f (K) appartient à
f (K), ainsi il existe x∗ ∈ K tel que f (x∗ ) = inf x∈K f (x) ≤ f (x) pour tout x ∈ Rn .
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
80 Chapitre 8 : Optimisation sans contrainte
Exercice 8.6 Si C est convexe et si f est strictement convexe sur C, alors f admet au
plus un minimum sur C.
où l’on a posé o(h) = khk(h), avec limkhk→0 (h) = 0. Le vecteur colonne f 0 (x)T s’appelle
gradient de f en x et est noté ∇f (x). Notez que cette notion généralise la notion de
dérivabilité d’une fonction de R dans R et que f 0 (x) ne dépend pas de la norme considérée.
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 .
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
81 Chapitre 8 : Optimisation sans contrainte
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 dérivable si chaque dérivée partielle
∂f (x)
∂xi est dérivable. Une fonction est k fois dérivable si elle est k − 1 fois dérivable et si
les dérivées partielles à l’ordre k − 1 sont dérivables.
Exercice 8.9 (Dérivation d’une composée) Soit f , définie sur un ouvert O ⊂ Rn , dérivable
en tout x ∈ O. Soit d ∈ Rn . On définit localement en x la fonction de la variable réelle t
par φ : t 7→ φ(t) = f (x + td). Montrez que φ est dérivable en 0 et que
n
X ∂f (x)
φ0 (0) = ∇f (x)T d = di .
∂xi
i=1
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
82 Chapitre 8 : Optimisation sans contrainte
Exercice 8.10 Supposons que f est une fonction définie sur un ouvert convexe O et 3
fois continûment dérivable en tout x ∈ O. Montrez qu’alors la matrice carrée symétrique
∂ 2 f (x)
∇2 f (x) = [ ∂x i ∂xj
] appelée 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
où l’on a posé o(h2 ) = khk2 (h), avec limkhk→0 (h) = 0.
n X
n X
n
X ∂ 3 f (x + th)
φ000 (t) = hi hj hk .
∂xi ∂xj ∂xk
k=1 i=1 j=1
D’après la formule de Taylor avec reste intégral on a φ(1) = φ(0) + φ0 (0) + 12 φ00 (0) +
R1 2 000
1 1 2 φ000 (s)ds, et il reste à montrer que lim 0 (1−s) φ (s)ds
R
2 0 (1 − s) khk→0 khk2
= 0. En utili-
sant l’équivalence des normes en dimension finie, on peut travailler avec n’importe quelle
3
norme. Choisissons la norme infinie. Notons tout d’abord 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
| (1−s)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
∞
,
∞
d’où le résultat.
Exercice 8.12 (Taylor avec reste intégral) Supposons que f est une fonction définie sur
un ouvert convexe O et 1 fois continûment dérivable sur O. Montrez qu’alors pour tout x
et y de O, Z 1
f (y) = f (x) + ∇f (x + s(y − x))T (y − x) ds.
0
Si f est 2 fois continûment dérivable sur O,
Z 1
∇f (y) = ∇f (x) + ∇2 f (x + s(y − x))(y − x) ds.
0
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
83 Chapitre 8 : Optimisation sans contrainte
Preuve 8.12 Démonstration : 1) Soit φ la fonction continûment différentiable sur [0, 1],
φ(t) = f (x + t(y − x)). Alors le premier résultat n’est autre que
Z 1
φ(1) = φ(0) + φ0 (s) ds.
s=0
∂f (x + t(y − x))
2) Soit φi la fonction continûment différentiable sur [0, 1], φ(t) = .
∂xi
Z 1 X n
∂f (y) ∂f (x) ∂ 2 f (x + s(y − x))
Alors 1) s’écrit = + (y − x)j ds, ce qui mis
∂xi ∂xi 0 ∂xj ∂xi
j=1
sous forme matricielle donne 2), puisque par définition du Hessien, ∇2 f (x + s(y − x)) =
2
[ ∂ f (x+s(y−x))
∂xi ∂xj ].
Definition 8.5 Soit f définie sur un ouvert O ⊂ Rn à valeurs dans Rm . On dit que f
est dérivable (au sens de Fréchet) en x, si chacune des composantes fi est dérivable (au
sens de Fréchet) en x. On a alors
où l’on a posé f 0 (x) = [f1 (x)0 ; . . . ; fm (x)0 ] ∈ Rm×n ainsi que o(h) = khk(h) ∈ Rm , avec
limkhk→0 (h) = 0 ∈ Rm . La matrice
Exercice 8.13 Dérivation d’une composée. Soit f définie sur un ouvert O ⊂ Rn , différentiable
en x ∈ O, à valeurs dans Rm . Soit g définie sur un ouvert V ⊂ Rm , différentiable en
f (x) ∈ V, à valeurs dans Rp . Alors la fonction x 7→ gof (x) = g(f (x)) définie sur l’ou-
vert O est différentiable en x et vérifie (gof )0 (x) = g 0 (f (x)) · f 0 (x), où f 0 (x) ∈ Rm×n et
g 0 (f (x)) ∈ Rp×m .
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
84 Chapitre 8 : Optimisation sans contrainte
Exercice 8.14 Dérivation numérique. Pour une fonction différentiable, nous avons vu
que le calcul de la dérivée se ramène au calcul de dérivées partielles, donc de dérivées de
fonctions φ de R dans R. On suppose que φ est deux fois dérivable et que |φ00 (x)| ≤ M .
Sur un ordinateur, l’évaluation de φ se fait à près : à la place de φ(x), on calcule
φ(x) = φ(x) + δ(x), avec |δ(x)| ≤ . Posons ∆φh (x) = φ(x+h)− φ(x)
. Montrez que |φ0 (x) −
e e e
e
h
∆φh (x)| ≤ M2h + 2 h , En déduire que un choix ”raisonnable” pour h est h0 = 2 M , pour
e p
√
lequel |φ0 (x) − ∆φh0 (x)| ≤ 2 M .
e
|δ(x + h) − δ(x)|
|∆φh (x) − ∆φh (x)| = ≤2 .
e
h h
Cette erreur est une erreur numérique due au calcul de la différence 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 idée pour choisir h est de minimiser pour h > 0 la borne de l’erreur M2h + 2 h . La
dérivée vaut M
p
2 − 2 h2 et s’annule en h = 2 M , qui est bien le minimum (pour le voir
Mh
étudier la fonction h 7→ 2 + 2 h .
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
85 Chapitre 8 : Optimisation sans contrainte
∇f (x) = 0. (8.2)
Notez qu’en présence de contraintes, ce résultat ne tient plus (considérer min x).
x∈[0,1]
Preuve 8.15 Démonstration : Supposons qu’il 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 l’exercice 8.3, montrez que le principe de Fer-
mat se traduit par la loi de Snell
sinα1 sinα2
= .
c1 c2
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
86 Chapitre 8 : Optimisation sans contrainte
Preuve 8.18 Démonstration : Raisonnons par l’absurde. On suppose que x n’est pas un
minimum local de f et que ∇f (x) = 0 ; montrons que ∇2 f (x) n’est pas définie positive.
Si x n’est pas un minimum local de f , il existe une suite (xk ) convergeant vers x dont le
terme k est défini ainsi : xk est tel que 0 < kx − xk k ≤ 1/k et f (xk ) < f (x). Soit alors la
direction normalisée dk = kxxkk −x
−xk et tk = kxk − xk (i.e. xk = x + tk dk ). Comme kdk = 1,
dk appartient à un compact et on peut en extraire une sous-suite convergente. Soit d la
limite d’une telle sous-suite notée sans perdre de généralité (dk ). Alors 0 > f (xkt2)−f
/2
(x)
=
k
f (x+tk dk )−f (x)
t2k /2
= h∇2 f (x)dk , dk i + 2(tk ), et comme (tk ) → 0 on a par passage à la limite
h∇2 f (x)d, di ≤ 0. Cela montre que ∇2 f (x) n’est pas définie positive.
Preuve 8.19 Démonstration : Sans passer par les valeurs propres, le problème minkxk=1 xT Ax
admet au moins une solution xmin (fonction continue sur un compact). De plus comme A
est symétrique et définie 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. D’après les exercices 8.8 et 8.15, la condition nécessaire d’optimialité
s’écrit ∇f (x) = Ax − b = 0, ce qui entraı̂ne x = A−1 b car A est symétrique et définie posi-
tive, donc inversible. Il est normal que ce minimum vérifie aussi la condition nécessaire du
second ordre de l’exercice 8.17 (∇2 f (x) = A est semi-définie positive). De plus, il vérifie
la condition suffisante du second ordre de l’exercice 8.18 (∇2 f (x) = A est définie positive).
On s’intéresse à présent aux moindres carrés linéaires. Alors f (x) = kAx − bk22 = xT AT Ax−
2xT AT b+bT b. Nous avons vu que si rg(A) = n, alors AT A est définie positive (Ker(AT A) =
Ker(A) et formule du rang sur A, n = rg(A) + dim Ker(A), d’où Ker(AT A) = {0}. La
matrice AT A est donc symétrique définie positive). L’exercice montre alors qu’une condi-
tion nécessaire et suffisante d’optimialité est ∇f (x) = 2(AT Ax − AT b) = 0, et on retrouve
bien l’équation normale AT Ax = AT b.
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
87 Chapitre 8 : Optimisation sans contrainte
Newton’s 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
Exercice 8.20 Sous les hypothèses 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 appelée locale quadratique.
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
88 Chapitre 8 : Optimisation sans contrainte
k∇2 f (x)k ≤ 2k∇2 f (x)k et k∇2 f (x)−1 k ≤ 2k∇2 f (x)−1 k, et ∇2 f (x) est définie positive.
R1 2 (8.5)
Soit xk ∈ B(δ). Alors en utilisant l’exercice 8.12 on obtient ∇f (xk ) = 0 ∇ f (x + s(xk − x))(xk −
x) ds, qui montre que
Si Kδ < 1, xk+1 ∈ B(δ) (car kx − xk+1 k ≤ Kkxk − xkkxk − xk ≤ Kδkxk − xk) et par
induction si x0 ∈ B(δ), alors xk ∈ B(δ) pour tout k. De plus on vérifie aisément que
k
(Kδ)2
kx − xk k ≤ , ce qui montre que (xk ) converge vers x.
K
2
Pn 1
Exercice 8.21 (Critère d’arrêt) Pour la suite fn = k=1 , montrer que la stationarité
k
de fn (i.e. fn+1 −fn petit) n’indique pas la convergence. En déduire qu’arrêter une méthode
d’optimisation 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 k∇f (xk )k 4cond(∇2 f (x))kx − xk k
≤ ≤ .
4kx − x0 kcond(∇2 f (x)) k∇f (x0 )k kx − x0 k
En déduire que la norme relative du gradient est un critère d’arrêt possible si le Hessien
à l’optimum est bien conditionné.
Preuve 8.21 Démonstration : La suite fn diverge mais fn+1 − fn tend vers 0. Par les
mêmes arguments que pour la preuve de 8.20 on a pour xk ∈ B(δ),
Z
k∇f (xk )k = k ∇2 f (x + s(xk − x))(xk − x) ds,k ≤ 2k∇2 f (x)kkx − xk k.
La matrice ∇2 f (x + s(xk − x)) étant définie positive dans B(δ) l’inégalité matricielle pour
une matrice A symétrique définie positive z T z/λmax (A−1 ) = λ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 − xkk∇f (xk )k.
0 k∇ k
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
89 Chapitre 8 : Optimisation sans contrainte
kxk −xk 2
En utilisant k∇2 f (xk )−1 k ≤ 2k∇2 f (x)−1 k, on obtient 2k∇ 2 f (x)−1 k ≤ kxk − xkk∇f (xk )k.
Exercice 8.22 On recherche une matrice B e = B + ∆B, supposée mieux approcher que
B la Hessienne en x2 en considérant le problème
min k∆BkF .
∆B = ∆B T
(B + ∆B)s = y
Preuve 8.22 Démonstration : On vérifie aisément que ∆B0 s = y − Bs et que ∆B0 est
symétrique. Soit q1 = s/ ksk2 . Pour tout ∆B qui vérifie les contraintes (et en particu-
lier pour ∆B0 ), on a ∆Bq1 = ∆B0 q1 = y−Bs ksk . soient qi , i = 2, . . . n, qui complètent
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 . D‘où, en notant Q = [q 1 , . . . , q n ], k∆B0 QkF = i=1 k∆B0 qi k2 ≤
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
90 Chapitre 8 : Optimisation sans contrainte
Pn 2
= k∆BQk2F . En utilisant le fait que la norme de Frobenius est unitairement
i=1 k∆Bqi k2
invariante, on obtient k∆B0 kF ≤ k∆BkF , d’où le résultat.
Exercice 8.23 Soit f une fonction deux fois R 1 continûment dérivable, telle que ∇2 f (x)
2
est définie positive pour tout x. Soit G = 0 ∇ f (x1 + s(x2 − x1 )) ds. La matrice G
est symétrique définie positive. Soit une matrice symétrique W telle que W 2 = G. On
s’intéresse au problème
−1
W ∆BW −1
.
min F
∆B = ∆B T
(B + ∆B)s = y
Noter qu’alors
ysT sy T yy T
B + ∆B0 = I− T B I− T + T .
s y s y s y
min k∆kF .
∆ = ∆T
(W −1 BW −1 + ∆)W s = W −1 y
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
91 Chapitre 8 : Optimisation sans contrainte
Exercice 8.24 Nous avons vu que dans la méthode de Newton, il s’agit se résoudre des
systèmes linéaires de la forme ∇2 f (xk )s = ∇f (xk ). D’où l’idée d’approcher ∇2 f (xk )−1
plutôt que ∇2 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 k∆Hk,
∆H = ∆H T
(H + ∆H)y = s
min kW ∆HW kF .
∆H = ∆H T
(H + ∆H)y = s
2
Deux principales difficultés sont rapportées dans la littérature sur la méthode de New-
ton pour la minimisation :
1. Son mauvais comportement lorsque le point de départ est loin de la solution sur des
problèmes pour lesquels certains Hessiens ∇2 f (xk ) sont définis positifs.
2. Son mauvais comportement lorsqu’elle rencontre des Hessiens ayant des valeurs
propres négatives ou nulles.
Une amélioration possible pour le problème 1) est la mise en place de stratégies de re-
cherches linéaires. Le point 2) est souvent appréhendé en utilisant des techniques de région
de confiance.
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
92 Chapitre 8 : Optimisation sans contrainte
Nous voyons dans la suite deux techniques visant à rendre le convergence moins
dépendante du point de départ. Ces deux techniques sont appelées techniques de globa-
lisation, et chercheront à approcher une convergence locale quadratique au voisinage des
solutions de ∇f (x) = 0. Ces solutions sont appelées points critiques du premier ordre.
Recherche linéaire
Dans cette section, on suppose que la fonction f est deux fois continûment dérivable.
Exercice 8.26 Si dk est une direction de descente en xk , alors il existe η > 0 tel que
Preuve 8.26 Démonstration : Soit φ(t) = f (xk + tdk ). Alors φ0 (t) = ∇f (xk + tdk )T dk ,
donc comme φ0 est continue, et φ0 (0) < 0, il existe 0
R t un0 intervalle ]0, η] où φ (t) < 0. Alors
pour t dans ]0, η], on a f (xk + αdk ) − f (xk ) = s=0 φ (s) ds < 0.
Exercice 8.27 L’algorithme 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 · 2−k−1 . Vérifier que xk = (−1)k (1 + 2−k ) et
que chaque direction dk est de descente. Vérifier aussi que la suite ne converge pas,
que f (xk+1 ) < f (xk ) et que limk→+∞ f (xk ) = 1. Tracer les itérés et vérifier qu’entre
deux itérés successifs, la décroissance de f est très petite par rapport au pas |αk dk |.
2. On choisit dk = −1 et αk = 2−(k+1) . Vérifier que xk = 1+2−k et que chaque direction
dk est de descente. Vérifier 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 itérés et vérifier qu’entre
deux itérés successifs, les pas |αk dk | deviennent très petits par rapport à |f 0 (xk )dk |.
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
93 Chapitre 8 : Optimisation sans contrainte
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ès suffisant)
Ces deux conditions pallient respectivement les deux types de problèmes rencontrés dans
l’exercice 8.27. Si α → f (xk + αdk ) admet un minimum global, celui-ci vérifie les condi-
tions de Wolfe (mais peut être très ou trop cher à calculer à des étapes préliminaires de
convergence).
Exercice 8.28 Validité des conditions de Wolfe. Soient f : Rn → R une fonction différentiable,
un point xk ∈ Rn et une direction (de descente) dk ∈ Rn telle que f est bornée inférieurement
dans la direction dk (c’est-à-dire il existe f0 tel que f (xk + αdk ) ≥ f0 pour tout α ≥ 0).
Pour 0 < β1 < 1, il existe η tel que la première condition de Wolfe soit vérifiée 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 vérifiées.
Preuve 8.29 Démonstration : On s’intéresse 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 bornée
inférieurement), fermé (image réciproque de {0}) et borné inférieurement. Donc cet en-
semble admet un plus petit élément α1 , qui vérifie
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
94 Chapitre 8 : Optimisation sans contrainte
Le théorème ci-dessus indique que si l’angle entre dk et ∇f (xk ) ne converge pas vers
l’angle droit, la limite du gradient de l’itéré est 0 (on vérifie asymptotiquement la condi-
tion nécessaire du premier ordre) quel que soit x0 . C’est donc un résultat de convergence
globale. Malheureusement cet algorithme peut avoir une convergence très lente si dk n’est
pas choisi avec soin. Par exemple, le choix dk = −∇f (xk ) s’avère un très mauvais choix
si l’algorithme converge vers un point x? tel que cond(∇2 f (xk )) est grand : la convergence
est linéaire, avec une vitesse de convergence modeste.
Dans le cas d’une convergence vers un point x∗ tel que ∇2 f (x∗ ) est défini positif
(condition suffisante du second ordre), l’idée consiste alors à préconditionner la recherche
linéaire et à la combiner avec la méthode de Newton qui est localement quadratiquement
convergente, comme le fait l’algorithme ci-dessous. Il est possible de montrer que lorsque
les itérés s’approchent d’une solution qui vérifie les conditions suffisantes d’optimalité au
second ordre, le pas de Newton est accepté et la convergence est quadratique.
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
95 Chapitre 8 : Optimisation sans contrainte
Région de confiance
Definition 8.10 Modèle quadratique. On appelle modèle 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 ∈ Rn×n telle que
1
mk (xk + s) = f (xk ) + ∇fk (xk )T s + sT Hk s.
2
Definition 8.11 Région de confiance. On appelle région de confiance Euclidienne centrée
en xk , de rayon ∆k > 0 la sphère Bk = xk + {s, ksk2 ≤ ∆k }.
On note xk+1 = xk + sk le point ainsi obtenu. La condition technique portant sur xk+1
demandée pour les résultats de convergence est la condition dite de décroissante suffisante :
min mk (x)
t>0
x = xk − t∇m(xk ) ∈ Bk
vérifie
k∇mk (xk )k2
1
mk (xk ) − mk (xC
k) ≥ k∇mk (xk )k2 min , ∆k .
2 βk
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
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 d’abord que t∗ kgk k = gkT Hk gk
≤ ∆k , donc xk − t∗ gk est dans
la région de confiance et c’est 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ème cas. Supposons maintenant que gkT Hk gk
≥ ∆k . Alors gkT Hk gk ≤ ∆k et
le minimum dans la région de confiance est donc atteint sur la frontière (faire un
dessin). Alors t∗ kgk k = ∆k et xC
k = xk − ∆k gk et
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
97 Chapitre 8 : Optimisation sans contrainte
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
98 Chapitre 8 : Optimisation sans contrainte
Preuve 8.33 Démonstration : Considérons φ(x) = fi (x)2 . Alors, par dérivation d’une
m
∂φ(x) ∂fi (x) ∂F (x) X ∂fi (x)
composée, = 2fi (x) , et donc = fi (x), ce qui implique
∂xj ∂xj ∂xj ∂xj
i=1
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
99 Chapitre 8 : Optimisation sans contrainte
∂fi (x)
Pour la dérivée seconde, si on note ψ(x) = 2fi (x) , on a
∂xj
Nous avons vu dans l’exercice 8.30 que pour la fonction des moindres carrés non
linéaires, 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
d’utiliser des variantes de la méthode de Newton pour minimiser F (x), en utilisant une
recherche linéaire ou une région de confiance.
On remarque que ∇2 f (x) s’écrit sous la forme d’un terme ne faisant intervenir que
des
Pmdérivations (Df (x)T Df (x)) et un terme faisant intervenir des dérivations d’ordre 2
( i=1 fi (x)∇2 fi (x)). Il est donc tentant d’approcher ∇2 f (x) par le terme Df (x)T Df (x)
pour éviter le calcul de dérivées d’ordre 2. La variante de Newton faisant cette approxi-
mation s’appelle la méthode de Gauss-Newton
(GN ) : xk+1 = xk − (Df (xk )T Df (xk ))−1 Df (xk )T Df (xk ) = xk − Df (xk )+ f (xk ).
Cette méthode n’est même pas toujours localement convergente (il existe des points fixes
répulsifs). En la globalisant par une recherche linéaire où des régions de confiance on
obtient des méthodes globalement convergentes très utilisées en pratique.
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
100 Chapitre 8 : Optimisation sans contrainte
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
Chapitre 9
9.1 Introduction
Nous avons vu dans le chapitre précédent des conditions nécessaires d’optimalité pour
des problèmes
P : min f (x)
x∈C
sans contrainte, c’est à dire dans le cas où C est Rn tout entier. Nous considérons à présent
des situation où C est strictement inclu dans Rn , et exhibons diverses conditions dépendant
de la nature topologique de C.
Preuve 9.1 Démonstration : Soit x̄ une solution locale. Pour tout > 0, notons B(x̄, ) la
boule centrée 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 ,
101
102 Chapitre 9 : Optimisation avec contraintes
et
f (x) ≥ f (x + t(y − x)) + f 0 (x + t(y − x))(−t)(y − x),
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 Convexité sur C = Rn . Soit f une fonction deux fois différentiable sur
Rn . Alors f est convexe sur Rn si et seulement si ∇2 f (x) ∈ Rn est une matrice semi-
définie positive pour tout x ∈ Rn . La fonctionnelle des moindres carrées kAx − bk22 est
donc convexe. La quadratique 12 xT Ax − xT b, avec A symétrique semi-définie positive l’est
aussi.
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
103 Chapitre 9 : Optimisation avec contraintes
Exercice 9.5 (Egalité d’Euler) Supposons que f est dérivable dans l’ouvert O et que
C ⊂ O. Supposons que C est ouvert, et que f et C sont convexes.
Alors x̄ ∈ C est une solution locale de P si et seulement si f 0 (x̄) = 0.
Preuve 9.5 Démonstration : On suppose que x̄ ∈ C est une solution locale de P, alors
l’exercice 9.4 permet de conclure.
Réciproquement, supposons que f , qui est une fonction convexe dérivable, vérifie
0
f (x̄) = 0 en x̄ ∈ C. Alors par caractérisation de la convexité, pour tout x ∈ C, f (x) ≥
f (x̄) + f 0 (x̄)(x − x̄)), d’où f (x) ≥ f (x̄).
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
104 Chapitre 9 : Optimisation avec contraintes
Exercice 9.7 (Inégalité d’Euler) Supposons que f est dérivable dans l’ouvert O et que
C ⊂ O. Supposons f et C sont convexes.
Alors x̄ ∈ C est une solution locale de P si et seulement si ∀x ∈ C, f 0 (x̄)(x − x̄) ≥ 0.
Preuve 9.7 Démonstration : Si x̄ ∈ C est une solution locale de P, l’exercice 9.6 permet
de conclure. Réciproquement, comme f est convexe, alors f (x) ≥ f (x̄) + f 0 (x̄)(x − x̄).
Comme f 0 (x̄)(x − x̄) ≥ 0, on a, ∀x ∈ C, f (x) ≥ f (x̄).
2
Exercice 9.8 Supposons que f est dérivable dans l’ouvert O et que C ⊂ O. Si x̄ ∈ C est
une solution locale de P alors ∀φ ∈ Kt (C, x̄), f 0 (x̄)φ ≥ 0.
Preuve 9.8 Démonstration : Soit x̄ ∈ C est une solution locale de P et soit φ ∈ Kt (C, x̄).
Soit alors les suites (xn ) et (tn ) associées à φ. Alors
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̄k(xn − x̄) ≥ 0 puis que f 0 (x̄)tn (xn − x̄)+ktn (xn − x̄)k(xn − x̄) ≥ 0.
En passant à la limite, on obtient f 0 (x̄)d + 0 ≥ 0.
2
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
105 Chapitre 9 : Optimisation avec contraintes
Exercice 9.9 Si x̄ est un point régulier de la surface d’équation h(x) = 0, alors Kt (C, x̄) =
Ker h0 (x̄).
Preuve 9.9 Démonstration : Supposons que φ ∈ Kt (C, x̄). Alors il existe deux suites xk
et αk provenant de la définition 9.1. On a alors
L : Rn × Rm → R
(x, λ) 7→ f (x) + λT h(x).
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
106 Chapitre 9 : Optimisation avec contraintes
Exemple 9.5 De toutes les boı̂tes à surface donnée S, quelles sont celles de volume maxi-
q 3
mum ? Montrer que ce volume maximal est S6 .
Preuve 9.11 Démonstration : Soit xi ≥ 0 les longeurs des cotés. Le problème s’écrit
min −x1 x2 x3 .
x1 x2 +x1 x3 +x2 x3 =S/2
les contraintes ne sont pas qualifiées, xi = −xj pour i 6= j, donc les xi sont tous nuls. Un tel
point ne satisfait pas la contrainte. Supposons donc les contraintes qualifiées et les xi > 0.
Les conditions KTL s’écrivent 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 d’après les 3 premières équations, 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 nécessairement, λ 6= 0. De
même, si un des xi est nul, par exemple x1 , −x1 x3 + λ(x1 + x3 ) = 0 entraı̂ne 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ères
égalités, on obtient xx12 = xx21 +x
+x3 , ce qui donne x3 (x2 − x1 ) = 0, donc x2 = x1 (x3 6= 0).
3
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
107 Chapitre 9 : Optimisation avec contraintes
q
un cube, x1 = x2 = x3 = c avec c solution de min −c3 , c’est à dire c = S
6 , et
3c2 =S/2
q q 3
S
λ = 12c = 12 S6 , la valeur a l’optimum est alors − S6 donnant un volume maximal de
q 3
S
6 .
2
Exemple 9.6 On s’intéresse au problème dans R2 suivant
1
min kx − ak2 .
x1 =0 2
et montrer que les valeurs propres de A sont les valeurs des optima.
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
108 Chapitre 9 : Optimisation avec contraintes
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ème de départ est une solution du
système KTL.
Les solutions du système KKT sont Ax = λx et kxk = 1, ce sont donc les vecteurs
propres de A normalisés. 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 déduit que la valeur minimale est λ1 . En raisonnant sur −A,
on obtient que la valeur maximale est λn .
∂ 2 L(x̄, λ̄)
φT φ ≥ 0.
∂x2
Preuve 9.14 Démonstration : Soit x̄ ∈ C est une solution locale de P et soit φ ∈
Kt (C, x). Soit alors la suite (xn ) et la suite positive (tn ) associées à φ. Alors en faisant un
développment de Taylor Young de x 7→ L(x, λ̄) on obtient
∂L 1 ∂2L
f (xn )+λ̄T h(xn ) = f (x̄)+λ̄T h(x̄)+ (x̄, λ̄)(xn −x̄)+ (xn −x̄)T 2 (x̄, λ̄)(xn −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ère
local du minimum contraint de f :
1 ∂2L
0 ≤ (xn − x̄)T 2 (x̄, λ̄)(xn − x̄) + kxn − x̄k2 (xn − x̄).
2 ∂x
En multipliant cette équation par t2n et en passant a la limite n → +∞, on obtient
∂2L
0 ≤ φT (x̄, λ̄)φ.
∂x2
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
109 Chapitre 9 : Optimisation avec contraintes
∂ 2 L(x̄, λ̄)
φT φ > 0, (9.3)
∂x2
alors x̄ ∈ C est une solution locale de P.
1 ∂2L
0 ≥ (xn − x̄)T 2 (x̄, λ̄)(xn − x̄) + kxn − x̄k2 (xn − x̄).
2 ∂x
En multipliant par αn2 et en passant à la limite n → +∞, on obtient
1 ∂2L
0 ≥ φT 2 (x̄, λ̄)φ,
2 ∂x
ce qui est la contradiction attendue.
2
et on pose φ(u) = inf{f (x), h(x) = u}. On suppose que f et h sont deux fois continûment
dérivables dans un voisinage de x̄ sachant que
1. le point x̄ est un point régulier de C (h0 (x̄) est surjectif ),
2. le point x̄ est une solution locale de P ,
3. pour tout φ 6= 0 tel que φ ∈ Kt (C, x̄) = Ker(h0 (x̄)), on a
∂ 2 L(x̄, λ̄)
φT φ > 0. (9.4)
∂x2
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
110 Chapitre 9 : Optimisation avec contraintes
est injective carrée donc inversible. Soit en effet (x1 , λ1 )T un vecteur du noyau de
cette matrice. Il vérifie
∂ 2 L(x̄, λ̄) 0
2
x1 + h T (x̄)λ1 = 0 et h0 (x̄)x1 = 0,
∂x
et
∂ 2 L(x̄, λ̄) T 0T
2
T ∂ L(x̄, λ̄)
xT1 x 1 + x 1 h (x̄)λ 1 = x 1 x1 = 0.
∂x2 ∂x2
L’hypothèse 3. montre alors que comme x1 ∈ Ker(h0 (x̄) , on a x1 = 0, et donc
0 0
h T (x̄)λ1 = 0. Comme h0 (x̄) est surjectif, la formule du rang sur h T (x̄) montre que
0T
h (x̄) est injectif, et donc λ1 = 0.
3. Considérons le système KTL perturbé
0
f (x) + λT h0 (x)
g((x, λ), u) = = 0.
h(x) − u
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
111 Chapitre 9 : Optimisation avec contraintes
La dérivée de u 7→ φ(u) = f (x(u)) est alors, par composition, φ0 (0) = f 0 (x(0))x0 (0).
En dérivant h(x(u)) − u par rapport à u en 0, on obtient h0 (x(u))x0 (0) = I. En
multipliant f 0 (x(0)) + λ(0)T h0 (x(0)) = 0 à droite par x0 (0) on obtient φ0 (0) =
−λ(0)T h0 (x(0))x0 (0) = −λ(0)T .
4. Il reste à montrer que x(u) est une solution locale de pour u suffisamment petit et
pour cela on montre que les hypothèses de l’exercice 9.12 sont satisfaites pour Pu .
La relation (9.5) montre que (9.2) est vraie pour le problème perturbé et pour kuk
suffisamment petit.
Enfin la relation (9.4) est vraie pour le problème perturbé Pu grâce à un argument
2
de continuité. Supposons pour établir une contradiction que ∂ L(x(u),λ(u))
∂x2
n’est pas
définie positive dasn le noyau de h0 (x(u)), même pour u très 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
à la sphère unité, et il existe k0 tel que k ≥ k0 entraı̂ne kx̄ − x(uk )k ≤ 1/2. Ainsi
(vk ) et x(uk ) sont dans des ensembles compacts, et il est possible d’en 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 (x̄)v̄ = 0 et v̄ T v̄ ≤ 0,
∂x2
ce qui est impossible d’après l’hypothèse 3..
5. Pour finir, si on revient à l’exercice 9.5, si l’on perturbe la surface en S/2 + u, le
q 3 q
volume est S6 + u2 S6 + o(u)
où A ∈ Rn×n est symétrique définie positive, et B ∈ Rm×n est surjective (i.e. de rang
maximum m). Ce sous-problème intervient dans les méthodes SQP où la fonction est
représentée par un modèle quadratique, et les contraintes sont linéarisées.
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
112 Chapitre 9 : Optimisation avec contraintes
Bx = 0
Si une solution du système existe et est unique, elle vérifie la condition suffisante du second
2
ordre de l’exercice 9.12 car ∂∂xL2 (x, λ) = A est définie positive.
2
Exercice 9.15 Montrez que le système KKT admet une unique solution, et donc que
l’unique solution de KKT est l’unique solution de P.
Preuve 9.18 Démonstration : Pour cela il suffit de montrer que la matrice du système
linéaire est injective et carrée, donc inversible. Suposons que
Ax + B T λ = 0
Bx = 0
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
113 Chapitre 9 : Optimisation avec contraintes
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
Preuve 9.20 Démonstration : Le problème d’optimisation est simplement minx ∈Rn 12 xT A x−
xT b, et comme A est définie positive, la condition nécessaire et suffisante d’optimalité
est bien A x = b. Lorsque est petit, le minimum sera atteint vraisemblablement pour
kBx k2 petit. On dit qu’on a pénalisé la contrainte, du problème P.
Exercice 9.18 On suppose que (x, λ) et (x , λ ) sont solutions respectives de (9.7) et (9.8).
On s’intéresse à la limite de (x , λ ) pour → 0.
1. Montrez que x = x − x et λ = λ − λ vérifient
Ax + B T λ = 0
(9.10)
Bx − λ = λ
et en déduire que
β
λ
2 ≤ kλk2 , (9.12)
puis que p
αβ kx k2 ≤ kλk2 . (9.13)
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
114 Chapitre 9 : Optimisation avec contraintes
2 2
2 2
kλk22 ,
α kx k2 ≤ α kx k2 +
λ
2 ≤ kλk2
λ
2 ≤
β
Exercice 9.19 Cas où B est de rang strictement inférieur à min{m, n}. On suppose que
(x, λ) et (x , λ ) sont solutions respectives de (9.7) et (9.8). On s’intéresse à la limite de
(x , λ ) pour → 0.
1. Vérifiez que la solution du système (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 + kλk2 ).
√ √
3. En conclure que 2α kx k2 ≤ kλk2 et donc que lim→0 x = x. L’erreur est donc
√
en O( ), et la convergence de λ n’est pas acquise.
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
115 Chapitre 9 : Optimisation avec contraintes
2
2 1
2
α kx k2 +
λ
2 ≤ kλk2
λ
2 ≤ (
λ
2 + kλk22 ),
(9.14)
2
2
2 √ √
ce qui implique α kx k2 + 2
λ
2 ≤ 12 kλk22 , d’où l’on tire 2α kx k2 ≤ kλk2 .
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
116 Chapitre 9 : Optimisation avec contraintes
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
Chapitre 10
10.1 Introduction
Nous avons vu dans le chapitre précédent des conditions nécessaires d’optimalité pour
des problèmes
min f (x).
h(x) = 0
Dans de nombreux cas pratique, les contraintes mettent en jeu des contraintes d’inégalité
du type g(x) ≥ 0, où g : Rn 7→ Rp et g(x) = (g1 (x), . . . p, gp (x))T . Le problème que nous
avons à traiter est donc
P : min f (x).
h(x) = 0
g(x) ≤ 0
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.
Pa : min (x − a)2 .
x≤4
−x ≤ −1
117
118 Chapitre 10 : Optimisation avec contraintes d’inégalité
Proposition 10.2 Supposons que g et h sont des applications continues. Tout minimum
local x∗ du problème P, et d’indices de contraintes actives I ∗ est un minimum local du
problème
PI : min f (x).
h(x) = 0
gi (x) = 0, si i ∈ I
Preuve 10.2 Démonstration : Soit x∗ ∈ S. Soit I l’ensemble 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 à
présent ∗ tel que [kx − x∗ k < i et h(x) = 0 et g(x) ≤ 0] → f (x∗ ) ≤ f (x) < 0. Donc si
= min(∗ , mini∈I ∗ ∗
/ 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.
L : Rn × Rm × Rp → R
(x, λ, µ) 7→ f (x) + λT h(x) + µT g(x).
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
119 Chapitre 10 : Optimisation avec contraintes d’inégalité
Nous allons dériver des caractérisations des optima locaux du problème sous l’hypothèse
que les contraintes sont suffisament régulières.
Definition 10.4 (Qualification des contraintes) On dit que les contraintes sont qualifiées
en x, d’indices de contraintes actives I(x) = [i1 , . . . im̄ ] si et seulement si
1. h et g sont continûment différentiable 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ù x → 7 gI (x) =
gI0 (x)
(gi1 (x), . . . , gim̄ (x)) .
Proposition 10.5 On suppose que x̄ ∈ C est une solution locale de P vérifiant l’hypothèse
de qualification des contraintes. Si les fonctions f et g et h sont continûment différentiables
dans un ouvert O contenant x̄, il existe λ̄ ∈ Rm , et µ̄ ∈ Rp tel que
µ̄ ≥ 0, j = 1, . . . p,
j
µ̄j gj (x̄) = 0, j = 1, . . . p.
Preuve 10.4 Démonstration : Nous présentons ici une démonstration concise, mais moins
intuitive que dans le cas des égalités. Pour toute fonction u on définit sa partie positive
u+ par par u+ (x) = max(0, u(x)). Soit x̄ un minimum local du problème P. Pour tout
entier naturel k, et pour tout réel non négatif α, on introduit la fonction de type Lagran-
gien Fk (x) = f (x) + 2 kh(x)k + 2 j∈I [gj+ (x)]2 + α2 kx − x̄k. Comme x̄ est une minimum
k 2 k P
local du problème avec contrinate d’égalités h(x) = 0 et gI (x) = 0, il existe une boule
fermée B centrée 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 à présent xk le minimum global de Fk sur B . On a alors
Fk (xk ) ≤ Fk (x̄) = f (x̄), et donc la suite (Fk (xk )) est bornée. Comme f (xk ) est bornée
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 d’accumulation de la suite. Par prolongement de l’inégalité
Fk (xk ) ≤ f (x̄) inégalié, il vérifie f (x̂) + α2 kx̂ − x̄k ≤ f (x̄) ≤ f (x̄). Puisque x̂ est admissible
pour le problème à contraintes d’égalité et d’inégalités active, et est dans B , on a de plus
f (x̄) ≤ f (x̂). Ainsi, x̂ = x̄, et la suite (xk ) converge vers x̄. En écrivant la condition de
stationnarité de Fk en xk , on obtient
kh1 (xk )
..
.
khm (xk )
∇f (xk ) + [∇h1 (xk ), . . . ∇hm (xk ), ∇gi1 (xk ), . . . , ∇gim̄ (xk )]
+ α(xk − x̄) = 0.
kg i 1 (x k )
..
.
kgim̄ (xk )
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
120 Chapitre 10 : Optimisation avec contraintes d’inégalité
µ̄ ≥ 0, j = 1, . . . p,
j
µ̄j gj (x̄) = 0, j = 1, . . . p,
∂ 2 L(x̄, λ̄)
φT φ ≥ 0.
∂x2
Proposition 10.7 (Interprêtation des multiplicateurs de Lagrange) On considère les problèmes
et on pose φ(u) = inf{f (x), h(x) = u, g(x) ≤ v}. On suppose que f et h sont deux fois
continûment dérivables dans un voisinage de x̄ sachant que
1. le point x̄ est un point régulier,
2. le point x̄, de contraintes actives I, vérifie les conditions suivantes d’optimalité locale
∂ 2 L(x̄, λ̄)
φT φ > 0.
∂x2
Le point x̄ est alors une solution locale de P,
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
121 Chapitre 10 : Optimisation avec contraintes d’inégalité
Alors il existe un voisinage de (u, v) = 0 ∈ Rm+p , où Pu admet une solution locale
x(u, v) et des multiplicateurs de Lagrange associés λ(u, v) et µ(u, v). La fonction (u, v) 7→
f (x(u, v)) = φ(u, v) est alors dérivable 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 fabriqués, et rapportent
par unité, ei kilo euros en nécessitant ti heures de travail machines et qi tonnes de matières
premières. On dispose de 10 heures en tout de travail machines, et de 15 tonnes de
matières premières. Formaliser ce problème sous la forme d’un problème d’optimisation
et le résoudre, pour (e1 , t1 , q1 ) = (6, 2, 1) et (e2 , t2 , q2 ) = (5, 1, 3). Est-il intéressant, fi-
nancièrement, d’augmenter la quantité de matière premières ? Jusqu’à 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 à la solutions seront les deux premières
contraintes. La solution du problème est donnée par les points critiques de la fonction
L(x, µ1 , µ2 ) = −6x1 − 5x2 + µ1 (2x1 + x2 − 10) + mu2 (x1 + x2 − 15). La solution est donnée
par le système linéaire
−6 + 2µ1 + µ2 = 0
−5 + µ1 + 3µ2 = 0 ,
x1 + 3x2 = 15
ce qui donne (x1 , x2 , µ1 , µ2 ) = (3, 4, 13/5, 4/5). Si on augemnte les matières premières de
15 à 15 + M , le gain augmente de 4/5M . Par contre pour M > 15, la seconde contrainte
cesse d’être active. Dans ce cas, il ne sert à plus rien d’augmenter les matières premières,
il faut augmenter aussi les 10 heures machines.
2
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
122 Chapitre 10 : Optimisation avec contraintes d’inégalité
2
1. Le lagrangien du problème s’écrit
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
123 Chapitre 10 : Optimisation avec contraintes d’inégalité
On obtient alors t = 1/2, x(3) = (2, 0)+1/2(0, 2) = (2, 1), et on a activé la contrainte
4. Donc I (3) = {3, 4}. item[1.] Le lagrangien du problème s’écrit
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
124 Chapitre 10 : Optimisation avec contraintes d’inégalité
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
Chapitre 11
Introduction à l’optimisation
multicritères
Exemple 11.1 Conception d’aile d’avion multicritère. Nous considérons une conception
d’aile telle que l’on veuille minimiser simultannément la trainée en plusieurs conditions de
croisière (plusieurs conditions de vol) simultanément. Nous considérons alors le problème
Definition 11.2 On appelle espace des critères l’espace dans lequel les différentes sur-
faces du problème sont paramétrés en prenant les critères comme paramètres. L’exer-
cice 11.1 explicite cette notion.
125
126 Chapitre 11 : Introduction à l’optimisation multicritères
√
où f1 (x) = 1 + x et f2 (x) = x2 − 4x + 5. L’espace de décision est R et l’espace des
critères est R2 . Figure 11.1 représente le problème dans l’espace de décision. Nous voyons
que f1 and f2 n’atteignent pas de minimum pour les mêmes valeurs de x dans [0, +∞[.
Représenter la situation dans l’espace des critères.
Preuve 11.1 Démonstration : Considérons à présent l’espace des critères. Dans cet es-
pace, le problème est paramétrisé en utilisant les valeurs des fi (x) comme paramètre. Pour
obtenir
√l’image de l’ensemble des points admissibles dans l’espace des critères, 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, l’ensemble des contraintes {x : x ≥ 0} est représenté dans l’espace des critères
par l’arc {(y1 , y2 ) : y2 = y14 − 6y12 + 10, y1 ≥ 1}, illustré en gras sur la Figure 11.4. Le
point important est de décider quel point sur cet arc est la meilleure solution du problème
multicritère.
6
f1 (x) =5 4x+x2
4
1
f2 (x) =(x+1)2
2
0 2 4 6
x
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
127 Chapitre 11 : Introduction à l’optimisation multicritères
10
√
y1 = 3
8
y2 6
y2 =y14 6y12 +10
4
0
0 1 2 3 4
y1
L’ensemble Y := {(f1 (x), . . . , fk (x)) | x Pareto optimal} est appelé front (ou sur-
face) de Pareto pour le problème d’optimisation multicritère donné. On voit sur la fi-
gure 11.4 qu’en général, que cet ensemble Y n’est pas un ensemble très simple. Dans un
problème multicritère la personne chargée de la minimisation cherche en général plusieurs
(et idéalement, toutes les) solutions Pareto optimales. C’est ensuite un décideur qui fait
sa préférence en fonction de critères plus ou moins formalisés mathématiquement.
Un technique très répendue d’exploration du front de Pareto est la technique de la
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
128 Chapitre 11 : Introduction à l’optimisation multicritères
Cette procédure est dite de scalarisation (on remplace la minimisation d’un vecteur par
celle d’un scalaire).
Exercice 11.2 Toute solution de Pp est un point Pareto optimal pour le problème de
minimisation multicritère de (f1 , . . . , fk ) sur C. Interprêter géométriquement ce résultat.
Cette technique permet-elle de décrire complètement le front de Pareto sur la figure 11.4 ?
et
fi0 (x) < fi0 (x̄) pour un certain i0 ∈ {1, . . . , k} .
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 ).
Interprétons géométriquement cette procédure de scalarisation (avec deux critères f1
et f2 ).
Pour résoudre (Pp ), on minimise p1 y1 + p2 y2 sur F = f (C) ce qui correspond à
chercher une droite p1 y1 + p2 y2 = c d’ordonnée à l’origine minimale et s’appuyant sur F.
Non, si le front de Pareto n’est pas lui même convexe, cette technique ne permet pas de
décrire la totalité du front.
Une autre technique de scalarisation fort employée est la technique C -contrainte, où
l’on se ramème à un probllème mono-critère en traitant les p−1 autres critères sous forme
de contrainte. Pour ce faire, on introduit le problème
min fj (x)
P(, j) : x∈X , (11.1)
subject to
fi (x) ≤ i , i = 1, . . . , p, i 6= j
Exercice 11.3 Supposons que P(, j) admette une solution unique x̄, alors elle est Pareto
optimale. Réciproquement toute solution Pareto optimale est solution d’un certain P(, j).
Appliquer ce résultat au problème de la figure 11.4.
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
129 Chapitre 11 : Introduction à l’optimisation multicritères
Preuve 11.3 Démonstration : Supposons que x̄ est solution de P(, j) et qu’il existe x ∈
C qui domine x. D’après la définition,
et
fi0 (x) < fi0 (x̄) pour un certain i0 ∈ {1, . . . , k} .
Alors x est une autre solution de P(, j), ce qui est impossible. La réciproque s’établit
aisément en considérant P(, j) pour = (f1 (x̄), . . . , fk (x̄))T et j = 1.
Exercice 11.4 Toute solution de commune à P(, j), pour j = 1, . . . k, est un point Pareto
optimal pour le problème de minimisation multicritère de (f1 , . . . , fk ) sur C. Réciproquement,
si x̄ est Pareto optimal, il existe tel que x̄ est solution de tous les problèmes P(, j), pour
j = 1, . . . k. Interprêter géométriquement ce résultat.
Preuve 11.4 Démonstration : Supposons que x̄ est solution de P(, j) pour tout j et qu’il
existe x ∈ C qui domine x. D’après la définition,
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h
130 Chapitre 11 : Introduction à l’optimisation multicritères
et
fi0 (x) < fi0 (x̄) pour un certain i0 ∈ {1, . . . , k} .
Cela qui contredit le fait que x̄ est solution de P(, i0 ). Pour la réciproque, il suffit de
prendre = (f1 (x̄), . . . , fk (x̄))T . Alors x̄ est solution de P(, j) pour tout j.
Les techniques les plus sûres pour décrire le front même lorsqu’il n’est pas convexe
sont basées sur des algorithmes génétiques. Ces techniques ont besoin d’évaluer de très
nombreuses fois les fonctions et sont donc peu praticables pour les fonctions très coûteuses
que l’on ne sait pas approximer avec peu de calculs. De nombreuses techniques d’approxi-
mation sont disponibles pour résoudre ces problèmes : utilisation de réseaux de neurones,
de techniques krigeage, ou de support vector machines.
S. Gratton, Analyse matricielle et Optimisation, Éd. Ress. Pédag. Ouv. INPT, 0727 (2014) 24h