Vous êtes sur la page 1sur 251

Programmation non linaire

Jean-Pierre Dussault
1
4 janvier 2011
1. Professeur titulaire, dpartement dInformatique, Universit de Sherbrooke, Sherbrooke, Ca-
nada J1K 2R1
2
Table des matires
Prface xi
Notation 1
Introduction 3
1 Prliminaires 9
1.1 Optimisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.2 Types doptima . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.2.1 Optima locaux et globaux . . . . . . . . . . . . . . . . . . . . 11
1.2.2 Optima stricts . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.2.3 Optima isols . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.2.4 Remarques . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.3 Conditions doptimalit . . . . . . . . . . . . . . . . . . . . . . . . 14
1.3.1 Conditions pour un point stationnaire. . . . . . . . . . . . . . . 14
1.3.2 Conditions pour un optimum . . . . . . . . . . . . . . . . . . 16
1.4 Algorithmes de descente . . . . . . . . . . . . . . . . . . . . . . . 20
1.4.1 Rduction dintervalle avec f

. . . . . . . . . . . . . . . . . . 21
1.4.2 Rduction dintervalles sans utiliser la drive . . . . . . . . . . . 25
1.5 Algorithmes dapproximation polynomiale . . . . . . . . . . . . . . . . 29
1.5.1 Approximation quadratique de la fonction f . . . . . . . . . . . . 30
1.5.2 Approximation linaire de la fonction f

. . . . . . . . . . . . . . 31
1.5.3 Approximation cubique de la fonction f . . . . . . . . . . . . . . 34
*1.5.4 Utilisation de lapproximation cubique de f . . . . . . . . . . . . 35
1.6 Analyse asymptotique . . . . . . . . . . . . . . . . . . . . . . . . 36
1.6.1 Notation grand O et petit o . . . . . . . . . . . . . . . . . 36
1.6.2 Vitesse de convergence dalgorithmes itratifs . . . . . . . . . . . 38
1.7 Convergence locale quadratique de litration de Newton. . . . . . . . . . 40
1.7.1 Analyse de litration de Newton . . . . . . . . . . . . . . . . . 40
1.7.2 Preuve concise de la convergence quadratique . . . . . . . . . . . 41
1.7.3 Preuve dtaille de la convergence quadratique . . . . . . . . . . . 41
i
ii TABLE DES MATIRES
*1.8 Analyse des approximations polynmiales . . . . . . . . . . . . . . . . 43
1.8.1 Ordre de convergence de la mthode de la scante . . . . . . . . . 43
1.8.2 Ordre de convergence de lapproximation cubique de f . . . . . . . 44
1.9 Algorithme combin . . . . . . . . . . . . . . . . . . . . . . . . . 44
1.9.1 Algorithme de Newton modi . . . . . . . . . . . . . . . . . . 45
1.10 Rgion de conance . . . . . . . . . . . . . . . . . . . . . . . . . 47
2 Optimisation locale de fonctions direntiables sans contrainte 51
2.1 Formulation du problme . . . . . . . . . . . . . . . . . . . . . . . 52
2.2 Conditions doptimalit . . . . . . . . . . . . . . . . . . . . . . . . 53
2.2.1 Analyse du problme une seule variable . . . . . . . . . . . . . 53
2.2.2 Conditions doptimalit pour un problme n variables . . . . . . . 55
2.3 Dduction dune classe dalgorithmes itratifs . . . . . . . . . . . . . . 63
2.3.1 Recherche de points stationnaires. . . . . . . . . . . . . . . . . 63
2.3.2 Conditions pour la convergence . . . . . . . . . . . . . . . . . 66
2.3.3 Recherche de minima locaux faibles. . . . . . . . . . . . . . . . 76
2.4 Itration de Newton modie pour loptimisation . . . . . . . . . . . . . 81
2.4.1 Modication de la direction de Newton . . . . . . . . . . . . . . 82
2.4.2 Analyse du pas pour la direction de Newton . . . . . . . . . . . 82
2.4.3 Convergence de la mthode de Newton modie . . . . . . . . . . 84
2.4.4 Convergence de la mthode de Newton rgions de conance . . . . 85
2.5 Mthodes quasi-Newton. . . . . . . . . . . . . . . . . . . . . . . . 86
2.5.1 Convergence globale . . . . . . . . . . . . . . . . . . . . . . 87
2.5.2 Vitesse de convergence . . . . . . . . . . . . . . . . . . . . . 88
2.6 Fonctions objectif quadratiques . . . . . . . . . . . . . . . . . . . . 88
2.6.1 Dcomposition de Cholesky . . . . . . . . . . . . . . . . . . . 88
2.6.2 Algorithme du gradient conjugu . . . . . . . . . . . . . . . . . 90
2.7 Problmes de moindres carrs . . . . . . . . . . . . . . . . . . . . . 93
2.7.1 Mthodes de descente pour les systmes dquations. . . . . . . . . 94
2.7.2 Mthodes spcialises aux mointres carrs . . . . . . . . . . . . . 94
2.8 Mises en uvre . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
2.8.1 Mise en uvre de la direction de Newton modie . . . . . . . . . 95
2.8.2 Mise en uvre dalgorithmes de rgions de conance . . . . . . . . 99
2.8.3 Mise en uvre dun pas admissible . . . . . . . . . . . . . . . . 101
2.9 Traitement de problmes de trs grande taille . . . . . . . . . . . . . . 102
2.9.1 Gradient conjugu non-linaire . . . . . . . . . . . . . . . . . . 103
2.9.2 Newton tronqu . . . . . . . . . . . . . . . . . . . . . . . . 105
2.10 Rsum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
2.11 Extensions et rfrences. . . . . . . . . . . . . . . . . . . . . . . . 106
TABLE DES MATIRES iii
3 Programmation linaire 111
3.1 Formulation du problme . . . . . . . . . . . . . . . . . . . . . . . 112
3.2 Solutions de base ralisables . . . . . . . . . . . . . . . . . . . . . . 112
3.3 Condition doptimalit . . . . . . . . . . . . . . . . . . . . . . . . 114
3.4 Algorithme du simplexe. . . . . . . . . . . . . . . . . . . . . . . . 115
3.5 Dualit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
3.6 Dgnrescence . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
3.6.1 Un exemple de cyclage dans lalgorithme du simplexe . . . . . . . . 121
3.6.2 Rgles danti-cyclage . . . . . . . . . . . . . . . . . . . . . . 122
3.6.3 Convergence nie de lalgorithme du simplexe . . . . . . . . . . . 125
3.7 Implantation numrique de lalgorithme du simplexe . . . . . . . . . . . 126
3.7.1 Utilisation de la dcomposition LU . . . . . . . . . . . . . . . . 127
3.7.2 Utilisation de la dcomposition QR . . . . . . . . . . . . . . . . 128
3.7.3 Dgnrescence numrique. . . . . . . . . . . . . . . . . . . . 128
3.8 Comment obtenir la premire solution de base ralisable . . . . . . . . . . 128
3.9 Rsum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
3.10 Extensions et rfrences. . . . . . . . . . . . . . . . . . . . . . . . 129
4 Optimisation direntiable avec contraintes linaires 131
4.1 nonc du problme . . . . . . . . . . . . . . . . . . . . . . . . . 132
4.2 Conditions doptimalit pour les points stationnaires . . . . . . . . . . . 132
4.2.1 Formulation inspire de la programmation linaire . . . . . . . . . 133
4.2.2 Formulation sous forme de projection . . . . . . . . . . . . . . . 134
4.3 Conditions de Karush-Kuhn-Tucker. . . . . . . . . . . . . . . . . . . 135
4.3.1 Conditions pour les contraintes dgalit. . . . . . . . . . . . . . 135
4.3.2 Conditions pour les contraintes dingalit . . . . . . . . . . . . . 138
4.3.3 Exemples . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
4.4 Remarques gnrales sur les algorithmes. . . . . . . . . . . . . . . . . 147
4.4.1 Algorithmes de directions ralisables . . . . . . . . . . . . . . . 148
4.5 Algorithmes inspirs de la programmation linaire . . . . . . . . . . . . 148
4.5.1 Algorithme de Frank&Wolfe . . . . . . . . . . . . . . . . . . . 149
4.5.2 Algorithme du gradient rduit . . . . . . . . . . . . . . . . . . 151
4.6 Algorithmes de projection . . . . . . . . . . . . . . . . . . . . . . . 153
4.6.1 Exemple de calculs de projection . . . . . . . . . . . . . . . . . 154
4.7 Algorithmes de contraintes actives . . . . . . . . . . . . . . . . . . . 156
4.7.1 Quelques aspects pratiques . . . . . . . . . . . . . . . . . . . 157
4.7.2 Un exemple dalgorithme globalement convergent . . . . . . . . . . 159
4.8 Rsum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
4.9 Extensions et rfrences. . . . . . . . . . . . . . . . . . . . . . . . 162
iv TABLE DES MATIRES
5 Optimisation direntiable avec contraintes dgalit 163
5.1 Conditions doptimalit . . . . . . . . . . . . . . . . . . . . . . . . 164
5.1.1 Conditions de premier ordre . . . . . . . . . . . . . . . . . . . 164
5.1.2 Conditions de second ordre . . . . . . . . . . . . . . . . . . . 169
5.2 Remarques gnrales sur les algorithmes. . . . . . . . . . . . . . . . . 172
5.3 Perturbations des conditions doptimalit . . . . . . . . . . . . . . . . 172
5.3.1 Solution des conditions de premier ordre . . . . . . . . . . . . . 173
5.3.2 Perturbation des conditions doptimalitpnalits . . . . . . . . . 173
5.3.3 Perturbation des conditions doptimalitLagrangiens augments. . . 177
5.3.4 Proprits de convergence globales de la pnalisation . . . . . . . . 180
5.3.5 Existence de trajectoires direntiables . . . . . . . . . . . . . . 181
5.4 Linarisation des conditions doptimalit . . . . . . . . . . . . . . . . 183
5.5 Implantation de la pnalisation . . . . . . . . . . . . . . . . . . . . 184
5.5.1 limination du mauvais conditionnement . . . . . . . . . . . . . 184
5.5.2 Convergence locale superlinaire de la pnalisation . . . . . . . . . 186
5.5.3 Perturbations des conditions doptimalit . . . . . . . . . . . . . 188
5.5.4 Convergence globale et localement superlinaire . . . . . . . . . . 192
5.6 Lagrangiens et pnalits augments. . . . . . . . . . . . . . . . . . . 196
5.6.1 Lagrangiens augments . . . . . . . . . . . . . . . . . . . . . 197
5.6.2 Pnalits augmentes . . . . . . . . . . . . . . . . . . . . . . 199
5.7 Fonctions de pnalit exacte . . . . . . . . . . . . . . . . . . . . . . 202
5.8 Rsum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
5.9 Extensions et rfrences. . . . . . . . . . . . . . . . . . . . . . . . 203
6 Optimisation direntiable avec contraintes dingalit 205
6.1 Conditions doptimalit . . . . . . . . . . . . . . . . . . . . . . . . 206
6.1.1 Conditions de premier ordre . . . . . . . . . . . . . . . . . . . 206
6.1.2 Conditions de second ordre . . . . . . . . . . . . . . . . . . . 208
6.1.3 Une analyse base sur les pnalits . . . . . . . . . . . . . . . . 209
6.2 Construction dalgorithmes de pnalit . . . . . . . . . . . . . . . . . 213
6.2.1 Perturbation des conditions doptimalit I : g(x) 0 . . . . . . . . 213
6.2.2 Perturbation des conditions doptimalit II : g(x) = 0 . . . . . . . 215
6.2.3 Perturbation des conditions doptimalit III : mthodes semi-intrieures
217
6.3 Proprits gnrales des algorithmes de pnalisation . . . . . . . . . . . 217
6.3.1 Proprit de convergence globale . . . . . . . . . . . . . . . . . 217
6.3.2 Proprit didentication des contraintes actives . . . . . . . . . . 220
6.3.3 Proprit numriques . . . . . . . . . . . . . . . . . . . . . . 220
6.3.4 Proprits asymptotiques des algorithmes . . . . . . . . . . . . . 222
TABLE DES MATIRES v
6.4 Implantation des algorithmes de pnalit . . . . . . . . . . . . . . . . 223
6.4.1 limination du mauvais conditionnement . . . . . . . . . . . . . 223
6.4.2 Ordre (superlinaire) de convergence locale . . . . . . . . . . . . 225
6.4.3 Algorithmes globalement et superlinairement convergents . . . . . . 226
6.5 Pnalits et Lagrangiens augments. . . . . . . . . . . . . . . . . . . 227
6.5.1 Pnalits extrieures . . . . . . . . . . . . . . . . . . . . . . 227
6.5.2 Pnalits intrieures . . . . . . . . . . . . . . . . . . . . . . 228
6.5.3 Pnalits primales-extrieures . . . . . . . . . . . . . . . . . . 228
6.6 Rsum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
6.7 Extensions et rfrences. . . . . . . . . . . . . . . . . . . . . . . . 229
A Solutions dexercices 231
A.1 Exercice 2.2.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
A.2 Exercice 4.7.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232
vi TABLE DES MATIRES
Table des gures
1 Moindres carrs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2 Catnaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.1 Minimisation globale dicile . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.2 Optima locaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.3 Optima stricts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.4 Points stationnaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.5 Algorithme de Fibonacci . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
1.6 Approximation quadratique . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
1.7 Approximation linaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
1.8 Fonction 1
1
5x
2
6x+5
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
2.1 Points stationnaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
2.2 Point de selle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
2.3 Exemple de lalgorithme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
2.4 Direction susamment descendante . . . . . . . . . . . . . . . . . . . . . . 67
2.5 Pas admissible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
2.6 Exemple des algorithmes de Newton et du gradient . . . . . . . . . . . . . . 109
2.7 Exemple des algorithmes de Newton et du gradient . . . . . . . . . . . . . . 110
4.1 Gomtrie de la projection . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
5.1 Direction ralisable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
5.2 Courbe ralisable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
5.3 Pnalisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
6.1 Pnalisation g(x)
+

2
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
6.2 Pnalisation

log(g
i
(x)) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
6.3 Pnalisation

e
g
i
(x)

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
vii
viii TABLE DES FIGURES
Table des algorithmes
1.1 Trouve intervalle. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.2 Rduit intervallebissection. . . . . . . . . . . . . . . . . . . . . . . . . . . 22
1.3 Rduit intervalleFibonacci. . . . . . . . . . . . . . . . . . . . . . . . . . . 28
1.4 Rduit intervalle acclrbissectionNewton. . . . . . . . . . . . . . . . . . 45
1.5 Newton avec rgion de conance. . . . . . . . . . . . . . . . . . . . . . . . . 48
2.1 Descente simplie. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
2.2 Newton avec rgion de conance. . . . . . . . . . . . . . . . . . . . . . . . . 78
2.3 Newton modi. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
2.4 GCdirection de Newton modife . . . . . . . . . . . . . . . . . . . . . . . . 100
2.5 GCRgion de conance . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
2.6 Armijo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
2.7 L-BFGS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
3.1 Simplexe rvis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
4.1 Descente ralisable. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
4.2 Gradient rduit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
4.3 Contraintes actives. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
4.4 Gradient rduit amlior. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
5.1 Pnalit simple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
5.2 Lagrangien augment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
5.3 Pnalit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
5.4 Pnalit augmente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
ix
x TABLE DES ALGORITHMES
Prface
La programmation non-linaire regroupe un ensemble de sujets dans ltude de problmes
doptimisation. Une fonction objectif, parfois nomme critre, est donne, et le problme
consiste trouver caractriser calculer un point minimisant (ou maximisant) cette fonc-
tion. Parfois, tous les points de R
n
sont candidats, parfois, des contraintes limitent le domaine
de recherche.
Les fonctions utilises (fonction objectif, contraintes) sont continues, mme diren-
tiables. On utilise des rsultats danalyse mathmatique pour caractriser les points can-
didats ; un premier pas consiste donc obtenir des conditions vriables satisfaites par les
minima ou maxima recherchs. Lorsquun point ne satisfait pas ces conditions doptimalit,
on en dduit une manire de calculer un point meilleur, et nalement un algorithme itratif
rduisant (pour la minimisation) progressivement la fonction objectif.
Un eort important est consacr relier ltude des conditions doptimalit au dvelop-
pement dalgorithmes de rsolution. Ce lien entre la thorie et les algorithmes constitue le
l conducteur du texte, ainsi que loriginalit de la prsentation.
Jai utilis ces notes dans le cours ROP 630, et ROP 831. Alors que dans le cours de
premier cycle on se consacre principalement aux 4 premiers chapitres, en vitant certaines
sections plus avances, et au survol des chapitres 5 et 6, le cours 831 approfondi justement
les sections plus avances, et traite fond les 2 derniers chapitres. Les sections et exercices
plus avancs des 4 premiers chapitres sont marqus dtoiles.
La programmation non-linaire est utilise dans plusieurs contextes dapplication, mais
ce texte traite plutt des aspects mathmatiques et algorithmiques de loptimisation.
xi
xii PRFACE
Notation
Nous adoptons la convention que R
n
consiste en des vecteurs colonnes. Le gradient dune
fonction f : R
n
R est un vecteur ligne not f(x)
def
= (
f
x
1
,
f
x
2
, . . . ,
f
xn
). On dnote la
transposition dun vecteur par v
t
. Le produit scalaire entre deux vecteurs colonnes v
t
v.
Les intervalles, ouverts ou ferms, sont dnots par les crochets [ et ] comme suit :
[a, b] = {x : a x b} ;
[a, b[= {x : a x < b} ;
]a, b] = {x : a < x b} ;
]a, b[= {x : a < x < b}.
Les vecteurs ligne ou colonne peuvent se mesurer laide de normes, v ; plusieurs
normes pourront tre utilises, la norme Euclidienne tant la norme par dfaut :
v = v
2
=
_

n
i=1
v
2
i
=

v
t
v ;
v
1
=

n
i=1
|v
i
| ;
v

= max
n
i=1
{|v
i
|} ;
v
Q
=

v
t
Qv ; Q est une matrice symtrique dnie positive.
Les symboles de logique habituels sont ( , non), ( , et) et ( , ou).
Puisque le sujet de ce texte concerne loptimisation, en mmoire aux origines de la langue
Franaise, jutilise les pluriels latiniss pour maximum, minimum, optimum : maxima, mi-
nima, optima.
1
2 NOTATION
Introduction
Ce texte est un document pdagogique pouvant servir de support pour des cours dopti-
misation mathmatique non-linaire en dimension nie. Les sujets sont prsents de manire
lmentaire et ne ncessitent quune connaissance du calcul direntiel et de lalgbre linaire.
Nous utiliserons aussi quelques notions lmentaires de calcul direntiel vectoriel.
Loptimisation mathmatique est utilise dans plusieurs contextes. Les gestionnaires d-
sirent maximiser leurs prots, ou minimiser leurs cots de production. Un ingnieur souhaite
minimiser le poids dune structure sous contrainte que la structure soit capable de supporter
X tonnes ou encore maximiser la force de la structure sous contrainte que son poids soit au
plus X tonnes. Un commis voyageur souhaite trouver le chemin de longueur minimale pour
se rendre sa destination.
Ds que lon utilise un des mots minimum, minimiser, minimal, maximal, maximum,
maximiser pour dcrire une situation, il devient possible de formuler sous forme mathma-
tique un problme doptimisation. On parle de caractrisation ou de calcul dun optimum,
dune solution optimale, le terme optimum signiant minimum ou maximum selon les cas. La
dmarche permettant de dcrire une situation donne sous forme dun problme doptimisa-
tion mathmatique se nomme modlisation. Dans ce texte, nous ne traitons pas cet aspect de
modlisation sauf dans cette introduction o nous allons dvelopper quelques formulations
mathmatiques frquentes en guise de motivation.
Lobjectif de ce texte est plutt de considrer diverses variantes de formulations de pro-
blmes doptimisation mathmatique et de dvelopper des caractrisations des solutions op-
timales ; ces caractrisations sont nomme conditions doptimalit. Par exemple, on sait que
si une fonction f possde un minimum en x

et si sa drive existe en x

, alors f

(x

) = 0.
x

sera souvent nomm candidat solution; lquation f

(x

) = 0 permet donc dliminer


de mauvais candidats, car si f

(x
0
) = 0, alors il est impossible que x
0
soit un minimum.
Un aspect distinctif de ce texte est de relier systmatiquement ces conditions doptimalit
au dveloppement de mthodes de calcul de solutions optimales, mthodes habituellement
nommes algorithmes. La prsentation des conditions doptimalit (aspects plus thoriques)
conduit alors naturellement au dveloppement dalgorithmes (aspects plus pratiques).
Le texte peut servir de support des cours plus appliqus, o les conditions doptima-
lit, les algorithmes et leurs proprits sont prsents en dtail mais o les dmonstrations
mathmatiques ne sont quesquisses. Des cours plus avancs peuvent traiter rigoureusement
3
4 INTRODUCTION
les dmonstrations mathmatiques, ou encore approfondir considrablement les aspects de
mise en uvre informatique.
Exemples de formulations
Tel que mentionn ci-haut, ce texte ne traite pas de la dmarche de modlisation sauf
pour prsenter quelques exemples simples de motivation. La modlisation est une discipline
en soi. Dans cette section, en guise de motivation, nous prsentons trois situations frquentes
en imagerie.
Ajustements de modles aux donnes
Une situation omniprsente en sciences consiste ajuster un modle des mesures. La
situation la plus simple est quon a un ensemble de points x
i
, y
i
mesurs, et on pense que
les y sont en fait dpendants des x selon une formule y = f(a, x) o a est un ensemble de
paramtres. Le cas le plus simple est celui o les x
i
et les x
i
sont des scalaires, et o la
relation dcrite par la fonction f est ane, donc le graphe de la fonction y = f(a, x) est une
droite ; dans ce cas, f(a, x) = a
0
+a
1
x. On a donc n valeurs x
1
. . . x
n
et y
1
= . . . y
n
mesures,
et on cherche la meilleure droite pour dcrire ces points, i.e. les meilleures valeurs a
0
et
a
1
. Meilleures dans quel sens ? Il y a plusieurs possibilits, mais un choix usuel est meilleur
dans le sens des moindres carrs : on cherche les valeurs de a
0
et a
1
, donc deux valeurs qui
minimisent

n
i=1
(y
i
f(a, x
i
))
2
=

n
i=1
(y
i
(a
0
+ a
1
x
i
))
2
.
.La fonction que nous minimisons est nomme fonction objectif, ou encore critre. Les
paramtres sujets la minimisation, ici a = [a
0
, a
1
] sont les variabes de dcision.
La gure 1 donne une illustration du principe. Les donnes sont gnres en ajoutant un
bruit alatoire la droite rouge (traits longs), une droite quelconque est illustre en vert,
et la solution retrouve par les moindres carrs est en turquoise (traits courts). On aurait
pu choisir plusieurs autres critres que la somme des carrs entre les y
i
et les f(a, x
i
), qui
auraient donn des approximations direntes de la droite en traits (courts) turquoises. Dans
tous les cas, un problme doptimisation permet de calculer la meilleure droite et cest ce
quil faut retenir de cet exemple. Les formulations de moindres carrs reviennent souvent.
Problmes inverses
Les problmes inverses sont une manifestation dajustement de donnes. La tomographie
en est un bon exemple. La situation idalise est la suivante : un ensemble de N rayon-X
est lanc sur un objet, chacun tant dtect de lautre ct de lobjet. On dsire se faire
une ide de la structure interne de lobjet. Il sagira de calculer sur une grille de n n
pixels, un coecient dattnuation pour chaque pixel de la grille. Pour un rayon donn d
i
,
il traverse un certain nombre de pixels de la grille et on mesure la somme des attnuations
INTRODUCTION 5
Sur cet exemple,
x = [0, 0.5, 1, 1.5, 2, 2.5, 3]
et y
i
= 34 + 12x
i
+ u
i
avec u
i
un nombre
pseudo-alatoire entre
15 et 15, donc y =
[44, 29, 40, 63, 68, 65, 85].
La droite en vert est
une droite quelconque
(a = [3, 5]), celle en
rouge a = [34, 12] uti-
lise pour gnrer lesy
i
,
et nalement celle en
turquoise la solution
obtenue par moindres
carrs a = [29.46, 16.35]
Figure 1 Moindres carrs

A
i,j
x
j
= b
i
. Pour viter de manipuler trois indices, les pixels sont linariss et numrots
de un n
2
. A
i,j
reprsente la longueur que le rayon intercepte le j
me
pixel et donc vaut
zro pour une grande proportion des pixels. Dans ce contexte, on connat A par la gomtrie
du tomographe, et b par les mesures et on cherche calculer x, lattnuation des pixels. On
cherche donc minimiser Axb, dans un certain sens car il sagit dun vecteur de dimension
N.
Remarque 1 En gnral, minimiser une quantit vectorielle na pas de sens et il faut
prciser nos intentions. En eet, partant dun point A, par exemple Montral, pensez
minimiser selon un autre point B (disons Lennoxville) le dplacement de A B. Que
signie dplacement de A B ? Distance ? Temps de parcours de A B? Cot en carbu-
rant ? Encombrement routier ? Les seules fonctions sujettes optimisation sans ambigut
sont des fonctions valeurs relles.
Un choix possible est de minimiser la somme des carrs du vecteur r = Axb, minimiser

N
i=1
r
2
i
= r
t
r = r
2
. En fait, pour plusieurs raisons, on construit une fonction rgulari-
se Ax b + (x) qui doit tre minimise. Puisque les x
i
reprsentent des coecients
6 INTRODUCTION
La forme dun cble entre
deux pylnes lectriques
correspond au catnaire.
Figure 2 Catnaire
dattnuation, il faut les restreindre tre non-ngatifs et on aboutit la formulation :
min Ax b
2
+ (x)
sujet x 0
Le problme ne doit donc considrer que les x E = {x : x 0} et lensemble E est nomm
ensemble ralisable. La solution optimale, identie tout au long de ce texte avec une toile,
x

, permet le meilleur ajustement aux mesures.


Problmes issus de la physique
La nature obit des lois doptimisation. Par exemple, un objet mou ou exible au
repos adopte une forme ou position qui minimise son nergie. Un exemple simple dune telle
situation est la position dune corde ou chane ou un cble x en ses deux extrmits et
laiss pendre libre. Quelle forme adopte donc le cble ? Pour connatre la rponse, il sut
dexprimer son nergie dans une position donne et de minimiser cette nergie.
Lnergie potentielle dun cble entre les points x
a
et x
b
est donne par la formule
_
x
b
xa
y
_
1 + y
2
dx
o y est la hauteur (y(x) est fonction de x) et

1 + y
2
reprsente la masse du cble
(y

(x) =
y
x
est aussi fonction de x). videmment, il faut ajouter des contraintes, et len-
semble ralisable E = {y :
_
x
b
xa

1 + y
2
dx = L, y(x
a
) = y
a
, y(x
b
) = y
b
} impose la masse
du cble proportionnelle sa longueur et le cble est suspendu en x
a
, y
a
et x
b
, y
b
. Ici, la
variable optimiser est une fonction. Dans ce texte, nous ne traiterons pas ce type dop-
timisation. Cependant, en envisageant remplacer lintgrale par des sommes sur N points et
la variable y par N valeurs, tout comme N valeurs de x :
_
b
a
f(x)dx
N

i=1
f(x
i+
1
2
)
x
i+1
x
i
on aboutit la formulation suivante. Notons Dx x
i+1
x
i
. Nous reprsentons Dy
j
=
y

(x
j+
1
2
)
y
j+1
y
j
Dx
. galement, nous simplions en approximant y(x
j+
1
2
)
y
j+1
+y
j
2
min

N
i=1
_
1 + Dy
2
i
)
y
j
+y
j1
2
INTRODUCTION 7
sujet y
j
= y
j1
+ Dx Dy
j1
, j = 0 . . . N 1

N
i=1
_
1 + (Dy
i
)
2
) Dx = L
y
0
= y
a
y
N
= y
b
Ce problme nomm catnaire est bien connu en mathmatiques, et on peut obtenir une
solution analytique qui sexprime laide de cosinus hyperboliques. Cependant, ce genre de
problme peut se complexier, cble de densit ingale, lasticit du cble, etc. Les situations
ralistes conduisent des formulations discrtises similaires, mais plus complexe. Dans ces
cas plus complexes, en gnral, il ny a pas de solution analytique et lapproche doptimisation
discrtise demeure la seule possibilit de solution.
Le but dans cette introduction nest que dillustrer le type de formulations auxquelles
les dveloppements qui suivent pourraient sappliquer. Nous y avons vu un problme de
minimisation dune somme de carrs de fonctions linaires, une minimisation sujette des
contraintes simples de non ngativit, et le dernier exemple illustre une formulation avec des
contraintes non linaires complexes ainsi quune fonction objectif non linaire.
Organisation du texte
Les chapitres qui suivent traitent de cas progressivement de plus en plus complexes du
problme typique
min f(x)
sujet x E
o dans le premier chapitre, E est simplement la droite relle, donc les problmes sont de
dimension un. Au chapitre deux, E est de dimension n mais il ny a pas dautre contrainte.
Au chapitre trois, on fait un rappel de programmation linaire : E est dcrit par des galits
et ingalits linaires de R
n
alors que F est une fonction linaire. Historiquement, le dve-
loppement de la programmation linaire a marqu un jalon important et a donn naissance
la recherche oprationnelle. Ce texte est cependant consacr principalement aux aspects
non linaires de loptimisation; cest pourquoi le chapitre sur la programmation linaire est
autant succinct.
Le chapitre quatre conserve les ensembles E linaires mais utilise des fonctions objectifs
non-linaires. Les chapitres cinq et six abordent les ensembles E dcrits respectivement par
des galits et des ingalits non-linaires.
Le chapitre premier, intitul prliminaires, traite du cas de fonctions dune variable relle.
Ce contexte simple permet de mettre laccent sur la dmarche qui sera adopte tout au long
du texte. Comme mentionn prcdemment, les conditions doptimalit y sont prsentes
en dtail pour ensuite dnir des algorithmes en se basant sur ces conditions. Toutefois,
8 INTRODUCTION
avant dtudier des conditions doptimalit, il faut rigoureusement prciser la formulation du
problme sous tude. La structure gnrale des chapitres qui suivent prend donc la forme
suivante :
1. formulation du problme ;
2. nonc de conditions doptimalit ;
3. dduction dalgorithmes partir de points qui ne satisfont pas aux conditions dopti-
malit ;
4. tude dtaille de quelques algorithmes spciques ;
5. solution des calculs non-triviaux des algorithmes spciques.
Chapitre 1
Prliminaires
Sujets du chapitre
Vocabulaire des problmes doptimisation.
Notion de conditions doptimalit.
Algorithmes de descente.
Convergence globale des algorithmes.
Vitesse de convergence des algorithmes.
9
10 CHAPITRE 1. PRLIMINAIRES
Introduction
Ce texte est consacr ltude de problmes doptimisation. Ce chapitre de prliminaires
vise xer les lments de vocabulaire qui permettent de dcrire, de parler de ce type de
problmes, de leurs solutions, des algorithmes de rsolution. On prote aussi de ces prlimi-
naires pour eectuer certains rappels danalyse mathmatique, dalgbre linaire, et danalyse
numrique.
1.1 Optimisation
Avant dentreprendre ltude de problmes doptimisation, il est bon de bien dnir ce
quest un problme doptimisation. Dans toute sa gnralit, le problme doptimisation
consiste dterminer la plus petite (grande) valeur possible quune fonction relle f : E R
nomme fonction objectif puisse prendre dans lensemble E nomm ensemble ralisable. Sous
forme mathmatique, ceci sexprime (pour le cas de la minimisation)
f

= inf
xE
f(x),
et signie :
f(x) f

, x E et > 0 x

E : f(x

) < f

+ ;
Une autre faon dcrire la signication de inf est dintroduire lensemble F des valeurs qui
bornent infrieurement f(x) sur lensemble E : F = {v : f(x) v, x E}. Cet ensemble
est une demi-droite relle, possiblement ouverte ; sa fermeture,F est une demi-droite ferme.
Alors, f

= max{v F}.
Pour le cas de maximisation, lexpression est f

= sup
xE
f(x), et signie : f(x)
f

, x E et > 0 x

E : f(x

) > f

. En fait, maximiser f revient minimiser f.


Dans la suite de ce texte, arbitrairement, on considre les problmes de minimisation.
Sans ajouter dhypothse sur la fonction f et lensemble E, il nest pas certain que lon
puisse trouver un lment x

de lensemble E pour lequel f(x

) = f

. Lorsque cest le cas,


la formulation mathmatique devient (toujours pour le cas de la minimisation)
f(x

) = f

= min
xE
f(x),
et signie : f(x) f(x

), x E. La notation min est rserve aux problmes pour lesquels


il existe un x

E qui minimise f.
Exemple 1.1.1 Soit E = R et f(x) = e
x
. On a 0 = inf e
x
, mais e
x
> 0 pour toute valeur
relle x. Par contre, si f(x) = x
2
, on a 0 = f(0) = min x
2
. 2
1.2. TYPES DOPTIMA 11
Exercice 1.1.1 [Min et inf] Vriez que 0 = inf e
x
et 0 = f(0) = min x
2
satisfont la
dnition de inf et min.
Nous nous intressons plutt aux problmes pour lesquels il existe un lment de len-
semble tel que f(x

) = f

. Un tel point de lensemble E est nomm un optimum, qui peut


tre un minimum ou encore un maximum.
Les chapitres qui suivent considrent direntes hypothses sur les donnes du problme
(la fonction f et lensemble E). La suite de ce chapitre de prliminaires propose une classi-
cation des solutions, ou optima ainsi que quelques notions lmentaires sur les conditions
doptimalit et les algorithmes.
1.2 Types doptima
Sans hypothse additionnelle, les problmes tels que dcrits plus haut sont en gnral
impossible rsoudre. En eet, considrons la gure 1.1. O se situe le minimum de la
fonction? De quel outil peut-on disposer pour identier celui (ou ceux) des nombreux (innis)
minima apparents qui est le plus petit ?
Pour arriver tudier les problmes doptimisation, nous allons classier les optima selon
dirents critres. Par exemple, sur la gure 1.1, lorigine est un minimum local, mais ce
minimum local nest pas isol alors que les autres minima locaux sont des minima locaux
isols. Voyons ces notions en dtail.
1.2.1 Optima locaux et globaux
Jusqu maintenant, nous avons dni les optima en comparant la valeur de la fonction
f loptimum avec sa valeur en tout autre point de E. Ce type de problme est connu sous
le nom doptimisation globale.
Si lon aaiblit ses attentes, et que lon compare les valeurs de la fonction f dans un
voisinage dun candidat optimum x

, alors x

est un minimum local de f sil existe un > 0


tel que f(x) f(x

), x E V

(x

), o V

(x

) dnote un voisinage de diamtre centr


en x

.
1
La raison principale de se restreindre aux optima locaux est de pouvoir utiliser les
outils de lanalyse mathmatique. Un optimum global correspond au plus petit des optima
locaux.
1. Nous eectuons notre tude dans des espaces euclidiens, et donc munis dune norme. Alors, on peut
dnir V

(x

) explicitement par V

(x

)
def
= {x : |x x

| }.
12 CHAPITRE 1. PRLIMINAIRES
Cette fonction comporte
une innit de minima
locaux prs de lorigine,
mais il est trs dicile
didentier son(ses) mi-
nima globaux
0
0.0005
0.001
0.0015
0.002
0.0025
0.003
0.0035
-0.05-0.04-0.03-0.02-0.01 0 0.010.020.030.040.05
(xsin(x))
2
+ 0.01|x|(cos(1000x) + 1)
Figure 1.1 Minimisation globale dicile
Sur cette fonction, les
deux maxima locaux sont
entours dhexagones
alors que les minima sont
encercls. Un des minima
est explos, et on peut
constater que dans le
voisinage que dcrit le
cercle, la fonction atteint
son point le plus bas
Figure 1.2 Optima locaux
1.2. TYPES DOPTIMA 13
Sur cette fonction, les
zones encercles consti-
tuent des minima et des
maxima locaux, mais
ne sont pas des optima
stricts : dans un voi-
sinage, la fonction est
constante
Figure 1.3 Optima stricts
1.2.2 Optima stricts
La notion doptimum strict concerne le fait que dautres points du voisinage puissent
avoir la mme valeur de fonction que x

. Par exemple, sur la gure 1.3, les zones encercles


contiennent des minima locaux qui ne sont pas stricts alors que les autres optima locaux
sont stricts.
Dnition 1.2.1 Un minimum local x

est dit strict sil existe une valeur > 0 telle que
quel que soit x V

(x

), x = x

, f(x) > f(x

) ; lingalit est stricte.


1.2.3 Optima isols
Sur la gure 1.3, les optima encercls ne sont pas stricts, mais chaque ensemble doptima
est spar des autres. La notion doptimum isol formalise cette situation. Par exemple, la
fonction (xsin(
1
x
))
2
comporte une accumulation de minima locaux lorigine. Lorigine nest
donc pas un optimum isol ni strict car une innit de points valent zro prs de lorigine.
Dnition 1.2.2 Un ensemble connexe doptima O est dit isol si quelque soit un optimum
x O, la distance de x O est borne infrieurement par une constante positive.
Exercice 1.2.1 [Optima isols] Trouvez un exemple de fonction qui admet une accumu-
lation de minima locaux lorigine, pour laquelle lorigine est un minimum global.
14 CHAPITRE 1. PRLIMINAIRES
1.2.4 Remarques
Chacun des minima locaux de la fonction (xsin(1/x))
2
lorsque x sapproche de zro est
un minimum satisfait la dnition 1.2.1. Cependant, plus le minimum sapproche de zro,
plus la valeur de diminue de sorte que lorigine ne satisfait plus la dnition. La notion
de minimum isol est semblable. Bien que lorigine ne satisfasse pas la dnition dun
minimum local strict pour la fonction (xsin(1/x))
2
, on peut trouver des valeurs de x aussi
proches de zro que lon veut pour lesquelles (xsin(1/x))
2
> 0. Proche de zro, on a donc
une innit de minima locaux, ainsi quune innit de points qui ne sont pas des minima
locaux. Lorigine nest pas un minimum local isol.
La notion de minimum isol sapplique des ensembles connexes de minima locaux. Par
exemple, la fonction f(x) = max(sin(x), 0) possde plusieurs intervalles ([, 2], [3, 4], ...)
de minima locaux. Ces intervalles sont tous une distance de , et donc sont isols. Par
opposition, la fonction f(x) = x
2
max(sin(1/x), 0) possde galement de nombreux intervalles
de minima locaux. Cependant, prs de lorigine, on retrouve le phnomne que les intervalles
sont de plus en plus rapprochs les un des autres, de sorte que lon retrouve une innit de
petits intervalles dans tout voisinage de lorigine.
1.3 Conditions doptimalit
Malgr les classications que nous venons deectuer, il serait dicile, ce stade, diden-
tier ou encore de vrier quun point x

constitue bel et bien un optimum dun problme.


En eet, les dnitions que nous avons exigeraient de comparer la valeur dune fonction en un
point x

avec sa valeur en une innit de points voisins de x

. Lanalyse mathmatique vient


alors notre secours, et lorsque la fonction possde certaines proprits de direntiabilit,
on peut tablir des quations que tout optimum doit satisfaire. Il est alors facile de vrier
quun candidat est un optimum : il sut de vrier quil satisfait aux quations, qui sont
nommes conditions doptimalit.
Le but de cette section est dillustrer le principe des conditions doptimalit sur des
exemples simples de fonctions relles.
1.3.1 Conditions pour un point stationnaire
On apprend dans les premiers cours de calcul direntiel quune fonction relle possde
des minima locaux en des points qui annulent sa drive. De tels points sont nomms points
stationnaires. Si lon dpose une bille inniment petite en un point stationnaire du graphe
dune fonction, celle-ci demeure immobile.
Dnition 1.3.1 Soit le problme de minimisation min
xR
f(x). Un point x qui annule la
drive de f, f

( x) = 0 est nomm point stationnaire pour le problme de minimisation.


1.3. CONDITIONS DOPTIMALIT 15
min
inexion
max
min et max
min et max
max
Cette fonction illustre dif-
frents types de points
stationnaires. Le dernier
est un maximum atteint
en un point o la fonction
nest pas direntiable
Figure 1.4 Points stationnaires
On observe donc que les points stationnaires, pour une fonction relle, peuvent tre de
trois types : minima locaux, maxima locaux ou points dinexion. Par consquent, tout
minimum local est un point stationnaire, mais la contrapose nest pas vraie.
Les points stationnaires satisfont donc la condition ncessaire doptimalit de premier
ordre. Il est remarquable que le rsultat ne suppose pas que la fonction est drivable ailleurs
quau point x

. Nous aurons frquemment besoin dhypothses plus fortes, que la fonction est
drivable et mme que sa drive satisfait une condition de Lipschitz, mais pour linstant,
il sut que la drive existe en x

.
Thorme 1.3.1 Soit x

un minimum local de la fonction f ; si f est direntiable en x

.
Alors, f

(x

) = 0.
Corollaire 1.3.1 Soit x

un maximum local de la fonction f ; si f est direntiable en x

.
Alors, f

(x

) = 0.
Exercice 1.3.1 [Point stationnaire] Dmontrez le thorme 1.3.1 en utilisant la dnition
de la drive.
On peut maintenant utiliser ce rsultat pour dmontrer le thorme de Rolle :
Thorme 1.3.2 Soit une fonction f direntiable sur un intervalle [a, b] et telle que f(a) =
f(b) ; alors, il existe un point c [a, b] tel que f

(c) = 0.
Preuve f tant direntiable, elle est continue, et on sait quune fonction continue atteint
son minimum (maximum) sur un compact ([a, b]). Si f est croissante en a, la valeur de f en
son maximum, disons c est plus grande que f(a) = f(b), et le corollaire 1.3.1 nous assure que
16 CHAPITRE 1. PRLIMINAIRES
f

(c) = 0. On conclut similairement si f est dcroissante en a en utilisant le thorme 1.3.1,


et si f est ni croissante, ni dcroissante en a, alors f

(a) = 0. 2
Ce rsultat se gnralise et nous pouvons noncer le thorme de la moyenne :
Thorme 1.3.3 Soit f une fonction direntiable sur un intervalle [a, b]. Alors, il existe
un point c [a, b] tel que f

(c) =
f(b)f(a)
ba
.
Exercice 1.3.2 [Thorme de la moyenne] Dmontrez le thorme de la moyenne.
Construisez une fonction h direntiable partir de f, telle que h(a) = h(b) = 0, et
appliquez le thorme de Rolle h.
Une gnralisation importante du thorme de la moyenne concerne le dveloppement de
Taylor dune fonction f, et sera utilis abondamment tout au long de ce texte.
Thorme 1.3.4 Soit une fonction f de classe C
p
au voisinage dun point x
0
; on peut ap-
procher la valeur de la fonction en un point voisin x
0
+d de x
0
(d reprsente un dplacement)
par un polynme
f(x
0
+ d) P(d) = f(x
0
) + f

(x
0
)d +
f

(x
0
)
2
d
2
. . .
f
(p1)
(x
0
)
(p 1)!
d
(p1)
De plus, on peut exprimer lerreur commise par un reste :
f(x
0
+ d) P(d) =
f
(p)
()
p!
d
p
o le point est situ entre x
0
et x
0
+d, et peut tre exprim par = x
0
+d pour une valeur
de comprise entre 0 et 1, [0, 1].
Remarquons que si p = 1, en identiant x
0
= a, x
0
+d = b et = c, on retrouve le thorme
de la moyenne.
1.3.2 Conditions pour un optimum
On apprend aussi dans les cours de calcul que si, en un point stationnaire, la drive
seconde dune fonction est positive, il sagit dun minimum local ; si elle est ngative, il sagit
dun maximum local ; si elle sannule, on ne peut rien conclure.
Les points stationnaires qui satisfont la condition susante doptimalit de second ordre
(f

(x

) > 0) sont donc des minima.


Par ailleurs, si x

est un minimum local de la fonction f, alors ncessairement on a


f

(x

) = 0 et f

(x

) 0. En eet, si la condition f

(x

) 0 nest pas satisfaite, x

satisfait
la condition susante pour un maximum de la fonction f.
1.3. CONDITIONS DOPTIMALIT 17
Le cas f

(x

) = 0 comporte une ambigut, illustre par les fonctions f


1
(x) = x
4
et
f
2
(x) = x
4
. En x

= 0, pour les 2 fonctions, on a f

(0) = f

(0) = 0 bien que lorigine soit


un minimum pour f
1
et un maximum pour f
2
.
Exercice 1.3.3 [Condition doptimalit]
a) Lorigine est un point stationnaire, cest--dire un point pour lequel f

(x) = 0, de
la fonction f(x) = x
2
cos x. Dterminez sil sagit dun minimum (local), maximum
(local) ou point dinexion.
b) Montrez que la fonction
f(x) = (2 x
2
)
2
+ x
5
possde deux points stationnaires, un maximum et un minimum local.
c) Trouvez un exemple de fonction qui possde trois points stationnaires, un minimum
local, un maximum local et un point dinexion.
Thorme 1.3.5 Soit f de classe C
2
. Un minimum local qui satisfait la condition suf-
sante doptimalit (f

(x

) = 0 et f

(x

) > 0) est un minimum local strict et isol.


Preuve Montrons que x

est un minimum local strict. Exprimons f laide dun dve-


loppement de Taylor dordre 2 autour de x

:
f(x) = f(x

) + f

(x

)(x x

) +
1
2
f

()(x x

)
2
,
avec compris entre x et x

. Les conditions susantes nous instruisent que f

(x

) = 0 alors
que f

(x

) > 0. Posons 0 < A = f

(x

). Puisque f

est une fonction continue, choisissons


un voisinage V de x

V = {x : |x x

| } tel que quel que soit V ,


A
2
< f

() < 2A.
Alors, dans ce voisinage,
f(x) f(x

) = f

(x

)(x x

) +
1
2
f

()(x x

)
2
=
(x x

)
2
2
f

()
>
(x x

)
2
2
A
2
.
Montrons maintenant que x

est un minimum isol. Pour ce faire, nous allons vrier que


f

(x) = 0 dans un voisinage de x

. Utilisons le thorme de la moyenne dans V


f

(x) f

(x

) = f

()(x x

).
18 CHAPITRE 1. PRLIMINAIRES
Les conditions susantes nous informent que f

(x

) = 0 alors que f

(x

) > 0. Donc, si x V
et x = x

, f

(x) >
A
2
(x x

) > 0. 2
Exercice 1.3.4 [Analyse dune fonction] Considrez la fonction h() =
47

2
+2
.
a) Identiez tous les points stationnaires de h;
b) parmi ceux-ci, identiez tous les minima locaux de h;
c) identiez deux points o la fonction nest pas borne.
Exercice 1.3.5 [Analyse dune fonction] Considrez la fonction h() = 112+7.5
2

3
.
a) Identiez tous les points stationnaires de h;
b) parmi ceux-ci, identiez tous les minima locaux de h.
Exercices gomtriques
Exercice 1.3.6 [Droites et paraboles]
a) Considrez une droite, dquation paramtrique x(t) = x
0
+ td, et un certain point
x
1
; x
0
, x
1
, d R
n
, t R et x(t) dcrit les points de la droite dans R
n
. On cherche
le point de la droite le plus proche de x
1
. Ce point recherch, x

= x(t

) = x
0
+ t

d
peut tre obtenu en minimisant la distance au carr entre x(t) et x
1
,
x(t) x
1

2
= (x(t) x
1
)
t
(x(t) x
1
).
Utilisez les conditions doptimalit pour trouver la valeur t

, et vriez que votre


valeur est belle et bien un minimum local.
b) Considrez maintenant une parabole de R
2
, y = x
2
. Soit un point P =
_
Px
Py
_
, on veut
trouver le point de la parabole le plus proche de P. Comme les points de la parabole
sont de la forme
_
x
x
2
_
, on peut ramener ltude la minimisation selon la seule variable
x de la fonction d(x) = (x P
x
)
2
+(x
2
P
y
)
2
. crivez les conditions doptimalit de
ce problme min
xR
d(x).
1.3. CONDITIONS DOPTIMALIT 19
Exercice 1.3.7 [Cercles et ellipses] Dans ces exercices, nous allons tudier comment cal-
culer le point le plus proche de lorigine sur une ligne courbe dans R
2
. On commence avec
un cercle, puis une ellipse.
a) Considrons un cercle de rayon 1 centr sur un point P = (P
x
, P
y
)
t
. Lquation du
cercle est {(x, y)
t
: (x P
x
)
2
+ (y P
y
)
2
= 1}. On peut se dbarrasser de y en
considrant les 2 quations y = P
y

_
1 (x P
x
)
2
. On minimise alors par rapport
x la norme au carr dun point du cercle, x
2
+ y
2
= x
2
+ (P
y

_
1 (x P
x
)
2
)
2
.
Considrez le point P = (2, 3)
t
.
i) Puisque pour un cercle, la solution est situe sur la droite reliant lorigine au
point P, obtenez la solution graphiquement. Dterminez aussi laquelle des 2
quations (le ) dcrit la solution.
ii) Vriez que cette solution satisfait bel et bien aux conditions doptimalit de
premier et second ordre du problme de minimisation en x seulement.
b) Gnralisons maintenant une ellipse dont les axes sont parallles aux axes cano-
niques : {(x, y)
t
: a(xP
x
)
2
+b(yP
y
)
2
= 1} Cette fois-ci, il est plus dicile dobtenir
la solution directement. Toujours pour P = (2, 3)
t
, avec a = 1 et b = 2, il est facile
de connatre les points de lellipse sur ses axes : il sagit de (2 1, 3)
t
, (2, 3

2
2
)
t
.
Illustrez graphiquement ce problme et ramenez-le un problme en x seulement,
comme en a).
Exercice 1.3.8 [Hyperboles] Considrez une hyperbole de R
2
, y = 1/x. Soit un point
P =
_
Px
Py
_
, on veut trouver le point de lhyperbole le plus proche de P. Comme les points
de lhyperbole sont de la forme
_
x
1/x
_
, on peut ramener ltude la minimisation selon la
seule variable x de la fonction d(x) = (x P
x
)
2
+ (
1
x
P
y
)
2
.
a) crivez les conditions doptimalit (dordre un et deux) de ce problme min
xR
d(x).
b) Si le point P est sur la droite y = x, on devine quil y a 2 candidats solution naturels :
_
1
1
_
et
_
1
1
_
. En vous limitant aux x > 0, vriez cette intuition en utilisant les
conditions doptimalit ; vriez dabord que x = 1 est un point stationnaire pour
d(x). Vriez ensuite que lintuition nest pas vraie si P est assez loin de lorigine ;
quantiez ce loin de lorigine en utilisant les conditions doptimalit dordre 2.)
20 CHAPITRE 1. PRLIMINAIRES
1.4 Algorithmes de descente
Maintenant que nous savons caractriser des optima locaux par les conditions doptima-
lit, penchons-nous sur le problme de calculer, didentier un optimum local dune fonction.
Le principe du calcul est dutiliser un algorithme itratif : partir dun point qui ne satisfait
pas aux conditions doptimalit, on va produire un autre point, meilleur que le prcdent.
Puis, on va recommencer, et engendrer une suite de points qui sapproche dun optimum.
Nous avons vu que la recherche de minima locaux dune fonction peut passer par la
recherche de points stationnaires, cest--dire, de racines de la drive de la fonction f

(x) = 0.
Cependant, ce qui distingue les problmes doptimisation des problmes dquations, cest
justement la fonction f, qui permet de comparer la qualit de deux points : puisque lon veut
minimiser f, il est intuitif de prfrer un point x
1
un point x
2
lorsque f(x
1
) < f(x
2
). Nous
allons tenter de formaliser cette intuition en engendrant une suite de points {x
n
} telle que
pour tous les membres de la suite, f(x
i+1
) < f(x
i
). La mthode qui produit une telle suite
de points est nomme algorithme de descente.
Si un point nest pas stationnaire, alors le signe de la drive de la fonction objectif
permet de savoir de quel ct la fonction diminue. On peut donc envisager de rechercher un
minimum local en eectuant de petits dplacements dans la direction de diminution de la
fonction. Deux indices nous permettent de savoir que nous avons cern un minimum local :
la fonction se met augmenter, cest--dire f(x
k
) > f(x
k1
) pour la premire fois,
donc f(x
i
) < f(x
i1
) i < k ;
la pente de la fonction change de signe pour la premire fois : f

(x
k
)f

(x
k1
) < 0 et
f

(x
i
)f

(x
i1
) > 0 i < k.
Si jamais on na pas cern de minimum local aprs un trs grand nombre dessais, cest un
indice que la fonction f est peut-tre non-borne infrieurement, ou encore quil nexiste pas
de x

tel que f(x

) = inf f(x), puisque nous avons identi de nombreux termes dune suite
prsume monotone dcroissante.
Cette ide simple est la base des algorithmes de descente. On voit que les algorithmes de
descente sont construits partir de points qui ne satisfont pas aux conditions doptimalit.
On dmontre habituellement un thorme de convergence globale dont lnonc ressemble au
thorme 1.4.1. Observons que lalgorithme Trouve_intervalle est cod laide de variables
informatiques : les variables x et x
+
reprsentent deux points successifs dans la suite {x
k
},
cest--dire x
k
et x
k+1
pour une certaine valeur de k.
Thorme 1.4.1 Soit M = + dans lalgorithme Trouve_intervalle. Alors, si lalgo-
rithme termine, lintervalle dextrmits x
k2
et x
k
contient un minimum local de la fonction
f, suppose de classe C
1
.
Preuve Si lalgorithme termine, alors au moins une des deux conditions de terminaison
est satisfaite. Vrions que chacune de ces conditions assure que lintervalle contient un
minimum local.
1.4. ALGORITHMES DE DESCENTE 21
Trouve_intervalle
{ Donns : x
0
, > 0 et 0 < M < }
cern faux
born vrai
x
+
x
0
tantque ( cern born )
x x
+
x
+
x signe(f

(x))
cern (f(x
+
) > f(x)) (f

(x) f

(x
+
) 0)
born |x| < M
Algorithme 1.1: Trouve intervalle.
f(x
k
) > f(x
k1
) et f(x
k1
) < f(x
k2
). Puisque f est continue, elle atteint son mi-
nimum sur lintervalle dextrmits x
k2
et x
k
; de plus, puisque son minimum est de
valeur au moins aussi petite que f(x
k1
), il existe un point lintrieur de lintervalle
qui minimise f sur lintervalle. Ce minimum, global sur lintervalle, est en particulier
un minimum local.
f

(x
k
)f

(x
k1
) > 0. Supposons sans perte de gnralit que x
k
< x
k1
et que f

(x
k
) < 0.
Alors, f

(x
k1
) > 0. Donc, puisque f

est une fonction continue, elle doit traverser laxe


des X en au moins un point x appartenant lintervalle, et ce de manire croissante.
2
Remarquons que cet algorithme possde la proprit de convergence globale, cest--dire
quaucune hypothse nest requise sur les proprits du point initial. Cependant, il ne cerne
que des minima locaux. Il est donc important de direncier la notion de minimum local et
global qui prcise la nature du minimum, et la notion de convergence globale dun algorithme
qui garanti la convergence peu importe lestim initial.
1.4.1 Rduction dintervalle avec f

Une fois quun intervalle contenant un minimum local est cern, on utilise des techniques
de rduction dintervalle pour amliorer notre estim de la solution. Par exemple, lalgorithme
de bissection value la drive de f au point milieu de lintervalle, et conserve la moiti de
lintervalle pour laquelle les drives des extrmits sont de signe oppos. Il serait dangereux
dinterrompre lalgorithme lorsque la drive au point milieu sannule : rien ne garantirait
alors que ce point stationnaire est un minimum local. Tel qunonc, lalgorithme est assur
de cerner soit un minimum local ou un point dinexion (mais pas un maximum local) car
les conditions assurent que f

(x
1
) demeure toujours positif alors que f

(x
0
) demeure toujours
ngatif ou nul.
22 CHAPITRE 1. PRLIMINAIRES
Bissection
{ Donns : x
0
< x
1
tels que f

(x
0
) 0 et f

(x
1
) 0 ; }
{ f

(x
1
) f

(x
0
) > 0 }
{ un critre darrt, . }
rpter
x
m
(x
0
+ x
1
)/2
si (f

(x
m
) 0 ) alors x
0
x
m
sinon x
1
x
m
jusqu ( |x
1
x
0
| < )
Algorithme 1.2: Rduit intervallebissection.
Thorme 1.4.2 Lalgorithme Bissection cerne un point stationnaire x tel que f

( x) 0.
Preuve Les conditions de lalgorithme assurent que f

(x
0
) 0 alors que f

(x
1
) > 0.
Puisque x
1
x
0
> 0, et que (x
1
x
0
) 0, (f(x
1
) f(x
0
)) 0,
0 lim
(x
1
x
0
)0
f

(x
1
) f

(x
0
)
x
1
x
0
= f

( x).
2
Lalgorithme Bissection assure la convergence vers un point stationnaire pour lequel
la drive nest pas dcroissante. Cest un point qui satisfait aux conditions ncessaires
doptimalit. Il est en gnral impossible de concevoir un algorithme convergeant vers un
point satisfaisant aux conditions susantes doptimalit.
Exercice 1.4.1 [Point milieu stationnaire]
a) Trouvez un exemple (une fonction f et un intervalle [a, b]) pour lequel les drives de
f sont de signe oppos aux extrmits de lintervalle (f

(a) < 0 et f

(b) > 0) pour


lequel le point milieu de lintervalle est un maximum local.
b) Trouvez un pareil exemple pour lequel le point milieu de lintervalle est un point
dinexion.
c) Vriez que lalgorithme 1.2 ne converge pas vers un maximum local pour vos deux
exemples.
1.4. ALGORITHMES DE DESCENTE 23
iter x
0
x
1
f

(x
0
) f

(x
1
)
0 2.0000000000 1.8349000000 2017.1439674 12.353773626
1 0.0825500000 1.8349000000 1.2740125688 12.353773626
2 0.0825500000 0.8761749999 1.2740125688 0.6749976921
3 0.3968125000 0.8761749999 0.1624455002 0.6749976921
4 0.3968125000 0.6364937500 0.1624455002 0.2166009131
5 0.3968125000 0.5166531249 0.1624455002 0.0259461281
6 0.4567328125 0.5166531249 0.0675193202 0.0259461281
7 0.4866929687 0.5166531249 0.0207307233 0.0259461281
8 0.4866929687 0.5016730468 0.0207307233 0.0026059477
9 0.4941830078 0.5016730468 0.0090608627 0.0026059477
10 0.4979280273 0.5016730468 0.0032273217 0.0026059477
11 0.4998005371 0.5016730468 0.0003106837 0.0026059477
12 0.4998005371 0.5007367919 0.0003106837 0.0011476289
13 0.4998005371 0.5002686645 0.0003106837 0.0004184723
14 0.4998005371 0.5000346008 0.0003106837 0.0000538943
15 0.4999175689 0.5000346008 0.0001283947 0.0000538943
16 0.4999760848 0.5000346008 0.0000372501 0.0000538943
17 0.4999760848 0.5000053428 0.0000372501 0.0000083220
18 0.4999907138 0.5000053428 0.0000144640 0.0000083220
19 0.4999980283 0.5000053428 0.0000030710 0.0000083220
20 0.4999980283 0.5000016856 0.0000030710 0.0000026255
Table 1.1 Itrations de bissection sur la fonction e
x(x1)
.
24 CHAPITRE 1. PRLIMINAIRES
Le tableau 1.1 illustre lapplication de lalgorithme avec la fonction e
x(x1)
et lintervalle
initial [2, 1.8349].
Lalgorithme de bissection requiert un intervalle de dpart qui satisfait la seconde
condition de terminaison de lalgorithme qui identie un intervalle cernant un minimum
local. Si jamais lalgorithme 1.1 avait termin avec un intervalle satisfaisant la premire
condition, cest--dire f(x
k
) > f(x
k1
) et (f(x
k1
) < f(x
i
) i < k 2), alors il faudrait
dabord identier un point de lintervalle de bornes x
k
et x
k1
dont la drive est de signe
oppos la drive en x
0
.
Exercice 1.4.2 [Initialisation de bissection]
a) Dans le contexte de la premire condition de terminaison de lalgorithme de recherche
dintervalle, justiez quil existe un point de lintervalle de bornes x
k
et x
k1
dont la
drive est de signe oppos la drive en x
0
;
b) Proposez une technique de rduction dintervalle pour identier un tel point.
Exercices gomtriques
Exercice 1.4.3 [Parabole] Suite de lexercice 1.3.6 pour la fonction d(x) = (x P
x
)
2
+
(x
2
P
y
)
2
.
a) partir de x = 1, appliquez lalgorithme trouve_intervalle pour le point P =
_
1
2
_
.
b) partir de lintervalle trouv en a), eectuez une tape de lalgorithme bissection
(toujours pour le point P =
_
1
2
_
).
c) Recherchez dautres points stationnaires pour ce problme, et identiez leur nature.
Exercice 1.4.4 [Ellipse] Suite de lexercice 1.3.7
a) Vriez quen prenant parmi les points sur les axes les deux plus proche de lorigine,
on ne peut pas appliquer directement lalgorithme de bissection car une des drives
est .
b) Comme la drive lautre point est positive, faites comme si la drive innie tait
nie (et ngative) et eectuez des itrations de bissection jusqu ce que le point
drive innie soit remplac.
1.4. ALGORITHMES DE DESCENTE 25
Exercice 1.4.5 [Hyperboles] Suite de lexercice 1.3.8
a) partir de x = 1, appliquez lalgorithme trouve_intervalle pour le point P =
_
1
2
_
;
utilisez un paramtre = 0.5.
b) partir de lintervalle trouv en a), eectuez une tape de lalgorithme bissection
(toujours pour le point P =
_
1
2
_
).
1.4.2 Rduction dintervalles sans utiliser la drive
Dans certaines applications, la drive de f peut-tre dicile calculer. Il est possible de
concevoir une mthode de rduction dintervalle qui nutilise que la fonction f. Supposons
tout de mme que la fonction f est continue. Soient trois points a < x
1
< b. Si f(x
1
) <
f(a) et f(x
1
) < f(b), alors lintervalle [a, b] contient certainement un minimum local de f.
Maintenant, choisissons un point x
2
= x
1
dans lintervalle [a, b]. Sans perte de gnralit,
supposons que x
2
> x
1
et que f(x
2
) f(x
1
). Nous discuterons du cas limite o f(x
2
) = f(x
1
)
plus loin. Donc, pour linstant, supposons que f(x
2
) < f(x
1
). Alors, le triplet a = x
1
< x
2
< b
satisfait aux mmes conditions que le triplet a < x
1
< b, cest--dire f(x
2
) < f( a) et
f(x
2
) < f(b). On a donc rduit lintervalle [a, b] lintervalle [ a, b] en maintenant un point
intrieur lintervalle de valeur de fonction plus petite que ses extrmits.
Si le cas f(x
1
) = f(x
2
) ne se prsente jamais, nous avons en main une stratgie de
rduction dintervalle qui cerne un minimum local de f condition que f possde la proprit
que tous ses minimas locaux stricts dans [a, b] sont uniformment isols, cest--dire quil
existe un tel que pour tout minimum local strict x

de f dans [a, b], f(x) > f(x

), x :
|x x

| .
Maintenant, si le cas f(x
1
) = f(x
2
) se prsente inniment souvent, il est possible que le
point cern appartienne une zne plateau de la fonction f, dont lintrieur est constitu de
minima locaux dans un sens faible.
Il faut galement sassurer que le choix de x
2
conduit bel et bien une suite dinter-
valles imbriqus dont la longueur converge zro. Nous avons maintenant tout ce quil faut
pour montrer la convergence globale dune famille de techniques de rduction dintervalles
nutilisant que la fonction f.
Lemme 1.4.1 Soit un intervalle [a
0
, b
0
] et une fonction f, continue sur [a
0
, b
0
] et un point
x
0
1
tels que
1. f(a
0
) f(x
0
1
),
2. f(b
0
) f(x
0
1
)
3. il existe un tel que tout ensemble connexe de minima locaux de f est isol de tout
autre minimum local par une distance dau moins ;
26 CHAPITRE 1. PRLIMINAIRES
Les premiers nombres de
Fibonacci sont 1, 1, 2, 3,
5, 8. Sur cet exemple, on
voit que lintervalle ini-
tial est dcoup en 3/8 et
5/8. Lintervalle restant,
[3/8, 1] est son tour d-
coup en 2/5 et 3/5. Lin-
tervalle restant est main-
tenant de longueur 3/8,
et est dcoup en son
1/3 et 2/3. Finalement,
lavant dernier intervalle,
de longueur 1/4, est d-
coup en deux ; on choi-
sit le point milieu, et un
point 1/2 + .
Figure 1.5 Algorithme de Fibonacci
soit galement un choix x
k
2
tel que
|x
k
2
x
k
1
|
b
k
a
k
0,
|x
k
2
a
k
|
b
k
a
k
0 et
|x
k
2
b
k
|
b
k
a
k
0. Alors, lim
k
a
k
=
lim
k
x
k
1
= lim
k
b
k
= x et x est un minimum local de f dans ]a
0
, b
0
[.
Preuve Pour une innit de points a
k
< x : |a x| < et une innit de points b
k
> x :
|b
k
x| < , on a f(a
k
) f( x) et f(b
k
) f( x).
Raisonnons par labsurde et supposons que x nest pas un minimum local de f. Il existe
alors une suite de points x
j
qui sapprochent de x tels que f( x
j
) < f( x). La suite x
j
est
entrelace avec au moins une des suites a
k
ou b
k
. Par consquent, chacun des x
j
est encadr
dun couple c
k
j
, c
k
j
+1
o c = a ou b. Donc, pour chaque j, on a soit un triplet a
k
j
< x
j
<
a
k
j
+1
, soit b
k
j
< x
j
< b
k
j
+1
dont les extrmits dnissent un intervalle qui doit contenir un
minimum local de f, ce qui contredit que les minima locaux sont isols uniformment dune
distance dau moins . 2
Lalgorithme de Fibonacci utilise ce principe, et de plus, choisit x
1
et x
2
de telle sorte
quaprs avoir conserv le triplet a, x
1
, x
2
(ou encore le triplet x
1
, x
2
, b si f(x
2
) < f(x
1
)), le
point x
1
joue le rle dun des deux points intermdiaires dans le nouvel intervalle [a, b]. Ceci
vite de recalculer f(x
1
). Le principe est le suivant. On dnote T
k
= b
k
a
k
, de sorte que
T
k+1
= b
k
x
k
1
= x
k
2
a
k
et T
k+2
= x
k
1
a
k
= b
k
x
k
2
les longueurs des intervalles de trois
itrations conscutives. Alors, T
k
= T
k+1
+ T
k+2
et on reconnat la rcurrence inverse de
celle des nombres de Fibonacci. On xera donc a priori le nombre de rduction dintervalles
1.4. ALGORITHMES DE DESCENTE 27
pour que la dernire proportion soit
1
2

1
2
, soit
F
1
F
3

F
2
F
3
, o F
i
est le ime nombre de la suite
de Fibonacci, 1, 1, 2, 3, 5, . . . dnie par F
1
= 1, F
2
= 1, F
k+2
= F
k+1
+ F
k
.
Un dtail nous reste rgler pour avoir une mthode dapplication gnrale : si le point x
0
1
est produit par la mthode, rien ne garanti que f(x
0
1
) < f(a
0
). On va donc supposer que les
drives directionnelles de f aux extrmits du segment [a
0
, b
0
] sont de signes respectivement
ngatif et positif, assurant ainsi lexistence dun minimum local de f dans lintervalle.
Thorme 1.4.3 Soit un intervalle [a
0
, b
0
] et une fonction f, continue sur [a
0
, b
0
] croissante
en b
0
et dcroissante en a
0
et telle quil existe un tel que tout ensemble connexe de minima
locaux de f est isol de tout autre minimum local par une distance dau moins . Soit un
algorithme qui choisit x
0
1
arbitrairement, et un choix x
k
2
tel que
|x
k
2
x
k
1
|
b
k
a
k
0,
|x
k
2
a
k
|
b
k
a
k
0 et
|x
k
2
b
k
|
b
k
a
k
0. Alors, lim
k
a
k
= lim
k
x
k
1
= lim
k
b
k
= x et x est un minimum local de
f dans (a
0
, b
0
).
Preuve La dicult nouvelle est la nature arbitraire de x
0
1
. Si jamais une situation se
prsente telle que f(x
0
1
) > f(x
0
2
) > f(b
0
) (ou sa symtrique), et que lalgorithme conserve
a
1
= x
0
1
, alors pour un certain nombre dtapes, on peut se retrouver avec la situation
f(a
k
) > f(x
k
1
) > f(b
k
). Cependant, dans ce cas, comme les valeurs de a
k
sont monotones
croissantes, et puisque f est croissante en b
k
= b
k1
= . . . = b
0
, tt ou tard, f(x

k
1
) deviendra
plus petit que f(b
0
), et partir de ce moment, le lemme 1.4.1 sapplique, assurant que
lalgorithme sapproche dun minimum local. 2
Exercice 1.4.6 [Applications dalgorithmes]
a) Pour la fonction f(x) = e
x(x1)
, eectuez trois itrations des deux algorithmes (bis-
section, Fibonacci) partir de lintervalle initial [1, 1].
b) Mme question pour la fonction f(x) = x
2
(1 cos x) sur lintervalle [1, 0.5].
c) Un inconvnient de la mthode de Fibonacci est de devoir xer a priori le nombre
ditrations ; si on se xait une innit ditrations, en sachant que
lim
i
F
i+1
F
i
= ,
le nombre dor = 1 +
1

=
(1+

5)
2
= 1.618..., on utiliserait ce rapport chaque
itration. Cette mthode, nomme section dore, consiste donc utiliser
a, a + (2 )(b a), a + ( 1)(b a), b
comme quatre points initiaux, et conserver ce rapport chaque itration. Eectuez
trois itrations de cet algorithme sur les fonctions de a) et b).
28 CHAPITRE 1. PRLIMINAIRES
Fibonacci
{ Donns : a et b tels que f

(a) < 0 et f

(b) > 0 ; }
{ un nombre de rductions de lintervalle, n; }
{ la suite des nombres de Fibonacci }
{ F
1
= 1, F
2
= 1, F
n
= F
n1
+ F
n2
, n = 2 . . . }
{ Hypothse : les minima locaux de f sont uniformment isols. }
L b a
x
1
a +
Fn
F
n+2
L
x
2
a +
F
n+1
F
n+2
L
f
1
f(x
1
); f
2
f(x
2
)
k 1
rpter
si (f
1
< f
2
) alors
b x
2
; x
2
x
1
x
1
(a F
nk+1
+ b F
nk
)/F
nk+2
f
2
f
1
; f
1
f(x
1
)
sinon
a x
1
; x
1
x
2
x
2
(b F
nk+1
+ a F
nk
)/F
nk+2
f
1
f
2
; f
2
f(x
2
)
k k + 1
jusqu ( k = n)
x
2
x
2
+
f
2
f(x
2
)
si (f
1
< f
2
) alors
rsultat [a, x
2
]
sinon
rsultat [x
1
, b]
Algorithme 1.3: Rduit intervalleFibonacci.
1.5. ALGORITHMES DAPPROXIMATION POLYNOMIALE 29
Rduction dintervalle utilisant f et f

Nous venons de voir quil est possible, partir dun intervalle contenant un minimum
local, de le rduire systmatiquement en utilisant une bissection sur la drive f

(x), ou encore
directement en utilisant f(x). Si on dispose de f et f

, on devrait pouvoir sen servir. En fait,


lalgorithme trouve_intervalle fournit un intervalle qui garanti inclure un minimum local,
bien que ne satisfaisant pas aux conditions de lalgorithme de bissection sur f

(x). Voici une


variante de bissection qui maintient pour le sous-intervalle conserv les conditions de sortie
de trouve_intervalle. Supposons que lintervalle courant soit x
g
, x
d
et que lextrmit
gauche soit celle pour laquelle f

(x
g
) < 0, et donc soit f(x
d
) > f(x
g
), soit f

(x
d
) >= 0 ; les
intervalles imbriqus que nous allons produire satisfont tous linvariant
(f

(x
g
) < 0) (f(x
d
) > f(x
g
) f

(x
d
) >= 0).
Nommons x
s
le point suivant calcul. Alors, si f(x
s
) > f(x
g
), on remplace x
d
par x
s
et
linvariant est satisfait. Autrement, f(x
s
) f(x
g
) et donc si f

(x
s
) < 0, on remplace x
g
par
x
s
, sinon, on remplace x
d
par x
s
. Le cas o f

(x
d
) > 0 et soit f(x
g
) > f(x
d
), soit f

(x
)
g <= 0
se traite similairement.
Exercice 1.4.7 [Bissection utilisant f et f

] crivez lalgorithme complet de bissection


applicable ds la sortie de lalgorithme trouve_intervalle.
1.5 Algorithmes dapproximation polynomiale
Les algorithmes de la section prcdente sont intressants car ils assurent de cerner
un minimum local. Cependant, comme nous allons ltudier plus tard, ces algorithmes ne
convergent pas vite. Il est donc dusage de changer dalgorithme lorsque lintervalle conte-
nant un minimum local est assez petit. Nous verrons plus loin ce que nous entendons par
assez petit. Penchons nous maintenant sur une famille dalgorithmes consistant approcher
la fonction f ou la fonction f

par un polynme.
Avant dexposer des algorithmes, replaons nous dans le contexte que les algorithmes sont
dduits de la non-satisfaction de conditions doptimalit.
Proposition 1.5.1 Soit f une fonction de classe C
2
et x

un minimum local de f. Alors,


d

= 0 est un minimum local de la fonction q


x
(d) = f(x

) + f

(d

)d +
1
2
f

(x

)d
2
.
Preuve Nous savons que f

(x

) = 0 et f

(x

) 0. Par consquent, f

(d

)d+
1
2
f

(x

)d
2
0
pour tout d = 0. 2
Si x
0
nest pas un minimum local, nous envisageons utiliser d
0
= arg min q
x
0
(d) pour
produire un prochain point x
1
= x
0
+d
0
. Nous prsentons dans cette section diverses variantes
dapproximation polynomiale de la fonction f, dont q
x
(d) est lexemple le plus commun.
30 CHAPITRE 1. PRLIMINAIRES
On observe deux des pos-
sibilits dapproximation
quadratique exactes en
x
0
= 0. Remarquons
que lapproximation s-
cante possde la mme
pente que f en x
1
=
0.2. En gnral, le point
auxiliaire est plus loign
de la solution, et lap-
proximation de Taylor est
meilleure que lapproxi-
mation scante.
0.7
0.8
0.9
1
1.1
1.2
1.3
1.4
1.5
1.6
1.7
1.8
-0.4 -0.2 0 0.2 0.4 0.6
x
0
x

x
N
x
S
x
1
#
c
c
c
T
f(x) = e
x(x1)
Taylor
scante, x
1
= 0.2
Figure 1.6 Approximation quadratique
1.5.1 Approximation quadratique de la fonction f
Plusieurs stratgies permettent dapprocher (localement) la fonction f par un polynme
p de degr deux. La plus naturelle, lorsque la fonction f est de classe C
2
est dutiliser un
dveloppement de Taylor dordre 2 autour dun point x
0
:
p(x)
def
= f(x
0
) + f

(x
0
)(x x
0
) +
1
2
f

(x
0
)(x x
0
)
2
.
Nous verrons plus loin que cette approximation correspond la mthode de Newton pour
calculer une racine de f

(x). Une fois que nous avons dtermin une approximation quadra-
tique de f, il sut de calculer son minimum pour obtenir un estim (que lon espre meilleur)
du minimum de f. Utilisons la condition doptimalit sur la fonction p(x) : p

(x) = 0, cest-
-dire f

(x
0
)(x x
0
) + f

(x
0
) = 0. Pour dnir le prochain point x
N
, la mthode nomme
mthode de Newton utilise donc la formule suivante : x
N
= x
0

(x
0
)
f

(x
0
)
.
En fait, un polynme quadratique p est dni par trois coecients p(x) = a + b(x
x
0
) +
c
2
(xx
0
)
2
, et il sut de fournir trois quations linaires permettant de dnir ces trois
coecients inconnus. Pour lapproximation de Taylor, les trois quations sont les suivantes :
p(x
0
) = f(x
0
), p

(x
0
) = f

(x
0
), et p

(x
0
) = f

(x
0
). Une autre possibilit consiste choisir
trois points, x
0
, x
1
, x
2
et utiliser les quations p(x
0
) = f(x
0
), p(x
1
) = f(x
1
), et p(x
2
) = f(x
2
).
1.5. ALGORITHMES DAPPROXIMATION POLYNOMIALE 31
Exercice 1.5.1 [Approximation quadratique] Fournissez les coecients du polynme qua-
dratique issu des conditions p(x
0
) = f(x
0
), p(x
1
) = f(x
1
), et p(x
2
) = f(x
2
). Fournissez
aussi une expression pour le minimum de la fonction quadratique.
Dautres possibilits sont envisageables, comme dutiliser deux points x
0
et x
1
et les
trois quations suivantes : p(x
0
) = f(x
0
), p

(x
0
) = f

(x
0
), p

(x
1
) = f

(x
1
). Dans ce cas,
les coecients du polynme sont : a = f(x
0
), b = f

(x
0
) et c =
f

(x
1
)f

(x
0
)
x
1
x
0
. Nous verrons
plus loin que cette approximation correspond la mthode de scante pour calculer une
racine de f

(x). Comme toutes les approximations quadratiques de f, un estim (que lon


espre meilleur) du minimum de f est donn par x
+
= x
0

b
c
, condition bien sr que
p

(x) = c > 0.
1.5.2 Approximation linaire de la fonction f

Puisque nous recherchons une racine de f

(x), nous pouvons envisager utiliser une ap-


proximation linaire de g
def
= f

pour identier un meilleur estim. Si lon approche g par


un dveloppement de Taylor dordre un, g(x) g(x
0
) + g

(x
0
)(x x
0
), on obtient la m-
thode de Newton. Le prochain estim est une racine de lapproximation linaire, cest--dire
x
+
= x
0

g(x
0
)
g

(x
0
)
qui correspond au mme point que dutiliser une approximation quadratique
de f.
Si lon utilise plutt deux points pour calculer une approximation scante de g, on obtient
g(x) g(x
0
) +
g(x
1
)g(x
0
)
x
1
x
0
(x x
0
) et le prochain point, toujours donn par une racine de
lapproximation linaire, est x
S
= x
0

g(x
0
)(x
1
x
0
)
g(x
1
)g(x
0
)
. Cest la mthode de la scante.
Exercice 1.5.2 [Applications dalgorithmes]
a) Pour la fonction f(x) = e
x(x1)
, eectuez trois itrations des trois algorithmes (New-
ton, scante, Approximation quadratique passant par trois points) partir de lin-
tervalle initial [1, 1]. Pour lapproximation utilisant trois points, choisir le troisime
point en 0.
b) Mme question pour la fonction f(x) = x
2
(1 cos x) sur lintervalle [1, 0.5].
Exercice 1.5.3 [Scante] Suite de lexercic 1.3.4 sur la fonction h() =
47

2
+2
.
32 CHAPITRE 1. PRLIMINAIRES
On observe deux des pos-
sibilits dapproximation
linaire de f

exactes en
x
0
= 0. Remarquons
que lapproximation s-
cante concide avec f

en x
1
= 0.2. Les ra-
cines de f

et des deux
approximations linaires
correspondent aux mi-
nima x

, x
N
, x
S
de la -
gure 1.6.
-3.5
-3
-2.5
-2
-1.5
-1
-0.5
0
0.5
1
1.5
-0.4 -0.2 0 0.2 0.4 0.6
x
0
x

x
N
x
S
x
1
#
T T T
T
f

(x) = (2x 1)e


x(x1)
Taylor
scante, x
1
= 0.2
Figure 1.7 Approximation linaire
Iter x f

(x) x x

0 2.0000000000000000 2017.1439674636756 2.5000000000000000


1 1.8148148148148149 765.74138725328316 2.3148148148148149
2 1.6172499842815362 291.78369169742325 2.1172499842815364
3 1.4047918990578092 111.69278625297289 1.9047918990578092
4 1.1740888018727405 42.990945144742859 1.6740888018727405
5 0.9206366236151708 16.650840481988023 1.4206366236151708
6 0.6385637391018000 6.4833811628303968 1.1385637391018000
7 0.3216494208351671 2.5138450692553556 0.8216494208351671
8 0.0279565647948271 0.9187767726223022 0.4720434352051729
9 0.3544833396867886 0.2315076371696912 0.1455166603132114
10 0.4940877267267001 0.0092092880147647 0.0059122732732999
11 0.4999995867021617 0.0000006437533603 0.0000004132978383
12 0.5000000000000000 0.0000000000000000 0.0000000000000000
Table 1.2 Itrations de Newton sur la fonction e
x(x1)
, depuis un point de dpart loign
1.5. ALGORITHMES DAPPROXIMATION POLYNOMIALE 33
a) Peut-on utiliser la mthode de la scante pour identier un minimum local de h()
dans lintervalle [1.0, 0.9] ? Est-ce que le prochain point est meilleur que le point
milieu de lintervalle ?
b) Est-ce que le prochain point de la mthode de la scante partir des points 0 et 0.3
est meilleur que le point milieu de lintervalle [0, 0.3] ?
c) Dans la mthode de la scante, est-il possible que x
k+1
= x
k
? Si oui, dans quelles
circonstances (donnez un exemple) ? Si non, pourquoi ?
Exercice 1.5.4 [Parabole] Suite de lexercice 1.4.3
a) partir du dernier point obtenu par bissection, eectuez une itration de Newton-
Raphson et vriez que le point obtenu satisfait approximativement aux conditions
doptimalit.
b) partir du dernier intervalle obtenu par bissection, eectuez une itration de la
mthode de scante et vriez que le point obtenu satisfait approximativement aux
conditions doptimalit.
Exercice 1.5.5 [Ellipses...] Suite de lexercice 1.4.4...
a) partir du dernier point obtenu par bissection, eectuez une itration de Newton-
Raphson et vriez que le point obtenu satisfait approximativement aux conditions
doptimalit.
b) partir du dernier intervalle obtenu par bissection, eectuez une itration de la
mthode de scante et vriez que le point obtenu satisfait approximativement aux
conditions doptimalit.
Exercice 1.5.6 [Hyperboles...] Suite de lexercice 1.4.5... partir de chacune des extr-
mits de lintervalle nal trouv lexercice 1.4.5, page 25, eectuez une itration de
lalgorithme Newton-Raphson(toujours pour le point P =
_
1
2
_
).
34 CHAPITRE 1. PRLIMINAIRES
1.5.3 Approximation cubique de la fonction f
La mthode de la scante utilise f

(x
k+1
) et f

(x
k
) dans ses calculs. Cependant, on dispose
dautre information, soit f(x
k1
) et f(x
k
), ce qui permet de dvelopper une mthode plus
performante compte tenu de linformation plus riche quelle utilise.
Il sagit dutiliser une approximation cubique de f en se basant sur les valeurs de f et
de sa drive f

en deux points x
k
et x
k1
; notons f(x
k
) = f
k
, f(x
k1
) = f
k1
, f

(x
k
) = f

k
,
f

(x
k1
) = f

k1
.
Cherchons donc un polynme cubique p(t) tel que p(0) = f
k
, p

(0) = f

k
, p() = f
k1
et
enn p

() = f

k1
, o = (x
k1
x
k
).
Considrons p(t) = f
k
+ f

k
t + At
2
+ Bt
3
, qui satisfait demble aux deux premires
conditions. p

(t) = f

k
+ 2At + 3Bt
2
, do on tire les deux quations nous permettant de
dterminer A et B :

2
A+
3
B = f
k1
f
k
f

k
(1.1)
2A+ 3
2
B = f

k1
f

k
. (1.2)
Il est plus facile de rsoudre ces quations pour obtenir A et
2
B :
A = (f

k
+ z) (1.3)

2
B =
1
3
(f

k
+ f

k1
+ 2z) (1.4)
o z =
3

(f
k
f
k1
) + f

k
+ f

k1
. On exprime maintenant
p

(t) = f

k
2(f

k
+ z)
t

+ (f

k
+ f

k1
+ 2z)(
t

)
2
.
Les racines
t

sont
t

=
f

k
+ z
_
(f

k
+ z)
2
f

k
(f

k
+ f

k1
+ 2z)
f

k
+ f

k1
+ 2z
(1.5)
qui scrit, dnotant w =
_
z
2
f

k
f

k1
,
t

=
f

k
+ z w
f

k
+ f

k1
+ 2z
.
Pour dterminer laquelle des deux racines on doit choisir, quelle branche du dans lquation
1.5, puisque nous voulons un minimum local du polynme cubique, nous choisissons celui
pour lequel p

(t) > 0, et on constate que p

des deux racines vaut 2w/, et donc on prend


la branche de signe oppos pour obtenir t

/ et nalement, x
k+1
= x
k
+ t

.
1.5. ALGORITHMES DAPPROXIMATION POLYNOMIALE 35
Les mthodes de Newton et de la scante peuvent produire des suites ne sapprochant
pas dun minimum local, et mme chouer si leur dnominateur est ngatif. Cette mthode
base sur le polynme dinterpolation cubique de f peut chouer dans des circonstances
additionnelles : lorsque le discriminant z
2
f

k
f

k1
est ngatif, ou encore lorsque le terme en
t
2
dans lexpression de p

, (f

k
+ f

k1
+ 2z) = 0.
Exercice 1.5.7 [chec de lapproximation cubique]
a) Vriez que le polynme dinterpolation cubique de la fonction de la gure 1.6 en
utilisant les points de la gure (x
0
= 0 et x
1
= 0.2) ne possde pas de minimum
local. Illustrez graphiquement, et interprtez cet chec de la mthode.
b) Vriez que la mthode dinterpolation cubique choue pour une fonction f quadra-
tique. Proposez une technique plus robuste.
*1.5.4 Utilisation de lapproximation cubique de f
Les conditions de sortie de lalgorithme 1.1 permettent de garantir quune fonction cu-
bique interpolant x
k
, f
k
, g
k
et x
k1
, f
k1
, g
k1
possde son minimum local dans lintervalle
dextrmits x
k
et x
k1
. Par consquent, on peut utiliser linterpolation cubique p(t) de la
fonction f pour obtenir le point x qui minimise p. Alors, sans perte de gnralit, supposons
que p

(0) < 0 et que x


k
< x
k1
. Dans ce cas, on a p

() > 0 ou p() > p(0).


f

( x) > 0 : on conserve lintervalle [x


k
, x] ;
f

( x) < 0 : il faut considrer deux cas :


f( x) f(x
k
) : on choisit [x
k
, x] ;
f( x) < f(x
k
) : on choisit [ x, x
k1
] ;
f

( x) = 0 : deux possibilits :
f( x) f(x
k
) : on choisit [x
k
, x] ;
f( x) < f(x
k
) : lalgorithme termine.
Ainsi, les conditions pour pour que le nouvel intervalle contienne un minimum local sont
prserves. Le cas o f

( x) = 0 et f( x) < f(x
k
) est problmatique car lalgorithme din-
terpolation cubique peut sy terminer, mme sil sagit dun maximum local pour lequel
f

( x) > 0.
*Exercice 1.5.8 [Panne de la rduction dintervalle par polynome cubique] Fournissez un
exemple pour lequel lalgorithme termine en un point qui satisfait f

( x) = 0 et f( x) < f(x
k
),
mais pour lequel x est un maximum local de f.
36 CHAPITRE 1. PRLIMINAIRES
Il ne faut pas sillusionner et esprer que lordre de convergence de cette stratgie de r-
duction dintervalle soit quadratique : en gnral, lalgorithme remplace toujours la mme ex-
trmit de lintervalle, et la convergence asymptotique nest que linaire. Cependant, en com-
binant cette stratgie de rduction dintervalle la vritable interpolation cubique (conserver
une paire de points conscutifs en plus des extrmits de lintervalle), on atteint lordre qua-
dratique sans utiliser la drive de second ordre.
1.6 Analyse asymptotique
Nous nous intresserons tout au long de ce texte au comportement asymptotique des
algorithmes itratifs. En examinant la table 1.2, on peut observer que les trois dernires
itrations rduisent lerreur (distance la solution, ou encore |f

(x)|) trs rapidement. Le


comportement de lalgorithme est donc bien meilleur proche de la solution que dans les
premires itrations, plus loin de la solution. Ce comportement proche de la solution est
nomm convergence asymptotique. Cette section prsente des outils pour faciliter lanalyse
asymptotique.
Nous prsentons dabord les symboles de Landau qui permettent dexprimer le compor-
tement dune fonction pour des valeurs soit trs petites proches de 0, soit trs grandes.
Les algorithmes itratifs que nous tudions rduisent progressivement lerreur, de sorte que
lerreur une itration donne peut tre vue comme une fonction de lerreur litration
prcdente. quel point cette erreur sera plus petite dune itration lautre ?
1.6.1 Notation grand O et petit o
Soient deux fonctions, f et g, de R dans R, dun mme paramtre x telles que f( x) =
g( x) = 0.
Dnition 1.6.1 Nous notons f O(g) au voisinage de x si et seulement si il existe 0
tel que
limsup
x x

f(x)
g(x)

= < .
Une autre manire dexprimer cette notation est quil existe un x
0
et une valeur M > 0 tels
que x : |x x| < |x
0
x| on a |f(x)| M|g(x)|.
En prose, f est grand O de g lorsque f sapproche de zro au moins aussi vite que
g sapproche de zro quand x tend vers x. On laisse montrer, en exercices, les proprits
suivantes.
Exercice 1.6.1 [Notation O]
1.6. ANALYSE ASYMPTOTIQUE 37
a) Dmontrez les proprits de la notation grand O
i) f O(g) entrane que f O(g), o est une constante nie ;
ii) f + g O(max(|f|, |g|)) ;
b) que peut-on dire de
1
f
O() ?
Par exemple, deux fonctions linaires f(x)
def
= a
f
x et g(x)
def
= a
g
x sont mutuellement
grand O lune de lautre proche de x = 0 si a
f
= 0 et a
g
= 0 car, selon la dnition,
f O(g) et inversement, g O(f) puisque
f
g
=
a
f
ag
. Ces deux fonctions sapprochent de
zro linairement.
Dans un second exemple, supposons f comme ci-haut, et g
def
= a
g
x
2
prs de x = 0.
Maintenant, selon la dnition, g O(f) car
g
f
=
ag
a
f
x 0 mais pas linverse car
f
g
=
a
f
agx

. g sapproche de zro quadratiquement, ce qui est plus vite que f qui sapproche de zro
linairement.
Exercice 1.6.2 [Ordre de convergence zro] Soit g une fonction relle de classe C
1
(R)
avec g( x) = 0 et g

( x) = 0. Montrez quil existe un voisinage de x (dni comme {x :


|x x| }) et des constantes appropries K
1
, K
2
, K
3
, K
4
> 0 telles que
_
K
1
|x x| |g(x)| K
2
|x x|
K
3
|g(x)| |x x| K
4
|g(x)|
_
x : |x x| .
Ceci dmontre, selon la notation O, que g(x) O(x x) et que (x x) O(g(x)) si
g( x) = 0 et g

( x) = 0. g pourrait tre la drive dune fonction minimiser f

= g et x un
minimum local de f et dans ce cas, g

( x) > 0.
Similairement, lorsque f est ngligeable par rapport g, on peut utiliser la notation
petit o.
Dnition 1.6.2 Nous notons f o(g) si et seulement si limsup
x x

f(x)
g(x)

= 0.
Lutilisation de cette notation grand et petit O permet de dissimuler les constantes sous-
jacentes pour ne retenir que lessentiel du comportement asymptotique des fonctions que nous
comparons. Il faut cependant faire preuve dune grande prudence en utilisant ces notations
raccourcies. Voici quelques exercices en guise de mise en garde.
38 CHAPITRE 1. PRLIMINAIRES
Exercice 1.6.3 [Proprits de O] Soient f
1
, f
2
et f
3
trois fonctions qui sannulent en x.
a) Montrez que f
1
O(f
3
) et f
2
O(f
3
) implique (f
1
+ f
2
) O(f
3
).
b) Montrez que f
1
O(f
2
) et f
1
O(f
3
) nimplique pas quef
1
O(f
2
+ f
3
).
Nous protons de lintroduction de la notation grand O pour donner une forme du tho-
rme de Taylor que nous utiliserons frquemment par la suite.
Thorme 1.6.1 Soit une fonction f de classe C
p
au voisinage dun point x
0
; on peut
approcher la valeur de la fonction en un point voisin x
0
+ d de x
0
par un polynme
f(x
0
+ d) P(d) = f(x
0
) + f

(x
0
)d +
f

(x
0
)
2
d
2
. . .
f
(p1)
(x
0
)
(p 1)!
d
(p1)
De plus, on peut estimer lerreur commise par un reste :
f(x
0
+ d) P(d) O(|d|
p
).
Si f est seulement de classe C
p1
, mais toutefois f
(p1)
est une fonction Lipschitz, on a la
borne :
f(x
0
+ d) P(d) o(|d|
p1
).
1.6.2 Vitesse de convergence dalgorithmes itratifs
Nous introduisons maintenant le vocabulaire permettant de comparer lecacit asymp-
totique de divers algorithmes.
Lorsquon parle de vitesse de convergence, il faut supposer que toute la suite {x
k
}
converge, cest--dire que la suite ne possde quun seul point daccumulation, x. Dnotons
lerreur
k
def
= x
k
x ainsi que sa valeur absolue e
k
def
= |
k
|.
Dnition 1.6.3 La vitesse de convergence de la suite {x
k
} vers le point x, telle que
k, x
k
= x sexprime laide des scalaires p et dans lexpression suivante
lim sup
k
|
k+1
|
|
k
|
p
= < .
Lordre de convergence de la suite est donn par la plus grande valeur que p puisse prendre
pour que la limite ci-haut demeure nie. Lorsque p = 1, est nomme le taux de convergence.
1.6. ANALYSE ASYMPTOTIQUE 39
Les cas importants (frquents) sont le cas p = 1, dite convergence linaire, et le cas p = 2, dite
convergence quadratique. Un cas particulier de convergence linaire est galement important,
soit le cas o p = 1 et = 0 ; on nomme ce type de comportement convergence superlinaire.
videmment, puisque lon sintresse au comportement limite de la suite {x
k
} qui converge
vers x, ce type danalyse ne qualie que le comportement local dun algorithme, et nest va-
lable que lorsque x
k
devient proche de x.
Exemple 1.6.1 Dans lalgorithme de bissection, on a la garantie que lintervalle contient un
point stationnaire. La largeur de lintervalle borne donc lerreur que lon commet. Puisque
lintervalle est rduit de moiti chaque itration, nommant
k
cette largeur litration k,
on a (puisque
k
converge vers zro)
lim sup
k
|
k+1
|
|
k
|
1
=
1
2
< ,
et donc lordre de convergence de lalgorithme de bissection est un, et on parle de convergence
linaire de taux 1/2. Remarquons que pour cet algorithme, nous avons utilis la mesure de
la largeur de lintervalle
k
plutt que la distance la solution
k
= x
k
x

. La distance la
solution ne dcrot pas de manire monotone, et il est possible que la mesure
k
dcroisse
un taux moins bon que
1
2
, taux de la dcroissance de
k
. 2
En observant le tableau 1.1, on constate que lalgorithme identie une dcimale addition-
nelle de la solution environ toutes les trois itrations. Cest typique dun algorithme qui
converge linairement. Par opposition, sur le tableau 1.2, bien que les premires itrations
ne soient pas trs ecaces, on constate que chacune des trois dernires itrations double le
nombre de dcimales exactes de la solution, ce qui est typique des algorithmes qui convergent
quadratiquement.
En utilisant la notation grand O, on peut rsumer
convergence quadratique :
k+1
O(
2
k
) ;
convergence superlinaire :
k+1
o(
k
) ;
convergence linaire :
k+1
O(
k
) avec une constante cache plus petite que un.
Exercice 1.6.4 [Une proprit de la convergence superlinaire] Montrez :
a) toute suite
k
= x
k
x convergeant 0 satisfait :

1
|x
k+1
x
k
|
|
k
|

|
k+1
|
|
k
|
b) si la vitesse de convergence est superlinaire, alors
lim
k
|x
k+1
x
k
|
|
k
|
= 1.
40 CHAPITRE 1. PRLIMINAIRES
1.7 Convergence locale quadratique de litration de
Newton
Lanalyse de convergence locale peut trs bien tre ralise dans le contexte de la recherche
dune racine de lquation g(x) = 0. Pour les problmes doptimisation, g = f

, mais cette
proprit nest pas utile pour lanalyse locale de la convergence comme elle la t jusquici
pour lanalyse de la convergence globale des algorithmes.
Il est facile de se convaincre que lordre de convergence de litration de Newton, locale-
ment, est quadratique. Il est souvent plus concis dutiliser la notation grand O, permettant
descamoter des dtails de preuves fastidieux. Cependant, lutilisation de cette notation n-
cessite une grande prudence. Nous analysons donc ici la vitesse de convergence locale de la
mthode de Newton en utilisant les techniques danalyse classiques, ainsi que, pour ns de
comparaison, les formulations de ces analyses avec la notation grand O.
1.7.1 Analyse de litration de Newton
Plaons-nous dans le contexte didentier une racine de la drive de f, g(x)
def
= f

(x).
On veut donc rsoudre lquation g(x) = 0. Dans ce contexte de solution dune quation
non-linaire, rappelons que litration de Newton scrit :
x
k+1
x
k

g(x
k
)
g

(x
k
)
.
Nous nous intressons ici la convergence locale de lalgorithme, cest--dire la convergence
de lalgorithme lorsque x
k
est devenu trs proche de x

, une racine de lquation g(x) = 0


pour laquelle g

(x

) = 0.
Cette itration de Newton peut se reformuler ainsi :
x
k+1
x
k
+ d
k
;
d
k

g(x
k
)
g

(x
k
)
.
On voit donc que d
k
satisfait la relation
g

(x
k
)d
k
+ g(x
k
) = 0.
Introduisons la notion derreur litration k ;
k
def
= x

x
k
. Selon la notation grand
O, nous allons montrer que |
k+1
| O(|
k
|
2
), cest dire que lorsque
k
0, la quantit
|
k+1
| (vue comme fonction de
k
) sapproche de zro au moins aussi vite que la quantit
|
k
|
2
. Selon la dnition 1.6.3,
lim sup

k
0
|
k+1
|
|
k
|
2
= < ,
1.7. CONVERGENCE LOCALE DE LITRATION DE NEWTON 41
ce qui peut se rcrire, pour un certain > et k assez grand,
|
k+1
| |
k
|
2
.
Thorme 1.7.1 Soit x

une racine isole de la fonction g telle que g

(x

) = 0, avec la
fonction g

Lipschitz, cest--dire quil existe une constante L, dite constante de Lipschitz


telle que x, y, |g

(x) g

(y)| L|x y|. Alors, il existe un voisinage de x

tel que si la
mthode de Newton est initialise dans ce voisinage, elle produit une suite convergeant vers
x

et la vitesse de convergence asymptotique est quadratique.


1.7.2 Preuve concise de la convergence quadratique
Nous allons donc donner une premire preuve de lordre quadratique de convergence pour
litration de Newton en utilisant la notation grand O, et ensuite, fournirons les dtails
dune preuve qui manipule explicitement les constantes mises en jeu par le processus, mais
caches dans la premire preuve.
Dabord, exprimons g(x

) en utilisant une srie de Taylor autour du point x


k
:
0 = g(x

) = g(x
k
) + g

(x
k
)
k
+O(|
k
|
2
)
= (g(x
k
) + g

(x
k
)d
k
) + g

(x
k
)(
k
d
k
) +O(|
k
|
2
)
= 0 + g

(x
k
)(
k+1
) +O(|
k
|
2
).
De cette dernire quation, on tire que
k+1
satisfait la relation
g

(x
k
)(
k+1
) O(|
k
|
2
).
Utilisons maintenant les faits que
g

(x

) > 0, et
g

est une fonction continue, donc g

(x
k
) = 0,
pour conclure que
k+1
O(|
k
|
2
). On voit donc que la convergence quadratique de litration
de Newton est assure.
1.7.3 Preuve dtaille de la convergence quadratique
Maintenant, examinons une preuve dtaille du mme rsultat, illustrant la puissance de
la notation grand O.
Dabord, exprimons g(x

) en utilisant une srie de Taylor autour du point x


k
:
0 = g(x

) = g(x
k
) + g

(x
k
)
k
+ R
2
(
k
)
= (g(x
k
) + g

(x
k
)d
k
) + g

(x
k
)(
k
d
k
) + R
2
(
k
)
= 0 + g

(x
k
)(
k+1
) + R
2
(
k
),
42 CHAPITRE 1. PRLIMINAIRES
o R
2
est le reste du dveloppement de Taylor dordre un; la notation R
2
souligne le fait que
ce reste est, si g est C
2
, quadratiquement petit en , proprit explicitement utilise dans la
preuve abrge.
Comme dans la preuve abrge, de cette dernire quation, on tire que
k+1
est solution
du systme linaire
g

(x
k
)(
k+1
) = R
2
(
k
).
Gardons en tte la proprit de Lipschitz de g

et crivons
g

(x
k
)(
k+1
) = g

(x

)(
k+1
) + (g

(x
k
) g

(x

))(
k+1
),
ce qui se transforme en prenant les normes de chaque ct en
|g

(x
k
)(
k+1
)| = |g

(x

)(
k+1
) + (g

(x
k
) g

(x

))(
k+1
)|
|g

(x

)(
k+1
)| |(g

(x
k
) g

(x

))(
k+1
)|
|g

(x

)(
k+1
)| L |
k
||
k+1
|.
Maintenant, |g

(x

)| = K
1
> 0, mais, plus important, g

(x

) est borne, do lon tire que


K
1
< . Les prcdents dveloppements nous permettent maintenant dcrire :
(K
1
L|
k
|)|
k+1
| |g

(x
k
)(
k+1
)| = |R
2
(
k
)|.
Cependant, le thorme de Taylor nous assure quil existe un K
3
> 0 tel que |R
2
(
k
)|
K
3
|
k
|
2
, et donc, on a
(K
1
L|
k
|)|
k+1
| K
3
|
k
|
2
,
et donc
|
k+1
|
K
3
(K
1
L|
k
|)
|
k
|
2
,
ce qui complte la preuve puisque K
1
> 0 est une constante indpendante de
k
alors que
L|
k
| converge vers zro lorsque |
k
| sapproche de zro. Notons que nous pouvons mainte-
nant spcier rigoureusement ce que nous entendons par localement. En eet, nous avons
lassurance que |
k+1
| < |
k
| ds que
K
3
(K
1
L|
k
|)
|
k
| < 1,
qui est quivalent
|
k
| <
_
K
1
K
3
+ L
_
.
Commentaires
La preuve concise nest pas beaucoup plus brve pour ce rsultat, puisque on ne ncessite
que trois constantes pour exprimer le raisonnement.
1.8. ANALYSE DES APPROXIMATIONS POLYNMIALES 43
Exercice 1.7.1 [Mthode de Newton]
a) Fournissez un exemple (une fonction et un point de dpart) pour lequel lalgorithme
de Newton diverge.
b) Fournissez un exemple (une fonction et un point de dpart) pour lequel lalgorithme
de Newton oscille entre deux points.
c) Fournissez un exemple pour lequel lalgorithme de Newton converge vers une racine,
mais pour laquelle g

(x

) = 0 ; vriez que dans ce cas, la vitesse de convergence


asymptotique est seulement linaire.
d) Pour rsoudre une quation g(x) = 0, analysez la vitesse de convergence de lalgo-
rithme de Newton pour la famille de fonctions g(x) = x
p
+ x
(p+1)
proche de x

= 0,
une racine de g(x) ; distinguez les cas p = 1 et p 2.
*1.8 Analyse des approximations polynmiales
Nous prsentons dans cette section les analyses concises de la mthode de la scante ainsi
que lapproximation cubique de la fonction f.
1.8.1 Ordre de convergence de la mthode de la scante
Rappelons que la mthode de la scante est dcrite par la formule
x
k+1
= x
k
g(x
k
)
x
k
x
k1
g(x
k
) g(x
k1
)
.
Par le thorme de la moyenne, on sait que
x
k
x
k1
g(x
k
)g(x
k1
)
=
1
g

()
pour un certain entre x
k
et
x
k1
. Nous allons comparer x
k+1
au point qui aurait t obtenu par la formule de Newton :
x
k+1
= x
k

g(x
k
)
g

(x
k
)
+
g(x
k
)
g

(x
k
)

g(x
k
)
g

()
(1.6)
= x
N
+ g(x
k
)
g

() g

(x
k
)
g

(x
k
)g

()
(1.7)
Maintenant, dnotons
k
= x
k
x

, et utilisons les faits que x


N
x

O(
2
k
), que g(x
k
)
O(
k
), que x
k
O(
k1
), et donc, puisque g

est suppose continue, g()g(x


k
) O(
k1
)
pour crire

k+1
O(
2
k
+
k

k1
).
44 CHAPITRE 1. PRLIMINAIRES
Puisque
k
tend vers 0,
k

k1
doit dominer
2
k
, et si on suppose que asymptotiquement

k
=
a
k1
,
k+1
=
a
k
, on obtient la relation

a
2
k1
O(
a+1
k1
)
et donc a doit satisfaire la relation a
2
1 a = 0, dont la racine plus grande que lunit
est le nombre dor a = 1.618.
1.8.2 Ordre de convergence de lapproximation cubique de f
Un raisonnement intuitif pour obtenir lordre de convergence de la mthode de scante
consiste raliser que
k+1
= (
k
,
k1
), cest--dire que lerreur ltape k +1 est fonction
des erreurs aux tapes k et k1. Maintenant, si x
k
tend vers x
k1
, on retrouve la mthode de
Newton, donc est une fonction dordre 2. Puisque les rles de x
k
et x
k1
sont symtriques,
on arrive la conclusion que
k+1
O(
k

k1
).
Similairement, pour lapproximation cubique de f, on voit que si x
k1
tend vers x
k
, on a
un polynme de Taylor dordre trois, et la mthode rsultante aurait un ordre de convergence
cubique. La symtrie des rles de x
k
et x
k1
encore une fois permet de conclure que lerreur
obit une relation de la forme

k+1
O(
2
k

k1
+
k

2
k1
).
Encore une fois, on ne conserve que le terme dominant, on suppose que, asymptotiquement,

k
=
a
k1
, et on constate que a doit satisfaire la relation a
2
a 2 = 0, et donc que
lordre de convergence de la mthode base sur lapproximation cubique de la fonction f est
quadratique.
1.9 Algorithme combin
Nous avons tudi deux familles dalgorithmes : des algorithmes qui possdent la proprit
de convergence globale, et des algorithmes qui possdent la proprit de convergence locale
rapide. Nous avons voqu que lon devrait utiliser les algorithmes de type Newton ds que
lintervalle contenant un minimum local est assez petit. Nous allons prciser ce point.
Dans un premier temps, nous allons combiner litration de Newton avec la mthode de
bissection pour produire un algorithme robuste de rduction dintervalle qui possde un ordre
de convergence quadratique. Dans les chapitres subsquents, nous utiliserons cette stratgie
de combiner une mthode de type Newton une mthode robuste.
Ensuite, nous verrons que la mthode base sur lapproximation cubique de f peut tre
utilise pour rduire lintervalle, et possde galement un ordre de convergence quadratique.
1.9. ALGORITHME COMBIN 45
1.9.1 Algorithme de Newton modi
Lide est la suivante : nous allons retenir litration de Newton seulement lorsquelle
appartient lintervalle spci par lalgorithme de rduction dintervalle. Il est possible que
lintervalle ne soit pas rduit dautant que par la mthode de rduction dintervalle, mais la
vitesse de convergence asymptotique de la mthode de Newton nous assure que ses estims
seront bien meilleurs que ceux de la mthode de rduction dintervalle.
Bissection-Newton
{ Donns : x
0
et x
1
tels que f

(x
0
) f

(x
1
) < 0 et (f

(x
1
) f

(x
0
))(x
1
x
0
) > 0 ; }
{ un critre darrt, > 0 ; }
{ un seuil de rduction dintervalle,
1
2
< < 1. }
rpter
d
N
f

(x
1
)/f

(x
1
)
si (((x
0
x
1
)d
N
> 0) (d
N
/(x
0
x
1
) < ) ) alors x
+
x
1
+ d
N
sinon x
+
(x
0
+ x
1
)/2
si (x
1
> x
0
) alors
si (f

(x
+
) 0 ) alors x
0
x
1
; x
1
x
+
sinon x
1
x
+
sinon
si (f

(x
+
) 0 ) alors x
1
x
+
sinon x
0
x
1
; x
1
x
+
jusqu ( |x
1
x
0
| < (|f

(x
1
)| < f

(x
1
) > 0))
Algorithme 1.4: Rduit intervalle acclrbissectionNewton.
Pour tre vraiment intressant, lalgorithme combin devrait possder les proprits de
convergence globale de la mthode de bissection, et la vitesse de convergence asymptotique
de la mthode de Newton.
Thorme 1.9.1 Lalgorithme combin est assur dapprocher soit un minimum local de
f ou encore un point dinexion. Si f de classe C
3
et si le minimum local cern par
lalgorithme combin est tel que f

(x

) > 0, alors, en posant = 0, partir dun certain


point, x
+
sera toujours choisi gal x
N
.
Preuve Lalgorithme est assur dapprocher un minimum local ou un point dinexion
car f

(max(x
0
, x
1
)) demeure positif alors que f

(min(x
0
, x
1
)) demeure ngatif ou nul.
Supposons maintenant que lalgorithme engendre des intervalles qui cernent un minimum
local isol strict (thorme 1.3.5). Chaque extrmit des intervalles converge vers x

. En
46 CHAPITRE 1. PRLIMINAIRES
On observe que la fonc-
tion possde un minimum
isol en x = 0.6 ; ce-
pendant, lalgorithme de
Newton ne peut pas tre
utilis loin de x = 0.6
car la fonction est cour-
be vers le bas, condition
de une drive seconde
ngative.
0.65
0.7
0.75
0.8
0.85
0.9
0.95
1
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2
1
1
5x
2
6x+5
Figure 1.8 Fonction 1
1
5x
2
6x+5
gnral, soit x
0
ou x
1
est plus proche de x

. Sils sont gale distance, et que le point x


N
nest pas choisi, alors lalgorithme termine la prochaine itration avec f

(x

) = 0.
Puisque les intervalles diminuent, ventuellement, ce sera x
1
qui sera le plus proche de x

.
Puisque x
N
x

O(x
1
x

)
2
, si x
1
est susamment proche de x

, (x
1
x
N
)/(x
1
x
0
) <
1
2
< et le point x
N
est retenu. Dans ces conditions, la prochaine itration, le point x
N
devient le point x
1
, qui sera le point le plus proche de x

, et donc le point x
N
sera encore
retenu, et ainsi de suite. 2
Sur le tableau 1.3, on peut observer la rduction de lintervalle initial par des pas de
bissection, ainsi que la convergence quadratique des dernires itrations. En fait, mme en
x = 0, f

(x) < 0 et donc litration de Newton na pas de sens. Cependant, ds que x atteint
0.5, la combinaison Newton/bissection change automatiquement au prot de litration de
Newton, et seulement trois autres itrations sont requises pour identier le minimum local
la prcision de la machine, 10
16
.
Exercice 1.9.1 [Combinaisons dalgorithmes] Suite de lexercice 1.3.5 Considrez la fonc-
tion h() = 1 12 + 7.5
2

3
.
a) Appliquez lalgorithme de Fibonnacci pour rduire lintervalle [0, 3] qui contient un
minimum local un intervalle de longueur 1 + ;
1.10. RGION DE CONFIANCE 47
Iter x
0
x
1
f

(x
1
)
0 2.0000000000000000 2.0000000000000000 0.0828402366863905
1 2.0000000000000000 0.0000000000000000 0.2400000000000000
2 0.0000000000000000 1.0000000000000000 0.2500000000000000
3 1.0000000000000000 0.5000000000000000 0.0946745562130177
4 0.5000000000000000 0.6065573770491803 0.0064028281317895
5 0.6065573770491803 0.5999982373826895 0.0000017213059672
6 0.6065573770491803 0.6000000000000000 0.0000000000000000
Table 1.3 Itrations de lalgorithme combin sur la fonction 1
1
5x
2
6x+5
.
b) appliquez lalgorithme de la section dore pour rduire lintervalle [0, 3] qui contient
un minimum local un intervalle de longueur 1 + .
c) Eectuez une itration de Newton partir de = 0 ; cette itration se rapproche-t-elle
dun minimum local de h?
d) Eectuez une itration de Newton partir de = 3 ; cette itration se rapproche-t-elle
dun minimum local de h?
e) Vriez quen appliquant lalgorithme combin (avec = 0.9) partir de lintervalle
[
0
= 0,
1
= 3] (on tente une itration de Newton partir de
1
= 3), on passe la
mthode de Newton aprs seulement une utilisation de la bissection.
f) Vriez quen appliquant lalgorithme combin (avec = 0.9) partir de lintervalle
[
1
= 0,
0
= 3] (on tente une itration de Newton partir de
1
= 0), on passe la
mthode de Newton sans utiliser la bissection.
1.10 Rgion de conance
Une autre approche pour proter des mthodes de type Newton consiste revenir
la condition doptimalit de la proposition 1.5.1 page 29. Si f

(x

) > 0, alors dans un


voisinage de x

, f

(x) > 0 comme nous l vons vu. Cependant, en sloignant de x

, il est
fort possible que f

(x) < 0. La stratgie de combinaison avec lalgorithme de bissection


permet de contourner cette dicult. Une autre manire consiste dnir un voisinage de
x, |x| lintrieur duquel q
x
(d) est une bonne approximation de f(x+d)l et de calculer
le minimum (global) de q
x
(d) dans le voisinage. Il nest pas dicile de se convaincre que le
minimum est soit d
N
=
f

(x)
f

(x)
, soit d
m
= Delta, soit d
M
= Delta. Si f

(x) 0, le minimum
nest pas d
N
.
48 CHAPITRE 1. PRLIMINAIRES
La taille du voisinage est mise jour en utilisant la rduction prvue pred(x) =
q
x
(d)q
x
(0) et la rduction actuelle ared(x) = f(x+d)f(x) dans le rapport r(x) =
ared(x)
pred(x)
.
Si r(x) est trop petit, on rduit Delta sans modier x (par prudence) ; autrement on pose
x
+
x + d et si r(x) est assez grand, on peut se permettre daugmenter Delta.
Newtonrgion de conance(x, , , f)
{ Donns : x; }
{ un critre darrt, > 0 ; }
{ une fonction deux fois direntiable f ; }
{ une taille initiale de la rgion de conance. }
rpter
si (q() < q() ) alors d
R

sinon d
R

d
N
f

(x)/f

(x)
si (|d
N
| < q(d
R
) > q(d
N
) ) alors d
R
d
N
ared f(x) f(x + d)
pred q(0) q(d)
r
ared
pred
si (r < 0.25 ) alors /2
sinon
x x + d
R
si (r > 0.75 ) alors
2
jusqu ( |f

(x)| < )
Rsultat x
Algorithme 1.5: Newton avec rgion de conance.
La dmonstration de convergence de ce type de mthode est un peu plus complexe,
mais gardons en tte que lalgorithme 1.5 joue les rles combins de trouve_intervalle et
bissection-Newton. Nous dnotons x
k
et
k
les quantits une itration k.
Thorme 1.10.1 Si les points x
k
engendrs par lalgorithme demeurent dans un compact
K, avec f de classe C
2
dans K, et f

uniformment borne dans K, alors il existe un point


daccumulation x de la suite {x
k
}, et tout point daccumulation satisfait que f

( x) = 0 et
f

( x) 0.
Preuve La logique de la dmonstration est la suivante. Si pour k assez grand, r
k
> 0.25,
1.10. RGION DE CONFIANCE 49
Iter x |f

(x)| pred ared


0 2.0 0.0828402 1
1 1.0 0.25 2. 0.142467 0.1730769
2 1.0 0.25 1. 0.25 +0.1875
3 1.0 0.25 0.5 0.1875 +0.05
4 0.5 0.0946746 0.5 0.109375 0.0576923
5 0.6065574 0.0064028 1.0 0.0050441 0.0047867
6 0.5999982 0.0000017 2.0 0.0000210 0.0000210
7 0.6 0.0 4. 1.517 10
12
1.517 10
12
Table 1.4 Itrations de lalgorithme de rgion de conance sur la fonction 1
1
5x
2
6x+5
.
alors
k
ne converge pas vers 0 et on dduit le rsultat de condition doptimalit de la
proposition 1.5.1.
Autrement, le rapport r
k
=
ared(x
k
)
pred(x
k
)
est plus petit que 0.25 inniment souvent pour que

k
soit rduit au point de converger vers 0. Alors nous complterons la preuve par labsurde.
Si un point daccumulation x est tel que f

( x) = 0 et que
k
est susamment petit, r
k
sapproche forcment de un. Similairement, si un point daccumulation x est tel que f

( x) = 0
mais f

( x) < 0 et toujours
k
petit, alors r
k
sapproche forcment de un. Dans les deux cas,
une contradiction est tablie au fait que
k
0. 2
50 CHAPITRE 1. PRLIMINAIRES
Chapitre 2
Optimisation locale de fonctions
direntiables sans contrainte
Sujets du chapitre
Analyse des conditions doptimalit (quations ou inquations satisfaites pour toute solu-
tion du problme doptimisation).
Dduction dune famille dalgorithmes itratifs globalement convergents partir de la
violation des conditions doptimalit.
Prsentation de lalgorithme de Newton modi.
Algorithmes spcialiss aux fonctions quadratiques.
51
52 CHAPITRE 2. OPTIMISATION DIFFRENTIABLES SANS CONTRAINTE
Introduction
Les problmes doptimisation les plus simples sont ceux qui consistent minimiser (ou
maximiser) une fonction f : R
n
R o la fonction f est suppose dnie dans R
n
en entier,
et de plus de classe C
3
(R
n
). En fait, on suppose que f est susamment direntiable pour
viter les dicults dans lanalyse des algorithmes de solution. De plus, seuls les minima
locaux retiennent notre attention dans ce premier contact.
Les vecteurs de R
n
sont des vecteurs colonnes. Les gradients des fonctions f : R
n
R,
nots f(x) sont des vecteurs lignes. Une motivation pour cette notation est que le gradient
est en fait une application linaire de R
n
dans R
n
, donc situe dans le dual de R
n
. Bien que
les espaces euclidiens soient auto-duaux, il est commode de considrer le dual comme un
espace de vecteurs lignes.
La classe de tels problmes (aussi appels programmes non-linaires) peut sembler trop
simple pour tre vraiment utile et/ou intressante tudier. Cependant, ltude de cette
classe de problmes permet dintroduire les notions fondamentales qui seront utilises constam-
ment dans ltude de problmes plus gnraux, comme par exemple les problmes o la
fonction f nest plus assez direntiable pour permettre une analyse simple telle que nous
prsentons dans ce chapitre, ou encore la classe de problmes de minimisation dune fonction
dans un domaine restreint de R
n
.
Comme dans les chapitres suivants, nous analysons dabord les quations et inquations
nommes conditions doptimalit qui caractrisent une solution au problme tudi, et ensuite
nous dduisons des algorithmes itratifs partir de la non-ralisation de ces conditions
doptimalit.
2.1 Formulation du problme
nonons le problme que nous rsolvons dans ce chapitre. Il consiste trouver un point
x

qui minimise la fonction f dans R


n
:
f(x

) = min
xR
n
f(x),
ou encore trouver x

tel que
f(x

) f(x), x R
n
.
Comme nous lavons expliqu au chapitre prcdent, nous nous limitons une version locale
de ce problme, soit quil existe un voisinage V (x

) de x

tel que
f(x

) f(x), x V (x

).
Puisque la notion de voisinage entre de manire trs intime dans la dnition du problme,
on doit sattendre ce que la notion de proximit soit utilise dans lanalyse de sa solution.
2.2. CONDITIONS DOPTIMALIT 53
En gnral, lanalyse du problme de minimiser localement une fonction de n variables ne
peut pas se rduire lanalyse de la minimisation locale dune fonction dune seule variable.
On pourrait rcrire le problme ainsi :
f(x

) f(x

+ d), d V (0),
o d reprsente le dplacement de x

un point voisin, ou encore, en sparant la notion de


direction et la notion de distance du dplacement,
f(x

) f(x

+ d), d R
n
, d = 1, et < ,
o reprsente le diamtre dune boule centre en x

contenue dans V (x

). Cependant, nous
ne pouvons pas tablir dquivalence entre les restrictions unidimensionnelles et les problmes
originaux.
En fait, si x

est un minimum local de f, alors 0 est un minimum local de la fonction


dune seule variable h
x

,d
()
def
= f(x

+d), et ce quelle que soit la valeur de d R


n
telle que
d = 1. Cependant, la contrapose nest pas vraie, comme lillustre le programme suivant :
min(x
2
y)(x
2
4y),
pour lequel lorigine est un point stationnaire correspondant un point de selle. Pourtant,
le long de toute droite passant par lorigine, cette fonction possde un minimum local
lorigine !
2.2 Conditions doptimalit
Comme nous venons de le voir, en gnral, lanalyse du problme de minimiser localement
une fonction de n variables ne peut pas se rduire lanalyse de la minimisation locale dune
fonction dune seule variable. Malheureusement, dans la pratique, il est trs dicile de traiter
systmatiquement des exemples comme la fonction (x
2
y)(x
2
4y), et on se contente souvent
de caractrisations issues de lanalyse de la fonction univarie h
x

,d
.
2.2.1 Analyse du problme une seule variable
Penchons-nous sur le problme de minimiser une fonction relle h(). Supposons sans
perte de gnralit que nous tudions un minimum local de h situ en = 0. Exprimons h
en srie de Taylor autour de = 0 :
h() = h(0) + h

(0) +
h

(0)
2
2!
+
h

(0)
3
3!
+ . . . +
h
(j)
(0)
j
j!
+ . . .
54 CHAPITRE 2. OPTIMISATION DIFFRENTIABLES SANS CONTRAINTE
Supposons maintenant que les j 1 premires drives de h au point 0 sont toutes nulles, et
que la premire non-nulle est h
(j)
(0). Alors, en utilisant le thorme de Taylor, on a
h() = h(0) +
h
(j)
(0)
j
j!
+ R
j+1
(),
o R
j+1
() est le reste dordre j + 1. On voit donc que 0 est un minimum local si
h
(j)
(0)
j
j!
+
R
j+1
() est positif pour des valeurs susamment petites de ||. Dtaillons ce raisonnement.
Maintenant, toujours supposant que h est susamment (j +1 fois) direntiable, le reste
R
j+1
() satisfait la borne
K
1
: |R
j+1
()| K
1
|
j+1
|.
Plus prcisment, rappelons que lorsque les fonctions sont susamment direntiables, le
reste scrit
R
j+1
() =
h
(j+1)
()
j+1
(j + 1)!
,
o comme laccoutume, = avec 0 1. Puisque h est susamment direntiable,
h
(j+1)
est une fonction continue, et donc, borne ; en fait, quelle que soit la borne que lon
ait en tte de la forme |h
(j+1)
(0)| +, il existe un

> 0 tel que si || < , alors |h


(j+1)
()| <
|h
(j+1)
(0)| + . En dautres termes, si une fonction est continue lorigine, alors, pas trop
loin de lorigine, () ne sera pas beaucoup plus grand que (0). Supposons donc maintenant
= 1 de sorte que si || <
1
, on a la garantie que |h
(j+1)
()| < |h
(j+1)
(0)| +1. Donc, on peut
prendre K
1
=
1
(j+1)!
(|h
(j+1)
(0)| + 1).
Intressons-nous maintenant au signe de la quantit
h
(j)
(0)
j
j!
+R
j+1
() qui peut se rcrire

j
j!
_
h
(j)
(0) +
h
(j+1)
()
(j + 1)
_
. (1)
Puisque nous avons fait lhypothse que les j 1 premires drives de h taient nulles et
que la j
ime
est non-nulle, vrions que le signe de (h
(j)
(0) +
h
(j+1)
()
(j+1)
) est donn par le signe
de h
(j)
(0) lorsque est assez petit, et prcisons ce que nous entendons par assez petit.
Pour ce faire, argumentons que si h
(j)
(0) domine
h
(j+1)
()
(j+1)
en valeur absolue, ce dernier
terme ne peut pas faire changer le signe de la somme, donn par le signe du premier terme.
crivons donc
|h
(j)
(0)| >

h
(j+1)
()
(j + 1)

h
(j+1)
()
(j + 1)

||.
Donc, si
|| <
(j + 1)|h
(j)
(0)|
|h
(j+1)
()|
,
2.2. CONDITIONS DOPTIMALIT 55
la somme des deux termes est du mme signe que le premier terme h
(j)
(0). Utilisons main-
tenant la borne que nous avons trouve, qui assure que si <
1
, |h
(j+1)
()| < |h
(j)
(0)| + 1
pour crire que si
|| <
(j + 1)|h
(j)
(0)|
|h
(j+1)
(0)| + 1
,
alors forcment
|| <
(j + 1)|h
(j)
(0)|
|h
(j+1)
()|
,
condition bien sr que || <
1
. Par consquent, le signe de la somme est donn par le signe
de h
(j)
(0) ds que
|| < min
_

1
,
(j + 1)|h
(j)
(0)|
|h
(j+1)
(0)| + 1
_
.
Dans ces conditions, le signe que nous voulions tudier, de lquation (1), est le mme que
le signe de h
(j)
(0)
j
.
Maintenant, observons que j doit tre pair, car autrement, h
(j)
(0)
j
serait ngatif si
tait de signe oppos h
(j)
(0). Nous venons donc de dduire que la premire drive de h en
un minimum local est dordre pair. Si j est pair, alors h
(j)
(0)
j
est positif condition que
h
(j)
(0) soit positif. Nous venons donc de dduire que cette drive dordre pair doit avoir une
valeur positive.
Thorme 2.2.1 Une condition ncessaire et susante pour quune fonction analytique
h : R R possde un minimum local en est que la premire drive non nulle de h en
soit dordre pair, et de valeur positive.
*Exercice 2.2.1 [Extension des conditions doptimalit] Le thorme 2.2.1 concerne la
minimisation sans aucune restriction sur . Considrons le problme min
ab
h(). Si un
point
0
est dans lintrieur de lintervalle [a, b], alors le thorme sapplique directement ;
lorsque
0
= a ou
0
= b, il sut que h soit croissante (en a) ou dcroissante (en b) pour
avoir un minimum local sous contrainte : en eet, on ne compare a quavec des valeurs
a. Obtenez une condition ncessaire et susante pour que a ou b soient des minima
locaux de h.
2.2.2 Conditions doptimalit pour un problme n variables
Comme nous lavons exprim plus haut, on se contente frquemment de conditions dop-
timalits dduites de lanalyse de problmes univaris. Nous explorons dans cette section les
implications du thorme 2.2.1 lorsquappliqu aux fonctions h
x

,d
, quelle que soit la valeur
de d R
n
.
56 CHAPITRE 2. OPTIMISATION DIFFRENTIABLES SANS CONTRAINTE
Exercice 2.2.2 [Drives de h] Obtenez les expressions des deux premires drives de
h
x,d
() par rapport .
Il est bon de se familiariser une bonne fois pour toutes avec la drivation de fonctions
vectorielles.
Exercice 2.2.3 [Formules de drivation vectorielle]
a) Soit c = (c
1
, . . . , c
n
) et la fonction linaire f(x) = cx = (c
1
, . . . , c
n
)
_
_
_
_
x
1
.
.
.
x
n
_
_
_
_
=

n
i=1
c
i
x
i
. Vriez que f(x) = c.
b) Soient c = (c
1
, . . . , c
n
) et Q =
_
_
_
_
_
_
Q
11
. . . Q
1n
Q
21
. . . Q
2n
.
.
.
.
.
.
.
.
.
Q
n1
. . . Q
nn
_
_
_
_
_
_
, avec Q
ij
= Q
ji
, donc Q est une
matrice symtrique. Pour la fonction quadratique f(x) =
1
2
x
t
Qx + cx, vriez que
f(x) = x
t
Q+ c.
c) On veut parfois trouver le point qui minimise la norme dune fonction vectorielle
F(x) =
_
_
_
_
F
1
(x)
.
.
.
F
m
(x)
_
_
_
_
o x R
n
. On a donc un vecteur de m fonctions F dont le
paramtre x est de dimension n, et n nest pas forcment gal m. Vriez que
pour f(x) =
1
2
F(x)
2
2
, f(x) = F(x)
t
F(x), o F reprsente le Jacobien de
F, et est constitu par les gradients des lments de F, F =
_
_
_
_
F
1
(x)
.
.
.
F
m
(x)
_
_
_
_
=
_
_
_
_
_
F
1
(x)
x
1
. . .
F
1
(x)
xn
.
.
.
.
.
.
.
.
.
Fm(x)
x
1
. . .
Fm(x)
xn
_
_
_
_
_
Dans tous les cas, le thorme 2.2.1 nous informe que h

,d
(0) doit tre nulle, et ce pour
tout d dans R
n
. Voyons ce que a implique.
h

,d
(0) = f(x

)d.
2.2. CONDITIONS DOPTIMALIT 57
-10
-5
0
5
10-10
-5
0
5
10
0
20
40
60
80
100
120
140
160
180
200
x
y
-10
-5
0
5
10-10
-5
0
5
10
-200
-180
-160
-140
-120
-100
-80
-60
-40
-20
0
x
y
-10
-5
0
5
10-10
-5
0
5
10
-100
-80
-60
-40
-20
0
20
40
60
80
100
x
y
Remarquez les lignes
de niveau constant des
fonctions : les lignes de
niveau sont les mmes
quil sagisse dun maxi-
mum (f(x, y) = x
2
y
2
,
droite) ou dun mini-
mum (f(x, y) = x
2
+ y
2
,
en haut gauche), et
dcrivent des ellipses
concentriques ; on dis-
tingue les asymptotes de
la selle (f(x, y) = x
2
y
2
,
en bas gauche)
Figure 2.1 Points stationnaires
En fait, h

,d
(0) reprsente la drive directionnelle de f en x

dans la direction d. Si f(x

)d
doit sannuler pour tout d R
n
, en particulier, il doit sannuler pour d = f(x

)
t
, et donc
f(x

) = 0, et f(x

) = 0, ce qui constitue la condition doptimalit de premier ordre.


Remarquons que la recherche de minima locaux de f peut dbuter par la recherche
de racines de lquation f(x) = 0 ; comme dans le cas dune fonction relle dune seule
variable relle, de telles racines sont nommes points stationnaires pour le problme min f(x).
Nous discuterons plus loin des gains que nous pouvons eectuer en sachant que lquation
f(x) = 0 provient dun problme doptimisation.
En plus que h

(0) soit nulle, le thorme nous informe quil faut que la premire drive
non nulle de h soit dordre pair. Interprtons cette notion pour la seconde drive de h
x

,d
.
h

,d
(0) = d
t

2
f(x

)d.
Cest la drive seconde directionnelle de f en x

dans la direction d. Si x

est un minimum
local de f, daprs le thorme 2.2.1, cette drive est soit nulle, ou encore positive. Par
ailleurs, si cette drive est positive quel que soit d R
n
, daprs le thorme 2.2.1, nous
sommes assurs que x

est un minimum local de f. Dans tous les cas, si cette drive est
ngative, x

nest certainement pas un minimum local de f.


58 CHAPITRE 2. OPTIMISATION DIFFRENTIABLES SANS CONTRAINTE
Il dcoule des proprits (dnitions) des matrices symtriques que d
t

2
f(x

)d est posi-
tive (non-ngative) quel que soit d R
n
si et seulement si la matrice symtrique
2
f(x

)
est une matrice dnie positive (semi-dnie positive).
Dnition 2.2.1 Une matrice symtrique n n Q est dite dnie positive si quel que soit
v R
n
, v = 0, v
t
Qv > 0 ; elle est semi-dnie positive si v R
n
, v = 0, v
t
Qv 0.
Dnition 2.2.2 Une matrice O est dite orthogonale si O
t
O = , o est une matrice
diagonale ; elle est dite orthonormale si la matrice est lidentit ; dans ce cas, on constate
que O
1
= O
t
.
Thorme 2.2.2 Soit Q une matrice dnie positive. Alors,
les valeurs propres de Q sont toutes positives ;
il existe une matrice orthonormale O telle que O
t
QO = , la matrice tant une
matrice diagonale dont les lments sont les valeurs propres de Q, et donc positifs.
Si Q est semi-dnie positive, les valeurs propres sont non-ngatives, et la matrice diagonale
comporte des lments non-ngatifs.
Exercice 2.2.4 [Rappels dalgbre linaire]
a) Soit une matrice A mn. Si m > n, alors le systme dquations Ax = b ne possde
pas, en gnral, de solution. On peut cependant rechercher un x qui minimise la norme
de Axb et ainsi formuler le problme de moindres carrs suivant : min
x
1
2
Axb
2
2
.
Dveloppez ce problme sous la forme min
x
1
2
x
t
Qx + cx et identiez clairement Q et
c.
b) Vriez que la matrice Q en a) est symtrique et semi-dnie positive.
c) Justiez que si une matrice Q semi-dnie positive est inversible, alors elle est forc-
ment dnie-positive.
d) Sous quelle condition (en termes de la matrice A et du vecteur b) la matrice Q en a)
est-elle dnie positive ?
Avant de poursuivre, voici un nonc du thorme de Taylor multidimensionnel. Dabord,
pour une fonction f : R
n
R, nous nonons un dveloppement dordre 2.
Thorme 2.2.3 Soit une fonction f : R
n
R de classe C
3
au voisinage dun point x
0
;
on peut approcher la valeur de la fonction en un point voisin x
0
+ d de x
0
par une fonction
polynomiale de degr 2
f(x
0
+ d) P(d) = f(x
0
) +f(x
0
)d +
1
2
d
t

2
f(x
0
)d.
2.2. CONDITIONS DOPTIMALIT 59
De plus, on peut estimer lerreur commise par un reste :
f(x
0
+ d) P(d) O(d
3
).
Si f est seulement de classe C
2
, mais toutefois
2
f est une fonction Lipschitz, on a la borne :
f(x
0
+ d) P(d) o(d
2
).
Maintenant, pour une fonction F : R
n
R
m
, nous nonons un dveloppement dordre un.
Thorme 2.2.4 Soit une fonction F : R
n
R
m
de classe C
2
au voisinage dun point x
0
;
on peut approcher la valeur de la fonction en un point voisin x
0
+ d de x
0
par une fonction
polynomiale de degr un
F(x
0
+ d) P(d) = F(x
0
) +F(x
0
)d.
De plus, on peut estimer lerreur commise par un reste :
F(x
0
+ d) P(d) O(d
2
).
Si F est seulement de classe C
1
, mais toutefois F est une fonction Lipschitz, on a la borne :
F(x
0
+ d) P(d) o(d).
Nous limitons ces dveloppements an de pouvoir en exprimer les termes par des expressions
ne comportant que des scalaires, vecteurs et matrices.
Remarque 2.2.1 Le thorme de la moyenne 1.3.3 nest pas valide pour des fonctions de
F(x) : R
n
R
m
. Par consquent, lexpression de lerreur du dveloppement de Taylor du
thorme 1.3.4 non plus. Cependant, une version plus faible du thorme de la moyenne
stipule que F(b) F(a) O(b a). Ainsi, la forme du thorme 1.6.1 peut tre utilise.
Pour des problmes n variables, il est dicile de fournir soit des interprtations, soit
des formules algbriques pour les drives dordre suprieur deux de la fonction h
x

,d
. Par
consquent, nous nous contenterons de la caractrisation (incomplte) suivante des minima
locaux de f :
Thorme 2.2.5 Soit une fonction f : R
n
R de classe C
2
; si x

est un minimum local


de f, alors f(x

) = 0 et
2
f(x

) est une matrice semi-dnie positive ; loppos, si


f(x

) = 0 et
2
f(x

) est une matrice dnie positive, alors x

est un minimum local de


f.
60 CHAPITRE 2. OPTIMISATION DIFFRENTIABLES SANS CONTRAINTE
Preuve La condition ncessaire dcoule de la discussion prcdente concernant les deux
premires drives de la fonction h
x

,d
en 0.
Nous prsentons maintenant une preuve en supposant que f est de classe C
3
, laissant en
exercice la preuve dans le cas o f est seulement de classe C
2
.
Si f(x

) = 0 et
2
f(x

) est une matrice dnie positive, alors, puisque f est de classe


C
3
, on peut crire un dveloppement de Taylor avec reste de la forme, o d est unitaire,
d = 1 :
f(x

+ d) f(x

) = f(x

)d +
1
2

2
d
t

2
f(x

)d +O(
3
)
=
1
2

2
d
t

2
f(x

)d +O(
3
);
Puisque
2
f(x

) est dnie positive, il existe une constante positive K telle que d


t

2
f(x

)d >
K, do
f(x

+ d) f(x

) > K
1
2

2
+O(
3
) =
2
(
K
2
+O()).
Cette dernire quantit est positive si est assez petit. 2
Corollaire 2.2.1 Soit une fonction f : R
n
R; si x

est un maximum local de f, alors


f(x

) = 0 et
2
f(x

) est une matrice semi-dnie ngative ; loppos, si f(x

) = 0 et

2
f(x

) est une matrice dnie ngative, alors x

est un maximum local de f.


Remarquons que le thorme 2.2.5 nest pas aussi fort que le thorme 2.2.1. En eet, il
ne permet pas de distinguer le problme min x
4
+y
4
du problme min x
4
y
4
car en 0, point
stationnaire des deux problmes, le hessien de chacun des problmes sannule, et il faudrait
examiner leur drives dordre suprieur.
Lanalyse pour des fonctions C
2
kutilise une proprit des matrices.
Thorme 2.2.6 Les valeurs propres dune matrice M sont des fonctions continues des
lments de la matrice M
Remarquons que la continuit des valeurs propres nimplique pas, en gnral, la continuit
des vecteurs propres associs sauf si les valeurs propres sont distinctes.
Exercice 2.2.5 [Minima forts] Soit f : R
n
R de classe C
2
; si x

est un minimum
local de f, montrez quun point qui satisfait aux conditions susantes de second ordre est
un minimum local strict et isol. Vous pouvez utiliser le thorme 2.2.6 pour assurer que

2
f(x

) demeure dnie positive dans un voisinage appropri de x

2.2. CONDITIONS DOPTIMALIT 61


Pour la classe de fonctions convexes, tous les points stationnaires sont des minima. En
voici la dnition.
Dnition 2.2.3 Une fonction f : R
n
R est dite convexe si pour tout couple de points
x, y, et pour toute valeur de (0, 1), on a f(x + (1 )y) f(x) + (1 )f(y) ; la
fonction est dite strictement convexe si lingalit est stricte.
Les fonctions convexes jouissent de nombreuse proprits, et en fait, lanalyse convexe
est une discipline par elle-mme. Citons tout de mme deux rsultats intressant ce stade
de notre tude.
Thorme 2.2.7 Tout point stationnaire dune fonction convexe f est un minimum local ;
une fonction strictement convexe ne possde quun seul minimum local strict et isol.
Thorme 2.2.8 Une fonction deux fois direntiable f est convexe si et seulement si

2
f(x) est une matrice semi-dnie positive pour tout point x; si
2
f(x) est une matrice
dnie positive pour tout x, alors f est strictement convexe.
Exercice 2.2.6 [Points stationnaires] Considrez la fonction f(x) = (x
1
+ x
2
)
2
+ (2(x
2
1
+
x
2
2
1)
1
3
)
2
.
a) Vriez que lorigine ainsi que le point (
_
7
12
,
_
7
12
) constituent des points station-
naires de f.
b) Dterminez la nature de chacun de ces points stationnaires.
Exercice 2.2.7 [Gomtrie] Considrez deux droites dquations paramtriques x(t
1
) =
o
1
+ t
1
d
1
et x(t
2
) = o
2
+ t
2
d
2
. On cherche trouver les points sur les droites les plus
proches, permettant de donner la distance entre les droites. On minimise donc f(t) =
x
1
(t
1
) x
2
(t
2
)
2
par rapport t, de dimension deux. Utilisez les conditions doptimalit
pour trouver une expression pour t

R
2
, et vriez que cest bel et bien un minimum
local.
Exercice 2.2.8 [Point de selle] Nous avons prsent plus haut (gure 2.2) la fonction
(x
2
y)(x
2
4y) pour laquelle lorigine nest quun point de selle, mais constitue un
minimum local de la fonction objectif le long de toute droite passant par lorigine. Cet
exercice approfondi ltude de ce problme.
62 CHAPITRE 2. OPTIMISATION DIFFRENTIABLES SANS CONTRAINTE
Lorigine est un point de
selle de la fonction
(x
2
y)(x
2
4y).
Cependant, lorigine est
un minimum local de la
restriction de cette fonc-
tion toute droite pas-
sant par lorigine ; sur la
gure, on voit bien quau-
cune droite passant par
lorigine ne pntre loca-
lement dans la zone nga-
tive de la fonction
-2
-1
0
1
2
-2
-1
0
1
2
3
4
5
0
20
40
60
80
100
X
Figure 2.2 Point de selle
a) Vriez que lorigine est un point stationnaire de la fonction f(x, y) = (x
2
y)(x
2

4y) : f(0, 0) = 0.
b) Considrez la fonction relle h
d
()
def
= f(d
x
, d
y
). Vriez que quel que soit d avec
d
y
= 0, h

d
(0) = 0 et h

d
(0) > 0.
c) Pour un vecteur d quelconque, identiez une valeur
d
> 0 pour laquelle h
d
() 0
pour toute valeur de satisfaisant ||
d
.
d) Vriez que f(x, y) 0 pour tous les points satisfaisant x
2
= 2y.
Exercice 2.2.9 [Moindres carrs] Dans cet exercice, nous explorons un problme dajuste-
ment de fonction. Les valeurs suivantes de x et y sont donnes :
x 0 1 2 3
y 0 0 3 9
On souponne quune relation dordre 3 relie x y, et on envisage un modle du type
y = a
0
+ a
3
x
3
.
a) Formulez le problme didentier les valeurs de a
0
et a
3
qui minimisent la somme des
carrs des dirences entre le modle et les donnes.
2.3. DDUCTION DUNE CLASSE DALGORITHMES ITRATIFS 63
b) Exprimez les conditions doptimalit (ncessaires et susantes, de premier et second
ordre) du problme en a).
c) En supposant que a
0
= 0, donc que la relation recherche est purement cubique,
calculez la valeur de a
3
. Cette supposition semble raisonnable puisque pour x = 0,
y = 0.
d) Est-ce que les conditions susantes doptimalit sont satisfaites pour la solution du
problme de dimension un en c) ?
e) Calculez les valeurs de a
0
et a
3
du modle en a). Est-ce que les conditions susantes
doptimalit sont satisfaites ?
2.3 Dduction dune classe dalgorithmes itratifs
Dans cette section, nous construisons une famille dalgorithmes itratifs pour calculer
un minimum local dune fonction f. La base de notre tude est la suivante : si un point
x ne satisfait pas aux conditions doptimalit, il est possible de produire un autre point, x
pour lequel f( x) < f(x). Cette famille dalgorithmes porte le nom de mthodes de descente.
La disponibilit de mthodes de descentes pour les problmes doptimisation en fait des
problmes privilgis, permettant dobtenir des proprits de convergence plus fortes que
pour des problmes dquations non-linaires F(x) = 0 lorsque F = f, pour une certaine
fonction relle f. En eet, moins daccepter des hypothses assez fortes sur une application
F, il est dicile de construire un algorithme dont la convergence vers un zro soit assure. De
tels algorithmes prennent la formes ditrations de points xes, et seront explors plus loin.
Pour linstant, nous exploitons la structure doptimisation de nos problmes pour construire
une classe dalgorithmes assurs de converger vers un point stationnaire quel que soit le point
de dpart x
0
utilis.
Supposons que nous disposions dun point x qui nest pas un minimum local de la fonction
f. Alors, au moins une des deux conditions suivantes nest pas vrie :
1. f(x) = 0, ou
2.
2
f(x) est une matrice semi-dnie positive.
Dans les deux sous-section suivante, nous exploitons la premire des conditions prcdentes.
2.3.1 Recherche de points stationnaires
Supposons pour linstant que nous nous contentons de calculer un point stationnaire,
satisfaisant f(x) = 0 ; donc, nous ne nous proccupons pas de la condition 2 ci haut. En
fait, cette seconde condition sera tudie plus loin, la section 2.3.3.
64 CHAPITRE 2. OPTIMISATION DIFFRENTIABLES SANS CONTRAINTE
Donc, f(x) = 0. En se rfrant au thorme 2.2.1, on constate que lensemble des
d R
n
pour lesquels h

x,d
< 0 satisfait la relation
f(x)d < 0,
et cet ensemble est nomm DED(x), cest--dire le Demi Espace de Diminution de la fonction
f en x. La famille des algorithmes de descente utilisera donc des directions de dplacement
d DED(x). En fait, nous navons pas encore spci la forme gnrale des algorithmes
que nous tudierons ci-aprs. Il sagit dalgorithmes de descente qui ont tous la mme forme,
consistant calculer dabord une direction dans le DED(x), et ensuite minimiser (ap-
proximativement) la fonction h
x,d
() pour passer au point suivant x
+
= x + d. Nommons
ce passage de x x
+
A(x), de telle sorte que x
+
= A(x). Les proprits lmentaires de d
et de la minimisation (approximative) de h
x,d
nous assurent que f(x
+
) = f(A(x)) < f(x).
Cependant, en analysant lapplication A qui engendre une suite x
k+1
= A(x
k
), il faudra
introduire dautres notions pour garantir que la suite {x
k
} possde bel et bien des points
daccumulation qui sont stationnaires (qui satisfont f(x) = 0). Avant dapprofondir cette
tude, nonons le schma algorithmique que nous analyserons, et observons un exemple
simple dun algorithme typique.
Itration de descente
{ Donns : x
0
, > 0 et 0 < M < }
termin faux
born vrai
x x
0
tantque ( termin born )
d direction(f, x)
{ h

x,d
< 0. }

arg min h
x,d
()
x x +

d
termin f(x)
born x < M
Algorithme 2.1: Descente simplie.
Examinons un exemple : minimisons la fonction quadratique f(x, y) = 2x
2
2xy +y
2
+
2x2y en utilisant le choix d = f(x)
t
comme direction de descente. Puisquil sagit dune
fonction quadratique, on peut calculer le pas

exactement : notons f(x) = 0.5x


t
Qx + cx,
o dans lexemple, Q =
_
4 2
2 2
_
et c = ( 2 2 ) ; alors, f(x) = x
t
Q+c. Les conditions
doptimalit pour min
>0
f(x + d) sont donnes par f(x + d)d = 0, ce qui se simplie
2.3. DDUCTION DUNE CLASSE DALGORITHMES ITRATIFS 65
Iter
_
x
y
_
f(x, y) f(x, y)
0
_
10.000000
5.000000
_
135.000000 0.197297 ( 32.00000 12.00000 )
1
_
3.686486
7.367568
_
19.778378 1.073529 ( 2.01081 5.362162 )
2
_
1.527822
1.611129
_
2.174566 0.197297 ( 4.889030 1.833386 )
3
_
0.563229
1.972851
_
0.514983 1.073529 ( 0.307216 0.819243 )
4
_
0.233424
1.093370
_
0.925898 0.197297 ( 0.746957 0.280109 )
Table 2.1 Itrations de lalgorithme du gradient sur la fonction f(x, y) = 2x
2
2xy +y
2
+
2x 2y.
f(x)d + d
t
Qd = 0, ou encore

=
f(x)d
d
t
Qd
.
Pour notre exemple, on a de plus d = f(x)
t
de sorte que

=
f(x)
2
f(x)Qf(x)
t
.
Appliquons maintenant lalgorithme partir du point initial (10, 5)
t
. En ce point, f(10, 5) =
( 32 12 ) et le calcul de donne

= 0.197297. Le prochain point engendr est donc le


point
_
10
5
_
+ 0.197297
_
32
12
_
=
_
3.686486
7.367568
_
. La suite des itrations est donne dans
le tableau 2.1. On peut observer la nature cyclique de cet algorithme, connu sous le nom
dalgorithme du gradient, ou encore de la pente la plus forte. toutes les itrations paires
les dplacements sont parallles et les valeurs du pas

sont les mmes. Cette proprit sera


exploite la section 2.6.2.
Exercice 2.3.1 [Algorithme du gradient]
a) Pour la fonction f(x, y) = 2x
2
2xy + y
2
+ 2x 2y, vriez que si une certaine
tape k lalgorithme atteint le point
_
0
1 1/5
k
_
, alors ltape k +2, il aura atteint
le point
_
0
1 1/5
k+1
_
.
66 CHAPITRE 2. OPTIMISATION DIFFRENTIABLES SANS CONTRAINTE
Le point (0,1) est un mi-
nimum local de la fonc-
tion f(x, y) = 2x
2

2xy + y
2
+ 2x 2y. Lal-
gorithme 2.1 est amorc
en (10, 5) et engendre les
points suivants :
(3.69, 7.37)
(1.53, 1.61)
(0.56, 1.97)
(0.23, 1.09)
.
.
.
*
-10
-5
0
5
10
X
-10
-5
0
5
10
Y
0
100
200
300
400
500
600
Figure 2.3 Exemple de lalgorithme
b) Pour la fonction x
2
+2y
2
+4x+4y, vriez par induction que lalgorithme du gradient
amorc lorigine engendre la suite
_
2
3
k
2
_

1
3
_
k
1
_
. Dduisez-en le minimum de la
fonction.
2.3.2 Conditions pour la convergence
Notre but est maintenant de produire une suite de points {x
k
} dont les points daccumu-
lation sont stationnaires, et ce quel que soit le point de dpart x
0
de la suite. Nous utiliserons
pour ce faire le fait que nous tentons de minimiser une fonction f, ce qui nous aide valuer
la qualit relative de deux points conscutifs de la suite.
Plusieurs auteurs ont propos des schmas danalyse pour des algorithmes de descente.
Le moins restrictif de ceux-ci a t propos par Zangwill. Simpli pour notre contexte de
minimisation sans contrainte, il snonce ainsi :
Si lapplication A qui dcrit le passage de x
k
x
k+1
est continue, et si f(x
k+1
) <
f(x
k
), alors les points daccumulation de la suite {x
k
}, sil y en a, sont station-
naires pour le problme min f(x).
Bien qutant une caractrisation favorite de lauteur, nous ne lapprofondirons pas main-
tenant, car nous donnerons la prfrence un schma danalyse moins abstrait, plus facile-
ment applicable directement, et d Wolfe.
2.3. DDUCTION DUNE CLASSE DALGORITHMES ITRATIFS 67
Zne des directions
susamment descendantes
f(x)
0f(x)
1f(x)
Nous voyons une inter-
prtation gomtrique
des deux conditions de
la dnition 1.1. La
premire nous assure que
d nous conduit rduire
lapproximation linaire
de f au moins autant
que
0
f ; la seconde
nous assure que d nest
pas plus que
1
fois plus
longue que f
Figure 2.4 Direction susamment descendante
Pour noncer ce schma danalyse, nous avons besoin des conditions suivantes qui carac-
trisent les directions d et les pas conjointement qui assurent que les points daccumulation
de la suite engendre par un algorithme de descente les utilisant sont tous stationnaires.
Dnition 2.3.1 Une direction d est considre susamment descendante sil existe deux
constantes positives
0
et
1
indpendantes de x telles que d satisfasse aux ingalits sui-
vantes :
f(x)d
0
f(x)
2
;
d
1
f(x).
La dnition prcdente nous assure que toute direction d utilise par un algorithme de
descente est un vecteur assez long, et fait un angle assez aigu avec loppos de f. Il est
clair que d = f(x)
t
satisfait la dnition prcdente.
Exercice 2.3.2 [Direction de loppos du gradient] Justiez que la direction d = f(x)
t
satisfait aux conditions de la dnition 2.3.1 ; pour quelles valeurs de
0
et
1
?
68 CHAPITRE 2. OPTIMISATION DIFFRENTIABLES SANS CONTRAINTE
Exercice 2.3.3 [Gomtrie des directions] Quel est langle le plus grand entre une direc-
tion d et loppos du gradient tel que la direction satisfasse la dnition 2.3.1 ? Langle est
fonction de
0
et
1
.
Dnition 2.3.2 Un pas est dit admissible pour une direction susamment descendante
d lorsquil satisfait aux deux ingalits suivantes, nommes critre dArmijo et de Wolfe
respectivement :
f(x + d) f(x)
0
f(x)d,
0
]0,
1
2
[, (Armijo)
f(x + d)d
1
f(x)d,
1
]
0
, 1[, (Wolfe)
o
0
et
1
sont des paramtres xs pour dterminer ladmissibilit dun pas. Lensemble
des valeurs admissibles de sera not .
Exercice 2.3.4 [Pas admissible] Suite de lexercice 1.9.1. Considrez la fonction h() =
1 12 + 7.5
2

3
.
a) Pour quelles valeurs de
0
le critre dArmijo est-il satisfait pour le minimum local
situ dans lintervalle [0, 3] ?
b) Explicitez le(s) intervalle(s) de pas admissible(s) pour des valeurs de
0
= 0.25 et

1
de votre choix.
Lexistence de pas admissibles est cruciale pour lobtention dun algorithme bien dni,
et fait lobjet du
Thorme 2.3.1 Soit f C
2
(R
n
), et d satisfaisant la dnition 2.3.1. Alors, si h
x,d
()
est borne infrieurement, lintrieur de lensemble des pas admissibles est non-vide.
Non seulement existe-t-il des pas admissibles, mais puisque lintrieur de est non vide,
on peut esprer dvelopper un algorithme qui identie un lment de en un nombre ni
de calculs. La preuve de ce thorme sera prsente un peu plus loin.
Avec ces deux dnitions, nous sommes en mesure de dmontrer le thorme de conver-
gence globale suivant, sachant quun algorithme utilisant des directions susamment des-
cendantes et des pas admissibles est bien dni.
2.3. DDUCTION DUNE CLASSE DALGORITHMES ITRATIFS 69
h(0) +
0
h

(0)
h(0) +
1
h

(0)
h(0) + h

(0)

Critre de Wolfe
Pas admissible
Critre dArmijo
h()
On voit que les pas
qui satisfont aux condi-
tions de la dnition 2.3.2
constituent un ensemble
dintervalles dans lesquels
f est assez petite alors
que ses drives direction-
nelles sont assez grandes
Figure 2.5 Pas admissible
70 CHAPITRE 2. OPTIMISATION DIFFRENTIABLES SANS CONTRAINTE
Thorme 2.3.2 Soit un algorithme de descente appliqu au problme
min
xR
n
f(x), f C
1
(R
n
);
supposons qu chaque itration la direction utilise d
k
est une direction susamment des-
cendante, et pour lequel le pas utilis dans cette direction est un pas admissible ; alors,
tous les points daccumulation de la suite {x
k
} engendre par lalgorithme sont des points
stationnaires pour le problme min f(x).
Preuve Supposons que la suite {x
k
} possde au moins un point daccumulation x. Alors,
par ladmissibilit des pas
k
utiliss dans lalgorithme, f(x
k
) > f( x), et ce pour tout k.
Donc, f(x
k
) est une suite de nombres rels monotone dcroissante, et borne infrieurement
par f( x). Par le thorme de Cauchy, f(x
k+1
) f(x
k
) converge vers zro. Donc,
lim
k
f(x
k+1
) f(x
k
) = lim
k
f(x
k
+
k
d
k
) f(x
k
) = 0,
et en utilisant la condition dArmijo, ceci entrane que
lim
k

k
f(x
k
)d
k
= 0.
Alors, la premire des conditions de la dnition 2.3.1 nous assure que
0

k
f(x
k
)d
k

0
f(x
k
)
2
< 0. Ainsi, il se peut que
k
converge vers 0, ou encore que f(x
k
)
converge vers 0. Supposons que
k
converge vers 0. Alors, la seconde condition de la dni-
tion 2.3.1 nous assure que 0 <
k
d
k

1

k
f(x
k
), et donc que
k
d
k
converge vers
zro. Donc, par la condition de Wolfe, on a
lim
k
f(x
k
+
k
d
k
)d
k
= lim
k
f(x
k
)d
k
lim
k

1
f(x
k
)d
k
,
ce qui entrane que lim
k
f(x
k
)d
k
= 0 puisque
1
< 1.
Maintenant, puisque f(x
k
)d
k
<
0
f(x
k
)
2
, daprs la dnition 2.3.1, on retrouve
0 = lim
k
f(x
k
)d
k

0
lim
k
f(x
k
)
2
,
et donc que lim
k
f(x
k
) = 0. Finalement, puisque f est une fonction continue,
f( x) = 0. 2
Un autre variante utilise le procd dArmijo qui consiste rechercher un pas qui
satisfait la premire condition dadmissibilit parmi les puissances de
1
2
; la premire de ces
puissances est loigne de zro par le procd plutt que par la condition dadmissibilit.
2.3. DDUCTION DUNE CLASSE DALGORITHMES ITRATIFS 71
Thorme 2.3.3 Soit un algorithme de descente appliqu au problme
min
xR
n
f(x), f C
1
(R
n
);
supposons qu chaque itration la direction utilise d
k
est une direction susamment des-
cendante, et pour lequel le pas utilis dans cette direction est la premire valeur de la suite
{1, 1/2, 1/4, . . . , (1/2)
m
. . .}
qui satisfasse au critre dArmijo ; alors, tous les points daccumulation de la suite {x
k
}
engendre par lalgorithme sont des points stationnaires pour le problme min f(x).
Preuve Imitons la preuve du thorme 2.3.2. Il est clair que nous aurons encore
lim
k

k
f(x
k
)d
k
= 0,
et que nous devons justier que si
k
converge vers zro (pour une certaine sous-suite), alors
ncessairement f(x
k
)d
k
converge vers 0. Supposons que f(x
k
)d
k
ne converge pas vers
zro. Alors,
k
converge vers zro, et donc, partir dun certain rang, on ne prend plus le
pas unitaire. Donc,
f(x
k
+ 2
k
d
k
) f(x) > 2
0

k
f(x
k
)d
k
. (2.1)
En dnotant
p
k
=
d
k
d
k

k
= 2
k
d
k
,
on a toujours que

k
converge vers zro. Puisque p
k
est normalis, la suite p
k
possde des
points daccumulation, et on peut extraire une sous-suite telle que p
k
converge vers p. De la
relation (2.1), on tire que
f(x
k
+

k
p
k
) f(x
k
)

k
>
0
f(x
k
)p
k
, (2.2)
et en prenant la limite dans (2.2), on retrouve
0 (1
0
)f( x) p,
et puisque
0
< 1,
0 f( x) p,
ce qui contredit le fait que les directions d
k
sont susamment descendantes, puisque p est la
normalisation de la limite dune sous-suite de directions d
k
. 2
Si lobjectif f est suppos de classe C
2
, une preuve plus simple permet de conclure.
72 CHAPITRE 2. OPTIMISATION DIFFRENTIABLES SANS CONTRAINTE
Corollaire 2.3.1 Soit un algorithme de descente appliqu au problme
min
xR
n
f(x), f C
2
(R
n
);
supposons qu chaque itration la direction utilise d
k
est une direction susamment des-
cendante, et pour lequel le pas utilis dans cette direction est la premire valeur de la suite
{1, 1/2, 1/4, . . . , (1/2)
m
. . .} qui satisfasse au critre dArmijo ; alors, tous les points daccu-
mulation de la suite {x
k
} engendre par lalgorithme sont des points stationnaires pour le
problme min f(x).
Preuve Imitons la preuve du thorme 2.3.3. Le dbut est semblable, mais on rexprime
le critre dArmijo en utilisant un dveloppement de Taylor dordre deux : f(x + d) =
f(x) + f(x)d +

2
2
d
t

2
f( x)d pour obtenir

k
(1
0
)f(x
k
)d
k
+
1
2

2
k
d
t
k

2
f( x)d
k
< 0.
Maintenant, selon la dnition 2.3.1, on a
f(x
k
)d
k
<

0

2
1
d
k

2
,
et puisque f est de classe C
2
(R
n
), il existe une constante positive A telle que, ds que x
k
est
susamment proche dun point stationnaire x,
1
2
d
t
k

2
f( x)d
k
< Ad
k

2
.
En combinant ces deux dernires ingalits dans la rcriture du critre dArmijo, on a que

k
(1
0
)

2
1
d
k

2
+
2
k
Ad
k

2
< 0
entrane la condition dArmijo. Mais
k
> 0, et donc ds que
k
<
(1
0
)
0
A
2
1
, le critre dArmijo
est satisfait, et donc si f(x
k
)d
k
ne converge pas vers zro,
k
non plus puisquil satisfait

k
>
(1
0
)
0
2A
2
1
par construction. 2
Preuve (du thorme 2.3.1)
Il est clair de la discussion prcdente quil existe des valeurs de qui satisfont au critre
dArmijo. Vrions que parmi celles-ci, au moins une satisfait au critre de Wolfe.
Considrons la plus petite valeur de pour laquelle le critre dArmijo est satisfait avec
galit :

= inf

: f(x + d) f(x) >


0
f(x)d. Si le critre dArmijo est satisfait pour
tout > 0, cest que la fonction f nest pas borne infrieurement dans la direction d.
En

, la drive directionnelle de f dans la direction d est plus grande ou gale
0
f(x)d
puisquimmdiatement aprs ce point, la fonction devient plus grande que la droite de pente
2.3. DDUCTION DUNE CLASSE DALGORITHMES ITRATIFS 73

0
f(x)d. Or, cette drive directionnelle est justement donne par lexpression f(x+d)d.
On a donc
f(x + d)d
0
f(x)d >
1
f(x)d
puisque
1
>
0
. Comme la dernire ingalit est stricte, lintrieur de nest pas vide. 2
En fait, il est instructif dobserver ces relations pour une fonction h quadratique.
Exercice 2.3.5 [Armijo avec h quadratique] Dans cet exercice, nous allons examiner la
fonction h() =
a
2

2
+ b + c.
a) Si on sait que la fonction h est en fait la fonction h
x,d
() = f(x + d) pour une
direction d susamment descendante, que peut-on dire des coecients a, b et c ?
b) Si on sait que la fonction h est borne infrieurement, que peut-on dire des coecients
a, b et c ?
c) Supposons maintenant que la fonction h possde les caractristiques de a) et b), i. e.
quelle provient dune fonction f, selon une direction susamment descendante, et
quelle est borne infrieurement. Justiez que h possde un seul minimum local, et
ce pour une valeur

> 0.
d) Pour quel ensemble de valeurs de
0
le minimum local de h satisfait-il au critre
dArmijo ?
e) Pour quel ensemble de valeurs de
1
le minimum local de h satisfait-il au critre de
Wolfe ?
Direction de la pente la plus forte
Des conditions de descente susante, il devrait maintenant tre clair que la direction
dite de la pente la plus forte, d = f(x)
t
serait une direction candidat privilgie. Pour
mieux qualier la nature optimale de cette direction, revenons aux conditions doptimalit
prsentes plus haut. Puisque nous ne cherchons seulement quun point stationnaire, tentons
de trouver d qui minimise h

x,d
(0) = f(x)d. videmment, un tel d serait non-born, gal
f(x). Pour se sortir dune impasse apparente, considrons lingalit de Cauchy-
Schwartz :
df f(x)d df;
Rappelons que cette ingalit dcoule de lidentit reliant le produit scalaire de deux vecteurs
leurs normes et langle entre eux : v
t
u = vu cos . Alors, on voit bien que les valeurs de
d qui atteignent la borne infrieure des prcdentes ingalits sont prcisment les multiples
positifs de d = f(x)
t
.
Malheureusement, cette direction d = f(x)
t
conduit un algorithme qui converge
trs lentement.
74 CHAPITRE 2. OPTIMISATION DIFFRENTIABLES SANS CONTRAINTE
Exercice 2.3.6 [Vitesse de convergence de lalgorithme du gradient] On peut montrer
que lordre de convergence de lalgorithme de la pente la plus forte est linaire, et que le
taux de convergence est donn par le rapport
1r
1+r
o r =
min
/
max
et
min
et
max
sont
les valeurs propres extrmes de la matrice
2
f(x

). Considrez la fonction quadratique


f(x, y) = 10x
2
+ y
2
, et vriez numriquement que ce taux est atteint si lon amorce
lalgorithme du gradient en
_
0.1
1
_
. Remarquons que ce taux peut tre arbitrairement
proche de un si le rapport des valeurs propres extrmes est proche de zro.
Parmi les fonctions proposes au l des annes pour tester des algorithmes de descente,
la fonction de Rosenbrock est certainement la plus fameuse. Il sagit de la fonction f(x) =
(1 x
1
)
2
+100(x
2
x
2
1
)
2
, et un point de dpart usuel est
_
1.2
1
_
. Les codes contemporains
obtiennent la solution x

=
_
1
1
_
en quelques dizaines ditrations. Or, la mthode utilisant
la direction de la pente la plus forte requiert plusieurs centaines, voire milliers ditrations.
Il est trs rare quon ne puisse pas faire beaucoup mieux que dutiliser cette mthode connue
sous plusieurs noms dont mthode du gradient, descente de gradient, mthode de la
pente la plus forte, steepest descent en anglais.
Direction de Newton
Plutt que de minimiser h

x,d
(0), minimisons par rapport d la fonction h

x,d
(0) +
1
2
h

x,d
(0). Un examen sommaire des expressions impliques permet de reformuler cette mini-
misation par rapport d comme
min
d
f(x)d +
1
2
d
t

2
f(x)d,
dont la solution, en autant que
2
f(x) soit une matrice dnie positive (et donc inversible),
peut scrire
d
N
=
2
f(x)
1
f(x)
t
.
Le fait quelle satisfasse aux critres de la dnition 2.3.1 est dmontr la section 2.4.
Cette direction d
N
est importante, et correspond la direction dite de Newton. Pour
comprendre cette terminologie de direction de Newton, rappelons la mthode de Newton
pour la solution de systmes dquations non-linaires F(x) = 0 :
x
k+1
x
k
F(x
k
)
1
F(x
k
).
Pour les problmes de minimisation, nous retrouvons les identits f F
t
et
2
f F.
Selon cette notation, la direction de Newton serait x
k+1
x
k
= F(x
k
)
1
F(x
k
).
2.3. DDUCTION DUNE CLASSE DALGORITHMES ITRATIFS 75
Nous proposons la section 2.4.3 une analyse qui illustre que cette direction de Newton
conduit, au moins localement, un algorithme ecace.
Exercice 2.3.7 [Mthode de Newton] Considrez nouveau (exercice 2.2.6 page 61) la
fonction f(x) = (x
1
+x
2
)
2
+(2(x
2
1
+x
2
2
1)
1
3
)
2
. Vriez que la mthode de Newton peut
tre applique partir de x
0
= (
_
7/6, 0)
t
et que le prochain point, en utilisant = 1 est
situ sur la droite reliant les deux points stationnaires.
Une famille de directions susamment descendantes
La direction de Newton peut tre vue comme une transformation linaire de la direction
de la plus forte pente. La matrice reprsentant cette transformation linaire pour la direction
de Newton est linverse de la matrice hessienne de f.
Considrons le cas gnral dune direction

d
def
= Bf(x)
t
. En supposant que B est une
matrice symtrique dnie positive, il est facile de vrier que

d satisfait aux conditions de
la dnition 2.3.1. En eet, on peut crire
f(x)

d = f(x)Bf(x)
t
,
et si
min
> 0 dnote la valeur propre la plus petite de B, on a
f(x)Bf(x)
t

min
f(x)
2
.
Ceci assure que
f(x)

d
min
f(x)
2
.
Pour vrier la seconde ingalit de la dnition 2.3.1, nous utilisons plutt la plus grande
valeur propre de B,
max
pour crire

d
max
f(x).
Enn, remarquons que si B est obtenue par linversion dune matrice symtrique (inver-
sible) H, qui approche probablement le hessien de f, alors B est dnie positive si H lest
aussi. En eet, pour un vecteur propre d associ la valeur propre de H, on a Hd = d,
et donc Bd = H
1
d =
1

d et donc d est vecteur propre de B associ la valeur propre


1

.
Exercice 2.3.8 [Direction de descente] Compltez lanalyse des directions d =
H
1
f(x)
t
en fournissant des expressions pour
0
et
1
.
76 CHAPITRE 2. OPTIMISATION DIFFRENTIABLES SANS CONTRAINTE
Exercice 2.3.9 [Algorithme de descente] Considrez la fonction f(x) = x
2
1
x
1
x
2
+2x
2
2

2x
1
+ e
x
1
+x
2
.
a) crivez la condition doptimalit de premier ordre pour cette fonction. Est-ce que
cette condition est susante pour ce problme ? En dautres termes, est-ce que tous
les points stationnaires de cette fonction sont des minima locaux ?
b) Vriez que lorigine nest pas un point stationnaire de f, et identiez une direction
de descente (susamment descendante) pour f lorigine.
c) Appliquez le procd dArmijo (la premire valeur parmi 1,
1
2
,
1
4
, . . .) la fonction
h
d
() = f(d) pour la direction que vous avez propose en b). Utilisez une valeur de

0
= 0.1 dans le critre dArmijo.
Exercice 2.3.10 [Newtondescente]
a) Pour minimiser une fonction de n variables, si
2
f(x)
1
possde des valeurs propres
comprises entre 1 et 100 quel que soit x R
n
, justiez que la direction de Newton,
d
N
=
2
f(x)
1
f(x)
t
est susamment descendante en exhibant des valeurs de
0
et
1
.
b) Si
2
f(x) possde des valeurs propres ngatives, est-il vrai que d
N
est forcment
non descendante ? Si oui, justiez ; sinon, donnez un exemple o d
N
est malgr tout
descendante, et donnez un exemple o d
N
nest pas descendante.
2.3.3 Recherche de minima locaux faibles
Si la condition que
2
f(x) soit semi-dnie positive nest pas vrie, mme si x est un
point stationnaire, il nen est pas un minimum local pour autant. En fait il est essentiel que

2
f(x) soit semi-dnie positive pour quun point stationnaire x soit un minimum local, mais
ce nest toutefois pas susant. Cependant, comme nous en avons discut la section 2.2,
nous nous contentons de ces conditions.
Dans la suite de cette sous-section, nous dveloppons un schma algorithmique qui as-
sure que les points daccumulation des algorithmes, en plus dtre stationnaires, possdent
un hessien
2
f(x) semi-dni positif. Ce schma algorithmique nous permet galement din-
troduire une technique qui nutilise pas un pas admissible dans une direction susamment
descendante, mais plutt une restriction ensembliste sur la direction, dans laquelle on eec-
tue un pas unitaire. Ce type dalgorithme nest pas sans rappeler les techniques de rduction
dintervalle utilises au chapitre 1.
2.3. DDUCTION DUNE CLASSE DALGORITHMES ITRATIFS 77
Lide sous-jacente aux mthodes de rgion de conance est que le dveloppement de Tay-
lor dordre un ou deux utilis pour calculer une direction constitue une bonne approximation
de f dans un certain voisinage du point courant. Le dveloppement de Taylor
q
x
(d) = f(x) + f(x)d +
1
2
d
t

2
f(x)d
sera nomm fonction modle de f, et la direction sera calcule en rsolvant un problme de
la forme
min
d
k
q
x
k
(d).
La valeur de
k
est ajuste laide de la quantit r
k
ainsi dnie :
Df
x
k
def
= f(x
k
) f(x
k+1
)
Dq
x
k
def
= f(x
k
) q
x
k
(d
k
) = q
x
k
(0) q
x
k
(d
k
)
r
k
def
=
Df
x
k
Dq
x
k
.
Ainsi, r
k
reprsente le rapport entre la relle diminution de f en comparaison avec la dimi-
nution prvue par la fonction modle q. Pour la mthode de Newton, on sattend ce que
r
k
sapproche de lunit lorsque x
k
converge vers un minimum local de f.
Pour formuler un algorithme utilisant ces quantits, remarquons que si r
k
est petit, il
est vraisemblable que
k
soit trop grand, alors que si r
k
sapproche de un, il faudrait aug-
menter
k
pour que lalgorithme se comporte exactement comme litration de Newton
asymptotiquement. Ceci conduit aux rgles suivantes, o des choix typiques des paramtres
0 <
1
<
2
< 1 et 0 <
1
< 1 <
2
sont
1
= 0.25,
2
= 0.75,
1
= 0.25 et
2
= 2.
si r
k
<
1
alors
k+1

1

k
;
si r
k
>
2
alors
si d
k
=
k
alors
k+1

2

k
sinon
k+1

k
;
si r
k
>
1
alors x
k+1
x
k
+ d
k
sinon x
k+1
x
k
.
Cet algorithme possde des proprits de convergence globales trs fortes, au prix de
sous-problmes plus diciles rsoudre, la minimisation globale min
d
k
q
x
k
(d). Nous pr-
senterons la section 2.8.2 une implantation simple pour ce calcul.
Thorme 2.3.4 Si les points engendrs par lalgorithme demeurent dans un compact K,
avec f de classe C
2
dans K, et
2
f uniformment born dans K, alors il existe un point
daccumulation x de la suite {x
k
}, et tout point daccumulation satisfait que f( x) = 0 et

2
f( x) est une matrice semi-dnie positive.
78 CHAPITRE 2. OPTIMISATION DIFFRENTIABLES SANS CONTRAINTE
Newtonrgion de conance(x, , , f)
{ Donns : x; }
{ un critre darrt, > 0 ; }
{ une fonction deux fois direntiable f ; }
{ une taille initiale de la rgion de conance. }
{ les paramtres dajustement de la rgion de conance }
{ 0 <
1
<
2
< 1 et 0 <
1
< 1 <
2
. }
rpter
d
R
arg min
d
q
x
(d)
r
f(x)f(x+d
R
)
q(0)q(d
R
)
si (r <
1
) alors
1

sinon
x x + d
R
si (r >
2
) alors
si (d
R
= ) alors

2

jusqu ( f(x) < )


Rsultat x
Algorithme 2.2: Newton avec rgion de conance.
2.3. DDUCTION DUNE CLASSE DALGORITHMES ITRATIFS 79
Preuve Selon que inf
k
= 0 dans lalgorithme, il existe une sous-suite note {x
k
} qui
converge vers x pour laquelle soit
1. r
k

1
, et donc inf
k
> 0, ou
2. r
k
<
1
, entranant
k+1
0 et d
k
0.
cas 1
Ce cas devrait se produire le plus souvent car on espre que d
k
sera localement identique
la direction de Newton, et donc que la borne d
k

k
ne sera pas sature. Puisque
f( x) est une quantit borne (les x
k
sont contenus dans un compact), on a que la somme

Df
x
k
< , ce qui entrane que Df
x
k
0, et donc, puisque r
k

1
, Dq
x
k
0.
Maintenant, en dnissant q(d)
def
= f( x) + f( x)d +
1
2
d
t

2
f( x)d, et 0 <

< inf
k
,
considrons

d la solution de min
d

q(d). Dnotons par x


def
= x +

d. Observons que si k est
assez grand, x x
k

k
, ce qui entrane que
q
x
k
( x x
k
) q
x
k
(d
k
) = f(x
k
) Dq
x
k
.
En passant la limite dans les dernires relations, on retrouve
q(

d) f( x) = q(0),
ce qui nous indique que 0 est solution de min
d

q(d), et puisque 0 <



, ceci entrane que
f( x) = 0 et
2
f( x) est une matrice semi-dnie positive.
cas 2
Sparons cette portion de la preuve en deux : tablissons dabord une contradiction au fait
que f( x) = 0, et ensuite tablissons une contradiction au fait que
2
f( x) possde une
valeur propre ngative.
1. Supposons que f( x) = 0. partir dun x
k
quelconque, considrons un dplacement
le long de la direction oppose au gradient

d
k
= f(x
k
)
t
. Alors, en un point le long
de cette direction,
q
x
k
(

d
k
) = f(x
k
) f(x
k
)
2
+

2
2

d
t
k

2
f(x
k
)

d
k
est minimis (si

d
t
k

2
f(x
k
)

d
k
est positif) pour

= f(x
k
)
2
/(

d
t
k

2
f(x
k
)

d
k
), et
q

= q
x
k
(

d
k
) =
1
2
f(x
k
)
4
/(

d
t
k

2
f(x
k
)

d
k
). Par ailleurs, pour demeurer dans la
rgion de conance, on doit avoir
k
/

d
k
=
max
, qui est galement le minimum
lorsque

d
t
k

2
f(x
k
)

d
k
est ngatif. Puisque nous sommes dans le cas o
k
0, Dq
x
k

q
x
k
(0) q
x
k
(
max

d
k
). Si

d
t
k

2
f(x
k
)

d
k
est positif, q
x
k
(

d
k
) est convexe en , et on
obtient Dq
x
k
(q
x
k
(0) q

=

k
2
f(x
k
). On retrouve cette dernire ingalit
directement si

d
t
k

2
f(x
k
)

d
k
est ngatif.
80 CHAPITRE 2. OPTIMISATION DIFFRENTIABLES SANS CONTRAINTE
Un dveloppement de Taylor de f prs de x
k
donne
f(x
k
+ d
k
) = q
x
k
(d
k
) +O(d
k

3
), ()
et donc
Df
x
k
= Dq
x
k
+O(d
k

3
).
Or, d
k
<
k
et on vient de voir que Dq
x
k


k
2
f(x
k
) O(
k
). Par consquent,
r
k
= 1 +O(d
k
), contredisant lhypothse que r
k
<
1
.
2. Supposons maintenant quil existe une direction de courbure ngative unitaire

d telle
que

d
t

2
f( x)

d = < 0,
et en un point de la sous-suite, eectuons un dplacement de longueur
k
dans la
direction

d avec = 1 choisi pour que f(x


k
)

d 0. Encore une fois, on crit


Dq
x
k
q
x
k
(0) q
x
k
(
k

d)
1
2

2
k

d
t

2
f(x
k
)

d =
1
2

2
k
+O(
3
k
).
Ceci implique r
k
= 1 +O(d
k
), contredisant encore une fois lhypothse que r
k
<
1
.
2
La preuve du thorme est importante car elle suggre des critres plus faibles que la
minimisation globale de q
x
(d) dans la rgion d . En particulier, si lon veut garantir
que les points daccumulation sont stationnaires, il sut que q dcroisse autant quun pas
optimal dans la direction de la plus forte pente f(x)
t
; un tel pas est habituellement
nomm point de Cauchy. Pour la recherche de points stationnaires, il nest pas ncessaire
que le modle q soit dni partir de
2
f, et une matrice M
k
peut fort bien tre utilise.
Corollaire 2.3.2 Si lalgorithme 2.2 utilise un modle q(d) = f(x) + f(x)d +
1
2
d
t
M
x
d
avec des matrices M
x
uniformment bornes, et si q est minimise approximativement au
moins pour obtenir la rduction du point de Cauchy, alors les points daccumulation sont
stationnaires.
*Exercice 2.3.11 [Preuve du corollaire 2.3.2] Adaptez la preuve du thorme 2.3.4 ; in-
dice : le cas 2 na pas besoin de modication, et le cas 1 doit tenir compte du fait que d
nest plus un minimum global, mais seulement une rduction au moins aussi bonne que le
point de Cauchy.
2.4. ITRATION DE NEWTON MODIFIE POUR LOPTIMISATION 81
Dun autre ct, pour garantir que les points daccumulation satisfont aux conditions
ncessaires de second ordre, il faut bien utiliser
2
f, mais il sut dassurer que q
x
dcroit
au moins autant quune direction de courbure ngative associe la valeur propre la plus
petite, et que le point de Cauchy.
Corollaire 2.3.3 Si lalgorithme 2.2 utilise un modle q(d) = f(x) +f(x)d+
1
2
d
t

2
f(x)d,
et si q est minimise approximativement au moins pour obtenir la rduction du point de
Cauchy et une rduction donne par la direction de courbure la plus ngative, alors les points
daccumulation satisfont aux conditions ncessaires de second ordre.
*Exercice 2.3.12 [Preuve du corollaire 2.3.3] Adaptez la preuve du thorme 2.3.4 ; in-
dice : le cas 2 na pas besoin de modication, et le cas 1 doit tenir compte du fait que d
nest plus un minimum global, mais seulement une rduction au moins aussi bonne que
le point de Cauchy et la direction de courbure la plus ngative ; par le corollaire 2.3.2, les
points daccumulation sont stationnaires.
Si un point daccumulation satisfait aux conditions susantes de second ordre, alors la
suite engendre par lalgorithme converge vers ce point, et ce avec un ordre asymptotique
quadratique, comme nous le dmontrerons un peu plus loin.
Dans la suite de ce chapitre, nous approfondirons surtout ltude de mthodes utilisant
des directions susamment descendantes et des pas admissibles. Une des raisons est que
la solution des sous-problmes du calcul de d
k
dans les mthodes de rgion de conance
ncessite des techniques doptimisation avec contraintes dingalits, que nous tudierons au
chapitre 6. Nous y reviendrons ce moment.
2.4 Itration de Newton modie pour loptimisation
Nous avons vu la section 2.3.2 que la direction de Newton est une direction susamment
descendante si
2
f(x) est une matrice dnie positive. Quen est-t-il sinon, ou encore si au l
des itrations, cette matrice se rapproche dune matrice singulire ? Il en est que la mthode
de Newton nest peut-tre plus globalement convergente. Par ailleurs, lutilisation dun pas
est susceptible de dtruire les proprits de convergence locale quadratique de litration
de Newton, dont la preuve utilisait toujours un plein pas 1. Nous modions dans cette
section la mthode de Newton pour la rendre globalement convergente, et, en supposant que
toute la suite {x
k
} converge vers un point stationnaire x

pour lequel
2
f(x

) est une matrice


dnie positive, la modication conserve la proprit de convergence locale quadratique.
82 CHAPITRE 2. OPTIMISATION DIFFRENTIABLES SANS CONTRAINTE
2.4.1 Modication de la direction de Newton
Pour viter les problmes associs une matrice hessienne
2
f(x
k
) qui ne serait pas
uniformment dnie positive, nous allons la remplacer par une approximation

H
k
, unifor-
mment dnie positive, et donc inversible, dinverse

B
k
, galement dnie positive. Concep-
tuellement, il sut de prendre

H
k
=
2
f(x) + max(
min
+ , 0)I
o
min
est la plus petite valeur propre de
2
f(x) et est une petite quantit positive.
En eet, pour un tel choix,

H
k
sera gal au hessien de f si celui-ci est une matrice dnie
positive, et se verra ajouter un multiple de lidentit adquat pour le rendre dni positif
sinon.
Si x
k
est proche dun point stationnaire x

pour lequel
2
f(x

) est une matrice dnie


positive, alors
2
f(x
k
) est galement une matrice dnie positive, et donc

H
k
=
2
f(x
k
).
Autrement, la valeur propre la plus petite de

H
k
vaut au moins , et donc est uniformment
loigne de zro, garantissant que la direction satisfait aux conditions de la dnition 2.3.1.
Il serait prmatur de prsenter ici un algorithme de calcul pour

B
k
. Nous reportons
ltude de limplantation de la direction de Newton modie la section qui traite du cas
particulier de fonctions objectif quadratiques. En eet, une direction

d =

B
k
f(x)
t
pour
une matrice

B
k
=

H
1
k
dnie positive est solution du sous-problme quadratique suivant :
min
d
1
2
d
t

H
k
d +f(x)d.
Exercice 2.4.1 [Proprit de descente de la mthode de Newton] Trouvez la plus grande
boule centre sur lorigine pour laquelle le hessien de la fonction f(x) = 2x
2
1
+x
2
2
2x
1
x
2
+
2x
3
1
+ x
4
1
est une matrice dnie positive. Si lon dmarre en un point x
0
= (x, x), pour
quelles valeurs dans cette boule lalgorithme de Newton (avec = 1) converge-t-il ?
2.4.2 Analyse du pas pour la direction de Newton
Il apparat quun pas = 1 est admissible pour la direction de Newton lorsque x
k
devient
assez proche de x

, un point stationnaire pour lequel


2
f est dni positif. En fait, ceci
dcoule dun rsultat beaucoup plus gnral qui stipule que si une direction est de longueur
optimale pour lapproximation de Taylor dordre deux de f, alors un pas unitaire est
localement admissible.
2.4. ITRATION DE NEWTON MODIFIE POUR LOPTIMISATION 83
Thorme 2.4.1 Soit f une fonction de classe C
3
, d une direction susamment descen-
dante, telle que le minimum de la fonction quadratique
h
x,d
()
def
= f(x) + f(x)d +

2
2
d
t
f
2
(x)d
soit atteint pour = 1. Alors, le pas = 1 est admissible pour la fonction f dans la direction
d lorsque d est susamment petite.
Preuve Puisque = 1 minimise h
x,d
(), alors h

x,d
(1) = 0. Donc,
f(x)d + d
t
f
2
(x)d = 0.
crivons maintenant la condition dArmijo :
f(x + d) f(x)
0
f(x)d < 0
en exprimant f(x + d) = f(x) +f(x)d +
1
2
d
t

2
f(x)d + R
3
(d) :
f(x + d) f(x)
0
f(x)d = (1
0
)f(x)d +
1
2
d
t

2
f(x)d +O(d
3
)
= (
1
2

0
)f(x)d +O(d
3
),
la dernire galit provenant de la condition h

x,d
(1) = 0. Maintenant, selon la dnition 2.3.1,
f(x)d <

2
1
d
2
et donc la condition dArmijo est implique par lingalit suivante :
(
0

1
2
)

2
1
d
2
+O(d
3
) < 0
qui est vrie lorsque d est susamment petite.
Quant au critre de Wolfe, il sut dcrire que f(x + d) = f(x) + d
t

2
f(x) + R
2
(d)
pour rexprimer le critre de Wolfe comme
(1
1
)f(x)d + d
t

2
f(x)d + dR
2
(d) =
1
f(x)d + dR
2
(d),
qui demeure positif lorsque d est assez petite car il existe une constante positive telle que
dR
2
(d) d
3
lorsque d est assez petit alors que f(x)d >

0

2
1
d
2
. 2
Corollaire 2.4.1 Si
2
f(x) est une matrice dnie positive, et si la direction de Newton
d
N
=
2
f(x)
(1)
f(x)
t
est une direction de descente susamment petite (au voisinage
dun minimum local de f), alors le pas = 1 est admissible pour f dans la direction d
N
.
84 CHAPITRE 2. OPTIMISATION DIFFRENTIABLES SANS CONTRAINTE
2.4.3 Convergence de la mthode de Newton modie
Nous avons maintenant tous les ingrdients pour dmontrer la convergence globale ainsi
que la convergence locale quadratique de la mthode de Newton modie pour loptimisation.
En fait, nous allons dmontrer la convergence dune version approche de la mthode de
Newton.
Rappelons que litration de Newton modie scrit :
x
k+1
x
k

k
d
k
;
d
k

H
1
k
f(x
k
)
t
.
On voit donc que d
k
satisfait au systme
d
t
k

H
k
+f(x
k
) = r
k
,
o, dans la mthode classique, r
k
0. Cette dernire formulation constitue en fait un sous-
problme linaire, dont la solution d
k
nest quapproximative, r
k
prs, et donc exacte pour
la mthode de Newton usuelle, o r
k
0. Lanalyse venir nutilisera pas cette proprit
que r
k
0, et nous pourrons dduire les proprits requises par la suite r
k
pour quune
mthode se comporte bien.
Thorme 2.4.2 Soit une fonction f de classe C
3
. Les points daccumulation de la m-
thode de Newton modie pour minimiser la fonction f sont tous des points stationnaires
de la fonction f. De plus, si un des points daccumulation satisfait la condition su-
sante de second ordre, alors toute la suite {x
k
} y converge, le pas = 1 est ventuellement
toujours admissible et la vitesse de convergence asymptotique est quadratique
Preuve Puisque la mthode de Newton modie assure que les direction sont susamment
descendantes, et que les pas utiliss sont admissibles, tous les points daccumulation sont
stationnaires.
Supposons maintenant (nous justierons plus loin cette supposition) que toute la suite
{x
k
} converge vers un point limite x

qui satisfait aux conditions susantes de second


ordre. Alors,
2
f(x

) est une matrice dnie positive et donc, asymptotiquement,



B
k

2
f(x
k
). Par consquent, les hypothses du thorme 2.3.2 sont satisfaites, et le pas = 1
est admissible asymptotiquement comme le montre le thorme 2.4.1. Enn, compltons la
preuve de convergence quadratique.
Dabord, exprimons f(x

) en utilisant une srie de Taylor autour du point x


k
en notant

k
def
= (x
k
x

) :
0 = f(x

) = f(x
k
)
t
k

2
f(x
k
) +O(
k

2
)
= (f(x
k
) + d
t
k

2
f(x
k
)) (d
k
+
k
)
t

2
f(x
k
) +O(
k

2
)
= r
k
(
k+1
)
t

2
f(x
k
) +O(
k

2
).
2.4. ITRATION DE NEWTON MODIFIE POUR LOPTIMISATION 85
De cette dernire quation, on tire que
k+1
est solution du systme linaire
(
k+1
)
t

2
f(x
k
) = r
k
+O(
k

2
).
Utilisons maintenant les faits que

2
f(x

) est une matrice inversible, et



2
f est une fonction Lipschitz, cest--dire que
2
f(x
k
)
2
f(x

) L x
k
x

,
pour conclure que

k+1
O(r
k
+
k

2
) O(max(r
k
,
k

2
).
On voit donc que si r
k
O(
k

2
), la convergence quadratique locale de litration de
Newton modie est assure. En particulier, pour le cas r
k
0 que nous traitons maintenant,
la convergence quadratique locale de litration de Newton modie est assure.
Finalement, si un des points daccumulation, disons x satisfait aux conditions susantes
de second ordre, alors, il existe une sous-suite de {x
k
}, note {x
k
i
} telle que, pour des
valeurs assez grande de k
i
, les raisonnements locaux prcdents sappliquent au point x
k
i
.
Par consquent, partir dun tel k
i
, le reste de la suite converge vers x. 2
Comme nous lavons vu dans la preuve, il nest pas plus dicile de dmontrer la conver-
gence quadratique de litration de Newton si les sous-problmes linaires ne sont rsolus
quapproximativement. Cependant, ladmissibilit du pas unitaire nest plus assure par le
thorme 2.4.1. Si lon choisit r
k

k

2
, on conserve la proprit car la preuve du tho-
rme 2.4.1 sadapte facilement.
*Exercice 2.4.2 [Admissibilit du pas unitaire] Justiez les armations suivantes. Si

2
f(x

) est une matrice dnie positive, et si x


k
est proche de x

, alors
a)
k
f(x
k
) ; il sagit de montrer que
k
O(f(x
k
)) et f(x
k
)
O(
k
)
b) si r
k
O(
k

2
), alors un pas unitaire demeure localement admissible. Modiez
lgrement la preuve du thorme 2.4.1 pour y incorporer r
k
, puis constater que le
mme raisonnement demeure valable.
c) sous quelles conditions sur r
k
ladaptation de la preuve du thorme 2.4.1 en b)
demeure-t-elle valable ?
2.4.4 Convergence de la mthode de Newton rgions de conance
Thorme 2.4.3 Si un point daccumulation de lalgorithme 2.2 satisfait aux conditions
susantes de second ordre, alors toute la suite engendre y converge, et r
k
1, la suite
k
demeure loigne de 0 et lordre de convergence est superlinaire.
86 CHAPITRE 2. OPTIMISATION DIFFRENTIABLES SANS CONTRAINTE
Preuve Pour n de contradiction, supposons quune sous-suite se produit avec le cas 2 du
thorme 2.3.4. En un point x
k
, considrons un dplacement dans la direction de Newton,
bien dnie au voisinage du point daccumulation satisfaisant aux conditions susantes
doptimalit. Si la direction de Newton d
N
= (
2
f(x
k
)
1
)f(x
k
)
t

k
, alors d
R
= d
N
et Dq
x
k
=
1
2
d
t
R

2
f(x
k
)d
R

1
2

k
d
R

2
, avec
k
la plus petite valeur propre de
2
f(x
k
). Si
au contraire la direction de Newton d
N
>
k
, alors loptimalit de q nous permet dtablir
que Dq
x
k

1
2

k
d
R

2
galement. Comme Df
x
k
= Dq
x
k
+O(d
R

3
), on obtient que r
k
1,
contredisant que la sous-suite provient du cas 2.
Donc,
k
est forcment loign de 0, et comme les directions de Newton proche du point
daccumulation satisfaisant aux conditions de second ordre sapprochent de 0, lalgorithme 2.2
se ramne une itration de Newton pure, do le rsultat de convergence superlinaire. 2
2.5 Mthodes quasi-Newton
Il est parfois dicile, ou pas pratique de manipuler les matrices hessiennes des fonctions
objectifs minimiser. Au chapitre 1, nous avons vu la technique de la scante permettant
datteindre un ordre de convergence superlinaire (lordre dans ce cas est donn par le nombre
dor 1.618). La pente m
k
de la scante la fonction g = f

satisfaisait alors la relation


m
k
(x
k
x
k1
) = g(x
k
)g(x
k1
), ou encore, dnotant y
k
= g(x
k
)g(x
k1
) et s
k
= x
k
x
k1
,
m
k
s
k
= y
k
. Litration de scante prenait alors la forme x
k+1
= x
k
g(x
k
)/m
k
.
En plusieurs dimensions, linformation relative la pente du vecteur g = f
t
se repr-
sente comme une matrice que nous notons H. Si on conserve les notations y
k
= g(x
k
)g(x
k1
)
et s
k
= x
k
x
k1
, lquation dnissant la pente devient
H
k
s
k
= y
k
. (2.3)
Remarquons que H
k
nest pas uniquement dtermine par cette quation, nomme quation
quasi-Newton. On se propose dutiliser la matrice H
k
en remplacement de la matrice
2
f(x
k
)
dans une mthode itrative de la forme x
k+1
= x
k

k
H
1
k
f(x
k
)
t
.
Puisque lquation quasi-Newton ne dtermine pas compltement H
k
, plusieurs formules
ont t proposes. En fait, il est raisonnable de construire une matrice que lon espre sap-
procher de
2
f au l des itrations, donc la matrice H
k
sera en fait obtenue partir dune
mise--jour de la matrice H
k1
en tenant compte de lquation (2.3) quelle doit satisfaire.
Broyden a introduit une premire forme de mise--jour en raisonnant que H
k
z = H
k1
z si
z
t
s
k
= 0, que leet de la mise--jour ne devrait pas avoir dinuence sur le complment
orthogonal de la direction s
k
. Ce raisonnement conduit la formule de mise--jour suivante :
H
k
= H
k1
+
(y
k
H
k1
s
k
)s
t
k
s
t
k
s
k
. (2.4)
2.5. MTHODES QUASI-NEWTON 87
Remarquons ds maintenant que B
k
= H
1
k
obit une mise--jour similaire :
B
k
= B
k1
+
(s
k
B
k1
y
k
)s
t
k
B
k1
s
t
k
B
k1
y
k
. (2.5)
On obtient la formule pour B
k
laide de la formule de Sherman et Morrison. Ces formules
ne conduisent pas des matrices B
k
ou H
k
symtriques, et donc, bien quutiles pour des
problmes dquations non-linaires (F(x) = 0), on leur prfre des formules qui assurent que
la suite des matrices H
k
demeurent symtriques. La formule suivante ralise cette contrainte
supplmentaire :
H
k
= H
k1
+
(y
k
H
k1
s
k
)(y
k
H
k1
s
k
)
t
(y
k
H
k1
s
k
)
t
s
k
. (2.6)
Cette formulation, connue sous le nom de symtrique de rang un, choue lorsque (y
k

H
k1
s
k
)
t
s
k
= 0. Pour viter cette possibilit, on peut dvelopper une formule de rang deux.
ce point, introduisons une autre contrainte que devraient respecter les matrices H
k
:
pour engendrer des directions de descente, les matrices devraient tre dnies positives. La
formule la plus rpandue est tiquette BFGS, des initiales de chercheurs Broyden, Fletcher,
Goldfarb, Shanno qui lont propos simultanment et indpendamment les uns des autres :
H
k
= H
k1
+
y
k
y
t
k
y
t
k
s
k

H
k1
s
k
s
t
k
H
k1
s
t
H
k1
s
k
. (2.7)
La formule pour B
k
= H
1
k
scrit :
B
k
=
_
I
s
k
y
t
k
y
t
k
s
k
_
B
k1
_
I
y
k
s
t
k
y
t
k
s
k
_
+
s
k
s
t
k
y
t
k
s
k
. (2.8)
Remarquons quune mise--jour, bien que de rang deux, nimplique quune seule paire
y
k
, s
k
. La mise--jour est de rang deux puisque H
k
ou B
k
se voient ajouter deux matrices de
rang un chacune. En dveloppant les dtails, il est concevable dexprimer H
k
partir de H
0
et dune liste de paires y
i
, s
i
pour i allant de un k. Nous verrons plus tard que lalgorithme
L-BFGS exploite subtilement cette possibilit.
2.5.1 Convergence globale
Les proprits de convergence globale des mthodes quasi-Newtoniennes ne sont pas
encore bien comprises. Ces mthodes ont certainement t utilises avec grand succs sur
une grande varit dapplications, mais une preuve de convergence globale semble toujours
nous chapper.
Une modication mineure, une mise--jour prudente, permet cependant de justier que
les matrices B
k
demeurent uniformment dnies positives : Li et Fukushima[24] montrent en
eet quil sut de conserver B
k
= B
k1
si y
t
k
s
k
< g
k

s
k

2
, pour des constantes positives
et .
88 CHAPITRE 2. OPTIMISATION DIFFRENTIABLES SANS CONTRAINTE
2.5.2 Vitesse de convergence
On peut montrer que si un point daccumulation de la suite x
k
satisfait aux conditions
susantes, alors la mthode BFGS y converge superlinairement. On a galement lestim
x
k+n
x

O(x
k
x

2
).
2.6 Fonctions objectif quadratiques
Examinons maintenant deux algorithmes, une mthode dite directe, et une autre dite
itrative pour solutionner un problme de minimiser une fonction quadratique q(x)
def
=
1
2
x
t
Qx + cx sans contrainte ; c est un vecteur ligne. Il est clair que la matrice Q, qui est
symtrique, doit tre au moins semi-dnie positive, sans quoi la fonction q nest pas borne
infrieurement. En fait, si la matrice Q nest pas dnie positive, il est galement possible
que q ne soit pas borne infrieurement. Par exemple, considrons la fonction q(x, y) = x
2
.
Pour cette fonction, la matrice Q =
_
2 0
0 0
_
est semi-dnie positive, et laxe des y en
entier est solution du problme. Cependant, la fonction q(x, y) = x
2
+ y nest pas borne
infrieurement, bien quelle partage le mme hessien que la fonction q(x, y) = x
2
.
Supposons donc que la matrice Q qui dnit la forme quadratique q est une matrice
dnie positive. Alors, la solution au problme min
x
q(x) peut scrire x

= Q
1
c
t
. Nous
prsentons ci-aprs deux techniques pour calculer x

. La premire est une technique dalgbre


linaire numrique, une mthode directe de solution dun systme linaire symtrique dni
positif alors que la seconde est un algorithme doptimisation itratif spcialis aux formes
quadratiques.
2.6.1 Dcomposition de Cholesky
Plaons-nous dans le contexte de rsoudre un systme dquations linaires Qx +c
t
= 0,
o Q est une matrice dnie positive. Il est connu que toute matrice dnie positive peut
sexprimer comme Q = LL
t
, o L est une matrice triangulaire infrieure (de langlais, Lower
triangular). Cette expression de Q est connue sous le nom de dcomposition de Cholesky de
Q. Une fois Q ainsi exprime, la solution du systme linaire Qx+c
t
= 0 est facile, puisquelle
se rduit deux rsolution de systmes triangulaires, que lon peut obtenir par les mthodes
de substitution ascendantes ou descendantes :
Lv = c
t
L
t
x = v.
Il est avantageux dutiliser une formulation de la forme Q = LDL
t
, o D est une matrice
diagonale car cette forme vite dextraire les racines carres au sein de lalgorithme. Notons
que si Q est une matrice dnie positive, les racines carres de lalgorithme sont toutes bien
dnies.
2.6. FONCTIONS OBJECTIF QUADRATIQUES 89
Formulations rcursives
On peut calculer la dcomposition de Cholesky en analysant lquation Q = LL
t
; dbu-
tons par une expression rcursive :
Q =
_
Q
11
Q
1
Q
1

Q
_
=
_
L
11
0
L
1

L
__
L
11
L
t
1
0

L
t
_
=
_
L
2
11
L
11
L
t
1
L
1
L
11
L
1
L
t
1
+

L

L
t
_
.
La notation dindices avec un point (.) est utilise pour dsigner une ligne ou une colonne
dune matrice. On dduit que (la division dun vecteur par un scalaire tant interprte
naturellement)
L
11
=

Q
11
;
L
1
=
Q
1
L
11
;
Q
2
=

QL
1
L
t
1
.
On applique maintenant le mme processus, les mmes formules la nouvelle sous-matrice
n 1 n 1 Q
2
, et ainsi de suite rcursivement.
Si on adopte plutt la formulation Q = LDL
t
,
Q =
_
Q
11
Q
1
Q
1

Q
_
=
_
L
11
0
L
1

L
__
d
1
0
0

D
2
__
L
11
L
t
1
0

L
t
_
=
_
d
1
d
1
L
t
1
L
1
d
1
L
1
L
t
1
d
1
+

L

D
2

L
t
_
.
Dans ce cas, on retrouve les formules suivantes (notons que les matrices, dnotes L dans les
deux algorithmes, dirent entre elles !) :
d
1
= Q
11
;
L
1
=
Q
1
d
1
;
Q
2
=

QL
1
L
t
1
d
1
.
Cette dernire formulation est prfrable, car elle vite dextraire la racine carre de Q
11
.
Pour une matrice Q dnie positive, les lments D
ii
sont tous positifs.
Formulations squentielles
On peut galement exprimer squentiellement les calculs, ligne par ligne ou colonne par
colonne, et obtenir :
L
11
=

Q
11
;
L
21
=
Q
21
L
11
;
L
22
=
_
Q
22
L
2
21
;

.
.
.
L
ii
=
_
Q
ii

i1
k=1
L
2
ik
;
L
ij
=
Q
ij

j1
k=1
L
ik
L
jk
L
jj
, j < i,
90 CHAPITRE 2. OPTIMISATION DIFFRENTIABLES SANS CONTRAINTE
que lon peut rsumer dans ce cas dalgorithme ligne par ligne par
L
ij
=
Q
ij

j1
k=1
L
ik
L
jk
L
jj
, i = 1 : n, j = 1 : i.
La formulation colonne par colonne scrit alors :
L
ji
=
Q
ji

i1
k=1
L
ik
L
jk
L
ii
, i = 1 : n, j = i : n.
La complexit de calculs de cette dcomposition est O(n
3
).
*Exercice 2.6.1 [Formulation sans racine carre] Dveloppez des formules itratives ligne
par ligne et colonne par colonne pour calculer Q = LDL
t
pour une matrice Q dnie
positive ; dans ce cas, D est une matrice diagonale positive.
2.6.2 Algorithme du gradient conjugu
Toujours pour trouver la racine dquations linaires issues de matrices Q dnies po-
sitives, construisons lalgorithme du gradient conjugu partir dobservations lmentaires.
En fait, il est plus commode pour cette interprtation de considrer que nous tentons de
minimiser la fonction q(x) =
1
2
x
t
Qx + cx.
Pour un point x arbitraire, exprimons le minimum de q le long dun axe de direction v
originant en x :
min

q(x + v) = min

1
2
(x + v)
t
Q(x + v) + c(x + v).
En utilisant les conditions doptimalit de la section 2.2, on retrouve que
((x + v)
t
Q + c)v = 0,
do lon tire que les points minima y = x + v satisfont tous la relation (y
t
Q + c)v = 0,
ou encore y
t
(Qv) = cv. Par consquent, en notant a = (Qv) et b = cv, on voit que les
minima y satisfont la relation y
t
a = b, et donc appartiennent tous au mme hyperplan,
qui ne dpend pas de x! De plus, pour se dplacer dun point un autre sur cet hyperplan,
il sut dutiliser un dplacement d satisfaisant d
t
a = 0, ou, remplaant a par sa valeur,
d
t
Qv = 0. Deux vecteurs v et d qui satisfont une telle relation sont nomms conjugus
par rapport la matrice Q. Ces observations formalisent lintuition fournie par lexemple du
tableau 2.1 o nous observions que les directions des itrations paires taient parallles, et
utilisaient les mmes pas

.
2.6. FONCTIONS OBJECTIF QUADRATIQUES 91
Daprs les prcdents dveloppements, si lon pouvait restreindre un algorithme nuti-
liser que des directions conjugues aprs sa premire tape, il se comporterait comme un
algorithme en n1 variables. Si on pouvait restreindre lalgorithme restreint nutiliser que
des directions conjugues aux deux premires directions de lalgorithme, il se comporterait
comme un algorithme en n 2 variables, et ainsi de suite. Les algorithmes de directions
conjugues constituent justement une ralisation de ce rve.
Algorithme des directions conjugues
Supposons que nous ayons notre disposition n vecteurs linairement indpendants v
1
,
v
1
, . . . , v
n
. Il est possible les convertir en n vecteurs u
1
, . . . , u
n
mutuellement conjugus par
rapport une matrice Q symtrique et dnie positive. En eet, il sut dappliquer le
procd dorthogonalisation de Gramm-Schmidt aux vecteurs v. Une fois ces vecteurs u en
main, il sut dappliquer lalgorithme
x
0
donn
x
i
x
i1
+
_
arg min

(q(x
i1
+ u
i
)
_
u
i
pour identier x
n
, la solution au problme min q(x). En eet, ce procd squentiel assure
qu une tape donne, la suite des itrations sont toutes dans lintersection des hyperplans
de directions conjugues aux itrations prcdentes.
Algorithme du gradient conjugu
Lorsque les vecteurs v utiliss pour produire les vecteurs mutuellement conjugus u pro-
viennent de gradients de la fonction q, forme quadratique associe la matrice Q, justement
la matrice par rapport laquelle les vecteurs u sont conjugus, alors le procd de Gramm-
Schmidt se rduit la rcurrence de deux termes suivante :
d
k
= q(x
k
)
t
+
k1
d
k1
,
o

k
def
=
q(x
k+1
)Qd
k
d
t
k
Qd
k
.
Exercice 2.6.2 [Rappels de Gramm-Schmidt] Quelles sont les formules utilises dans le
procd dorthogonalisation de Gramm-Schmidt ?
92 CHAPITRE 2. OPTIMISATION DIFFRENTIABLES SANS CONTRAINTE
*Exercice 2.6.3 [Simplication de Gramm-Schmidt] Vriez que le procd de Gramm-
Schmidt se simplie bien aux formules du gradient conjugu lorsque les directions linaire-
ment indpendantes utilises pour produire les directions conjugues sont les gradients des
points x
k
.
Lalgorithme du gradient conjugu est donc exprim comme suit :
d
k
= q(x
k
)
t
+
k1
d
k1

k
=
q(x
k
)d
k
d
t
k
Qd
k
x
k+1
= x
k
+
k
d
k

k
=
q(x
k+1
)Qd
k
d
t
k
Qd
k
.
On retrouve la formule utilise dans lexemple du tableau 2.1 pour le calcul du pas

.
Exercice 2.6.4 [Application de lalgorithme du gradient conjugu] Appliquez lalgorithme
du gradient conjugu la fonction q(x, y) = 2x
2
2xy + y
2
+ 2x 2y partir du point
x
0
= (10, 5)
t
; comparez vos rsultats avec lexemple du tableau 2.1.
*Exercice 2.6.5 [Formules quivalentes du gradient conjugu] Dmontrez que les for-
mules suivantes constituent bel et bien une implantation de lalgorithme du gradient conju-
gu :
d
k
= q(x
k
)
t
+
k1
d
k1

k
=
q(x
k
)
2
d
t
k
Qd
k
x
k+1
= x
k
+
k
d
k

k
=
q(x
k+1
)
2
q(x
k
)
2
.
2.7. PROBLMES DE MOINDRES CARRS 93
Exercice 2.6.6 [Programme quadratique] Suite de lexercice 2.2.9, page 62.
a) Calculez les valeurs de a
0
et a
3
du modle en avec lalgorithme du gradient conjugu.
b) Calculez les valeurs de a
0
et a
3
du modle en laide de la dcomposition de Cholesky.
2.7 Problmes de moindres carrs
Les moindres carrs constituent une classe de problmes doptimisation tellement fr-
quente et utilise quil est justi de leur consacrer une section. Le contexte est celui dun
systme dquations F(x) = 0 o F : R
n
R
m
. Si m > n, en gnral, il ny a pas de
solution et en minimisant f(x) = F(x)
2
, on cherche satisfaire au mieux nos quations.
Au contraire, si m < n, il y a une innit de solutions, et on choisit celle de norme minimale
en minimisant encore une fois F(x)
2
. Mme dans le cas o m = n, on peut minimiser la
norme de F pour esprer obtenir la proprit de convergence globale.
On choisit de minimiser la norme au carr pour sassurer que la fonction minimiser est
direntiable, ce qui nest pas le cas pour une norme lorigine.
Exercice 2.7.1 [Normes] Montrez quil est quivalent de minimiser F(x) et F(x)
2
.
Exercice 2.7.2 [Somme de normes] On sait que la lumire emprunte toujours le chemin le
plus court, ce qui explique que lors dune rexion miroir, langle de rexion gale langle
dincidence. Cet exercice obtient le rsultat dans une situation trs simplie. On se place
en dimension deux, et considre deux points P = (P
x
, P
y
)
t
et Q = (Q
x
, Q
y
)
t
avec P
y
> 0 et
Q
y
> 0. On cherche identier le point X = (x, 0)
t
qui minimise la somme des distances
de P X et de X Q. On cherche donc rsoudre min
xR
f(x) = P X +QX o
seul X dpend de x. (voir gure).
a) En utilisant les conditions doptimalit, montrez que pour la solution optimale, langle
entre le segment PX et laxe des x (thetaP) est gal langle entre le segment QX
et laxe des x (thetaQ). La fonction norme nest pas direntiable lorigine, mais
puisque P
y
> 0, Q
y
> 0 et X
y
= 0, la solution recherche aura des normes strictement
positives, donc la fonction f est direntiable aux points dintrts.
b) Vriez quil nest pas quivalent de minimiser P X
2
+QX
2
.
94 CHAPITRE 2. OPTIMISATION DIFFRENTIABLES SANS CONTRAINTE
P
Q
X
thetaP thetaQ
2.7.1 Mthodes de descente pour les systmes dquations
Sans hypothses additionnelles, il est impossible de rsoudre un problme de trouver la
racine de F, F(x) = 0 par un algorithme globalement convergent utilisant une mthode de
descente. Cependant, sous certaines hypothses (F est une application monotone), on peut
appliquer un algorithme de minimisation au problme min F(x)
2
, qui sera alors globale-
ment convergent. Cependant, ds que F nest pas inversible en un x qui nest pas une racine
de F, la fonction F(x)
2
peut possder un minimum local en x si F(x) ker(F(x)), et
donc un algorithme de descente choue rsoudre le problme.
Exercice 2.7.3 [Fausses racines] Vriez laide dun exemple de fonction f de R dans R
quil est possible que f
2
possde un minimum local en x tel que f(x) = 0.
2.7.2 Mthodes spcialises aux mointres carrs
Nous avons tudi les expressions des drives de la fonction f(x) = F(x)
2
lexer-
cice 2.2.3.
f(x) = F(x)
t
F(x) =
m

i=1
F
i
(x)F
i
(x).

2
f(x) = F(x)
t
F(x) +
m

i=1
F
i
(x)
2
F
i
(x).
La matrice Hessienne comporte donc deux termes, le premier ne faisant intervenir que la
matrice Jacobienne de F. Si on utilise les deux termes, on peut appliquer une variante de
la mthode de Newton la fonction f. Cependant, le second terme comporte une somme
2.8. MISES EN UVRE 95
de matrices Hessiennes des composantes de F, possiblement fastidieux manipuler. Cest
pourquoi on peut envisager une approximation de la mthode de Newton qui nutilisera
que le premier terme F(x)
t
F(x). Cest la mthode nomme Gauss-Newton. Comme la
matrice F(x)
t
F(x) nest inversible que si m n, et encore, on rgularise souvent les
quations en leur ajoutant un multiple de lidentit, ide connue sous le nom de mthode
Levenberg-Marquardt.
GaussNewton
Donc, lalgorithme de Gauss-Newton consiste en litration
x
+
= x (F(x)
t
F(x))
1
F(x)
t
F(x),
1a condition bien sr que (F(x)
t
F(x)) soit inversible.
LevenbergMarquardt
Lalgorithme de LevenbergMarquardt consiste en litration
x
+
= x (F(x)
t
F(x) + I)
1
F(x)
t
F(x),
o > 0 est un paramtre de rgularisation. Plus est grand, plus litration ressemble
un algorithme de descente du gradient alors que de petites valeurs de font que lalgorithme
se rapproche de celui de GaussNewton.
2.8 Mises en uvre
Nous prsentons maintenant les tapes permettant de coder les variantes de mthodes
introduites prcdemment.
2.8.1 Mise en uvre de la direction de Newton modie
En adaptant adquatement les algorithmes de la section prcdente, nous pourrons pro-
poser des algorithmes pour calculer la direction de Newton modie utilise la section 2.4
pour construire un algorithme globalement convergent possdant la proprit de convergence
locale quadratique. Lalgorithme 2.3 rsume les modications ; une implantation comportera
en plus une prcaution qui limite le nombre total ditrations.
96 CHAPITRE 2. OPTIMISATION DIFFRENTIABLES SANS CONTRAINTE
Newton modi(x, , f)
{ Donns : x; }
{ un critre darrt, > 0 ; }
{ une fonction deux fois direntiable f ; }
rpter
d
N
Direction_Newton_Modie(f(x),
2
f(x))
Pas_admissible(x, d
N
, f)
x x + d
N
jusqu ( f(x) < )
Rsultat x
Algorithme 2.3: Newton modi.
Adaptation de la dcomposition de Cholesky
Nous avons vu plus haut comment calculer la dcomposition de Cholesky dune matrice
symtrique dnie positive. Si la matrice dintrt nest pas dnie positive, lalgorithme
ne pourra pas terminer, car certaines racines carres quil doit obtenir porteront sur des
nombres ngatifs.
En modiant la procdure de calcul de la dcomposition de Cholesky dune matrice
symtrique Q pour remplacer toute racine carre dun nombre ngatif par un petit nombre
positif (), nous obtenons
Q = LL
t
+ E,
o E reprsente lerreur de la dcomposition de la modication de la procdure de
calcul. Ainsi, si Q est vritablement dnie positive, E 0 alors que si Q possde une ou
des valeurs propres ngatives, ou encore trs petites, E assurera que LL
t
est une matrice
uniformment dnie positive.
Cette ide simple nest toutefois pas susante pour obtenir un algorithme performant. En
eet, comme le calcul des facteurs de Cholesky fait intervenir une division par les lments
diagonaux, sils valent , les facteurs de Cholesky deviendront normes. Gill et al [16] ont
propos une stratgie beaucoup plus subtile et ecace. Il sagit de dceler que Q nest pas
dnie positive bien avant de rencontrer un pivot ngatif. On peut rcrire les formules de
Cholesky comme suit, en dnotant Q
j
la sous-matrice quil reste traiter ltape j, et donc
Q = Q
1
,
Q
j
=
_

j
q
t
j
q
j

Q
j
_
, (2.9)
on peut calculer L
jj
=
_

j
+
j
, L
ij
= (q
j
)
i
/L
ii
pour i = j + 1, = . . . , n, et
Q
j+1
=

Q
j

q
j
q
t
j

j
+
j
. (2.10)
2.8. MISES EN UVRE 97

j
constitue la perturbation diagonale que lon applique. La stratgie simple introduite ci-
haut scrit
j
= min(
j
, 0). La stratgie prconise dans Gill et al choisit
j
comme
tant le plus petit nombre non-ngatif tel que
0
q
j

j
+
j

2
; (2.11)
puisque q
j

est positif,
j
+
j
sera 0 et
q
j

2
. En fait, si
j
< 0, Gill et al recom-
mandent
j
= 2
j
pour conserver linformation de
j
un signe prs, et nalement, on
retient que
j
= max(, |
j
|,
q
j

2
)
j
. On voit bien que si
j
est susamment positive,
|
j
| devrait dominer dans le max, et alors
j
= 0.
est une borne a priori choisie pour minimiser un pire cas sur la norme E tout en
assurant que E = 0 si A est susamment dnie positive. Si on dnote
M
comme tant la
prcision machine, Gill et al obtiennent

2
= max{, /

n
2
1,
M
}, (2.12)
o = max
i
|Q
ii
| et = max
j<i
|Q
ij
|. La portion
2
assure que E = 0 lorsque Q est
dnie positive.
Bien entendu, ces choix de
j
chaque pas de lalgorithme de dcomposition de Cholesky
inuencera le comportement global de la modication de litration de Newton.
Un des objectifs de toute mthode de modication de la dcomposition de Cholesky
est dobtenir une perturbation (la matrice E) la plus petite possible. Dans cet esprit, il
est avantageux de procder des permutations des lignescolonnes de la sous-matrice

Q
j
pour ramener dans le coin suprieur gauche le plus grand lment de la diagonale qui reste
traiter. De plus, comme discut prcdemment, nous utiliserons plutt la forme avec la
matrice diagonale D, et ainsi nous calculons P
t
QP = LDL
t
+ E, o P est la matrice de
permutation ramenant llment diagonal dans le coin suprieur gauche.
Exercice 2.8.1 [Direction de Newton modie] Considrez la fonction f(x) = x
4
1
+x
1
x
2
+
(1 + x
2
)
2
.
a) Montrez qu partir de lorigine, ni d
N
ni d
N
ne constitue une direction de descente.
b) Calculez la direction de Newton modie laide de la dcomposition de Cholesky
modie.
c) Vriez que la direction obtenue est bien une direction de descente.
98 CHAPITRE 2. OPTIMISATION DIFFRENTIABLES SANS CONTRAINTE
Exercice 2.8.2 [Implantation de la dcomposition de Cholesky modie] Compltez les
dtails de la dcomposition P
t
QP = LDL
t
+ E ; implantez le calcul de L, D et P, et
fournissez les outils pour calculer une direction de Newton modie.
Adaptation du gradient conjugu
Nous adaptons maintenant lalgorithme du gradient conjugu pour rsoudre les sous-
problmes linaires issus de la mthode de Newton, mme si la matrice
2
f(x) nest pas
dnie positive. Lide est la suivante : nous allons engendrer une suite 0 =
0
,
1
, . . . par
lalgorithme itratif du gradient conjugu appliqu au problme
min
d
q(d)
def
= f(x
k
)d +
1
2
d
t

2
f(x
k
)d = g
k
d +
1
2
d
t
H
k
d.
Pour ces sous-problmes, nous noterons p
i
la suite des directions conjugues, et
i
les pas
utiliss lintrieur de lalgorithme du gradient conjugu, de sorte que
i+1
=
i
+
i
p
i
.

i
dnote la suite qui convergerait vers d
N
si
2
f(x
k
) tait dnie positive. Nous allons
interrompre lalgorithme du gradient conjugu aussitt quil devient capable de dceler que
H
k
nest pas dnie positive. Pour ce faire, remarquons que

l
=
l

i=0

i
p
i
,
et, puisque les directions p
i
sont mutuellement conjugues par rapport la matrice H
k
,

t
l
H
k

l
=
l

i=0

i
(p
t
i
H
k
p
i
).
Par consquent, il est certain que
t
l
H
k

l
> 0 si tous les p
j
qui entrent dans la somme satisfont
tous p
t
i
H
k
p
i
> 0. Nous interromprons donc lalgorithme du gradient conjugu aussitt quune
des directions p

ne satisfait pas p
t

H
k
p

> p

. Si jamais = 0, cest que la direction
p
0
= f(x
k
)
t
est une direction de courbure ngative, mais cest nanmoins une direction
de descente forte, et nous lutiliserons : d = p
0
. Autrement, > 0 et nous utiliserons
d =
1

i=0

i
p
i
,
et la dnition de d assure que cest une direction susamment descendante.
2.8. MISES EN UVRE 99
Exercice 2.8.3 [Direction descendante] Dmontrez que la direction obtenue par le gra-
dient conjugu interrompu tel que dcrit ci-haut est susamment descendante.
Finalement, on peut implanter une stratgie de rsolution inexacte des problmes linaires
en terminant lalgorithme du gradient conjugu aussitt que q < f
2
, ce qui ne nuit
pas la convergence locale quadratique de la mthode (voir section 2.4.3). Lalgorithme 2.4
incorpore ces stratgies. Une mise en garde simpose ce moment : lalgorithme 2.4 est dcrit
mathmatiquement, mais il faudra, dans son implantation, prvoir des sorties de secours
car si la matrice Q est le moindrement mal conditionne, lalgorithme mathmatique ne
terminera jamais, ne russissant pas atteindre la prcision voulue avec des calculs en virgule
ottante.
Exercice 2.8.4 [Direction de Newton modie] Considrez nouveau la fonction f(x) =
x
4
1
+ x
1
x
2
+ (1 + x
2
)
2
.
a) partir de lorigine, calculez la direction de Newton modie laide de lalgorithme
du gradient conjugu.
b) Vriez que la direction obtenue est bien une direction de descente.
Exercice 2.8.5 [Implantation de la direction laide du gradient conjugu] Implantez
lalgorithme 2.4. Remarquez que la matrice Q nest utilise que dans des expressions produit
avec un vecteur. Ainsi, il nest pas ncessaire de connatre la matrice Q, mais il sut dtre
capable dvaluer
t
(
x
f(x+tv)) = v
t

2
f(x+tv) en t = 0. On peut utiliser des dirences
nies, ou un outil de direntiation automatique pour cette valuation.
2.8.2 Mise en uvre dalgorithmes de rgions de conance
Adaptation du gradient conjugu
Il est remarquable que la technique de la section prcdente peut galement tre utilise
pour rsoudre approximativement le sous-problme introduit dans la section 2.3.3. Rappelons
quil sagit de rsoudre un problme quadratique min
d
q(d). Une lgre modication
de lalgorithme 2.4 nous fournit lalgorithme 2.5. Plutt que dinterrompre les itrations
lorsquune direction de courbure ngative est rencontre, il sut de suivre cette direction
100 CHAPITRE 2. OPTIMISATION DIFFRENTIABLES SANS CONTRAINTE
Direction_Newton_Modie(c,Q)
{ Version du gradient conjugu ; contrle lordre de convergence }
{ q()
def
= (1/2)
t
Q + c }
0
p q()
t
si ((p
t
Qp <
2
p
2
) ) alors
Rsultat p
sinon
rpter

q()p
p
t
Qp
+ p
assez_prcis (q() < min(
1
, q(0)
1+
))
si ( assez_prcis ) alors

q()Qp
p
t
Qp
p q()
t
+ p
courbure_ngative (p
t
Qp <
2
p
2
)
jusqu ( assez_prcis courbure_ngative)
Rsultat
Algorithme 2.4: GCdirection de Newton modife
2.8. MISES EN UVRE 101
jusqu la frontire de la rgion de conance. La mise en garde concernant les critres darrt
en prcision nie sappliquent encore ici.
Rgion_de_conance(c,Q,, )
{ Version du gradient conjugu ; contrle lordre de convergence }
{ q()
def
= (1/2)
t
Q + c }
0
p q()
t
rpter
max{ > 0 : + p }
sortie p
t
Qp 0
assez_prcis (q() < min(
1
, q(0)
1+
))
si ( sortie ) alors

q()p
p
t
Qp
sortie >
si ( sortie ) alors
+ p

q()Qp
p
t
Qp
p q()
t
+ p
jusqu ( sortie assez_prcis)
si (sortie ) alors + p
Rsultat
Algorithme 2.5: GCRgion de conance
2.8.3 Mise en uvre dun pas admissible
Nous avons dj vu que le procd dArmijo conduit un algorithme globalement convergent.
Cependant, il peut parfois tre avantageux dutiliser un algorithme plus ecace pour iden-
tier un pas admissible, donc satisfaisant aux conditions de la dnition 2.3.2 :
f(x + d) f(x) <
0
f(x)d,
0
]0,
1
2
[,
f(x + d)d >
1
f(x)d,
1
]
0
, 1[.
Un tel pas est une approximation dun minimum local de la fonction h
x
k
,d
() = f(x
k
+ d).
Comme nous lavons vu au chapitre prcdent, le type dalgorithme le plus avantageux
combine la rduction dintervalle une technique dinterpolation polynmiale.
102 CHAPITRE 2. OPTIMISATION DIFFRENTIABLES SANS CONTRAINTE
Pas_admissible(x,d,f)
{ Version de lalgorithme dArmijo }
{ 0 <
0
< 0.5. }
1
tantque (f(x + d) f(x) >
0
f(x)d )
/2
Rsultat
Algorithme 2.6: Armijo
Interpolation polynmiale avec garde-fous
Tout comme dans le cas multidimensionnel, o la mthode dinterpolation polynmiale
(Newton) a t modie pour lui procurer la proprit de convergence globale, nous combine-
rons maintenant un algorithme de type rduction dintervalle une mthode dinterpolation
polynmiale pour rendre la mthode modie globalement convergente. Il sagit donc de
la mme dmarche quaux sections 1.9 et 2.4, mais les outils de modication sont un peu
dirents.
An dutiliser les algorithmes robustes du chapitre 1, introduisons la fonction
() = h
x,d
() h
x,d
(0)
0
h

x,d
(0).
La fonction vaut 0 en = 0, et tout point tel que () < 0 satisfait au critre dArmijo.
De plus, un point stationnaire de satisfait

() = h

x,d
()
0
h

x,d
(0) = 0, et donc, puisque

0
<
1
et h

x,d
(0) < 0, satisfait au critre de Wolfe. Par consquent, la recherche linaire
consiste approcher un point stationnaire de la fonction possdant une valeur ngative
() < 0.
Aprs avoir identi un intervalle initial laide de lalgorithme 1.1, il est avantageux de
le rduire en utilisant un polynme dinterpolation cubique. En eet, le seul cas dfavorable
correspond maintenant un point qui satisfait aux critres de Armijo et Wolfe, cest--dire
que () < 0 et

() 0.
Pour tre vritablement assur dobtenir un pas admissible, cependant, il faut raner
les algorithmes du chapitre 1 an de garantir que la valeur obtenue satisfait bel et bien la
condition que () < 0.
2.9 Traitement de problmes de trs grande taille
Lorsque les problmes rsoudre sont de trs grandes dimensions (un million et plus
de variables), il est impossible de manipuler les matrices des drives secondes moins
2.9. TRAITEMENT DE PROBLMES DE TRS GRANDE TAILLE 103
de problmes prsentant une structure favorable et des matrices Hessiennes creuses. Nous
discutons ici brivement des stratgies vitant lutilisation de matrices en tant que telles.
Mme si le but est dviter lutilisation explicite des matrices, il est hors de question de se
ramener la mthode de la pente la plus forte, dont la vitesse de convergence est beaucoup
trop faible. Trois familles de stratgies sont couramment utilises :
lexploitation de la structure parse des matrices.
gradient conjugu non-linaire ;
mthode de Newton utilisant seulement des produits Hessienvecteur.
Nous ne traiterons pas des matrices creuses dans cette section, mais donnerons quelques
dtails des deux autres stratgies.
2.9.1 Gradient conjugu non-linaire
Le gradient conjugu que nous avons examin pour la solution de problmes quadratiques
peut se gnraliser la minimisation de fonctions non-quadratiques. Plusieurs chercheurs ont
propos des formules, toutes quivalentes pour les fonctions quadratiques, pour dnir un
algorithme de gradient conjugu non-linaire. Certaines variantes se sont avres plus ecace
et robustes.
Les mthodes quasi-Newton sont galement quivalentes au gradient conjugu linaire
appliqu des fonctions quadratiques. Une ide ingnieuse pour les adapter aux problmes
de trs grande taille consiste se limiter quelques mises--jour sans constituer explicitement
la matrice B
k
ou H
k
. Ces variantes sont nomms mthodes quasi-Newton mmoire limite,
et peuvent tre vue comme des amliorations des algorithmes de gradient conjugu non-
linaire. Rappelons les formules quivalentes du gradient conjugu, en remplaant la fonction
quadratique q par une fonction f :
d
k
= f(x
k
)
t
+
k1
d
k1
(2.13)

k
= Pas de dplacement admissible (2.14)
x
k+1
= x
k
+
k
d
k
(2.15)

k
=
f(x
k+1
)
2
f(x
k
)
2
. (2.16)
Les variantes du gradient conjugu non-linaire dirent par la formule de calcul du pa-
ramtre
k
. Pour allger les notations, nous utiliserons g
k
= f(x
k
), y
k
= g
k
g
k1
. Pour
des fonctions quadratiques avec un calcul exact de
k
, toutes ces formules deviennent qui-
valentes. Pour des fonctions non-linaires, avec lutilisation de pas admissibles possiblement
peu prcis (valeurs de
0
proche de 0 et
1
proches de 1), la formule de Hager et Zhang semble
plus robuste et performante en pratique.
104 CHAPITRE 2. OPTIMISATION DIFFRENTIABLES SANS CONTRAINTE
Formule de Fletcher et Reeves
La formule de Fletcher et Reeves est justement la formule (2.16) que lon peut rcrire

k
=
g
k+1
g
t
k+1
g
k
g
t
k
Formule de Polak et Ribire
Dans cette formule, en fait, on ajoute le terme g
k+1
g
t
k
au numrateur ; pour une fonction
quadratique avec un pas de dplacement optimal, ce terme additionnel vaut 0.

k
=
g
k+1
y
t
k+1
g
k
g
t
k
Formule de Hestenes et Stiefel

k
=
g
k+1
y
t
k+1
y
k+1
d
k
Formule de Hager et Zhang

k
=
1
y
k+1
d
k
_
y
k+1
2d
t
k
y
k+1

2
y
k+1
d
k
_
g
k+1
Exercice 2.9.1 [quivalence des formules pour fonctions quadratiques] Lorsque f est une
fonction quadratique, il est possible de dnir exactement laide dune formule expli-
cite, et nous sommes dans le royaume du gradient conjugu linaire tel que prsent la
section 2.6.2. Dans ce cas, g
k
g
k1
et g
k
d
k
1. Utilisez ces proprits pour dmontrer
que toutes ces formules sont quivalentes.
Mthode L-BFGS
Cette mthode signie Limited memory BFGS et propose une mise--jour des matrices
quasi-Newtoniennes partir de quelques paires y
i
, s
i
appliques a une matrice de mise--
lchelle diagonale H
0
plutt que manipuler explicitement des matrices n n.
Cette implantation de la clbre formule BFGS consiste conserver m paires de quantits
y
i
= g
i
g
i1
et s
i
= x
i
x
i1
pour reconstruire un produit Hg
t
k
correspondant la direction
quasi-Newton. La matrice H nest jamais forme explicitement, mais les calculs repris en
accumulant dans deux boucles les rsultats de produits scalaires appropris.
2.10. RSUM 105
L-BFGS(g
k
)
{ Calcule le produit Hg
t
k
partir de m paires y
i
et s
i
}
{ r
i
def
=
1
y
i
s
i
}
q g
k
pour (i = k
1
k m1 )
a
i
r
i
qs
i
q q a
i
y
i
z H
0
k
q
t
pour (i = k m1
+1
k )
b r
i
y
i
z
z z + s
i
(a
i
b)
Rsultat z
Algorithme 2.7: L-BFGS
2.9.2 Newton tronqu
Lorsquon utilise le gradient conjugu pour rsoudre les quations de Newton, nul besoin
de disposer de la matrice Hessienne explicitement : seuls les produits Hessienvecteur sont
utiliss au sein de lalgorithme, que ce soit dans la variante avec recherche linaire ou celle
avec rgion de conance. Pour des problmes de grande taille, mieux vaut viter de constituer
la matrice Hessienne.
Dirences nies
Une manire de calculer le produit
2
f(x)v est dvaluer
(f(x+tv)
t
en t = 0. Or, une
drive
d(t)
dt
peut sapprocher par
(t+)(t)

pour une valeur de assez petite. Choisissons


donc 10
8
, environ la racine carre de la prcision machine et crivons
2
f(x)v
f(x)f(x+v)

.
Direntiation automatique
2.10 Rsum
Dans ce chapitre, nous avons dvelopp des outils danalyse de problmes doptimisation
direntiable sans contrainte qui conduisent lnonc de conditions ncessaires, lgrement
direntes des conditions susantes doptimalit : un point x

qui est un minimum local de


f satisfait ncessairement f(x

) = 0 et
2
f(x

) est une matrice semi-dnie positive. Par


106 CHAPITRE 2. OPTIMISATION DIFFRENTIABLES SANS CONTRAINTE
ailleurs, pour avoir lassurance quun point est bien un minimum local de f, il faut exiger de
plus que la matrice
2
f(x

) soit dnie positive. Lcart vient du fait que nous nutilisons


que les drives dordre un et deux de f, alors que ce sont possiblement ses drives dordre
suprieur qui dcrivent adquatement son comportement prs de x

.
Ensuite, nous avons construit des schmas algorithmiques itratifs abstraits qui possdent
la proprit de convergence globale, cest--dire que peu importe le point de dpart des it-
rations, les points daccumulation de la suite engendre par lalgorithmes satisfont une
condition doptimalit. Lexistence dalgorithmes dune telle famille, nomms algorithmes
de descente, provient de la structure du problme doptimisation; la solution de systmes
dquations quelconques ne peut pas, en gnral, tre obtenue par des algorithmes de des-
cente.
Nous avons ensuite modi litration de Newton en assurant une proprit de descente
susante de la direction, et en utilisant un pas admissible dans la direction. Ces modications
prservent la convergence locale quadratique de la mthode, mais la dotent en plus de la
proprit de convergence globale.
Limplantation de la mthode de Newton modie est ralise en adaptant judicieusement
les algorithmes de minimisation dune fonction quadratique, et nous avons illustr ce point
par lanalyse de deux techniques : la dcomposition de Choleski, et lalgorithme du gradient
conjugu.
Finalement, nous avons tudi quelques algorithmes unidimensionnels, que nous avons
combins en un algorithme robuste tout en tant ecace, en applicant encore une fois le
principe de modication dun algorithme dinterpolation polynmiale, comme lalgorithme
de Newton, pour le rendre globalement convergent.
2.11 Extensions et rfrences
Loptimisation direntiable sans contrainte ainsi que les problmes de racines dqua-
tions non-linaires ont t beaucoup tudies. Il est videmment impossible de rendre justice
la richesse de mthodes, dides publies sur ce sujet. Le livre de Dennis et Schnabel [11]
est consacr dans son entier de tels problmes.
Les mthodes de Newton modies ecaces ont t popularises assez tard, vers 1972 [26,
15]. Gill, Murray et leurs collaborateurs sont lorigine des mthodes utilisant la dcomposi-
tion de Cholesky ; avant leurs travaux, les mthodes de Newton modies taient considres
trop dlicates mettre en uvre pour tre comptitives. Limplantation laide du gradient
conjugu modi ainsi que la notion de mthode de Newton inexacte sont dues Dembo,
Eisenstat et Steihaug [8] alors que limplantation laide du gradient conjugu se retrouve
dans [9].
Les mthodes de rgion de conance originent dans les travaux de Levenberg[23] et
Marquardt[25] pour des problmes de moindres carrs. Goldfeld, Quandt et Trotter[17]
ont dvelopp ces ides pour des problmes de programmation non-linaire, et Steihaug[32]
2.11. EXTENSIONS ET RFRENCES 107
et Toint[33] sont lorigine de lutilisation du gradient conjugu pour rsoudre les sous-
problmes quadratiques.
Les mthodes quasi-Newtonniennes ont connu un dveloppement remarquable dans les
annes 1970. Larticle de Dennis et Mor[10] prsente un tour dhorizon complet. Plus r-
cemment, des chercheurs ont tudi des variantes de lquation quasi-Newton, et les progrs
rcents sont bien prsents dans [34].
Lalgorithme du gradient conjugu est d Hestenes et Stiefel [21]. La drivation pr-
sente la section 2.6.2 est inspire dun article de Beale [1]. De nombreux travaux, dont
ceux de Polak et Ribire [28], ainsi que ceux de Fletcher et Reeves [14] ont port sur la
gnralisation de lalgorithme du gradient conjugu des fonctions non-quadratiques.
Exercice 2.11.1 [Optimisation dans R
n
] La fonction de Rosenbrock est fameuse pour
les tests de mthodes doptimisation dans R
n
. La version originale de cette fonction pour
n = 2 est la suivante :
f(x) = 100(x
2
x
2
1
)
2
+ (1 x
1
)
2
.
Son minimum est en x = (1, 1)
t
et le point de dpart habituel est x
0
= (1, 1.2)
t
. f(x
0
) = 8,
f(x
0
) = (76, 40) and
2
f(x
0
) =
_
722 400
400 200
_
a) Vriez que x

= (1, 1)
t
est un minimum local satisfaisant aux conditions susante
doptimalit.
b) Vriez que
2
f(x
0
) nest pas dnie positive.
c) Malgr que
2
f(x
0
) ne soit pas dnie positive, il est possible que la direction de
Newton (non modie) soit tout de mme une direction de descente. Vriez que la
direction de Newton est en eet une direction de descente dans ce cas particulier.
d) Utilisez lalgorithme gradient conjugu pour calculer la direction de Newton modie
en utilisant le test darrt courbure_ngative.
e) Vriez que le pas de dplacement = 1 est admissible pour la direction de New-
ton modie, la direction de Newton non modie, mais pas pour la direction
d = f(x
0
). Prenez
0
= 0.1 et
1
= 0.9.
Exercice 2.11.2 [Projet de programmation] Implantez quelques variantes de lalgorithme
de Newton modi : comparez les rsultats dune variante avec une recherche de pas ad-
missible simple, lalgorithme dArmijo qui prend la premire puissance de
1
2
satisfaisant
au critre dArmijo, une recherche linaire plus sophistique combinant les ides des al-
gorithmes 1.1 et 1.4, et enn une version avec rgions de conance. Vous pouvez utiliser
108 CHAPITRE 2. OPTIMISATION DIFFRENTIABLES SANS CONTRAINTE
la modication issue de la dcomposition de Cholesky, ou encore lalgorithme du gradient
conjugu (comparez le comportement de la version rgion de conance avec celle de la
recherche linaire dans ce cas). Votre programme utilisera trois fonctions qui retournent
respectivement f(x), f(x) et
2
f(x). Testez votre programme (entre autres) avec la fonc-
tion de Rosenbrock : f(x) = 100(x
2
x
2
1
)
2
+(1x
1
)
2
partir du point de dpart (1.2, 1.0)
t
.
Cette fonction a longtemps constitu un d pour les programmes de minimisation. Les
modications de lalgorithme de Newton traitent habituellement cette fonction facilement.
2.11. EXTENSIONS ET RFRENCES 109
Le point (1,1) est un mi-
nimum local de la fonc-
tion de Rosenbrock. Lal-
gorithme de Newton mo-
di produit les itrations
traes en rouge alors que
lalgorithme de descente
du gradient celles en noir.
On peut voir que le gra-
dient zigzagge de part
et dautre de la valle,
puis saute par dessus
plutt que de se glisser
dans la valle, mais mal-
gr tout, narrive pas at-
teindre la solution en un
nombre ditrations rai-
sonnable car il ziggage en-
core en se rapprochant
lentement du minimum.
Figure 2.6 Exemple des algorithmes de Newton et du gradient
Sur cette version 3D, on
apprcie mieux que New-
ton modi suit la val-
le en descente alors que
le gradient, par hasard,
coupe au travers mais ne
converge pas.
Figure 2.7 Exemple des algorithmes de Newton et du gradient
110 CHAPITRE 2. OPTIMISATION DIFFRENTIABLES SANS CONTRAINTE
Chapitre 3
Programmation linaire
Sujets du chapitre
Observations sur la gomtrie du problme.
Condition doptimalit.
Dduction de lalgorithme du simplexe.
Thorie de la dualit linaire.
Dgnrescence.
Aspects numriques.
111
112 CHAPITRE 3. PROGRAMMATION LINAIRE
Introduction
Dans ce chapitre, nous abordons ltude directe des problmes de minimisation de fonc-
tions linaires dans un domaine dni par des contraintes linaires. Par une suite dobserva-
tions de nature gomtriques ou encore algbriques, nous dduirons les conditions doptima-
lit de la programmation linaire, lalgorithme du simplexe rvis, les notions de dualit, et
les variantes duales et primales-duales de lalgorithme du simplexe.
3.1 Formulation du problme
Pour simplier lexpos, nous considrons que le problme est formul sous la forme dite
standard, cest--dire
min cx
sujet Ax = b
x 0,
(3.1)
o c et x sont des vecteurs de R
n
, b un vecteur de R
m
et A une matrice mn. Les lignes de la
matrice A sont notes a
i
, i = 1, 2, . . . , m alors que ses colonnes sont notes A
j
, j = 1, 2, . . . , n.
De plus, nous faisons lhypothse que la matrice A est de rang m, cest--dire que ses lignes
sont linairement indpendantes. Ainsi, les contraintes dnissent lintersection dun sous-
espace de R
n
de dimension n m avec lorthant positif. Le vecteur c constitue le gradient
de la fonction linaire cx, et donc est un vecteur-ligne.
Nous verrons plus tard que lhypothse que les lignes de A sont linairement indpen-
dantes nest pas trs restrictive.
3.2 Solutions de base ralisables
Attardons-nous un instant sur la structure du domaine ralisable, cette intersection dun
sous-espace avec lorthant positif. Plus particulirement, essayons de caractriser les points
dintersection avec la frontire de lorthant. Dans R
3
, par exemple, sil ny a quune seule
contrainte (en plus des bornes qui dnissent lorthant), le domaine ralisable est lintersec-
tion dun plan avec lorthant. Selon la position de ce plan, lintersection peut tre vide, ou
encore constitue seulement de lorigine, ou encore dun demi-axe, ou dun cne, ou nale-
ment dun triangle. Dans tous les cas o le domaine ralisable nest pas vide, au moins un
point de la partie positive des axes canoniques en fait partie. Cest une proprit importante.
Nous verrons quun tel point appartenant un axe canonique est un point extrme du do-
maine ralisable, correspondant ce que nous nommerons une solution de base. Compltons
notre observation de R
3
en examinant lintersection dun sous-espace de dimension deux
(une droite) avec lorthant. Dans ce cas, si lintersection nest pas vide, elle est constitue
3.2. SOLUTIONS DE BASE RALISABLES 113
de lorigine, ou encore dune demi-droite, ou encore dun segment de droite. Dans ce cas,
les points extrmes appartiennent un plan canonique (extrmits de la demi-droite ou du
segment).
Ces illustrations gomtriques sont la base de la caractrisation des solutions de base en
programmation linaire. En eet, en supposant que le domaine nest pas vide, un sous-espace
de R
n
de dimension nm intersecte au moins un hyperplan canonique de dimension m. Dans
lexemple de R
3
, le plan intersecte au moins un axe canonique (hyperplan de dimension un)
alors que la droite intersecte au moins un des plans canoniques (xy, yz ou zx). Supposons
donc que les composantes dun vecteur de R
n
sont ordonnes de telle sorte que lhyperplan
canonique qui contient un tel point dintersection est form des m premires composantes.
Ce point est donc de la forme (x
1
, x
2
, . . . , x
m
, 0, 0, . . . , 0)
t
. Ordonnons consquemment les
colonnes de la matrice A ainsi que les composantes du vecteur c, et crivons :
min cx = [c
B
, c
N
]
_
x
B
x
N
_
sujet Ax = [B, N]
_
x
B
x
N
_
= Bx
B
+ Nx
N
= b
x
B
0
x
N
= 0.
Maintenant, supposons que la matrice B est inversible et donc x
B
= B
1
b. Les colonnes de
la matrice B forment une base du sous-espace canonique de dimension m alors que le vecteur
x
B
constitue les coordonnes du vecteur b dans cette base. La partition [[B | N]], ou encore
le vecteur x = [x
B
, 0] est nomm solution de base ralisable.
Thorme 3.2.1 Si le problme 3.1 possde une solution ralisable, alors il possde une
solution de base ralisable
Cette notation est universelle, malgr lambigit de la signication des symboles B et N,
qui rfrent la partition des composantes de R
n
mais qui rfrent aussi aux sous-matrices
correspondantes de la matrice A.
Avant de terminer cette introduction, revenons sur lhypothse que la matrice B soit
inversible. Puisque nous supposons que Bx
B
= b, mme si la matrice B est singulire, le
systme dquations Bx = b possde tout de mme une solution. En fait, si la matrice B est
singulire, cest que le systme Bx = b possde plusieurs solutions, dont certaines comportent
des composantes nulles. Cest une manifestation du phnomne de dgnrescence, que nous
traiterons plus tard.
Dnition 3.2.1 Un ensemble E est dit ane si x, y E, x + (1 )y E, R;
lensemble est dit convexe si la mme proprit est satisfaite pour [0, 1].
114 CHAPITRE 3. PROGRAMMATION LINAIRE
Exercice 3.2.1 [Systmes dquations linaires]
a) Montrez que si B est une matrice mm singulire, et si le systme Bx = b possde
une solution, alors lensemble des solutions constitue un ensemble ane.
b) Dans les conditions de a), montrez que si le systme possde une solution telle que
x 0, alors il possde une solution avec une ou des composantes nulles.
3.3 Condition doptimalit
Il est remarquable que la solution dun programme linaire puisse se limiter aux solutions
de base ralisables. Cest lobjet du thorme dit thorme fondamental de la programmation
linaire.
Thorme 3.3.1 Si le problme 3.1 possde une solution ralisable optimale, alors il pos-
sde une solution de base ralisable optimale
Nous examinons dans cette section les conditions sous lesquelles une solution [x
B
, 0] est
optimale pour le programme linaire (3.1). Il semble clair que pour quune telle solution soit
optimale, il sut de sassurer quil est impossible de rduire la fonction objectif c
B
x
B
+c
N
0
en augmentant les composantes de x
N
. Protons du fait que B est inversible pour crire
x
B
= B
1
(b Nx
N
). Cette dernire relation permet de mettre x
B
en fonction de x
N
. De
mme, la fonction objectif peut se rcrire comme
c
B
x
B
+ c
N
x
N
= c
B
B
1
(b Nx
N
) + c
N
x
N
= (c
N
c
B
B
1
N)x
N
+ c
B
B
1
b.
En fait, il est maintenant possible de reformuler le programme (3.1) en utilisant seulement
les composantes x
N
, donnant le programme rduit :
min (c
N
c
B
B
1
N)x
N
sujet B
1
(b Nx
N
) 0
x
N
0.
(3.2)
On voit donc que si (c
N
c
B
B
1
N) 0, alors x
N
= 0 est solution du programme (3.2),
et donc x
B
, x
N
est solution du programme (3.1). Si de plus x
B
> 0 et x
N
= 0 est solu-
tion du programme (3.2), alors (c
N
c
B
B
1
N) 0. En eet, autrement, il serait possible
3.4. ALGORITHME DU SIMPLEXE 115
daugmenter lgrement une composante de x
N
associe une composante ngative du vec-
teur (c
N
c
B
B
1
N) tout en assurant que x
B
demeure non-ngatif, ce qui ferait dcrotre la
fonction objectif, contredisant loptimalit de la solution.
Cependant, si une composante de x
B
est nulle, il est concevable quaucune augmentation
dune certaine composante de x
N
ne maintienne x
B
non-ngatif. Ceci est une manifestation
du phnomne de dgnrescence, que nous tudierons en dtail plus tard. Mentionnons
seulement que dans un tel cas, la dcomposition [[B | N]] des composantes positives nest pas
unique (puisquune valeur de x
B
est nulle), et il est possible que le vecteur (c
N
c
B
B
1
N)
soit non-ngatif pour une autre dcomposition.
En terminant cette section, prsentons la notation usuelle en programmation linaire. Le
vecteur ligne
def
= c
B
B
1
est nomm multiplicateurs alors que le vecteur c
N
N est nomm
vecteur des cots rduits. Souvent, on dnote N = z, de telle sorte que le j
ime
cot rduit
sexprime comme c
j
z
j
.
3.4 Algorithme du simplexe
Encore une fois, nous allons dduire lalgorithme du simplexe en supposant que la condi-
tion doptimalit nonce plus haut nest pas satisfaite en un certain point qui sexprime
comme [x
B
, 0] 0.
Examinons donc un cas o la dcomposition [x
B
, 0] donne lieu des cots rduits ngatifs.
En dautres termes, examinons la situation lorsque les conditions doptimalit discutes plus
haut ne sont pas satisfaites. Nous allons proposer une autre dcomposition [x
B
, 0] pour
laquelle la valeur de la fonction objectif c
B
x
B
< c
B
x
B
. Tout comme dans la discussion au
sujet des conditions doptimalit, supposons que x
B
> 0. Nous tudierons en dtail le cas
dgnr plus loin.
Comme nous lavions discut plus haut, il est alors possible daugmenter une composante
de x
N
tout en diminuant la fonction objectif. Supposons que nous ayons une composante
pour laquelle c

z

< 0. Alors, nous allons augmenter la composante x

. Sil est possible
daugmenter x

sans quaucune composante de x
B
ne diminue, alors il est possible de pro-
duire une solution ralisable de cot aussi petit que lon veut, et le problme est non-born
infrieurement.
Autrement, il nous faut dterminer laugmentation maximale que nous pouvons raliser
la composante x

tout en assurant x
B
0. Examinons lexpression que nous connassons,
x
B
= B
1
(b Nx
N
). Puisque nous augmentons seulement la composante x

, crivons x
B
=
B
1
(b N

x

). Cest donc le vecteur B
1
N

qui est responsable de laugmentation ou de la
diminution des composantes de x
B
en fonction de x

. Si B
1
N

0, alors aucune composante
de x
B
ne diminue lorsque x

augmente, et le problme nest pas born. Autrement, une
augmentation unitaire de x

provoque un changement de x
B
= B
1
N

, ou encore, pour
une composante i donne, x
i
= (B
1
N

)
i
. Puisque pour x
N
=0 on a x
B
= B
1
b, on a que la
116 CHAPITRE 3. PROGRAMMATION LINAIRE
valeur de x

qui annule x
i
est prcisment
x
i
x
i
. On garanti donc que x
B
demeure non-ngatif
en posant
x

= min
i:x
i
>0
(
x
i
x
i
).
Aprs ce changement, la partition [[B | N]] est modie en ajoutant la variable B et en
enlevant de B (pour lajouter dans N) un des x
i
qui devient zro, cest--dire un qui atteint le
min
i:x
i
>0
(
x
i
x
i
). Alors, on passe de la partition [[B | N]] la nouvelle partition [[B

| N

]] dnie
comme suit : B

= B { }\{} et N

= N {}\{ }, o est un des indices qui atteignent


le min
i:x
i
>0
(
x
i
x
i
). Nous supposons pour linstant que ce min nest atteint que pour un seul
indice et de plus que x

> 0. Lorsque ce nest pas le cas, cest que le problme comporte de


la dgnrescence, et ce phnomne sera tudi plus tard.
Nous examinerons plus tard diverses techniques permettant de mettre--jour linforma-
tion que reprsente la matrice B
1
plutt que de recalculer celle-ci chaque modication
de la partition [[B | N]]. Pour linstant, contentons-nous dobserver que si on sous la main
une reprsentation de B
1
alors B
1
(B, N

) = (I, x), donc, dans lordre des variables de la
nouvelle partition, cette dernire matrice devient
B
1
(B
1
, . . . , B
i1
, N

, B
i+1
, . . . , B
m
, B
i
) = (e
1
, . . . , e
i1
, x, e
i+1
, . . . , e
m
, e
i
)
et en utilisant des oprations lmentaires sur les matrices, il est possible de transformer
cette dernire en (I, N

).
Sans prciser davantage comment seectuent les calculs, nous pouvons noncer lalgo-
rithme dit du simplexe rvis. Si le choix de la variable sortante est unique de mme que
x
B
> 0, il est clair que cet algorithme termine en un nombre ni de calculs car le nombre de
dcomposition [[B | N]] est grand, mais ni et chaque nouvelle dcomposition examine, la
fonction objectif dcrot, empchant den examiner aucune plus dune fois. Cependant, nous
verrons plus tard quil faut prciser davantage lalgorithme pour garantir sa terminaison pour
des problmes dgnrs.
Remarquons ici que lalgorithme du simplexe original (non rvis) consiste manipuler un
tableau donn par la matrice

A = B
1
[b, B, N] = [x
B
, I, B
1
N] en calculant explicitement
toute la matrice transforme. La version rvise de lalgorithme prsente ici consiste
calculer au besoin seulement la colonne B
1
N

partir dune reprsentation de la matrice
B
1
.
Exercice 3.4.1 [Programmes non borns] Est-il possible que le programme (3.1) ainsi que
le programme max cx sous les mmes contraintes soient tous deux non-borns ? Justiez.
3.4. ALGORITHME DU SIMPLEXE 117
Simplexe rvis
{ Donnes : une partition [[B | N]] de R
n
, une reprsentation }
{ de la matrice B
1
ainsi quune solution ralisable [x
B
, 0]. }
optimal faux
non_born faux
rpter
{ Production dun vecteur de cots rduits }
SOLUTION(B = c
B
)
z
N
N
d c
N
z
N
{ Choix dune variable entrante }
si (d > 0 ) alors optimal vrai
sinon
Calcule_
x SOLUTION(Bx = N

)
{ Choix dune variable sortante }
si (x < 0 ) alors non_born vrai
sinon
arg min
i:x
i
>0
(
x
i
x
i
)
{ Mises--jour diverses }
[[B | N]] [[B { }\{} | N {}\{ }]]
B
1
Mise__jour(B
1
, [[B | N]], , )
jusqu ( optimal non_born)
En pratique, les deux rsolutions de systmes linaires sont ecaces car la matrice B est
reprsentes par une dcomposition approprie la solution. Cette dcomposition est donc
mise jour en mme temps que la partition des composantes ; dans lalgorithme, nous avons
nomm cette reprsentation B
1
, mais nous verrons quil sagit plutt dune dcomposition
de la matrice B = LU
Algorithme 3.1: Simplexe rvis.
118 CHAPITRE 3. PROGRAMMATION LINAIRE
3.5 Dualit
Examinons maintenant les relations que nous avons obtenues jusqu date pour en dduire
une proprit importante laquelle satisfont les multiplicateurs lorsque la base est opti-
male. Soit donc [x
B
, 0] une solution ralisable optimale associe la dcomposition [[B | N]].
Nous avons la dnition B = c
B
. Par ailleurs, loptimalit de la base nous assure que
c
N
z
N
0, ou encore N c
N
. Donc, les multiplicateurs associs une base optimale
satisfont la relation
_
B
t
N
t
_
= A c. Ceci justie la proposition suivante.
Proposition 3.5.1 Si x
B
> 0, alors = c
B
B
1
est une solution ralisable au programme
(nomm dual)
max b
sujet A c
(3.3)
Cette proposition constitue la premire moiti du thorme de dualit. En fait, puisque nous
supposons quil existe une solution optimale [x
B
, 0], nous avons galement
Proposition 3.5.2 est une solution optimale au programme (3.3)
Preuve Nous allons dmontrer cette proposition en ramenant ce dernier programme
la forme standard. Cet exercice nous permet dutiliser des manipulations classiques et den
introduire la notation habituelle. Pour transformer en galits les contraintes dingalit, nous
introduisons des variables dcart 0 et rcrivons A c sous la forme A+ = c. Pour
que toutes les variables qui dnissent le programme soient non-ngatives, nous remplaons
les variables libres par une dirence de nouvelles variables non-ngatives : =
+

avec
+
0 et

0. Ainsi, le programme (3.3) se rcrit sous forme standard


max (
+

)b
sujet (
+

)A+ = c

+
0

0
0.
(3.4)
Si lon dcompose selon la partition [[B | N]], on retrouve
B
= 0 et
N
0. En cons-
quence, une base du programme (3.4) est donne par
_
B
t
1
B
t
2
0
N
t
1
N
t
2
I
_
. En crivant la d-
nition des multiplicateurs pour le problme (3.4), on constate quil sagit prcisment du
vecteur [x
B
, 0] et en crivant les conditions doptimalit pour le programme (3.4), on constate
quil ne sagit de rien dautre que la condition x
B
0, ce qui conrme que est solution
optimale pour le problme (3.4). 2
3.5. DUALIT 119
Corollaire 3.5.1 [carts complmentaires] Ajoutons des variables dcart s de telle sorte
que les contraintes du programme (3.3) deviennent yA+s = c avec s 0 ; alors, si x et [y, s]
sont des solutions optimales pour les programmes (3.1) et (3.3) respectivement, sx = 0.
Nous sommes maintenant en mesure de dmontrer le thorme de dualit faible. Nous
aborderons le thorme de dualit forte plus loin, o nous traiterons de la dgnrescence.
La dualit faible arme que si les programmes primal et dual ont la mme valeur de fonction
objectif pour un x et un ralisables, alors le x et en question sont des solutions optimales.
Le thorme de dualit forte se contente de lexistence dune solution optimale lun des
deux programmes pour garantir lexistence dune solution optimale de mme valeur pour
lautre.
Thorme 3.5.3 Considrons les problmes (3.1) et (3.3).
a) si les deux programmes possdent une solution ralisable x et , alors cx b ; de
plus, si cx = b, alors x et sont optimaux pour les programmes (3.1) et (3.3)
respectivement.
b) si un des problmes nest pas born, alors lautre nest pas ralisable.
c) Si un des programmes nest pas ralisable, alors lautre est soit non-born, soit non-
ralisable.
Preuve La partie a) dcoule des propositions prcdentes. De mme, pour la partie c),
si un programme nest pas ralisable, lautre ne peut pas possder de solution optimale car
sinon, de la contredirait la partie a). On laisse en exercice le soin de trouver un exemple o
ni le primal, ni le dual ne possdent de solution ralisable.
Pour justier la parties b), examinons le problme (3.3). Ses contraintes sont A c,
et donc Ax cx pour tout vecteur ralisable pour le problme (3.3). Maintenant, en
supposant que x est ralisable pour le problme (3.1), on retrouve Ax = b de sorte que lon
obtient b cx, cest--dire que toute solution ralisable pour le dual possde une valeur de
fonction objectif la valeur de lobjectif primal pour une solution ralisable quelconque. Si
le primal nest pas born, cest quaucun ne satisfait b > . 2
Les problmes (3.1) et (3.3) sont lis entre eux par une relation de dualit. Dautres
formulations de programmes linaires conduisent dautres paires de problmes duaux.
Exercice 3.5.1 [Programmes irralisables] Fournissez un exemple de programme pour
lequel ni le primal, ni le dual ne possde de solution ralisable.
120 CHAPITRE 3. PROGRAMMATION LINAIRE
Exercice 3.5.2 [Dualit] Considrez le programme linaire suivant
min cx
sujet Ax b
x 0,
et vriez que son dual est
max yb
sujet yA c
y 0
en le ramenant la forme standard, puis en simpliant le dual ainsi obtenu.
Exercice 3.5.3 [Dualit] Considrez le programme linaire le plus gnral envisageable
min c
1
x
1
+ c
2
x
2
sujet A
11
x
1
+ A
12
x
2
b
1
sujet A
21
x
1
+ A
22
x
2
= b
2
x
1
0,
o A est une matrice (m
1
+ m
2
) (n
1
+ n
2
) et c, x R
n
1
+n
2
et b R
m
1
+m
2
. Caractrisez
le dual de ce problme.
3.6 Dgnrescence
Jusqu maintenant, nous avons escamot les dicults causes par la dgnrescence en
supposant systmatiquement que x
B
> 0, et que le choix de la variable sortante tait unique
dans lalgorithme 1.1. Penchons-nous maintenant sur le problme de la dgnrescence.
Dnition 3.6.1 [Solution de base dgnre] Une solution de base x
B
est dite dgnre
lorsque une ou plusieurs composantes de x
B
sont nulles.
3.6. DGNRESCENCE 121
Ce phnomne peut se manifester pour le programme (3.1) tout comme pour son dual (3.3),
o il snonce comme suit : le vecteur de cot rduit c
N
N associ une solution ralisable
de base [x
B
, 0] possde une composante nulle.
Dans le cas de dgnrescence du programme primal (3.1), il est probable que lon puisse
trouver une autre dcomposition [[B | N]] dcrivant la mme solution ralisable x
B
puisque
sa composante nulle nappartient pas naturellement aux composantes B. Dans le second
cas, il est possible de modier la partition [[B | N]] en changeant la solution ralisable, mais
sans modier la valeur de la fonction objectif. Dans chacun de ces cas, le fait de changer
de partition [[B | N]] nentrane pas de diminution de la fonction objectif, et il faut raner
lalgorithme pour pouvoir dmontrer quil ne produit pas de cycle de partitions. Nous illus-
trerons un tel cycle la section prochaine, et proposerons une analyse dune rgle permettant
dviter ce phnomne de cyclage.
*Exercice 3.6.1 [Dgnrescence et unicit]
a) Dmontrez que si aucune solution optimale du programme (3.1) nest dgnre, alors
le programme (3.3) possde une solution unique.
b) Est-il vrai que le programme (3.3) possde toujours plus dune solution lorsque le
primal (3.1) possde une solution dgnre ?
Exercice 3.6.2 [Dgnrescence] Considrez les contraintes linaires
n

i=1
x
ij
= 1, j = 1, 2, . . . n
n

j=1
x
ij
= 1, i = 1, 2, . . . n
x
ij
0, i = 1, 2, . . . n, j = 1, 2, . . . n.
Trouvez un vecteur c pour lequel ce problme possde des bases dgnre simultanment
pour les programmes (3.1) et (3.3).
3.6.1 Un exemple de cyclage dans lalgorithme du simplexe
Pour prsenter cet exemple, nous utiliserons la forme usuelle de tableau du simplexe. Il
sagit de donner sous forme condense toutes les quantits utiles dans lalgorithme 1.1. Le
122 CHAPITRE 3. PROGRAMMATION LINAIRE
tableau comporte donc les quantits relatives la partition [[B | N]], la matrice A multiplie
par linverse de la matrice B, le vecteur B
1
b ainsi que les quantits c
N
z
N
. La structure
du tableau est la suivante :
x
c
B
x
B
c z
x
B
B
1
A
videmment, c
B
z
B
= 0 et, moins que la sparation [[B | N]] sous la main soit optimale, au
moins un c
j
z
j
est ngatif. Dans lexemple, nous choisissons systmatiquement la variable
entrante correspondant lunique indice du c
j
z
j
le plus ngatif. Pour ce qui est de la
variable sortante, nous choisissons systmatiquement la premire (dans lordre x
1
,x
2
,...) qui
atteint le min
i:x
i
>0
(
x
i
x
i
). Pour lexemple, on a quelquefois le choix entre deux variables de
bases qui sont nulles. On choisit alors celle dindice minimum.
Il devrait tre clair que les rgles utilises pour dterminer les variables entrantes et
sortantes inuencent le comportement de lalgorithme du simplexe, et que lexemple de
cyclage suivant ne vaut que pour notre rgle dentrer la variable de cot rduit minimum et
de sortir la premire variable (si plusieurs peuvent sortir).
Nous avons dj mentionn quil est possible de mettre--jour la reprsentation de la
matrice B
1
en utilisant des oprations lmentaires sur les matrices. Cette opration de
mise--jour se nomme opration de pivot du simplexe. Dans les tableaux 3.1 qui suivent,
le pivot est encadr. Le passage dun tableau au suivant peut seectuer sans connatre la
matrice A originale, simplement en zrotant la colonne du pivot (sauf le pivot lui-mme) et
en divisant la ligne du pivot par le pivot. Dans ce processus, la colonne du pivot devient un
vecteur unitaire alors quun des vecteurs unitaires de la matrice identit B
1
B est modi.
Ce dernier tableau, ou encore cette dernire partition [[B | N]] est exactement la mme
que la premire, et lalgorithme ne terminera donc jamais, tant prisonnier de ce cycle.
Cet exemple produit un cycle parce que deux variables de base sont nulles, et selon les
rgles dentre et de sorties, aucun pivot ne change de valeur de x, mais les pivots changent
uniquement la dcomposition [[B | N]].
3.6.2 Rgles danti-cyclage
Pour remdier au phnomne de cyclage de lalgorithme du simplexe, plusieurs auteurs
ont prsent des rgles pour choisir les variables entrantes et sortantes.
Nous prsentons deux telles rgles. La premire conserve la mme stratgie pour choisir la
variable sortante, mais impose une stratgie nouvelle pour choisir la variable entrante (rgle
de Bland) ; son analyse est remarquablement simple, et elle sapplique trs bien lalgorithme
du simplexe rvis tel que prsent. La seconde permet nimporte quelle stratgie pour choisir
la variable entrante, mais impose un choix prcis pour choisir la variable sortante (rgle
3.6. DGNRESCENCE 123
x
1
x
2
x
3
x
4
x
5
x
6
x
7
3
3
4
20
1
2
6 0 0 0
0
1
4 8 1 9 1 0 0 B = {5, 6, 7}
0
1
2
12
1
2
3 0 1 0 N = {1, 2, 3, 4}
1 0 0 1 0 0 0 1

3 0 4
7
2
33 3 0 0
0 1 32 4 36 4 0 0 B = {1, 6, 7}
0 0 4
3
2
15 2 1 0 N = {2, 3, 4, 5}
1 0 0 1 0 0 0 1

3 0 0 2 18 1 1 0
0 1 0 8 84 12 8 0 B = {1, 2, 7}
0 0 1
3
8

15
4

1
2
1
4
0 N = {3, 4, 5, 6}
1 0 0 1 0 0 0 1

3
1
4
0 0 3 2 3 0
0
1
8
0 1
21
2

3
2
1 0 B = {2, 3, 7}
0
3
64
1 0
3
16
1
16

1
8
0 N = {1, 4, 5, 6}
1
1
8
0 0
21
2
3
2
1 1

3
1
2
16 0 0 1 1 0
0
5
2
56 1 0 2 6 0 B = {3, 4, 7}
0
1
4
16
3
0 1
1
3

2
3
0 N = {1, 2, 5, 6}
1
5
2
56 0 0 2 6 1

3
7
4
44
1
2
0 0 2 0
0
5
4
28
1
2
0 1 3 0 B = {4, 5, 7}
0
1
6
4
1
6
1 0
1
3 0 N = {1, 2, 3, 6}
1 0 0 1 0 0 0 1

3
3
4
20
1
2
6 0 0 0
0
1
4 8 1 9 1 0 0 B = {5, 6, 7}
0
1
2
12
1
2
3 0 1 0 N = {1, 2, 3, 4}
1 0 0 1 0 0 0 1
Table 3.1 Cyclage. Cet exemple montre quavec les rgles usuelles, lalgorithme du sim-
plexe peut ne pas converger. Le tableau correspond au vecteur b et la matrice A multiplis
par linverse de la sous-matrice des colonnes dindice B; dans le tableau, on reconnat donc
la matrice identit dans les colonnes dindice B
124 CHAPITRE 3. PROGRAMMATION LINAIRE
lexicographique) ; danalyse plus complexe, cette rgle semble plus utile en pratique, malgr
quelle sapplique plus naturellement au simplexe dit non-rvis.
Dnition 3.6.2 [Rgle de Bland] La variable entrante est la premire pour laquelle c
j

z
j
< 0 : = min{j : c
j
z
j
< 0}. La variable sortante est la premire atteindre le
min
i:x
i
>0
(
x
i
x
i
) : = min{i : (
x
i
x
i
) (
x
k
x
k
)k : x
k
> 0}.
Lautre rgle que nous prsentons fait intervenir la notion dordre lexicographique de
vecteurs.
Dnition 3.6.3 [Ordre lexicographique] Un vecteur v R
n
est dit lex-positif, not v
L
0
si sa premire composante non-nulle est positive ; v = 0 est lex-zro, not v
L
= 0.
Utilisant cette dnition, on peut comparer deux vecteurs par lquivalence v
L
u
v u
L
0, et dnir le lex-min dun ensemble de vecteurs {v
i
} comme celui (ou ceux) pour
lesquels v
i
L
v

, i.
La rgle de pivot lexicographique consiste choisir parmi les indices i qui atteignent le
min
i:x
i
>0
(
x
i
x
i
) celle dont la ligne complte (B
1
N)
i
est lex-min de toutes les lignes telles que
x
i
= (B
1
N

)
i
> 0. Remarquons que lordre des composantes de R
n
est important, et que
malgr que nous regroupions en deux ensembles les variables, les comparaisons lexicogra-
phiques doivent seectuer selon lordre des variables du programme original (3.1).
Dnition 3.6.4 [Rgle lexicographique danti-cyclage] Supposons que toutes les lignes de
la matrice A soient lex-positives : a
i
L
0. On peut choisir toute colonne telle que c

z

< 0 ;
la variable sortante est choisie selon le critre lex-min comme suit : soit

A = B
1
[b : A], la
matrice transforme dont les lignes sont a
i
. satisfait
a

a

L
<
a
i
a
i
, i : a
i
> 0.
Remarquons que sous lhypothse que A est de rang m, aucune paire de lignes de A nest
proportionnelle, et donc lindice ainsi dni est unique. Remarquons galement quil est
toujours possible de dmarrer lalgorithme du simplexe de sorte que les lignes de la matrice

A soient lex-positives.
Exercice 3.6.3 [Anti-cyclage] Considrez le tableau initial de lexemple de la sec-
tion 3.6.1 ; avec chacune des deux rgles danti-cyclage prsentes la section 3.6.2, eectuez
susamment ditrations de lalgorithme du simplexe pour changer de point ralisable.
3.6. DGNRESCENCE 125
Exercice 3.6.4 [Valeur optimale] Quelle est la valeur optimale du programme linaire
sur lexemple de cyclage ?
Exercice 3.6.5 [Deux phases] Proposez une mthode, utilisant deux phases, permettant
que pour chacune des deux phases, le tableau initial comporte des lignes lex-positives.
3.6.3 Convergence nie de lalgorithme du simplexe
Nous allons montrer que lalgorithme du simplexe modi avec la rgle lexicographique
ne peut pas cycler.
Thorme 3.6.1 Supposons que lon dmarre lalgorithme du simplexe avec un tableau dont
les lignes sont lex-positives. En appliquant la rgle lexicographique, (i) les lignes de la matrice

A = B
1
[b, A] demeurent lex-positives et (ii) la premire ligne du tableau est strictement lex-
croissante.
Preuve Montrons dabord que les lignes demeurent lex-positives. Aprs un pivot, la
me
ligne devient
a

=
a

a

avec a

> 0 de sorte que a

demeure lex-positive. Lorsque i = , distinguons deux cas.


a
i
> 0 ; dans ce cas,
a

i
=
a
i
a
i
a

a

= a
i
_
a
i
a
i

a

_
0
par choix lexicographique.
a
i
0 ; dans ce cas,
a

i
=
a
i
a
i
a

a

= a
i
+
| a
i
| a

a

L
a
i
126 CHAPITRE 3. PROGRAMMATION LINAIRE
Enn, examinons leet dun pivot sur la ligne 0 dun tableau. Cette ligne est compose
de [c
B
x
B
, c c
b
B
1
A]. Notons cette ligne par a
0
. On peut montrer quun pivot transforme
la ligne 0 en
a

0
= a
0

a
0
a

a

= a
0
+
| a
0
| a

a

L
> a
0
puisque par hypothse a
0
< 0 (critre dentre) et toutes les lignes sont lex-positives. Par
consquent lalgorithme ne peut pas cycler, car il ne peut pas rexaminer deux fois une mme
base. 2
*Exercice 3.6.6 [Thorie] Dmontrez la formule utilise dans la preuve du thorme 3.6.1
donnant la mise jour de la ligne 0 aprs un pivot.
Le rsultat prcdent permet de garantir que lalgorithme du simplexe ne termine pas
avec des cots relatifs ngatifs : en eet, la rgle dentre choisit un indice de cot relatif
ngatif, et la rgle danti cyclage assure que la dcomposition [[B | N]] ne sera jamais revisite,
donc la seule possibilit est de terminer avec des cots relatifs non-ngatifs. Ceci dmontre
le thorme de dualit forte.
Thorme 3.6.2 Si le programme (3.1) possde une solution optimale x

, alors le pro-
gramme (3.3) possde une solution optimale

telle que cx

b.
Preuve Soit x

la solution optimale obtenue par lalgorithme du simplexe utilisant une


rgle danti-cyclage, [[B | N]] la partition optimale et

= c
B
B
1
les multiplicateurs associs.
Alors, les cots relatifs c

N sont non-ngatifs. Par consquent,

est une solution


ralisable pour le dual. De plus,

b = c
B
B
1
b = c
B
x

B
= cx

. 2
3.7 Implantation numrique de lalgorithme du sim-
plexe
Jusqu maintenant, nous avons vit de discuter de limplantation de lopration de pi-
votage, permettant deectuer une itration de lalgorithme du simplexe de manire ecace.
En gnral, le calcul de linverse dune matrice B m m non-singulire est une opration
qui ncessite O(m
3
) oprations. Comme nous allons le voir, il est possible dimplanter lal-
gorithme du simplexe en utilisant seulement O(mn) oprations par itration.
3.7. IMPLANTATION NUMRIQUE DE LALGORITHME DU SIMPLEXE 127
La matrice B
1
est requise dans deux sous-calculs de lalgorithme 1.1 : il sagit de
SOLUTION(B = c
B
) et de SOLUTION(Bx = N

). Nous avons choisi dcrire ces oprations
sous forme de solutions de systmes linaires pour attnuer le rexe naturel de parler de
B
1
. En eet, lutilisation de la matrice inverse est un bien mauvais choix pour obtenir la
solution de systmes linaires, tant du point de vue de lecacit des calculs que du point
de vue de la prcision numrique de la solution. Dans les ouvrages de mthodes numriques,
on recommande plutt dutiliser une mise en facteurs, aussi nomme dcomposition de la
matrice B; les dcompositions recommandes sont la dcomposition LU, correspondant la
mthode de Gauss, et la dcomposition QR, pouvant tre calcule avec les algorithmes de
Givens, Householder ou Gramm-Schmidt.
Dans la suite de cette section, nous prsentons limplantation de lopration de pivotage
de lalgorithme du simplexe en utilisant ces deux dcompositions matricielles. Ensuite, nous
discutons brivement des dicults numriques causes par le phnomne de dgnrescence,
ou encore de dgnrescence numrique.
3.7.1 Utilisation de la dcomposition LU
La dcomposition LU dune matrice carre est obtenue par le procd dlimination de
Gauss. Lappendice A rsume les variantes de cette mthode. Supposons donc que la matrice
B soit dcompose B = LU, o U est obtenue par le procd dlimination de Gauss, et L
reprsente les oprations lmentaires utilises lors de llimination. Supposons maintenant
que la matrice B se fasse substituer une nouvelle colonne B

i
la place de lancienne. Alors,
de la relation U = L
1
B, on tire que H = L
1
B

sera de la forme suivante :


i
Il sut maintenant, laide dune permutation de colonne, de dplacer la colonne trouble
la dernire position en dcalant les autres pour obtenir la forme suivante :
i 1i + 1 n i
Cette dernire matrice est nomme une matrice Hessenberg suprieure, et est presque dj
128 CHAPITRE 3. PROGRAMMATION LINAIRE
triangularise, lexception de quelques lments sur la sous-diagonale. On voit donc quil
est possible de triangulariser cette matrice Hessenberg suprieure en utilisant ni pivots de
la mthode dlimination de Gauss. De plus, on peut utiliser la stratgie de pivot partiel de
manire trs simple en examinant seulement llment diagonal, et llment sous-diagonal
car les autres lments dune colonne sont tous nuls. Soit donc M = M
n
M
m1
. . . M
i+1
la
matrice qui reprsente les n i pivots. On a ML
1
B

= U

, de sorte que L

= LM
1
.
Une autre stratgie de choix de pivot permet de proter de la structure de zros de la
matrice.
3.7.2 Utilisation de la dcomposition QR
Il est possible de triangulariser une matrice non-singulire laide dune matrice ortho-
gonale Q.
3.7.3 Dgnrescence numrique
Les problmes causs par le phnomne de dgnrescence ne se limitent pas aux troubles
de cyclage dcrits plus haut. En fait, mme en prsence de problmes dgnrs, lors des
calculs, les variables x
B
ne seront pas nulles, mais prendront des valeurs numriquement trs
petites.
Un autre problme numrique reli la dgnrescence est le suivant. Considrons lexemple
o dans R
3
, trois contraintes se rencontrent selon une droite. Bien entendu, un sommet des
contraintes impliquera au moins une quatrime contrainte. Cependant, il est fort possible
que, numriquement, les trois contraintes dnissent un point. Ce point nest pas, en gnral,
un point extrme des contraintes au sens mathmatique, mais peut fort bien, d aux erreurs
numriques, tre accept comme solution optimale.
Il faut retenir que le phnomne de dgnrescence engendre des problmes au niveau
thorique, et en engendre dautres, encore plus dicile rsoudre, au niveau numrique.
3.8 Comment obtenir la premire solution de base
ralisable
Parmi les techniques usuelles pour initialiser lalgorithme du simplexe, la plus rpandue
consiste rsoudre un problme en deux phases. La premire phase rsout le problme
min ez
sujet Iz + Ax = b
x, z 0,
(3.5)
3.9. RSUM 129
o les variables z sont nommes variables articielles et le vecteur e R
m
est tel que
e
i
= 1, i = 1, 2, . . . , m. En prenant le soin de multiplier par 1 les contraintes associes un
membre de droite b
i
ngatif, le vecteur z = b, x = 0 constitue une solution de base ralisable
pour le problme (3.5).
Si le programme (3.1) possde une solution ralisable, alors le programme (3.5) pos-
sde une solution optimale de valeur nulle, et z = 0. La phase I consiste donc appliquer
lalgorithme du simplexe au problme (3.5). sa terminaison, trois cas peuvent se produire :
1. z = 0, et toutes les composantes de z sont dans la partition N ;
2. z = 0, mais certaines composantes de z sont dans B;
3. z = 0.
Dans le premier cas, il est possible de rsoudre le programme (3.1) directement. Dans le
troisime cas, le programme (3.1) ne possde pas de solution ralisable. Enn, dans le second
cas, il faut eectuer certaines oprations de pivotage pour liminer les composantes de z
de B. Cependant, pour ce faire, les critres de pivot sont simplies puisque notre unique
but est de complter la base partielle (lments de B correspondant des variables x) avec
dautres composantes x, tout en les laissant nulles. Soit donc une colonne associe une
variable de base z
i
= 0. Il est alors possible deectuer un pivot sur tout lment non-nul
de la ligne a
i
correspondant une variable x. Ceci a pour objet de changer la partition sans
changer le point (z, x), qui constitue une solution dgnre. Si jamais une ligne de la matrice

A devenait nulle, cest le signe que la matrice A nest pas de rang m, et il est alors possible
dliminer cette ligne.
3.9 Rsum
Notre premire incursion dans le domaine de loptimisation sous contrainte concerne
les fonctions objectif linaires, les contraintes linaires et des variables non-ngatives. Les
techniques dalgbre linaire sont susantes pour rsoudre ce type de problme.
On analyse que sil existe une solution optimale, il sut dexplorer les solutions dites
de base pour la trouver. Le nombre de solutions de base tant ni, si on sassure de ne pas
tourner en rond, on aura identi la solution optimale en un nombre ni de calculs.
Une relation forte relie le problme sous tude (nomm primal) un autre, nomm dual.
3.10 Extensions et rfrences
Le matriel de ce chapitre est bien connu. Deux bonnes rfrences quant aux aspects
combinatoires de la programmation linaire sont les livres de Chvtal et de Papadimitriou
et Steiglitz [27]. Bien sr, le livre classique de Dantzig [7], qui est lorigine de toute cette
thorie demeure un ouvrage de rfrence prcieux.
130 CHAPITRE 3. PROGRAMMATION LINAIRE
Nous avons gard sous silence plusieurs aspects par ailleurs intressants de la program-
mation linaire. Essayons de rparer ces omissions.
[Algorithme dual du simplexe] Considrons un tableau de la forme de ceux utiliss
la section 3.6. Cependant, remplaons la proprit que la premire colonne, B
1
b 0
par la proprit que la premire ligne du tableau c z 0. Daprs ce que nous avons
vu de la dualit, cet change de proprits entrane que nous avons sous la main une
solution de base dual-ralisable plutt que primal-ralisable. Nous pouvons donc imiter
le dveloppement de lalgorithme du simplexe en choisissant une composante ngative
de la premire colonne, destine devenir non-ngative, qui serait la variable sortante,
puis en identiant une variable entrante de telle sorte que lopration de pivotage
conserve la proprit que la ligne c z 0. Cet algorithme, qui manipule le mme
tableau que lalgorithme du simplexe est nomm simplexe dual. On peut dmontrer
quil sagit en fait de lalgorithme du simplexe appliqu au programme (3.3).
[Interprtations conomiques] Une grande partie de la popularit de la programmation
linaire provient dinterprtations conomiques aussi instructives quutiles. En voici
une rsume. Le problme de la dite consiste, pour un client choisir des quantits
daliments x
i
(variables primales) qui minimisent le cot dachat cx tout en satisfaisant
des contraintes dittiques a
i
x b
i
(contenu susant de chacun de plusieurs nutri-
ments). Le dual sinterprte du point de vue dun vendeur de pilules de nutriments. Il
veut xer le prix
j
de ses pilules de telle sorte que, compte tenu de la demande en
nutriments b, il maximise son prot b tout en sassurant que le cot des nutriments
contenus dans chacun des laliment ne dpasse pas le cot de laliment A
j
c
j
.
Le traitement moderne de ces problmes utilise des techniques de programmation non-
linaire, qui seront abordes dans des chapitres ultrieurs : les mthodes de point intrieur.
Chapitre 4
Optimisation direntiable avec
contraintes linaires
Sujets du chapitre
Contraintes linaires dgalit et dingalit.
Formulations diverses des conditions doptimalit.
Problmes de complmentarit linaire.
Dduction de quelques algorithmes partir des conditions doptimalit.
131
132 CHAPITRE 4. OPTIMISATION AVEC CONTRAINTES LINAIRES
Introduction
La programmation linaire a connu un essor considrable dans les annes 60. Il est donc
naturel que des chercheurs aient gnralis de diverses manires les ides dveloppes dans
lanalyse de programmes linaires. Nous prsentons dans ce chapitre quelques gnralisations.
Nous abordons galement ces problmes non-linaires du point de vue de la programmation
non-linaire, constituant ainsi un premier contact avec les sujets des chapitres venir.
4.1 nonc du problme
Nous abordons maintenant la gnralisation de problmes de type (3.1) au cas o la
fonction objectif est direntiable non-linaire. Nous traitons le problme
min f(x)
sujet Ax = b
x 0,
(4.1)
o lensemble E
def
= {x : Ax = b, x 0} est nomm ensemble ralisable. Nous allons dabord
dduire les conditions doptimalit pour le programme (4.1) partir de la thorie de la pro-
grammation linaire prsente au chapitre 3. Ensuite, nous eectuerons dautres dmarches
qui conduisent des formulations quivalentes des conditions doptimalit.
Comme dans les chapitres prcdents, nous dduirons quelques algorithmes partir de
points qui ne satisfont pas aux conditions doptimalit.
4.2 Conditions doptimalit pour les points station-
naires
Remarquons dabord que si x

est une solution optimale du programme (4.1), alors la


drive directionnelle de f en x

dans toute direction ralisable d = (x x

) doit tre
non-ngative, ce qui sexprime par lingalit variationnelle
f(x

)(x x

) 0
Ax = b
x 0.
(4.2)
Un tel point x

est nomm point stationnaire pour le programme (4.1). Cette formulation


constitue la base des analyses subsquentes.
4.2. CONDITIONS DOPTIMALIT POUR LES POINTS STATIONNAIRES 133
4.2.1 Formulation inspire de la programmation linaire
Puisque x

satisfait aux quations et inquations (4.2), x

est galement solution optimale


du programme linaire
min f(x

)x
sujet Ax = b
x 0.
(4.3)
Cependant, ce nest pas ncessairement une solution optimale de base, et nous devons gn-
raliser quelque peu la thorie prsente au chap 3.
La partition BaseHors-base revisite
Pour le problme (4.1), rien ne permet de supposer que x

est une solution de base. En


fait, puisque lobjectif f nest pas linaire, il est fort possible que toutes les composantes de
la solution x

soient positives. Par exemple, le minimum de f(x) = x


2
sur lintervalle [1, 1]
est atteint lintrieur du domaine ralisable.
Heureusement, il est possible de tirer prot des cas ou elle comporte des composantes
nulles. Ces composantes nulles sont toujours nommes composantes hors-base, et notes x
N
.
Par ailleurs, parmi les composantes non-nulles, nommons x
B
les composantes associes une
sous-matrice inversible B, et baptisons les autres composantes variables de super-base, notes
x
S
. Nous obtenons donc la partition [[B | S | N]] et la matrice A, ainsi que les vecteurs c et
x sont partitionns de telle sorte que nous puissions crire x = [x
B
, x
S
, x
N
], A = [B, S, N]
ainsi que f(x

) = [f(x

)
B
, f(x

)
S
, f(x

)
N
].
Tout comme avant, il est possible de mettre x
B
en fonction de x
S
et de x
N
:
x
B
= B
1
(b Sx
S
Nx
N
).
Alors, en dnissant encore (voir page 115)
def
= f(x

)
B
B
1
, on arrive lexpression
f(x

)x = (f(x

)
N
N)x
N
+ (f(x

)
S
S)x
S
+ Cst.
De mme les contraintes se rcrivent
B
1
(b Nx
N
Sx
S
) 0
x
N
, x
S
0.
En adaptant le raisonnement qui nous a conduit aux conditions doptimalit du programme (3.1),
nous obtenons
A =
_

_
B = f(x

)
B
S = f(x

)
S
N f(x

)
N
.
134 CHAPITRE 4. OPTIMISATION AVEC CONTRAINTES LINAIRES
La premire galit (les composantes B) dnit les multiplicateurs ; la seconde galit
vient du fait que les composantes S sont strictement positives, et donc pourraient aussi
bien augmenter que diminuer ; leurs cots relatifs doivent donc sannuler. Lingalit sur les
composantes hors-base est comme dans le cas linaire.
En introduisant les variables dcart s 0, on peut reformuler les conditions prcdentes
comme
A+ s = f(x

)
sx = 0,
le dernier terme tant connu sous le nom de terme de complmentarit.
Dgnrescence
Les raisonnements prcdents sont valables condition quil soit possible de trouver
des composantes positives de x

, x

B
associes une sous-matrice inversible B. Cette limite
nest toutefois seulement apparente. En eet, si la matrice A possde des lignes linairement
indpendantes et si le problme possde au moins une solution ralisable, on peut toujours
trouver des composantes x

B
0 associs une matrice inversible. aucun moment nous
avons utilis le fait que les composantes de x

B
devaient tre strictement positives.
Nous verrons un peu plus loin que la dgnrescence de la solution optimale inuence
lnonc de conditions de second ordre.
4.2.2 Formulation sous forme de projection
Revenons aux inquations variationnelles (4.2). On y fait tat que langle entre f(x

)
et un vecteur allant de x

x, un point ralisable quelconque nest pas un angle aigu car son


cosinus est non-positif.
On constate donc que le point le plus proche de x

f(x

)
t
lintrieur des contraintes
est le point x

lui-mme. Ce point le plus proche se nomme projection.


Dnition 4.2.1 Le point le plus proche de x dans lensemble E est not Proj
E
(x) et
sexprime comme :
Proj
E
(x) = arg min
yE
1
2
y x
2
.
On a donc que x

= Proj
{x:Ax=b,x0}
(x

f(x

)
t
). On dit donc que x

est un point xe
de la fonction P(x) = Proj
E
(x f(x)
t
), cest--dire, x

= P(x

).
4.3. CONDITIONS DE KARUSH-KUHN-TUCKER 135
x

f(x

)
> 90

x
On voit que si f(x

)
fait un angle obtus avec
x x

pour tout point


ralisable x, alors le point
ralisable le plus proche
de x

f(x

) est le
point x

lui-mme.
Figure 4.1 Gomtrie de la projection
4.3 Conditions de Karush-Kuhn-Tucker
Pour les dveloppements qui suivent, nous allons nous loigner de la formulation des
contraintes sous la forme standard du simplexe. Nous allons dvelopper ces conditions en
deux tapes : dabord, nous traiterons seulement les contraintes dgalit, et ensuite, nous
verrons comment adapter la thorie aux ingalits.
4.3.1 Conditions pour les contraintes dgalit
Donc, momentanment, nous considrons les problmes de la forme
min f(x)
sujet Ax = b.
(4.4)
La notion dorthogonalit est cruciale pour nos dveloppements. Observons dabord que si
on a sous la main un point ralisable x, alors un autre point ralisable peut tre obtenu
laide dune direction d : Ad = 0, cest--dire une direction appartenant au noyau de la
matrice A. Nous savons que le noyau dune matrice constitue un espace vectoriel. Soit Z une
matrice dont les colonnes forment une base de ker A. Alors, AZ = 0. De plus, en admettant
que les m lignes de la matrice A soient linairement indpendantes, la matrice Z comportera
n lignes et n m colonnes. Une direction ralisable, donc appartenant ker A, peut donc
sexprimer comme une combinaison linaire des colonnes de la matrice Z, qui, rappelons-le,
136 CHAPITRE 4. OPTIMISATION AVEC CONTRAINTES LINAIRES
constituent une base de ker A. Notons les (n m) coecients de la direction ralisable d
dans la base en question d
z
: d = Zd
z
.
Maintenant, supposons que x

soit un point ralisable et optimal (localement). Nous


allons rcrire f(x) pour des x ralisables proches de x

laide de direction ralisables,


f(x) = f(x

+ Zd
z
). Puisque x

est un minimum local de f, alors d


z
= 0 est un minimum
local de (d
z
)
def
= f(x

+ Zd
z
). En fait, ltude de la fonction f dans lintersection dun
voisinage de x

avec le domaine ralisable est quivalent ltude de la fonction dans


un voisinage de zro. Les conditions doptimalit sexprimeront donc laide des quantits
(0) et
2
(0). Or, (d
z
) = f(x

+ Zd
z
)Z et
2
(d
z
) = Z
t

2
f(x

+ Zd
z
)Z, et donc
(0) = f(x

)Z alors que
2
(0) = Z
t

2
f(x

)Z. Ces dernires quantits portent les


noms de gradient rduit et hessien rduit de f en x

respectivement.
Maintenant, en appliquant les conditions doptimalit du chapitre 2 la fonction , on
dduit que f(x

)Z = 0. Examinons de plus prs cette condition. Nous avons suppos que


les lignes de la matrice A taient linairement indpendantes, et puisque les colonnes de la
matrice Z forment une base, elles sont galement linairement indpendantes. En fait, les
colonnes de la matrice Z constituent une base de ker Aet les lignes de la matrice Aconstituent
une base de ker Z
t
. Puisque f(x

)
t
ker Z
t
, on a donc que f(x

) peut scrire comme


une combinaison linaire des lignes de la matrice A, f(x

) = A.
Loptimisation avec contraintes dgalit a t tudie depuis fort longtemps. Lagrange
avait formul les conditions doptimalit que nous venons de dduire laide dune fonction
auxiliaire appele Lagrangien L(x, )
def
= f(x) + (Ax b). Les conditions doptimalit de
premier ordre scrivent simplement

x
L(x

) = 0 = f(x

) +

L(x

) = 0 = Ax

b.
On voit donc que la seconde condition assure que x est ralisable alors que la premire est
quivalente celle que nous avons dduite avec = .
On peut rsumer ces dveloppements dans le thorme suivant.
Thorme 4.3.1 Considrons le problme (4.4) et soit Z une matrice dont les colonnes
constituent une base de ker A.
1. Si x

est un minimum local de f, alors il existe un vecteur

tel que f(x

)+

A = 0,
ou de faon quivalente, f(x

)Z = 0. De plus, la matrice Z
t

2
f(x

)Z est semi-dnie
positive.
2. Sil existe un vecteur

tel que f(x

)+

A = 0, ou de faon quivalente, f(x

)Z =
0 et si de plus, la matrice Z
t

2
f(x

)Z est dnie positive, alors x

est un minimum
local de f.
4.3. CONDITIONS DE KARUSH-KUHN-TUCKER 137
Exercice 4.3.1 [Application simple] Soit le programme
min f(x, y, z) = x
2
+ 2y
2
+ 3z
2
0.5xy + x y + 2z
sujet 2x + 3y z = 1.
Identiez un point stationnaire en utilisant trois techniques :
a) Calculez un multiplicateur de Lagrange

et un point (x

, y

, z

)
t
satisfaisant au
systme dquations f(x, y, z) + (2, 3, 1) = 0.
b) liminez une variable laide de lquation 2x+3y z = 1 en posant z = 2x+3y 1
et traitez les deux variables qui restent sans contrainte.
c) liminez une variable en identiant une base du noyau de la matrice (2, 3, 1), et
obtenez la solution.
d) Vriez que les trois mthodes fournissent la mme solution.
e) Quelle est la nature du point stationnaire ? (min, max, pt de selle, ?)
Exercice 4.3.2 [Contraintes dgalit] Considrez le problme
min
xR
3
1
2
x
2
sujet x
1
+ 2x
2
+ 3x
3
= 1.
a) Fournissez une expression pour la matrice Z.
b) Identiez la solution x

et

du problme.
c) Vriez que f(x

)Z = 0.
d) Vriez que x

= Proj
E
(x

f(x

)).
e) Rsolvez le problme
min
xR
n
x
2
sujet
n

i=1
ix
i
= 1.
138 CHAPITRE 4. OPTIMISATION AVEC CONTRAINTES LINAIRES
Exercice 4.3.3 [Gomtrie condition doptimalit] Trouvez le rectangle de supercie
maximale pour un primtre donn (2(h + l) = 1) en utilisant les conditions ncessaires.
Vriez que votre solution satisfait aux conditions susantes de second ordre.
Exercice 4.3.4 [ Projection sur un sous-espace] On sait que la projection sur un sous-
espace vectoriel est une application linaire, et donc peut se reprsenter par une matrice.
Nous appliquerons la thorie pour obtenir cette matrice. Considrez le problme de projeter
un vecteur g, loppos du gradient sur un sous-espace dni par x : Ax = 0. Le problme
scrit alors :
min
1
2
x + g
t

2
s. Ax = 0
a) crivez les conditions doptimalit de ce problme.
b) Exprimez la solution x() explicitement en fonction du vecteur de multiplicateurs de
Lagrange .
c) Injectez lexpression trouve en b). dans les contraintes pour dterminer

.
d) Obtenez alors lexpression de x(

) = x

= Mg
t
.
e) Vriez que la matrice de projection M est symtrique, et satisfait M
2
= M.
4.3.2 Conditions pour les contraintes dingalit
Encore ici, nous adoptons une formulation dirente de la forme standard du simplexe,
et considrons le problme
min f(x)
sujet Ax b.
(4.5)
Soit un point x

candidat minimum local. Alors, x

est dabord un point ralisable. Parmi


les contraintes, certaines seront satures en x

, cest--dire certaines seront satisfaites avec


galit, et les autres seront satisfaites avec ingalit stricte. Sparons la matrice A ainsi que
le vecteur b selon ce critre, de sorte que A
1
x

= b
1
et A
2
x

< b
2
; les premires contraintes
sont nomme contraintes actives et les autres contraintes inactives. Puisque nous tudions les
optima locaux de f, nous limitons notre analyse un voisinage de x

, et donc, on peut choisir


un voisinage assez petit pour que les contraintes inactives soient toujours satisfaites avec
4.3. CONDITIONS DE KARUSH-KUHN-TUCKER 139
ingalit stricte. Par consquent, on peut eectuer notre analyse avec les seules contraintes
actives.
En particulier, on voit que les conditions prsentes plus haut pour les contraintes dga-
lits sappliquent encore ici aux contraintes actives, et donc il devra exister des valeurs
telles que f(x

) + A
1
= 0. Cependant, dans notre cas, les variables devront satisfaire
une condition additionnelle : il ne sut plus que f(x

)
t
ker Z
t
1
mais il faut galement
quil soit orient vers lintrieur du domaine ralisable. En eet, il faut que les directions
ralisables fassent des angles aigus avec f(x

)
t
, selon lingalit variationnelle (4.2). Or,
cette bonne orientation de f(x

)
t
sexprime simplement par 0 ; lexpression est simple,
et se dduit du lemme suivant, connu comme le lemme de Farkas.
Lemme 4.3.1 (Farkas) Soient A une matrice mn et v R
n
, vecteur ligne ; alors, un et
un seul des deux systmes suivants possde une solution :
Ad 0, vd < 0,
v + A = 0, 0.
Preuve Si le second systme possde une solution, multiplions sa premire quation par
d pour obtenir vd + Ad = 0, ce qui, supposant que Ad 0, entranerait que Ad 0 et
par consquent vd 0, et donc que le premier systme ne possde pas de solution.
Si le premier systme ne possde pas de solution, alors le progamme linaire min
Ad0
vd
admet d = 0 comme solution optimale, et donc son dual possde une solution ralisable
(thorme de dualit forte) ; son dual est max
v+A=0,0
0. 2
Ces observations nous donnent des conditions ncessaire doptimalit, qui imitent celles
du thorme 4.3.1.
Thorme 4.3.2 Considrons le problme (4.5) et soit x

un minimum local de f tel que


A
1
x

= b
1
et A
2
x

< b
2
; soit galement Z
1
une matrice dont les colonnes constituent une
base de ker A
1
. Alors, il existe un vecteur

1
0 tel que f(x

) +

1
A
1
= 0, ou de faon
quivalente, f(x

)Z
1
= 0. De plus, la matrice Z
t

2
f(x

)Z est semi-dnie positive.


Pour obtenir des conditions susantes, il faut observer que mme si le vecteur

est
non-ngatif, certaines de ses composantes pourraient tre nulles. Dans lnonc qui suit,
la sous-matrice A
1
comporte les contraintes satisfaites avec galit, mais pour lesquelles
le multiplicateur associ est strictement positif. Les autres contraintes ninuencent pas la
condition de premier ordre f(x

) +

1
A
1
= 0 puisque leurs multiplicateurs sont nuls.
140 CHAPITRE 4. OPTIMISATION AVEC CONTRAINTES LINAIRES
Thorme 4.3.3 Considrons le problme (4.5) et soit x

un point tel que A


1
x

= b
1
et A
2
x

b
2
; soit galement Z
1
une matrice dont les colonnes constituent une base de
ker A
1
. Sil existe un vecteur

1
> 0 tel que f(x

) +

1
A
1
= 0, ou de faon quivalente,
f(x

)Z
1
= 0 et si de plus, lexpression z
t

2
f(x

)z est positive pour tout z : A


2
(x

+z)
b
2
, A
1
z = 0, z = 0, alors x

est un minimum local de f.


Lnonc de ce dernier thorme appelle plusieurs commentaires.
Remarque 4.3.1 1. La portion de premier ordre (f(x

) +

1
A
1
= 0) nest pas inuen-
ce par les multiplicateurs nuls ;
2. pour les conditions susantes, il faut distinguer, parmi les contraintes satisfaites avec
galit, celles qui ont un multiplicateur associ positif de celles qui en ont un nul ;
3. pour les conditions susantes dordre 2, on scarte de la formulation avec contraintes
dgalits en explicitant des directions z pour lesquelles z
t

2
f(x

)z > 0 ;
4. les z pour lesquels A
2
(x

+z) b
2
sont contraints de deux manires : si, pour un certain
indice j, A
j
x

= b
j
, z est limit pointer dans le demi-espace {v : A
j
v 0} alors que
si A
j
x

< b
j
, cette contrainte particulire ne contraint pas du tout z ; lintersection des
demi-espaces constitue un cne ;
5. on peut renforcer les conditions ncessaires en sinspirant de la formulation des condi-
tions susantes.
Exemple 4.3.1 Pour mettre en relief les subtilits des conditions ncessaires et susantes
en prsence de contraintes dingalit, considrons le programme suivant :
min x
2
1
x
2
2
sujet 2x
2
x
1
0
2x
2
+ x
1
0.
(4.6)
Lorigine en est un point stationnaire. Les deux contraintes y sont actives. Leurs multipli-
cateurs respectifs sont nuls. Donc, la matrice A
1
est vide. Cependant, le cne des directions
ralisables comporte des vecteurs v = (v
1
, v
2
)
t
tels que v
1
2v
2
v
1
, et pour de tels
vecteurs, v
t
_
1 0
0 1
_
v = v
2
1
v
2
2
>
3v
2
1
4
, ce qui conrme que lorigine est un minimum local
pour ce programme. On voit aussi que les conditions ncessaires pourraient faire tat que la
matrice
2
f(x

) satisfait z
t

2
f(x

)z 0 pour les z appropris. 2


Ces conditions doptimalit constituent un cas particulier des conditions de Karush-Kuhn-
Tucker (KKT), cas particulier aux contraintes linaires. Nous verrons dans les chapitres
ultrieurs des conditions plus gnrales.
4.3. CONDITIONS DE KARUSH-KUHN-TUCKER 141
Encore ici, nous pouvons utiliser le Lagrangien pour exprimer les conditions doptimalit.
Rappelons que L(x, ) = f(x) + (Ax b). Les conditions doptimalit de premier ordre
scrivent :

x
L(x

) = 0
Ax

b =

L(x

) 0

(Ax

b) = 0
et le dernier terme est nomm terme de complmentarit. Un point qui satisfait aux condi-
tions de premier ordre est, comme prcdemment, nomm point stationnaire pour le pro-
blme (4.5).
Dnition 4.3.1 Une solution x

satisfait lhypothse de stricte complmentarit si et


seulement si pour chaque contrainte active i (i.e. A
i
x

= b
i
) on a

i
> 0. Si les multipli-
cateurs ne sont pas uniques, on convient que lhypothse est satisfaite sil existe un

pour
lequel pour chaque contrainte active i (i.e. A
i
x

= b
i
) on a

i
> 0.
Lhypothse de stricte complmentarit impose que

i
= 0 A
i
x

< b
i
. Cette condi-
tion de stricte complmentarit est relie au phnomne de dgnrescence dont nous avons
parl au chapitre 3.
4.3.3 Exemples
Pour illustrer les conditions doptimalit, voici une srie dexemples. Il sagit dabord
dun problme comportant deux contraintes dgalit. Ensuite, nous analyserons le mme
problme, mais ne comportant quune seule contrainte dgalit. Finalement, nous analy-
serons la situation si les deux contraintes du problme initial taient des ingalits, soit
non-ngatives, non-positives, ou encore un mlange des deux.
Exemple 1
Considrons le programme
min x
2
1
x
1
x
2
+ x
2
2
x
2
x
3
+ x
2
3
+ 2x
1
x
2
sujet 3x
1
x
2
+ x
3
= 0
2x
1
x
2
x
3
= 0
qui peut galement sexprimer matriciellement :
min
1
2
x
t
Qx + cx
sujet Ax = 0
142 CHAPITRE 4. OPTIMISATION AVEC CONTRAINTES LINAIRES
o
Q =
_
_
_
2 1 0
1 2 1
0 1 2
_
_
_, c = ( 2 1 0 ) , A =
_
3 1 1
2 1 1
_
.
En additionnant la premire ligne a la seconde dans la matrice A, on obtient
A

=
_
3 1 1
5 2 0
_
,
do lon dduit que x
1
=
2
5
x
2
, et, utilisant la premiere ligne, x
3
=
1
5
x
2
, donc, une expression
pour la base du noyau de A est donne par Z =
_
_
_
2
5
1
_
_
_.
On a donc que tout x ralisable est un multiple de Z, x = Zd
z
. Par consquent, on peut
solutionner le problme original avec contraintes en minimisant par rapport a d
z
la fonction
1
2
d
z
Z
t
QZd
z
+ c
t
Zd
z
. La matrice Z
t
QZ est rduite au scalaire 50, le vecteur c
t
Z est rduit
au scalaire 1 et la valeur optimale de 25d
2
z
d
z
est d

z
=
1
50
. Ceci entrane que x

=
_
_
_
2
50
5
50
1
50
_
_
_.
Vrions que (x

)
t
Q+c +A possde bel et bien une solution

. Remarquons que x

est
ralisable, car il satisfait aux contraintes. En gnral, pour un point ralisable quelconque
x, le systme x
t
Q + c + A ne possde pas de solution en . Seuls les points stationnaires
partagent cette proprit.
(x

)
t
Q+ c = (
99
50
41
50
7
50
) .
La solution du systme
(
99
50
41
50
7
50
) + (
1

2
)
_
3 1 1
2 1 1
_
= 0
est
= (
17
50
24
50
) .
Exemple 2
Considrons maintenant la mme fonction objectif, mais minimiser sous seulement
la seconde contrainte, 2x
1
x
2
x
3
= 0, donc A = ( 2 1 1 ). Une base du plan
correspondant au domaine ralisable est
Z =
_
_
_
1 1
0 2
2 0
_
_
_
4.3. CONDITIONS DE KARUSH-KUHN-TUCKER 143
car les colonnes de cette matrice sont linairement indpendantes, et satisfont toutes les deux
la contrainte. Cette fois-ci, la matrice
Z
t
QZ =
_
10 4
4 6
_
nest pas rduite un scalaire, et le vecteur
cZ = ( 2 0 )
non plus. Alors, d
z
est ici un vecteur de dimension 2. La solution optimale de min
dz
1
2
d
t
z
Z
t
QZd
z
+
cZd
z
est donne par d

z
=
_
3
11
2
11
_
. Par consquent, x

=
_
_
_
5
11
4
11
6
11
_
_
_. Calculons
(x

)
t
Q + c = (
6
11
3
11
8
11
) + ( 2 1 0 ) = (
16
11
8
11
8
11
) .
On observe bien que (x

)
t
Q + c +
8
11
A = 0, et donc

=
8
11
.
Exemple 3
Les deux contraintes de lexemple 1 taient des contraintes dgalit. Si les deux contraintes
avaient t
3x
1
x
2
+ x
3
0
2x
1
x
2
x
3
0,
alors le point x

trouv serait un point stationnaire pour le problme. En eet, dans la


formulation Lagrangienne, f(x

)+

A = 0, et les multiplicateurs de Lagrange doivent etre


du signe oppos aux contraintes Ax b. Ingalits plus grand ou gal dans les contraintes
entranent plus petit ou gal zro, et vice-versa. Ici, les contraintes sont plus grand ou
gal et les plus petit ou gal zro,

= (
17
50
24
50
).
Exemple 4
Si les deux contraintes avaient t
3x
1
x
2
+ x
3
0
2x
1
x
2
x
3
0,
alors le point x

trouv lexemple 1 ne serait pas un point stationnaire pour le problme. En


eet, la premire contrainte tant non-positive, les multiplicateurs doivent tre non-ngatifs,
et ce nest pas le cas. Il faut supposer quau moins une des deux contraintes que nous avons
implicitement supposes actives ne lest pas la solution. Puisque cest la premire qui
permet dtablir la non-optimalit du point, supposons donc que seule la seconde contrainte
est active la solution. Ceci est la situation de lexemple 2, et le multiplicateur que nous
avons calcul est du bon signe,

=
8
11
.
144 CHAPITRE 4. OPTIMISATION AVEC CONTRAINTES LINAIRES
Exemple 5
Si les deux contraintes avaient t
3x
1
x
2
+ x
3
0
2x
1
x
2
x
3
0,
alors le point x

trouv lexemple 1 ne serait pas un point stationnaire pour le problme.


En eet, aucune des deux contraintes se voit associer un multiplicateur du bon signe. Par
ailleurs, lensemble des contraintes actives la solution ne peut pas tre uniquement la
seconde contrainte car lexemple 2 nous rvle que son multiplicateur nest pas du bon signe.
Il est donc possible que la solution optimale pour ce cinquime exemple ne sature aucune des
deux contraintes, ou encore en sature une seule, la premire. Les autres possibilits ont t
limines dans les deux premiers exemples. Supposons donc quil ny ait aucune contrainte
sature. Il faut alors rsoudre x
t
Q+c = 0. Or, la premire ligne de la matrice Q est justement
gale c. La solution est donc x

=
_
_
_
1
0
0
_
_
_, et par bonheur, satisfait avec ingalit stricte
aux deux contraintes. Cest donc la solution de notre problme.
Il aurait pu en tre autrement, car mme si les deux multiplicateurs sont du mauvais
signe cela ne veut pas dire que les multiplicateurs calculs avec moins de contraintes seront
toujours du mauvais signe. Il en est de mme pour des multiplicateurs du bon signe. Sur
de petits exemples, cest habituellement le cas, mais, comme en programmation linaire, au
cours de lexploration de lalgorithme du simplexe, qui correspond la stratgie denlever
des contraintes actives (variables hors-base) une contrainte associe un multiplicateur du
mauvais signe (cot relatif ngatif), il est possible quune variable entre dans la base plus
dune fois, i.e. quune contrainte devienne prsumment active plusieurs reprises.
Lorsquun problme prsente une combinaison de contraintes dingalit et dgalit, les
multiplicateurs associs aux contraintes dingalit doivent tre de signe oppos aux ingali-
ts, et les multiplicateurs associs aux contraintes dgalit ne sont pas restreints en signe.
Exercice 4.3.5 [Contraintes dingalits]
a) Vriez que la solution obtenue lexercice 4.3.2 constitue la solution optimale du
problme
min
xR
3
x
2
sujet x
1
+ 2x
2
+ 3x
3
= 1; x 0.
b) Que peux-t-on dire de cette dernire solution par rapport au problme
min
xR
3
x
2
sujet x
1
+ 2x
2
+ 3x
3
1; x 0.
4.3. CONDITIONS DE KARUSH-KUHN-TUCKER 145
c) Que peux-t-on dire de cette dernire solution par rapport au problme
min
xR
3
x
2
sujet x
1
+ 2x
2
+ 3x
3
1; x 0.
Exercice 4.3.6 [Application simple] Pour les problmes suivants, obtenez la solution.
a)
min
_
x
2
1
x
1
x
2
+ 2x
2
2
+ x
1
+ x
2
_
sujet 2x
1
+ x
2
1
x 0
b)
min
_
x
2
1
2x
1
x
2
+ 2x
2
2
+ 2x
1
+ 5x
2
_
sujet 2x
1
+ 3x
2
20
3x
1
5x
2
4
x 0
Exercice 4.3.7 [Projection...] Considrez le problme de trouver le point de norme mini-
male dans lensemble dni par les contraintes suivantes :
x
1
+ 2x
2
x
3
4
x
1
+ x
2
x
3
2.
a) Formulez ce problme comme problme de minimisation.
b) Supposons que les deux contraintes sont actives la solution. En exprimant x
1
et x
2
en fonction de x
3
, obtenez la solution du problme avec contraintes dgalits.
c) Cette solution ne constitue pas le point de norme minimale dans lensemble rali-
sable original. Pourquoi ? Trouvez le point de norme minimale dans les contraintes
dingalit.
146 CHAPITRE 4. OPTIMISATION AVEC CONTRAINTES LINAIRES
*Exercice 4.3.8 [PNL] Obtenez la solution du problme
min
x,y,z
4/3(x
2
xy + y
2
)
3/4
z
sujet z 2, x, y, z 0.
Indice : prolongez (0, 0, 0)
t
le gradient de la fonction par continuit : le gradient nexiste
pas lorigine, mais la limite lorsque x sapproche de lorigine existe. Est-ce que la condition
de stricte complmentarit est satisfaite en x

?
Exercice 4.3.9 [Projection] Soit E = {x : Ax b 0} un ensemble ralisable. Vriez
que x est un point xe de loprateur de projection, x = Proj
E
( xf( x)
t
), si et seulement
si x satisfait aux conditions ncessaires de premier ordre de KKT du problme (4.5).
Exercice 4.3.10 [Caractrisation de la projection] Si les contraintes sont de simples
bornes sur les variables, i.e. L x U, vriez (en utilisant les conditions doptima-
lit) que la solution de min
LxU
1
2
x y
2
est donne par
x
i
=
_
_
_
L
i
si L
i
y
i
;
y
i
si L
i
y
i
U
i
;
U
i
si y
i
U
i
.
Exercice 4.3.11 [Simplication de condition doptimalit] Prouvez, ou donnez un contre
exemple :
Si x

est un min local pour


min f(x)
sujet Ax b
x 0
alors il existe

0 tel que f(x

) +

A 0, avec

(Ax

b) = 0.
4.4. REMARQUES GNRALES SUR LES ALGORITHMES 147
Exercice 4.3.12 [Conditions doptimalit] Soient les trois fonctions suivantes :
f
1
(x) =
1
2
((x
1
3)
2
+ (x
2
+ 1)
2
) ;
f
2
(x) =
1
2
((x
1
+ 1)
2
+ (x
2
1)
2
) ;
f
3
(x) =
1
2
((x
1
+ 1)
2
+ x
2
2
).
Dnissons un point stationnaire x comme tant un point ralisable pour lequel il existe
des multiplicateurs de Lagrange, nuls pour les contraintes satisfaites avec ingalit stricte
en x, et tous du bon signe pour les contraintes actives en x.
a) Considrez les (quatre) contraintes
0 x
1
1,
0 x
2
1,
dnissant lensemble ralisable E, et le point candidat x = (1, 0)
t
E.
i) Pour chacune des fonctions, vriez que le point candidat est un point station-
naire, et donnez les valeurs des multiplicateurs de Lagrange
1
,
2
,
3
et
4
.
ii) Pour chacune des fonctions, dterminez si le point stationnaire est un minimum
local, maximum local ou ni lun ni lautre.
4.4 Remarques gnrales sur les algorithmes
Comme pour les problmes sans contrainte, nous allons dduire quelques algorithmes
partir de la violation des conditions doptimalit. Cependant, un lment nouveau nous em-
pche de prsenter une thorie de convergence globale aussi simple que celle du chapitre 2 :
les contraintes dingalit introduisent un aspect combinatoire, savoir lidentication des
contraintes actives la solution. Cet aspect se manifeste de deux manires principales : en
prsence de dgnrescence, les algorithmes inspirs de lalgorithme du simplexe pourront
cycler, ou converger vers des points qui ne sont pas stationnaires. Pour dautres types dalgo-
rithmes, cest le dsir de demeurer dans le domaine ralisable, quitte rduire le pas utilis,
qui provoque le dsastre, les pas utiliss ne satisfaisant plus aux conditions dadmissibilit
prsentes au chapitre 2.
Cependant, tout comme pour lalgorithme du simplexe, ces dicults thoriques nont
pas empch la production dimplantations ecaces qui se sont avres robustes dans la
pratique.
148 CHAPITRE 4. OPTIMISATION AVEC CONTRAINTES LINAIRES
4.4.1 Algorithmes de directions ralisables
Les algorithmes que nous considrons pour les contraintes linaires sont tous des algo-
rithmes de directions ralisables. Ces algorithmes produisent une suite ditrs x
k
qui satisfont
tous aux contraintes et les directions de descente utilises sont ralisables, i.e. si on y eec-
tue un pas de dplacement assez petit, x
k
+ d
k
continue de satisfaire aux contraintes. En
supposant que les contraintes dnissent un ensemble ralisable E dont la forme algbrique
nest pas spcie autrement quen armant quil est dcrit par un ensemble de contraintes
linaires dingalits et dgalits, on crit x E pour signier que x satisfait aux contraintes.
Itration de descente ralisable
{ Donns : x
0
, > 0 et 0 <
0
<
1
< 1 et
0
<
1
2
}
x x
0
tantque ( (condition doptimalit satisfaite) )
d direction_descente_ralisable(f, x)
{ h

x,d
< 0 et si est assez petit, alors x + d E) }

Max
max( : x + d E)

pas_admissible(f, x,
0
,
1
)
min(

,
Max
)
x x + d
Algorithme 4.1: Descente ralisable.
Exercice 4.4.1 [Calcul de
Max
] Considrez deux formes pour les ensembles E,
a) E = {x : Ax = b, x 0} ;
b) E = {x : Ax b}.
Dans ces deux cas, soient un point ralisable x E et une direction ralisable d. Proposez
un calcul de
Max
pour chaque cas.
4.5 Algorithmes inspirs de la programmation linaire
Il est possible de dnir un algorithme directement de lanalyse prcdente. Nous en
dduirons lalgorithme du gradient rduit. Par ailleurs, sans se proccuper des partitions en
variables de base et de super-base, nous pouvons quand mme dvelopper un algorithme
bas sur le fait que x

est solution de (4.3) ; cest lalgorithme de Frank&Wolfe.


4.5. ALGORITHMES INSPIRS DE LA PROGRAMMATION LINAIRE 149
4.5.1 Algorithme de Frank&Wolfe
Revenons au problme (4.3). Supposons que lon rsolve ce problme en un point quel-
conque, qui nest pas un minimum local du programme (4.1). Alors, le programme li-
naire (4.3) possdera une solution y telle que f(x)(y x) < 0, cest--dire, la direction
(y x) constitue une direction de descente ralisable pour le programme (4.1). Nommant d
cette direction, nous allons choisir x
+
def
= x+d de sorte que minimise f sur la ligne joignant
x et y, tout en demeurant ralisable. Alors, f(x
+
) < f(x), et nous pouvons recommencer le
processus. Nous en dduisons la suite de quantits suivante :
y
k
arg min
y
f(x
k
)y : Ay = b, y 0;
d
k
= y
k
x
k
;

k
arg min
01
f(x
k
+ d
k
);
x
k+1
= x
k
+
k
d
k
.
Les observations prcdentes montrent que la suite f(x
k
) est dcroissante. Pour justier que
les points daccumulation x de la suite {x
k
} produite par lalgorithme sont des solutions
satisfaisant f( x)

d = 0, nous appliquerons le thorme de Zangwill. Il est bien connu que


= arg min
01
f(x + (d)) est une application ferme en fonction de x et d. De plus,
lexercice suivant montre que d
k
est une application ferme en fonction de x
k
. Par consquent,
le thorme de Zangwill sapplique.
Lalgorithme de Frank&Wolfe utilise dans son calcul de direction la minimisation dune
fonction linaire et donc rsolue par un algorithme de programmation linaire, i.e. y
arg min
yE
f(x)y et d = y x. Si on rsout le programme linaire avec lalgorithme du
simplexe, la solution calcule sera toujours un point extrme de E et donc on peut toujours
choisir
Max
= 1.
La condition doptimalit est considre satisfaite lorsque f(x)(y x) est assez petit.
*Exercice 4.5.1 [Application ferme] Une application A qui associe un ensemble A(x)
un point x est dite ferme si pour toute suite convergente x
k
x, tout point daccumulation
y de la suite associe y
k
A(x
k
) appartient A( x), y A( x). Dmontrez que si f(x) est
une fonction continue, lapplication A dnie comme lensemble des solutions optimale du
programme linaire min
y
f(x)y : Ay = b, y 0 est une application ferme.
Cet algorithme nest plus beaucoup utilis car sa vitesse de convergence est trs lente.
Cependant, il constitue un exemple dextension de la thorie de la programmation linaire. De
plus, dans certaines applications particulires, notamment dans les problmes de transport
de grande taille, la simplicit et lecacit du calcul de la direction compensent sa lente
convergence, et en font un algorithme acceptable, voire mme lalgorithme de choix.
150 CHAPITRE 4. OPTIMISATION AVEC CONTRAINTES LINAIRES
Exercice 4.5.2 [Projections] Considrons le problme de projeter lorigine sur lenveloppe
convexe de points de R
n
. On a un ensemble de points P
1
, P
2
, . . . , P
m
; lenveloppe convexe
est dnie comme
{x : x =
m

i=1

i
P
i
,
m

i=1

i
= 1, 0}.
On peut formuler le problme comme suit :
min
xR
n
,R
m
x
2
sujet x =
m

i=1

i
P
i
= P
m

i=1

i
= 1
0,
o les colonnes de la matrice P sont les points P
i
.
a) En injectant lexpression pour x dans la fonction objectif, reformulez ce problme
avec les seules variables .
b) Lalgorithme de Frank&Wolfe appliqu cette dernire formulation devra calculer
des solutions au problme
min
yR
m
f(
k
)y
sujet
m

i=1
y
i
= 1
y 0;
Obtenez une expression simple pour la solution de ce sous-problme.
c) Considrez le problme avec quatre points de R
2
P
1
= (0, 5)
t
, P
2
= (4, 5)
t
, P
3
= (4, 1)
t
et P
4
= (5, 2)
t
. Obtenez la solution de ce problme graphiquement, et vriez-l avec
les conditions doptimalit.
d) Pour le problme en c), eectuez trois itrations de lalgorithme de Frank&Wolfe ;
utilisez comme point de dpart la valeur de
0
correspondant celui des quatre
points le plus proche de lorigine : P
0
= arg min
i=1,2,3,4
P
i
.
4.5. ALGORITHMES INSPIRS DE LA PROGRAMMATION LINAIRE 151
4.5.2 Algorithme du gradient rduit
Cet algorithme utilise la partition BaseSuper-BaseHors-Base introduite ci haut.
laide de cette partition, rcrivons (4.1) comme
min

f(x
S
, x
N
) = f([B
1
b B
1
(Nx
N
+ Sx
S
), x
S
, x
N
])
sujet B
1
(b Nx
N
Sx
S
) 0
x
S
> 0
x
N
= 0.
(4.7)
Ce dernier programme se nomme programme rduit, et tant que ses contraintes demeurent sa-
tisfaites, on peut lui appliquer tout algorithme de minimisation dune fonction sans contrainte.
Lorsque lalgorithme de minimisation sans contrainte provoque la violation des contraintes
B
1
(bNx
N
) 0, il est temps de changer de partition. Lalgorithme du gradient rduit uti-
lise comme algorithme sans contrainte lalgorithme du gradient, et formalise cette description
intuitive.
On a pens longtemps que lalgorithme du gradient rduit possdait la proprit de
convergence globale. Puis, Wolfe a fourni ce contre-exemple :
min
x,y,z
4/3(x
2
xy + y
2
)
3/4
z
sujet z 2, x, y, z 0.
Pour cet exemple, on vrie que lalgorithme, dmarr en (x
0
, y
0
, z
0
)
t
= (0, a, 0)
t
, o 0
a

2/4, engendre une suite qui converge vers (x

, y

, z

)
t
= (0, 0, (1 +

2/2)

a)
t
, qui
nest ni la solution (exercice 4.3.8), ni un point stationnaire. Cest un exemple marquant
des dicults que causent la dgnrescence, lorsque la condition de stricte complmentarit
nest pas satisfaite.
*Exercice 4.5.3 [Problme de convergence] Vriez que lexemple de Wolfe converge bel
et bien vers le point dcrit. Pour ce faire, vriez que lalgorithme engendre la suite
x
k
=
_
(0,
k
,
k
)
t
si k est impair
(
k
, 0,
k
)
t
si k est pair
avec
k
= (
1
2
)
k
et
k
=
1
2

k1
j=0
_
a
2
j
.
152 CHAPITRE 4. OPTIMISATION AVEC CONTRAINTES LINAIRES
Gradient rduit
{ Donnes : une partition [[B | S | N]] de R
n
, une reprsentation }
{ de la matrice B
1
ainsi quune solution ralisable [x
B
, x
S
, x
N
]. }
d
N
(
N

f(x
S
, x
N
)
t
)
+
d
S
(
S

f(x
S
, x
N
)
t
)
tantque (d > 0 )

1
max{ : x
S
+ d
S
0}

2
max{ : B
1
(b N(x
N
+ d
N
) S(x
S
+ d
S
)) 0}

3
arg min
0min{
1
,
2
}

f(x
S
+ d
S
, x
N
+ d
N
)
x
N
x
N
+
3
d
N
x
S
x
S
+
3
d
S
x
B
B
1
(b Nx
N
Sx
S
)
{ Mise--jour de la partition }
si (d
N
= 0 ) alors { certaines composantes passent de N S }
si (
3
=
1
) alors { certaines composantes passent de S N }
si (
3
=
2
) alors
{ UNE composante passe de B N }
{ UNE composante passe de N ou S B }
{ La reprsentation de la matrice B
1
est mise jour. }
d
N
(
N

f(x
S
, x
N
)
t
)
+
d
S
(
S

f(x
S
, x
N
)
t
)
Voici lalgorithme classique du gradient rduit. Loprateur de projection (

f(x
S
, x
N
)
t
)
+
N
pour le calcul de d
N
consiste remplacer par 0 les composantes ngatives de

f
N
. La mise-
-jour de la partition dans le cas o une composante quitte B seectue en utilisant la mme
mcanique algbrique que lalgorithme du simplexe rvis
Algorithme 4.2: Gradient rduit.
4.6. ALGORITHMES DE PROJECTION 153
Il est possible de modier lalgorithme pour assurer sa convergence globale, notamment
en forant d
N
= 0 pour un certain nombre ditrations conscutives. Cependant, une autre
dicult persiste, hrite de lalgorithme du simplexe : en prsence de dgnrescence, lalgo-
rithme peut rester emprisonn dans un cycle de partitions ne permettant aucun mouvement.
Exercice 4.5.4 [GR] Considrez nouveau le problme
min
xR
3
1
2
x
2
sujet x
1
+ 2x
2
+ 3x
3
= 1; x 0.
Appliquez lalgorithme du gradient rduit partir du point de dpart x
0
= (1, 0, 0)
t
.
4.6 Algorithmes de projection
Nous avons vu que les points stationnaires taient galement des points xes de lapplica-
tion Proj
E
(xf(x)
t
). Si on a sous la main un point x pour lequel x = Proj
E
(xf(x)
t
),
il est possible de construire une direction descendante d = Proj
E
(x f(x)
t
) x. Lincon-
vnient de cette approche vient de la ncessit du calcul de la projection. Si les contraintes
sont simples, par exemple des bornes sur les variables, alors il est possible de calculer la
projection ecacement, et lalgorithme prsente un certain intrt.
Lalgorithme de projection consiste calculer y = Proj
E
(x f(x)
t
) et constituer la
direction d = y x. Dans ce cas, il est avantageux de calculer un
Max
car il est fort possible
que lon puisse utiliser une valeur de beaucoup plus grande que un, ce qui permettra une
convergence beaucoup plus rapide.
La condition doptimalit est considre satisfaite lorsque Proj
E
(x f(x)) x est
assez petit.
*Exercice 4.6.1 [Direction de projection] Vriez que d = Proj
E
(xf(x)
t
) x est une
direction de descente, cest--dire que f(x)d < 0.
154 CHAPITRE 4. OPTIMISATION AVEC CONTRAINTES LINAIRES
4.6.1 Exemple de calculs de projection
Si lensemble E est constitu de simples bornes x 0, alors Proj
E
(x) =
_
0 si x 0
x si x > 0
.
Nous dveloppons maintenant une technique pour calculer la projection pour les contraintes
n

i=1
x
i
= 1 x 0.
Ceci constitue un exemple de rsolution des conditions doptimalit. crivons donc les condi-
tions doptimalit du programme qui dnit la projection :
min
x
1
2
x y
2
sujet
n

i=1
x
i
= 1
x 0.
(4.8)
Les conditions scrivent
(x y)
t
+ e = 0
ex = 1
x = 0
0
Maintenant, de la premire quation, on tire que x
i
= y
i
+
i
. Supposons que lon
connaisse . Alors, si y
i
< 0, x
i
= 0 et
i
= y
i
. Autrement, y
i
0 et x
i
= y
i
,

i
= 0. Nommons x
i
() = max(0, y
i
). Il sut maintenant didentier une valeur de
pour laquelle ex() = 1. Or, chaque x
i
() est une fonction linaire par morceau, comportant
deux morceaux qui se joignent au point = y
i
, et non-croissante en fonction de . Donc, e
est une fonction non-croissante de linaire par morceaux, dont les points de changement
de morceaux sont les valeurs y
i
. Il sut donc de classer les points de changement de morceau
y
i
par ordre disons croissant i
1
, i
2
, . . . , i
n
, puis didentier le morceau tel que ex(y
i
j
) 1
ex(y
i
j+1
), et enn deectuer une interpolation linaire sur ce morceau.
Exercice 4.6.2 [Projection] Considrez un exemple dans R
4
. Soit y =
1
4
(1, 2, 2, 4)
t
.
Calculez la projection dcrite par le programme (4.8).
4.6. ALGORITHMES DE PROJECTION 155
Exercice 4.6.3 [Programmes sparables] La solution de la projection prsente ci-haut
peut se gnraliser des programmes quadratiques dont la matrice est une matrice diago-
nale telle que
ij
= 0 si i = j. Considrez le problme
min
x
1
2
x
t
x + cx
sujet
n

i=1
a
i
x
i
= 1
l
i
x
i
u
i
.
On peut se limiter des valeurs a
i
0 ; en eet, si certains a
i
< 0, proposez un problme
quivalent avec a
i
> 0. (Indice : on peut remplacer x
i
par x
i
) Imitez la dmarche pour
proposer une technique de solution; dcrivez les conditions doptimalit ; obtenez une ex-
pression x
i
() ; indiquez quels sont les points de changement de morceau; vriez que la
fonction s()
def
=

n
i=1
a
i
x
i
() est monotone.
Exercice 4.6.4 [Variante de contrainte simple] Un certain modle de gestion comporte
un sous problme de la forme
min
3

i=1
_
h
i
x
i
2
+ S
i
d
i
x
i
_
3

i=1
x
i
= Q
x 0
o x reprsente le vecteur de production (des trois items), h le vecteur des cots dinventaire,
S les cots xes de production, d la demande et enn Q la production totale.
a) En dnissant le Lagrangien seulement par rapport la contrainte dgalit,
L(x, ) =
3

i=1
_
h
i
x
i
2
+ S
i
d
i
x
i
_
+
_
3

i=1
x
i
Q
_
,
vriez que si lon connat

, alors x

minimise L(x,

) sujet x 0.
b) Soient h = (1, 1, 2)
t
, S = (100, 50, 400)
t
, d = (20000, 40000, 40000)
t
et Q = 6000.
Obtenez une expression pour x().
c) Par bissection, estimez

, et donc x

.
d) partir de x
i
= Q/3, eectuez 3 itrations de lalgorithme de Frank&Wolfe.
156 CHAPITRE 4. OPTIMISATION AVEC CONTRAINTES LINAIRES
4.7 Algorithmes de contraintes actives
Les conditions doptimalit de KKT distinguent (ne serait-ce que par le terme de com-
plmentarit) les contraintes actives des contraintes inactives. Si lon connaissait lensemble
des contraintes actives la solution, on pourrait rsoudre le problme laide dune mthode
sans contrainte applique au problme (d
z
) = f(x
0
+ Zd
z
).
Lide de base de ces mthodes est la suivante. On dmarre en un certain point x
0
.
Nommons W, lensemble des contraintes satures en x
0
, ensemble de travail. Nous esp-
rons que lensemble de travail deviendra gal lensemble des contraintes actives en x

.
laide de W, nous dnissons un sous-problme avec seulement des contraintes dgalits.
Nous appliquons ce problme un algorithme doptimisation sans contrainte. Lalgorithme
doptimisation sans contrainte est interrompu dans deux circonstances :
la progression de lalgorithme sans contrainte est empche par la rencontre dune ou
plusieurs contraintes ;
une solution au sous-problme sans contrainte est atteinte.
Dans le premier cas, on doit ajouter des contraintes dans lensemble W (choisies parmi celles
rencontres par lalgorithme) alors que dans le second cas, on doit retirer des contraintes de
lensemble W (choisies parmi celles dont les variables
i
associes sont ngatives).
Plus prcisment, on distingue deux types ditrations : des itrations de restriction et
de relaxation. On parle de restriction lorsque lon applique un algorithme avec seulement les
contraintes dgalit de W. On parle de relaxation lorsque lon enlve des lments de W.
Remarquons que ce schma dalgorithme peut trs bien tre implant laide du schma
de lalgorithme 4.2. Dans ce dernier algorithme, on implante une tape de restriction en
forant d
N
= 0 ; on rencontre une nouvelle contrainte et ajoute un ou des lments W
lorsque
3
= min(
1
,
2
) et on atteint une solution au sous-problme sans contrainte lorsque
d
S
0 et d
B
0, dans quel cas on enlve une contrainte de W en enlevant un indice
de N. On voit donc que les contraintes de travail correspondent en fait aux composante
nulles du vecteur x. Une particularit de cette implantation vient du fait que lorsquune ou
plusieurs composantes de B devient nulle, la mcanique de lalgorithme du simplexe nous
impose den introduire une seule dans lensemble N. Une autre particularit est que le choix
de lalgorithme restreint est celui de la pente la plus forte alors quil serait avantageux de
calculer une direction de Newton modie (section 2.4) plutt que dutiliser d
S
=

f
S
.
Le parallle entre lalgorithme du gradient rduit et lalgorithme de contraintes actives
soulve le problme de la convergence globale de ce type dalgorithme. En eet, si la condition
de relaxation est trop permissive et la stratgie de rduction de lensemble W trop librale, on
peut retrouver un algorithme quivalent lalgorithme 4.2, et donc permettre la possibilit de
convergence vers un point non-stationnaire. Nanmoins, la possibilit dutiliser la mcanique
algbrique de lalgorithme du simplexe rends ce type dalgorithmes attrayant.
4.7. ALGORITHMES DE CONTRAINTES ACTIVES 157
Contraintes actives
{ Donnes : un point ralisable x un ensemble de travail W, }
{ une matrice Z telle que A
W
Z = 0 ; }
{ deux constantes
0
et
1
; }
tantque ( Optimal(x) )
{ tape de restriction }
y x
tantque (condition de relaxation NON satisfaite )
d Direction de descente dans ker A
W

max
max

{A(y + d) b}

adm
pas admissible (dnition 2.3.2)
si (
max
<
adm
) alors W W {i : [A
i
y < b
i
] [A
i
(y +
max
d) = b
i
]}
y y + min{
max
,
adm
}d
x y
{ tape de relaxation }
W W rduit
Algorithme 4.3: Contraintes actives.
4.7.1 Quelques aspects pratiques
Enn, lalgorithme de contraintes actives enrichit le schma simple 4.1 en maintenant un
ensemble dindice W des contraintes supposes actives. Dans ce cas, on distingue deux types
ditrations :
1. les itrations de restriction dans lesquelles on calcule une direction laide dun pro-
gramme avec contraintes dgalits seulement, A
W
x = b
W
; on dnote alors par Z
W
une matrice dont les colonnes engendrent ker A
W
.
2. les itrations de relaxation, que lon se permet sous certaines conditions, et qui per-
mettent de simplement enlever des indices de lensemble W.
Au point courant x, en constituant la fonction () = f(x + Z
W
), nimporte quelle
direction de descente pour en = 0 permet dobtenir une direction de descente ralisable
pour f. Par exemple,
la direction oppose au gradient d

= (0)
t
= Z
t
W
f(x)
t
fournit la direction de
descente d = Z
W
d

= Z
W
Z
t
W
f(x)
t
;
la direction de Newton d
N
=
2
(0)(0)
t
= (Z
t
W

2
f(x)Z
W
)
1
Z
t
W
f(x)
t
four-
nit la direction de Newton d
N
= Z
W
d
N
.
En fait, pour minimiser (), on dispose de toutes les mthodes du chapitre 2.
Si une condition de relaxation devient satisfaite, on se permet denlever un indice de W.
Dans cet algorithme de contraintes actives, si jamais =
Max
, cest le signe que le pas de
158 CHAPITRE 4. OPTIMISATION AVEC CONTRAINTES LINAIRES
dplacement a t raccourci pour viter de violer une contrainte, et donc lindice de cette
contrainte est ajout dans W et on continue avec des itrations de restrictions avec ce nouvel
ensemble W.
La condition doptimalit est considre satisfaite ds que f(x)Z
W
est assez petit, ce
qui est quivalent ce que le minimum par rapport
W
de f(x) +
W
A
W
soit assez
petit et que les
W
qui minimisent f(x) +
W
A
W
sont du bon signe.
Fonctions objectifs quadratiques Remarquons que lorsque la fonction objectif est qua-
dratique et convexe, la direction de Newton conduit directement au minimum sous la contrainte
A
W
x = b
W
. Sil faut raccourcir la direction, on ajoutera un indice dans W. Autrement, la
condition de relaxation est satisfaite au point x + d
N
par construction de la direction de
Newton.
Dans les cas des directions de Frank & Wolfe ou de projection, on peut obtenir le minimum
de la fonction f(x + d) par une formule explicite et ce minimum est un pas admissible.
Exercice 4.7.1 [Newton pour f quadratique]
a) Pour une fonction f quadratique et convexe (Q dnie positive), dmontrez que si le
point x
+
= x + d
N
est ralisable, alors il existe des multiplicateurs de Lagrange
W
tels que f(x
+
) +
W
A
W
= 0 ;
b) que peut-on dire si la fonction quadratique nest pas convexe ?
Exercice 4.7.2 [Pas admissible pour f quadratique]
a) obtenez une formule pour le minimum selon de f(x+d) lorsque f est une fonction
quadratique convexe, i.e. lorsque la matrice Q dnissant la fonction quadratique est
dnie positive ;
b) vriez que ce minimum est un pas admissible ;
c) que peut-on dire si la fonction quadratique nest pas convexe et que d est une direction
de descente ralisable ?
Exercice 4.7.3 [Application simple] Considrez le problme
min x
2
1
+ 2x
2
2
+ x
2
3
2x
1
4x
2
+ 2x
3
s. x
1
+ x
2
+ x
3
1
x 0
4.7. ALGORITHMES DE CONTRAINTES ACTIVES 159
a) En supposant que la contrainte ex 1 est satisfaite avec galit, obtenez la solution
avec la technique de la section 4.6.
b) partir de lorigine, appliquez lalgorithme des contraintes actives pour obtenir la
solution.
Exercice 4.7.4 [Application simple] Considrez le programme
min f(x) =
x
2
1
+ x
2
2
2
+ x
2
3
10x
1

3x
2
4

x
3
2
sujet 0 x
1
1,
0 x
2
1,
0 x
3
1.
partir de lorigine,
a) en utilisant lalgorithme des contraintes actives, obtenez la solution; puisque la fonc-
tion objectif est quadratique, pour un ensemble W donn, on peut calculer une solu-
tion exacte, et le vecteur allant de la solution courante cette solution exacte peut
tre utilis comme direction de descente dans ker A
w
;
b) eectuez 2 itrations de lalgorithme de Frank & Wolfe ;
c) eectuez 2 itrations de lalgorithme de projection.
4.7.2 Un exemple dalgorithme globalement convergent
Lalgorithme 4.4 prsente une variante possible qui prcise une condition de relaxation,
un critre darrt bas sur loptimalit, une direction de Newton sur les contraintes actives
et nalement une stratgie de relaxation. Si le problme de cyclage ne se prsente pas, alors
les points daccumulations de cette variante sont des points stationnaires.
Condition de relaxation
Parmi les direntes conditions de relaxation proposes dans la littrature, nous avons
retenu la plus simple : aussitt quun pas admissible (au sens de la dnition 2.3.2) a pu
tre utilis, on se permet denlever des composantes de W, cest--dire de permettre des
composantes nulles de devenir positives.
160 CHAPITRE 4. OPTIMISATION AVEC CONTRAINTES LINAIRES
Critre darrt
La norme du gradient rduit sert de critre darrt.
Direction de descente
Puisque la rduction rendue possible par la base B transforme le problme original en un
problme sans contrainte, et puisque pour ce nouveau problme, les variables S sont libres
alors que les variables N sont xes zro dans les tapes de restriction, nous utilisons la
direction de Newton dans les composantes S. En fait, il faut utiliser une direction de Newton
modie (voir la section 2.4) pour sassurer davoir une direction de descente.
Stratgie de relaxation
Comme lexemple de Wolfe lillustre, il faut se montrer prudent quant la stratgie de
relaxation. Nous avons retenu la plus simple et la plus usuelle, cest--dire celle de permettre
la variable ayant la composante de
N

f(x
S
, x
N
) la plus ngative de devenir positive.
Variantes
En fait, les variantes spciques cet algorithme concernent surtout les aspects relis
la relaxation : les variantes de la mthode de Newton et les tests darrt ayant dj t
discutes au chapitre 2.
Parmi dautres conditions de relaxation, mentionnons lutilisation dune suite
k
conver-
geant vers zro qui sert de critre darrt pour la boucle de restrictions. Avec cette stratgie,
on tente de rduire d
S
en de du seuil
k
litration k.
Pour ce qui est des stratgies, il est possible de permettre plusieurs composantes de
lensemble N de devenir positives. Une possibilit permet aux indices atteignant un certain
pourcentage x du minimum de
N

f(x
S
, x
N
) dtre considrs pour devenir positifs. Une
autre stratgie consiste utiliser la direction de projection (voir section 4.6) pour dterminer
les composantes pouvant tre augmentes.
4.8 Rsum
Les problmes avec contraintes linaires dgalit se rduisent aisment des problmes
sans contrainte en utilisant les proprits algbriques des contraintes linaires. Les algo-
rithmes doptimisation sans contrainte sadaptent aisment ce cas.
En prsence de contraintes dingalit, un phnomne combinatoire se manifeste : iden-
tier lesquelles des ingalits seront satures la solution (ou en un point candidat la
4.8. RSUM 161
Gradient rduit amlior
{ Donnes : une partition [[B | S | N]] de R
n
, une reprsentation }
{ de la matrice B
1
ainsi quune solution ralisable [x
B
, x
S
, x
N
]. }
d
N
(
N

f(x
S
, x
N
)
t
)
+
d
S
(
2
SS

f(x
S
, x
N
))
1

S

f(x
S
, x
N
)
t
Pas_admissible faux
tantque (d > 0 )
{ Restriction et/ou relaxation... }
si ( Pas_admissible ) alors d
N
0
sinon
{ Permettre la composante la plus grande de d
N
de quitter N. }
i arg min
j
{d
Nj
}
d
N
d
Ni
e
i
Pas_admissible faux
{ Calcul du pas }

1
max{ : x
S
+ d
S
0}

2
max{ : B
1
(b N(x
N
+ d
N
) S(x
S
+ d
S
)) 0}

adm
pas admissible (dnition 2.3.2)

3
min{
1
,
2
,
adm
}
si (
adm
=
3
) alors Pas_admissible vrai
{ Mise--jour de x }
x
N
x
N
+
3
d
N
x
S
x
S
+
3
d
S
x
B
B
1
(b Nx
N
Sx
S
)
{ Mise--jour de la partition }
si (d
N
= 0 ) alors { certaines composantes passent de N S }
si (
3
=
1
) alors { certaines composantes passent de S N }
si (
3
=
2
) alors
{ UNE composante passe de B N }
{ UNE composante passe de N ou S B }
{ La reprsentation de la matrice B
1
est mise jour. }
d
N
(
N

f(x
S
, x
N
)
t
)
+
d
S
(
2
SS

f(x
S
, x
N
))
1

S

f(x
S
, x
N
)
t
Algorithme 4.4: Gradient rduit amlior.
162 CHAPITRE 4. OPTIMISATION AVEC CONTRAINTES LINAIRES
solution). Si lon connat les contraintes satures, aussi nommes contraintes actives, le pro-
blme se ramne un problme avec contraintes linaires dgalit. Certaines analyses ma-
nipulent cet aspect combinatoire de manire explicite (gnralisations de la programmation
linaire, conditions de KKT, algorithmes de contraintes actives) alors que dautres dissi-
mulent la dicults (condition 4.3 et algorithme de Frank&Wolfe, conditions doptimalit et
algorithmes de projection).
Les algorithmes les plus rpandus utilisent la mcanique algbrique du simplexe pour im-
planter des variantes de la mthode de Newton se restreignant sur un ensemble de contraintes
de travail qui, on lespre, se confondra avec lensemble des contraintes actives. La conver-
gence globale de tels algorithmes est dlicate, mais des implantations soignes donnent depuis
longtemps dexcellents rsultats.
4.9 Extensions et rfrences
Chapitre 5
Optimisation direntiable avec
contraintes dgalit
Sujets du chapitre
Analyse des conditions doptimalit (quations ou inquations satisfaites pour toute solu-
tion du problme doptimisation).
Hypothses sur les contraintes.
Dduction dune famille dalgorithmes itratifs globalement convergents partir de la
violation des conditions doptimalit.
Prsentation de lalgorithme de pnalit simple.
Prsentation dun algorithme de pnalit augmente.
163
164 CHAPITRE 5. OPTIMISATION AVEC CONTRAINTES DGALIT
Introduction
Les problmes doptimisation direntiable avec contraintes dgalit galement diren-
tiables constituent un sujet classique, qui a t bien tudi par Lagrange, entre autres. Nous
entamerons des sujets plus modernes au prochain chapitre.
Comme prcdemment, nous utiliserons le concept de DED pour identier des quations
satisfaire (conditions doptimalit) pour les solutions locales du problme
min
xR
n
f(x)
sujet `a g(x) = 0,
(5.1)
o g : R
n
R
m
. g est un vecteur colonne de fonctions. Sauf mention contraire, les vecteurs
sont toujours des vecteurs colonne. Les fonctions f et g sont direntiables, et en gnral,
supposes de classe C
3
(R
n
).
Ensuite, en perturbant les conditions doptimalit retenues, nous dduirons un algorithme
de pnalit. Nous tudierons plusieurs aspects de lalgorithme de pnalit quadratique, et en
survolerons dautres variantes.
5.1 Conditions doptimalit
Avant dintroduire les conditions doptimalit, nous devons dnir quelques concepts.
Tout dabord, lensemble des points x qui satisfont la contrainte g(x) = 0 est nomm
ensemble ralisable du problme. Nous devrons aussi dnir le concept de direction ralisable.
Dnition 5.1.1 Soit x tel que g(x) = 0. Considrons une suite y
k
, avec g(y
k
) = 0 telle
que y
k
x. Considrons maintenant les vecteurs d
k
=
y
k
x
y
k
x
. Tout point daccumulation
de la suite d
k
est nomm direction ralisable en x pour les contraintes g.
Lensemble de ces directions, en fait, constitue le plan tangent aux contraintes en x.
5.1.1 Conditions de premier ordre
Pour obtenir des conditions doptimalit de premier ordre en un point x

, nous devons
nous assurer quaucune direction ralisable en x

nappartient au DED(x

). Le DED(x

)
est bien dni comme {d : f(x

)d < 0}, et donc lobtention de conditions doptimalit (du


premier ordre) passe par une caractrisation des directions ralisables.
5.1. CONDITIONS DOPTIMALIT 165
d
k
=
y
1
x
y
k
x
y
k
Direction ralisable obte-
nue en passant la li-
mite de directions norma-
lises menant des points
voisins y
k
; ce sont des
directions tangentes aux
contraintes, ici une ligne
courbe en deux dimen-
sions
Figure 5.1 Direction ralisable
Directions ralisables
Soit une suite d
k
=
y
k
x
y
k
x
convergeant vers la direction ralisable

d en un point x. Alors,
on a que pour chacune des composantes g
i
de lapplication g, le dveloppement de Taylor
limit nous donne
g
i
(y
k
) = g
i
(x) +
k
g
i
(x)d
k
+O(
2
k
),
o
k
= y
k
x. Puisque g
i
(y
k
) = g
i
(x) = 0, il reste
g
i
(x)d
k
O(
k
),
et en passant la limite,
g
i
(x)

d = 0,
et ce pour toutes les composantes de lapplication g, ce qui scrit
g(x)

d = 0,
o g reprsente le Jacobien de lapplication g, cest--dire une matrice dont les lignes sont
g
i
(x). Donc, toute direction ralisable d en x satisfait la relation g(x)d = 0.
Pour aller plus loin, il faut maintenant introduire une hypothse sur les contraintes g,
savoir une hypothse de qualication des contraintes g. Cette hypothse stipule que x

est
un point rgulier du systme g(x) = 0, cest--dire, la matrice g(x

) est une matrice de


plein rang-lignes, m n. Cette hypothse permet de montrer que toute direction satisfaisant
g(x)d = 0 est une direction ralisable, compltant ainsi la caractrisation des directions
ralisables. Remarquons que cette qualication dpends des fonctions g et non pas de len-
semble des points ralisables, qui pourrait tre exprim laide dautres contraintes.
166 CHAPITRE 5. OPTIMISATION AVEC CONTRAINTES DGALIT
La courbe ralisable x(t)
suit la direction d, mais
sloigne de la droite de
direction d en demeurant
sur la varit g(x) = 0.
On reprsente cet loigne-
ment par un multiple u(t)
du vecteur g(x)
%
%
%
%
%
%
%
%
%
%
%
%

i
i
i
i
E
E
i
i
i
i
i
i
i
i
i
i
i
i
d
g(x)
g(x)
t
u(t)
x(t)
Figure 5.2 Courbe ralisable
Par exemple, les contraintes g
1
(x, y) = x
2
y et g
2
(x, y) = x
2
+y dnissent un seul point
ralisable, soit lorigine. Pourtant, un mauvais hasard fait que tout laxe des x est tangent
chacune des deux contraintes alors que le plan tangent tel que dni plus haut se rduit
lorigine, un sous-espace de dimension nulle. Lorigine nest pas un point rgulier de ces
contraintes. Cependant, les contraintes g(x, y) = x+y et g
2
(x, y) = xy dnissent le mme
point ralisable, qui est rgulier pour les contraintes, cette fois-ci.
Thorme 5.1.1 Soit x

un point rgulier des contraintes g(x

) = 0. Alors, d est une


direction ralisable en x

si et seulement si g(x

)d = 0.
Preuve Cette preuve constitue un exercice dapplication du thorme des fonctions im-
plicites. Le mme schma de preuve sera utilis pour analyser lalgorithme des pnalits
prsent plus loin.
Il est clair que si d est une direction ralisable, alors g(x

)d = 0. En fait, x

na mme
pas besoin dtre rgulier pour cette moiti du thorme.
En revanche, supposons que x

est un point rgulier qui satisfait g(x

)d = 0. Il faut
montrer que, quel que soit d dans le plan tangent aux contraintes en x

, il existe une courbe


ralisable x(t) telle que x(0) = x

et que, x

(0) = d.
Pour construire une telle courbe, considrons les quations (voir la gure 5.2)
g(x

+ td +g(x

)
t
u(t)) = 0,
5.1. CONDITIONS DOPTIMALIT 167
o u est inconnue, et t est considr x. Ceci constitue un systme rgulier dquations
paramtris par t, avec u(0) = 0. On peut exprimer la matrice Jacobienne de ce systme
en u comme g(x

)g(x

)
t
, qui est inversible puisque g(x

) est de plein rang, x

tant
un point rgulier des contraintes. Les hypothses du thorme des fonctions implicites sont
donc satisfaites, et ce systme possde une solution continment direntiable u(t) ; lorsque
la fonction g est de classe C
p
, la courbe u lest aussi. La courbe x(t) = x

+td +g(x

)
t
u(t)
est par construction une courbe ralisable. Drivons le systme g(x

+td +g(x

)
t
u(t)) = 0
par rapport t, et valuons le tout en t = 0 :
0 =
d
dt
g(x(t))

t=0
= gd +g(x

)g(x

)
t
u

(0).
Nous avions choisi d pour que g(x

)d = 0, et comme g(x

)g(x

)
t
est inversible, u

(0) =
0, do x

(0) = d, tel que voulu. 2


On voit donc que les directions ralisables sont celles situes dans le noyau de la matrice
g(x

). Considrons une base du noyau de g(x

) forme des vecteurs b


1
, b
2
, . . . , b
mn
, et
une matrice Z

dont les colonnes sont les vecteurs b


i
. Alors, toute direction ralisable d
peut sexprimer comme combinaison linaire de la base du noyau de g(x

), d = Z

d
z
o
d
z
R
mn
constitue lexpression de d dans la base du noyau.
Condition du premier ordre
En utilisant la caractrisation des directions ralisables, on peut rephraser la condi-
tion doptimalit comme suit : pour toute direction dans le noyau de la matrice g(x

),
f(x

)d = 0. Exprimons d = Z

d
z
pour crire f(x

)(Z

d
z
), quel que soit d
z
R
mn
. Ceci
entrane que f(x

)Z

= 0 ; cette dernire quantit se nomme gradient rduit de f.


Une autre manire de voir ces conditions consiste exploiter le fait que f(x

) est un
vecteur orthogonal au noyau de la matrice g(x

). Un exercice simple dalgbre linaire


permet de conclure que ceci est quivalent lexistence dun vecteur

R
m
satisfaisant
lgalit
f(x

) =

g(x

).
Bon, tout ceci nous donne que d DED(x

) est caractris par f(x

)d < 0 et d
est une direction ralisable est caractris par g(x

)d = 0. En observant que si d est


ralisable, d lest aussi, on retrouve que d ou d nappartiennent pas DED(x

) seulement
si f(x

)d = 0, ce qui permet dcrire la condition doptimalit suivante : si x

est un
minimum local de f dans lensemble dni par g(x) = 0, alors
g(x

)d = 0 f(x

)d = 0.
168 CHAPITRE 5. OPTIMISATION AVEC CONTRAINTES DGALIT
Exercice 5.1.1 [Dualit] Dmontrez : soit une matrice nm, A de rang m < n; alors, un
vecteur v R
n
est orthogonal au noyau de A si et seulement sil existe un vecteur R
m
tel que v = A.
Rsumons la prcdente discussion dans le
Thorme 5.1.2 Soit x

un minimum local de la fonction f sous les contraintes g(x) = 0


tel que g(x

) est une matrice de plein rang-ligne ; alors, il existe un vecteur

R
m
tel
que f(x

) =

g(x

) ; ceci est quivalent la condition f(x

)Z

= 0, o les colonnes
de Z

forment une base du noyau de la matrice g(x

).
Exercice 5.1.2 [Optimalit] Considrez le problme
min x
2
+ x
3
s. x
1
+ x
2
+ x
3
= 1
x
2
1
+ x
2
2
+ x
2
3
= 1
a) Par la symtrie de x
2
et x
3
, reformulez le problme avec seulement deux variables,
soit x
1
et x
2
= x
2
= x
3
. Obtenez deux points stationnaires pour ce problme en deux
variables x
1
et x
2
. Illustrez graphiquement votre solution.
b) Vriez que x

= (1, 0, 0)
t
et x

= (
1
3
,
2
3
,
2
3
)
t
satisfont aux conditions ncessaires de
Lagrange pour le problme original.
Exercice 5.1.3 [Rectanglebis] Trouvez le rectangle de primtre maximal pour une
supercie donne (hl = 1). videmment, un rectangle inniment long et mince suggre,
avec raison, que la solution nest pas borne. Supposons donc que la hauteur h et la longueur
l sont bornes : 0.5 h, l 4. Vriez que l = 1 et h = 1 est un point stationnaire, mais
pas un maximum local ; quelle est la nature de ce point stationnaire ? Trouvez les maxima
locaux, et le maximum global de ce problme.
5.1. CONDITIONS DOPTIMALIT 169
Exercice 5.1.4 [Projectionsuite de lexercice 4.3.4] Considrez le programme :
min gx
s. Ax = 0
x
2
= 1
Vriez que sa solution est un vecteur de mme direction que celle trouve lexercice 4.3.4,
page 138.
5.1.2 Conditions de second ordre
Nous venons de voir que les conditions de premier ordre expriment le fait que les directions
ralisables, donc tangentes la varit des points satisfaisant aux contraintes g(x) = 0, ne
sont pas des directions de descente stricte.
Cette proprit nest pas assez forte pour discriminer des minima locaux, points de selles
ou maxima. Revenons lexemple de la fonction f(x, y) = (x
2
y)(x
2
2y). Nous avons dj
vri que lorigine est un minimum local de cette fonction restreint toute droite passant
par lorigine. En dautres termes,
0 = min
ax+by=0
(x
2
y)(x
2
2y),
et ce, quelles que soient les valeurs de a et b. Cependant,
0 = max
x
2
1.5y=0
(x
2
y)(x
2
2y).
Pourtant, dans les deux cas, pour le cas particulier o a = 0 et b = 1.5, le gradient
de lunique contrainte est g(x

, y

) = ( 0 1.5 ), alors que le gradient de lobjectif est


f(x

, y

) = 0 = 0g(x

, y

). Pour le problme sans contrainte, lorigine est un point de


selle alors que pour le problme contraint, dpendamment de la contrainte, lorigine est soit
un minimum local ou encore un maximum local. Cet exemple illustre de faon convainquante
quil faut tenir compte de la courbure des contraintes (drives dordre suprieur) pour
caractriser les minima et les maxima locaux contraints.
Il est remarquable que les pondrations relatives des drives secondes des contraintes et
de la fonction objectif puissent toutes tre dduites par lanalyse du Lagrangien associ au
problme de minimisation avec contraintes. Rappelons que celui-ci est dni comme
L(x, )
def
= f(x) + g(x) = f(x) +
m

i=1

i
g
i
(x).
170 CHAPITRE 5. OPTIMISATION AVEC CONTRAINTES DGALIT
Les conditions doptimalit du premier ordre que nous avons construite plus haut sexpriment
de manire concise laide de la fonction L :
0 = L(x

) =
_

x
L(x

L(x

)
.
En eet,
x
L(x

) = f(x

)+

g(x

) qui sannule correspond la condition de premier


ordre alors que

L(x

) = g(x

) qui sannule correspond simplement la satisfaction des


contraintes. Cette formulation est la source du nom donn aux variables , multiplicateurs
de Lagrange pour le problme (5.1).
La condition de second ordre sexprime simplement comme suit :

2
xx
L(x

) =
2
f(x

) +

2
g(x

)
est une matrice (semi-)dnie positive sur lespace tangent {d : g(x

)d = 0}, ce qui sex-


prime laide de la matrice Z

introduite plus haut :


Z
t
_

2
xx
L(x

)
_
Z

= Z
t
_

2
f(x

) +

2
g(x

)
_
Z

est une matrice (semi-)dnie positive. Cette dernire matrice porte le nom de hessien rduit
du Lagrangien.
Pour allger la notation, nous utiliserons frquemment la formulation suivante dans lave-
nir (tout comme ci-haut !) :

2
g(x)
def
=
_
m

i=1

2
g
i
(x)
_
.
Grce cette formulation, nous pouvons noncer les conditions doptimalit.
Thorme 5.1.3 1. [Ncessaire] Si x

, point rgulier des contraintes g(x) = 0, est un mi-


nimum local du programme (5.1), alors il existe un vecteur

R
m
tel que L(x

) =
0, et de plus d
t

2
xx
L(x

)d 0 pour tout d tel que g(x

)d = 0.
2. [Susante] Sil existe un vecteur

R
m
tel que L(x

) = 0, et de plus d
t

2
xx
L(x

)d >
0 pour tout d tel que g(x

)d = 0, alors x

est un minimum local pour le pro-


gramme (5.1).
Preuve
Ncessit.
Considrons une courbe direntiable x(t) de classe C
2
telle que g(x(t)) = 0 prs
de x(0) = x

; pour construire une telle courbe, on procde comme au thorme 5.1.1.


Alors, si x

est un minimum local pour le programme (5.1), on a ncessairement f(x

) =
f(x(0)) = min
t
f(x(t)), et donc
d
2
dt
2
f(x(t))

t=0
= x

(0)
t

2
f(x

)x

(0) +f(x

)x

(0) 0.
5.1. CONDITIONS DOPTIMALIT 171
En drivant deux fois par rapport t la relation g(x(t)) on obtient :
x

(0)
t
_
m

i=1

2
g
i
(x

)
_
x

(0) + g(x

)x

(0) = 0.
La conclusion suit en additionnant les deux dernires relations, et en rappelant que
x

(0) est arbitraire dans le plan tangent g(x

)x

(0) = 0.
Susance.
Reprenons les directions d
k
= y
k
x

utilises plus haut et procdons par contradiction


en supposant que x

nest pas un minimum local de (5.1) bien quil satisfasse aux


conditions susantes doptimalit.
Par la caractrisation de directions ralisables, nous savons que g(x

d = 0. Utilisons
le thorme de Taylor pour crire
0 = g
i
(y
k
) = g
i
(x

) +
k
g
i
(x

)d
k
+

2
k
2
d
t
k

2
g
i
(
i
)d
k
,
et, si y
k
est choisi pour que f(y
k
) < f(x

),
0 f(y
k
) f(x

) =
k
f(x

)d
k
+

2
k
2
d
t
k

2
f(
0
)d
k
,
o les points
i
sont des points intermdiaires entre y
k
et x

. Maintenant, en multipliant
lavant-dernire relation par

i
et en les ajoutant la dernire relation, on obtient
0

2
k
2
d
t
k
_

2
f(
0
) +
m

i=1

2
g
i
(
i
)
_
d
k
,
ce qui fournit la contradiction dsire lorsque k .
2
Remarquons que la qualication des contraintes, lhypothse que x

est un point rgulier


des contraintes, nest requise que pour tablir les conditions ncessaires. Un exemple simple
violant la qualication des contraintes est g
1
(x) = x
2
1
+ (x
2
1)
2
= 1 et g
2
(x) = x
2
1
+ (x
2
+
1)
2
= 1. Lorigine en est le seul point ralisable, et donc solution optimale quelle que soit
la fonction objectif. Les gradients des deux contraintes sont g

1
= (0, 2) et g

2
= (0, 2).
Les multiplicateurs de Lagrange existe donc seulement pour des fonctions objectif dont le
gradient saligne sur laxe x
2
.
Exercice 5.1.5 [Optimalitsuite de lexercice 5.1.2, page 168] Dterminez la nature de
ces quatre points stationnaires (les deux en a), et les deux en b) ).
172 CHAPITRE 5. OPTIMISATION AVEC CONTRAINTES DGALIT
Exercice 5.1.6 [Conditions doptimalit] Considrez une hyperbole de R
2
, y = 1/x. Soit
un point P =
_
Px
Py
_
, on veut trouver le point de lhyperbole le plus proche de P. On ramne
ltude au programme suivant dans R
2
:
(A)
_
min d(x, y) =
1
2
((x P
x
)
2
+ (y P
y
)
2
)
sujet xy = 1.
a) crivez les conditions doptimalit (dordre un et deux) de ce problme.
b) Si le point P est sur la droite y = x, on devine quil y a 2 candidats solution naturels :
_
1
1
_
et
_
1
1
_
. En vous limitant aux x, y > 0, vriez cette intuition en utilisant les
conditions doptimalit ; vriez dabord que x = y = 1 est un point stationnaire pour
le programme (A). Vriez ensuite que lintuition nest pas vraie si P est assez loin
de lorigine ; quantiez ce loin de lorigine en utilisant les conditions doptimalit
dordre 2.
5.2 Remarques gnrales sur les algorithmes
Le cas de contraintes non-linaires ne permet pas de caractriser algbriquement les
directions ralisables, comme ctait le cas pour les contraintes linaires. La construction
dalgorithmes passe donc par des perturbations ou approximations des conditions doptima-
lit.
En perturbant de diverses manires les conditions doptimalit, nous obtenons des algo-
rithmes de pnalit ou de Lagrangien augment.
Une autre approche consiste linariser les conditions doptimalit, la maniere de la
mthode de Newton. On se retrouve avec des conditions linarises qui constituent en fait
les conditions doptimalit dun programme quadratique. Les algorithmes de programma-
tion quadratique successive constituent une gnralisation de la mthode de Newton aux
problmes contraints.
Dans ce royaume de problmes sous contraintes non-linaires, il nexiste actuellement
aucun algorithme dnitivement suprieur. Concentons-nous donc dexposer au mieux les
approches existantes.
5.3 Perturbations des conditions doptimalit
Contentons-nous pour linstant de produire un algorithme qui calcule des points station-
naires pour le programme (5.1), cest--dire des points qui satisfont aux conditions dopti-
5.3. PERTURBATIONS DES CONDITIONS DOPTIMALIT 173
malit de premier ordre : il existe un vecteur

R
m
tel que
f(x

) +

g(x

) = 0
g(x

) = 0.
(5.2)
5.3.1 Solution des conditions de premier ordre
Une approche directe consiste bien sr tenter de rsoudre le systme dquations (5.9).
Par exemple, on pourrait utiliser la mthode de Newton, et esprer obtenir des rsultats de
convergence locale quadratique. Cependant, comme nous lavons dj discut, le voisinage
dans lequel la mthode de Newton converge est souvent assez petit. Cette constatation a
motiv le dveloppement dune famille dalgorithmes de descente et les modications de
lalgorithme de Newton. Pour loptimisation sans contrainte, la modication sappuie sur le
fait que la fonction objectif dcrot dune itration lautre (algorithme de descente). Une
telle fonction, dans un contexte plus gnral, est nomme fonction de mrite.
Bien quil soit possible de construire des fonctions de mrite pour le problme (5.9),
souvent ces fonctions de mrite ne sont pas direntiables, et nous en reportons ltude
plus tard, lorsque nous aborderons loptimisation de fonctions non-direntiables.
5.3.2 Perturbation des conditions doptimalitpnalits
Dans lquation (5.9), remplaons le 0 de la seconde quation par lapproximation ,
o est un paramtre que nous laisserons tendre vers zro. Le but de cette manuvre est
de calculer des solutions x() dpendant du paramtre en esprant pouvoir montrer que
lim
0
x() = x

. Cette manipulation permet dcrire


f(x) + g(x) = 0
g(x) =
t
,
do lon tire que =
g(x)
t

, ce qui permet de rduire ces deux quations une seule :


P(x, )
def
= f(x) +
g(x)
t

g(x) = 0,
qui sont prcisment les conditions doptimalit du problme
min
xR
n
p(x, )
def
= f(x) +
g(x)
2
2
.
Ce dernier problme est nomm pnalisation quadratique du programme (5.1). Comme nous
le verrons plus tard, dautres perturbations des quations (5.9) conduisent dautres pna-
lisations. Dans ce qui suit, nous allons tudier le comportement de la famille de solutions
174 CHAPITRE 5. OPTIMISATION AVEC CONTRAINTES DGALIT
(approximatives) x() des problmes pnaliss lorsque sapproche de zro, et montrer que
sous des hypothses assez faibles, les points daccumulation de cette famille sont des points
stationnaires pour le programme (5.1). Compltons la notation telle que
x
p = P en d-
nissant
2
xx
p =
x
P = H :
H(x, )
def
=
2
f(x) +
_
m

i=1
g
i
(x)


2
g
i
(x)
_
+
g(x)
t
g(x)

.
Les algorithmes de pnalit consistent dnir une suite {
k
} telle que
k
0 et
calculer une suite x(
k
) de minima approximatifs de p(x,
k
). Lanalyse de ces algorithmes
consiste montrer que lim
k
i

x(
k
i
) = x

, un point stationnaire de (5.1), qualier la


vitesse de la convergence, et quantier la quantit de calculs requise pour identier x(
k+1
)
partir de x(
k
).
Pnalit
{ Donn :
0
> 0 et x
0
. }

0
x

x
0
tantque ( > Precision )
{ Point de dpart }
x x

{ Corrections de Newton }
tantque (P(x, ) > tolerance )
d
N
Direction_de_Newton(x, )
Pas_admissible(x, d
N
)
x x + d
N
x

x
next()
Algorithme 5.1: Pnalit simple
Lapproche par pnalisation est simple, on rsout une suite de problmes pnaliss selon
un paramtre
k
sans contrainte jusqu ce que
k
soit assez petit pour que la solution
du sous-problme sans contrainte soit acceptable comme solution approche du problme
original. Cette approche nest pas nouvelle du tout, un logiciel nomm SUMT (Sequential
Unconstrained Minimization Technique) a eu un succs important au moment de sa cration
vers 1967.
Bien que sduisante, cette approche ncessite une mise en uvre soigne tel que nous le
verrons dans la section ddie aux dtails dimplmentation.
5.3. PERTURBATIONS DES CONDITIONS DOPTIMALIT 175
0.6
0.7
0.8
0.9
1
1.1 0.6
0.7
0.8
0.9
1
1.1
-1.6
-1.4
-1.2
-1
-0.8
-0.6
-0.4
-0.2
0
r = 1.0
-0.234
-0.874
-1.19
-1.35
-1.43
-1.47
-1.49
-1.5
x
y
0.6
0.65
0.7
0.75
0.8 0.6
0.65
0.7
0.75
0.8
-1.6
-1.4
-1.2
-1
-0.8
-0.6
-0.4
r = 0.1
-0.774
-1.09
-1.25
-1.33
-1.37
-1.39
-1.4
x
y
0.6
0.65
0.7
0.75
0.8 0.6
0.65
0.7
0.75
0.8
-2
-1
0
1
2
3
4
5
6
7
r = 0.01
-0.134
-0.774
-1.09
-1.25
-1.33
-1.37
-1.39
-1.4
x
y
P(x,y,1)
0
0.5
1 0
0.5
1
-15
-10
-5
0
5
P(x,y,0.1)
P(x,y,0.001)
On observe la pnali-
sation quadratique pour
des valeurs de = 1,
0.1 et 0.01. La fonc-
tion est f(x) = x
1

x
2
et la contrainte est
1 x
2
1
x
2
2
= 0. Le
mauvais conditionnement
sobserve par des lignes
de niveau constant de
plus en plus plates,
et galement de plus en
plus rapproches, ainsi
que par lchelle de laxe
f(x) du graphique.
On peut galement ob-
server sur un mme gra-
phique leet de la p-
nalisation, et le mau-
vais conditionnement qui
se traduit alors par une
fonction beaucoup plus
abrupte.
Figure 5.3 Pnalisation
176 CHAPITRE 5. OPTIMISATION AVEC CONTRAINTES DGALIT
Exercice 5.3.1 [Pnalit g
2
] Considrez le problme
min f(x) = x
1
x
2
+ x
3
sujet x3 = 0
x
2
1
+ x
2
2
+ x
2
3
= 1
videmment, x
3
est inutile dans la formulation, mais est inclus pour rendre les calculs
moins triviaux. On utilise la pnalit extrieure g(x)
2
pour traiter chacune des galits,
et obtient les rsultats suivants :
k
k
x
1
(
k
) x
2
(
k
) x
3
(
k
)
1 1 0.834377 0.834377 -0.454846
2 0.1 0.728326 0.728326 -0.087925
3 0.01 0.709559 0.709559 -0.009861
4 0.001 0.707356 0.707356 -0.000999
a) En examinant la tendance des valeurs x() lorsque sapproche de 0, dduisez la
solution optimale du problme.
b) () =
g(x)

; en examinant la tendance des valeurs de (), dduisez les multiplicateurs


de Lagrange optimaux du problme.
Limites des approches par pnalisation
Avant daller plus loin, certaines mises-en-garde sont ncessaires. Une premire, fonda-
mentale, vient du fait que le problme min p(x, ) peut tre non-born infrieurement, et ce
pour toute valeur positive de . Une seconde vient du fait que sans hypothse additionnelle,
on ne peut rsoudre de systme dquations par une mthode de descente.
Pnalisations non-bornes Considrons le problme trivial suivant : min
x=0
x
4
. Alors,
p(x, ) =
1
2
x
2
x
4
nest pas borne infrieurement. Comme nous le verrons ci-aprs, rien
nassure que les minima locaux de p(x, ) convergent vers des points ralisables, et les seuls
thormes de convergence vraiment forts supposent la solution globale des sous-problmes
sans contrainte. Lexemple trivial montre quil est parfois irraliste de supposer des solutions
globales aux sous-problmes.
Dicults de solution des problmes pnaliss Le simple fait de calculer un point
ralisable, qui satisfait g(x) = 0, constitue un problme dicile. En eet, si m = n, il sagit
5.3. PERTURBATIONS DES CONDITIONS DOPTIMALIT 177
de solutionner un systme dquations, et nous avons mentionn prcdemment que des
hypothses sur g sont requises pour assurer que la minimisation locale de lobjectif g(x)
2
conduit bel et bien la solution de lquation. Or, la pnalit quadratique consiste en une
somme pondre de lobjectif f et du pseudo-objectif g(x)
2
. Les mmes hypothses
(monotonie de g) sont donc requises pour assurer que les points minima sont ralisables.
Cette premire dicult est incontournable avec des mthodes de descente. Remarquons
que la convergence locale de telles mthodes nest pas mise en cause, et certains auteurs
arment que si lalgorithme ne converge pas vers un point ralisable, cest que le modle et
lestim initial ne sont pas adquats.
Mauvais conditionnement de la pnalisation Lattrait des mthodes de pnalisation,
consistant remplacer la solution dun problme avec contraintes par une suite de sous-
problmes sans contrainte, a diminu vers 1970. En eet, lanalyse numrique des sous-
problmes de la suite eectue par Murray montre que lorsque
k
se rapproche de zro, le
sous-problme sans contrainte devient trs mal conditionn, et donc dicile rsoudre. Ceci
se rete en une inecacit de tout algorithme utilis pour solutionner ces sous-problmes.
Rappelons que le conditionnement dun problme doptimisation est li au rapport des
valeurs propres extrmes de son Hessien. Exprimons donc le Hessien dun problme pnalis :
H(x, ) =
2
f(x) +
_
m

i=1
g
i
(x)


2
g
i
(x)
_
+
g(x)
t
g(x)

.
Les deux premiers termes de ce Hessien se rapprochent (en autant que x se rapproche de
x

) de
2
xx
L(x

), que lon peut supposer bien conditionne ; si


2
xx
L(x

) est mal
conditionne, alors le problme est dicile, et le mauvais conditionnement ne provient pas
de la mthode de pnalisation. Par consquent, les valeurs propres extrmes de
2
xx
L(x

)
sont supposes nies, et loignes de zro. Cependant, la matrice
g(x)
t
g(x)

possde m valeurs
propres qui divergent lorsque sapproche de zro. Donc, H(x, ) possde n m valeurs
propres bornes, et m valeurs propres divergentes. moins que m = 0 ou encore que m =
n, le rapport des valeurs propres extrmes de H(x, ) diverge, et donc les sous-problmes
deviennent inniment mal conditionns lorsque sapproche de zro.
5.3.3 Perturbation des conditions doptimalitLagrangiens aug-
ments
Suite aux analyses de Murray, de nombreux auteurs ont tent de dvelopper des mthodes
inspires des pnalisations, mais dpourvues du problme du mauvais conditionnement. Un
de ces eorts a produit une thorie riche autour du concept de Lagrangien augment.
Le Lagrangien augment peut se dduire dune manire similaire la dduction de la
pnalisation quadratique ci haut : les conditions doptimalit se rcrivent, utilisant une
178 CHAPITRE 5. OPTIMISATION AVEC CONTRAINTES DGALIT
constante

cense estimer

,
f(x) + g(x) = 0
g(x) = (

)
t
,
de telle sorte que, puisque =
g(x)
t

+

, on peut rcrire ce dernier systme dquations en
une seule
P
A
(x,

, )
def
= f(x) + (
g(x)
t

+

)g(x) = 0,
qui constitue les conditions doptimalit du problme
min p
a
(x,

, )
def
= f(x) +

g(x) +
g(x)
2
2
, (5.3)
qui peut se rcrire
L(x,

) +
g(x)
2
2
,
un Lagrangien augment dun terme de pnalit ou encore
p
a
(x,

, ) = p(x, ) +

g(x),
une pnalit augmente dun terme issu du Lagrangien.
Une proprit importante de la fonction p
a
est donne dans la proposition suivante.
Proposition 5.3.1 Soient x

un minimum local du problme (5.1) et [x

] un couple
satisfaisant aux conditions ncessaires doptimalit pour le problme (5.1). Alors, x

est un
point stationnaire pour le problme min p
a
(x,

, ). De plus, il existe une valeur critique


telle que x

est un minimum local de min p


a
(x,

, ) pour toute valeur < , et si x

satisfait aux conditions susantes doptimalit pour le problme (5.1),


2
xx
p
a
(x

, ) est
une matrice dnie positive pour toute valeur < .
*Exercice 5.3.2 [Lagrangien augment] Dmontrez la proposition 5.3.1.
Les algorithmes de Lagrangien augment utilisent cette proprit pour amliorer lestim

itrativement. Supposons que soit constant, et infrieur . Dnotons par x() un


minimum de la fonction p
a
(x, , ). Lalgorithme original du Lagrangien augment, aussi
nomm mthode des multiplicateurs prend alors la forme suivante :

k+1

k
+
g(x(
k
))
t

.
5.3. PERTURBATIONS DES CONDITIONS DOPTIMALIT 179
Lagrangien_augment
{ Donns : 0 < < 1, x
0
,
0
et
0
}

0
x x
0

0
g

g(x)
tantque (non termin )
{ Corrections de Newton }
tantque (P
A
(x, , ) > g

)
d
N
Direction_de_Newton(x, , )
Pas_dArmijo(x, d
N
)
x x + d
N
si (g(x) < g

) alors
+
g(x)
t

g(x)
sinon
next()
Algorithme 5.2: Lagrangien augment
180 CHAPITRE 5. OPTIMISATION AVEC CONTRAINTES DGALIT
Lalgorithme 5.2 diminue tant quune rduction de taux de g(x) nest pas observe.
Au voisinage dun point satisfaisant aux hypothses du thorme (5.6.1), on sait que ne
sera plus rduit car il deviendra ventuellement assez petit pour que la convergence linaire
de taux > 0 soit observe, et le comportement asymptotique de la mthode est celui du
lagrangien augment.
5.3.4 Proprits de convergence globales de la pnalisation
Comme nous lavons dit plus haut, sans hypothse additionnelle sur les fonctions des
contraintes g, rien ne garantit que lensemble x() possde un point limite ralisable. Par
consquent, nous nous contentons de montrer que tout point limite ralisable est stationnaire.
En fait, si les x() sont des minima locaux de lobjectif pnalis, alors les points limites de
la suite x(
k
) satisfont aux conditions ncessaires de second ordre.
Si lon suppose que les minima globaux x(
k
) des sous-problmes sont calculs, alors
on peut montrer que tout point daccumulation de la suite x(
k
) est un minimum global
pour le programme (5.1). Cette preuve est laisse en exercice. Cependant, comme lindique
la remarque plus haut, rien ne garantit lexistence de tels points stationnaires, mme si le
domaine ralisable est compact (un seul point dans lexemple trivial).
*Exercice 5.3.3 [Minimisation globale] Supposez que x(
k
) soit un minimum global de
min
xR
n f(x) +
g(x)
2
2
k
pour tout k. Alors, tout point daccumulation de la suite x(
k
) est
un minimum global pour le programme (5.1). Indices : (i) la suite des f(x(
k
)) +
g(x(
k
))
2
2
k
est non-dcroissante ; (ii) la suite des
g(x(
k
))
2
2
k
est non-croissante ; (iii) la suite des f(x(
k
))
est non-dcroissante ; (iv) la relation suivante est vrie : f(x

) f(x(
k
)) +
g(x(
k
))
2
2
k

f(x(
k
)).
Thorme 5.3.2 Supposons quun point daccumulation x de la suite {x(
k
)} soit un point
rgulier des contraintes. Supposons de plus que les points x(
k
) sont des minima locaux des
sous-problmes pnaliss. Alors, x satisfait aux conditions ncessaires pour un minimum local
du problme (5.1).
Preuve Vrions dabord que les proprits de continuit de f et g assurent que x est au
moins un point stationnaire. Les points x(
k
) satisfont au systme dquations
f(x) +
g(x)
t

k
g(x) = 0,
et f(x) sapproche de f( x), un vecteur born tandis que g(x) sapproche de g( x)),
une matrice rgulire. Par consquent, il faut que
g(x)

k
sapproche dun vecteur ni, sans quoi
5.3. PERTURBATIONS DES CONDITIONS DOPTIMALIT 181
f(x) +
g(x)
t

k
g(x) ne pourrait pas sapprocher de zro. Ceci entrane que g( x) = 0, donc
que x est un point stationnaire. 2
5.3.5 Existence de trajectoires direntiables
Nous sommes intresss exprimer, proche dun minimum local satisfaisant aux condi-
tions susantes de second ordre pour le problme (5.1), les solutions x() et () du sous-
problme
f(x) + g(x) = 0
g(x)
t
= 0.
Nous avons dj vu que les solutions de ce systme sont les mmes que les solutions du
systme
f(x) + g(x) = 0
=
g(x)
t

,
qui reprsentent les conditions doptimalit de premier ordre des sous-problmes pnaliss.
Cependant, le Jacobien (x, ) du systme quivalent se rapproche de
2
L(x

) qui est
une matrice inversible :
lim
0
(x(), ()) =
2
L(x

).
Ceci nous permet dutiliser le thorme des fonctions implicites et de dduire lexistence des
fonctions x() et () direntiables solutions du systme linaire transform, et donc points
stationnaires du sous-problme pnalis. La discussion prcdente constitue lessentiel de la
preuve du prochain thorme.
Thorme 5.3.3 Soit x

un point rgulier des contraintes g(x) = 0 satisfaisant aux condi-


tions susantes de second ordre pour le programme (5.1). Si les fonctions f et g sont de
classe C
p
(R
n
), alors, il existe des trajectoires direntiables x() et () de classe C
p1
(R
n
)
telles que
1. x(0) = x

et (0) =

;
2. si est assez petit, x() satisfait aux conditions susantes de second ordre pour le
problme pnalis min f(x) +

m
i=1
g
i
(x)
2
2
, o x() et () sont solutions du systme
dquations
f(x) + g(x) = 0
g(x)
t
= 0.
Preuve Lexistence de trajectoires direntiables est assure par le thorme des fonctions
implicites puisque la matrice Jacobienne (x, ) se rapproche dune matrice inversible.
182 CHAPITRE 5. OPTIMISATION AVEC CONTRAINTES DGALIT
Pour montrer que les points x() sont des minima locaux des sous-problmes pnaliss,
il sut de montrer que les matrices hessiennes des objectifs pnaliss sont dnies positives
proche de x

. En eet, les points x() sont des points stationnaires pour les problmes pnali-
ss puisquils sont solutions du systme transform quivalent leurs conditions doptimalit.
Pour montrer que les x() sont des minima locaux de p(x, ), considrons une suite
quelconque
k
0 et procdons par contradiction en supposant que les matrices H(x(
k
),
k
)
possdent toutes une valeur propre ngative. Soient v
k
une suite de vecteurs tels que
v
t
k
H(x(
k
),
k
)v
k
< 0.
Les deux premiers termes dans lexpression de H(x, ) sapprochent du hessien en x du
Lagrangien, donc dune matrice borne. Le dernier terme diverge (vers +) moins que
g(x(
k
))v
k
sapproche de zro assez vite. Donc, le seul moyen de rendre ventuellement
v
t
k
H(x(
k
),
k
)v
k
ngatif est que v
k
sapproche du plan tangent, et lhypothse que x

satisfait
aux conditions susantes assure alors que
v
t
k
_

2
f(x(
k
)) +
g(x(
k
))
t

k
g(x(
k
)
_
v
k
sapproche dune quantit positive, ce qui tablit la contradiction. 2
Corollaire 5.3.1 Sous les hypothses du thorme 5.3.3,
1. x() x

O() ;
2. ()

O() ;
3. g(x()) O().
Exercice 5.3.4 [Direntiabilit des trajectoires] Suite de lexercice 5.3.1 Vriez que
chaque valeur de
k
, les solutions x et les () du tableau de lexercice 5.3.1 satisfont aux
bornes du corollaire.
Exercice 5.3.5 [Trajectoires] Considrez le problme
min
1
2
(x
2
1
+ x
2
2
+ x
2
3
)
sujet x
1
+ x
2
+ x
3
= 1
Obtenez les expressions explicites pour les fonctions x() et () et vriez que x() satis-
fait aux conditions susantes pour le formulation pnalise suivante ; dduisez-en aussi la
solution x

et le multiplicateur

.
min
1
2
(x
2
1
+ x
2
2
+ x
2
3
) +
1
2
(1 (x
1
+ x
2
+ x
3
))
2
.
5.4. LINARISATION DES CONDITIONS DOPTIMALIT 183
Exercice 5.3.6 [Trajectoires direntiables] Considrez le programme
min x
1
x
2
s. 1 x
2
1
x
2
2
= 0
a) Vriez que la solution x() de min f(x) +
1
2
g(x)
2
satisfait x
1
= x
2
, et 2x
3
1
x
1

/2 = 0.
b) Vriez que prs de = 0, x
1
() =
1
2

2 + a + O(
2
). Que vaut a ?
c) Fournissez la solution x

ainsi que le multiplicateur associ

.
d) Vriez que
1x
1
()
2
x
2
()
2

approche

la mme vitesse que sapproche de 0.


5.4 Linarisation des conditions doptimalit
Revenons aux conditions doptimalit (5.9)
(x, ) =
_
f(x) + g(x)
g(x)
_
= 0. (5.4)
Pour une valeur donne de , on peut appliquer la mthode de Newton pour dterminer une
solution en x de ces quations, et puisque

x
(x, ) =
_

2
f(x) +
2
g(x)
g(x)
_
, (5.5)
on retrouve comme quation linarise

x
(x, )d + (x, ) = 0 (5.6)
qui se ramnent
(
2
f(x) +
2
g(x))d +f(x) + g(x) = 0
g(x)d + g(x) = 0
, (5.7)
qui constituent, en utilisant Q = (
2
f(x) +
2
g(x)), c = f, les conditions doptimalit
de
min
xdinR
n
q(d) =
1
2
d
t
Qd + cd
sujet `a g(x)d + g(x) = 0.
(5.8)
Ceci inspire les mthodes SQP, consistant en la solution de sous-problmes quadratiques 5.8.
Les multiplicateurs de Lagrange du sous-problme quadratique servent de pour la prochaine
itration.
184 CHAPITRE 5. OPTIMISATION AVEC CONTRAINTES DGALIT
5.5 Implantation de la pnalisation
5.5.1 limination du mauvais conditionnement
Broyden&Attia [3, 4], et Gould [18] ont propos des techniques qui nous montrent que le
problme du mauvais conditionnement des mthodes de pnalisation est seulement apparent,
et peut tre limin par une transformation adquate des quations mises en jeu. Gould a
propos une transformation qui utilise les variables , nommes aussi bien multiplicateurs
de Lagrange que variables duales pour le problme (5.1). Broyden et Attia ont propos une
technique similaire, mais qui ne fait pas intervenir les variables .
Mthode primale-duale bien conditionne
Revenons aux quations
f(x) + g(x) = 0
g(x)
t
= 0.
Puisque nous avons dduit le problme de minimisation pnalis de ces quations en substi-
tuant dans la premire quation une formule pour tire de la seconde quation, ces deux
quations sont quivalentes. Or, le Jacobien de lquation primale-duale (celle qui utilise les
variables ) est donn par la formule
(x, ) =
_

2
f(x) +
2
g(x) g(x)
t
g(x) I
mm
_
,
qui converge vers la matrice (lorsque 0 et x x

)
_

2
f(x

) +

2
g(x

) g(x

)
t
g(x

) 0
_
,
qui est une matrice inversible, comme le stipule le lemme suivant.
Lemme 5.5.1 Si x

est un point rgulier des contraintes, minimum local du programme (5.1)


satisfaisant aux conditions susantes de second ordre, alors la matrice
_

2
f(x

) +

2
g(x

) g(x

)
t
g(x

) 0
_
,
est inversible.
*Exercice 5.5.1 [Inversibilit de
2
L(x

)] Dmontrez le lemme 5.5.1. Utilisez le fait


quune matrice M est inversible condition que la seule solution v au systme Mv = 0 soit
v = 0. Sparez v selon les deux blocs dquations, et utilisez le fait que la matrice g(x

)
est de plein rang.
5.5. IMPLANTATION DE LA PNALISATION 185
Supposons maintenant que nous rsolvions les sous-problmes pnaliss laide de la
mthode de Newton. Alors, la solution dune quation linaire de Newton pour un problme
pnalis serait, pour d
N
la direction de Newton,
H(x, )d
N
= P(x, )
_

2
f(x) +
g(x)
t


2
g(x) +
g(x)
t
g(x)

_
d
N
=
_
f(x) +
g(x)
t

g(x)
_
,
et ce dernier calcul est de plus en plus mal conditionn lorsque sapproche de zro. Cepen-
dant, d
N
satisfait galement aux quations suivantes :
_

2
f(x) +
2
g(x) g(x)
t
g(x)
__
d
N

N
_
=
_
(f(x) +
g(x)
t

g(x))
0
_
.
Puisque la matrice de ce dernier systme sapproche dune matrice inversible, aucun mauvais
conditionnement ne peut tre imput la mthode de pnalisation ainsi modie.
Mthode primale bien conditionne
Reprenons lquation du hessien de la pnalisation
H(x, ) =
2
f(x) +
g(x)
t


2
g(x) +
g(x)
t
g(x)

,
et observons que le mauvais conditionnement na lieu que dans les sous-espaces image de
la matrice g. Puisque cette matrice est suppose de plein rang, il existe une matrice Q
x
orthogonale telle que
Q
x
g(x)
t
=
_
U
0
_
,
avec U une matrice triangulaire suprieure. Par consquent,
Q
x
_

2
f(x) +
g(x)
t


2
g(x) +
g(x)
t
g(x)

_
Q
t
x
se rcrit
Q
x
_

2
f(x) +
g(x)


2
g(x)
_
Q
t
x
+
1

_
U
0
__
U
0
_
t
.
En dnotant par G = Q
x
_

2
f(x) +
g(x)


2
g(x)
_
Q
t
x
, on retrouve
G +
_
UU
t

0
0 0
_
=
_
G
11
+
UU
t

G
12
G
21
G
22
_
.
186 CHAPITRE 5. OPTIMISATION AVEC CONTRAINTES DGALIT
Le mauvais conditionnement est ainsi enlev en multipliant le premier groupe dquations
par :
_
G
11
+ UU
t
G
12
G
21
G
22
_
,
qui converge vers la matrice inversible
_
U

U
t
0
G

21
G

22
_
.
Lemme 5.5.2 Si x

est un point rgulier des contraintes, minimum local du programme (5.1)


satisfaisant aux conditions susantes de second ordre, alors la matrice
M =
_
U

U
t
0
G

21
G

22
_
est inversible.
*Exercice 5.5.2 [Inversibilit de la matrice M] Dmontrez le lemme 5.5.2.
Si ces transformations sont utilises pour calculer la direction de Newton, on retrouve les
relations
_
G
11
+
UU
t

G
12
G
21
G
22
_

d
N
= Q
x
_
f(x(
k
)) +
g(x(
k
))
t

k
g(x(
k
))
_
,
ou encore, en multipliant le premier bloc par
k
,
_
G
11
+ UU
t
G
12
G
21
G
22
_

d
N
=
_

2
_
,
o la vritable direction de Newton satisfait Q
x
d
N
=

d
N
et o le vecteur
= Q
x
_
f(x(
k
)) +
g(x(
k
))
t

k
g(x(
k
))
_
.
5.5.2 Convergence locale superlinaire de la pnalisation
Nous avons propos deux transformations pour lesquelles les matrices jacobiennes des
quations dnissant les conditions doptimalit des problmes pnaliss se rapprochent de
matrices inversibles. Nous exploitons dans cette section des formulations pour dnir une
fonction x() qui sera direntiable en = 0, une technique dextrapolation pour suivre
la trajectoire x() numriquement, et une analyse de la vitesse de convergence locale du
processus dextrapolation.
5.5. IMPLANTATION DE LA PNALISATION 187
Extrapolation sur la trajectoire
Dans cette section, nous exploitons les rsultats dexistence de trajectoires direntiables
pour construire une stratgie dextrapolation an de suivre les trajectoires. Nous proposons
dabord une stratgie simple utilisant un dveloppement de Taylor dordre un, puis explorons
plus tard les gnralisations qui simposent si les sous-problmes pnaliss ne sont rsolus
quapproximativement.
tude de lextrapolation Dnotons par x

() le vecteur drive de la trajectoire x().


Par les rsultats prsents plus haut, x

(0) existe, tout comme x

(), > 0 si est assez petit.


Supposons que nous connaissions x(
k
) ; nous pouvons estimer x(
k+1
) par une extrapolation
dordre un :
x(
k+1
)
def
= x(
k
) + x

(
k
)(
k+1

k
) x(
k+1
) +O((
k+1

k
)
2
).
Puisque
k
est une suite dcroissante, on dduit que x(
k+1
) est un estim dordre O(
2
k
) de
x(
k+1
).
Examinons maintenant lexpression de x

(). En dnotant comme avant P(x, ) = 0 les


conditions doptimalit dun sous-problme pnalis, on retrouve

x
Px

P = 0,
ce qui se simplie, compte tenu que P(x, ) = f(x) +

m
i=1
g
i
(x)

g
i
(x)
_

2
f(x) +
g(x)


2
g(x) +
g(x)
t
g(x)

_
x

g
i
(x)

2
g
i
(x) = 0,
ce qui nous donne que x

() satisfait lquation
H(x, )x

() =
m

i=1
g
i
(x)

2
g
i
(x).
Ce vecteur de drives de x sobtient donc en rsolvant un systme dquations dont la
matrice est la mme que celle dnissant la direction de Newton.
Cette dernire observation nous conduit interprter litration de Newton comme une
technique dextrapolation. Revenons momentanment au contexte o lon calcule les racines
dune application F(x) = 0, et o F(x

) est une matrice inversible. Supposons que lon


connaisse un point x
k
, proche de x

, pour lequel F(x


k
) =
k
est proche de zro. Exprimons
x(
k
) x
k
, et utilisons le thorme des fonctions implicites pour estimer la racine x(0) par
x(0) = x(
k
) + x

(
k
)(0
k
). Attention la notation, garde similaire lextrapolation
selon le paramtre
k
, mais qui cache que
k
est un vecteur de paramtres, et donc x

est
une matrice des drives des composantes de x par rapport aux composantes de . Cette
188 CHAPITRE 5. OPTIMISATION AVEC CONTRAINTES DGALIT
matrice est justement la matrice H
1
, et lextrapolation linaire de
k
zro est justement
litration de Newton.
Enn, considrons le systme
P(x, , ) = f(x) +
m

i=1
g
i
(x)

g
i
(x) + = 0.
Nous pouvons exprimer deux variantes dextrapolation :
litration de Newton pour les sous-problmes pnaliss constitue une extrapolation
selon le vecteur de paramtres ,
lextrapolation selon le paramtre , qui a t dduite pour un systme o 0,
constitue une extrapolation pour une valeur de xe.
Nous analysons dans la section suivante une stratgie mixte o des itrations de Newton pour
une valeur de xe sont utilises pour dcrotre de telle sorte que lon ait , et
ensuite une extrapolation combine en et est calcule. Nous dnoterons donc les itrations
par la fonction x(, ). La notation prcdente x() correspond au cas particulier x(, 0).
Lextrapolation est utilise pour estimer le point x(
k+1
, 0) solution du problme
P(x,
k+1
, 0) = 0.
Cet estim, not x
k+1
est utilis comme point de dpart de litration de Newton qui tente
de rduire
k+1
, cette fois.
Un algorithme superlinairement convergent
Comme nous venons de le voir, nous analysons maintenant un algorithme itratif qui
eectue parfois des extrapolations par rapport aux paramtres (mthode de Newton pour
x), et parfois des extrapolations mixtes par rapport aux paramtres et (extrapolations
pour trouver un point de dpart pour les itrations de Newton pour la prochaine valeur
de ). Il sagit donc dune mthode prdicteur-correcteur o lextrapolation constitue une
prdiction de x
k+1
alors que les itrations de Newton c Dans ce royaume de problmes sous
contraintes non-linaires, il nexiste actuellement aucun algorithme dnitivement suprieur.
Concentons-nous donc dexposer au mieux les approches existantes.
5.5.3 Perturbations des conditions doptimalit
Contentons-nous pour linstant de produire un algorithme qui calcule des points station-
naires pour le programme (5.1), cest--dire des points qui satisfont aux conditions dopti-
malit de premier ordre : il existe un vecteur

R
m
tel que
f(x

) +

g(x

) = 0
g(x

) = 0.
(5.9)
5.5. IMPLANTATION DE LA PNALISATION 189
Solution des conditions de premier ordre
Une approche directe consiste bien sr tenter de rsoudre le systme dquations (5.9).
Par exemple, on pourrait utiliser la mthode de Newton, et esprer obtenir des rsultats de
convergence locale quadratique. Cependant, comme nous lavons dj discut, le voisinage
dans lequel la mthode de Newton converge est souvent assez petit. Cette constatation a
motiv le dveloppement dune famille dalgorithmes de descente et les modications de
lalgorithme de Newton. Pour loptimisation sans contrainte, la modication sappuie sur le
fait que la fonction objectif dcrot dune itration lautre (algorithme de descente). Une
telle fonction, dans un contexte plus gnral, est nomme fonction de mrite.
Bien quil soit possible de construire des fonctions de mrite pour le problme (5.9),
souvent ces fonctions de mrite ne sont pas direntiables, et nous en reportons ltude
plus tard, lorsque nous aborderons loptimisation de fonctions non-direntiables.
Perturbation des conditions doptimalit
Dans lquation (5.9), remplaons le 0 de la seconde quation par lapproximation , o
est un paramtre que nous laissorrigent et amliorent cet estim.
Thorme 5.5.1 Soit x

un point rgulier des contraintes g(x) = 0 satisfaisant aux condi-


tions susantes de second ordre pour le programme (5.1). Si les fonctions f et g sont de classe
C
p
(R
n
), alors, il existe des trajectoires direntiables x(, ) et (, ) de classe C
p1
(R
n
)
telles que
1. x(0, 0) = x

et (0, 0) =

;
2. si et sont assez petits, x(, 0) satisfait aux conditions susantes de second ordre
pour le problme pnalis min f(x) +

m
i=1
g
i
(x)
2
2
, o x(, ), (, ) sont solutions du
systme dquations
f(x) + g(x) =
g(x)
t
= 0.
De plus, les bornes suivantes sont satisfaites :
(a) x(, ) x

O(max(, )) ;
(b) (, )

O(max(, )) ;
(c) g(x(, )) O().
*Exercice 5.5.3 [Preuve du thorme 5.5.1] Dmontrez le thorme 5.5.1.
190 CHAPITRE 5. OPTIMISATION AVEC CONTRAINTES DGALIT
Nous tudions ici la vitesse de convergence locale que nous pouvons atteindre par ce
processus. En fait, nous dmontrons que si la suite {
k
} est telle quil existe un certain
R tel que

2
k

k+1
< R, k, alors, une seule itration de Newton partir de x
k+1
fournit une
approximation de x(
k+1
, 0) si bonne que la valeur de <
k+1
. La convergence est donc
presque quadratique, et nous devons (asymptotiquement) rsoudre seulement deux sous-
problmes linaires pour chaque valeur de
k
.
Dbutons en crivant la formule de x
k+1
:
x
k+1
def
= x(
k
,
k
) +
x

(
k
,
k
)(
k+1

k
) +
x

(
k
,
k
)(0
k
).
Puisque x(, ) est de classe C
2
, on a
x
k+1
x(
k+1
, 0) O
_
(
k+1

k
)
2
,
k

2
_
.
partir du dernier terme, on voit que rien ne sert dexiger que
k
<
k
, du moins pour
la qualit de x
k+1
. Lorsque
k+1
<
k
et
k
<
k
, on a
x
k+1
x(
k+1
, 0) O(
2
k
).
Analyse asymptotique Le lemme suivant constitue une tape importante dans notre
analyse.
Lemme 5.5.3 Sous les mmes hypothses que le thorme 5.5.1, si f et g sont des fonctions
de classe C
2
(R
n
), alors P( x
k+1
,
k+1
) O(

2
k

k+1
) et la direction de Newton d
N
calcule au
point x
k+1
satisfait la borne d
N
O(
2
k
).
Preuve En utilisant les dveloppements de la mthode primale pour enlever le mauvais
conditionnement, crivons d
N
= Q
t
x
k+1

d, o

d est la solution dun systme dquations de la
forme :
M(
k+1
)

d =
_

k+1

2
_
,
avec

=
_

2
_
= Q
x
k+1
P
t
( x
k+1
,
k+1
)
et la matrice M(
k+1
) sapproche de la matrice inversible
_
U

U
t
0
G

21
G

22
_
.
P
t
(x(
k+1
, 0),
k+1
) = 0, et donc, nous avons

= Q
x
k+1
_
P
t
(x(
k+1
, 0),
k+1
) P
t
( x
k+1
,
k+1
)
_
.
5.5. IMPLANTATION DE LA PNALISATION 191
En remplaant P
t
(x(
k+1
, 0),
k+1
) P
t
( x
k+1
,
k+1
) par son expression :

= Q
x
k+1
__
f
t
(x(
k+1
, 0)) f
t
( x
k+1
)
_
+
m

i=1
g
i
(x(
k+1
, 0))

k+1
Q
x
k+1
_
g
t
i
(x(
k+1
, 0)) g
t
i
( x
k+1
)
_
+ Q
x
k+1
_
g
t
( x
k+1
)
_
_
_
_
_
1

k+1
(g
1
(x(
k+1
, 0)) g
1
( x
k+1
))
.
.
.
1

k+1
(g
p
(x(
k+1
, 0)) g
p
( x
k+1
))
_
_
_
_
(5.10)
et puisque x(
k+1
, 0) x
k+1
O(
2
k
), le premier terme du ct droit de lquation (5.10) est
galement O(
2
k
). Le second terme est galement O(
2
k
) puisque
g
i
(x(
k+1
,0))

k+1
sapproche
de
i
qui est born alors que les g
i
sont direntiables (les g
i
sont de classe C
3
), et donc
leur dirences de lordre de
2
k
.
Utilisons maintenant la dcomposition orthogonale
Q
x
k+1
_
g
t
( x
k+1
)
_
=
_

U
0
_
,
pour rcrire le troisime terme de lquation (5.10) comme
_

U
0
_
_
_
_
_
1

k+1
(g
1
(x(
k+1
, 0)) g
1
( x
k+1
))
.
.
.
1

k+1
(g
p
(x(
k+1
, 0)) g
p
( x
k+1
))
_
_
_
_
.
Maintenant, les bornes prcdentes assurent que
1

k+1
|(g
j
(x(
k+1
, 0)) g
j
( x
k+1
))|
1

k+1
O(
2
k
).
Puisque ce bloc dquations est multipli par
k+1
dans les quations modies, nous avons
_

k+1

2
_
O(
2
k
).
Par consquent, d
N
O(
2
k
) car Q
x
k+1
et M(
k+1
) sont des matrices rgulires. 2
Le prochain lemme permettra de dduire la convergence presque quadratique asympto-
tique.
Lemme 5.5.4 Sous les mmes hypothses que le thorme 5.5.1, si f et g sont des fonctions
de classe C
3
(R
n
), soit d
N
la direction de Newton calcule x
k+1
, et x
k+1
= x
k+1
+d
N
. Alors,
P( x
k+1
,
k+1
) O
_

4
k

k+1
_
192 CHAPITRE 5. OPTIMISATION AVEC CONTRAINTES DGALIT
Preuve Dveloppons P en srie de Taylor pour obtenir
P( x
k+1
,
k+1
) = f( x
k+1
) +
g( x
k+1
)

k+1
g( x
k+1
)
+
d
t
N
G

k+1
+
1

k+1
O(d
N

2
),
o G est le Jacobien de P en x
k+1
. Par la dnition de litration de Newton, les trois
premiers termes de cette dernire quation sannulent, laissant seulement
P( x
k+1
,
k+1
)
1

k+1
O(d
N

2
).
Le rsultat suit du lemme 5.5.3. 2
On constate que localement, P( x
k+1
+ d
N
,
k+1
) O(

4
k

k+1
), et donc, pour assurer que
P( x
k+1
+d
N
,
k+1
) <
k+1
, il sut que

4
k

k+1
<
k+1
, ou encore,
k+1
>
2
k
, ainsi quannonc
au dbut de la section.
5.5.4 Convergence globale et localement superlinaire
Pour esprer la convergence globale de lalgorithme, on utilisera une itration de Newton
modie (chapitre 2). De plus, loin de la solution, il est possible que le point extrapol ne soit
pas bon, et on devra parfois dmarrer les itrations de Newton avec la solution approche du
(k 1)
ime
sous-problme. La suite de cette section vrie que asymptotiquement, le point
extrapol est toujours choisi, et que les modications litration de Newton ne sont plus
en vigueur, cest--dire que la direction de Newton est une direction de descente, et le pas
unitaire est admissible dans la direction de Newton (asymptotiquement).
Choix du point extrapol
On retient le point extrapol seulement si la norme du gradient du sous-problme pnalis
y est plus petite qu la solution approche du prcdent sous-problme.
Lemme 5.5.5 Sous les hypothses du thorme 5.5.1, si

= 0, asymptotiquement, le point
extrapol sera toujours utilis.
Preuve Une consquence du lemme 5.5.3 est que
P( x
k+1
,
k+1
) O
_

2
k

k+1
_
qui converge vers zro alors que
P(x(
k
,
k
),
k+1
) = P(x(
k
,
k
),
k
) +

k

k+1

k+1
m

i=1
g
i
(x
k
)

k
g
i
(x
k
)
5.5. IMPLANTATION DE LA PNALISATION 193
Pnalit
{ Donns : x
0
et
0
tels que P(x
0
,
0
) <
0
. }

0
x

x
0
tantque ( > Precision )
{ Extrapolation }
x Calcule_ x (x

, , next())
next()
si (P(x

, ) < P( x, ) ) alors x x

sinon
x x
{ Corrections de Newton }
tantque (P(x, ) > )
d
N
Direction_de_Newton(x, )
Pas_dArmijo(x, d
N
)
x x + d
N
x

x
Algorithme 5.3: Pnalit
ne converge pas vers zro car son premier terme sapproche de zro tandis que son dernier
terme diverge puisque g
i
(x

) sont linairement indpendants par hypothse. Donc, le seul


moyen que
P(x(
k
,
k
),
k+1
)
puisse converger vers zro serait que tous les multiplicateurs de Lagrange soient nuls, possi-
bilit que nous cartons par hypothse. 2
Direction de descente
Dans cette section, nous vrions que la direction de Newton vrie la dnition 2.3.1.
Pour allger la notation, x dnotera x
k+1
, et le paramtre
k
sera omis de la fonction P, de
sorte que, par exemple, P( x + d
N
) constituera une notation abrge de P( x
k+1
+ d
N
,
k+1
)
Lemme 5.5.6 Sous les mmes hypothses que le thorme 5.3.3 et pour des valeurs assez
petites de
k
, il existe deux constantes positives
0
and
1
telles que
P( x)d
N

0

k+1
P( x)d
N

d
N

1
P( x).
194 CHAPITRE 5. OPTIMISATION AVEC CONTRAINTES DGALIT
Preuve La seconde borne dcoule de la preuve du lemme 5.5.3.
Pour driver la premire borne, observons que la preuve du lemme 5.5.3 assure lexistence
dune constante positive telle que
k+1
P( x) d
N
. Par ailleurs,
2
p( x)d
N
= P( x)
t
.
La preuve du thorme 5.3.3 nous assure aussi que
2
p( x) est une matrice dnie positive
lorsque
k+1
devient assez petit. Il existe donc une constante positive telle que d
t
N
P( x) =
d
t
N

2
p( x)d
N
d
N

2
. En combinant les deux dernires bornes, on retrouve
P( x)d
N
d
N

k+1
P( x)d
N
.
La premire borne dans lnonc du thorme dcoule, avec le choix
0
=

. 2
Admissibilit du pas unitaire
Nous montrons dans cette section que le pas unitaire satisfait au critre dArmijo.
Lemme 5.5.7 Sous les mmes hypothses que le thorme 5.3.3 et pour des valeurs assez
petites de
k+1
, pour une constante 0 <
0
<
1
2
, la relation suivante est satisfaite :
p( x
k+1
+ d
N
,
k+1
) p( x
k+1
,
k+1
)
0
P( x
k+1
,
k+1
)d
N
.
Preuve En utilisant la mme notation abrge que dans la section prcdente, on a
p( x + d
N
) p( x)
0
P( x)d
N
.
Exprimons p laide dun dveloppement de Taylor de second ordre :
p( x + d
N
) = p( x) + P( x)d
N
+
1
2
d
t
N
H( x)d
N
,
o x = x + d
N
avec 0 1 de sorte que x x O(
2
k
).
Ensuite, utilisant le fait que H( x)d
N
= P( x)
t
, rexprimons le critre dArmijo comme
(
0

1
2
)d
t
N
H( x)d
N
+
1
2
d
t
N
(H( x) H( x)) d
N
0.
Nous montrons maintenant que mme si d
t
N
H( x)d
N
est petit, d
t
N
(H( x) H( x)) d
N
est en-
core plus petit, et est toujours ngligeable par rapport d
t
N
H( x)d
N
. Pour ce faire, rappelons
lexpression de
2
p.

2
p( x)
def
=
2
f( x)
m

i=1
g
i
( x)

k+1

2
g
i
( x)
+
m

i=1
1

k+1
g
t
i
( x)g
i
( x).
5.5. IMPLANTATION DE LA PNALISATION 195
Exprimons maintenant les dirences de
2
p en utilisant la notation (f)
def
= f( x) f( x) :
(
2
p) =(
2
f) +
m

i=1
_
(g
i
)

k+1

2
g
i
( x)
g
i
( x)

k+1
(
2
g
i
)
_
+
1

k+1
m

i=1
(g
i
g
t
i
).
(5.11)
La suite du raisonnement consiste comparer d
t
N
(H( x) H( x)) d
N
et d
t
N
H( x)d
N
terme
terme. Or, puisque H( x) est une matrice dnie positive (lorsque est assez petit),
d
t
N
H( x)d
N

min
d
N

2
o
min
> 0 est la valeur propre la plus petite de H( x). Par ailleurs,
H( x) H( x) O(

2
k

k+1
), et donc d
t
N
(H( x) H( x)) d
N
O(d
N

2

2
k

k+1
). Donc, le terme
d
t
N
(H( x) H( x)) d
N
devient asymptotiquement ngligeable devant le terme d
t
N
H( x)d
N
, qui
est positif. 2
Convergence globale et localement superlinaire
Pour conclure, nonons un thorme qui rsume les proprits de lalgorithme.
Thorme 5.5.2 Lalgorithme 5.3 est bien dni. Si un point daccumulation de lalgo-
rithme est un point rgulier des contraintes, alors il satisfait aux conditions ncessaires dop-
timalit. De plus, sil sagit dun point satisfaisant aux conditions susantes doptimalit,
alors pour des valeurs de
k
assez petites, on a
1. Une seule itration de Newton (modie avec une recherche linaire dArmijo) depuis
x
k+1
fournit directement x(
k+1
,
k+1
) avec
k

k
2. de plus, si au moins une composante de

est non-nulle, la suite x(


k+1
,
k+1
) converge
superlinairement avec un ordre .
Preuve
1. Lalgorithme est bien dni car pour chaque nouveau sous-problme, il sagit dappli-
quer lalgorithme de Newton modi pour lequel on a dj dmontr la proprit de
convergence globale.
2. Si un point daccumulation est un point rgulier, le thorme 5.3.2 nous assure quil
satisfait aux conditions ncessaires doptimalit.
3. Les lemmes prcdents nous assurent que si le point daccumulation satisfait aux condi-
tions susantes doptimalit et si

= 0, asymptotiquement, le point extrapol est


retenu, la direction de Newton est une direction de descente, le pas unitaire est admis-
sible et une seule itration de Newton fournit x(
k+1
,
k+1
).
4. Si

= 0, il existe au moins une composante non nulle telle que


g
i
(x
k
)

i
= 0. Ceci
nous assure lexistence de constantes positives
1
et
2
telles que
1

k
|g
i
(x
k
)|
2

k
,
et puisque la suite
k
converge vers zro superlinairement avec un ordre limite < 2,
la suite x(
k
,
k
) x

converge galement vers zro avec un ordre limite < 2.


196 CHAPITRE 5. OPTIMISATION AVEC CONTRAINTES DGALIT
2
*Exercice 5.5.4 [Convergence globale] Le thorme 5.3.2 concerne la suite des minima
exacts des sous-problmes pnaliss. Adaptez-en la preuve au cas de minima approchs.
5.6 Lagrangiens et pnalits augments
Sous certaines hypothses (convergence vers un point satisfaisant aux conditions su-
santes doptimalit), on montre la convergence locale de cet algorithme. Cependant, dans
cette forme, lalgorithme nest pas pratique puisque le seuil est inconnu, et de plus il est en
gnral impossible dobtenir x(), mais on doit se contenter dune approximation. Lavantage
de cet algorithme vient du fait que les problmes de mauvais conditionnement associs la
dcroissance de vers 0 sont amoindris.
Pour tenir compte des points faibles mentionns ci-haut, considrons une suite dcrois-
sante
k
comme dans les mthodes de pnalit, mais qui ne tend pas forcment zro.
Considrons galement des solutions approches x(

, , ) qui satisfont la condition


f(x) + g(x) =
g(x) = (

)
t
,
et vrions que ce systme induit des fonctions direntiables x(

, , ) et

(

, , )
def
=

+
g(x(

,,))
t

. En poursuivant cette dmarche, on constatera que les drives partielles de


ces fonctions par rapport et

sannulent en

=

et = 0, et il est plus simple


deectuer lanalyse en eectuant le changement de variable suivant : = (

), o

est le multiplicateur de Lagrange la solution optimale. Alors, en imitant la preuve du


thorme 5.3.3, on dmontre le thorme suivant en vriant que les fonctions x(, , ) et
(, , ) sont direntiables.
Thorme 5.6.1 Soit x

un point rgulier des contraintes satisfaisant aux conditions su-


santes de second ordre pour le programme (5.1). Si f et g sont des fonctions de classe C
p
(R
n
),
alors, il existe des trajectoires direntiables de classe C
p1
(R
n
) x(,

, ) et

(,

, ) telles
que
1. x(0,

, 0) = x

et

(0,

, 0) =

;
2. Si , et

sont assez petits, alors x(,



, 0) satisfait aux conditions susantes
de second ordre pour le problme pnalis f(x) +

g(x) +
g(x)
2
2
, et o x(,

, ) et
5.6. LAGRANGIENS ET PNALITS AUGMENTS 197

(,

, ) sont solutions du systme dquations


f(x) + g(x) =
g(x) = (

)
t
;
de plus, les bornes suivantes sont satisfaites :
(a) g(x(,

, )) O(max(

, )) ;
(b)

(,

, )

O(max(

, )).
*Exercice 5.6.1 [Preuve] Dmontrez le thorme 5.6.1.
Dans la suite, nous utilisons ce thorme pour analyser deux variantes de ces algorithmes
que nous nommons Lagrangien augment et pnalit augmente respectivement. Le Lagran-
gien augment utilise une suite
k
loigne de zro alors que la pnalit augmente utilise
une suite
k
0.
5.6.1 Lagrangiens augments
La notation grand O utilise dans le thorme 5.6.1 peut se rcrire comme suit : il existe
une constante positive M et un voisinage de x

, 0 tels que
g(x(,

, )) max(M

, M)
et

(,

, )

max(M

, M).
De la seconde conditions, on voit que si <
1
M
,

est plus proche de

que

. La convergence
est linaire, et le taux de convergence est M. En particulier, le taux de convergence peut
tre rendu aussi petit que voulu en diminuant . Par ailleurs, la premire relation permet
dvaluer si est assez petit et

assez proche de

pour que la convergence linaire se


manifeste : il sut de comparer g(x) en deux itrations conscutives. En se basant sur
cette constatation, il est possible de combiner lalgorithme de pnalit usuel qui rduit
avec lalgorithme de Lagrangien augment qui modie . Lalgorithme rsultant possdera
la proprit de convergence globale des algorithmes de pnalit et la convergence locale avec
loign de zro des algorithmes de Lagrangiens augments.
198 CHAPITRE 5. OPTIMISATION AVEC CONTRAINTES DGALIT
Aspects de dualit
Considrons la fonction ()
def
= p
a
(x(), , ) o x y est vu comme une fonction du
paramtre et o le paramtre est considr constant. On voit aisment que (

) =
p
a
(x

, ) = p
a
(x

, , ) p
a
(x(), , ) = (), et donc

constitue un maximum de la
fonction . En appliquant le thorme des fonctions implicites, on peut exprimer les drives
de la fonction comme suit : () = g(x()) et

2
(x()) = g(x())
t
H
a
(x, , )
1
g(x()),
o la matrice H
a
est dnie comme suit :
H
a
(x, , ) =
2
f(x) +
_

(
i
+
g
i
(x)

)
2
g
i
(x)
_
+
1

g(x)
t
g(x).
laide de ces expressions, il est possible dexprimer un algorithme dascension pour le
problme max

().
videmment, il semble dicile de mettre en uvre un algorithme utilisant des directions
susamment ascendantes conjointement des pas admissibles. En eet, le calcul dun pas
admissible entranerait lvaluation de la fonction en plusieurs valeurs + d, chacune
des valuations tant eectue par la minimisation en x de p
a
(x, ( +d), ). Cependant, la
structure de la fonction nous fournit une autre possibilit : si est assez petit (mais loign
de zro), et susamment proche de

, un pas unitaire est admissible dans la direction de


Newton d
N
= (
2
)
1
. En dautres termes, on peut envisager dutiliser un algorithme
de pnalit qui rduit tant que la direction de Newton avec un pas unitaire naugmente
pas assez .
De plus, la direction de Newton est relie la direction
g(x)

. On peut montrer que (


2
)
se rapproche de
1

I lorsque diminue. Par consquent, on peut approcher la direction de


Newton par la formule d
N
=
1

g(x()).
En supposant que la matrice H est inversible et la matrice A est de plein rang et en
utilisant la formule de ShermanMorrison, on vrie que
_
H + ASA
t
A
A
t
0
_
1
=
_
H A
A
t
0
_
1

_
0 0
0 S
_
.
Par ailleurs, on peut exprimer
_
H A
A
t
0
_
1
=
_
W T
T
t
U
_
,
o U = (A
t
H
1
A)
1
. Ainsi, en identiant H
2
f(x) +
2
g(x), A g(x) et S
1

I,
lidentit nous fournit
_
g(x)H
A
(x, , )
1
g(x)
t
_
1
=
_
g(x)H(x, )
1
g(x)
t
_
1
+
1

I.
5.6. LAGRANGIENS ET PNALITS AUGMENTS 199
En appliquant la mme identit pour une valeur xe
0
de , on obtient
_
g(x)H
A
(x, , )
1
g(x)
t
_
1
=
_
g(x)H
A
(x, ,
0
)
1
g(x)
t
_
1

0
I +
1

I.
Ainsi, lorsque sapproche de zro, les deux premiers termes du membre de droite de la
dernire quation demeurent constants alors que le troisime terme diverge, indiquant que
(g(x)H
A
(x, , )
1
g(x)
t
)
1
sapproche de
1

I.
On sait que litration de Newton possde la proprit de convergence locale quadratique.
Puisque la formule
+
= +
g(x)
t

approche de mieux en mieux la formule de Newton lorsque


sapproche de zro, on sattend ce que la vitesse de convergence de cette formule devienne
de plus en plus rapide lorsque diminue, ce que conrme le thorme 5.6.1.
5.6.2 Pnalits augmentes
Appliquons maintenant la dmarche du dveloppement des algorithmes de pnalit un
algorithme de pnalit augmente.
Proprit de convergence globale
Les proprits de convergence globale des algorithme de Lagrangien augment purs
sont plus faibles que celles des algorithmes de pnalit. Ceci vient du fait que mme si un
point daccumulation x est tel que g( x) soit une matrice rgulire, il nest pas certain que
g( x) = 0. En eet, si lon dnote x
k
une solution approche du problme (5.3) o

=
k
,
le raisonnement utilis pour lanalyse des mthodes de pnalit conduit la conclusion que

k
+
g(x
k
)
t

k
converge vers un certain

pour lequel f( x) +

g( x) = 0, mais ceci peut tre
ralis mme si g(x
k
) ne converge pas vers zro, et dans ce cas, la suite
k
diverge.
En dautres termes, si la suite
k
nest pas convergente, il est possible que les points
daccumulation x ne soient pas ralisables. En sinspirant de lalgorithme 5.2, on peut pro-
poser un schma qui combine la stratgie de pnalit (diminuer ) avec la stratgie hybride
(diminuer et modier ).
Convergence locale superlinaire
Tout comme pour lanalyse des mthodes de pnalit, nous allons proposer un critre
dapproximation pour et une vitesse de dcroissance zro pour
k
. La dirence est
que nous allons remplacer

chaque nouvelle valeur de
k
.
Sil sagissait dun algorithme de pnalit , on sattendrait ce que lon ait sous la
main un estim

dordre un (en ) de

. Dans ce cas, le thorme 5.6.1 nous informe que


g(x(,

, )) max(
2
, ), et donc que le choix naturel est O(
2
).
Par ailleurs, puisque x(,

, ) x

et

(,

, )

sont tous deux de lordre de


2
,
lutilisation dune extrapolation dordre un (comme pour lalgorithme de pnalit) napporte
200 CHAPITRE 5. OPTIMISATION AVEC CONTRAINTES DGALIT
Pnalit_augmente
{ Donns : 0 < < 1, x
0
,
0
et
0
}

0
x x
0

0
g

g(x)
tantque ( > Precision )
{ Corrections de Newton }
tantque (P
A
(x, , ) >
2
)
d
N
Direction_de_Newton(x, , )
Pas_dArmijo(x, d
N
)
x x + d
N
si (g(x) < g

) alors
+
g(x)
t

next()
g

g(x)
Algorithme 5.4: Pnalit augmente
rien. Cependant, comme nous le verrons, ces estim dordre deux constituent de bons points
de dpart pour litration de Newton du prochain sous-problme.
Analysons maintenant lalgorithme 5.4.
Lemme 5.6.1 Sous les hypothses du thorme 5.6.1, si de plus
k

O(
k
), on a
P
A
(x(
k
,
k
,
k
),

(
k
,
k
,
k
),
k+1
) O(

2
k

k+1
).
*Exercice 5.6.2 [Preuve] Dmontrez le lemme 5.6.1.
Ce dernier lemme nous empche denvisager une suite
k
qui converge vers zro plus
rapidement que quadratiquement. En eet, pour que lalgorithme soit bien dni, il faut
sassurer que P
A
(x(
k
,
k
,
k
),

(
k
,
k
,
k
),
k+1
) demeure borne.
Lemme 5.6.2 Sous les hypothses du lemme 5.6.1, la direction de Newton d
N
calcule au
point x(
k
,
k
,
k
) pour le problme min p
a
(x,

((
k
,
k
,
k
),
k+1
) satisfait la borne d
N

O(
2
k
).
5.6. LAGRANGIENS ET PNALITS AUGMENTS 201
*Exercice 5.6.3 [Preuve] Dmontrez le lemme 5.6.2.
Lemme 5.6.3 Sous les hypothses du lemme 5.6.1, au point x = x(
k
,
k
,
k
) + d
N
, on a
P
A
(x(
k
,
k
,
k
),

(
k
,
k
,
k
),
k+1
) O(

4
k

k+1
).
*Exercice 5.6.4 [Preuve] Dmontrez le lemme 5.6.3.
Donc, localement, une seule itration de Newton fournit le point dsir condition que

4
k

3
k+1
< , et condition que lalgorithme de Newton modi soit bien dni et que le pas
unitaire soit admissible. Ces deux proprits font lobjet des deux prochains lemmes.
Lemme 5.6.4 Sous les hypothses du lemme 5.6.1 et pour des valeurs assez petites de
k
,
il existe deux constantes positives
0
and
1
telles que au point x dni au lemme 5.6.3, on
ait
P
A
( x)d
N

0

k
P
A
( x)d
N

d
N

1
P
A
( x).
*Exercice 5.6.5 [Preuve] Dmontrez le lemme 5.6.4.
Lemme 5.6.5 Sous les hypothses du lemme 5.6.4, pour une constante 0 <
0
<
1
2
, la
relation suivante est satisfaite :
p
a
( x + d
N
,

(
k
,
k
,
k
),
k+1
) p
a
( x,

(
k
,
k
,
k
),
k+1
)
0
P
A
( x,

(
k
,
k
,
k
),
k+1
)d
N
.
*Exercice 5.6.6 [Preuve] Dmontrez le lemme 5.6.5.
202 CHAPITRE 5. OPTIMISATION AVEC CONTRAINTES DGALIT
On peut rsumer les rsultats de convergence locale.
Thorme 5.6.2 Sous les hypothses du lemme 5.6.4, une seule itration de Newton est
requise pour chaque sous-problme condition que

4
k

3
k+1
0. Si

8
k

5
k+1
0, deux itrations de
Newton sont requises, donnant ainsi une convergence quasi-quadratique en deux tapes.
Puisquune convergence quadratique en deux tapes correspond, dans un certain sens,
une convergence dordre

2 par tape, on voit que le comportement asymptotique de la
pnalit augmente namliore pas le comportement asymptotique de lalgorithme de pnalit
qui utilise une extrapolation.
5.7 Fonctions de pnalit exacte
Lalgorithme de pnalit quadratique produit une suite x(
k
) qui converge vers x

lorsque

k
sapproche de zro. Une des pistes pour viter le mauvais conditionnement caus par la
convergence zro de
k
est dutiliser dautres fonctions de pnalits pour lesquelles une
valeur strictement positive de
k
permet de dnir un sous-problme dont la solution est la
mme que celle du programme (5.1).
Deux familles de telles fonctions ont t proposes : des fonctions de pnalits non-
direntiables qui utilisent g(x) plutt que g(x)
2
, et des fonctions de pnalits diren-
tiables, qui sont inspires des mthodes de Lagrangiens augments, mais qui explicitent le
fait que est une fonction de x et de .
Les fonctions de pnalit non-direntiables sont plus facilement analyses en utilisant
les notions de sous-direntiel, que nous introduirons plus tard. Les fonctions de pnalit
direntiables, quant elles, sont en fait des mthodes duales, et seront traits en plus grand
dtail ailleurs.
5.8 Rsum
Nous avons dduit dobservations lmentaires des conditions doptimalit pour les pro-
blmes direntiables : f(x

) doit tre orthogonal au plan tangent aux contraintes en


x

, ce qui, en autant que x

soit un point rgulier des contraintes, est quivalent ce que


f(x

) soit orthogonal au noyau de la matrice g(x

), dont les colonnes de la matrice Z

forment une base. Ainsi, f(x

)Z

= 0. De plus, le hessien rduit du Lagrangien doit tre


(semi-)dni positif.
Lide naturelle de rsoudre les quations issues des conditions doptimalit du premier
ordre (quations de Lagrange) laide de la mthode de Newton conduit une convergence
locale uniquement. Certaines fonctions de mrite peuvent tre utilises pour procurer cette
approche la proprit de convergence globale, mais puisquil sagit souvent de fonctions non-
direntiables, ltude de cette approche est reporte plus tard.
5.9. EXTENSIONS ET RFRENCES 203
Nous avons dduit lalgorithme de pnalit par le biais dune perturbation des quations
de Lagrange, et avons prsent ses proprits de convergence globale et de convergence locale
superlinaire. De plus, nous avons prsent deux techniques pour contourner le problme
du mauvais conditionnement (qui constitue lobjection habituelle face aux algorithmes de
pnalit). Il en rsulte un algorithme robuste et ecace.
Lalgorithme du Lagrangien augment a t prsent sous langle dun algorithme de
pnalit augment dun terme de Lagrangien. Un attrait important de cet algorithme vient
du fait quil nest plus ncessaire que le paramtre de pnalit sapproche de zro. Cependant,
compte tenu des techniques nouvelles permettant de contourner le problme du mauvais
conditionnement, cette caractristique est moins importante. Lalgorithme du Lagrangien
augment est moins attrayant car sa convergence globale est dicile tablir.
5.9 Extensions et rfrences
La notion de qualication des contraintes a suscit beaucoup dintrt, dans le but daf-
faiblir lexigence que x

soit un point rgulier. Cependant, pour lanalyse dalgorithmes, cette


condition demeure la plus utile. Lanalyse des conditions doptimalit est inspire de celle de
Luenberger.
Lalgorithme de pnalit quadratique semble avoir t propos pour la premire fois par
Courant[6]. Fiacco&McCormick[13] ont pouss lanalyse de diverses mthodes de pnalits
dans leur livre fameux. Llimination du mauvais conditionnement est rcente, cependant,
et de Broyden&Attia[3, 4] et Gould[18]. Ce dernier [19] a publi une analyse de la
pnalisation quadratique dont les rsultats sont semblables ceux de la section 2.5, mais
dont les preuves et lemmes intermdiaires sont dirents, et plus complexes. Dussault[12]
a analys une famille abstraite dalgorithmes de pnalits, dont la pnalit quadratique est
un cas particulier. De plus, comme il le souligne, le calcul de
g
i
(x())

conduit, en gnral
des erreurs numriques causes aux cancellations ventuelles (et souvent invitables) dans
le calcul de g. Il propose donc dutiliser dautres estims des multiplicateurs de Lagrange .
Les estimateurs des multiplicateurs de Lagrange ont t assez peu tudis, mais les travaux
de Gill, Murray et leurs collaborateurs sur ce sujet, en plus dtre sans concurrence relle,
sont excellents.
Les techniques de Lagrangien augment ont t proposes par Hestenes [20] et Powell [29],
et analyses en profondeur par Bertsekas[2] et aussi par Rockafellar[30, 31].
204 CHAPITRE 5. OPTIMISATION AVEC CONTRAINTES DGALIT
Chapitre 6
Optimisation direntiable avec
contraintes dingalit
Sujets du chapitre
Analyse des conditions doptimalit (quations ou inquations satisfaites pour toute solu-
tion du problme doptimisation).
Hypothses sur les contraintes.
Dduction dune famille dalgorithmes itratifs globalement convergents partir de la
violation des conditions doptimalit.
Prsentation dalgorithmes de pnalits simples et augmentes.
205
206 CHAPITRE 6. OPTIMISATION AVEC CONTRAINTES DINGALIT
Introduction
Les problmes doptimisation direntiable avec contraintes dingalit galement di-
rentiables constituent un sujet moderne en ce quil ncessite des outils danalyse dinquations
par opposition aux outils danalyse dquations utiliss jusqu maintenant. En fait, dans une
mesure limite, la programmation linaire et loptimisation avec contraintes dingalits li-
naires constituent galement des sujets modernes, mais nous avons pu les traiter avec des
outils simples dalgbre linaire.
Dans ce chapitre, nous restreignons les problmes que nous traitons ne comporter que
des contraintes dingalits, et supposons que les gradients des contraintes satisfaites avec
galits (contraintes actives) sont linairement indpendants. Ainsi, lanalyse du chapitre
prcdents est facile adapter, et nous pouvons aborder rapidement la dduction et ltude
dalgorithmes de rsolution. Au prochain chapitre, nous reprendrons ltude fondamentale
de problmes avec contraintes gnrales.
Comme au chapitre prcdent, nous utilisons le concept de DED pour identier des
quations satisfaire (conditions doptimalit) pour les solutions locales du problme
min
xR
n
f(x)
sujet `a g(x) 0,
(6.1)
o g : R
n
R
m
. g est un vecteur colonne de fonctions. Les fonctions f et g sont diren-
tiables, et en gnral, supposes de classe C
3
(R
n
).
Ensuite, en perturbant les conditions doptimalit retenues, nous dduirons des algo-
rithmes de pnalit.
6.1 Conditions doptimalit
Avant dintroduire les conditions doptimalit, revenons sur la notion de direction rali-
sable. Soit x tel que g(x) 0. Considrons une suite y
k
, avec g(y
k
) 0 telle que y
k
x.
Considrons maintenant les vecteurs d
k
=
y
k
x
y
k
x
. Tout point daccumulation de la suite d
k
est nomm direction ralisable en x pour les contraintes g. Ces directions, en fait, consti-
tuent le cne tangent aux contraintes en x. Dans ce chapitre, puisque nous supposons que
les gradients des contraintes actives sont linairement indpendants, on peut exprimer sans
dicult le cne tangent laide des linarisations des contraintes.
6.1.1 Conditions de premier ordre
Comme prcdemment, pour obtenir des conditions doptimalit de premier ordre en
un point x

, nous devons nous assurer quaucune direction ralisable en x

nappartient
au DED(x

). Le DED(x

) est bien dni comme {d : f(x

)d < 0}, et donc lobtention


6.1. CONDITIONS DOPTIMALIT 207
de conditions doptimalit (du premier ordre) passe par une caractrisation des directions
ralisables.
Directions ralisables : cne tangent aux contraintes
Soit une suite d
k
=
y
k
x
y
k
x
convergeant vers la direction ralisable

d en un point x. Alors,
on a que pour chacune des composantes g
i
de lapplication g, le dveloppement de Taylor
limit nous donne
0 g
i
(y
k
) = g
i
(x) +
k
g
i
(x)d
k
+O(
k
),
o
k
= y
k
x. Puisque g
i
(y
k
) 0 et g
i
(x) 0 il est commode de distinguer deux cas :
1. g
i
(x) < 0 : dans ce cas, quelle que soit la suite y
k
convergeant vers x, ventuellement
on aura que g
i
(y
k
) < 0, et donc aucune analyse additionnelle nest requise.
2. g
i
(x) = 0 : dans lexpression de g
i
(y
k
), il ne reste que
0 g
i
(y
k
) = g
i
(x)d
k
O(
2
k
),
et en passant la limite,
g
i
(x)

d 0.
Donc, pour toutes les composantes i de lapplication g telles que g
i
(x) = 0, ce qui scrit
g
I
(x)

d 0,
o g
I
reprsente le Jacobien de lapplication g
I
, cest--dire une matrice dont les lignes
sont g
i
(x), i I

. Donc, toute direction ralisable d en x satisfait la relation g


I
(x)d 0.
Comme au chapitre prcdent, introduisons une hypothse de qualication des contraintes
g. Cette hypothse stipule que x

est un point rgulier du systme g


I
(x) = 0, cest--dire, la
matrice g
I
(x

) est une matrice de plein rang-lignes, |I

| n. Cette hypothse permet de


montrer que toute direction satisfaisant g
I
(x)d 0 est une direction ralisable, compltant
ainsi la caractrisation des directions ralisables. Remarquons que cette qualication dpends
des fonctions g et non pas de lensemble des points ralisables, qui pourrait tre exprim
laide dautres contraintes. Nous approfondirons ltude des qualications des contraintes
dans un contexte plus gnral au prochain chapitre.
Thorme 6.1.1 Soit x

un point rgulier des contraintes g(x

) 0, cest--dire que la
matrice g
I
(x

) est une matrice de plein rang. Alors, d est une direction ralisable en x

si
et seulement si g
I
(x

)d 0.
*Exercice 6.1.1 [Preuve] Imitez la preuve du thorme 5.1.1 pour dmontrer le tho-
rme 6.1.1.
208 CHAPITRE 6. OPTIMISATION AVEC CONTRAINTES DINGALIT
On voit donc que les directions ralisables concident avec les directions ralisables des
contraintes linaires 0 L(y) = g(x) + g
I
(x)y. Par consquent, nous pouvons appliquer
les dveloppements du chapitre 4 pour obtenir des conditions doptimalit.
Condition du premier ordre
Thorme 6.1.2 Soit x

un minimum local de la fonction f sous les contraintes g(x) 0


tel que g
I
(x

) est une matrice de plein rang-ligne ; alors, il existe un vecteur 0


R
m
tel que f(x

) +
t
g(x

) = 0 et

i
g
i
(x

) = 0 ; ceci est quivalent la condition


Z
t
f(x

) = 0, o les colonnes de Z

forment une base du noyau de la matrice g


I
(x

).
Exercice 6.1.2 [Points stationnaires] Considrez le problme
min f(x) =
1
2
(x
1
1)
2
x
1
x
2
sujet x
1
x
2
2
x
2
1
+ x
2
2
1
a) Trouvez tous les points qui rendent les 2 contraintes actives ; un de ces points ( 3
dcimales de prcision) est x = (0.618, 0.786)
t
.
b) Avec 3 dcimales de prcision, trouvez les valeurs du paramtre (pas forcment
positif) pour lesquelles x est un point stationnaire.
6.1.2 Conditions de second ordre
Nous venons de voir que les conditions de premier ordre expriment le fait que les directions
ralisables, donc appartenant au cne tangent aux contraintes g(x) 0, ne sont pas des
directions de descente stricte.
Thorme 6.1.3 Si x

, point rgulier des contraintes g(x) 0, est un minimum local


du programme (6.1), alors il existe un vecteur 0

R
m
tel que
x
L(x

) = 0,

L(x

)
t

= 0 et de plus d
t

2
xx
L(x

)d 0 pour tout d tel que g


I
(x

)d = 0. Par
ailleurs, sil existe un vecteur 0

R
m
tel que
x
L(x

) = 0,

L(x

)
t

= 0,
et de plus d
t

2
xx
L(x

)d > 0 pour tout d = 0 tel que g


I

(x

)d 0, alors x

est un
minimum local pour le programme (6.1).
6.1. CONDITIONS DOPTIMALIT 209
Remarquons que lhypothse de qualication des contraintes nest requise que pour les
conditions ncessaires, cest--dire pour dmontrer lexistence de multiplicateurs

.
Exercice 6.1.3 [Conditions doptimalit (suite de lexercice 4.3.12, page 147)] Soient les
trois fonctions suivantes :
f
1
(x) =
1
2
((x
1
3)
2
+ (x
2
+ 1)
2
) ;
f
2
(x) =
1
2
((x
1
+ 1)
2
+ (x
2
1)
2
) ;
f
3
(x) =
1
2
((x
1
+ 1)
2
+ x
2
2
).
Considrez les (trois) contraintes
x
1
0,
x
2
0,
x
2
1
+ x
2
2
1
dnissant lensemble ralisable E, et le point candidat x = (1, 0)
t
E.
a) Pour chacune des fonctions, vriez que le point candidat est un point stationnaire,
et donnez les valeurs des multiplicateurs de Lagrange
1
,
2
et
3
.
b) Pour chacune des fonctions, dterminez si le point stationnaire est un minimum local,
maximum local ou ni lun ni lautre.
6.1.3 Une analyse base sur les pnalits
Il est remarquable que lon puisse dduire les conditions doptimalit ncessaires partir
des fonctions de pnalit introduites au chapitre prcdent. De plus, la preuve simple qui
suit ne suppose pas la condition dindpendance linaire des contraintes actives, mais plutt
une condition de rgularit beaucoup plus faible, en fait, la condition la plus faible assurant
que lensemble des multiplicateurs de Lagrange est non-vide et born.
Considrons le problme gnral sous la forme suivante :
min
xR
n
f(x) (6.2)
sujet ` a g(x) 0, (6.3)
h(x) = 0. (6.4)
210 CHAPITRE 6. OPTIMISATION AVEC CONTRAINTES DINGALIT
Thorme 6.1.4 Soit un minimum local x

pour lequel la condition de rgularit suivante


est satisfaite :
_

_
g(x

) + h(x

) = 0
g(x

) = 0
0
_

_
=
_
= 0
= 0
_
.
Alors, il existe des vecteurs

0 et

tels que
f(x

) +

g
I
(x

) +

h(x

) = 0.
Preuve Tout dabord, on peut rcrire les contraintes g(x) 0 laide de loprateur de
partie positive g
+
i
(x) = max(g
i
(x), 0) et son extension vectorielle comme g
+
(x) = 0. On peut
donc exprimer les contraintes laide de la fonction

h(x) =
_
g
+
(x)
h(x)
_
= 0.
Puisque x

est un optimum local, alors il existe un voisinage V de x

, que lon peut


prendre convexe, tel que f(x) f(x

)x C V . En remplaant au besoin la fonction


objectif par

f(x) = f(x) +xx

2
, on peut supposer que x

est en fait lunique minimum


global du problme :
min
xV

f(x)
sujet `a

h(x) = 0.
(6.5)
Alors, on peut envisager la pnalisation quadratique telle que vue au chapitre prcdent,
min
xV

k
(x) =

f(x) +
1
2
k

h(x)
2
.
Puisque lon minimise dans V , le minimum de la fonction
k
est toujours atteint. Or, daprs
lexercice 5.3.3, tout point daccumulation de la suite x
k
= x(
k
) est un minimum global
pour le programme 6.5, dont lunique minimum global est x

.
Pour que la preuve soit complte, justions la convergence globale des x
k
en crivant :

k
(x
k
)
k
(x
k+1
)
k+1
(x
k+1
)
k+1
(x
k
),
do lon tire que

f(x
k+1
)

f(x
k
),
k
(x
k
) inf
x:

h(x)=0

k
(x) =

f(x

) ; si
k
0, la dernire
ingalit nous apprend que

h(x
k
) 0. Soit un point daccumulation x, comme

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

), ce qui entrane que x = x

puisque x

est lunique minimum global dans V .


Donc, on a x
k
x

, et si k est assez grand, x


k
int(V ). Puisque x
k
minimise
k
(x), on
doit avoir, lorsque x
k
int(V ), que
k
(x
k
) = 0, donc

f(x
k
) +

h(x
k
)
t

h(x
k
) = 0.
6.1. CONDITIONS DOPTIMALIT 211
Considrons maintenant la suite
k
=

h(x
k
)

k
. Deux cas peuvent se produire : cette suite peut
tre borne, ou non-borne. Si elle est borne, ses points daccumulation satisfont la
condition recherche, et on a

f(x

) +

h(x

) =

f(x

) + (

, )
_
g
+
(x

)
h(x

)
_
= 0.
Si cette suite nest pas borne, considrons la suite borne

k

et un de ses points
daccumulation = 0. On retrouve

f(x
k
)

+

k

h(x
k
) = 0;
Or,
k
diverge, de telle sorte que lon a

h(x

) = (

, )
_
g
+
(x

)
h(x

)
_
= 0,
ce qui contredit la condition de rgularit. 2
La condition de rgularit sexprime comme une gnralisation naturelle de lindpen-
dance linaire des gradients des contraintes actives. En fait, cette condition est quivalente
la condition usuelle de Mangasarian-Fromowitz qui sexprime comme :
(MF) d :
_
h(x

)d = 0
g(x

)d < 0
_
.
Lquivalence des deux conditions est dmontre en considrant le programme linaire
min
d,uR
n
R
u
sujet ` a g(x)d u,
h(x)d = 0,
et son dual,
max
yR
m
0
sujet `a g(x)
t
y
1
+h(x)y
2
= 0,
e
t
y
1
= 1
y
1
0.
Lorsque le dual est ralisable, la rgularit nest pas satisfaite, et la valeur de u dans le primal
est nulle, donc (MF) nest pas satisfaite. Autrement, la rgularit est satisfaite, et le primal
nest pas born infrieurement, donc (MF) est satisfaite.
212 CHAPITRE 6. OPTIMISATION AVEC CONTRAINTES DINGALIT
Corollaire 6.1.1 Soit un minimum local x

pour lequel la condition de rgularit est satis-


faite. Alors, lensemble

= {, : f(x

) + g
I
(x

) + h(x

) = 0}
est non-vide et born.
Exercice 6.1.4 [Optimalit] Considrez le problme suivant ; ATTENTION, cest un
max !
max x
2
1
+ x
2
2
sujet (x
2
b)
2
4ax
1
(0 < b < 4a)
x
2
b
x 0
a) obtenez 2 maxima locaux ; lequel est global ? Une illustration graphique aide consi-
drablement pour cet exercice.
b) Est-ce que les conditions KKT sont satisfaites en ces points ?
c) Est-ce que les qualications des contraintes sont satisfaites en ces points ?
d) Est-ce que les conditions susantes dordre 2 sont satisfaites en ces points ?
Exercice 6.1.5 [MinMax] Considrez le problme de minmax suivant :
min
xR
n
max
iI
f
i
(x),
qui peut tre reformul comme :
min
(x,u)R
n
R
u
sujet ` a f
i
(x) u.
a) Donnez des conditions doptimalit (ncessaires et susantes) pour ce problme ; dis-
cutez galement de lutilisation des qualications des contraintes dans les conditions
ncessaires doptimalit. En fait, montrez que la condition de Mangasarian-Fromovitz
est toujours satisfaite.
b) Considrez les fonctions f
1
(x) =
1
2
x +
_
1
1
_

2
et f
2
(x) =
1
2
x
_
1
1
_

2
. Illustrez gra-
phiquement les lignes de niveau constant de max{f
1
(x), f
2
(x)}, obtenez la solution
et vriez les conditions doptimalit et de qualications de contraintes de a).
6.2. CONSTRUCTION DALGORITHMES DE PNALIT 213
6.2 Construction dalgorithmes de pnalit
Contentons-nous pour linstant de produire un algorithme qui calcule des points station-
naires pour le programme (6.1), cest--dire des points qui satisfont aux conditions dopti-
malit de premier ordre : il existe un vecteur

R
m
tel que
f(x

) +
t
g(x

) = 0
g(x

) 0

i
g
i
(x

) = 0.
(6.6)
Comme au chapitre prcdent, nous allons perturber les conditions doptimalit pour en
dduire des algorithmes de pnalit, des trajectoires, et analyser le comportement asymp-
totique de ces algorithmes. On peut envisager de perturber soit linquation g(x) 0, soit
la condition de complmentarit
i
g
i
(x) = 0. De plus, lingalit g(x) 0 se prte deux
formes de perturbations conduisant des algorithmes distincts.
6.2.1 Perturbation des conditions doptimalit I : g(x) 0
De la condition de complmentarit, nous savons que lorsque g
i
(x) < 0,
i
= 0. Pertur-
bons donc lingalit g(x) 0 par lgalit quivalente max(g(x), 0) = 0 et perturbons cette
dernire en remplaant le 0 de droite par , o est un paramtre que nous laisserons
tendre vers zro. Le but de cette manuvre est de calculer des solutions x() dpendant du
paramtre en esprant pouvoir montrer que lim
0
x() = x

. Cet manipulation permet


dcrire, en notant g
+
(x)
def
= max(g(x), 0)
f(x) +
t
g(x) = 0
g
+
(x) = ,
do lon tire que =
g
+
(x)

, ce qui permet de rduire ces deux quations une seule :


P(x, )
def
= f(x) +
g
+
(x)

t
g(x) = 0,
qui sont prcisment les conditions doptimalit du problme
min
xR
n
p(x, )
def
= f(x) +
g
+
(x)
2
2
.
Ce dernier problme est nomm pnalisation quadratique du programme (6.1).
Un inconvnient majeur de ces fonctions de pnalit vient des termes g
+
i
, qui ne sont pas
direntiables aux points o la fonction g
i
= 0. Puisque ces termes apparassent au carr, la
214 CHAPITRE 6. OPTIMISATION AVEC CONTRAINTES DINGALIT
On observe la pnalisa-
tion quadratique pour des
valeurs de = 1, 0.1
et 0.01. La fonction est
f(x) = x
1
x
2
et la
contrainte est 1 x
2
1

x
2
2
= 0. Un point faible
de cette fomulation est
apparent : la frontire
du disque, la fonction p-
nalise nest pas deux
fois continment diren-
tiable, et la pnalisation
na absolument aucun ef-
fet lintrieur du disque,
crant ainsi deux zones de
minimisation distinctes.
En prsence de nom-
breuses contraintes, cette
faiblesse peut se traduire
par une explosion combi-
natoire des possibilits de
contraintes actives.
PI(x,y,1)
0
0.5
1 0
0.5
1
-15
-10
-5
0
5
PI(x,y,0.1)
PI(x,y,0.01)
Figure 6.1 Pnalisation g(x)
+

2
fonction p(x, ) est direntiable, mais pas de classe C
2
. Par ailleurs, au voisinage de minima
satisfaisant aux conditions susantes doptimalit et la condition de stricte complmenta-
rit, la convergence se fait de lextrieur des contraintes actives, do le nom de mthodes de
pnalit extrieures sous lequel ces algorithmes sont connus. En eet, si la complmentarit
stricte est satisfaite au point limite, puisque
g
+
(x)

sapproche de

, si g
i
(x) sapproche de
0,
g
i
(x)

sapproche dune quantit positive, do linterprtation que x sapproche de lext-


rieur. Dans ce cas, la discontinuit des drives secondes na pas dimportance puisque les
itrations demeurent dans un ensemble (lextrieur des contraintes actives et lintrieur des
autres) o les drives secondes sont continues.
Exercice 6.2.1 [Pnalit g
+

2
] Considrez le problme
min f(x) = x
1
x
2
+ x
3
6.2. CONSTRUCTION DALGORITHMES DE PNALIT 215
sujet 0 x
3
1
x
3
1
+ x
3
1
x
2
1
+ x
2
2
+ x
2
3
1
On utilise la pnalit extrieure g
+
(x)
2
pour traiter chacune des ingalits, et obtient les
rsultats suivants :
k
k
x
1
(
k
) x
2
(
k
) x
3
(
k
)
1 1 0.834379 0.834379 -0.454846
2 0.1 0.728324 0.728324 -0.087920
3 0.01 0.709557 0.709557 -0.009864
4 0.001 0.707356 0.707356 -0.001017
a) Dduisez la solution optimale (stationnaire) ainsi que les multiplicateurs de Lagrange
et indiquez quelles contraintes sont actives la solution.
b) Est-ce que les conditions susantes sont satisfaites la solution?
6.2.2 Perturbation des conditions doptimalit II : g(x) = 0
Une autre possibilit consiste perturber le terme de complmentarit. La perturbation
la plus simple que lon puisse imaginer est g(x) = , o encore une fois 0. Supposons
maintenant que les solutions des conditions doptimalit ainsi perturbes satisfont g(x()) <
0 ainsi que () > 0, et donc lingalit g(x) 0 est toujours satisfaite et =

g(x)
peut tre
substitu dans la premire relation, ce qui donne
B(x, ) = f(x)


g
i
(x)
g
i
(x) = 0,
et correspond aux conditions doptimalit de
min b(x, ) = f(x)

log(g
i
(x)).
Par la dnition de la fonction log, les minima locaux de la fonction b(x, ) seront tous
des points intrieurs aux contraintes, et les valeur implicites
i
=

g
i
(x)
seront strictement
positives, donc dans lintrieur de lensemble 0. Ces algorithmes sont connus sous le
nom de mthodes intrieures.
216 CHAPITRE 6. OPTIMISATION AVEC CONTRAINTES DINGALIT
On observe la barrire lo-
garithmique pour des va-
leurs de = 1, 0.1
et 0.01. La fonction est
f(x) = x
1
x
2
et la
contrainte est 1 x
2
1

x
2
2
= 0. Cette formulation
conduit, pour des pro-
grammes linaires, un
algorithme polynmial en
vitant les aspects com-
binatoires associs aux
contraintes actives.
B(x,y,1)
0
0.5
1 0
0.5
1
-5
0
5
10
B(x,y,5)
B(x,y,10)
Figure 6.2 Pnalisation

log(g
i
(x))
Exercice 6.2.2 [ [Algorithmes de pnalits-barrires]] Considrez le problme
min f(x) = x
1
x
2
+ x
3
sujet 0 x
3
2
x
3
1
+ x
3
2
x
2
1
+ x
2
2
+ x
2
3
2
En supposant que toutes les contraintes sont uniformises comme g
i
(x) 0, on utilise la
barrire logarithmique
k

log(g
i
(x)) pour traiter chacune des ingalits, et obtient les
rsultats suivants :
k
k
x
1
(
k
) x
2
(
k
) x
3
(
k
)
1 1 0.4224168 0.6414188 0.3568029
2 0.1 0.8543391 1.0283938 0.0826567
3 0.01 0.9809094 1.0087353 0.0097632
4 0.001 0.9980099 1.0009862 0.0009975
5 0.0001 0.9998001 1.0000999 0.0001000
a) Dduisez la solution optimale (stationnaire) ainsi que les multiplicateurs de Lagrange
et indiquez quelles contraintes sont actives la solution.
6.3. PROPRITS GNRALES DES ALGORITHMES DE PNALISATION 217
b) Est-ce que la condition de stricte complmentarit est satisfaite la solution?
c) Est-ce que les conditions susantes sont satisfaites la solution?
6.2.3 Perturbation des conditions doptimalit III : mthodes
semi-intrieures
Une autre famille perturbe les contraintes, mais en utilisant un vecteur > 0 intrieur.
On parle donc de perturbation conduisant une pnalisation extrieure pour les variables x
et intrieure pour les variables . Il sagit dcrire g(x) = log . On peut alors substituer

i
= e
g
i
(x)

et obtenir
P
E
(x, ) = f(x) +

e
g
i
(x)

g
i
(x)
et
p
e
(x, ) = f(x) +

e
g
i
(x)

.
La stratgie symtrique, de considrer une perturbation intrieure pour les variables x et
extrieure pour les variables conduit aux formulations suivantes, dduites de la perturbation
= log(g(x)) :
P
L
(x, ) = f(x)

log(g
i
(x))g
i
(x)
et
p
l
(x, ) = f(x) +

g
i
(x)(log(g
i
(x)) 1).
6.3 Proprits gnrales des algorithmes de pnalisa-
tion
Nous tudions dabord quelques proprits gnrales des algorithmes de pnalit.
Les algorithmes extrieurs possdent des proprits similaires aux algorithmes de pnalit
quadratique prsents au chapitre prcdent. Par ailleurs, les deux autres types de pnalits
possdent galement des proprits semblables.
6.3.1 Proprit de convergence globale
Tout comme au chapitre prcdent, observons que les points daccumulation dune suite
de minima globaux des fonctions pnalises constituent des minima globaux du problme 6.1.
218 CHAPITRE 6. OPTIMISATION AVEC CONTRAINTES DINGALIT
On observe la pnalit ex-
ponentielle pour des va-
leurs de = 1, 0.1 et 0.01.
La fonction est f(x) =
x
1
x
2
et la contrainte
est 1 x
2
1
x
2
2
= 0. On
ne sait pas si cette for-
mulation conduit, pour
des programmes linaires,
un algorithme polyn-
mial en vitant les as-
pects combinatoires asso-
cis aux contraintes ac-
tives, mais on peut en
mettre la conjecture.
E(x,y,1)
0
0.5
1 0
0.5
1
-10
-5
0
5
E(x,y,0.5)
E(x,y,0.1)
Figure 6.3 Pnalisation

e
g
i
(x)

Explicitons un tel rsultat abstrait pour une suite d


k
-minima des fonctions pnalises.
Considrons une pnalisation extrieure (quadratique ou exponentielle) et une suite de points
x
k
tels que
p(x
k
,
k
) min
xR
n
p(x,
k
) +
k
,
o la suite
k
0.
Thorme 6.3.1 Supposons que les fonctions f et g
i
sont continues, avec f borne inf-
rieurement. Soit x
k
R
n
un
k
-minimum de p(x,
k
), o
k
0 et
k
> 0 convergent toutes
deux vers zro. Alors, tout point daccumulation de la suite {x
k
} est un minimum global
du problme 6.1. La suite {x
k
} admets au moins un point daccumulation ds que f est
inf-compact, ou de faon plus gnrale, lorsquil existe > 0 tel que
lim
x
c
i
(x)
f(x) = + (6.7)
Preuve Soit x un point daccumulation de la suite {x
k
}. Quitte extraire une sous-suite,
supposons que la suite est convergente, lim
k
x
k
= x. L
k
-optimalit nous donne
p(x
k
,
k
) p(x,
k
) +
k
x R
n
6.3. PROPRITS GNRALES DES ALGORITHMES DE PNALISATION 219
et donc
p(x
k
,
k
) inf
g
i
(x)0
f(x) +
k
m+
k
, (6.8)
o m borne la pnalisation dans le domaine ralisable ; on peut remplacer m par 0 pour la
pnalisation quadratique. On en dduit que x

doit tre ralisable car autrement, le ct


gauche de la prcdente relation diverge alors que le ct droit converge vers inf
g
i
(x)0
f(x).
De plus, puisque f(x
k
) p(x
k
,
k
) nous dduisons en passant la limite que
f( x) inf
g
i
(x)0
f(x)
ce qui dmontre loptimalit de x.
Pour justier lexistence de points daccumulation, supposons que f est borne infrieu-
rement et que la relation (6.7) est satisfaite. Alors, la suite {x
k
} doit tre borne car de
la relation (6.8), on tire que
k

exp(g
i
(x
k
)/
k
) est born et donc g
i
(x
k
) pour tout
i = 1, . . . , m et tout k susamment grand. galement de la relation (6.8), on dduit que
f(x
k
) est borne suprieurement, de sorte que la conclusion est obtenue partir de la rela-
tion (6.7). 2
Ce rsultat montre la convergence de minima globaux des sous-problmes pnaliss vers
un minimum global du problme 6.1. Comme pour lalgorithme de pnalit quadratique
appliqu des problmes avec contraintes dgalit, le mieux que lon puisse montrer au
sujet dune suite de minima locaux est le fait que les points daccumulation satisfont aux
conditions ncessaires doptimisation.
Thorme 6.3.2 Supposons quun point daccumulation x de la suite {x(
k
)} soit un point
rgulier des contraintes actives. Supposons de plus que les points x(
k
) sont des minima
locaux des sous-problmes pnaliss. Alors, x satisfait aux conditions ncessaires pour un
minimum local du problme (6.1).
*Exercice 6.3.1 [Convergence globale] Dmontrez le thorme 6.3.2 pour la pnalit ex-
ponentielle et pour la pnalit logarithmique
*Exercice 6.3.2 [Convergence faible] On peut construire un exemple dune seule variable
laide dune fonction f telle que f

(x

) = f

(x

) = 0, x

est un maximum global de f et


une contrainte telle que g(x

) < 0 pour laquelle x

est un minimum local de b(x, ) et ce


pour tout > 0.
a) Fournissez des exemples de fonctions f et g, illustrant ainsi quune suite de minima
locaux peut converger vers un maximum global.
220 CHAPITRE 6. OPTIMISATION AVEC CONTRAINTES DINGALIT
b) Comment se comporte la pnalit exponentielle sur votre exemple ?
c) Pourquoi la pnalit quadratique ne prsente pas la mme faiblesse sur votre exemple ?
d) Construisez un exemple pour lequel une suite de minima locaux de la pnalit qua-
dratique converge vers un maximum global.
Remarquons que les exemples de convergence vers des maxima globaux ne contredisent
pas le thorme 6.3.2 : un maximum global peut trs bien satisfaire aux conditions ncessaire
doptimalit pour un minimum!
6.3.2 Proprit didentication des contraintes actives
Considrons une sous-suite convergente {x
k
} : lim
k
x
k
= x. Nommons

I lensemble
des indices pour lesquels g
i
( x) = 0. Alors, g
i
(x
k
) converge vers zro pour les i

I et vers
une certaine constante ngative pour les autres indices i

I. Si lon peut valuer la vitesse
laquelle g
I
(x
k
) sapproche de zro, il devient possible didentier les contraintes actives.
Nous montrerons plus loin que sous certaines conditions, x
k
x O(
k
) tout comme
ctait le cas pour la pnalit quadratique du chapitre prcdent. Alors, asymptotiquement,
les contraintes de

I sont celles qui vrient g
i
(x
k
) (

k
), 1 < < 1.
Dautre part, sous lhypothse que
I
> 0, la pnalit quadratique approche le domaine
ralisable de lextrieur, cest--dire que pour des valeurs assez grandes de k, g
i
(x
k
) > 0,
i

I alors que bien entendu, g
i
(x
k
) < 0, i

I.
6.3.3 Proprit numriques
Nous avons soulev au chapitre prcdent le problme du mauvais conditionnement des
sous-problmes pnaliss lorsque
k
sapproche de zro. Bien videmment, ce problme aige
tout autant les algorithmes de pnalit introduits dans ce chapitre.
On a toujours la direntiabilit des trajectoires approches en autant que lalgorithme
converge vers un point rgulier des contraintes actives qui satisfait aux conditions susantes
doptimalit et la condition de stricte complmentarit. Ces conditions sont susantes pour
dmontrer la direntiabilit des trajectoires. Elles ne sont toutefois pas ncessaires, comme
nous le verrons dans un chapitre ultrieur, o nous obtiendrons ce rsultat sans hypothse
additionnelle pour la programmation linaire.
Thorme 6.3.3 Soit x

un point rgulier des contraintes g


I
(x) = 0 satisfaisant aux condi-
tions susantes de second ordre pour le programme (6.1) et la condition de stricte com-
plmentarit
I
> 0. Si les fonctions f et g sont de classe C
p
(R
n
), alors, il existe des
trajectoires direntiables x(, ) et (, ) de classe C
p1
(R
n
) telles que
1. x(0, 0) = x

et (0, 0) =

;
6.3. PROPRITS GNRALES DES ALGORITHMES DE PNALISATION 221
2. si et sont assez petits, x(, 0) satisfait aux conditions susantes de second ordre
pour le problme pnalis min f(x)

m
i=1
log(g
i
(x)), o x(, ), (, ) sont solu-
tions du systme dquations
f(x) +
t
g(x) =
g
i
(x)
i
+ = 0 , i = 1, 2, . . . , m.
De plus, les bornes suivantes sont satisfaites :
(a) x(, ) x

O(max(, )) ;
(b) (, )

O(max(, )) ;
(c) g(x(, )) O().
*Exercice 6.3.3 [Preuve du thorme 6.3.3] Dmontrez le thorme 6.3.3.
Exercice 6.3.4 [Trajectoires] Considrez le problme
min
1
2
(x
2
1
+ x
2
2
+ x
2
3
)
sujet x
1
+ x
2
+ x
3
1
Obtenez les expressions explicites pour les fonctions x() et () et vriez que x() satisfait
aux conditions susantes pour les formulations pnalises suivantes ; dduisez-en aussi la
solution x

et le multiplicateur

.
a)
min
1
2
(x
2
1
+ x
2
2
+ x
2
3
) +
1
2
(1 (x
1
+ x
2
+ x
3
))
+

2
.
b)
min
1
2
(x
2
1
+ x
2
2
+ x
2
3
) log(x
1
+ x
2
+ x
3
1).
Remarquons quun petit truc permet de traiter des contraintes dingalits g(x) 0 en
les formulant comme g(x)
+
= 0 o une composantedun vecteur v
+
i
def
= max(0, v
i
). Ainsi,
g(x)
+
= 0 signie que le max entre g
i
(x) et 0 vaut 0, donc g
i
(x) 0.
222 CHAPITRE 6. OPTIMISATION AVEC CONTRAINTES DINGALIT
Exercice 6.3.5 [Pnalit g
+

2
] Suite de lexercice 6.2.1 Estimez la solution optimale et
les multiplicateurs de Lagrange chaque itration k et vriez que la prcision sapproche
de 0 proportionnellement la valeur de
k
.
Exercice 6.3.6 [ [Algorithmes de pnalits-barrires]] Suite de lexercice 6.2.2 Estimez la
solution optimale et son erreur x(
k
)x

et les multiplicateurs de Lagrange (


k
)

chaque itration k et vriez que la prcision sapproche de 0 proportionnellement la


valeur de
k
.
Exercice 6.3.7 [Barrire] Considrez lexemple (trivial) suivant ;
min x
1
+ x
2
s. x
2
1
+ x
2
2
1.
a) Formulez le problme de minimisation de la fonction barrire B(x, ).
b) Obtenez la condition doptimalit de premier ordre pour le sous-problme
min
x
B(x, ).
c) Vriez que la solution x() de min

(x) = f(x) ln(g(x)) satisfait x


1
() = x
2
(),
et fournissez-en lexpression en transformant la relation

(x) = 0 pour obtenir une


quation quadratique en une seule de x
1
ou x
2
.
d) Obtenez la drive x

() ; que vaut x

(0) ?
e) Fournissez la solution x

= x(0) ainsi que le multiplicateur associ

.
f) Obtenez une expression pour la drive de () =

1x
1
()
2
x
2
()
2
. Vriez que (0) =

et donnez la valeur de

(0).
6.3.4 Proprits asymptotiques des algorithmes
An danalyser les algorithmes introduits ci-haut, nous allons utiliser des hypothses qui
semblent dicile contourner. Puisque nous nous intressons aux proprits asymptotiques,
nous supposons videmment que la suite {x
k
} converge vers un certain x

.
6.4. IMPLANTATION DES ALGORITHMES DE PNALIT 223
H1 x

satisfait aux conditions susante doptimalit.


H2 g
I
(x

) est une matrice de plein rang.


H3
I
> 0.
laide de ces hypothses, nous pouvons imiter pas pas lanalyse que nous avons faite
au chapitre prcdent.
Constatons que les contraintes actives, celles de I

, jouent un peu le mme rle que les


contraintes dgalit du chapitre prcdent. En eet, ces contraintes sont satisfaites avec
galit alors que les autres contraintes nont que peu dinuence localement. En fait, pour
les pnalits extrieures, les contraintes inactives disparassent littralement car (g
i
(x))
+
=
0 dans un voisinage de x

. Par consquent, lanalyse asymptotique du chapitre prcdent


demeure valable car les hypothses H1 et H2 correspondent aux hypothses du chapitre
prcdent alors que lhypothse H3 assure que, localement, (g
i
(x))
+
= g
i
(x) > 0 pour les
i I

.
Nous examinons dans la suite les deux autres pnalits (logarithmique et exponentielle).
Pour ces dernires, linuence des contraintes inactives devient ngligeable mais ncessite
tout de mme dadapter les dveloppements.
Encore une fois, les trajectoires, cest--dire les solutions x() sont direntiables, et nous
exploitons directement ce fait dans ce qui suit.
6.4 Implantation des algorithmes de pnalit
6.4.1 limination du mauvais conditionnement
Les techniques permettant de contourner le problme du mauvais conditionnement peuvent
sadapter aux contraintes dingalit condition de connatre lensemble I

. Supposons que
nous connaissions I

, et voyons comment transformer les quations. Dans une section subs-


quente, nous discuterons du problme destimer I

. Nous eectuons les dveloppements pour


la pnalit logarithmique, laissant en exercice les dtails pour la pnalit exponentielle.
Mthode primale-duale bien conditionne
Revenons aux quations
f(x) +
t
g(x) = 0
g(x) = .
224 CHAPITRE 6. OPTIMISATION AVEC CONTRAINTES DINGALIT
Sparons les contraintes en I

et J
f(x) +
I

t
g
I
(x) +
J
t
g
J
(x) = 0
g
i
(x) =

i
i I

j
=

g
j
(x)
j I

.
Le Jacobien de ce dernier systme est le suivant :
_
_
_
_

2
f(x) +

2
g
i
(x) g
I
(x) g
J
(x)
g
t
I
(x) diag(

2
i
), i I

0
diag(

g
2
j
(x)
), j I

0 I
_
_
_
_
.
En = 0, on retrouve
_
_
_

2
f(x

) +

2
g
i
(x

) g
I
(x

) g
J
(x

)
g
t
I
(x

) 0 0
0 0 I
_
_
_.
Cette dernire matrice est inversible car son premier bloc est inversible (lemme 5.5.1).
Mthode primale bien conditionne
Reprenons lquation du hessien de la pnalisation
H(x, ) =
2
f(x)


g
i
(x)

2
g
i
(x) +


g
2
i
(x)
g
i
(x)
t
g
i
(x),
et observons que le mauvais conditionnement na lieu que dans les sous-espaces image de
la matrice g
I
. Puisque cette matrice est suppose de plein rang, il existe une matrice Q
x
orthogonale telle que
Q
x
g
I
(x)
t
=
_
U
0
_
,
avec U une matrice triangulaire suprieure, de sorte que
Q
x
g(x)
t
=
_
U R
0 S
_
.
Par consquent,
Q
x
H(x, )Q
t
x
se rcrit
Q
x
_

2
f(x) +


g
i
(x)

2
g(x)
_
Q
t
x
+
_
U R
0 S
_
diag
_

g
2
i
(x)
_
_
U
t
0
R
t
S
t
_
.
6.4. IMPLANTATION DES ALGORITHMES DE PNALIT 225
En dnotant par G = Q
x
_

2
f(x) +


g
i
(x)

2
g(x)
_
Q
t
x
, et par = diag(

g
2
i
(x)
), on retrouve
G +
_
U
1
U
t
+ R
2
R
t
R
2
S
t
S
2
R
t
S
2
S
t
_
.
Remarquons maintenant que
1
sapproche de
2
I
= diag(
2
i
), i I

alors que
2
converge
vers zro. Le mauvais conditionnement est ainsi enlev en multipliant le premier groupe d-
quations par :
_
G
11
G
12
G
21
G
22
_
+
_
U
2
I
U
t
+ R
2
R
t
R
2
S
t
S

2
R
t
S

2
S
t
_
qui converge vers la matrice inversible
_
U

2
I
U
t
0
G

21
G

22
_
.
Lemme 6.4.1 Si x

est un point rgulier des contraintes, minimum local du programme (6.1)


satisfaisant aux conditions susantes de second ordre, alors la matrice
M =
_
U

2
I
U
t
0
G

21
G

22
_
est inversible.
*Exercice 6.4.1 [Inversibilit de la matrice M] Dmontrez le lemme 6.4.1.
On peut maintenant utiliser ces transformations pour calculer la direction de Newton ou
encore montrer la direntiabilit des trajectoires en = 0.
6.4.2 Ordre (superlinaire) de convergence locale
Comme au chapitre prcdent, nous tudions la convergence locale dun algorithme pour
lequel les sous-problmes ne sont rsolus quapproximativement. Nous conservons la proprit
importante que la direction de Newton est O(
2
k
).
Lemme 6.4.2 Sous les mmes hypothses que le thorme 6.3.3, si f et g sont des fonctions
de classe C
2
(R
n
), alors P( x
k+1
,
k+1
) O(

2
k

k+1
) et la direction de Newton d
N
calcule au
point x
k+1
satisfait la borne d
N
O(
2
k
).
226 CHAPITRE 6. OPTIMISATION AVEC CONTRAINTES DINGALIT
*Exercice 6.4.2 [Preuve du lemme 6.4.2] Dmontrez le lemme 6.4.2.
Lordre de convergence est un peu moins bon que pour lalgorithme de pnalit quadra-
tique. Ceci est d au fait que le terme dordre deux du dveloppement de Taylor de P(x, )
fait apparatre des g
2
i
(x) au dnominateur alors que la quantit 1/
k+1
ntait pas modie
par les direntiations successives dans le cas de la pnalit quadratique.
Lemme 6.4.3 Sous les mmes hypothses que le thorme 6.3.3, si f et g sont des fonctions
de classe C
3
(R
n
), soit d
N
la direction de Newton calcule x
k+1
, et x
k+1
= x
k+1
+d
N
. Alors,
P( x
k+1
,
k+1
) O
_

4
k

2
k+1
_
*Exercice 6.4.3 [Preuve du lemme 6.4.3] Dmontrez le thorme 6.4.3.
6.4.3 Algorithmes globalement et superlinairement convergents
Lalgorithme 5.3 peut tre utilis conjointement la pnalit logarithmique ou encore la
pnalit exponentielle.
Comme tout algorithme de pnalit, lorsquau moins une composante de

est non-nulle,
donc lorsquil y a au moins une contrainte active, le point extrapol est retenu localement.
Lemme 6.4.4 Sous les hypothses du thorme 6.3.3, si

= 0, asymptotiquement, le point
extrapol sera toujours utilis.
*Exercice 6.4.4 [Preuve du lemme 6.4.4] Dmontrez le thorme 6.4.4.
Lemme 6.4.5 Sous les mmes hypothses que le thorme 6.3.3 et pour des valeurs assez
petites de
k
, il existe deux constantes positives
0
and
1
telles que
d
t
N
P( x)
0

k
P( x)d
N

d
N

1
P( x).
6.5. PNALITS ET LAGRANGIENS AUGMENTS 227
Lemme 6.4.6 Sous les mmes hypothses que le thorme 6.3.3 et pour des valeurs assez
petites de
k
, pour une constante 0 <
0
<
1
2
, la relation suivante est satisfaite :
p( x
k+1
+ d
N
,
k+1
) p( x
k+1
,
k+1
)
0
d
t
N
P( x
k+1
,
k+1
).
Les lemmes techniques prcdents fournissent les outils pour dmontrer un thorme
de convergence globale localement superlinaire. Cette fois-ci, il faut restreindre la suite

k+1
=

k
un ordre limite < 4/3.
Thorme 6.4.1 Lalgorithme 5.3 utilisant la pnalit logarithmique ou exponentielle est
bien dni. Si un point daccumulation de lalgorithme est un point rgulier des contraintes
actives, alors il satisfait aux conditions ncessaires doptimalit. De plus, sil sagit dun point
satisfaisant aux conditions susantes doptimalit o la condition de stricte complmentarit
est satisfaite, alors pour des valeurs de
k
assez petites, on a
1. Une seule itration de Newton (modie avec une recherche linaire dArmijo) depuis
x
k+1
fournit directement x(
k+1
,
k+1
) avec
k

k
2. de plus, si au moins une composante de

est non-nulle (i.e. sil y a au moins une


contrainte active), la suite x(
k+1
,
k+1
) converge superlinairement avec un ordre .
*Exercice 6.4.5 [Pnalit exponentielle] Eectuez lanalyse de convergence locale pour la
pnalit p
e
.
*Exercice 6.4.6 [Dicult] Identiez un obstacle important dans lanalyse de la pnalit
p
l
.
6.5 Pnalits et Lagrangiens augments
6.5.1 Pnalits extrieures
En sinspirant du Lagrangien augment, si lon a un estim

0 de

, on peut utiliser
la perturbation (g(x) +

)
+
= , ce qui conduit au problme sans contrainte
min
xR
n
p
a
(x,

, )
def
= f(x) +

i
g
i
(x) +
g(x)
2
2
si (g
i
(x) +

i
) 0

2
i
si (g
i
(x) +

i
) 0
.
228 CHAPITRE 6. OPTIMISATION AVEC CONTRAINTES DINGALIT
6.5.2 Pnalits intrieures
Il semble dicile dadapter une stratgie de mise--jour des variables duales au sein des
mthodes intrieures. En eet, un Lagrangien augment de la barrire logarithmique conduit
la mise--jour

+
+

g(x)
,
ce qui entrane que g(x) converge vers zro lentement.
6.5.3 Pnalits primales-extrieures
La pnalit exponentielle se prte bien une forme multiplicative de mise--jour. Consi-
drons la pnalisation suivante, o

constitue un estim de

p
ea
(x,

, ) = f(x) +

i
e
g
i
(x)

,
avec son gradient
P
EA
(x,

, ) = f(x) +

i
e
g
i
(x)

g
i
(x).
Ceci correspond la perturbation
g
i
(x) = log
_

i
_
.
Puisque

est destin approcher

, e
g
i
(x)

sapproche de lunit, ce qui entrane que g


I
(x)
converge vers zro plus vite que . Par ailleurs,
J
sapproche trs vite de zro car g
J
(x)
sapproche dune quantit ngative et que la fonction e
1

sapproche de zro plus vite que


tout polynme en . De plus, pour les contraintes actives,
log
_

i
_
= log(
i
) log(

i
) O(
I

I
).
On peut donc envisager utiliser le changement de variables
i
= log(

i
), i I

et

j
=

j
, j I

pour tablir la direntiabilit de fonctions x(, , ) et (, , ) o


(, , ) =

i
e
g
i
(x)

, et en dduire lquivalent du thorme 5.6.1 :


Thorme 6.5.1 Soit x

un point rgulier des contraintes g


I
(x) = 0 satisfaisant aux condi-
tions susantes de second ordre pour le programme (6.1) et la condition de stricte com-
plmentarit
I
> 0. Si les fonctions f et g sont de classe C
p
(R
n
), alors, il existe des
trajectoires direntiables x(,

, ) et (,

, ) telles que
1. x(0,

, 0) = x

et (0,

, 0) =

;
6.6. RSUM 229
2. Si , et

sont assez petits, alors x(,



, 0) satisfait aux conditions susantes
de second ordre pour le problme pnalis f(x)+

i
e
g
i
(x)

, et o x(,

, ) et (,

, )
sont solutions du systme dquations
f(x) + g(x) =
g
i
(x) = log
_

i
_
i I

i
=

i
e
g
i
(x)

i I

;
de plus, les bornes suivantes sont satisfaites :
(a) x(,

, ) x

O(max(

, )) ;
(b) (,

, )

O(max(

, )).
*Exercice 6.5.1 [Preuve] Dmontrez le thorme 6.5.1.
6.6 Rsum
Nous avons dduit dobservations lmentaires des conditions doptimalit pour les pro-
blmes direntiables : f(x

) doit tre orthogonal au plan tangent aux contraintes actives


en x

, ce qui, en autant que x

soit un point rgulier des contraintes actives, est quivalent


ce que f(x

) soit orthogonal au noyau de la matrice g(x

), dont les colonnes de la matrice


Z

forment une base. Ainsi, f(x

)Z

= 0. De plus, le hessien rduit du Lagrangien doit


tre (semi-)dni positif.
Nous avons dduit lalgorithme de pnalit par le biais dune perturbation des quations
de Lagrange, et avons prsent ses proprits de convergence globale et de convergence locale
superlinaire. De plus, nous avons prsent deux techniques pour contourner le problme
du mauvais conditionnement (qui constitue lobjection habituelle face aux algorithmes de
pnalit). Il en rsulte un algorithme robuste et ecace.
6.7 Extensions et rfrences
Lanalyse dalgorithmes de pnalit (mthodes de points intrieurs) a reu un regain
dattention depuis les travaux de Karmarkar[22]. Dussault[12] a analys une famille abstraite
dalgorithmes de pnalits, dont la pnalit logarithmique est un cas particulier ; il a introduit
la technique base sur la connaissance des contraintes actives pour contourner le problme
du mauvais conditionnement. Lanalyse de la pnalit exponentielle est base sur [5].
230 CHAPITRE 6. OPTIMISATION AVEC CONTRAINTES DINGALIT
Annexe A
Solutions dexercices
A.1 Exercice 2.2.7
Petit solutionnaire simpli de lexercice 2.2.7. Tout dabord, crivons les gradient et
hessien de f.
f(x) = (x
2
y)(x
2
4y) = x
4
5x
2
y + 4y
2
f(x) =
_
4x
3
10xy, 5x
2
+ 8y
_

2
f(x) =
_
12x
2
10y 10x
10x 8
_
Maintenant, crivons la fonction h
x,d
(). Simplions-nous un peu la vie en attaquant direc-
tement le cas x = 0 car cest ce cas que nous voudrons traiter plus loin.
h
0,d
() =
4
d
4
x
5
3
d
2
x
d
y
+ 4
2
d
2
y
h

0,d
() = 4
3
d
4
x
15
2
d
2
x
d
y
+ 8d
2
y
h

0,d
() = 12
2
d
4
x
30d
2
x
d
y
+ 8d
2
y
Finalement, crivons
f(d)d =
_
4
3
d
3
x
10
2
d
x
d
y
, 5
2
d
2
x
+ 8d
y
_
_
d
x
d
y
_
= 4
3
d
4
x
15
2
d
2
x
d
y
+ 8d
2
y
= h

0,d
().
Je laisse en exercice la vrication que h

0,d
() = d
t

2
f(d)d.
231
232 ANNEXE A. SOLUTIONS DEXERCICES
Bon, on voit bien que h

0,d
(0) = 0 et que h

0,d
() = 8d
2
y
est positif si d
y
= 0, et donc = 0
est bel et bien un min local. Si d
y
= 0, h
0,d
() =
4
d
4
x
et donc encore = 0 est bel et bien un
min local. Ceci conclut que = 0 est un minimum local pour tout d de la fonction h
0,d
().
Finalement, pour voir quel point la fonction h
0,d
() demeure positive, rcrivons
h
0,d
() =
2
(
2
d
4
x
5d
2
x
d
y
+ 4d
2
y
)
et examinons les valeurs de qui annulent
2
d
4
x
5d
2
x
d
y
+4d
2
y
, donc =
5d
2
x
dy

25d
4
x
d
2
y
16d
4
x
d
2
y
2d
4
x
ce qui se simplie =
(53)dy
2d
2
x
. Cette quation de degr 2 est une parabole courbe vers le
haut (d
4
x
> 0) et donc est ngative entre ses deux racines. La plus petite de ses racines (en
valeur absolue) constitue la valeur recherche pour garantir que h
0,d
() est positive, donc si
||
|dy|
d
2
x
, alors h
0,d
() 0.
A.2 Exercice 4.7.2
Considrons le programme
min f(x) =
x
2
1
+ x
2
2
2
+ x
2
3
10x
1

3x
2
4

x
3
2
sujet 0 x 1.
Tout dabord, crivons le gradient de f, f(x) =
_
x
1
10, x
2

3
4
, 2x
3

1
2
_
Rcrivons les
contraintes avec la matrice identit 3 3 : Ix 0 et Iy 1. Numrotons les de un 6. Il
faut retenir que les multiplicateurs de Lagrange des 3 premires contraintes devront tre 0
et ceux des contraintes 4 6 0. Notons aussi lensemble E = {x R
3
: 0e x e} o
comme souvent le vecteur e = (1, 1, 1)
t
.
lorigine x
0
= (0, 0, 0)
t
=, f(x
0
) =
_
10,
3
4
,
1
2
_
, et I
0
, notre meilleur guess pour
les contraintes actives est I
0
= {1, 2, 3}, et le lambda qui satisfait f((0, 0, 0)
t
) + I = 0
est =
_
10,
3
4
,
1
2
_
0. Le pire des lambdas est
1
, et on lenlve donc de I
0
pour demeurer
avec un nouvel estim des contraintes actives, I
1
= {2, 3}. Les contraintes actives sont
donc x
2
= 0 et x
3
= 0 et minimiser f sujet A
I
1
x = b
I
1
revient minimiser f selon
seulement x
1
en xant x
2
= 0 et x
3
= 0. La solution serait x

1
= 10, ce qui nest pas dans
E. Dnissons donc la direction d = (10, 0, 0) x
0
, i.e. allant du point courant (lorigine)
cette solution qui nest pas dans E. Cherchons maintenant la plus grande valeur de t pour
que x
0
+t E. On prend chacune des contraintes une par une pour voir le t
i
max
impos par
la contrainte i, pour i = 1 . . . 6. Ce nest pas dicile de constater que le vecteur des 6 valeurs
t
i
max
= [, , , 0.1, , ] et donc que la plus grande valeur pour que x
0
+ t E est
t = min{t
i
max
} = 0.1, donc x
1
= x
0
+ 0.1d = (1, 0, 0)
t
. Comme cest la quatrime contrainte
qui dtermine t, on lajoute I
1
.
A.2. EXERCICE 4.7.2 233
En x
1
, les contraintes actives sont I
2
= {2, 3, 4} et les multiplicateurs de Lagrange sont

2
=
3
4
,
3
=
1
2
,
4
= 9. Seul
4
est du bon signe, aussi on passe un nouvel essai pour
lensemble des contraintes actives en enlevant la contrainte numro 2, pour poursuivre avec
I
3
= {3, 4}. Les contraintes actives reviennent x
1
= 1 et x
3
= 0, et minimiser f sur les
contraintes actives revient minimiser f par rapport x
2
avec x
1
x 1 et x
3
x 0. On
trouve comme solution x = (1,
3
4
, 0)
t
. Cette fois-ci, le x est dans E, et donc on peut poser
x
2
= (1,
3
4
, 0)
t
. Il y a 2 contraintes actives, et on cherche
4
et
3
pour que
f(x
2
) +
4
A
4
+
4
A
3
= 0
(9, 0,
1
2
) +
4
(1, 0, 0) +
3
(0, 0, 1) = 0
do
4
= 9 et
3
=
1
2
. Par consquent,
4
est du bon signe, mais pas
3
, et le prochain
essai pour identier les contraintes actives la solution sera I
4
= {4}. Ceci nous amne
minimiser f par rapport x
2
et x
3
en xant x
1
= 1. On obtient x = (1,
3
4
,
1
4
) qui est dans E,
donc notre prochain x
3
= (1,
3
4
,
1
4
). On doit identier
4
pour que f(x
3
) +
4
(1, 0, 0) = 0,
qui donne
4
= 9 puisque f(x
3
) = (9, 0, 0). On a donc identi un point de KKT pour
notre problme original car on a obtenu :

= (0, 0, 0, 9, 0, 0), x

= (1,
3
4
,
1
4
)
t
tels que

[1..3]
0 (A.1)

[4..6]
0 (A.2)
f(x

) +
6

i=1

i
A
i
= 0 (A.3)
A
[1..3]
x

0 (A.4)
A
[4..6]
x

e (A.5)

(Ax

b) = 0 (A.6)
o nous avons utilis A =
_
I
I
_
et b = (0, e
t
)
t
.
Les relations (A.1) et (A.4) sont de signes opposs, tout comme (A.2) et (A.5), la condition
de Lagrange (A.3) est satisfaite, ainsi que la complmentarit (A.6) et enn x

est ralisable
(A.4) et (A.4). De plus, I

= I
4
= {4}.
Remarque A.2.1 Cet exemple appelle plusieurs remarques.
Lalgorithme a explor seulement 5 ensembles de contraintes actives sur une possibilit
de 27 (pourquoi 27 ?). Tout comme lalgorithme du simplexe pour la programmation
linaire (dont il est inspir), lalgorithme de contraintes actives est en gnral trs
ecace pour identier I

, mais son pire cas est dsastreux.


Pour les ensembles I
0
I
4
,
les minimisations par rapport x taient trs simples et revenaient xer des com-
posantes de x dans la minimisation par rapport aux autres composantes ; en gnral,
il faut rsoudre un problme avec contraintes dgalit ;
234 ANNEXE A. SOLUTIONS DEXERCICES
les minimisations en x se faisaient directement car f est quadratique ; en gnral, a
prend un algorithme itratif pour calculer les minimisations en x ; on calcule alors
plusieurs itrations de x pour un ensemble I
k
donn ;
en gnral, on ne calcule pas les minimisations en x exactement mais on utilise un
critre darrt (nomm condition de relaxation dans lalgorithme 4.2) pour lalgo-
rithme itratif ; ce moment, les multiplicateurs de Lagrange nexistent pas, et on
utilise une estimation, souvent obtenue par moindres carrs ;
le critre darrt pour lalgorithme itratif est crucial, et un critre mal choisi peut
conduire la non-convergence de lalgorithme, comme lillustre lexercice 4.5.3.
Bibliographie
[1] E. Beale. A derivation of conjugate gradients. In F. Lootsma, editor, Numerical Methods
for Nonlinear Optimization, pages 3942, Academic Press, London and New York, 1972.
[2] D. P. Bertsekas. Constrained optimization and Lagrange multiplier methods. Academic
press, New-York, 1982.
[3] C. G. Broyden and N. Attia. A smooth sequential penalty function method for solving
nonlinear programming problems. In P. Thoft-Christenses, editor, System Modelling
and Optimization, pages 237245, Springler-Verlag, Berlin, Germany, 1983.
[4] C. G. Broyden and N. Attia. Penalty functions, newtons method, and quadratic pro-
gramming. Journal of Optimization Theory and Applications, 58, 1988.
[5] R. Cominetti and J.-P. Dussault. A stable exponential-penalty algorithm with super-
linear convergence. J.O.T.A., 83(2), November 1994.
[6] R. Courant. Variational methods for the solution of problems of equilibrium and vibra-
tions. Bulletin of the Annals of the Mathematics Society, 49 :123, 1943.
[7] G. B. Dantzig. Linear programming and extensions. Princeton university press, Prin-
ceton, N.J., 1963.
[8] R. S. Dembo, S. C. Eisenstat, and T. Steihaug. Inexact newton methods. S.I.A.M.
Journal on Numerical Analysis, 19(2) :400408, 1982.
[9] R. S. Dembo and T. Steihaug. Truncated-newton algorithms for large-scale unconstrai-
ned optimization. Mathematical Programming, 26 :190230, 1983.
[10] J. E. Dennis Jr. and J. J. Mor. Quasi-newton methods, motivation and theory. S.I.A.M.
review, 19(1), 1977.
[11] J. E. Dennis Jr. and R. B. Schnabel. Numerical methods for nonlinear equations and
unconstrained optimization. Prentice Hall, 1983.
[12] J.-P. Dussault. Numerical stability and eciency of penalty algorithms. S.I.A.M. Jour-
nal on Numerical Analysis, 32(1) :296317, February 1995.
[13] A. V. Fiacco and G. P. McCormick. Nonlinear programming : Sequential unconstrained
minimization techniques. S.I.A.M., 1990.
235
236 BIBLIOGRAPHIE
[14] R. Fletcher and C. Reeves. Function minimization by conjugate gradients. The computer
journal, pages 149154, 1964.
[15] P. E. Gill, W. Murray, and S. Picken. The implementation of two modied newton
algorithms for unconstrained optimization. NPL Report NAC24, 1972.
[16] P. E. Gill, W. Murray, and M. H. Wright. Practical Optimization. Academic Press,
1981.
[17] S. Goldfeld, R. Quandt, and H. Trotter. Maximization by quadratic hill-climbing. Eco-
nometrica, 34, 1966.
[18] N. I. M. Gould. On the accurate determination of search directions for simple dieren-
tiable penalty functions. I.M.A. Journal on Numerical Analysis, 6 :357372, 1986.
[19] N. I. M. Gould. On the convergence of a sequential penalty function method for constrai-
ned minimization. S.I.A.M. Journal on Numerical Analysis, 26 :107108, 1989.
[20] M. R. Hestenes. Multiplier and gradient methods. Journal of optimization theory and
applications, 4 :303320, 1969.
[21] M. R. Hestenes and E. Stiefel. Methods of conjugate gradients for solving linear systems.
J. Res. N.B.S., 49 :409436, 1952.
[22] N. K. Karmarkar. A new polynomial time algorithm for linear programming. Combi-
natorica, 4 :373395, 1984.
[23] K. Levenberg. A method for the solution of certain problems in least squares. Quart.
Appl. Math., 2 :164168, 1944.
[24] D.-H. Li and M. Fukushima. On the global convergence of the bfgs method for nonconvex
unconstrained optimization problems. SIAM J. on Optimization, 11(4) :10541064,
2000.
[25] D. Marquardt. An algorithm for least-squares estimation of nonlinear parameters. SIAM
J. Appl. Math., 11 :431441, 1963.
[26] W. Murray. Second derivative methods. In W. Murray, editor, Numerical methods for
unconstrained optimization, Academic press, London, 1972.
[27] C. H. Papadimitriou and K. Steiglitz. Combinatorial optimization. Prentice Hall, 1982.
[28] E. Polak. Computational methods in optimization : a unied approach. Academic press,
New-York, 1971.
[29] M. J. D. Powell. A method for nonlinear constraints in minimization problems. In
R. Fletcher, editor, Optimization, Academic Press, London, 1969.
[30] R. T. Rockafellar. The multiplier method of Hestenes and Powell applied to convex
programming. Journal of Optimization Theory and Applications, 12 :555562, 1973.
[31] R. T. Rockafellar. Augmented lagrange multiplier functions and duality in nonconvex
programming. S.I.A.M. Journal on Control and Optimization, 12 :268285, 1974.
BIBLIOGRAPHIE 237
[32] T. Steihaug. The conjugate gradient method and trust regions in large scale optimiza-
tion. SIAM J. Numer. Anal., 20 :626637, 1983.
[33] P. L. Toint. Towards an ecient sparsity exploiting Newton method for minimization.
In I. S. Du, editor, Sparse Matrices and Their Uses, pages 5788. Academic Press,
London, 1981.
[34] C. Xu and J. Zhang. A survey of quasi-newton equations and quasi-newton methods
for optimization. Annals of Operations Research, 103, 2001.

Vous aimerez peut-être aussi