Sunteți pe pagina 1din 109

AO101 2010-2011

Optimisation quadratique

Patrick Ciarlet & Hasnaa Zidani

(29 novembre 2013)


2 Ciarlet & Zidani
Table des matières

1 Introduction 5
1.1 Quelques exemples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.2 Plan et objectifs de ce cours . . . . . . . . . . . . . . . . . . . . . . . . 7

2 Existence, Unicité d’un minimum 9


2.1 Cadre du problème . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2 Existence d’un minimum : résultats généraux . . . . . . . . . . . . . . 9
2.2.1 Exemple de résolution d’un problème de minimisation . . . . . 11
2.3 Convexité et unicité . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.4 Propriétés des fonctions convexes. . . . . . . . . . . . . . . . . . . . . 16

3 Conditions nécessaires et suffisantes 19


3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.2 Conditions d’optimalité . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.2.1 Cas général . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.2.2 Cas convexe . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.3 Contraintes d’égalité affines . . . . . . . . . . . . . . . . . . . . . . . . 27
3.3.1 Le Lagrangien . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.3.2 Fonctionnelle quadratique et contraintes d’égalité affines . . . . 30
3.4 Contraintes d’inégalité affines . . . . . . . . . . . . . . . . . . . . . . . 32
3.5 Point-selle. Programmation linéaire . . . . . . . . . . . . . . . . . . . . 35
3.6 Contraintes d’égalité et d’inégalité affines . . . . . . . . . . . . . . . . . 38

4 Moindres carrés linéaires 39


4.1 Problèmatique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.2 Le formalisme abstrait et son étude : pourquoi des carrés ? . . . . . . . 41
4.2.1 L’approche directe . . . . . . . . . . . . . . . . . . . . . . . . . 42
4.2.2 Une astuce de calcul . . . . . . . . . . . . . . . . . . . . . . . . 44
4.2.3 Existence du point de minimum . . . . . . . . . . . . . . . . . 44
4.2.4 Moindres carrés contraints . . . . . . . . . . . . . . . . . . . . 47
4.3 Décomposition en valeurs singulières . . . . . . . . . . . . . . . . . . . 47

3
4 Ciarlet & Zidani

5 Algorithmes pour problèmes sans contraintes : Fonctionnelle quadratique 53


5.1 Précisions Numériques. Critères associés à la convergence . . . . . . . 54
5.2 Taux et vitesse de convergence . . . . . . . . . . . . . . . . . . . . . . . 57
5.3 Méthodes de descente . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
5.3.1 Relaxation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
5.3.2 Gradient à pas fixe, à pas optimal . . . . . . . . . . . . . . . . 63
5.3.3 Gradient conjugué . . . . . . . . . . . . . . . . . . . . . . . . . 67
5.3.4 Extensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
5.4 Méthodes itératives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72

6 Algorithmes pour problèmes contraints 77


6.1 Méthode du gradient projeté. . . . . . . . . . . . . . . . . . . . . . . . 77
6.2 Méthode d’Uzawa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
6.3 Cas de contraintes d’égalité uniquement . . . . . . . . . . . . . . . . . 81
6.3.1 Elimination des contraintes . . . . . . . . . . . . . . . . . . . . 81
6.3.2 Techniques de pénalisation . . . . . . . . . . . . . . . . . . . . 85
6.3.3 Extensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

A Quelques rappels de calcul différentiel 89


A.1 Différentiabilité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
A.2 Propriétés de la différentielle . . . . . . . . . . . . . . . . . . . . . . . 95
A.3 Différentielles d’ordre supérieur et formules de Taylor . . . . . . . . . . 98
A.3.1 Différentielles d’ordre supérieur . . . . . . . . . . . . . . . . . . 98
A.3.2 Formules de Taylor . . . . . . . . . . . . . . . . . . . . . . . . . 100

B Quelques rappels de l’algèbre linéaire 103


Chapitre 1

Introduction

L’optimisation est un concept qui fait partie intégrante de la vie courante. Citons
quelques exemples tout à fait banals, mais représentatifs :
Quel est le meilleur itinéraire pour aller d’un point A à un point B en voiture ?
Au tennis, comment maximiser l’effet, la vitesse d’une balle de service ?
Peut-on gagner contre la banque à la roulette au casino ?
A la bourse, comment maximiser les profits tout en minimisant les risques ?
Pourquoi tel composant chimique réagit-il avec tel autre ?
etc.
Une stratégie raisonnable est d’essayer de modéliser chacun de ces problèmes, c’est-
à-dire de les reformuler sous une forme mathématique, puis de résoudre/optimiser les
modèles mathématiques ainsi obtenus, et enfin de tester les résultats sur les situations
pratiques... La modélisation, la mise en équations, ne sera que très marginalement
étudiée dans ce cours (voir le chapitre 4). De fait, cette activité est du ressort du phy-
sicien, du chimiste, de l’économiste, du joueur ( !)...
L’ingénieur, à qui revient la charge de résoudre ces modèles, se doit de les bien connaı̂tre,
notamment en ce qui concerne les hypothèses sous lesquelles le modèle est valide, avant
d’envisager leur résolution. Dans cette optique, le thème de ce cours est la construc-
tion, et la justification mathématique, de méthodes de résolution de ces modèles. Nous
considérerons principalement des modèles simplifiés, que nous nous attacherons à ana-
lyser (mathématiquement) en détail. Nous proposerons également des méthodes de
résolution approchées, c’est-à-dire leur résolution numérique sur ordinateur. En parti-
culier, nous ferons appel à des outils d’analyse (topologie, calcul différentiel, convexité),
mais aussi à de nombreuses branches d’algèbre linéaire. En ce sens, la distinction
algèbre/analyse, classique en classes préparatoires, s’estompera.

5
6 Ciarlet & Zidani

1.1 Quelques exemples


Exemple 1.1.1 (Télephonie mobile). Un réseau de téléphonie cellulaire est un en-
semble de cellules (géographiques) couvrant un territoire. On cherche à regrouper les
cellules en un nombre K de zones, de manière à réaliser un compromis entre la puis-
sance (de calcul) nécessaire pour gérer tous les appels à l’intérieur d’une zone donnée
(paging), et celle nécessaire pour informer le système central qu’un utilisateur change
de zone (location updating) . Clairement, si on utilise autant de zones que de cellules
(une zone contient une seule cellule), tout l’effort est porté sur le location updating ; le
cas extrême contraire (une seule zone contenant toutes les cellules), requiert une très
grande puissance de calcul pour le paging. Mathématiquement, ce problème revient à
partitionner un graphe ; il intervient dans de nombreux autres problèmes d’optimisation
Pour résoudre le problème, on a les données statistiques suivantes : fij désigne le coût
(en temps de calcul) correspondant au flux moyen d’utilisateurs observés entre la cellule
i et la cellule j ; ci est le coût moyen de paging dans la cellule i (en gros proportionnel
au nombre moyen d’appels dans cette cellule). On cherche alors des valeurs Xij valant
1 si les cellules i et j sont dans la même zone et 0 sinon. Le problème de minimisation
du coût s’écrit alors :
XX 
Trouver (Xij )i,j qui minimise fi,j (1 − Xij ) + Xij ci
i j
X
avec Xij ∈ {0, 1}, 1≤ Xij < K, pour tout i.
j

Exemple 1.1.2 (Optimisation de portefeuille). On considère un problème d’optimi-


sation de portefeuille. On suppose qu’on a N actions représentées par des variables
aléatoires R1 , . . . , RN . Chaque action rapporte en moyenne ei = E[Ri ] (E désigne
“l’espérance”) au bout d’un an. On suppose qu’on investit une somme donnée, et on
P
note xi ∈ R la proportion de la somme inverstie dans l’action i. Ainsi 1 = N i=1 xi .
XN
Le portefeuille total est représenté par R = xi Ri et rapporte donc en moyenne
i=1
N
X
le rendement E[R] = xi ei . Le risque du portefeuille est lui modélisé par σ 2 (x) =
i=1
E[(R − E[R])2 ], c’est la mesure de la fluctuation autour du rendement moyen. En no-
tant Aij = E(Ri − E(Ri ))(Rj − E(Rj )) la matrice de covariance des (Ri ), on trouve
l’expression
σ 2 (x) = (x, Ax).
Le but est de trouver la répartition x = (x1 , . . . , xN )T minimisant le risque global du
Optimisation quadratique 7

portefeuille σ(x) à rendement au moins égal à r0 (r0 > 0 fixé).


Ainsi le problème mathématique peut s’écrire

min J(x)
x∈K

PN PN
avec J(x) = 21 (x, Ax) et K = {x ∈ RN , i=1 xi = 1 et i=1 xi ei ≥ r0 }.

Exemple 1.1.3 (Equilibre d’un fil pesant).

Exemple 1.1.4 (Gestion d’énergie).

Exemple 1.1.5 (Problème de spectroscopie). On cherche la concentration respective


de n produits dans un mélange gazeux (ce problème intervient par exemple, lorsqu’on
cherche à mesurer la “qualité” de l’air Parisien). Pour cela, on éclaire le mélange à
diverses longueurs d’ondes λi , i = 1, . . . , m, et on mesure (par spectroscopie) l’intensité
correspondante, que l’on collecte dans un vecteur b ∈ Rm . En laboratoire, on a mesuré
les coefficients d’absorption aij correspondant à chaque gaz j et à chaque longueur
d’onde i, d’où une matrice A = (aij ) ∈ Rn×m .
En notant Xi la concentration du ie produit, le problème mathématique s’écrit :

Trouver X ∈ [0, 1]n , kAX − bk = min n kAy − bk.


y∈[0,1]

1.2 Plan et objectifs de ce cours


L’objectif de ce cours est de donner un aperçu à la fois théorique et pratique d’une
partie du domaine de l’optimisation. Les exemples cités ci-dessus montrent l’impli-
cation de cette branche des mathématiques dans différents domaines (physique, fi-
nance, économie, ... etc). Si le travail de l’ingénieur commence par la modélisation et la
compréhension du problème posé, il se prolonge naturellement par l’étude mathématique
du cadre permettant d’analyser les modèles ; on s’intéresse alors à l’existence et à l’uni-
cité ou la multiplicité des solutions, à leur caractérisation et à toutes autres propriétés
qualitatives.
En pratique, lorsque l’on résout un problème d’optimisation, on utilise des algo-
rithmes permettant d’approcher numériquement la solution d’un problème du type

Trouver u ∈ K, tel que J(u) = inf J(v)


v∈K

ou bien
Trouver u ∈ K, tel que J(u) = sup J(v),
v∈K
8 Ciarlet & Zidani

où J est une fonctionnelle définie sur un ensemble K non vide, à valeurs dans R. Avant
d’envisager l’utilisation d’un algorithme, il est naturel 1 de répondre aux questions ci-
dessous :
(i) Existe-t-il une solution u ? Est-elle unique ?
(ii) Comment la caractériser ?
(iii) Quel(s) algorithme(s) permet(tent) de calculer la solution ?
(iv) Quel est alors l’algorithme le plus efficace ?
Le plan de ce cours est le suivant. Le chapitre 2 est consacré aux questions d’exis-
tence et d’unicité du ou des minima. Nous nous attachons en particulier à l’étude de
problèmes posés non pas sur l’espace entier, mais plutôt sur une partie de celui-ci ; on
parle alors de problème de minimisation avec contraintes.
Dans le chapitre 3, nous analysons les conditions d’optimalité. Là encore, nous
nous interesserons aux cas de problèmes avec contraintes, et en particulier, aux cas de
contraintes d’égalités ou inégalités affines.
Dans le chapitre suivant, nous étudions un problème classique de minimisation,
appelé moindres carrés linéaires, qui peut être perçu comme une généralisation de la
résolution d’un système linéaire.
Enfin, dans le dernier chapitre, nous construirons des algorithmes permettant de
calculer numériquement une approximation du minimum. Deux points-clefs sont à noter
dès à présent au sujet de ces algorithmes :
Ils sont basés sur les caractérisations obtenues dans les chapitres théoriques.
Ils sont itératifs : à partir d’une initialisation u0 , on calcule u1 , puis u2 , etc.
jusqu’à arriver à une solution numérique correcte.
Dans l’Annexe, nous rappelons les notions élémentaires, ainsi que les théorèmes
fondamentaux, associés à la différentiabilité d’une fonctionnelle définie sur un espace
vectoriel normé, à valeurs dans un espace vectoriel normé.

Bien sûr, la recherche en optimisation est très dynamique, et la théorie en constante


évolution. Aussi, les résultats présentés ci-après ne représentent qu’une petite introduc-
tion à l’art de l’optimisation. Des généralisations et approfondissements seront proposés
lors d’autres cours de l’ENSTA, en deuxième (cf. [6]) et troisième années.
Nous renvoyons également le lecteur aux ouvrages [4, 1], qui proposent de nombreuses
extensions, tout en restant tout à fait abordable pour le (futur) ingénieur...

1. Même si cette procédure n’est pas toujours respectée en pratique. . .


Chapitre 2

Existence, Unicité d’un minimum

2.1 Cadre du problème


Dans toute la suite, et sauf indication contraire, E désignera toujours l’espace vec-
toriel normé Rn , K un sous-ensemble non vide de E et J une fonctionnelle continue
définie sur K, à valeurs dans R. Considérons le problème d’optimisation suivant :

Trouver u ∈ K, tel que J(u) = inf J(v).


v∈K

Dans ce problème, il ne s’agit pas seulement de vérifier que inf v∈K J(v) ∈ R, mais aussi
que cette valeur inférieure est atteinte par un (voire plusieurs) point u de K.

2.2 Existence d’un minimum : résultats généraux


Commençons d’abord par quelques définitions.

Définition 2.2.1. u ∈ K est un point de minimum local de J sur K si, et seulement


si
∃η > 0, ∀v ∈ K, kv − uk < η =⇒ J(u) ≤ J(v).

u ∈ K est un point de minimum global de J sur K si, et seulement si

∀v ∈ K, J(u) ≤ J(v).

Définition 2.2.2. On dit qu’une suite (uk )k∈N d’éléments de K est une suite mini-
misante si, et seulement si,

lim J(uk ) = inf J(v).


k→+∞ v∈K

9
10 Ciarlet & Zidani

Remarque 2.2.1. Par définition de la notion d’infimum, il existe toujours des suites
minimisantes !
Intéressons nous maintenant à la question d’existence de minima, et rappelons
d’abord le théorème suivant, bien connu.
Théorème 2.2.1. Si K est compact et J est continue sur K, alors J atteint ses
extréma :
∃(umin , umax ) ∈ K × K, tels que J(umin ) = inf J(v), J(umax ) = sup J(v).
v∈K v∈K

On peut établir une variante du théorème 2.2.1, valable lorsque E est de dimension
finie. Ce résultat est fort utile si K est non compact.
Définition 2.2.3. On dit qu’une fonctionnelle J est infinie à l’infini dans K si, et
seulement si,
pour toute suite (vn )n ⊂ K, lim kvn k = +∞ =⇒ lim J(vn ) = +∞. (2.1)
n→+∞ n→+∞

Théorème 2.2.2. Dans le cas où E = Rn , si K est un fermé, et si J est continue


et infinie à l’infini dans K, alors elle admet un minimum global sur K. De plus, de
toute suite minimisante, on peut extraire une sous-suite qui converge vers un point de
minimum.
Preuve : Soit (uk )k une suite minimisante.
– (uk )k est bornée : en effet, supposons qu’il existe une sous-suite extraite, (uk′ )k′ ,
telle que kuk′ k → +∞ ; comme J est infinie à l’infini, on infère que J(uk′ ) →
+∞, ce qui contredit le fait que (uk ) est une suite minimisante (en particulier,
limk J(uk ) < +∞.)
– Comme (uk )k est bornée, on peut en extraire une sous-suite, toujours notée (uk′ )k′ ,
qui converge vers un point u. C’est une suite d’éléments de K qui est fermé, donc
u ∈ K.
– Par ailleurs, comme J est continue, limk′ J(uk′ ) = J(limk′ uk′ ) = J(u). Enfin, la
sous-suite (uk′ )k′ est minimisante ; ainsi J(u) = inf v∈K J(v), et u est un minimum
global de J sur K.

Remarque 2.2.2. La propriété ”infinie à l’infini dans K” assure que toute suite mi-
nimisante de J est bornée. Il est important de noter que cette propriété est automa-
tiquement vérifiée si K est borné, on retrouve ainsi le résultat classique du théorème
2.2.1. Il est aussi évident que (2.1) est vraie, si, et seulement si,
lim J(v) = +∞.
v∈K,kvk→+∞
Optimisation quadratique 11

♠ Lorsque la dimension de E est infinie, la proposition précédente est fausse ! On peut


en effet construire des contre-exemples, lorsque la dimension est infinie. 1

♠ Il est également indispensable que l’ensemble K soit fermé. Si on considère par


exemple la fonction x 7→ x2 sur K = R+ ⋆ , on a bien une fonction continue, infinie à
l’infini, définie sur K non vide, mais K n’est pas fermé... Elle n’admet pas de point de
minimum sur K.

♠ Notons aussi que la condition (2.1) n’assure pas l’existence d’un maximum. Cepen-
dant, il n’est pas difficile maintenant d’énoncer un résultat d’existence du maximum
sous une hypothèse semblable à (2.1). Ce point est laissé en exercice au lecteur.

2.2.1 Exemple de résolution d’un problème de minimisation


Dans cette section, nous considérons le problème de minimisation “classique” du
polynôme P (x) = α x2 − β x + γ sur R. Ce problème est simple mais instructif.
Par définition, si x0 est un minimum local de P , il existe η > 0 tel que, pour tout h
vérifiant |h| < η, on ait P (x0 + h) ≥ P (x0 ). Par différence, on obtient h(2α x0 + α h −
β) ≥ 0.
Si on choisit h dans ]0, η[, on a alors 2α x0 + α h − β ≥ 0 ; on fait tendre h vers 0, pour
arriver à 2α x0 − β ≥ 0.
En prenant h négatif, on obtient cette fois 2α x0 − β ≤ 0.
Ainsi, une condition nécessaire d’existence de minimum est que

2α x0 = β. (2.2)

Réciproquement, si x0 est tel que 2α x0 = β, on trouve P (x0 + h) = P (x0 ) + α h2 .


Pour garantir l’existence d’un minimum (qui sera d’ailleurs global), α doit être positif
ou nul. Notons enfin que pour que (2.2) possède une solution, il faut soit α 6= 0, soit
α = β = 0. Dans le premier cas, il existe une solution et une seule, et dans le second
cas, x0 est quelconque.
En conclusion, nous sommes arrivés au résultat suivant :
1. Nous allons expliquer pourquoi la démonstration de la proposition ne s’applique pas dans un
espace de dimension infinie. Pour cela, rappelons un théorème dû à Riesz.

Théorème 2.2.3. Soit E un espace vectoriel normé et B(0, 1) = {v ∈ E : kvk ≤ 1} sa boule unité
fermée. Alors, E est de dimension finie si, et seulement si, B(0, 1) est compacte.
A partir de ce résultat, on voit qu’il ne sert à rien de se ramener à une suite bornée, si l’on reprend
la démonstration dans le cas de la dimension infinie. En effet, les éléments de la suite appartiennent
bien à une boule fermée et bornée, mais celle-ci n’est plus compacte. On ne peut alors plus considérer
une sous-suite qui converge...
12 Ciarlet & Zidani

(I) α < 0 : la condition (2.2) n’est pas suffisante pour déterminer le minimum et
d’ailleurs il n’existe pas de minimum.
(II) α ≥ 0 : la condition (2.2) permet de calculer le minimum lorsqu’il existe.
Si α > 0, il existe un minimum x0 unique, égal à x0 = β/2 α.
Si α = 0 et β = 0, tout élément de R réalise le minimum.
Si α = 0 et β 6= 0, il n’existe pas de minimum.

α<0 α>0 α=β=0 α=0, β=0


/
(I) (II)

Figure 2.1 – Petit récapitulatif ’visuel’.

Le cas α ≥ 0 correspond à une fonction P (x) convexe, notion que nous abordons à
la section suivante.

2.3 Convexité et unicité


Une catégorie très importante parmi les fonctionnelles est celle des fonctionnelles
convexes, pour lesquelles on peut obtenir des informations sur l’ensemble des minima 2 .
En effet, lorsque la fonctionnelle J est convexe, le minimum, qui à priori peut-être
local, devient global et même dans certains cas unique.

Définition 2.3.1. On dit qu’un sous-ensemble K de E est convexe si, et seulement


si, pour tout couple d’éléments (u, v), le segment [u, v] est inclus dans K : ∀u, v ∈ K,
∀t ∈ [0, 1], u + t(v − u) = (1 − t)u + t v ∈ K.

On définit aussi une fonction convexe de la manière suivante :

Définition 2.3.2. Soit J une fonctionnelle définie sur un sous-ensemble convexe non
vide K de E, à valeurs dans R. On dit que J est convexe si et seulement si

∀u, v ∈ K, u 6= v, ∀θ ∈]0, 1[ J(θu + (1 − θ)v) ≤ θJ(u) + (1 − θ)J(v).

Dans le cas d’une inégalité stricte, on dit que la fonctionnelle J est strictement
convexe.
2. et aussi, comme nous le verrons au chapitre suivant, une caractérisation de ces minima
Optimisation quadratique 13

convexe non convexe

Figure 2.2 – Convexe ou non convexe

Enfin, s’il existe α > 0 tel que


α
∀u, v ∈ K, u 6= v, ∀θ ∈]0, 1[ J(θu+(1−θ)v) ≤ θJ(u)+(1−θ)J(v)− θ(1−θ)ku−vk2 ,
2
nous dirons que J est α-convexe.

J(x) J(x)

x x

J(x) J(x)

x x

Figure 2.3 – Exemples de fonctions convexes

Remarque 2.3.1. (géométrique) La convexité de J signifie que le graphe de J est


en-dessous de toutes ses cordes. (Voir Fig.2.4).

Exercice 2.3.1. Montrer que si J est α-convexe et différentiable en un point, alors


elle est infinie à l’infini (NB. On ne fait aucune hypothèse de continuité sur J.)

Nous allons maintenant établir un premier résultat sur les fonctionnelles convexes,
à savoir que tout point de minimum local est en fait un point de minimum global.
Commençons par la proposition suivante.

Proposition 2.3.1. Soit J une fonctionnelle convexe définie sur un convexe non vide
K :
1. si u et v sont deux points de minimum locaux, alors J(u) = J(v) ;
2. si de plus J est strictement convexe, alors u = v.
14 Ciarlet & Zidani

θJ(u) + (1 − θ)J(v) 1
0
0
1
0
1
0
1
0
1
0
1
0
1
J(θu + (1 − θ)v) 00
11

u θu + (1 − θ)v v

Figure 2.4 – Remarque 2.3.1

Preuve :
1. Soient u et v deux minima. Comme K est convexe, u + θ(v − u) ∈ K pour tout
θ ∈]0, 1[. De plus ∃θ0 , t.q. pour tout θ ∈]0, θ0 ], J(u) ≤ J(u + θ(v − u)). Comme
J est convexe, on obtient, pour tout θ ∈]0, θ0 ],

J(u) ≤ J(u + θ(v − u)) = J((1 − θ)u + θ v) ≤ (1 − θ)J(u) + θ J(v),

et on en déduit facilement que J(u) ≤ J(v). De même on montre que J(u) ≥ J(v).
On a donc bien J(u) = J(v).
2. Supposons que J soit strictement convexe. Si u et v sont deux points de minimum,
on a vu que J(u) = J(v). Si u et v sont distincts,

J(u + θ(v − u)) < (1 − θ)J(u) + θ J(v) = J(u), ∀θ ∈]0, 1[,

ce qui contredit le fait que u est un minimum local.


On a donc bien u = v.

Nous en déduisons

Théorème 2.3.1. Soit J une fonctionnelle convexe définie sur un convexe non vide
K :
1. tout point de minimum local est un point de minimum global ;
2. si de plus J est strictement convexe, le point de minimum, s’il existe, est unique.

Preuve :
Optimisation quadratique 15

1. On reprend le raisonnement ci-dessus avec u minimum local et v ∈ K quelconque.


On obtient que J(u) ≤ J(v). Ainsi u est un minimum global.
2. Immédiate.

♠ Bien entendu, le théorème précédent donne un cadre (stricte convexité) où le


minimum, lorsqu’il existe, est unique. Cependant il existe des fonctions qui ne sont pas
strictement convexe et qui pourtant n’admette qu’un seul minimum (voir ci-dessous).
Exemple 2.3.1 (Projection sur un convexe fermé). Soit K une partie convexe non
vide et fermée de Rn et soit w ∈ Rn . Considérons le problème
Trouver u ∈ K, kw − uk = min kw − vk. (2.3)
v∈K

( k · k désigne la norme euclidienne.) Posons J : v ∈ K 7−→ kv − wk. Il est clair que


l’application J est continue. De plus J(v) ≥ kvk − kwk, donc
lim J(v) = +∞,
v∈K,kvk→+∞

ce qui prouve que J est “infinie à l’infini”. L’ensemble K étant fermé et non vide,
on conclut que J atteint le minimum sur K. Il nous reste à prouver que la solution
est unique. Remarquons d’abord que la fonction J est convexe sans être strictement
convexe, on ne peut donc pas utiliser directement le théorème 2.3.1 pour prouver l’uni-
cité.
Soient u1 et u2 deux solutions de (2.3). Puisque K est convexe et J est convexe,
u1 + u2
alors est aussi une solution de (2.3), et on a :
2
u1 + u2
min kv − wk = J(u1 ) = J(u2 ) = J( ).
v∈K 2
D’autre part, on a :
u1 + u2
k u1 − u2 k2 = 2(k u1 − w k2 + k u2 − w k2 ) − 4 k − w k2
2
u1 + u2 2
= 2([J(u1 )]2 + [J(u2 )]2 ) − 4[J( )] = 0.
2
On a donc u1 = u2 , ce qui prouve bien l’unicité de la solution qu’on notera u.
Ainsi on a prouvé que pour tout w ∈ E, il existe u ∈ K tel que kw − uk =
minv∈K kw − vk. L’élément u est appelé projection de w sur le convexe fermé K, on le
notera PK (w) := u. De plus on a :
Proposition 2.3.2. Si K est un convexe fermé, alors tout élément w de E admet une
projection unique PK (w) sur K. De plus l’application w 7−→ PK (w) est contractante.
Preuve : Il reste à prouver que PK est contractante.
16 Ciarlet & Zidani

2.4 Propriétés des fonctions convexes.


Théorème 2.4.1. Soit J une fonctionnelle différentiable sur un sous-ensemble K
convexe non vide.
Les assertions suivantes sont équivalentes.
(i) J est convexe sur K.
(ii) ∀u, v ∈ K, u 6= v, J(v) ≥ J(u) + (∇J(u), v − u).
(iii) ∀u, v ∈ K, u 6= v, (∇J(u) − ∇J(v), u − v) ≥ 0.
De même, les assertions suivantes sont équivalentes.
(iv) J est strictement convexe sur K.
(v) ∀u, v ∈ K, u 6= v, J(v) > J(u) + (∇J(u), v − u).
(vi) ∀u, v ∈ K, u 6= v, (∇J(u) − ∇J(v), u − v) > 0.

Preuve : Montrons d’abord que (i) =⇒ (ii). Pour cela supposons que J est convexe
sur K, et prenons u et v deux éléments distincts de K. Pour tout θ ∈]0, 1[, on a :

J(u + θ(v − u)) = J(θv + (1 − θ)u) ≤ θJ(v) + (1 − θ)J(u).

Ce qui implique, pour θ ∈]0, 1[, l’inégalité suivante :


J(u + θ(v − u)) − J(u)
≤ J(v) − J(u).
θ
Par passage à la limite lorsque θ → 0+ , on obtient : (∇J(u), v − u) ≤ J(v) − J(u), et
donc (ii).
Supposons maintenant que (ii) est satisfaite est prouvons que (iii) est alors aussi
vérifiée. Pour cela, prenons u, v ∈ K. De (ii), on a :

J(v) ≥ J(u) + (∇J(u), v − u),


J(u) ≥ J(v) + (∇J(v), u − v).

En additionnant les deux inégalités, on obtient bien le résultat (iii).


Reste maintenant à prouver (iii) ⇒ (i). Soient u, v ∈ K, et θ ∈]0, 1[. Considérons la
fonction µ : t ∈]0, 1[7−→ J(v + tθ(u − v)). Comme J est différentiable, la fonction µ est

de classe C 1 et µ′ (t) = θ ∇J(v + tθ(u − v)), u − v . La formule de Taylor-Mac-Laurin
autour de 0 donne
∃λ1 ∈]0, 1[, µ(1) = µ(0) + µ′ (λ1 ),
ou encore,

∃λ1 ∈]0, 1[, J(θu + (1 − θ)v) = J(v + θ(u − v))



= J(v) + λ1 θ ∇J(v + λ1 θ(u − v)), u − v . (2.4)
Optimisation quadratique 17

11
00 J(v)
0
1
00
11
0
1
0
1
0
1
0
1
00
11
0
1
00
11
0J(u) + (∇J(u), v − u)
1

11
00
00 J(u)
11

u v

Figure 2.5 – Remarque 2.4.1

Avec le même raisonnement, on a : ∃λ2 ∈]0, 1[ tel que

J(θu + (1 − θ)v)=J(u + (1 − θ)(v − u))



=J(u) + λ2 (1 − θ) ∇J(u + λ2 (1 − θ)(v − u)), v − u . (2.5)

En multipliant (2.4) par (1 − θ) et (2.5) par θ, et en additionnant les égalités obtenues,


on arrive à :

J(θu + (1 − θ)v) = θJ(u) + (1 − θ)J(v) +



θ(1 − θ) ∇J(v + λ1 θ(u − v)) − ∇J(u + λ2 (1 − θ)(v − u)), u − v . (2.6)

Posant w1 := v + λ1 θ(u − v), w2 := u + λ2 (1 − θ)(v − u), on trouve w2 − w1 =


(1 − λ1 θ − λ2 (1 − θ))(u − v). Notons d’abord que du fait que λ1 , λ2 ∈]0, 1[, le coefficient
γ = 1 − λ1 θ − λ2 (1 − θ) > 0. D’autre part, de (iii), on a :

1
(∇J(w1 ) − ∇J(w2 ), u − v) = (∇J(w1 ) − ∇J(w2 ), w2 − w1 ) ≤ 0.
γ

Avec (2.6) on conclut que :

J(θu + (1 − θ)v) ≤ θJ(u) + (1 − θ)J(v).

C’est à dire la convexité de J.

Remarque 2.4.1. (géométrique) La convexité de J (point (ii)) signifie que le graphe


de J est au-dessus du graphe de l’application affine tangente à J en u (c’est-à-dire
l’application v 7→ J(u) + (∇J(u), v − u)), en tout point u de K (voir Fig. 2.5).
18 Ciarlet & Zidani

Remarque 2.4.2. En ce qui concerne l’α-convexité, on peut prouver les équivalences


ci-dessous. Soit J une fonctionnelle différentiable sur un sous-ensemble K.
Les assertions suivantes sont équivalentes.
(i) J est α-convexe sur K.
α
(ii) ∀u, v ∈ K, u 6= v, J(v) ≥ J(u) + (∇J(u), v − u) + ku − vk2 .
2
(iii) ∀u, v ∈ K, u 6= v, (∇J(u) − ∇J(v), u − v) ≥ αku − vk2 .

Notons aussi le résultat suivant :

Théorème 2.4.2. Soit J une fonctionnelle de E dans R, de classe C 2 . Alors J est


convexe si, et seulement si,

∀u, d ∈ E, (∇2 J(u)d, d) ≥ 0. (2.7)

Preuve : Supposons que J est convexe. Soient u, d ∈ E, et θ ∈]0, 1[. Du théorème


2.4.1, on a :
(∇J(u + θd) − ∇J(u), d)
0≤ .
θ
En faisant tendre θ → 0, il vient :

0 ≤ (∇2 J(u)d, d).

Réciproquement, supposons que (2.7) est satisfaite. De la formule de Taylor-Mac-


Laurin, on a :
1
∃λ ∈]0, 1[, J(v) = J(u) + (∇J(u), v − u) + (∇2 J(u + λ(v − u))(v − u), v − u).
2
Or de (2.7), on obtient :
1 2
(∇ J(u + λ(v − u))(v − u), v − u) ≥ 0,
2
et par suite,
J(v) ≥ J(u) + (∇J(u), v − u).
Ce qui, d’après le théorème 2.4.1, conclut que J est convexe.

Pour finir, notons aussi que pour une fonctionnelle convexe, on a des résultats
généraux concernant sa régularité (nous renvoyons le lecteur à [6]).
Chapitre 3

Conditions nécessaires et suffisantes

3.1 Introduction
Dans ce chapitre on considère les fonctionnelles dérivables au sens de Gateaux (cf.
l’Annexe), sauf mention explicite du contraire. Dans tout ce chapitre 1 , E = Rn et
l’espace d’arrivée F sera égal à R.
Nous nous intéressons ici aux conditions d’optimalité d’une fonctionnelle J sur
un ensemble non vide K. Nous allons étudier d’abord le cas général, poursuivre par
celui d’un sous-ensemble K convexe, et ensuite par le cas où K est un sous-espace
affine.
Commençons par introduire la notion de chemin, et rappeler celle des tangentes.

Définition 3.1.1. On appelle chemin réel une fonction dérivable γ : t 7→ γ(t) de R


dans E. On appelle tangente au chemin en t0 la droite passant par γ(t0 ) et de direction
γ ′ (t0 ). On appelle chemin une fonction de [0, α[ à valeurs dans E, dérivable sur ]0, α[
et dérivable à droite en 0, avec α > 0. Dans ce cas, la tangente en 0 est une demi-
droite, passant par γ(0), et de direction γd′ (0), c’est-à-dire : {w ∈ E : ∃η ≥ 0, w =
γ(0) + η γd′ (0)}.

On rappelle que, lorsque la variable est réelle,


γ(t0 + θ) − γ(t0 ) γ(t0 + θ) − γ(t0 )
γ ′ (t0 ) = lim , et γd′ (t0 ) = lim+ .
θ→0 θ θ→0 θ
Proposition 3.1.1. Soit γ un chemin. On a, pour t0 ∈]0, α[, avec α > 0

dγ(t0 )·h = h γ ′ (t0 ), ∀h ∈ R.


1. Sauf mention explicite du contraire, les résultats, définitions et notations de ce chapitre sont
aussi valables lorsque E est un espace vectoriel normé complet de dimension infinie, muni d’un produit
scalaire. On dit alors que E est un espace de Hilbert (voir par exemple [2, 8]).

19
20 Ciarlet & Zidani

γ’(t0)

γ’(0)
d

Figure 3.1 – Tangentes

Preuve : Il suffit de comparer la définition A.1.1 à celle de la dérivée usuelle

γ(t0 + h) = γ(t0 ) + hγ ′ (t0 ) + o(h), ∀h ∈] − t0 , α − t0 [.

On en déduit donc que l’on a l’égalité dγ(t0 )·h = h γ ′ (t0 ), pour h suffisamment petit.
Comme dγ(t0 ) est une application linéaire, l’égalité précédente est vraie pour tout h
de R.

Remarque 3.1.1. La dérivée à droite peut être vue comme une dérivée directionnelle
(cf. définition A.1.3) dans le sens positif. En effet,
γ(t0 + θ (+1)) − γ(t0 )
γd′ (t0 ) = lim+ = dγ(t0 )·(+1).
θ→0 θ
Soit maintenant f une application Fréchet-différentiable de E dans F (cf. Annexe).
On construit µ = f ◦ γ, une fonction de la variable réelle à valeurs dans F. Tous les
résultats connus s’appliquent sur une telle fonction (théorème des accroissements finis,
formules de Taylor, etc.).
µ est dérivable, comme composée d’applications différentiables, et on a

dµ(t0 )·h = df (γ(t0 ))·(dγ(t0)·h), ∀h ∈ R


⇐⇒ h µ′ (t0 ) = df (γ(t0 ))·(h γ ′(t0 )), ∀h ∈ R
⇐⇒ h µ′ (t0 ) = h df (γ(t0))·γ ′(t0 ), ∀h ∈ R,

puisque df (γ(t0 )) est linéaire, soit finalement

µ′ (t0 ) = df (γ(t0 ))·γ ′(t0 ). (3.1)

Si J est une fonctionnelle Fréchet-différentiable de E = Rn dans F = R, si on pose


µ = J ◦ γ, on infère que (cf. (A.5))

µ′ (t0 ) = (∇J(γ(t0 )), γ ′ (t0 )), (3.2)

et si enfin γ(t) = u + t w, avec u, w ∈ Rn , on a γ ′ (t0 ) = w, ce qui donne

µ′ (t0 ) = (∇J(u + t0 w), w). (3.3)


Optimisation quadratique 21

Proposition 3.1.2. Si J est de classe C 2 et µ(t) = J(u + t w), on a

µ′′ (t0 ) = (∇2 J(u + t0 w)w, w). (3.4)

Preuve : On écrit

µ′ (t0 + h) − µ′ (t0 ) = (∇J(u + t0 w + h w) − ∇J(u + t0 w), w)


= (h∇2 J(u + t0 w)w + kh wkε(h w), w) = h(∇2 J(u + t0 w)w, w) + o(h),

puisque ∇J est de classe C 1 de Rn dans R, cf. (A.6). D’où finalement


µ′ (t0 + h) − µ′ (t0 )
µ′′ (t0 ) = lim = (∇2 J(u + t0 w)w, w).
h→0 h

Notons que si J est simplement Gateaux-différentiable, on doit se limiter aux che-


mins inclus dans des droites, c’est-à-dire de la forme γ(t) = u + t w évoquée ci-dessus.

3.2 Conditions d’optimalité


3.2.1 Cas général
On considère K un sous-ensemble non vide quelconque de E, et J une fonctionnelle
de K dans R. Il est commode d’introduire le cône des directions admissibles.

Définition 3.2.1. Soit K un sous-ensemble non vide de E, et v un point de K. On


appelle cône des directions admissibles l’ensemble TK (v) des tangentes en v aux chemins
inclus dans K et commençants en v.

K
K

Figure 3.2 – Exemples de cônes de directions admissibles

En d’autres termes, w appartient à TK (v), si, et seulement si, il existe un chemin


γ : [0, α[→ K (α > 0) tel que γ(0) = v et w = γd′ (0). En d’autres termes :

w ∈ TK (v) ⇐⇒ ∃t0 , ∀t ∈ (0, t0 ), v + tw + o(t) ∈ K.


22 Ciarlet & Zidani

Exercice 3.2.1. Supposons que K 6= ∅ est un convexe fermé. Soient u ∈ K et w ∈ E


avec w 6= 0. Montrer que w ∈ TK (u) si, et seulement si l’une des assertions suivantes
est vérifiée.
(i) il existe une suite (uk ) d’éléments de K, telle que :
uk − u w
uk −−−→ u et −−−→ .
k→∞ kuk − uk k→∞ kwk

(ii) il existe une suite (wk )k ⊂ E, et une suite (λk )k telles que

lim λk = 0, lim wk = w, et pour tout k ≥ 0, λk > 0 et u + λk wk ∈ K.


k k

Théorème 3.2.1. Soient K un sous-ensemble non vide de E, u un point de K et J


une fonctionnelle de K à valeurs dans R. On suppose que J est Fréchet-différentiable
en u. Si u est un point de minimum local de J sur K, on a nécessairement

(∇J(u), w) ≥ 0, ∀w ∈ TK (u). (3.5)

Preuve : Si w = 0, l’inégalité est tout simplement une égalité. Si w est un élément


(non nul) de TK (u), il existe un chemin γ : [0, α[→ K (α > 0) passant par u en t = 0
tel que w = γd′ (0). Pour t suffisamment petit, γ(t) est proche de u. Ainsi il existe t0 > 0
tel que
J ◦ γ(t) ≥ J ◦ γ(0), ∀t ∈ [0, t0 [. (3.6)
Or, J ◦ γ est dérivable à droite en 0 de dérivée(∇J(u), w) : en effet, on peut écrire γ
sous la forme γ(t) = u + t w + o(t), pour t ∈ [0, α[. On a alors

J ◦ γ(t) = J(u + t w + o(t)) = J(u + h), avec h = t w + o(t).

Or, khk tend vers 0 lorsque t tend vers 0+ , puisque khk ≤ 2tkwk, pour t suffisamment
petit. Par application de (A.6), on trouve alors

J ◦ γ(t) = J(u) + (∇J(u), t w + o(t)) + o(t) = J(u) + t(∇J(u), w) + o(t).

D’où par passage à la limite dans (3.6)

J ◦ γ(t) − J ◦ γ(0) o(t) t→0+


= (∇J(u), w) + −→ (∇J(u), w).
t t
Ce qui implique bien que (∇J(u), w) ≥ 0.

♠ Notons que si K = E et u ∈ E, alors le cône tangent TE (u) est l’espace tout


entier. Le théorème précédent implique alors que (∇J(u), w) ≥ 0, pour tout w ∈ E.
Optimisation quadratique 23

Or si w ∈ E, alors −w ∈ E aussi et donc −(∇J(u), w) ≥ 0 aussi. On en déduit que :


(∇J(u), w) = 0 pour tout w ∈ E et par suite :

∇J(u) = 0.

On peut aussi raisonner de la même manière lorsque le minimum est atteint à l’intérieur

de l’ensemble K, en effet pour tout u ∈K , le cône tangent Tk (u) est aussi égal à E.

Corollaire 3.2.1. Si K = E, ou si le minimum u est intérieur à K, alors l’inéquation


(3.5) devient
∇J(u) = 0. (3.7)

Remarque 3.2.1. Si Rn est muni d’une base orthonormale, la condition nécessaire


d’existence d’un minimum, dans les conditions du corollaire, peut être écrite sous la
forme
∂J ∂J ∂J
(u) = (u) = . . . = (u) = 0.
∂x1 ∂x2 ∂xn

♠ Il est très important de bien comprendre la distinction entre le résultat du théorème


3.2.1 et celui du corollaire 3.2.1 : Prenons le cas d’un problème simple :

Trouver x0 ∈ [a, b], J(x0 ) = inf J(y).


y∈[a,b]

Si x0 ∈]a, b[, alors le corollaire implique que J ′ (x0 ) = 0. Par contre si x0 = a, alors le
gradient n’a aucune raison de s’annuler et le théorème dit simplement que J ′ (x0 ) ≥ 0.
De même, si x0 = b, alors le théorème implique que J ′ (x0 ) ≤ 0.

a b x0 = a b a x0 = b

J ′ (x0 ) = 0 J ′ (x0 ) ≥ 0 J ′ (x0 ) ≤ 0

Jusqu’ici nous n’avons étudié que la condition nécessaire d’existence d’un minimum,
utilisant uniquement la différentielle d’ordre 1. On parle alors de condition du premier
ordre. Dans le cas simple où K = E, cette condition traduit la nullité du gradient de J
24 Ciarlet & Zidani

en le minimum. On peut facilement prouver aussi que cette condition reste nécessaire
pour l’existence d’un maximum. Il est donc important de chercher une nouvelle condi-
tion d’optimalité pouvant différencier les minima des maxima. Cette condition utilise
la différentielle d’ordre 2 et s’énonce comme suit :

Proposition 3.2.1. On se place à nouveau dans le cadre du corollaire ci-dessus : on


suppose que K = E, ou bien que le minimum u est intérieur à K. On suppose en plus
que J est deux fois 2 différentiable en u. Alors, le minimum u vérifie :

∇J(u) = 0, et (∇2 J(u)h, h) ≥ 0, ∀h ∈ E. (3.8)

Preuve :
(i) Supposons que K = E et soit u un minimum local de J. Comme J est deux fois
différentiable en u, on peut écrire le développement limité de J en u à l’ordre 2. Pour
h un élément de E et λ > 0 petit, on a, cf. (A.10) :

λ2 2
J(u + λ h) = J(u) + λ (∇J(u), h) + (∇ J(u)h, h) + r2 (λ h),
2
avec r2 (h)/khk2 −−→ 0. D’après le corollaire précédent, ∇J(u) = 0. Et du fait que u
h→0
est minimum local, il existe λ0 > 0 tel que pour tout λ ∈ (0, λ0 ), J(u + λh) ≥ J(u), et
par suite,

λ2 2 2
(∇ J(u)h, h) + r2 (λ h) ≥ 0, soit (∇2 J(u)h, h) + 2 r2 (λ h) ≥ 0.
2 λ
2
Faisons tendre λ vers 0+ . Le premier terme est indépendant de λ, et limλ→0+ r2 (λ h) = 0,
λ2
d’après le théorème de Taylor-Young A.3.5. Ainsi, on trouve bien (∇2 J(u)h, h) ≥ 0.

(ii) Dans le cas où le minimum de J sur K est atteint en u ∈K , alors pour tout h ∈ E,
il existe λ0 > 0 tel que pour tout λ ∈ (0, λ0 ), u + λh ∈ K et J(u + λh) ≥ J(u). Le reste
de raisonnement se fait comme en (i).

Remarque 3.2.2. Toutes les conditions d’optimalité énoncées jusque là (que ce soit
du premier ou du second ordre) ne constituent que des conditions nécessaires mais pas
suffisantes. En effet, prenons le cas simple où E = R et J(x) = x3 . En x = 0, les
conditions nécessaires du premier et second ordre sont bien vérifiées (J ′ (0) = J ′′ (0) =
0) et pourtant 0 n’est pas un minimum de J !

Nous allons maintenant énoncer une condition suffisante :


2. on considère donc une fonctionnelle Fréchet-différentiable.
Optimisation quadratique 25

Théorème 3.2.2. Supposons que K = E. Soit J une fonction deux fois différentiable
et soit u ∈ E. Si

∇J(u) = 0
(3.9)
∃Vun voisinage de u tel que (∇2 J(w)h, h) ≥ 0 ∀h ∈ E, ∀w ∈ V

alors u est un minimum local de J.

Preuve : Soit u ∈ E vérifiant (3.9) et soit v ∈ V. En écrivant le développement


limité de J autour de u, on obtient : Il existe λ ∈]0, 1[ tel que
1
w = u + λ(v − u) ∈ V, J(v) = J(u) + (∇J(u), v − u) + (∇J(w)(v − u), v − u).
2
Ce qui avec (3.9) donne
J(v) ≥ J(u).
Ceci étant vrai pour tout v ∈ V, on conclut que u est un minimum local de J.

3.2.2 Cas convexe


Lorsque l’on se place dans un ensemble convexe, on obtient une condition nécessaire
d’existence d’un minimum local, dite inéquation d’Euler.

Théorème 3.2.3. Soient K un sous-ensemble convexe non vide de E, u un point de


K et J une fonctionnelle de K à valeurs dans R. On suppose que J est différentiable
en u. Si u est un point de minimum local de J sur K, on a nécessairement

(∇J(u), v − u) ≥ 0, ∀v ∈ K. (3.10)

Preuve : Soit v ∈ K.
Par définition de la convexité, on sait que u + t(v − u) appartient à K, pour t ∈ [0, 1].
Puisque u est un minimum local, il existe t0 > 0 tel que J(u + t(v − u)) ≥ J(u), pour
tout t dans ]0, t0 [.
Si l’on remplace J(u + t(v − u)) − J(u) par la valeur donnée par la formule (A.4), on
en déduit
(∇J(u), t(v − u)) + o(t) ≥ 0, ∀t ∈]0, t0 [.
Suivant la méthodologie des petites variations, on peut mettre t en facteur, ce qui laisse

o(t)
(∇J(u), v − u) + ≥ 0, ∀t ∈]0, t0 [.
t
En faisant tendre t vers 0, on infère le résultat annoncé.
26 Ciarlet & Zidani

Remarque 3.2.3. Si J est Fréchet-différentiable, on note que la définition de la


convexité permet d’affirmer que γ : [0, 1[→ K défini par γ(t) = u + t(v − u) est un
chemin inclus dans K, tel que γ(0) = u et γd′ (0) = v − u. En d’autres termes,

v − u; v ∈ K ⊂ TK (u).

Le théorème 3.2.1 permet alors de conclure directement.

Théorème 3.2.4. Soient K un sous-ensemble convexe de E, u un point de K et J une


fonctionnelle convexe et différentiable sur K. Alors u est un point de minimum global
de J sur K si, et seulement si,

(∇J(u), v − u) ≥ 0, ∀v ∈ K. (3.11)

Preuve : Si u est un point de minimum de J, nous savons déjà que l’inéquation


d’Euler (3.11) est vérifiée.
Réciproquement, du fait de la convexité de J, on sait que pour tout v ∈ K, on a :

J(v) ≥ J(u) + (∇J(u), v − u).

Avec (3.11), on conclut que J(v) ≥ J(u) pour tout v ∈ K, et donc u est un point de
minimum global de J sur K.

Exemple 3.2.1 (Projection sur un convexe fermé). Reprenons l’exemple 2.3.1. On a


vu que pour tout w ∈ Rn , il existe une unique projection Pk (w) ∈ K de w sur K. Cette
projection PK (w) est solution de minv∈K kw − vk. Remarquons d’abord que PK (w) est
aussi solution de
kw − PK (w)k2 = min kw − vk2 .
v∈K
2
On pose J1 (v) = kw − vk . Rappelons que ∇J1 (v) = 2(v − w). Le théorème 3.2.4
implique que PK (w) est l’unique élément de K tel que
1
(∇J1 (PK (w)), v − PK (w)) = (w − PK (w), v − PK (w)) ≤ 0 ∀v ∈ K. (3.12)
2
Nous aurons l’occasion d’utiliser cette caractérisation de la projection dans d’autres
sections du cours.

♠ Le théorème 3.2.4 dit que la condition (3.11) caractérise complètement le minimum


d’une fonction convexe : c’est une condition nécessaire et suffisante. Ce résultat n’est
plus vrai lorsque J n’est pas convexe.
Bien évidement dans les situations particulières où K = E ou u est intérieur à K.
On a :
Optimisation quadratique 27

Théorème 3.2.5. Soient K un sous-ensemble convexe de E, u un point de K et J


une fonctionnelle convexe et différentiable de K. Si K = E (ou si u est intérieur à K),
alors u est un point de minimum (global) de J si, et seulement si,

∇J(u) = 0. (3.13)

La démonstration, immédiate, est laissée au lecteur.

3.3 Contraintes d’égalité affines


Supposons, ce qui est un cas relativement courant en pratique, que l’ensemble K
soit défini par :
K = {v ∈ Rn : C v = f },

avec C une matrice p × n, et f un élément de Rp . On suppose K 6= 0. Notons que K


est aussi l’ensemble des v vérifiants les p contraintes :

 C11 v1 + · · · + C1n vn = f1

..
 .
 C v +···+C v = f
p1 1 pn n p

Soit J une fonctionnelle continue sur E. D’après le théorème 3.2.3, puisque K est un
convexe non vide, si u ∈ K est un point de minimum local de J sur K, et si J est
différentiable en u, on a nécessairement

(∇J(u), v − u) ≥ 0, ∀v ∈ K.

Or, on a Cu = f et Cv = f , donc C(v − u) = 0. Qui plus est, l’ensemble {w ∈ E :


∃v ∈ K, w = v − u} est égal au noyau de C noté Ker C. Enfin, puisque −w est un
élément de Ker C dès lors que w en est un, on en déduit qu’une condition équivalente
à l’inégalité ci-dessus est
∇J(u) ∈ [Ker C]⊥ .

Ceci permet d’affirmer, grâce au lemme 3.3.1, que ∇J(u) est dans l’image de la trans-
posée de C T noté Im C T :

∃λ ∈ Rp , ∇J(u) + C T λ = 0.

On a donc démontré le résultat suivant, dit de Karush, Kuhn et Tucker (K.K.T.).


28 Ciarlet & Zidani

Théorème 3.3.1. Soit C une matrice p × n, et f un élément de Rp , K le sous-espace


défini par K := {v ∈ Rn : C v = f }, u un point de K et J une fonctionnelle sur K.
On suppose que J est différentiable en u. Si u est un point de minimum local de J sur
K, on a nécessairement

∃λ ∈ Rp , ∇J(u) + C T λ = 0,
(3.14)
Cu − f = 0.

Remarque 3.3.1. Dans le théorème précédent le vecteur λ est unique si C est sur-
jectif 3 . En effet, si λ1 et λ2 conviennent, alors C T (λ1 − λ2 ) = 0 avec C T injectif, donc
λ1 = λ2 .

Remarque 3.3.2. Pour obtenir un résultat de caractérisation similaire lorsque les con-
traintes d’égalité ne sont plus affines, mais quelconques, il faut disposer du théorème
des fonctions implicites. Le lecteur intéressé est renvoyé à [6].

Rappel d’un résultat d’algébre linéaire.

Lemme 3.3.1. Soit C une matrice de Rp×n , alors Im C T = (Ker C)⊥ .

Preuve : Prouvons pour commencer que Im C T ⊂ (Ker C)⊥ . Soit donc x un élément
de Im C T ; il existe v ∈ Rp tel que x = C T v. Alors, pour tout élément y appartenant à
Ker C, on a
(x, y)n = (C T v, y)n = (v, Cy)p = 0.

Pour prouver l’égalité entre ces deux sous-espaces vectoriels de Rn , vérifions qu’ils ont
même dimension. D’une part, puisque Ker C et (Ker C)⊥ sont supplémentaires,

n = dim[Ker C] + dim[(Ker C)⊥ ].

Et, d’autre part, comme C : Rn → Rp , d’après le théorème du rang (rg(C)=rg(C T)),


on trouve
n = dim[Ker C] + dim[Im C] = dim[Ker C] + dim[Im C T ].

On a bien l’égalité entre les dimensions, dim[(Ker C)⊥ ] = dim[Im C], ce qui permet
d’arriver à l’égalité annoncée.

3. C est surjectif ⇐⇒ C T est injectif ⇐⇒ rg(C) = min(p, n).


Optimisation quadratique 29

3.3.1 Le Lagrangien
Nous allons maintenant voir qu’il est particulièrement intéressant d’introduire la
fonctionnelle
L(v, µ) = J(v) + (µ, Cv − f ), ∀(v, µ) ∈ E × Rp . (3.15)
On l’appelle le Lagrangien associé au problème de la minimisation de J sur K. Ici, v
parcourt E entier, et non plus K uniquement. On dit que l’on a dualisé les contraintes,
et les éléments µ de Rp sont appelés multiplicateurs de Lagrange.
Pourquoi est-ce utile ? Pour le comprendre, étudions la différentielle partielle par rap-
port à v de L (c’est-à-dire que l’on raisonne à µ fixé) : Soient v, h ∈ E et θ ∈ R

L(v + θ h, µ) − L(v, µ) = J(v + θ h) − J(v) + θ(µ, Ch).

Dès lors que J est différentiable en v, on en déduit que L est différentiable par rapport
à v en (v, µ), puisque l’on peut écrire 4
 
T
L(v + θ h, µ) − L(v, µ) = θ (∇J(v), h) + (C µ, h) + o(θ).

Ainsi, la différentielle et le gradient partiels de L par rapport à v sont égaux à

dv L(v, µ)·h = (∇v L(v, µ), h), ∇v L(v, µ) = ∇J(v) + C T µ (3.16)

Qu’en est-il de la différentielle partielle par rapport à µ ?

L(v, µ + θ η) − L(v, µ) = θ(Cv − f, η).

Cette fois, la différentielle et le gradient partiels de L par rapport à µ valent

dµ L(v, µ)·η = (∇µ L(v, µ), η), ∇µ L(v, µ) = Cv − f. (3.17)

Corollaire 3.3.1. On reprend les hypothèses du théorème 3.3.1. Si u est un point de


minimum local de J sur K, on a nécessairement

p ∇v L(u, λ) = 0
∃λ ∈ R tel que . (3.18)
∇µ L(u, λ) = 0
Preuve : on reprend (3.14), et les expressions (3.16) et (3.17).

Lorsque l’on considère le Lagrangien associé au problème de minimisation, outre les


expressions (3.18), il est primordial de noter que dans la définition de L, v appartient
à E entier. Ainsi, on a troqué l’appartenance à K pour un terme additionnel, dans la
fonctionnelle à étudier.
4. Pour tout µ ∈ Rp , et tout h ∈ Rn , on a (µ, Ch) = (C T µ, h). Bien évidement, le premier produit
scalaire est dans Rn × Rn et le second est dans Rp × Rp .
30 Ciarlet & Zidani

Remarque 3.3.3. Il est loisible de définir le Lagrangien de plusieurs autres problèmes


de minimisation, que ce soit pour des problèmes avec contraintes d’égalité quelconques
[6], ou pour des problèmes avec contraintes d’inégalité (voir section 3.4).

3.3.2 Fonctionnelle quadratique et contraintes d’égalité af-


fines
La fonctionnelle est, dans cette sous-section, quadratique en v : J est définie pour
des éléments de Rn , par
1
J(v) = (Av, v) − (b, v) + c, (3.19)
2
avec A une matrice symétrique de Rn×n , b un vecteur de Rn et c un réel. On considère
ses variations sur l’espace affine

K = {v ∈ Rn : C v = f },

avec C appartenant à Rp×n , et f un élément de Rp . D’après l’expression (3.14), si u


est un point de minimum de J sur K, alors

p A u + C Tλ = b
∃λ ∈ R tel que .
Cu=f

En d’autres termes,

Corollaire 3.3.2. Soit J défini par (3.19) avec A une matrice symétrique, et soit K
le sous-espace non vide K = {v | Cv = f }. Si u est un point de minimum de J sur
K, alors il existe λ ∈ Rp tel que le couple (u, λ) de Rn × Rp soit solution du système
linéaire     
A CT u b
= . (3.20)
C 0 λ f
Enfin, pour en finir ici avec les problèmes avec contraintes d’égalités, l’on suppose
cette fois que la matrice A est symétrique et positive 5 . On a alors le

Théorème 3.3.2. Supposons que A est symétrique positive. le vecteur u est un point
de minimum de J sur K si, et seulement si, il existe un élément λ de Rp tel que le
couple (u, λ) soit solution de
    
A CT u b
= . (3.21)
C 0 λ f
5. A est positive si et seulement si pour tout v ∈ E, (Av, v) ≥ 0.
Optimisation quadratique 31

Si de plus A est (symétrique) définie-positive 6 et C est surjectif, le système linéaire


(3.21) admet une solution unique. En d’autres termes, il existe un point de minimum
global de J sur K et un seul.
Preuve : Si u est un point de minimum, on applique le corollaire 3.3.2.

La réciproque est aussi vraie puisque la fonction J est convexe. En effet, comme A
est symétrique, ∇J(v) = Av − b. De plus,

(∇J(v) − ∇J(u), v − u) = (A(v − u), v − u) ≥ 0,

puisque A est positive. D’où J est convexe et la condition de minimalité (3.21) est une
condition nécessaire et suffisante.
 
A CT
On suppose ici que A est symétrique définie-positive. La matrice ap-
C 0
partient à R(n+p)×(n+p) . Pour prouver que le système linéaire (3.21) admet une solution
unique, il suffit de vérifier que le noyau de l’application linéaire associée est réduit à
{0}. Soit donc un couple (u, λ) de Rn × Rp tel que
    
A CT u 0
= .
C 0 λ 0
Comme A est inversible, on infère, par implications successives que
• u = −A−1 C T λ (première ligne) ;
• CA−1 C T λ = 0 (seconde ligne) ;
(CA−1 C T λ, λ)p = 0 (produit scalaire par λ) ; (A−1 C T λ, C T λ) = 0 (transposi-
tion) ;
Comme A est symétrique définie-positive, A−1 l’est également, et ainsi

C T λ = 0.

On note que l’application linéaire associée à C T va de Rp dans Rn , et qu’elle est


de rang p. Par conséquent, dim(Ker(C T )) = 0, dont on déduit que λ = 0.
• Finalement, u = 0 par retour à la première ligne du système linéaire.
La conclusion suit.
Exercice 3.3.1. On reprend J(v) = 21 (Av, v) − (b, v) + c, définie sur Rn .
A quelle(s) condition(s) J est-elle convexe, strictement convexe, α-convexe ?
Exercice 3.3.2. Soit J une fonctionnelle α-convexe et différentiable sur Rn . Montrer
que J admet un minimum global, et le caractériser.
6. A est définie-positive si et seulement si pour tout v ∈ E \ {0}, (Av, v) > 0.
32 Ciarlet & Zidani

3.4 Contraintes d’inégalité affines


On considère dans toute cette section que l’ensemble des contraintes K est donné
par :
K := {v ∈ E, Cv ≤ f }, (3.22)

où C est une matrice p×n. On considère à nouveau aussi une fonctionnelle différentiable
J sur E à valeurs dans R.
Soit u ∈ K le minimum de la fonctionnelle J sur K. L’inéquation d’Euler associée
à ce problème de minimisation s’écrit :

(∇J(u), v − u) ≥ 0, ∀v ∈ K.

A partir de ce résultat on obtient le

Théorème 3.4.1. Considèrons l’ensemble fermé K défini dans (3.22) et supposons J


être une fonction différentiable sur E dans R. Si u ∈ K est un minimum local de J sur
K alors

∃λ ∈ Rp , ∇J(u) + C T λ = 0, (3.23a)
λ ≥ 0, λi [Cu − f ]i = 0, (3.23b)
Cu ≤ f. (3.23c)

De plus, si J est convexe alors (3.23) est aussi une condition suffisante de minimalité.
C’est à dire si u vérifie (3.23), alors u est un minimum global de J sur K.

Preuve : Supposons que u ∈ K est un minimum de J sur K. On introduit I(u) :=



i ∈ {1, · · · , n}, [Cu]i = fi . Deux cas sont possibles.
Cas 1. Si I(u) = ∅, alors u est à l’intérieur de K et l’inéquation d’Euler devient
∇J(u) = 0. Dans ce cas, en prenant λ = 0, le système d’optimalité (3.23) est bien
vérifié.
Cas 2. I(u) 6= ∅, c’est à dire certaines contraintes sont satisfaites avec des égalités.
Soit m le nombre de ces contraintes. Sans perte de généralités, on peut supposer que
I(u) = {1, · · · , m}. Notons alors C # la matrice formée par les m premières lignes de
C et K # , l’ensemble K # := {w ∈ E, C # w ≤ 0}. Nous allons prouver d’abord que
(∇J(u), w) ≥ 0, pour tout w ∈ K # .
En effet, prenons w ∈ K # , on a C # w ≤ 0. Donc pour tout i ∈ I(u)),

Ci w ≤ 0, et Ci u = fi ,
Optimisation quadratique 33

où Ci désigne la ie ligne de C et fi la ie composante de f . Donc Ci (u + εw) ≤ fi , ∀ε > 0


et ∀i ∈ I(u).
Maintenant pour i 6∈ I(u), Ci u < fi . Donc il existe εo > 0 tel que Ci (u + εo w) < fi ,
pour tout i 6∈ I(u).
En définitive, il existe εo > 0 tel que C(u + εo w) ≤ f , ou encore v = u + εo w ∈ K. En
choisissant ce v dans l’inéquation d’Euler, il vient : εo (∇J(u), w) ≥ 0 avec εo > 0.
D’où

(∇J(u), w) ≥ 0 ∀w ∈ K # . (3.24)

On va maintenant admettre le résultat suivant (sa preuve sera donnée plus loin).

Lemme 3.4.1 (Farkas). Soit A = {w ∈ Rn , Bw ≤ 0} où B ∈ Rm×n , et soit y ∈ Rn .


Alors
∀d ∈ A, (y, d) ≥ 0 ⇔ ∃λ ∈ (R+ )m , y = −B T λ.

A partir de (3.24) et du lemme 3.4.1, on déduit que :

∃λ# ∈ Rm , λ# ≥ 0, ∇J(u) = −(C # )T λ# . (3.25)

Quitte à compléter le vecteur λ# par des composantes nulles, on a alors

∃λ ∈ Rp , λ ≥ 0, ∇J(u) = −C T λ,
λi [Cu − f ]i = 0, ∀i = 1, · · · , n.

Le fait que la condition d’optimalité soit suffisante, dans le cas où J est convexe,
est une conséquence du théorème 2.3.1.

Preuve du Lemme de Farkas. La preuve de ⇐ est immédiate.


Pour la preuve de ⇒, notons Q := {−B T λ, λ ≥ 0}, et supposons (par l’absurde)
que y ∈/ Q. Comme Q est un convexe fermé non vide (le vérifier en exercice), on sait
d’après l’exemple 3.2.1, qu’il existe q0 ∈ Q, qui est la projection de y sur Q. Notons
u = y − q0 . On note que ||u|| = ||y − q0 || > 0, et aussi que (y − q0 , q − q0 ) ≤ 0 ∀q ∈ Q
(propriété de la projection vu dans l’exemple 3.2.1). En particulier avec q = 0 (qui est
bien dans Q), on obtient (u, −q0 ) ≤ 0, et avec q = 2q0 (qui est aussi dans Q puisque
q0 ∈ Q), on a (u, q0 ) ≤ 0. Donc (u, q0) = 0, dont on déduit que (u, q) ≤ 0 pour tout
q ∈ Q. De plus, (u, y) = (u, u + q0 ) = ||u||2 > 0.
D’autre part, si λ = ei est le vecteur de Rm de composantes nulles sauf la i-ième
composante égale à 1, on obtient de la definition de Q que −BiT ∈ Q (Bi etant la i-ième
ligne de B, et donc que BiT est le i-ième vecteur colonne de B T ). Donc pour tout i,
34 Ciarlet & Zidani

Bi (−u) = (−BiT , u) ≤ 0. Or les composantes du vecteur B(−u) sont exactement les


Bi (−u), et donc −Bu ≤ 0. On en déduit que −u ∈ A, par définition de A et (y, u) ≤ 0.
Ce qui contredit le fait que (u, y) > 0. Donc y ∈ Q.
Optimisation quadratique 35

3.5 Point-selle. Programmation linéaire


Nous avons vu en section 3.3.1 qu’il est interessant d’interpréter les conditions d’op-
timalités à l’aide d’un Lagrangien L. Nous allons maintenant, dans le cas de contraintes
affines (égalité ou inégalité), donner un lien plus précis et voir que les multiplicateurs
de Lagrange ont une signification importante.
Dans toute cette section, on considère à nouveau une fonctionnelle J sur E à valeurs
dans R, une matrice C réelle p×n et f ∈ Rp . On désignera par (P) le problème suivant :

inf J(v), (P)


v∈K

où l’ensemble K est donné par :

K := {v ∈ E, Cv = f } (contraintes d’égalité)
ou K := {v ∈ E, Cv ≤ f } (contraintes d’inégalité).

Comme en (3.15), nous introduisons le Lagrangien par :

L(v, µ) := J(v) + (µ, Cv − f ), ∀(v, µ) ∈ Rn × Λ (3.26)

où Λ = Rp dans le cas de contraintes d’égalité, et Λ = (R+ )p dans le cas de contraintes


d’inégalité. Nous introduisons aussi deux fonction J et G définies, pour v ∈ K et λ ∈ Λ,
par :
J (v) = sup L(v, µ), G(µ) = infn L(v, µ).
µ∈Λ v∈R

Il est clair que en toute généralité, nous ne pouvons pas guarantir que la valeur J (v)
soit toujours finie. Il se peut que J (v) = +∞ pour certaines valeurs de v ∈ Rn (comme
il se peut que G(µ) = −∞ pour des valeurs µ ∈ Λ). Plus précisement, avec la définition
du Lagrangien, il n’est pas difficile de vérifier que :

+∞ si v 6∈ K,
J (v) = max L(v, µ) =
µ∈Λ J(v) si v ∈ K.

D’où le lemme suivant :

Lemme 3.5.1.

min J(v) = minn max L(v, µ) = minn J (v). (3.27)


v∈K v∈R µ∈Λ v∈R

Le lemme 3.5.1 permet de réecrire (P) sous la forme d’un problème de type min-max
dans lequel la minimisation par rapport à la variable v est faite sur l’espace tout entier,
la contrainte v ∈ K est ”incluse” dans la définition de la fonction J .
36 Ciarlet & Zidani

Une question se pose maintenant : Peut-on changer l’ordre du min-max et à quoi


correspond le problème (D) suivant :

max minn L(v, µ) (D)?


µ∈Λ v∈R

Avant de répondre à cette question, nous allons introduire une définition utile pour la
suite.

Définition 3.5.1. On dit que (u, λ) est un point-selle de L sur K × Λ si et seulement


si : (u, λ) ∈ K × Λ,
∀µ ∈ Λ L(u, µ) ≤ L(u, λ) ≤ L(v, λ) ∀v ∈ K. (3.28)

20

10

−10

−20

−30

−40
2
1 2
0 1
0
−1 −1
−2 −2

Figure 3.3 – Exemple d’un point selle

Avec les deux problèmes d’optimisation (P) et (D), nous avons la caractérisation
suivante du point selle.

Théorème 3.5.1. Le couple (u, λ) ∈ Rn × Λ est point-selle de L sur K × Λ si, et


seulement si :

J (u) = minn J (v) = minn max L(v, µ) = max minn L(v, µ) = max G(µ) = G(λ). (3.29)
v∈R v∈R µ∈Λ µ∈Λ v∈R µ∈Λ

Remarque 3.5.1. Le théorème précédent associe au problème de minimisation (P)


la recheche d’un point-selle (u, λ) pour le Lagrangien L. Inversement, l’existence du
point-selle est liée à deux problèmes d’optimisation, le premier étant le problème de
minimisation (P), qui sera dit primal et le second est le problème de maximisation
(D), qui sera dit dual.
Le théorème indique aussi que l’existence du point-selle est équivalente au fait que
les problèmes duaux (P) et (D) admettent la même valeur optimale.
Optimisation quadratique 37

Preuve : Soit (u, λ) un point selle de L sur K ×Λ. D’après (3.28), pour tout v ∈ K,
on a :
J (v) = sup L(v, µ) ≥ L(v, λ) ≥ L(u, λ), (3.30)
µ∈Λ
et J (u) = sup L(u, µ) ≤ L(u, λ). (3.31)
µ∈Λ

On en déduit alors que :


J (u) = infn J (v) = L(u, λ).
v∈R

On démontre de la même manière que :


G(λ) = sup G(µ) = L(u, λ).
µ∈Λ

Pour démontrer l’implication réciproque, on suppose que (3.29) est vérifiée. Tenant
compte de la défintion de J , on obtient que :
L(u, µ) ≤ J (u) pour tout µ ∈ Λ.
De même on obtient aussi de la défintion de G que :
L(v, λ) ≥ G(λ) pour tout v ∈ Rn .
De ces inégalité et de (3.29), on conclut que
L(u, λ) = J (u) = G(λ)
et que (u, λ) est un point selle de L sur K × Λ.
Corollaire 3.5.1. Supposons que J est convexe différentiable sur K. Si u ∈ Rn est un
minimum global de J sur Rn , alors il existe λ ∈ Λ tel que :
(i) λ est le maximum de G sur Λ,
(ii) (u, λ) est un point-selle de L sur K × Λ,
(iii) (u, λ) ∈ Rn × Λ vérifie la condition nécessaire et suffisante
u ∈ K, λ ∈ Λ, (λ, Cu − f ) = 0, ∇J(u) + C T λ = 0.
Ce résultat indique que le problème primal est aussi important que le problème dual.
Pour obtenir une solution optimale u du problème (P), on pourrait d’abord déterminer
une solution λ du problème dual (D), dont les contraintes sont plus simples. Ensuite,
on calcule la solution du problème sans contrainte :
min L(v, λ),
v∈Rn

dont on sait, à cause de la propriété du point-selle, que sa solution est optimale pour
(P).
38 Ciarlet & Zidani

3.6 Contraintes d’égalité et d’inégalité affines


Dans cette section, on suppose que l’ensemble K est défini par, à la fois, des
contraintes d’égalité et d’inégalité affines :

K = {v ∈ Rn | CI v ≤ fI et CE v = fE }, (3.32)

où CI et CE sont des matrices respectivement de tailles p × n et m × n, et fI ∈ Rp ,


fE ∈ Rm .
Remarquons que la contrainte CE v = fE est équivalente à

CE v ≤ fE et − CE v ≤ −fE ,

et l’ensemble K peut donc être redéfini par :



  
CE fE
K = {v ∈ Rn , Cv ≤ f }, avec C = −CE  et f = −fE 
CI fI
Soit u ∈ K la solution du problème d’optimisation :

inf J(v),
v∈K

où J : Rn → R est une fonction différentiable sur Rn . Du théorème 3.4.1, il résulte


que :
 
λ
∃  µ 1  ∈ Rp × Rm × Rm , tel que :
µ2
∇J(u) + CIT λ + CET (µ1 − µ2 ) = 0,
λ ≥ 0, µ1 ≥ 0, µ2 ≥ 0,
CE u = fE , CI u ≤ fI , (λ, CI u − fI ) = 0.

En définitive, on a le résultat suivant :


Théorème 3.6.1. Considèrons l’ensemble fermé K défini dans (3.32) et supposons J
être une fonction différentiable sur E dans R. Si u ∈ K est un minimum local de J sur
K alors

∃λ ∈ Rp , ∃µ ∈ Rm , ∇J(u) + CIT λ + CET µ = 0, (3.33a)


λ ≥ 0, λi [CI u − fI ]i = 0, (3.33b)
CI u ≤ fI , CE u = fE . (3.33c)

De plus, si J est convexe alors (3.33) est aussi une condition nécessaire et suffisante
de minimalité.
Chapitre 4

Moindres carrés linéaires

Nous considérons dans ce chapitre un problème de minimisation, relativement cou-


rant en pratique, appelé problème de moindres carrés. Nous nous contentons de considérer
le cas particulier des moindres carrés linéaires. Notons qu’un certain nombre d’outils
développés dans le cours MA103 [3] permettent de résoudre ce type de problèmes.

4.1 Problèmatique
De prime abord, il est rassurant ( ! ?) de résoudre exactement un problème. En
pratique, cependant, on se rend compte que, dans de nombreux cas, il n’existe pas de
solution ”exacte” (voir la note de bas de page). C’est souvent le cas lorque l’on désire
réaliser l’opération suivante :
A partir d’un nombre fini (parfois très grand) de mesures, inférer un comporte-
ment (idéalement) valable dans tous les cas, passés, présents ou à venir.
Typiquement, d’une part on dispose d’un modèle abstrait, et d’autre part de données,
et l’on souhaite fusionner l’un et l’autre, pour disposer d’une modélisation concrète du
phénomène étudié, et/ou d’outils de prédiction. Prenons l’exemple suivant.
Carl Friedrichs Gauss (1777-1855) désirait déterminer la trajectoire de planètes,
et notamment celle d’Uranus, découverte à la fin du 18ème siècle. D’après les lois de
Képler, si l’on néglige la présence des autres planètes autour du Soleil, Uranus décrit
une ellipse. Si l’on suppose connus le plan de la trajectoire (écliptique) ainsi que la
direction du grand axe, sa trajectoire est une ellipse E dans le plan de l’écliptique,
dont l’équation est
(x − x0 )2 (y − y0 )2
+ = 1. (4.1)
a2 b2
L’ellipse E est donc caractérisée par quatre paramètres, (x0 , y0 , a, b). Dès que l’on
dispose de quatre positions (ou plus) d’Uranus dans le ciel, il est possible de caractériser

39
40 Ciarlet & Zidani

sa trajectoire elliptique 1 ... Pour cela, Gauss a inventé le principe dit des moindres
carrés (en 1801). Disposant de K mesures de la position d’Uranus Mk (xk , yk )1≤k≤K ,
on choisit (x0 , y0 , a, b), ce qui définit une unique ellipse E = Ex0 ,y0 ,a,b . A partir de là, on
introduit les points (Mk′ )1≤k≤K : pour chaque valeur de k, Mk′ est le point d’intersection
de l’ellipse avec la droite passant par Mk et le centre de l’ellipse, le plus proche de Mk ,
de coordonnées

x′k = pE (xk , yk ), yk′ = qE (xk , yk ), 1 ≤ k ≤ K. (4.2)

Mesures
Projections

E(x0,y0 ,a,b)

Figure 4.1 – Projections sur l’ellipse

Pour mesurer l’erreur commise entre les positions mesurées et leurs projections sur
l’ellipse E, on forme la quantité
K
X 2
ν= Mk Mk′ . (4.3)
k=1

Si tous les points de la trajectoire mesurée se trouvent sur l’ellipse E, on obtient


ν = 0 ; dans le cas contraire, ν > 0. Précisons, avant de continuer, que les données sont
(xk , yk )1≤m≤K , et que les inconnues sont (x0 , y0 , a, b). Comme les nombres (x′k , yk′ )1≤k≤K
sont caractérisés par les relations (4.2), on peut donc introduire la fonctionnelle
K
X
ν(x0 , y0 , a, b) = {kxk − pE (xk , yk )k2 + kyk − qE (xk , yk )k2 }. (4.4)
k=1

L’idée est de partir d’une première ellipse, puis de la modifier, de façon à diminuer la
valeur de ν correspondante, et ainsi de suite... Le but est de minimiser la valeur de
1. Caractérisation de la trajectoire... Pour trois mesures ou moins, il existe une infinité de possibi-
lités. Quatre mesures sont idéales, puisque qu’il leur correspond une unique ellipse. A partir de cinq
mesures ou plus, il faut espérer que tous les points de la trajectoire, à partir du 5ème , se trouvent sur
l’ellipse définie par les quatre premiers ! Cette prise de conscience (existence d’une surdétermination)
est fondamentale, lorsque l’on résout ce type de problèmes.
Optimisation quadratique 41

ν(x0 , y0, a, b), le quadruplet (x0 , y0, a, b) décrivant R4 :


Trouver (xopt opt opt opt
0 , y0 , a , b ) ∈ R4 ,
tel que ν(xopt opt opt opt
0 , y0 , a , b ) = inf ν(x0 , y0, a, b). (4.5)
(x0 ,y0 ,a,b)∈R4

Idéalement, comme nous l’avons remarqué plus haut, si les mesures sont exactes, et si
la trajectoire est effectivement elliptique dans le plan de l’ecliptique, on détermine une
solution telle que
ν(xopt opt opt opt
0 , y0 , a , b ) = 0.

Malheureusement, on sait que toute mesure est approchée, ce qui interdit de trouver un
tel résultat. Heureusement, ceci n’est pas incompatible avec la résolution du problème
(4.5).

Dans la suite, nous nous limiterons à l’étude de modèles-type, pour lesquels la


dépendance par rapport aux inconnues est linéaire. A des fins illustratives, dans le
formalisme adopté ci-dessus, on aurait
 ′
xk = αk x0 + βk y0 + γk a + δk b + f (x1 , y1 , · · · , xK , yK ),
1 ≤ k ≤ K,
yk′ = αk′ x0 + βk′ y0 + γk′ a + δk′ b + f ′ (x1 , y1 , · · · , xK , yK ),
soit ν(v) = kAv − bk2 , v ∈ R4 , A ∈ R2K×4 , b ∈ R2K . (4.6)
On parle alors de moindres carrés linéaires.
Remarque 4.1.1. Pour refermer la parenthèse historique (voir [10] pour plus de
détails), mentionnons que Gauss a mené à bien ses calculs (sans ordinateur !). A la
suite de quoi, on s’est aperçu qu’au cours du temps la trajectoire elliptique optimale
variait... Après avoir éliminé les incertitudes liées aux erreurs de mesure, on en a
déduit que la trajectoire n’était pas une ellipse, mais plutôt une perturbation de tra-
jectoire elliptique. L’influence des autres planètes a été prise en compte, mais cela ne
résolvait toujours pas la difficulté. Urbain le Verrier (1811-1877) a donc eu l’idée
de chercher une nouvelle planète, introduisant une nouvelle perturbation, qui validerait
le modèle : il a découvert Neptune en 1846.

4.2 Le formalisme abstrait et son étude : pourquoi


des carrés ?
Dans la suite, pour A une matrice non nulle de Rm×n et b un vecteur de Rm , on
considère la résolution du problème :
min f (v), avec f (v) = kAv − bkm ,
v∈Rn
42 Ciarlet & Zidani

où m et n sont deux éléments quelconques de N∗ , a priori distincts. Pour cette raison,
on indicera les normes et produits scalaires par m ou n si nécessaire, pour éviter les
confusions.
On remarque, avant de commencer l’étude proprement dite du problème de minimisa-
tion, que f est convexe. En effet, on vérifie que pour v et w deux éléments de Rn , et θ
dans ]0, 1[, on a l’inégalité

f (θv + (1 − θ)w) ≤ θf (v) + (1 − θ)f (w).

Comme f est à valeurs positives, il est équivalent de prouver que les carrés sont dans cet
ordre. On pose x = Av − b et y = Aw − b :

f (θv + (1 − θ)w)2 = kA(θv + (1 − θ)w) − bk2


= kθx + (1 − θ)yk2
= θ 2 kxk2 + 2θ(1 − θ)(x, y) + (1 − θ)2 kyk2
≤ θ 2 kxk2 + 2θ(1 − θ)kxk kyk + (1 − θ)2 kyk2
= [θkxk + (1 − θ)kyk]2
= [θf (v) + (1 − θ)f (w)]2 .

En conséquence, d’après les résultats du chapitre 3, les conditions d’existence de


minimum seront nécessaires et suffisantes. Comment caractériser le minimum ? C’est
l’objet des deux sous-sections ci-dessous...

4.2.1 L’approche directe


En vue d’appliquer les résultats du chapitre 3, calculons le gradient de f , sans
toutefois oublier de vérifier que f est différentiable.
Allons-y... Soient donc v et h deux éléments de Rn , et θ un réel destiné à tendre vers
0 par valeurs positives.

f (v + θh) − f (v) = kx − θAhk − kxk, avec x = Av − b.

1. On se place pour commencer dans le cas général x 6= 0.

1
kx − θAhk − kxk = [kx − θAhk2 − kxk2 ]
kx − θAhk + kxk
1
= [2θ(x, Ah)m + θ2 kAhk2 ]
kx − θAhk + kxk
1
= [2θ(AT x, h)n + O(θ2 )].
kx − θAhk + kxk
Optimisation quadratique 43

Par ailleurs, kxk − kθAhk ≤ kx − θAhk ≤ kxk + kθAhk : on a donc kx − θAhk =


kxk + O(θ). Ainsi, puisque x est fixé (avant-dernière égalité),

1 1 1 1
= = = (1 + O(θ)).
kx − θAhk + kxk 2kxk + O(θ) 2kxk(1 + O(θ)) 2kxk

D’où

(AT x, h)n (AT Av − AT b, h)n


kx − θAhk − kxk = θ + O(θ2 ) = θ + o(θ).
kxk kAv − bk

On a donc trouvé
AT Av − AT b
∇f (v) = . (4.7)
kAv − bk
NB. On vérifie que f est Fréchet-différentiable selon une procédure similaire.

2. Que se passe-t-il dans le cas particulier x = 0 ? Supposons que f soit différentiable,


de différentielle h 7→ (g, h) (g ∈ Rn ). Par définition de la Gateaux-differentiabilité :

f (v + θh) − f (v) = θkAhk = θ(g, h) + o(θ), ∀h ∈ Rn .

Prenons, pour les deux directions h et −h, la même valeur de θ, soit

θ(g, h) + o(θ) = θkAhk = θkA(−h)k = θ(g, −h) + o(θ),

et divisons par θ, que l’on fait tendre vers 0. Il reste 2(g, h) = 0, pour toute
direction h de Rn . On infère la nullité de g, ce qui implique finalement

θkAhk = o(θ),

soit Ah = 0 pour tout h, ou encore A = 0. Or, on a supposé que A est une


matrice non nulle. En conclusion, f n’est pas différentiable en 0 !

Outre le fait que le calcul n’est pas immédiat, nous sommes confrontés à un problème
majeur. f n’est pas différentiable en v0 si Av0 = b. Mais, si Av0 = b, f (v0 ) = 0 et
v0 est un point de minimum de f , puisque f est à valeurs positives ! Les résultats
du chapitre 3 ne sont donc pas applicables, puisqu’ils requièrent la différentiabilité au
point de minimum. Comment remédier à cette difficulté ? C’est l’objet de la sous-section
suivante.
44 Ciarlet & Zidani

4.2.2 Une astuce de calcul


Comme f est à valeurs positives, les minima et points de minimum de f sont
identiques à ceux de son carré, f 2 ! On peut donc considérer le problème de minimisation

min J(v), avec J(v) = kAv − bk2m .


v∈Rn

On vérifie sans peine que

J(v + θh) − J(v) = 2θ(Av − b, Ah)m + θ2 kAhk2m = 2θ(AT Av − AT b, h)n + o(θ).

Ainsi, J est différentiable en tous points (la Fréchet-différentiabilité est obtenue de


même), et l’on a déterminé l’expression suivante du gradient

∇J(v) = 2AT Av − 2AT b. (4.8)

Cette fois, on peut appliquer les résultats du chapitre 3. Pour commencer, J est convexe,
d’après le point (iii) du théorème 2.4.1, puisque

(∇J(v) − ∇J(u), v − u) = 2(AT A(v − u), v − u)n = 2kA(v − u)k2m .

Qui plus est, on a le résultat ci-dessous :

Théorème 4.2.1. u est un point de minimum global de J si, et seulement si, u est
solution de
AT Au = AT b. (4.9)

Preuve : Ceci est une simple application du théorème 3.2.5.

Définition 4.2.1. L’équation AT Au = AT b est appelée équation normale.

♠ Il faut faire très attention. Si bien sûr Au = b entraı̂ne (4.9), la réciproque est
fausse en général...

4.2.3 Existence du point de minimum


On a le

Théorème 4.2.2. Il existe au moins un point de minimum global.

Preuve : Ceci revient à montrer que le système linéaire (4.9) admet toujours
au moins une solution. Pour cela, nous allons utiliser la relation Im A = (Ker AT )⊥ ,
énoncée et démontrée au lemme 3.3.1.
Optimisation quadratique 45

Pour tout élément b de Rm , on peut écrire b = b0 + b⊥ , avec b0 ∈ Ker AT et b⊥ ∈


(Ker AT )⊥ . Alors, AT b = AT b⊥ , et d’après la relation ci-dessus, il existe un élément u
de Rn tel que b⊥ = Au. On en déduit finalement, pour ce vecteur u :

AT b = AT b⊥ = AT Au.

On peut se servir d’outils différents pour retrouver ce résultat. Nous allons détailler
la démarche, car elle est fort instructive, et utile pour la suite du chapitre... La matrice
AT A, qui apparaı̂t dans le terme quadratique de J, est une matrice symétrique et
positive ; en effet :

(AT A)T = AT A, et
(AT Ax, x)n = (Ax, Ax)m = kAxk2m ≥ 0, x ∈ Rn .

Par voie de conséquence, il existe (vi )1≤i≤n une base orthonormale de Rn de vecteurs
propres, de valeurs propres associées (λi )1≤i≤n , appartenant à R+ : AT Avi = λi vi , pour
1 ≤ i ≤ n. Dans la suite, on les classe par ordre décroissant, et l’on définit q, le cardinal
de l’ensemble {λi : λi > 0}, c’est-à-dire que q =rg(AT A). Notons que, puisque A n’est
pas la matrice nulle, on a 1 ≤ q ≤ n.
Dans l’expression de J, on a également un terme linéaire, de la forme −2(b, Av)m .
Soient donc les vecteurs de Rm définis par

1
wi = √ Avi , 1 ≤ i ≤ q.
λi

Pourquoi avoir introduit le facteur 1/ λi ? Parce que, pour 1 ≤ i, j ≤ q, on a la relation
s
1 1 1 λi
(wi , wj )m = ( √ Avi , p Avj )m = p (AT Avi , vj )n = (vi , vj )n = δij .
λi λj λi λj λj

En d’autres termes, (wi )1≤i≤q est une famille orthonormale de Rm .


NB. Au passage, on vient de prouver que
dim[Im A] = dim[V ect(Av1 , · · · , Avn )] = dim[V ect(w1 , · · · , wq )] = q.
Ceci signifie en particulier que rg(A)=rg(AT A) et q ≤ m.
On complète (wi )1≤i≤q , le cas échéant, en une base orthonormale de Rm . On peut alors
P
décomposer le vecteur courant v ainsi que b sur les bases ad hoc, soit v = ni=1 xi vi et
46 Ciarlet & Zidani
Pm
b= i=1 bi wi , pour obtenir

J(v) = kAv − bk2m


q m
X p X
= k λi xi wi − bi wi k2m
i=1 i=1
q  2 m
X p X
= λi xi − bi + bi 2 . (4.10)
i=1 i=q+1

NB. Dans (4.10), la seconde somme peut être vide (si q = m).
Qu’en déduit-on ?

Proposition 4.2.1. u est un point de minimum de J si, et seulement si,


n
X 1
u= x0i vi , avec x0i = √ bi , 1 ≤ i ≤ q, x0i quelconques , q + 1 ≤ i ≤ n. (4.11)
i=1
λi
Pq
De façon équivalente, si on note u0 = i=1 x0i vi , u est un point de minimum si, et
seulement si,
u ∈ u0 + V ect(vq+1 , · · · , vn ). (4.12)

Par construction (encore une fois !), l’ensemble des points de minimum est non vide...

Exercice 4.2.1. Vérifier que (4.11) ou (4.12) est équivalent à (4.9).

Ceci est un bon exemple de la propriété générale suivante. Supposons que, pour un
problème posé à l’aide d’une matrice, on puisse prouver que celle-ci est diagonalisable.
Alors, sous réserve que l’on connaisse ses éléments propres, résoudre le problème initial
revient à résoudre un ensemble de problèmes 2 dans R. Bien évidemment, le défaut ma-
jeur est qu’en général, il est beaucoup trop coûteux de calculer l’ensemble des éléments
propres d’une matrice ! Dans le cas des moindres carrés linéaires, on choisit plutôt
de construire des algorithmes numériques directs ou itératifs permettant d’”inverser”
l’équation normale (c’est-à-dire de calculer un vecteur u solution de (4.9)).

2. Par exemple (classique), soit à calculer l’action d’un polynome R sur une matrice A de Rn×n ,
pour laquelle on suppose qu’il existe P inversible et D diagonale de Rn×n telles que D = P −1 AP .
Alors,

A2 = P DP −1 P DP −1 = P D2 P −1 , Ak = P Dk P −1 , ∀k, et R(A) = P R(D)P −1 , pour R ∈ R[X].


Optimisation quadratique 47

4.2.4 Moindres carrés contraints


Evoquons brièvement ici, ce qui se passe lorsque le problème est contraint, avec une
contrainte du type
v ∈ K ⋆ = {v ∈ Rn : C v = f },

avec C appartenant à Rp×n de rang p, et f un élément de Rp .

Théorème 4.2.3. u⋆ est un point de minimum de J sur K ⋆ si, et seulement si, il


existe un élément λ de Rp tel que le couple (u⋆ , λ) soit solution de
 T  ⋆   T 
A A CT u A b
= . (4.13)
C 0 λ f

Si de plus AT A est inversible, le système linéaire (4.13) admet une solution unique.

Preuve : Ceci est une application du théorème 3.3.2.

4.3 Décomposition en valeurs singulières


Dans cette partie, nous allons considérer un aspect algébrique lié aux problèmes
de moindres carrés linéaires, celui de la factorisation de la matrice A de Rm×n sous la
forme
A = W ΣV T (4.14)

où W et V sont deux matrices orthogonales (appartenant respectivement à Rm×m et


Rn×n ), et Σ une matrice dont les seuls éléments non nuls sont situés sur la diagonale,
de Rm×n .

Remarque 4.3.1. Il est tout à fait possible de reprendre le raisonnement qui suit et
de l’appliquer à une matrice de Cm×n . Dans (4.14), W et V sont alors des matrices
unitaires.

Pourquoi la décomposition en valeurs singulières de A, (4.14), est-elle liée aux


problèmes de moindres carrés étudiés ci-dessus ? Tout simplement parce que V est reliée
à la base orthonormale (vi )1≤i≤n de vecteurs propres de AT A, Σ aux valeurs propres
(λi )1≤i≤n , et W à la base orthonormale (wi )1≤i≤m . Ceci est résumé dans le

Théorème 4.3.1. Soit A une matrice de Rm×n . Il existe W et V deux matrices or-
thogonales de Rm×m et Rn×n respectivement, et Σ une matrice dont les seuls éléments
non nuls sont situés sur la diagonale, de Rm×n , telles que (4.14) soit satisfaite.
48 Ciarlet & Zidani

Preuve : Par définition des deux bases orthonormales, on a les relations

Avk = σk wk , 1 ≤ k ≤ n,

avec σk = λk , pour 1 ≤ k ≤ n, ce que l’on peut réécrire sous la forme
 . . ..   .. .. .. .. 
.. .. . . . . .
   
A  v1 v2 · · · vn  =  σ1 w1 · · · σq wq 0 · · · 0  .
.. .. .. .. .. .. ..
. . . . . . .
Soit
 .. .. .. ..   . .. .. 
. . . . .. . .
vn  ∈ Rn×n .
   
AV =  σ1 w1 · · · σq wq 0 ··· 0  , où l’on a posé V =  v1 v2 · · ·
.. .. .. .. .. .. ..
. . . . . . .
Par construction,V est orthogonale, puisque
n
X n
X n
X
T T
(V V )i,j = (V )i,k Vk,j = Vk,i Vk,j = (vi )k (vj )k = (vi , vj )n = δij .
k=1 k=1 k=1

Si maintenant, on pose
 . .. .. 
.. . .
wm  ∈ Rm×m et
 
W =  w1 w2 · · ·
.. .. ..
. . .

σi , 1 ≤ i, j ≤ q, i = j
Σ ∈ Rm×n telle que Σi,j = ,
0 sinon
vérifions que l’on a l’identité
 .. .. .. .. 
. . . .
 
W Σ =  σ1 w1 · · · σq wq 0 ··· 0 .
.. .. .. ..
. . . .
En effet,
P Pm
pour 1 ≤ i ≤ m, 1 ≤ j ≤ q : (W Σ)i,j = m k=1 Wi,k Σk,j = k=1 (wk )i σj δkj =
σj (wj )i ;
P
pour 1 ≤ i ≤ m, q + 1 ≤ j ≤ n : (W Σ)i,j = m k=1 Wi,k Σk,j = 0 (la j
ème
colonne
de Σ est composée de zéros).
Par construction, W est elle aussi orthogonale, et l’on trouve finalement

AV = W Σ, soit A = W ΣV T .
Optimisation quadratique 49

Définition 4.3.1. On appelle (σk )k les valeurs singulières de A.

Remarque 4.3.2. Quelle est l’apparence de Σ ? Si on appelle r = min(n, m) on a


 
σ1 0 ··· ··· 0
 .. 
 0 σ2 0 . 

Σ= .. .. .. .. ..
 si r = n = m ;
 . . . . .
 .. 
 . 0 σr−1 0 
0 ··· ··· 0 σr
 
σ1 0 ··· ··· 0 0 0 ···
 .. 
.. ..
 0 σ2 0 . 
. .
 . . . . ..
Σ =  ..
 .. .. .. 0 ··· 0  . si r = m < n ;
 . . .. 
 .. 0 σr−1 0 .. . 
0 ··· ··· 0 σr 0 · · · 0
 
σ1 0 ··· ··· 0
 .. 
 0 σ2 0 . 
 . .. 
 . .. .. .. 
 . . . . . 
 . 
 .
Σ= . 0 σr−1 0   si r = n < m ;
 0 ··· ··· 0 σ 
 r 
 0 ··· 0 ··· 0 
 
 .. .. .. 
 . . . 
0 ··· 0 ··· 0
Bien sûr, on a toujours q ≤ r...

Pour aller encore un peu de l’avant, démontrons à présent les identités matricielles
de la proposition ci-dessous. Un vecteur colonne v de Rl appartient aussi à Rl×1 , et
le vecteur ligne v T appartient lui à R1×l ; le symbole · représente la multiplication
matricielle.

Proposition 4.3.1.
q q
X X
A= σk wk ·vkT, A A=T
σk 2 vk ·vkT .
k=1 k=1

Preuve : Plutôt que la simple vérification des résultats, construisons les identités,
en commençant par la première.
50 Ciarlet & Zidani

De (4.14), on tire, pour 1 ≤ i ≤ m, 1 ≤ j ≤ n,


n
X
T
Ai,j = (W Σ)i,k Vk,j
k=1
q
X
= (W Σ)i,k Vj,k (pour k > q, la k ème colonne de W Σ est composée de zéros)
k=1
q
X q
X
= σk Wi,k Vj,k = σk (wk )i (vk )j
k=1 k=1
q
X
= σk (wk )i,1 (vkT )1,j (on passe des vecteurs aux matrices)
k=1
q q
X X
= σk (wk ·vkT)i,j =( σk wk ·vkT)i,j .
k=1 k=1

Pour la seconde identité, on procède de la même façon. Tout d’abord, on remarque que

AT A = V ΣT W T W ΣV T = V DV T , avec D = ΣT Σ = diag(σi 2 ) ∈ Rn×n .

(Ce qui exprime aussi le fait que (vi )1≤i≤n est une base orthonormale de vecteurs propres
de AT A, de valeurs propres associées (σi 2 )1≤i≤n .)
A partir de là, on obtient, pour 1 ≤ i ≤ n, 1 ≤ j ≤ n,
n
X
T T
(A A)i,j = (V D)i,k Vk,j
k=1
q
X
= (V D)i,k Vj,k (pour k > q, la k ème colonne de V D est composée de zéros)
k=1
q q
X X
2
= σk Vi,k Vj,k = · · · = ( σk 2 vk ·vkT)i,j .
k=1 k=1

Avant de vérifier l’utilité pratique des deux identités ci-dessus, introduisons le


pseudo-inverse de Σ : soit Σ† la matrice de Rn×m définie par

 1
† , 1 ≤ i, j ≤ q, i = j
(Σ )i,j = σi .
 0 sinon

On vérifie immédiatement que l’on a



  Iq  si q = n

ΣΣ= Iq 0 .
 si q < n
0 0
Optimisation quadratique 51

A l’aide de la décomposition en valeurs singulières, nous pouvons maintenant définir le


pseudo-inverse de A.

Définition 4.3.2. On appelle pseudo-inverse de la matrice A de Rm×n la matrice


A† de Rn×m définie par
A† = V Σ† W T .

A partir de là, on établit aisément les identités ci-dessous

Lemme 4.3.1.
q q q

X 1 †
X

X
A = vk ·wkT, AA = wk ·wkT, A A= vk ·vkT.
k=1
σk
k=1 k=1

Preuve : La démonstration de la première égalité est semblable à celle de la


première identité enoncée pour A.

En ce qui concerne la deuxième égalité, on a


q
! q
! q
X X 1 X σk
AA† = σk wk ·vkT · vl ·wlT = wk ·vkT·vl·wlT
k=1 l=1
σl
k,l=1
σl
q q q
X σk T
X σk T
X
= wk ·(vk , vl )n·wl = δkl wk ·wl = wk ·wkT.
k,l=1
σl k,l=1
σl k=1

La troisième et dernière égalité se démontre à l’identique.

On peut alors démontrer le résultat élégant ci-dessous.

Théorème 4.3.2. Un point de minimum du problème de moindres carrés linéaires


étudié précédemment est A† b.

Preuve : On écrit simplement


q
! m ! q m
!
X 1 X X 1 X
A† b = vk ·wkT · bi wi = vk · bi wkT·wi
k=1
σk i=1 k=1
σk i=1
q q
X bk X
= vk = x0k vk = x0 .
k=1
σk
k=1

Or, x0 appartient à l’ensemble des points de minimum, d’après (4.12).

Examinons, pour conclure ce chapitre, l’expression du pseudo-inverse dans certains


cas particuliers.
52 Ciarlet & Zidani

Proposition 4.3.2. Si rg(A) = n, on a la relation A† = (AT A)−1 AT .


Si rg(A) = n = m, on a la relation A† = A−1 .

Preuve : Supposons que rg(A) = n. On a vu que le rang de A et celui de AT A sont


identiques (et égaux à q). Dès lors que rg(AT A) = n, on peut inverser cette dernière.
Cette constatation étant faite, on a les relations :
n n
T † T
X 1 T
X
(A A)A = (A A) vk ·wk = σk vk ·wkT = AT .
k=1
σk k=1

On a utilisé le fait que les (vk )1≤k≤n sont les vecteurs propres de AT A, ainsi que la
transposition de la première égalité de la proposition 4.3.1. Comme AT A est inversible,
la première égalité suit.
Supposons que rg(A) = n = m. On se trouve ici dans le cas où A est une matrice
inversible de Rn×n . D’après ce que l’on vient de prouver, on déduit

A† = (AT A)−1 AT = A−1 (AT )−1 AT = A−1 .


Chapitre 5

Algorithmes pour problèmes sans


contraintes : Fonctionnelle
quadratique

Dans ce chapitre, nous allons étudier des algorithmes qui permettent de calculer
numériquement la solution du problème de minimisation,

Trouver u ∈ Rn tel que J(u) = minn J(v).


v∈R

Ici, J est la fonctionnelle qui à v associe J(v) = 12 (Av, v) − (b, v). Nous supposons
dans la suite que A est une matrice symétrique définie-positive de Rn×n et b un vecteur
quelconque de Rn . Nous avons vu, aux chapitres 2 et 3, que la solution d’un tel problème
existe et est unique, et qu’elle vérifie le système linéaire

(Problème sans contraintes) Au = b. (5.1)

A partir de là on peut penser que le minimum peut être obtenu explicitement à l’aide
d’une résolution exacte à l’aide de la méthode de Cramer 1 par exemple. En réalité,
une telle méthode demanderait plusieurs opérations de calcul et est inconcevable pour
des grandes dimensions n ≥ 10. En effet, la méthode de Cramer nécessite le calcul
de n + 1 déterminants qui se calculent chacun en n! multiplications. Ce qui fait un
total de (n + 1)! opérations (sans compter les additions). Avec un ordinateur qui réalise

1. Formule de Cramer : Soit A = [A1 A2 . . . An ] une matrice n × n inversible. La ie composante


xi de la solution x du système linéaire Ax = b est donnée par :

det(A1 , A2 , . . . , Ai−1 , b, Ai+1 , . . . , An )


xi = .
detA

53
54 Ciarlet & Zidani

1 milliard d’opérations par seconde, il faudrait plus de 77 ans pour résoudre un système
linéaire lorsque n = 20 ... Pour n = 50, il faut des milliards d’années ! !
Il est donc nécessaire d’élaborer des méthodes numériques plus rapides. Les algo-
rithmes d’optimisation, que nous allons discuter dans ce chapitre, consistent tous à
choisir une condition initiale u0 ∈ Rn , puis à construire une suite (uk )k≥1. Pour
que de telles méthodes soient efficaces, il faut qu’elles possèdent les deux propriétés
suivantes :
La convergence de la suite (uk ) est assurée, quel que soit le vecteur initial.
La convergence doit être ”suffisamment rapide”.
Le premier critère admet une interprétation claire, d’un point de vue mathématique. Le
sens du second critère est plus flou, et nous essayerons de le préciser dans les sections
suivantes.

5.1 Précisions Numériques. Critères associés à la


convergence
Tout d’abord, il faut être conscient, lorsque l’on effectue un calcul numérique, que
la précision est finie, à la différence du calcul formel, par exemple.
La finitude de la précision découle de la représentation en machine des nombres
réels, sous la forme générique 2

±a0 , a1 · · · ap 10d , avec (a0 , · · · , ap ) ∈ {0, · · · , 9}p+1, a0 6= 0, d ∈ {−dmax , · · · , dmax },

où p et dmax dépendent du microprocesseur qui effectue les calculs. On dit aussi que
p + 1 est le nombre maximal de chiffres significatifs de la représentation en machine,
et que 10−dmax est la précision machine. Cette représentation génère deux difficultés :
• Tout nombre dont la valeur absolue est plus grande que 10dmax +1 est considéré
comme infini, et symétriquement, tout nombre dont la valeur absolue est strictement
plus petite que 10−dmax est considéré comme étant nul ;
• Les opérations sur ces nombres (addition, extraction de racine, ... etc) sont effectuées
en précision finie. Prenons l’exemple de la multiplication : si les deux nombres ont
respectivement q et q ′ chiffres significatifs (q, q ′ ∈ {1, · · · , p + 1}), leur produit possède
q + q ′ − 1 ou q + q ′ chiffres significatifs. Dès lors que q + q ′ − 1 > p + 1, une troncature
est effectuée lors de la mise en mémoire du résultat (même si le calcul était exact),
puisque la représentation de tout nombre comporte au plus p + 1 chiffres significatifs.

2. Plus précisément, la représentation est du type indiqué ci-dessous, mais en base 2.


Optimisation quadratique 55

C’est la raison pour laquelle les calculs numériques produisent en général des er-
reurs d’arrondi...
Par voie de conséquence, et pour revenir à notre problème, il devient difficile d’obte-
nir un résultat du type 3 Au − b = 0. Par ailleurs, on se contente en général d’une
valeur approchée, c’est-à-dire à ε près. Quel est le sens mathématique sous-jacent ?
Typiquement, si on note k · k une norme quelconque, pour ε ∈ R+ ⋆ , on cherche vε tel
que
kAvε − bk ≤ ε. (5.2)
Il est clair que l’ensemble des vε qui satisfont à (5.2) n’est pas réduit à un single-
ton ! Quoiqu’il en soit, à ε près, l’obtention d’un tel vε est suffisante... On parle de
convergence numérique.

Exercice 5.1.1. Quel est l’ensemble défini par (5.2) ?

♠ Test d’arrêt. A la notion de calcul à ε près correspond, par dualité, celle de la


précision requise, ce qui permet de déterminer un critère (ou test) d’arrêt pour nos
méthodes. En effet, pour ε ∈ R+ ⋆ et u0 donnés, on va effectuer des itérations,

Pour k = 0, 1, · · · , tant que kAuk − bk > ε itérer uk → uk+1. (5.3)

(Les itérations sont interrompues pour la première valeur de k telle que kAuk −bk ≤ ε.)

♠ Evaluer le coût calcul d’une méthode itérative. Le premier point impor-


tant auquel on s’intéresse dans une méthode numérique est le nombre d’itérations
nécessaire à la validation du critère d’arrêt. Naturellement, on aura tendance à pri-
vilégier une méthode nécessitant peu d’itérations. Mais baser une analyse de la qualité
d’une méthode itérative sur le nombre d’itérations uniquement est incorrect. Un second
point, complémentaire du premier, est le coût d’une itération. Typiquement, il s’agit
du nombre d’opérations nécessaires à la réalisation d’une itération, c’est-à-dire au cal-
cul de uk+1, connaissant uk . On obtient une idée du coût de calcul en multipliant le
nombre d’itérations par le coût d’une itération.
Donnons deux exemples élémentaires d’estimation du nombre d’opérations dans Rn .
1. Le produit scalaire de deux vecteurs, qui s’écrit
n
X
(x, y) = xi y i ,
i=1

est effectué en n multiplications et (n − 1) additions. Usuellement, on ne conserve que le


terme principal, ce qui signifie que l’on considère que le produit scalaire requiert n additions
3. Et même si l’ordinateur affirme que Au − b = 0, ceci signifie uniquement que la différence est
plus petite que la précision machine, d’après l’exposé précédent.
56 Ciarlet & Zidani

et n multiplications (i.e. 2n opérations).


2. La multiplication matrice-vecteur, qui s’écrit composante par composante,
n
X
(Ax)i = Ai,j xj , 1 ≤ i ≤ n,
j=1

requiert n2 additions et n2 multiplications, ce qui laisse à penser qu’un produit matrice-


vecteur est équivalent à n produits scalaires... Ceci étant, que se passe-t-il si l’on sait que
la matrice A est creuse, c’est-à-dire avec K éléments non nuls par ligne, avec K très petit
devant n ? On ne va stocker que les positions, i. e. les paires d’indices (i, j), et les valeurs
Ai,j non nulles ! Lorsque l’on multiplie A par x, on n’effectue que les multiplications pour
lesquelles Ai,j 6= 0 (et les additions de termes non nuls). On aura donc effectué Kn additions,
et autant de multiplications...
Prenons le cas où K ≤ 7, et la dimension de l’espace est n = 104 (ce qui est tout à fait
envisageable !), on voit que les deux évaluations du coût de calcul donnent
2n2 = 2 × 108 , et 2Kn = 14 × 104 ,
ou l’équivalent de 10.000 produits scalaires, contre 14.

Une autre façon d’estimer le coût du calcul est de mesurer le temps de calcul,
par l’intermédiaire d’une horloge. Noter que ce temps de calcul dépend de la machine
sur laquelle on effectue le calcul numérique 4 . Une machine peut (pour simplifier, car
il existe d’autres modes de fonctionnement), soit travailler séquentiellement, soit en
parallèle. Dans le premier cas, les opérations sont exécutées l’une après l’autre. Dans
le second cas, la machine est constituée de plusieurs processeurs, qui peuvent alors
exécuter simultanément des opérations, et échanger des données entre eux 5 . Bref, le
temps horloge n’est pas le même sur toutes les machines, alors que le nombre total
d’opérations est identique.

♠ Stockage mémoire. Enfin, il peut également être utile de quantifier le stockage


mémoire requis pour l’exécution de la méthode.

La discussion de cette section est volontairement restée très générale, et elle peut
être vue comme une introduction à l’algorithmique numérique. Ce qu’il faut rete-
nir, c’est qu’il convient d’être prudent lorsque l’on évalue la qualité d’une méthode
numérique, car celle-ci résulte habituellement de compromis entre les divers critères
et contraintes que nous avons évoqués ci-dessus. Pour ce type de problèmes, il est
fort utile d’acquérir de l’expérience, notamment en réalisant des comparaisons entre
plusieurs méthodes.
4. On raisonne usuellement en opérations flottantes par seconde, ou FLOPs = FLoating
OPerations per second, pour un processeur donné, sans distinguer les opérations entre elles.
5. On suppose que l’algorithme de calcul le permet. Le fait qu’un algorithme soit effectivement
exécutable en parallèle, ou parallélisable, sort du cadre de ce cours...
Optimisation quadratique 57

5.2 Taux et vitesse de convergence


Nous avons vu, dans la section précédente, qu’il est inévitable d’avoir des erreurs
d’arrondi. Ces erreurs peuvent se propager et même s’accumuler d’une itération à
l’autre, et aussi s’amplifier au cours du calcul. Nous allons maintenant essayer de
comprendre la raison de cette amplification. Prenons l’exemple suivant :
   
10 7 8 7 33  
7 5 6 5 1
 x = 23 a pour solution x = 1 .
 

 8 6 10 9  33
1
7 5 9 10 31

Si on modifie un tout petit peu le second membre on obtient une solution trés différente :
     
10 7 8 7 32.1 9.2
 x = 22.9 a pour solution x = −12.6 .
7 5 6 5    

 8 6 10 9  33.1  4.5 
7 5 9 10 30.9 −1.1

Cet exemple numérique montre que de trés faibles erreurs sur les données (la matrice
ou le vecteur du second membre) peut engendrer une grande erreur sur la solution.
Pour quantifier cet ecart, nous allons introduire la notion de conditionnement d’une
matrice.

Définition 5.2.1. Soit k · k une norme matricielle induite 6 . On appelle conditionne-


ment d’une matrice réelle inversible A ∈ Rn×n , relatif à cette norme, la valeur définie
par :
cond(A) = kAk kA−1k.

Proposition 5.2.1. Soit une matrice inversible A. Soit b 6= 0 un vecteur non nul.
1. Soient x et x + δx les solutions respectives des systèmes linéaires Ax = b, et
A(x + δx) = b + δb, alors

kδxk kδbk
≤ cond(A) . (5.4a)
kxk kbk

2. Soient x et x + δx les solutions respectives de Ax = b, et (A + δA)(x + δx) = b.


Alors on a :
kδxk kδAk
≤ cond(A) . (5.4b)
kx + δxk kAk
6. Voir la définition d’une norme induite dans l’annexe B
58 Ciarlet & Zidani

Preuve : Prenons x et x + δx solutions de Ax = b, et A(x + δx) = b + δb, et


remarquons d’abod qu’on a δx = A−1 δb. D’où kδxk ≤ kA−1 kkδbk. D’autre part,on a
1 1
kbk ≤ kAkkxk, ou encore (puisqu’on a supposé b 6= 0) kxk ≤ kAk kbk . On en déduit
alors l’inégalité (5.4a). L’inégalité (5.4b) s’obtient par des majorations analogues.
Remarque 5.2.1. Noter que le conditionnement d’une matrice est toujours supérieur à
1. En effet, remarquons d’abord que pour n’importe quelle norme induite (cf. proposition
B.0.1) le conditionnement de la matrice identité In est : cond(In ) = kIn k kIn k = 1. En
plus, pour une matrice inversible A et pour n’importe quelle norme induite, on a :
1 = kIn k = kA A−1 k ≤ kAk kA−1 k = cond(A).
Remarque 5.2.2. Les inégalités de la proposition précédente donnent des ”majora-
tions” du taux de perturbation de la solution en fonction du conditionnement de la
matrice et aussi en fonction de la precision sur les données A et b. Une conséquence
importante de la proposition précédente est le résultat suivant :
♠ Si on cherche la solution u du système Au = b, et si par une méthode
numérique on calcule une ε-solution, i.e. vε solution de kAvε −bk ≤ ε. Alors,
même pour un ε assez petit, vε peut être assez loin de la solution exacte
u. Et plus exactement, la distance kvε − uk dépendra du conditionnement
de la matrice A.
Proposition 5.2.2. Soit A une matrice symétrique définie positive. Soient λmin et λmax
respectivement la plus petite et la plus grande valeur propre de A. Le conditionnement
de A pour la norme euclidienne k · k2 (définie dans annexe B), est
λmax
κ := cond2 (A) = .
λmin
Preuve : laissé en exercice.

♠ Taux et vitesse de convergence. Dans le reste de ce chapitre, nous allons nous


intéresser à des méthodes numériques dont on étudiera en particulier la convergence.
Cette convergence théorique est guarantie sans tenir compte de tous les phénomènes de
précisions numériques, amplification des erreurs d’arrondi, et même sans tenir compte
du fait qu’on ne cherche à satisfaire que le test d’arrêt (5.3). Pour compléter l’étude, il
nous faudra aussi nous intéresser aux taux et vitesse de convergence.
Définition 5.2.2. Soit une méthode numérique produisant une suite d’itérés (uk )k .
Soit C > 0 la plus petite constante telle que : kuk+1 − uk ≤ Ckuk − uk pour tout k ≥ 0.
C est appelée taux de convergence.
On appellera aussi vitesse de convergence la quantité R := −ln C.
Optimisation quadratique 59

Il est clair que si le taux de convergence C est inférieur strictement à 1, alors


la méthode sera convergente. De plus, la vitesse de convergence d’une méthode est
d’autant plus grande que son taux de convergence C est petit devant 1.

5.3 Méthodes de descente


Nous allons nous intéresser dans cette section aux méthodes dites de descente. Le
principe de cette méthode est le suivant :
Supposons l’itéré uk connu : on choisit une direction, dite de descente ,
dk 6= 0, et un pas de descente ρk . On construit l’itéré uk+1 par la formule :

uk+1 = uk + ρk dk .

Le choix de dk et ρk se fera de manière à assurer que :

J(uk+1) < J(uk ).

On repétera ce procédé jusqu’à ce que le test d’arrêt (5.3) soit satisfait.


♠ Remarquons, avant de poursuivre que, si uk est égal à u, la solution cherchée, on a
b − Auk = 0, ce qui entraı̂ne en particulier que uk+1 = u. Bref, la suite est stationnaire.
De même, si dk = 0, alors b − Auk = 0 et uk = u.

Nous allons voir qu’il y a plusieurs façons de choisir les directions de descente. Pour
le pas de descente, on choisit soit un pas fixe (ρk = ρ) et nous verrons par la suite qu’il
existe des résultats théoriques pour guider le choix de l’utilisateur, soit on prend un
pas ρk optimal, dans le sens que ρk réalise le minimum de la fonctionnelle

fk : ρ 7→ J(uk + ρdk ). (5.5)

En d’autres termes, on minimise J sur la droite passant par uk , de direction dk . Dans


le cas qui nous intéresse 7 (J(v) = 21 (Av, v) − (b, v)), on remarque que

ρ2
fk (ρ) = (Adk , dk ) + ρ(Auk − b, dk ) + J(uk ).
2
7. C’est parce que nous étudions un problème quadratique qu’il est possible de faire le raisonnement
qui suit. Dans un cas plus général, il est nécessaire de calculer (formellement ou numériquement) le
gradient de J pour déterminer le minimum de la fonction fk . Les problèmes inhérents à ce type de
calcul ne sont pas étudiés ici ; ils ont donné naissance à une riche littérature, et sont entre autres
abordés dans [6].
60 Ciarlet & Zidani

C’est un polynôme de degré 2, avec un coefficient strictement positif pour le terme


d’ordre 2. Il existe donc un point de minimum unique de fk , ρk , caractérisé par

(b − Auk , dk ) (∇J(uk ), dk )
fk′ (ρk ) = 0, soit ρk = =− . (5.6)
(Adk , dk ) (Adk , dk )

A partir de là, nous sommes en mesure de décrire quelques méthodes numériques


de minimisation.

5.3.1 Relaxation
Pour définir la méthode de relaxation, une base orthonormale (ei )1≤i≤n de Rn
étant donnée, on choisit la suite de directions de descente d0 = e1 , d1 = e2 , · · · ; si
l’algorithme n’a pas convergé après n itérations (supposition raisonnable !), on prend
dn = e1 , dn+1 = e2 et ainsi de suite... Dans cette méthode, on choisira un pas optimal
donné par la formule (5.6). Dans ce cas, l’algorithme devient

pour l ≥ 0, i ∈ {1, · · · , n} (k = ln + i − 1)
(b − Auln+i−1 , ei ) (5.7)
ρln+i−1 = , uln+i = uln+i−1 + ρln+i−1 ei .
(Aei , ei )

Entre les deux itérés successifs uln+i et uln+i−1, on en déduit que seule la ième compo-
sante diffère.

Comme seule une composante (sur n) évolue, on peut introduire la suite (ũl )l≥0
telle que 

 ũ0 = u0 ,

 ũ1 = un , le résultat des n premières itérations,
 ũ2 = u2n , le résultat des n suivantes, etc.


 ..
.
Ainsi, toutes les composantes de ũl+1 sont a priori distinctes de celles de ũl . De plus, par
construction, chaque composante est mise à jour une fois et une seule. Plus précisément,
on a vu que la ième composante est modifiée lorsque l’on considère la direction de
descente ei , ce qui donne, d’après (5.7) :
n
X n
X
2 2
(ũl+1 − ũl , ei ) = ρln+i−1 , et kũl+1 − ũl k = ρln+i−1 = kuln+i − uln+i−1k2 . (5.8)
i=1 i=1

Ces expressions seront fort utiles pour démontrer la proposition 5.3.1 ci-dessous.
Avant de l’aborder, établissons le
Optimisation quadratique 61

Lemme 5.3.1. Soit A une matrice symétrique, et λmin et λmax ses plus petite et plus
grande valeurs propres. Alors

∀v ∈ Rn , λmin kvk2 ≤ (Av, v) ≤ λmax kvk2 ; (5.9)


si de plus A est positive, λmin kvk ≤ kAvk ≤ λmax kvk. (5.10)

Preuve : On sait qu’il existe une base orthonormale de vecteurs propres de A ;


P
notons-la (pi )1≤i≤n . On pose v = ni=1 vi pi , et l’on effectue
n
X n
X n
X n
X n
X
(Av, v) = ( vi Api , vj pj ) = ( λi vi pi , vj pj ) = λi vi 2 .
i=1 j=1 i=1 j=1 i=1

On en déduit alors (5.9). En effet :


n
X n
X
2 2
λminkvk = λmin vi ≤ (Av, v) ≤ λmax vi 2 = λmax kvk2 .
i=1 i=1

Comme n
X
kAvk2 = λi 2 vi 2 ,
i=1

et on déduit de même (5.10), car


n
X n
X
2 2 2
2
λmin kvk = λmin 2
vi ≤ kAvk ≤ λmax2
vi 2 = λmax 2 kvk2 .
i=1 i=1

Proposition 5.3.1. Suppososns que la matrice A est symétrique définie positive. Alors,
la méthode de relaxation est convergente.

Preuve : Etape 1. Commençons par borner kũl+1 − ũl k. Pour cela, on remarque
que 8
(Aek , ek ) 2 λmin 2 λmin
J(uk ) − J(uk+1) = fk (0) − fk (ρk ) = ρk ≥ ρk = kuk − uk+1k2 .
2 2 2
En conséquence, pour la suite (ũl )l , on arrive à la minoration :
n
X
J(ũl ) − J(ũl+1 ) = J(uln ) − J(ul(n+1) ) = J(uln+i−1) − J(uln+i )
i=1
n
λmin X λmin
≥ kuln+i−1 − uln+i k2 = kũl+1 − ũl k2 .
2 i=1
2

β β2
8. fk (ρ) = αρ2 + βρ + γ, α > 0. On a ρmin = − , d’où fk (0) − fk (ρmin ) = = αρmin 2 .
2α 4α
62 Ciarlet & Zidani

Par construction, la suite (J(ũl ))l est décroissante et minorée. En conséquence, la


différence de deux termes successifs |J(ũl ) − J(ũl+1)| tend vers 0 lorsque l tend vers
l’infini. D’après la majoration ci-dessus, on obtient liml→+∞ kũl+1 − ũl k = 0. De l’im-
brication des suites (uk )k et (ũl )l , on en déduit également

lim kuln+i − ũl k = 0, pour chaque i ∈ {1, · · · , n}. (5.11)


l→+∞

Etape 2. Convergence de (ũl )l . Reprenons maintenant (5.10), avec v = ũl − u, il en


résulte
λmin kũl − uk ≤ kA(ũl − u)k. (5.12)
Que vaut le terme de droite ? On a :
n
X n
X
2 2
kA(ũl − u)k = (Aũl − b)i = (Aũl − b, ei )2 .
i=1 i=1

Comment faire usage de ce qui précède ? Revenons aux définitions (5.6)-(5.7), on ob-
tient :

0 = fk′ (ρk ) = (∇J(uk + ρk dk ), dk ) = (∇J(uk+1 ), dk ) = (Auk+1 − b, dk ).

Pour k = ln + i − 1, on trouve 0 = (Auln+i − b, ei ), soit (b, ei ) = (Auln+i , ei ). Nous


pouvons donc transformer l’expression du terme de droite de (5.12) en
( n )1/2
X
(A(ũl − uln+i ), ei )2 .
i=1

En utilisant à nouveau l’inégalité (5.10), on arrive à


n
X n
X n
X
(A(ũl − uln+i ), ei )2 ≤ kA(ũl − uln+i )k2 ≤ λ2max kũl − uln+i k2 .
i=1 i=1 i=1

Et grâce à (5.12), on conclut que :

n
!1/2
λmax X
kũl − uk ≤ kũl − uln+i k2 . (5.13)
λmin i=1

Lorsque l tend vers l’infini, chaque terme de la somme tend vers 0. Par ailleurs, le
nombre de termes de la somme est borné indépendamment de l. On arrive donc fina-
lement à
lim kũl − uk = 0. (5.14)
l→+∞
Optimisation quadratique 63

Etape 3. Convergence de (uk )k . Nous venons donc de prouver la convergence de (ũl )l


vers u. Bien évidemment, (uk )k converge également vers u. En effet,
kuk − uk ≤ kuk − ũl k + kũl − uk, avec l = E(k/n),
et (5.11), (5.14) permettent de conclure !
Exercice 5.3.1. Le but de cet exercice est de montrer que l’algorithme de relaxation
peut se réecrire sous une forme plus simple. On note (uk j )1≤j≤n les composantes du
vecteur uk .
1. Prouver que l’on peut écrire (5.7) sous la forme
X
Ai,i uk+1 i = bi − Ai,j uk j , pour i tel que k = ln + i − 1.
j6=i

2. On découpe A en trois parties : A = D − E − F , avec


la partie diagonale : Di,i = Ai,i , 1 ≤ i ≤ n, Di,j = 0 sinon ;
la partie triangulaire inférieure : Ei,j = −Ai,j , 1 ≤ j < i ≤ n, Ei,j = 0 sinon ;
la partie triangulaire supérieure : Fi,j = −Ai,j , 1 ≤ i < j ≤ n, Fi,j = 0 sinon.
On revient aux itérés ũl , c’est-à-dire ceux dont chaque composante est mise à jour une
fois et une seule par itération. Montrer que
(D − E)ũl+1 = b + F ũl .
(Dans le cas de minimisation quadratique, la méthode de relaxation correspond donc
à la méthode itérative de Gauss-Seidel, de résolution d’un système linéaire. Cette
méthode est étudiée en section 5.4.)

5.3.2 Gradient à pas fixe, à pas optimal


Cette catégorie de méthodes a été conçue à partir de la réponse à la question
suivante : dans quelle direction diminue-t-on le plus la valeur d’une fonctionnelle ? Ou,
en termes plus mathématiques, si on pose
wε = u + εd, avec d ∈ Rn , kdk = 1, ε > 0,
comment maximiser la différence J(u) − J(wε ) par rapport au paramètre d ? Pour cela,
cf. (A.6), on écrit
J(u) − J(wε ) = −ε(∇J(u), d) + o(ε).
Lorsque ε est petit, la différence se comporte comme −ε(∇J(u), d) (si ∇J(u) 6= 0),
c’est-à-dire qu’elle est maximale pour
∇J(u)
d=− .
k∇J(u)k
L’opposé de la direction du gradient est une direction privilégiée.
64 Ciarlet & Zidani

Gradient à pas fixe (GPF).


Dans un premier temps, nous allons donc considérer l’algorithme suivant : Soit u0 ∈ Rn
une condition initiale. Pour k ≥ 0, on prend

dk = −∇J(uk ) = b − Auk , ρk = ρ,
uk+1 = uk + ρk dk .

Cette méthode est dite méthode du gradient à pas fixe. Ici, on s’affranchit du
calcul du minimum ρk et on fixe, pour tout k, la valeur du pas à ρ > 0.

Proposition 5.3.2. Supposons que la matrice A est symétrique définie positive. La


méthode de gradient à pas fixe est convergente, sous réserve que le pas de descente ρ
vérifie :
2
0<ρ< .
λmax
(Rappelons que λmax désigne la plus grande valeur propre de A).

Preuve : Elle est notablement plus simple que celle prouvant la convergence de la
méthode de relaxation. Soit u le minimum de J sur Rn . On a :

uk+1 − u = uk + ρ(b − Auk ) − u = (In − ρA)uk + ρAu − u = (In − ρA)(uk − u).

Nous allons majorer la norme de l’erreur à l’itération k + 1 en fonction de celle de


l’itération k, grâce à la relation ci-dessus, en reprenant la démonstration de (5.10) :
n
X n
X
(In − ρA)v = (In − ρA)vi pi = (1 − ρλi )vi pi ;
i=1 i=1
Xn n
X n
X
2
k(In − ρA)vk = ( (1 − ρλi )vi pi , (1 − ρλj )vj pj ) = (1 − ρλi )2 vi 2
i=1 j=1 i=1
n
X n o2
≤ max(1 − ρλi )2 vj 2 = max |1 − ρλi | kvk2 .
i i
j=1

En regroupant les deux résultats, on trouve

kuk+1 − uk ≤ max |1 − ρλi | kuk − uk.


i

Si on note γρ = maxi |1 − ρλi |, on a obtenu kuk+1 − uk ≤ γρ kuk − uk. Par récurrence,


on en déduit
kuk − uk ≤ γρk ku0 − uk. (5.15)
Optimisation quadratique 65

Si γρ est strictement plus petit que 1, on aura démontré la convergence. C’est ce que
nous allons vérifier maintenant.

λmin ≤ λi ≤ λmax , 1 ≤ i ≤ n
=⇒ 1 − ρλmin ≥ 1 − ρλi ≥ 1 − ρλmax , 1 ≤ i ≤ n
=⇒ |1 − ρλi | ≤ max(|1 − ρλmin |, |1 − ρλmax |), 1 ≤ i ≤ n.

Puisque les bornes sur les valeurs propres λmin et λmax sont atteintes,

γρ = max(|1 − ρλmin |, |1 − ρλmax |). (5.16)

Pour conclure, nous majorons γρ , à l’aide des hypothèses sur A (semi-définie positive),
et sur ρ :  
0 < λmin ≤ λmax −1 < 1 − ρλmin < 1
2 =⇒ .
0 < ρ < λmax −1 < 1 − ρλmax < 1
On vient donc de prouver que
γρ < 1.

A partir de ce résultat, on constate que, pour appliquer la méthode du gradient à


pas fixe, il faut connaı̂tre la valeur propre λmax ou, au moins, une estimation de cette
dernière.
♠ Dans la preuve de la proposition 5.3.2, nous avons aussi montré que le taux de
2
convergence du gradient à pas fixe est donné par (pour 0 < a ≤ ρ ≤ b < λmax ):

CGPF (ρ) = max(1 − ρλmin ; ρλmax − 1).


2
Ce taux de convergence sera minimal pour une valeur de ρmin = . Dans ce
λmax + λmin
cas, la vitesse ”maximale” de convergence est :

 
2 λmax (5.17)
RGPF (ρmin ) := −ln 1 − , avec κ = .
1+κ λmin

Méthode du gradient à pas optimal (GPO). Cette méthode consiste à prendre


comme direction de descente la direction opposée au gradient, et comme pas de descente
le pas optimal donné par (5.6) : Pour k ≥ 0, on calcule
kdk k2
dk = −∇J(uk ) = b − Auk , ρk = .
(Adk , dk ) (5.18)
uk+1 = uk + ρk dk .
66 Ciarlet & Zidani

Notons dès maintenant que, d’après (5.6), on a la propriété

0 = fk′ (ρk ) = (∇J(uk+1), dk ) = −(dk+1 , dk ). (5.19)

En clair, deux directions consécutives de descente sont orthogonales.

Proposition 5.3.3. Si la matrice A est symétrique définie positive, alors la méthode


de gradient à pas optimal est convergente.

Preuve : Majorons pour commencer la norme kuk − uk :

λmin kuk −uk2 ≤ (A(uk −u), uk −u) = (Auk −b, uk −u) = −(dk , uk −u) ≤ kdk k kuk −uk.

On infère
1
kuk − uk ≤ kdk k.
λmin
Utilisons maintenant l’orthogonalité entre deux directions consécutives de descente :

kdk k2 = (dk −dk+1 , dk ) = (A(uk+1−uk ), dk ) ≤ kA(uk+1 −uk )k kdk k ≤ λmax kuk+1−uk k kdk k.

Ainsi
kdk k ≤ λmax kuk+1 − uk k.
On arrive alors à la majoration
λmax
kuk − uk ≤ kuk+1 − uk k.
λmin
La convergence de (uk )k vers u découle donc de la propriété limk→+∞ kuk+1 − uk k = 0.
(Adk , dk ) 2
D’autre part, J(uk )−J(uk+1) = ρk . Or, l’égalité uk+1 −uk = ρk dk implique
2
kuk+1 − uk k
(si dk 6= 0), |ρk | = . Ainsi
kdk k
(Adk , dk ) λmin
J(uk ) − J(uk+1 ) = 2
kuk+1 − uk k2 ≥ kuk − uk+1k2 .
2kdk k 2
Comme (J(uk ))k est décroissante et minorée, la différence de deux termes consécutifs
tend vers 0, ce qui implique la convergence de (uk )k vers u, puisque
√ λmax
kuk − uk ≤ 2 3/2 (J(uk+1) − J(uk ))1/2 . (5.20)
λmin

♠ Dans le cas de la fonctionnelle quadratique J, on a vu que le calcul de la valeur


optimale ρk ne présente aucune difficulté. Il peut en être tout autrement dans le cas
général.
Optimisation quadratique 67

5.3.3 Gradient conjugué


Nous avons remarqué que pour la méthode du gradient à pas optimal, deux direc-
tions successives de descente sont orthogonales. Par contre, il n’y a aucune raison pour
que trois (ou plus) directions de descente soient orthogonales entre elles. Ainsi, on peut
”revenir” dans des directions déjà explorées... Le principe de la méthode du/des
gradient(s) conjugué(s) est de construire une suite de directions de recherche que
l’on garde en mémoire, pour essayer d’éviter les retours. Pour cela, si u1 , . . . , uk ont
déjà été calculés, et si tous les gradients gl = ∇J(ul ), 0 ≤ l ≤ k sont non nuls, on
cherche uk+1 tel que

J(uk+1 ) = min J(v), avec Gk = Vect(g0 , g1 , · · · , gk ).


v∈uk +Gk

NB. Pour respecter l’esprit des méthodes de gradient, on conserve les directions ”opti-
males”, c’est-à-dire les gradients de J aux itérés successifs.

Le principe de la méthode est très attrayant, puisqu’on espère éviter les redondances
dans le choix de la direction de descente, i. e. on espère que

dim(Gk+1 ) = dim(Gk ) + 1, k = 0, 1, · · · .

Bien sûr, ceci n’est nullement garanti (il faut et il suffit que gk+1 6∈ Gk )... Par ailleurs,
la construction de la suite des espaces vectoriels (Gk )k≥0, et la résolution des problèmes
posés sur uk + Gk , semblent très couteuses, puisqu’on doit gérer des espaces vectoriels
dont la dimension peut fort bien devenir comparable à n. Heureusement, et c’est la
”magie” de la méthode du gradient conjugué, nous allons vérifier qu’aucun de ces deux
problèmes ennuyeux n’en est un !

Tout d’abord, d’après (3.14), gk+1 est orthogonale à Gk ; ceci signifie en particulier
que
(gk+1, gl ) = 0, 0 ≤ l ≤ k.
Par récurrence, on infère facilement que

(gi , gj ) = 0, 0 ≤ i < j ≤ k + 1. (5.21)

Les gradients sont tous orthogonaux entre eux. Ce qui, encore une fois, est beaucoup
plus intéressant que la propriété d’orthogonalité de deux gradients successifs de la
méthode à pas optimal. On obtient alors la

Proposition 5.3.4. La méthode du gradient conjugué converge en n itérations au plus.


68 Ciarlet & Zidani

Preuve : Au bout de n − 1 itérations, si aucun des ∇J(uk ) = gk , 0 ≤ k ≤ n − 1, ne


s’annule, on a construit une famille libre de Rn à n éléments ; ou, en d’autres termes, une
base de Rn ! Comme gn = ∇J(un ) est orthogonal à ces n vecteurs, il est nécessairement
nul, ce qui signifie que un = u.

Etudions maintenant les aspects pratiques de l’algorithme, et notamment la gestion


des espaces (Gk )k . Commençons par la propriété suivante, qui porte sur les directions
de descentes (δk )k , δk := uk+1 − uk .

Lemme 5.3.2. Les directions (δk )k sont telles que

(Aδi , δj ) = 0, pour i 6= j. (5.22)

Preuve : D’après l’expression du gradient de J : gk+1 = Auk+1 −b = Auk −b+Aδk =


gk + Aδk . D’après (5.21), pour l compris entre 0 et k,

0 = (gk+1, gl ) = (gk , gl ) + (Aδk , gl ).

Soit, puisque gk est lui-même orthogonal à gl dès lors que l est différent de k,

0 = (Aδk , gl ), 0 ≤ l ≤ k − 1.

Or, par définition de la méthode du gradient conjugué, δl = ul+1 − ul appartient à


Gl ⊂ Gk−1, pour l variant de 0 à k − 1. En d’autres termes, δl est une combinaison
linéaire de (gm )0≤m≤k−1 , ce qui, combiné à l’égalité ci-dessus, permet d’obtenir

0 = (Aδk , δl ), 0 ≤ l ≤ k − 1.

Définition 5.3.1. On dit que des directions (non nulles) (δk )k vérifiant (5.22) sont
conjuguées par rapport à la matrice A.

♠ Bien sûr, si les vecteurs (δk )k sont tous non nuls, la relation (5.22) implique que
la famille (δk )k est libre, puisque (comme A est symétrique définie positive) la forme
bilinéaire (·, ·)A : (x, y) 7→ (Ax, y) est un produit scalaire, que l’on peut réécrire sous
la forme
Xn n
X n
X
(x, y)A = λi xi yi , x = xi pi , y = y i pi .
i=1 i=1 i=1
Optimisation quadratique 69

Par construction, Vect(δ0 , · · · , δk ) = Gk : ainsi, connaı̂tre Gk équivaut à connaı̂tre


(δl )0≤l≤k ! Par ailleurs, on a δk ∈ Gk \ Gk−1. On peut donc écrire la décomposition
k
X
δk = βlk gl , avec βkk 6= 0.
l=0

En particulier, si k = 0, on a la relation

δ0 = β00 g0 . (5.23)

Soit maintenant k ≥ 1 ; d’après (5.22) et (5.21), pour m compris entre 0 et k − 1 :

0 = (Aδk , δm ) = (δk , Aδm ) = (δk , A(um+1 − um )) = (δk , gm+1 − gm )


Xk
= βlk (gl , gm+1 − gm ) = βm+1
k
kgm+1 k2 − βm
k
kgm k2 .
l=0

k k kgm+1 k2
=⇒ βm = βm+1 , m = k − 1, · · · , 0,
kgm k2
k kgk k2
=⇒ βm = βkk , m = k, · · · , 0.
kgm k2
On a donc ( k )
X kgk k2
δk = βkk gl .
l=0
kgl k2
Intégrons, dans cette expression, celle de δk−1 .
( k−1 ) ( k−1
)
X kgk k2 kg k k 2 X
kg k−1 k 2
δk = βkk 2
gl + gk = βkk 2 2
gl + gk ,
kg lk kg k−1 k kg lk
( l=0 ) l=0
2
kgk k 1
soit δk = βkk δ
k−1 k−1
+ gk , pour k ≥ 1. (5.24)
kgk−1k2 βk−1

Le calcul des directions (δk )k est donc particulièrement simple, à l’aide de la récurrence
(5.23)-(5.24).

Pour revenir aux algorithmes avec directions de descente, notons que l’on peut
1
définir dk = − k δk , pour k ≥ 0. Les relations (5.23)-(5.24) deviennent
βk
kgk k2
d0 = −g0 , dk = dk−1 − gk , pour k ≥ 1. (5.25)
kgk−1 k2
De plus, et c’est là une des propriétés remarquables de la méthode du gradient conjugué,
regardons ce qu’il advient si l’on minimise la fonctionnelle J sur la droite passant par
uk de direction dk :
70 Ciarlet & Zidani

• minρ∈R J(uk + ρdk ) ≥ minv∈uk +Gk J(v) = J(uk+1), puisque dk ∈ Gk .


• uk+1 se trouve sur la droite passant par uk de direction dk (uk+1 = uk − βkk dk ).
En d’autres termes, le minimum est bien atteint en uk+1 = uk + ρk dk , avec,
(b − Auk , dk )
ρk = = −βkk .
(Adk , dk )
La boucle est bouclée : La méthode du gradient conjugué est bien à une
méthode de descente. Son nom tire son origine du fait que, d’après (5.22), les
directions de descente (dk )k sont conjuguées par rapport à A.
Récapitulons. Une fois ε et u0 fixés, l’algorithme du gradient conjugué consiste en


Initialisation : k = 0

Choisir u0 .

Calculer g0 = Au0 − b ; d0 = −g0 .

Tant que kgk k > ε, itérer k = 1, 2, · · ·
(a) approximation de la solution
(5.26)
(gk−1, dk−1 )
Calculer βk−1 = ; uk = uk−1 − βk−1 dk−1 .

(Adk−1 , dk−1)

(b) détermination de la nouvelle direction
kgk k2
Calculer g k = Au k − b ; α k = ; dk = αk dk−1 − gk .
kgk−1k2
(gk−1, gk−1)
Exercice 5.3.2. Montrer que dans (5.26), on a aussi : βk−1 = − .
(Adk−1 , dk−1)
NB. On peut établir des résultats portant sur la vitesse de convergence de la
méthode, en norme k · kA , cf. pc4.

Les propriétés fondamentales de l’algorithme ci-dessus sont au nombre de deux :


• La minimisation est effective sur un sous-espace vectoriel dont la dimension croı̂t
à chaque itération. En conséquence, la solution u est calculée en n itérations au plus
(aux erreurs de calcul près !).
• Les directions (dk )k sont faciles à calculer, et il suffit d’en conserver deux en mémoire
à tout instant de l’algorithme.

Pour accélérer la vitesse de convergence, on peut préconditionner le système linéaire,


ce qui conduit en pratique à une réduction notable du nombre d’itérations. Plus
précisement, Soit A une matrice symétrique définie positive mal conditionnée (i.e.,
cond(A) >> 1) . On cherche le minimum u dans Rn de la fonctionnelle J définie par
J(v) := 21 (Av, v) − (b, v), ou de manière équivalente on cherche à résoudre le système
Au = b, et supposons qu’il existe une matrice C inversible, et telle que cond(CAC T )
Optimisation quadratique 71

soit petit. Dans ce cas, le système préconditionné consiste à déterminer la solution v


de CAC T v = Cb, le minimum u se déduit alors de v par u = C T v.
♠ Cependant, comme indiqué à la section 5.1, il faut veiller à ne pas trop augmenter
le coût de calcul par itération... Ce type de considération a donné naissance à une
littérature considérable (citons notamment [7, 9]).

5.3.4 Extensions
Il est prouvé dans [4] que les méthodes de relaxation et de gradient à pas optimal, ou
à pas fixe, sont applicables dans un espace de Hilbert, sous réserve que la fonctionnelle
J vérifie certaines propriétés. En clair, la fonctionnelle J n’est qu’un cas très particulier,
mais fort utile, puisqu’elle permet de construire des méthodes de résolution de systèmes
linéaires. Précisément, si la fonctionnelle J est C 1 et α-convexe, avec une différentielle
lipschitzienne, les méthodes convergent. Ceci signifie :
J α-convexe : cf. remarque 2.4.2, points (viii) et (ix).
dJ lipschitzienne : ∃M > 0, ∀u, v ∈ E, kdJ(u) − dJ(v)k ≤ Mku − vk.

Exercice 5.3.3. Retrouver les résultats des propositions 5.3.1 et 5.3.3 sous réserve
que la fonctionnelle vérifie les hypothèses ci-dessus. 9

Pour ce qui est de la méthode du gradient conjugué, certaines adaptations sont également
possibles, dans le cas d’une fonctionnelle plus générale, sous réserve toutefois de modifica-
tions de l’algorithme (cf. [11], et [6] pour une discussion détaillée.)
Si maintenant on considère la résolution d’un système linéaire, dont la matrice n’est
pas symétrique, il est impossible de conserver à la fois les deux propriétés remarquables
de l’algorithme du gradient conjugué, à savoir la convergence en n itérations au plus,
associée à l’utilisation de récurrences de taille constante (voir [5]) ! Il faut, au choix,
soit conserver toutes les directions précédentes de descente, ce qui accroı̂t notablement
le coût calcul, soit ne garder que les p (pour p fixé, petit devant n) dernières directions,
et raisonner dans
uk + Vect(gk , · · · , gk−p+1).

Nous renvoyons le lecteur intéressé à [13], article dans lequel la méthode GMRES 10 a
été introduite pour résoudre des systèmes linéaires, de matrice non symétrique.

9. La démonstration de la généralisation de la proposition 5.3.2 est beaucoup plus ardue, notam-


ment parce qu’elle est complètement différente de celle utilisée dans le cas de la fonctionnelle J.
10. Algorithme GMRES : Generalized Minimum RESidual algorithm.
72 Ciarlet & Zidani

5.4 Méthodes itératives


Dans cette section, on va s’intéresser à des méthodes numériques de résolution du
système linéaire
J ′ (u) = Au − b = 0.
La solution de ce système est le minimum recherché de la fonctionnelle quadratique J
sur Rn .
Le principe des méthodes itératives est le suivant :
1. On décompose la matrice A sous la forme : A = M − N avec M inversible
2. Partant de u0 ∈ Rn , on construit (uk )k par :

Muk+1 = Nuk − b, i.e uk+1 = M −1 Nuk − M −1 b. (5.27)

Ces méthodes ne sont interressantes que si le choix de M rend (5.27) particulièrement


facile à résoudre.
Si la suite (uk )k , définie par la relation de récurrence (5.27), converge vers une limite
u, alors par passage à la limite dans (5.27), on obtient :

(M − N)u = Au = b.

Par conséquent, si (uk )k converge, alors sa limite est forcément la solution du système
linéaire.
Dans le lemme suivant, nous allons énoncer une condition nécessaire et suffisante
pour la convergence d’une méthode itérative à l’aide du rayon spectrale de la matrice
M −1 N (voir annexe B, pour la définition du rayon spectrale).

Lemme 5.4.1. La suite (uk )k définie par la méthode itérative (5.27) est convergente
si et seulement si le rayon spectrale ρ(M −1 N) vérifie : ρ(M −1 N) < 1.

Preuve : On a :

uk+1 − u = (M −1 Nuk + M −1 b) − (M −1 Nu + M −1 b)
= M −1 N(uk − u)

Donc uk − u = (M −1 N)k (u0 − u). Par application de la proposition B.0.5, on en déduit


que uk tend vers u, quel que soit u0 ∈ Rn , si et seulement si ρ(M −1 N) < 1.

Le rayon spectral est souvent difficile à calculer. Cependant, nous avons le résultat
général (fort utile) suivant :
Optimisation quadratique 73

Lemme 5.4.2. Soit A une matrice symétrique définie positive. Soit une décomposition
de A définie par A = M − N avec M inversible. Si (M T + N) est aussi définie positive,
alors
ρ(M −1 N) < 1.
Preuve : Notons d’abord que que si A est symétrique, alors M T + N l’est aussi et
donc ses valeurs propres sont réelles. En effet,

(M T + N)T = M + N T = A + N + N T = AT + N T + N = M T + N.

D’autre part, de la proposition B.0.4, on sait que ρ(M −1 N) ≤ kM −1 Nk pour toute


norme induite k.k. On choisit la norme matricielle induite de la norme vectorielle définie
par kvk2A = (Av, v) (c’est bien une norme vectorielle, puisque A est symétrique définie
positive). Ainsi, pour v ∈ Rn , en posant w = M −1 Av, il vient :

kM −1 Nvk2A = (AM −1 Nv, v) = (v − w, A(v − w))


= kvk2A − (w, Av) − (w, Av) + (w, Aw)
= kvk2A − (w, Mw) − (w, Mw) + (w, Aw)
= kvk2A − (w, (M − A)w) − (M T w, w)
= kvk2A − (w, (M T + N)w)
≤ kvk2A − λmin (M T + N)kwk22 .

Comme M T + N est définie positive, on a λmin (M T + N) > 0. De plus,

Av = Mw =⇒ (Av, v) = (Mw, v)
=⇒ kvk2A ≤ kMk2 kwk2 kvk2 ,

et d’autre part on a λmin (A)kvk22 ≤ kvk2A avec λmin (A) > 0 puisque A est définie-
positive. Finalement, on obtient :
 
−1 2 λmin (M T + N)λmin (A)
kM NvkA ≤ 1 − < 1 ∀v ∈ Rn , vérifiant kvkA = 1.
kMk22
On en déduit que
ρ(M −1 N) ≤ kM −1 NkA < 1.

Nous allons maintenant donner les exemples les plus classiques de méthodes itératives.
Pour celà, notons D = diag(A) la diagonale de A, −E = trianginf (A) la partie tri-
angulaire inférieure de A et par −F = triangsup (A) la partie triangulaire supérieure.
74 Ciarlet & Zidani

Méthode de Jacobi. On appelle la méthode de Jacobi, la méthode itérative associée


au choix : M = D et N = D − A = E + F . On désigne par matrice de Jacobi la matrice
J = M −1 N = D −1 (E + F ). L’algorithme s’écrit alors :

1) On choisit u0 ∈ Rn , ε > 0
2) Tant que kAuk − bk > ε, calculer uk+1 = J uk + D −1 b.

Pour que cette méthode soit bien définie, il faut que la matrice D soit inversible (C’est
à dire que tous les éléments diagonaux de A soient non nuls).

Méthode de Gauss-Seidel. On appelle la méthode de Gauss-Seidel, la méthode


itérative associée au choix : M = D − E et N = F . On désigne par matrice de Gauss-
Seidel la matrice G = M −1 N = (D − E)−1 F = (A + F )−1 F. L’algorithme s’écrit
alors :
1) On choisit u0 ∈ Rn , ε > 0
2) Tant que kAuk − bk > ε, calculer uk+1 = Guk + (D − E)−1 b.

La méthode de Gauss-Seidel est bien définie si la matrice D − E est inversible, c’est


à dire que D est inversible. Notons que D − E est facile à inverser puisque c’est une
matrice triangulaire).

Théorème 5.4.1.
(i) Si A est symétrique et définie-positive, alors la méthode de Gauss-Seidel converge.
P
(ii) Si A est à diagonale strictement dominante (i.e. |Aii | > i6=j |Aij | pour tout i =
1, · · · , n), alors les méthodes Gauss-Seidel et Jacobi convergent
(iii) Si A est tridiagonale, alors ρ(G) = ρ(J )2 .

Preuve :
Le point (i) s’obtient à partir des lemmes 5.4.1 et 5.4.2, en remarquant que si A est
symétrique définie positive, alors M T + N = (D − E)T + F = D − F + F = D est
définie positive.

Pour prouver le point (ii), notons d’abord que la matrice J = M −1 N vérifie :


Aij
Jii = 0; et Jij = pour i 6= j.
Aii
Si A est à diagonale strictement dominante, alors
P
X |Aij |
j
kJ k∞ = max |Jij | = max < 1.
i
j
i |Aii |
Optimisation quadratique 75

On en déduit que ρ(J ) ≤ kJ k∞ < 1.

Pour prouver (iii), nous allons vérifier que lorsque A est tridiagonle, λ 6= 0 est valeur
propre de J si et seulement si et seulement si λ2 est valeur propre de G. Pour celà,
considérons la matrice Q(δ) := diag(δ, δ 2 , · · · , δ n ), avec δ 6= 0. Remarquons d’abord
que pour toute matrice tridiagonale de la forme 11 : B = P − L − U, on a :
1
Q(δ)BQ(1/δ) = P − δL − U,
δ
et

det(B) = det(P − L − U) = det(Q(δ))det(B)det(Q(1/δ))


1
= det(P − δL − U) ∀δ 6= 0. (5.28)
δ
Revenons maintenant à la matrice A. λ ∈ C est valeur propre de J ssi λ est racine du
polynôme :

PJ (λ) := det(λI − D −1 (E + F )) = det(λD − E − F )/det(D).

De même, λ est valeur propre de G ssi λ est racine du polynôme

PG (λ) := det(λI − (D − E)−1 F ) = det(λD − λE − F )/det(D − E).

Or, on a det(D) = det(D − E), et d’aprés (5.28) (en posant δ = λ, P = λ2 D, L = λE,


et U = λF ) on a :

det(λ2 D − λ2 E − F ) = det(λ2 D − λE − λF ) = λn det(λD − E − F ).

Ce qui pouve que pour λ 6= 0,

PJ (λ) = 0 ou PJ (−λ) = 0 ⇐⇒ PG (λ2 ) = 0,

en d’autre terme λ ou −λ est valeur propre de J si et seulement si λ2 est valeur propre


de G. Par conséquent, on a bien ρ2 (J ) = ρ(G).

( ( (
Bii i=j Bii−1 j =i−1 Bii+1 j =i+1
11. avec Pij = , Lij = , et Uij =
0 i 6= j 0 j 6= i − 1 0 j 6= i + 1
76 Ciarlet & Zidani
Chapitre 6

Algorithmes pour problèmes


contraints

De façon similaire au cas sans contraintes, les méthodes de résolution des problèmes
contraints sont très nombreuses. Nous allons en présenter quelques unes, qui conduisent
à des algorithmes numériques simples et utilisables en pratique.
Le problème auquel nous nous interessons, dans tout ce chapitre, est le suivant :
Trouver u ∈ K tel que J(u) = min J(v).
v∈K

Ici, J est la fonctionnelle qui à v associe J(v) = 21 (Av, v) − (b, v), où la matrice A est
supposée symétrique définie-positive de Rn×n , b un vecteur quelconque de Rn et K est
un fermé convexe de Rn .

6.1 Méthode du gradient projeté.


D’abord insistons sur l’hypothèse que K est un convexe fermé. Du théorème 3.2.4,
nous savons que la solution optimale u du problème contraint, vérifie l’inéquation
d’Euler suivante :
(∇J(u), u − v) ≤ 0 ∀v ∈ K.
D’autre part, rappelons que pour tout w ∈ Rn , il existe une unique projection de w
sur K, notée PK (w) ∈ K, solution de (voir Exemple 3.2.1)
kPK (w) − wk = min kv − wk.
v∈K
n
De plus, pour tout w ∈ R , la projection PK (w) est caractérisée par :
(PK (w) − w, PK (w) − v) ≤ 0 ∀v ∈ K, (6.1)
On arrive alors à la proposition suivante :

77
78 Ciarlet & Zidani

Proposition 6.1.1. Soit K un convexe fermé de Rn et ρ > 0. u ∈ K est solution du


problème contraint J(u) = minv∈K J(v) si et seulement si

u = PK (u − ρ∇J(u)).

Preuve : Du fait que J est convexe, l’inéquation d’Euler constitue une condition
nécessaire et suffisante de minimalité. Ainsi, pour u ∈ K et ρ > 0, on a :

u est minimum ⇐⇒ ∇J(u), u − v ≤ 0 ∀v ∈ K,

⇐⇒ ρ∇J(u), u − v ≤ 0 ∀v ∈ K,
  
⇐⇒ u − u − ρ∇J(u) , u − v ≤ 0 ∀v ∈ K,
| {z }
w

⇐⇒ u = PK u − ρ∇J(u) .

L’algorithme du gradient projeté se base sur la propriété ci-dessus et propose de


construire une suite (uk )k qui converge vers u en tant que point fixe de l’application
v 7−→ PK (v − ρ∇J(v)). Plus précisement, l’algorithme s’écrit :

1) Initialisation : u0 ∈ Rn , un pas ρ > 0 et une précision η > 0.

On calcule u1 = PK (u0 − ρ∇J(u0 )).

2) Tant que kuk − uk−1k > η, on définit uk+1 par

uk+1 = PK (uk − ρ∇J(uk )).

Remarque 6.1.1. Noter que dans cet algorithme le test d’arrêt est différent de celui
qu’on avait utilisé dans les cas des algorithmes d’optimisation sans contrainte.
♠ On ne peut plus prendre comme test d’arrêt k∇J(uk )k ∼ 0 car pour le problème
avec contraintes le minimum u ne satisfait pas forcément “∇J(u) = 0” !
♠ Le test d’arrêt kuk − uk−1k < η est le mieux adapté à l’algorithme de gradient
projeté, étant donné qu’on cherche un point fixe. En effet, le test signifie aussi que
kuk−1 − PK (uk−1 − ρ∇J (uk−1))k < η, en d’autre terme uk est un point fixe à une
précision η-près.

Théorème 6.1.1. Soit K 6= ∅ un convexe fermé de Rn , et Soit


1
J : v 7−→ (Av, v) − (b, v),
2
Optimisation quadratique 79

2
où A ∈ Rn×n est symétrique, définie positive, et b ∈ Rn . Si 0 < ρ < , alors quel
λmax (A)
que soit u0 ∈ Rn , la suite (uk ) définie par le gradient projeté converge vers le minimum
u. (λmax (A) désigne la plus grande valeur propre de A.)

La preuve de ce théorème utilise de manière essentielle une propriété de contraction


de la projection PK .

Lemme 6.1.1. L’application w ∈ Rn 7−→ PK (w) est 1-Lipshitz :

kPK (w) − PK (v)k2 ≤ kw − vk2 ∀w, v ∈ Rn .

Preuve du Théorème 6.1.1. Notons d’abord que ∇J (v) = Av − b ∀v ∈ K, et


 
uk+1 − u =
PK uk − ρ(Auk − b) − PK u − ρ(Au − b) .
2 2

A l’aide du lemme précédent, on obtient :


 
uk+1 − u ≤ I − ρA (u k − u)

≤ γρ uk − u 2 ,
2 2

2
où γρ := |λmax (I − ρA)|. Pour tout 0 < ρ < λmax (A)
, on a γρ < 1, et donc :

uk − u ≤ (γρ )k u0 − u −−−−→ 0. ✷
2 2 k→+∞

♠ Le théorème précédent peut être généralisé à une classe plus large de problèmes
d’optimisation convexe avec contraintes. Nous renvoyons à [6] pour une discussion plus
approfondie.

♠ D’un point de vue pratique, la projection d’un élément v ∈ Rn sur un convexe


quelconque peut être très difficile à déterminer. Il existe cependant un cas où cette
projection est aisée :
n
Y
Lemme 6.1.2. Si K = [ai , bi ]. Soit y = (y1 , . . . , yn )T ∈ Rn , la projection x = PK (y)
i=1
a pour composantes :
 
xi = min max(ai , yi ), bi pour 1 ≤ i ≤ n.

Preuve : Laissée à titre d’exercice.


80 Ciarlet & Zidani

6.2 Méthode d’Uzawa


Supposons que l’ensemble K est donnée par l’une des formes suivantes

K := {v ∈ Rn ; Cv = f }, ou (6.2a)
K := {v ∈ Rn ; Cv ≤ f }, (6.2b)

où la matrice C est p × n et f ∈ Rp .


Soit u ∈ K le minimum de la fonctionnelle J sur K. Une réecriture générale des
théorèmes 3.3.1-3.23 donne : il existe λ ∈ Rp tel que :

∇J(u) + C T λ = 0, (6.3a)
λ ∈ F, Cu ≤ f, (λ, Cu − f ) = 0, (6.3b)
(λ − µ, Cu − f ) ≥ 0 ∀µ ∈ F, (6.3c)

avec F = Rp dans le cas où K est donné par (6.2a), et F = (R+ )p dans le cas (6.2b).

Proposition 6.2.1. Soit λ ∈ Rp tel que (u, λ) vérifie (6.3). Pour tout ρ > 0, on :

λ = PF (λ + ρ(Cu − f )), (6.4)

PF étant la projection de Rp sur le convexe fermé F (et rappelons que F = Rp dans le


cas de contraintes d’égalité, et F := (R+ )p dans le cas de contraintes d’inégalité).

Preuve : Comme le multiplicateur λ vérifie (6.3c), alors on a aussi

(λ − (λ + ρ(Cu − f )), λ − µ) ≤ 0 ∀µ ∈ F, ∀ρ > 0.

Ce qui d’après (6.1) signifie que λ = PF (λ + ρ(Cu − f )), pour tout ρ > 0.

Tenant compte de la proposition précédente, nous proposons l’algorithme suivant,


appelé Algorithme d’Uzawa
1. On choisit : une condition initiale λ0 ∈ Rp , un pas ρ > 0 et une précision η > 0.
On calcule u0 solution de Au0 = b − C T λ0 .
2. Tant que kλk − λk−1 k > η ou kuk − uk−1k > η, on définit (uk+1, λk+1) par
 
λk+1 = PF λk + ρ(Cuk − f ) ;
uk+1 est solution de Auk+1 = b − C T λk+1 .
Théorème 6.2.1. Supposons que A est symétrique définie positive. Si 0 < ρ <
2λmin (A)
, alors quel que soit l’élément initial λ0 ∈ Rp , le suite (uk ) définie par l’algo-
kCk2
rithme d’Uzawa converge vers le minimum u.
Optimisation quadratique 81

Preuve : Grâce à des calculs directs et au lemme 6.1.1, on obtient :


   
kλk+1 − λk22 = kPF λk + ρ(Cuk − f ) − PF λ + ρ(Cu − f ) k22
≤ kλk − λ + ρC(uk − u)k22

≤ kλk − λk22 + ρ2 kCk2 kuk − uk22 + 2ρ C T (λk − λ), uk − u

≤ kλk − λk22 + ρ2 kCk2 kuk − uk22 − 2ρ A(uk − u), uk − u
 
≤ kλk − λk22 + ρ2 kCk2 − 2ρλmin(A) kuk − uk22 .

2λmin (A)
Si 0 < ρ < kCk2
, en posant : β = 2ρλmin (A) − ρ2 kCk2 , il vient que β > 0 et

1 
kλk − λk22 − kλk+1 − λk22 .
kuk − uk22 ≤
β
 
Ce qui prouve que la suite kλk − λk22 est décroissante et minorée (évidement par
k≥0
0). Par conséquent, kuk − uk22 −−−−→ 0.
k→+∞

6.3 Cas de contraintes d’égalité uniquement


On se place maintenant dans le cas où K := {v ∈ Rn ; Cv = f }, avec C une matrice
de Rp×n de rang p. Le système de minimalité revient à résoudre le système linéaire, de
solution (u, λ) appartenant à Rn × Rp :

Au + C T λ = b
. (6.5)
Cu = f

Nous allons étudier deux méthodes purement algébriques permettant de résoudre (6.5),
avant de revenir à une technique de minimisation.

6.3.1 Elimination des contraintes


Dans le système (6.5), l’inconnue qui nous intéresse est u.

La première technique d’elimination des contraintes consiste à écrire λ : u =


A−1 (b − C T λ), ce qui implique la relation CA−1 b − CA−1 C T λ = f . En d’autres termes,
λ est la solution de

Trouver λ ∈ Rp tel que CA−1 C T λ = CA−1 b − f. (6.6)

Si p est très petit devant n, la difficulté est la formation de la matrice CA−1 C T de Rp×p ,
et du second membre CA−1 b appartenant à Rp . En effet, une fois ceux-ci connus, il est
82 Ciarlet & Zidani

raisonnable de supposer que la résolution de (6.6) sera aisée. Qui plus est, CA−1 C T est
symétrique définie-positive. A partir de là, u est la solution de

Trouver u ∈ Rn tel que Au = b − C T λ, (6.7)

et l’on en revient aux méthodes de la section précédente. Pour ce qui est de la formation
de CA−1 C T , notons que l’on peut écrire

CA−1 C T = CC ′ , avec C ′ = A−1 C T ∈ Rn×p .

C ′ est caractérisée par

Trouver C ′ ∈ Rn×p telle que AC ′ = C T . (6.8)

Ce système linéaire peut être reformulé colonne par colonne. En effet, si on note (c′i )1≤i≤p
les colonnes de C ′ et (ci )1≤i≤p celles de C T , (6.8) est équivalent à

Pour i = 1, · · · , p, trouver c′i ∈ Rn tel que Ac′i = ci . (6.9)

L’obtention de CA−1 C T est alors immédiate, par simple multiplication. Pour ce qui est
du calcul de A−1 b, on procède de façon similaire, en résolvant cette fois

Trouver cp+1 ∈ Rn tel que Acp+1 = b, (6.10)

puis en construisant CA−1 b, résultat de la multiplication de C par cp+1 .

De cette façon, on a démontré la

Proposition 6.3.1. On peut ramener le calcul de (u, λ), solution de (6.5), à la résolution
de p + 2 problèmes de minimiation sans contraintes, de type (5.1).

Preuve : Il suffit de résoudre (6.9)-(6.10), soit p + 1 problèmes, puis (6.6), dont le


coût est supposé ”faible”, et enfin (6.7).

Cette méthode présente l’avantage d’être complètement compatible avec les al-
gorithmes proposés à la section 5, puisque l’on a uniquement des problèmes sans
contraintes à résoudre. En outre, elle est particulièrement indiquée si p est petit...
Si p est grand, la même technique n’en reste pas moins valable, sachant que l’étape
(6.6) peut devenir prépondérante, et qu’il faut la traiter avec attention.
Optimisation quadratique 83

Seconde technique d’elimination de la contrainte. Rappelons le contexte sous


un angle un peu différent, c’est-à-dire sans multiplicateur de Lagrange. Le but est de
minimiser J sur K, qui est défini par {v ∈ Rn : Cv = f }. C est une matrice de Rp×n
de rang p. On suppose que l’on peut l’écrire par blocs sous la forme

C= C11 C12 , C11 ∈ Rp×p , rg(C11) = p.

(Eventuellement après un réarrangement des colonnes.)


 
v1
Cv = f ⇐⇒ C11 v1 + C12 v2 = f, avec v = , v1 ∈ Rp , v2 ∈ Rn−p .
v2
D’où v1 = C11 −1 (f − C12 v2 ) = g − Cv2 , avec g = C11 −1 f, C = C11 −1 C12 .

˜ 2 ), pour tout v ∈ K.
Nous allons maintenant reécrire J(v) sous la forme J(v

Le terme linéaire :

−(b, v) = −(b1 , v1 )1 − (b2 , v2 )2 = −(b1 , g)1 + (b1 , Cv2 )1 − (b2 , v2 )2 .


= αlin + (C T b1 − b2 , v2 )2 , où αlin = −(b1 , g)1 est une constante. (6.11)

Le terme quadratique : (les deux blocs diagonaux, A11 et A22 , sont nécessairement
symétriques)
    
A11 A12 v1 A11 v1 + A12 v2
Av = = .
AT12 A22 v2 AT12 v1 + A22 v2

On en déduit que :

1 1 1
(Av, v) = (A11 v1 + A12 v2 , v1 )1 + (AT12 v1 + A22 v2 , v2 )2
2 2 2
1 T 1
= (A11 v1 , v1 )1 + (A12 v1 , v2 )2 + (A22 v2 , v2 )2 .
2 2
Examinons le premier terme :

1 1
(A11 v1 , v1 )1 = (A11 g − A11 Cv2 , g − Cv2 )1
2 2
1 1
= αquad − (C T A11 g, v2 )2 + (C T A11 Cv2 , v2 )2 , αquad = (A11 g, g)1.
2 2
Le second terme :

(AT12 v1 , v2 )2 = (AT12 g − AT12 Cv2 , v2 )2 = (AT12 g, v2)2 − (AT12 Cv2 , v2 )2 .


84 Ciarlet & Zidani

En regroupant le tout, on trouve, avec α = αlin + αquad ,


1
J(v) = ({A22 + C T A11 C − 2AT12 C}v2 , v2 )2 − (b2 + C T A11 g − C T b1 − AT12 g, v2)2 + α.
2
Notons que l’on peut symétriser le terme quadratique,

J(v) = J˜(v2 ), avec J(v
˜ 2 ) = 1 (Ã22 v2 , v2 )2 − (b̃2 , v2 )2 + α
2 

Ã22 = A22 + C T A11 C − AT12 C − C T A12 , b̃2 = b2 + C T A11 g − C T b1 − AT12 g.
(6.12)
˜
On peut donc remplacer J(v) par J(v2 ), pour tout v ∈ K. Réciproquement, à chaque
v2 ∈ Rn−p , on peut associer un unique v ⋆ ∈ K, égal à
 
⋆ g − Cv2 ˜ 2 ) = J(v ⋆ ).
v = ∈ K, et l’on a J(v
v2

Proposition 6.3.2. Résoudre le problème avec contraintes est équivalent à

˜ 2 ) = min J˜(v2 ).
Trouver u2 ∈ Rn−p tel que J(u (6.13)
n−p v2 ∈R

De plus, la matrice Ã22 intervenant dans la fonctionnelle J˜ est symétrique définie-


positive, ce qui permet d’utiliser les techniques énoncées auparavant.

Preuve : Il reste à vérifier que Ã22 est bien symétrique définie-positive. Bien sûr,
Ã22 est symétrique par construction. Par ailleurs,

(Ã22 v2 , v2 )2 = (A22 v2 , v2 )2 + (A11 Cv2 , Cv2 )1 − (AT12 Cv2 , v2 )2 − (A12 v2 , Cv2 )1


= (−A11 Cv2 + A12 v2 , −Cv2 )1 + (−AT12 Cv2 + A22 v2 , v2 )2
    
A11 A12 −Cv2 −Cv2
= ( , )
AT12 A22 v2 v2
   
−Cv2 −Cv2
= (A , ).
v2 v2
 
−Cv2
Le produit scalaire est strictement positif, sauf si = 0, i. e. v2 = 0. Ã22 est
v2
bien symétrique définie-positive.

Par rapport à la première technique d’éliminations de contraintes, notons que cette


méthode est très attractive, puisqu’elle ne requiert pas p + 2 résolutions de problèmes
sans contraintes de matrice A... Par contre, deux inconvénients potentiels sont à prendre
en considération
• Il faut extraire le bloc C11 de rang p de la matrice C.
Optimisation quadratique 85

• La structure interne de Ã22 est complètement différente de celle de A.


En particulier, même si A est une matrice creuse, Ã22 peut être une matrice pleine. Le
coût d’un produit matrice vecteur (voir l’exemple de la section 5.1) est alors bien plus
important lorsque l’on résout (6.13). Ce type de considération doit absolument être
examiné, pour évaluer les mérites de la mise en œuvre numérique.

6.3.2 Techniques de pénalisation


Nous allons encore une fois éliminer la contrainte v ∈ K ; pour cela, nous introdui-
sons un paramètre ε > 0, la fonctionnelle

1
Jε (v) = J(v) + kCv − f k2 ,
ε
ainsi que le problème pénalisé

˜ ε ) = min J˜ε (v).


Trouver uε ∈ Rn tel que J(u (6.14)
n v∈R

Dans la suite, on appelle ψ la fonctionnelle qui à v associe kCv − f k2 .


On remarque que ψ est à valeurs dans R+ , convexe, continue et telle que, pour tout
élément v de K, ψ(v) = 0. En particulier, ψ(u) = 0, ce qui signifie que, pour tout ε,
Jε (u) = J(u).

Proposition 6.3.3. Le problème (6.14) admet une solution unique, pour tout ε > 0.

Preuve : Existence d’une solution. Jε est continue. Montrons qu’elle est de plus
infinie à l’infini. On écrit
1 1
Jε (v) = J(v) + ψ(v) ≥ J(v) = (Av, v) − (b, v)
ε 2
λmin
≥ kvk2 − kbk kvk,
2
quantité qui tend vers l’infini lorsque kvk → +∞.

Unicité de la solution. J étant strictement convexe (cf. exercice 3.3.1), et 1ε ψ


étant convexe, leur somme Jε est strictement convexe. En conséquence, le point de
minimum est unique, d’après le théorème 2.3.1.

Nous allons maintenant prouver que la suite (uε )ε possède une propriété très intéressante...

Proposition 6.3.4. La suite (uε )ε converge vers u, lorsque ε tend vers 0+ .


86 Ciarlet & Zidani

Preuve : Etape 1. Par définition de ψ, J(uε ) ≤ J(uε ) + 1ε ψ(uε ) = Jε (uε ) ; or, uε


réalise le minimum de Jε sur Rn , donc Jε (uε ) ≤ Jε (u). Enfin, d’après ce que l’on a
remarqué plus haut, Jε (u) = J(u). Ainsi

∀ε > 0, J(uε ) ≤ J(u). (6.15)

La fonctionnelle J étant infinie à l’infini, nous en déduisons que (uε )ε est bornée.

Etape 2. Comme nous nous trouvons dans Rn , il existe une sous-suite extraite
(uε′ )ε′ qui converge. Appelons u′ sa limite. D’après la continuité de J et la relation
(6.15), qui s’applique notamment pour tous les termes de la sous-suite :

J(u′ ) = ′lim J(uε′ ) ≤ J(u).


ε →0+

Par ailleurs,

0 ≤ ψ(uε′ ) = ε′ {Jε′ (uε′ ) − J(uε′ )} ≤ ε′ {Jε′ (u) − J(uε′ )} = ε′{J(u) − J(uε′ )}.

On vient de voir que (J(uε′ ))ε′ admet une limite (égale à J(u′ )), ce qui entraı̂ne que

lim (ε′ {J(u) − J(uε′ )}) = 0, et donc ′lim ψ(uε′ ) = 0.


ε′ →0+ ε →0+

Comme ψ est continue : ψ(u′ ) = 0, i. e. u′ ∈ K. Bien sûr, u réalise le minimum de J


sur K, ce qui induit J(u) ≤ J(u′ ). On en arrive finalement à l’égalité J(u) = J(u′ ), et
comme J est strictement convexe, u = u′.

Etape 3. Pour finir, supposons que (uε )ε ne converge pas vers u. Ceci signifie qu’il
existe une sous-suite extraite, toujours notée (uε′ )ε′ , et η > 0 tels que kuε′ − uk ≥ η,
pour tout ε′ .
On reprend le raisonnement de l’étape 2 : (uε′ )ε′ étant bornée, on peut en extraire une
sous-suite, (uε′′ )ε′′ , qui converge. En poursuivant le même raisonnement (n’oublions pas
que, par construction, (uε′′ )ε′′ est également une sous-suite extraite de (uε )ε !), on prouve
que (uε′′ )ε′′ converge nécessairement vers u. Ceci contredit le fait que kuε′′ − uk ≥ η,
pour tout ε′′ .

En conclusion, toute la suite (uε )ε converge vers u.

Pour cette méthode, le problème central est celui du choix d’une suite de valeurs de
ε, qui permette d’obtenir rapidement une bonne approximation de u. Par rapidement,
on entend sans avoir à résoudre ”beaucoup” de problèmes sans contraintes du type
Optimisation quadratique 87

(6.14).
Notons que Jε peut être développée sous la forme :
1 1
Jε (v) = (Av, v) − (b, v) + {(C T Cv, v) − 2(C T f, v) + kf k2 }
2 ε
1 2 T 2 1
= ([A + C C]v, v) − (b + C T f, v) + kf k2 .
2 ε ε ε
2 T
La matrice A + C C est symétrique définie-positive. Cependant, comme pour la
ε
seconde méthode d’élimination du paragraphe 6.3.1, sa structure interne peut être très
différente de celle de A.

6.3.3 Extensions
La première technique d’élimination peut être appliquée au problème plus général
    
n1 n2 A11 A12 u1 b1
Trouver (u1 , u2) ∈ R × R tel que = ,
A21 A22 u2 b2
sous réserve que ce problème admette une unique solution. L’équation (6.6) est rem-
placée par
Trouver u2 ∈ Rn2 tel que (A22 − A21 A11 −1 A12 )u2 = b2 − A21 A11 −1 b1 . (6.16)
S = (A22 − A21 A11 −1 A12 ) est une matrice de Rn2 ×n2 , appelée complément de Schur
[3]. Ce type de méthode est très utilisé en conjonction avec une mise en œuvre sur
machine parallèle (constituée de plusieurs processeurs), l’extraction de la composante
u2 permettant de construire des problèmes de variable u1 qui sont parallélisables (cf.
[14], [12]).

Il est également possible d’appliquer la méthode de pénalisation dans un cadre


beaucoup plus général... On considère une fonctionnelle J de Rn dans R, α-convexe
et différentiable, et K une partie convexe, fermée et non vide de Rn , qui représente
l’ensemble des choix possibles. Comme dans le cas de la fonctionnelle quadratique,
supposons que l’on dispose d’une fonctionnelle ψ de Rn dans R+ , telle que
ψ soit différentiable et convexe ; ψ(v) = 0, pour tout élément v de K.
Sous ces hypothèses, on peut approcher la solution u du problème
Trouver u ∈ K, tel que J(u) = min J(v) (6.17)
v∈K

en résolvant une suite de problèmes pénalisés : pour ε > 0, on définit


1
Jε (v) = J(v) + ψ(v), et l’on résout
ε
Trouver uε ∈ Rn , tel que Jε (uε ) = minn Jε (v). (6.18)
v∈R
88 Ciarlet & Zidani

Exercice 6.3.1. 1. Rappeler pourquoi le problème (6.17) admet une solution et une
seule.
2. Montrer que le problème (6.18), pour ε fixé, admet une solution unique.
3. Vérifier que limε→0+ uε = u.

Notons pour finir que l’on peut affaiblir l’hypothèse de régularité sur J et ψ, en les
supposant simplement continues (cf. [4]).
Annexe A

Quelques rappels de calcul


différentiel

Dans ce chapitre, nous rappelons les fondements du calcul différentiel, en adoptant


une approche relativement abstraite, qui ne repose que marginalement sur la notion de
dérivée partielle.

A.1 Différentiabilité
Soient E et F deux espaces vectoriels normés sur R, on note Lc (E, F) l’ensemble des
applications linéaires et continues de E dans F.
♠ Lorsque la dimension de E est finie, toutes les applications linéaires sont continues.
C’est faux lorsque la dimension de E infinie !
Dans la suite, on notera Ω un ouvert de E contenant u, et f une application de Ω ⊂ E
dans F ; on dit que f est continue en un point u ∈ Ω si

∀h ∈ E f (u + h) = f (u) + ε0 (h), (A.1)

où ε0 est une application de E dans F telle que

kε0(h)kF → 0 quand khkE → 0.

La notation ∀h ∈ E sous-entend : pour tout h de E tel que u + h appartienne à Ω.


(En termes plus mathématiques, ceci signifie

∀ǫ > 0, ∃η > 0, ∀v ∈ Ω, kv − ukE < η =⇒ kf (v) − f (u)kF < ǫ.)

L’expression (A.1) est un développement limité d’ordre 0 au voisinage de u.

89
90 Ciarlet & Zidani

Remarque A.1.1. (préliminaire) Certaines des définitions de ce chapitre sont données


dans le contexte général d’espaces vectoriels normés ; on peut pour simplifier se limiter
au cas E = Rn , F = Rp , où n ≥ 1 et p ≥ 1 sont deux entiers naturels.

Définition A.1.1. On dit que l’application f est différentiable en un point u ∈ E


s’il existe g appartenant à Lc (E, F), qui vérifie

∀h ∈ E f (u + h) = f (u) + g(h) + khk ε(h),

où ε est une application de E dans F telle que

kε(h)kF → 0 quand khkE → 0.

L’application linéaire continue g est notée df (u), et on l’appelle différentielle de f


en u. On note l’action de df (u) sur h

df (u)·h.

L’expression ci-dessus correspond à un développement limité d’ordre 1 au voisi-


nage de u, de la forme

∀h ∈ E f (u + h) = f (u) + df (u)·h + khk ε(h). (A.2)

Remarque A.1.2. Le développement (A.2) peut se reécrire sous la forme :

f (u + h) = f (u) + df (u)·h + o(h),


ko(h)kF
avec la propriété → 0 lorsque khkE → 0.
khkE
Proposition A.1.1. Si la différentielle de f en u existe, elle est unique.

Preuve : L’unicité de la différentielle en u est obtenue de la manière élémentaire


suivante. Soient deux applications linéaires continues df1 (u) et df2(u) satisfaisant la
relation (A.2). Alors, pour tout vecteur non nul v, et pour tout réel λ strictement
positif suffisamment petit pour que u + λv appartienne à Ω, on a l’égalité

df1 (u)·(λv) − df2 (u)·(λv) = λ(ε1 (λv) − ε2 (λv)).

Par linéarité de df1 (u) et df2 (u), on arrive à

df1 (u)·v − df2(u)·v = (ε1 (λv) − ε2 (λv)).

Si on fait tendre λ vers 0, on obtient que l’application linéaire df1 (u) − df2 (u) est nulle,
soit finalement df1 (u) = df2 (u).
Optimisation quadratique 91

Exercice A.1.1. 1. Soit f : R → R dérivable. Montrer que f est différentiable sur


R et calculer df (x), pour x ∈ R.
2. Soit f : Rn → Rp , une application affine, f (u) = Au + b. Montrer que f est
différentiable sur Rn et calculer df (u), pour u ∈ Rn .
3. Soit f : Rn×n → Rn×n , f (A) = A2 . Montrer que f est différentiable sur Rn×n et
calculer df (A), pour A ∈ Rn×n .
4. Soit Ωn l’ensemble des matrices inversibles de Rn×n , et f : Ωn → Ωn , définie par
f (A) = A−1 . Pourquoi Ωn est-il ouvert ? Montrer que f est différentiable sur Ωn
et vérifier que, pour A ∈ Ωn ,

df (A) · H = −A−1 H A−1 .

5. Soit f : Rn → R, f (x) = kxk. Montrer que f n’est pas différentiable en x = 0,


mais qu’elle l’est sur Rn \ {0}, et calculer df (x) pour x 6= 0.

Bien sûr, en toute généralité, toute application différentiable en un point est conti-
nue en ce point, et on retrouve la formule de limite de taux de variation ; c’est l’objet
de la

Proposition A.1.2. Si l’application f de E dans F est différentiable en u, elle est


continue en ce point et

f (u + θh) − f (u)
∀h ∈ E df (u)·h = lim+ . (A.3)
θ→0 θ
Preuve : A partir de la définition de la différentiabilité, en utilisant notamment le
fait que la différentielle en u est continue, on tire

kf (u + h) − f (u)kF ≤ kdf (u)k khkE + khkE kε(h)kF

et ainsi
kf (u + h) − f (u)kF → 0 quand khkE → 0.
De plus par linéarité de l’application df (u),

∀h ∈ E, ∀θ > 0 f (u + θh) = f (u) + θdf (u)·h + θ khk ε(θh)

et finalement
f (u + θh) − f (u)
∀h ∈ E df (u)·h = lim+ .
θ→0 θ
92 Ciarlet & Zidani

Définition A.1.2. On dit que l’application f est différentiable dans Ω, si elle est
différentiable en tout point u ∈ Ω. Dans ce cas, on peut définir une application df qui
à tout point u ∈ Ω associe une application linéaire et continue df (u) de E dans F ; on
l’appelle différentielle de f dans Ω. Si la différentielle df est une application continue
de E dans Lc (E, F), on dit que f est une application continûment différentiable,
ou encore de classe C 1

La définition A.1.1 introduit la notion de différentielle au sens de Fréchet. On peut


également définir la différentielle de f en u, h 7→ df (u)·h, au sens de Gateaux. On
parle souvent de dérivée directionnelle.

Définition A.1.3. On dit que l’application f , définie sur un voisinage de u, est


différentiable au sens de Gateaux s’il existe df (u) de Lc (E, F) telle que

f (u + θh) − f (u)
∀h ∈ E df (u)·h = lim+ .
θ→0 θ

On peut aussi écrire la définition équivalente, pour chaque h dans E

f (u + θ h) = f (u) + θ df (u)·h + o(θ), θ ≥ 0, (A.4)

ko(θ)kF
avec la propriété → 0 lorsque θ → 0+ .
θ
Proposition A.1.3. Si E = R, Fréchet-différentiabilité et Gateaux-différentiabilité
coı̈ncident.

Supposons maintenant que dim(E) ≥ 2. La différence entre (A.2) écrite avec θ h au


lieu de h et (A.4) se trouve dans l’expression du reste
θ khkε(θ h) pour la Fréchet-différentiabilité ;
o(θ) pour la Gateaux-différentiabilité.
En d’autres termes, elle est uniforme en h pour la première, ce qui n’est pas garanti pour
la seconde. De manière plus imagée, la Gateaux-différentiabilité est la différentiabilité
le long de toute droite passant par u, alors que la Fréchet-différentiabilité correspond
à la différentiabilité le long de toute courbe passant par u. De façon générale, la pro-
position A.1.2 montre qu’une application différentiable au sens de Fréchet est tou-
jours différentiable au sens de Gateaux (et les différentielles sont égales !), alors que la
réciproque est fausse. D’ailleurs, la Gateaux-différentiabilité n’implique même pas la
continuité, comme le montre le contre-exemple qui suit.
Optimisation quadratique 93

Exercice A.1.2. On se place dans E = R2 . Soient q ≥ p > 5 deux réels. Montrer que
la fonctionnelle f définie par

 xp
si (x, y) 6= (0, 0)
f (x, y) = (y − x2 )2 + xq .
 0 si (x, y) = (0, 0)

est différentiable au point (0, 0) au sens de Gateaux, mais qu’elle n’est pas continue en
ce point.

Exercice A.1.3. Soit encore f : Rn → R, f (x) = kxk. Vérifier que f n’est pas
Gateaux-differentiable en x = 0.

Plaçons nous maintenant dans le cas, important en pratique, où E = Rn et F = R,


c’est-à-dire que f est à valeurs réelles. On munit Rn d’un produit scalaire, noté (·, ·)
dans la suite. Si f est différentiable en u, sa différentielle df (u) est une forme linéaire de
Rn dans R. A cette forme, on peut associer un unique vecteur de Rn , appelé gradient
de f en u, et noté ∇f (u), tel que

∀h ∈ E df (u)·h = (∇f (u), h). (A.5)

Dans ce cas particulier, la formule (A.2) prend la forme

∀h ∈ E f (u + h) = f (u) + (∇f (u), h) + khk ε(h). (A.6)

Par exemple, avec J définie en (3.19), qu’obtient-on comme expressions de dJ(u)·h et


∇J(u) pour u et h éléments de Rn ? L’expression (A.4) nous fournit la réponse ; en
effet, on a

1
J(u + h) − J(u) = (Au − b, h) + (Ah, h).
2
D’après l’inégalité de Cauchy-Schwarz et par définition de la norme matricielle induite
par la norme euclidienne, on trouve

|(Ah, h)| ≤ kAhk khk ≤ kAk khk2 ;

ainsi, par identification, on trouve que


1 (Ah, h) 1
ε(h) = , et |ε(h)| ≤ kAk khk → 0 quand khk → 0.
2 khk 2
On infère immédiatement que

dJ(u)·h = (Au − b, h), et ∇J(u) = Au − b.


94 Ciarlet & Zidani

♠ Lorsque la matrice A n’est pas symétrique, les expressions ci-dessus sont fausses !
En effet, on doit remplacer A par 21 (A + AT ).

Le gradient dépend seulement du produit scalaire. En particulier, il est indépendant


de la base de l’espace euclidien Rn . Supposons maintenant que Rn soit muni d’une
base orthonormale (ek )1≤k≤n , et soit (xk )1≤k≤n le système de coordonnées associé :
P
u = nk=1 xk ek .
Dans la base (ek )1≤k≤n , le vecteur ∇f (u) a pour composantes
 
∂1 f (u)
 ∂2 f (u) 
 
∇f (u) =  ..  . (A.7)
 . 
∂n f (u)

∂f
On note aussi (u) ses composantes ; ∂k f (u) est appelée k ème dérivée partielle de
∂xk
f en u.

Remarque A.1.3. pourquoi parle-t-on de dérivée partielle ? La raison en est simple.


Si on choisit h = θek dans (A.6), on arrive à

∂f
f (u + θek ) = f (u) + θ(∇f (u), ek ) + |θ| ε(θek ) = f (u) + θ (u) + |θ| ε(θek ).
∂xk

Par ailleurs, modulo un petit abus de notations, on peut réécrire f (u) sous la forme
∂f
f (x1 , · · · , xn ). En d’autres termes, (u) représente la dérivée de f en u dans la
∂xk
direction ek , ce qui correspond finalement à la dérivée de l’application

θ 7→ f (x1 , · · · , xk−1 , xk + θ, xk+1 , · · · , xn ) en θ = 0.

Exercice A.1.4. Vérifier que si f est différentiable en u, elle admet une dérivée par-
tielle par rapport à chaque variable en ce point. Réciproquement, montrer que, si f
admet des dérivées partielles sur Ω qui sont continues en u, alors f est différentiable
en u et que, de plus, elle est de classe C 1 sur un ouvert contenant u.

Dans le cas où F = Rp , f (u) correspond à un vecteur à p composantes


 
f1 (u)
f2 (u) p
X
fl (u)e′l ,
 
f (u) =  ..  , ou f (u) =
 .  l=1
fp (u)
Optimisation quadratique 95

dès lors que l’on a choisi une base (e′l )1≤l≤p de F. On peut reprendre la construction
ci-dessus, et différencier chaque composante de f . La différentielle de f en u (lorsqu’elle
existe) peut alors être écrite composante par composante

df1 (u)·h = (∇f1 (u), h) = ∂1 f1 (u)h1 + ∂2 f1 (u)h2 + . . . + ∂n f1 (u)hn


df2 (u)·h = (∇f2 (u), h) = ∂1 f2 (u)h1 + ∂2 f2 (u)h2 + . . . + ∂n f2 (u)hn
.. ..
. = .
dfp (u)·h = (∇fp (u), h) = ∂1 fp (u)h1 + ∂2 fp (u)h2 + . . . + ∂n fp (u)hn .

La matrice associée à df (u) dans les bases (ek )1≤k≤n et (e′l )1≤l≤p est appelée matrice
jacobienne de f en u, et on la note [df (u)] :
 
∂1 f1 (u) ∂2 f1 (u) . . . ∂n f1 (u)
∂1 f2 (u) ∂2 f2 (u) . . . ∂n f2 (u)
 
[df (u)] =  .. .. .. ..  .
 . . . . 
∂1 fp (u) ∂2 fp (u) . . . ∂n fp (u)

Lorsque n = p, son déterminant est appelé jacobien de f en u, égal à



∂1 f1 (u) ∂2 f1 (u) . . . ∂n f1 (u)

∂1 f2 (u) ∂2 f2 (u) . . . ∂n f2 (u)

Jf (u) = .. .. .. .. .
. . . .

∂1 fn (u) ∂2 fn (u) . . . ∂n fn (u)

Remarque A.1.4. Revenons un instant au cas F = R, c’est-à-dire p = 1.



[df (u)] est un vecteur ligne, égal à ∂1 f (u) ∂2 f (u) . . . ∂n f (u) . Si on compare cette
expression à celle du vecteur colonne ∇f (u), i.e. (A.7), on en déduit que dans ce cas

∇f (u) = [df (u)]T.

A.2 Propriétés de la différentielle


Nous démontrons quelques résultats simples, concernant l’addition et la composition
d’applications différentiables.

Proposition A.2.1. Soient f et g deux applications de E dans F Fréchet-différentiables


en u ∈ E, alors l’application f + g est Fréchet-différentiable en u et d(f + g)(u) =
df (u) + dg(u).
96 Ciarlet & Zidani

Preuve : Des relations

f (u + h) = f (u) + df (u)·h + khk εf (h)

g(u + h) = g(u) + dg(u)·h + khk εg (h)


on tire par addition

(f + g)(u + h) = (f + g)(u) + df (u)·h + dg(u)·h + khk( εf (h) + εg (h)).

Comme
k(εf (h) + εg (h))kF → 0 quand khkE → 0
on voit que l’application linéaire d(f + g)(u) définie par

d(f + g)(u)·h = df (u)·h + dg(u)·h

correspond à la définition de la différentiabilité en u de f + g.

Remarque A.2.1. De la même façon, on peut prouver que la somme de deux appli-
cations Gateaux-différentiables en un point est Gateaux-différentiable.

Proposition A.2.2. Soit f une application de E dans F Fréchet-différentiable en


u ∈ E, et soit g une application de F dans G Fréchet-différentiable en f (u) ∈ F, alors
l’application g ◦ f est Fréchet-différentiable en u et

d(g ◦ f )(u) = dg(f (u)) ◦ df (u).

Preuve : Des relations

f (u + h) = f (u) + df (u)·h + khk εf (h)


g(f (u) + h′ ) = g(f (u)) + dg(f (u))·h′ + kh′ k εg (h′ ),

on tire

g ◦ f (u + h) = g(f (u + h))
= g (f (u) + df (u)·h + khk εf (h))
= g(f (u) + h′ ) avec h′ = df (u)·h + khk εf (h)
= g(f (u)) + dg(f (u))·h′ + kh′ k εg (h′ ).

Mais l’application différentielle dg(f (u)) est linéaire par définition, d’où

dg(f (u))·h′ = dg(f (u))·(df (u)·h) + khk dg(f (u))·(εf (h)).


Optimisation quadratique 97

On arrive alors à l’expression

g ◦ f (u + h) = g ◦ f (u) + {dg(f (u)) ◦ df (u)}·h + khk dg(f (u))·(εf (h)) + kh′ k εg (h′ ).

Il suffit maintenant de vérifier que les deux termes de droite peuvent être réécrits sous
la forme khk εg◦f (h), avec kεg◦f (h)k → 0 lorsque khk → 0. Or, on a d’une part

kdg(f (u))·(εf (h))k ≤ kdg(f (u))k kεf (h))k → 0 quand khk → 0 ;

et d’autre part
kh′ k ≤ kdf (u)k khk + khk kεf (h)k = o(1).
On obtient finalement

g ◦ f (u + h) = g ◦ f (u) + {dg(f (u)) ◦ df (u)}·h + khk εg◦f (h).

On a également le résultat suivant, si l’on affaiblit l’hypothèse sur f .

Proposition A.2.3. Soit f une application de E dans F Gateaux-différentiable en


u ∈ E, et soit g une application de F dans G Fréchet-différentiable en f (u) ∈ F, alors
l’application g ◦ f est Gateaux-différentiable en u et

d(g ◦ f )(u) = dg(f (u)) ◦ df (u).

Preuve : Soit h ∈ E donné : f (u + θ h) = f (u) + θ df (u)·h + o(θ).


kh′ k
Si on note h′θ = θ df (u)·h + o(θ), on a en particulier θ borné lorsque θ > 0 est petit.
θ
g ◦ f (u + θ h) − g ◦ f (u) = dg(f (u))·h′θ + kh′θ kεg (h′θ )
= θ{dg(f (u)) ◦ (df (u))}·h + dg(f (u))·o(θ) + kh′θ kεg (h′θ ), d’où
g ◦ f (u + θ h) − g ◦ f (u) kh′ k
= {dg(f (u)) ◦ (df (u))}·h + dg(f (u))·o(1) + θ εg (h′θ ).
θ θ
Comme kh′θ k → 0 lorsque θ → 0+ , on a kεg (h′θ )k → 0+ . Ainsi

g ◦ f (u + θ h) − g ◦ f (u)
lim+ = [dg(f (u)) ◦ df (u)]·h.
θ→0 θ

Remarque A.2.2. La Fréchet-différentiabilité de g est nécessaire pour pouvoir considérer


la différentielle de la composée. Le résultat sur la composition est faux, si l’on suppose
uniquement que g est Gateaux-différentiable, même si f est Fréchet-différentiable.
98 Ciarlet & Zidani

Posons v = f (u).
Lorsque E = Rn , F = Rp et G = Rm , et que chacun de ces trois espaces est muni
d’une base orthonormale, df (u) est représentée par une matrice de Rp×n , dg(v) par une
matrice de Rm×p et d(g ◦ f )(u) par une matrice de Rm×n . D’après la proposition A.2.2,
[d(g ◦ f )(u)] est égale au produit des matrices associées à dg(v) et df (u) :

[d(g ◦ f )(u)] = [dg(v)] [df (u)] (A.8)


  
∂1 g1 (v) ∂2 g1 (v) ... ∂p g1 (v) ∂1 f1 (u) ∂2 f1 (u) ... ∂n f1 (u)
 ∂1 g2 (v) ∂2 g2 (v) ... ∂p g2 (v)  ∂1 f2 (u) ∂2 f2 (u)
  ... ∂n f2 (u)
= 
 ...
,
... ... ...  ... ... ... ... 
∂1 gm (v) ∂2 gm (v) ... ∂p gm (v) ∂1 fp (u) ∂2 fp (u) ... ∂n fp (u)

que l’on écrit composante par composante


p
∂(g ◦ f )i X ∂gi ∂fk
(u) = (v) (u) 1 ≤ i ≤ m, 1 ≤ j ≤ n. (A.9)
∂xj ∂xk ∂xj
k=1

Dans le cas où la fonctionnelle g est à valeurs dans R (soit m = 1), on a vu que
[dg(v)] = ∇g(v)T (cf. remarque A.1.4) ; g ◦ f est également à valeurs dans R, et l’on a
de même [d(g ◦ f )(u)] = ∇(g ◦ f )(u)T . En transposant (A.8), on en déduit finalement
que
∇(g ◦ f )(u) = [df (u)]T∇g(v) avec v = f (u).

Exercice A.2.1. Soit toujours f : Rn → R, f (x) = kxk. En l’écrivant sous la forme


f = s◦g, s et g à déterminer, retrouver l’expression de df (x) et de son gradient, lorsque
x est non nul.

A.3 Différentielles d’ordre supérieur et formules


de Taylor
Dans cette section, on considère des applications différentiables au sens de Fréchet.

A.3.1 Différentielles d’ordre supérieur


On supose que f est différentiable en u. Si la différentielle df est elle-même différentiable
en u, on définit l’application d2 f (u), appelée différentielle seconde de l’applica-
tion f en u, et on dit que f est deux fois différentiable au point u ; d2 f (u) appar-
tient à Lc (E, Lc (E, F)). Si la différentielle d2 f est une application continue de E dans
Lc (E, Lc (E, F)), on dit que f est une application de classe C 2 .
Optimisation quadratique 99

Remarque A.3.1. (importante) Pour définir la différentielle seconde en u, on doit


supposer que f est différentiable sur un voisinage de u.

On peut identifier 1 Lc (E, Lc (E, F)) à Lc (E × E, F), et on écrit donc :

(d2 f (u)·h)·h′ = d2 f (u)·(h, h′), (h, h′ ) ∈ E × E.

Si h′ = h, on condense les notations en d2 f (u)·h2. On rappelle le

Théorème A.3.1. (de Schwarz) Soit f une application deux fois différentiable en u.
Alors d2 f (u) est une application (bilinéaire, continue et) symétrique de E × E dans F.

Replaçons-nous maintenant dans le cadre qui nous a permis de définir les dérivées
partielles (premières), c’est-à-dire E = Rn et F = R : d2 f (u) est une forme bilinéaire
et continue de Rn×n . D’après l’identification ci-dessus, il existe un unique élément
∇2 f (u) de L(Rn , Rn ) tel que

d2 f (u)·(h, h′) = (∇2 f (u)h, h′ ), h, h′ ∈ Rn .

Encore une fois, ∇2 f (u) est indépendant de la base choisie.


Munissons Rn d’une base orthonormée ; on peut construire, de la même façon que
∂2f
les dérivées partielles premières, les dérivées partielles secondes, notées (u)
∂xk ∂xl
ou ∂k ∂l f (u). La différentielle seconde d2 f (u) est formée des n × n dérivées partielles
∂l ∂k f (u) de chacune des composantes ∂k f (u) du gradient. On se trouve donc dans le cas
du calcul de la différentielle d’une application de Rn dans lui-même, et on représente
1. Si A ∈ Lc (E × E, F), ceci signifie que A est bilinéaire en (x, y), et qu’il existe C ∈ R tel que

sup kA(x, y)k ≤ C.


kxk=1,kyk=1

(i) Pour x ∈ E, soit Ax = A(x, ·) : Ax est linéaire et supkyk=1 kAx (y)k = supkyk=1 kA(x, y)k ≤ C kxk.
Ainsi, Ax ∈ Lc (E, F), et kAx k ≤ Cx , avec Cx = C kxk.
(ii) Soit maintenant à : x → Ax . Comme A est linéaire en sa première variable, à est un élément de
L(E, Lc (E, F)). Il reste à vérifier la continuité, or

sup kÃ(x)k ≤ sup Cx ≤ C.


kxk=1 kxk=1

Réciproquement, soit à ∈ Lc (E, Lc (E, F)). On définit A : (x, y) → Ã(x)(y). Par construction, A est
bilinéaire de E × E dans F et, par ailleurs, comme Ã(x) ∈ Lc (E, F) pour tout x,

sup kA(x, y)k = sup kÃ(x)(y)k ≤ sup kÃ(x)k ≤ kÃk.


kxk=1,kyk=1 kxk=1,kyk=1 kxk=1
100 Ciarlet & Zidani

d2 f (u) par la matrice Hessienne :


 
∂1 ∂1 f (u) ∂2 ∂1 f (u) . . . ∂n ∂1 f (u)
 ∂1 ∂2 f (u) ∂2 ∂2 f (u) . . . ∂n ∂2 f (u) 
[∇2 f (u)] = 
 ...
.
... ... ... 
∂1 ∂n f (u) ∂2 ∂n f (u) . . . ∂n ∂n f (u)
Pn
En particulier, on peut écrire : d2 f (u)·(h, h′) = (∇2 f (u)h, h′ ) = i,j=1 hi h′j ∂i ∂j f (u).
Enfin, on infère immédiatement du théorème de Schwarz le

Corollaire A.3.1. [∇2 f (u)] est une matrice symétrique.

Exercice A.3.1. Soit J0 définie en (3.19). Calculer d2 J0 (u)·(h, h′) et [∇2 J0 (u)] pour
u, h et h′ éléments de Rn .

Bien évidemment, il est loisible de définir, par récurrence, les différentielles d’ordre
supérieur (k ≥ 3), à partir de ce qui est écrit ci-dessus :

dk f (u)·(h, h′, · · · , h(k−1) ), h, h′ , · · · , h(k−1) ∈ E × E × · · · × E.

Lorsque tous les arguments sont identiques, on adopte la notation dk f (u)·hk . Si la


différentielle dk f est une application continue de E dans l’espace Lc (E × E × · · · × E, F),
on dit que f est une application de classe C k (Ω). Pour définir la différentielle d’ordre k
en u, on doit supposer que f est k − 1 fois différentiable sur un voisinage de u.

A.3.2 Formules de Taylor


Nous énonçons pour finir quelques résultats concernant les formules de Taylor des
applications différentiables.
On suppose que l’application f de E dans F est k fois différentiable en u, avec k ≥ 0
(si k = 0, ceci signifie simplement que f est continue en u). Pour h suffisamment petit,
c’est-à-dire tel que u + h ∈ Ω, on introduit le reste de rang k de f en u
k
X 1 m
rk (h) = f (u + h) − f (u) − d f (u)·hm.
m=1
m!

En d’autres termes, on écrit le développement limité d’ordre k au voisinage de u


k
X
f (u + h) = f (u) + dm f (u)·hm + rk (h). (A.10)
m=1
Optimisation quadratique 101

Remarque A.3.2. Supposons par exemple que E = Rn , F = R et k = 2 ; dans ce cas


particulier
1
f (u + h) = f (u) + (∇f (u), h) + (∇2 f (u)h, h) + r2 (h).
2
L’objet des résultats ci-dessous (pour lesquels on indique brièvement l’idée de la
démonstration, voir également [8]) est d’estimer le reste rk (h). Pour u et v deux
éléments de E, on appelle [u, v] le segment défini par

[u, v] = {w ∈ E : ∃λ ∈ [0, 1], w = λu + (1 − λ)v}.

On suppose ici que f est un peu plus régulière.

Théorème A.3.2. (inégalité de Taylor–Lagrange) Supposons que f soit de classe


C k sur Ω. On choisit h tel que le segment [u, u + h] soit inclus dans Ω. On suppose de
plus que f admet en tout point de ]u, u + h[ une différentielle d’ordre k + 1, dont la
norme est majorée par M uniformément sur ]u, u + h[. Alors, le reste rk vérifie

1
krk (h)k ≤ M khkk+1.
(k + 1)!

Preuve : On note γ(t) = u + t h le chemin défini le long du segment [u, v], pour
t ∈ [0, 1], ce qui permet d’introduire la fonction µ : t 7→ f ◦ γ(t).
On applique ensuite l’inégalité de Taylor-Lagrange pour µ, fonction d’une variable
réelle.

Lorsque k = 0, l’inégalité précédente est appelée inégalité des accroissements


finis.

Théorème A.3.3. (formule de Taylor–Mac Laurin) On se place dans le cas d’une


fonctionnelle à valeurs numériques, c’est-à-dire que F = R. Supposons que f soit de
classe C k sur Ω. On choisit h tel que le segment [u, u+h] soit inclus dans Ω. On suppose
de plus que f admet en tout point de ]u, u + h[ une différentielle d’ordre k + 1. Alors,
il existe λ ∈]0, 1[ tel que

1
rk (h) = dk+1 f (u + λh)·hk+1.
(k + 1)!

Preuve : On procède comme pour l’inégalité de Taylor-Lagrange.

Remarque A.3.3. Le théorème A.3.3 est faux si F 6= R.

Et, si f est encore un peu plus régulière, on obtient le


102 Ciarlet & Zidani

Théorème A.3.4. (du reste intégral) Supposons que f soit de classe C k+1 sur Ω.
On choisit h tel que le segment [u, u + h] soit inclus dans Ω. Alors, rk (h) est égal à
Z 1
(1 − θ)k k+1
rk (h) = d f (u + θh)·hk+1 dθ.
0 k!
Preuve : On procède comme pour l’inégalité de Taylor-Lagrange.

Pour finir, si l’on en revient à la régularité initiale, on a le

Théorème A.3.5. (de Taylor–Young) Soit f une application k fois différentiable


en u. Le reste rk vérifie
krk (h)k = o(khkk ).

Preuve : La démonstration est faite par récurrence sur k.


Lorsque k = 1, on retrouve la définition de la différentiabilité de f en u.
Par récurrence, on différencie le reste rk+1 , et on utilise la formule des accroissements
finis, en notant que la différentielle de h 7→ dm f (u)·hm est
si m = 1 : df (u).
si m > 1 : h 7→ m dm f (u)·hm−1.
Annexe B

Quelques rappels de l’algèbre


linéaire

Nous rappelons ici quelques résultats d’algèbre linéaire matricielle. Dans tout le
chapitre, on notera par Rn×n l’espace des matrices carrées réelles et par Cn×n celui des
matrices carrées complexes.

Définition B.0.1. Soit k · k une norme sur Rn . On lui associe une norme matricielle
sur Rn×n , dite norme induite de la norme vectorielle, définie par

kAk := sup kAxk.


x∈Rn ,kxk=1

De même, si k · k est une norme sur Cn , on définit la norme matricielle sur Cn×n
induite de la norme vectorielle par :

kAk := sup kAxk.


x∈Cn ,kxk=1

Tant qu’il n’y a pas de confusion, on note de la même façon les normes vectorielle
et matricielle induite.
Il est facile de vérifier le résultat suivant.

Proposition B.0.1. Soit k · k une norme matricielle induite sur Rn×n .


(i) Pour toute matrice A ∈ Rn×n , il existe xA ∈ Rn avec kxA k = 1 et kAk = kAxA k.
(ii) La norme de la matrice identité In vaut 1 : kIn k = 1.
(iii) Soient A, B ∈ Rn×n . On a : kABk ≤ kAk kBk. (Les mêmes propriétés restent
valables pour les normes sur Cn .)

Preuve : (i) Remarquons que la fonction x ∈ Rn 7−→ kAxk est continue et l’en-
semble S := {x ∈ Rn | kxk = 1} est un compact. Donc il existe un xA ∈ S tel que

103
104 Ciarlet & Zidani

kAk := supx∈S kAxk = kAxA k.


(ii) évident.
(iii) Conséquence directe de l’inégalité : kABxk ≤ kAk kBxk ≤ kAk kBk kxk.

♠ Il est possible de définir des normes matricielles qui ne sont pas induites. Prenons
Xn
2
par exemple le cas de la norme définie sur R n×n
par : kAk = A2ij . En effet, on a
i,j=1

kIn k = n, ce qui n’est pas possible pour une norme induite.

Dans la suite, nous allons nous interesser en particulier aux normes matricielles
sur Rn×n induites des normes vectorielles k · k2 et k · k∞ (définies pour x ∈ Rn , par
P
kxk22 = i x2i et kxk∞ = maxi |xi |).

Proposition B.0.2. La norme matricielle k · k2 vérifie :


p
kAk2 = kAT k2 = λmax (AT A) ∀A ∈ Rn×n .

De plus, si A ∈ Rn×n est symétrique, alors

kAk2 = |λmax (A)|.

(Ici on a désigné par λmax (B) la plus grande valeur propre de B.)

Preuve : Remarquons d’abord qu’on a :

kAk22 = sup kAxk2 = sup (AT Ax, x) = kAT Ak.


x∈Rn , kxk=1 x∈Rn , kxk=1

Comme la matrice AT A est symétrique réelle positive, elle est diagonalisable et ses
valeurs propres sont positives λmin (AT A) = λ1 (AT A) ≤ · · · ≤ λn (AT A) = λmax (AT A).
Et dans la base formée par les vecteurs propres, on vérifie que :

sup (AT Ax, x) = λmax (AT A).


x∈Rn , kxk=1

D’où kAk22 = λmax (AT A). De plus, si A est symétrique positive, alors AT A = A2 et
λmax (AT A) = λmax (A)2 avec λmax (A) ≥ 0. On en déduit que kAk2 = λmax (A).

Exercice B.0.2. Soit A une matrice symétrique inversible. Que vaut la norme kA−1 k2 ?

Proposition B.0.3. La norme matricielle k · k∞ vérifie :


X
kAk∞ = max |Aij | ∀A = (Aij )ij ∈ Rn×n .
i
j
Optimisation quadratique 105

Preuve : est laissé à titre d’exercice.

Définition B.0.2. Soit A une matrice dans Cn×n . On appelle rayon spectral de A, et
on note ρ(A), le maximum des modules des valeurs propres de A.
Le rayon spectral est défini pour toutes les matrices, même dans le cas où les valeurs
propres ne sont pas réelles. dans le cas particulier où A est symétrique, on a le résultat
suivant.
Lemme B.0.1. Si A est une matrice symétrique, alors ρ(A) = kAk2 .
Dans le cas général, on peut toujours trouver une norme induite ”comparable” au
rayon spectral. Plus précisement, on a : (résultat admis)
Proposition B.0.4. Soit k · k une norme induite sur Cn . On a :

ρ(A) ≤ kAk.

Réciproquement, pour toute matrice A et pour tout réel ε > 0, il existe une norme
matricielle induite k · k sur Cn×n (qui dépend de A et ε) telle que

kAk ≤ ρ(A) + ε.

On arrive donc à un résultat qui nous sera fort utile :


Proposition B.0.5. Soit A une matrice de Rn×n . Les trois assertions suivantes sont
équivalentes
1. limk→+∞ Ak = 0,
2. limk→+∞ Ak x = 0 pour tout x ∈ Rn ,
3. ρ(A) < 1.
Preuve : Pour tout x ∈ Rn , on sait que kAk xk ≤ kAk k kxk. On en déduit facilement
que (1)=⇒(2). D’autre part, on sait qu’il existe une valeur propre λ ∈ C et x 6= 0 tels
que Ax = λx et |λ| = ρ(A). Donc si (2) est vrai, alors λk x −−−−→ 0. Ceci implique que
k→+∞
|λ| < 1. On a donc prouvé que (2)=⇒(3).
Finalement, pour montrer que (3)=⇒(1), on utilise la proposition B.0.4. Ainsi, on prend
ε > 0 assez petit tel que ρ(A) + ε < 1. On sait alors qu’il existe une norme induite telle
que kAk < 1, et on a :

kAk k ≤ kAkk −→ 0 quand k → +∞,

ce qui montre (1).


106 Ciarlet & Zidani
Bibliographie

[1] A. Björck, Solutions of equations in Rn (Part I) : Least squares methods, Handbook


of numerical analysis, Volume I, éditeurs P. G. Ciarlet et J.–L. Lions, North Holland,
Amsterdam (1990).
[2] A.-S. Bonnet Ben Dhia, M. Lenoir, Outils élémentaires d’analyse pour les équations
aux dérivées partielles, Cours MA 102, ENSTA.
[3] P. Ciarlet, P. Joly, Introduction au calcul scientifique, Cours MA 103, ENSTA.
[4] P. G. Ciarlet, Introduction à l’analyse numérique matricielle et à l’optimisation, Mas-
son, Paris (1982).
[5] V. Faber, T. Manteuffel, Necessary and sufficient conditions for the existence of a
conjugate gradient method, SIAM Journal on Numerical Analysis, 21, 352-362 (1984).
[6] J.-C. Gilbert, Optimisation différentiable. Théorie et algorithmes, Cours AO 201,
ENSTA.
[7] G. H. Golub, G. Meurant, Résolution numérique des grands systèmes linéaires,
Eyrolles, Paris (1983).
[8] F. Jean, Linéarisation et stabilité des équations différentielles, Cours AO 102, ENSTA.
[9] G. Meurant, Computer solution of large linear systems, Studies in Mathematics and
its Applications, 28, North Holland, Amsterdam (1999).
[10] J. Pérez, Gravitation classique, Enseignement thématique d’Astrophysique MAT 40,
ENSTA.
[11] E. Polak, G. Ribière, Sur la convergence de la méthode des gradients conjugués,
Revue Française d’Informatique et de Recherche Opérationnelle, 16-R1 (1969).
[12] A. Quarteroni, A. Valli, Domain decomposition methods for partial differential equa-
tions, Oxford Science Publications, Oxford (1999).
[13] Y. Saad, M. H. Schultz, GMRES : a generalized minimum residual algorithm for
solving nonsymmetric linear systems, SIAM Journal on Scientific and Statistical Com-
puting, 7, 856-869 (1986).
[14] B. F. Smith, P. E. Bjørstad, W. D. Gropp, Domain decomposition. Parallel multi-
level methods for elliptic partial differential equations, Cambridge University Press, New
York (1996).

107
Index

équation normale, 44 différentielle (Fréchet), 92


différentielle (Gateaux), 92
accroissements finis (inégalité), 101
direction admissible, 21
application continue, 89
direction de descente, 59
application de classe C 1 , 92
application de classe C 2 , 98 Euler (inéquation), 25
application de classe C k , 100
application différentiable, 90, 92 formule de Taylor avec reste intégral, 102
formule de Taylor–Lagrange, 101
cône des directions admissibles, 21 formule de Taylor–Mac Laurin, 101
chemin, 19 formule de Taylor–Young, 102
classe C 1 (application), 92 Fréchet (différentielle), 92
classe C 2 (application), 98
classe C k (application), 100 Gateaux (différentielle), 92
coût calcul, 55 Gauss-Seidel (méthode), 63
complément de Schur, 87 gradient, 93
contrainte d’égalité affine, 27 gradient à pas fixe, 64
convexe (ensemble), 12 gradient à pas optimal, 65
convexe (fonctionnelle), 12 gradient conjugué, 67
convexité, 12
inégalité des accroissements finis, 101
convexité (α-convexe), 13
inéquation d’Euler, 25
convexité (stricte), 12
critère d’arrêt, 55 jacobien, 95
dérivée partielle, 94 jacobienne, 95
développement limité d’ordre k, 100 Lagrange (multiplicateurs), 29
développement limité d’ordre 0, 89 Lagrangien, 29
développement limité d’ordre 1, 90
descente (direction), 59 méthode de Gauss-Seidel, 63
descente (pas), 59 méthode de pénalisation, 85
différentiabilité, 90 méthode de relaxation, 60
différentielle, 92 méthode du gradient à pas fixe, 64

108
Optimisation quadratique 109

méthode du gradient à pas optimal, 65


méthode du gradient conjugué, 67
matrice Hessienne, 100
minimum (global), 9
minimum (local), 9
moindres carrés, 40
moindres carrés linéaires, 41
multiplicateur de Lagrange, 29

normale (équation), 44

pénalisation, 85
pas de descente, 59
point de minimum (global), 9
point de minimum (local), 9
pseudo-inverse, 51

relaxation, 60
reste d’ordre k, 100

Schur (complément), 87
Schwarz (théorème), 99
suite minimisante, 9

tangente, 19
Taylor avec reste intégral (formule), 102
Taylor–Lagrange (formule), 101
Taylor–Mac Laurin (formule), 101
Taylor–Young (formule), 102

valeur singulière, 49

S-ar putea să vă placă și