Académique Documents
Professionnel Documents
Culture Documents
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
(x
(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
(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
) = f
) = f
= min
xE
f(x),
et signie : f(x) f(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
, alors x
), x E V
(x
), o V
(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
est dit strict sil existe une valeur > 0 telle que
quel que soit x V
(x
), x = 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
.
Alors, f
(x
) = 0.
Corollaire 1.3.1 Soit 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
(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
(x
) = 0 et f
(x
) 0. En eet, si la condition f
(x
satisfait
la condition susante pour un maximum de la fonction f.
1.3. CONDITIONS DOPTIMALIT 17
Le cas f
(x
(0) = 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
:
f(x) = f(x
) + f
(x
)(x x
) +
1
2
f
()(x x
)
2
,
avec compris entre x et x
(x
) = 0 alors
que f
(x
(x
). Puisque f
V = {x : |x x
() < 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
(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
_
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
) = 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
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
(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
), 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
(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
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
) + 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) = c > 0.
1.5.2 Approximation linaire de la fonction f
(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) x x
(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
/ 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
( 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
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
= 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
(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
(x
) = 0, avec la
fonction g
(x) g
tel que si la
mthode de Newton est initialise dans ce voisinage, elle produit une suite convergeant vers
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
(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
) = 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
(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,
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
O(
2
k
), que g(x
k
)
O(
k
), que x
k
O(
k1
), et donc, puisque g
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
(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
(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
, f
, il est
fort possible que 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
( 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
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
) = 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
) 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
,d
()
def
= f(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
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
)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) 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
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
) = 0 et
2
f(x
) = 0 et
2
f(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
+ 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
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
) = 0 et
2
f(x
) = 0 et
2
f(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
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
=
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
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
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
=
_
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
.
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
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
d) f( x) = q(0),
ce qui nous indique que 0 est solution de min
d
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)
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
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
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
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
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
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
) 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
, 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
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
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)
.
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
) = 0 et
2
f(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
).
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
)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
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
= c
B
B
1
les multiplicateurs associs.
Alors, les cots relatifs c
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
= 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
) 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
)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
) = [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
f(x
)
t
lintrieur des contraintes
est le point 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
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
+ Zd
z
). Puisque x
+ Zd
z
). En fait, ltude de la fonction f dans lintersection dun
voisinage de 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
respectivement.
Maintenant, en appliquant les conditions doptimalit du chapitre 2 la fonction , on
dduit que f(x
)
t
ker Z
t
, on a donc que 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
)+
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
)+
)Z =
0 et si de plus, la matrice Z
t
2
f(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
= 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
) + 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
= 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
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
= 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)
b
2
, A
1
z = 0, z = 0, alors 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
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
= 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
)+
= (
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
=
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
=
_
_
_
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
) +
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
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)
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
, 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 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
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
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
)d = 0. Il faut
montrer que, quel que soit d dans le plan tangent aux contraintes en 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
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
), 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
) est un
vecteur orthogonal au noyau de la matrice g(x
R
m
satisfaisant
lgalit
f(x
) =
g(x
).
Bon, tout ceci nous donne que d DED(x
)d < 0 et d
est une direction ralisable est caractris par g(x
) seulement
si f(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
R
m
tel
que f(x
) =
g(x
)Z
= 0, o les colonnes
de Z
).
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
, y
) = 0 = 0g(x
, y
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
L(x
) = g(x
2
xx
L(x
) =
2
f(x
) +
2
g(x
)
est une matrice (semi-)dnie positive sur lespace tangent {d : g(x
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
R
m
tel que L(x
) =
0, et de plus d
t
2
xx
L(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
) =
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
)x
(0) = 0.
Susance.
Reprenons les directions d
k
= y
k
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
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
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
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)
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
) 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 couple
satisfaisant aux conditions ncessaires doptimalit pour le problme (5.1). Alors, x
est un
point stationnaire pour le problme min 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
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
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
.
d) Vriez que
1x
1
()
2
x
2
()
2
approche
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
2
f(x
) +
2
g(x
) g(x
)
t
g(x
) 0
_
,
est inversible.
*Exercice 5.5.1 [Inversibilit de
2
L(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
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
(
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
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
(
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
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
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
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
)
t
,
et vrions que ce systme induit des fonctions direntiables x(
, , ) et
(
, , )
def
=
+
g(x(
,,))
t
), o
, ) et
(,
, ) telles
que
1. x(0,
, 0) = x
et
(0,
, 0) =
;
2. Si , et
(,
)
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
) =
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
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
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
, )) max(
2
, ), et donc que le choix naturel est O(
2
).
Par ailleurs, puisque x(,
, ) x
et
(,
, )
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
)Z
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
nappartient
au DED(x
). Le DED(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
) 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
R
m
tel que f(x
) +
t
g(x
) = 0 et
i
g
i
(x
) = 0, o les colonnes de Z
).
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
R
m
tel que
x
L(x
) = 0,
L(x
)
t
= 0 et de plus d
t
2
xx
L(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
(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
_
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
2
, on peut supposer que x
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
puisque x
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
= {, : 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
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)
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)
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
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
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
() ; que vaut x
(0) ?
e) Fournissez la solution x
.
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
.
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 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
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
, 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)
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
i
e
g
i
(x)
, ) et (,
, ) telles que
1. x(0,
, 0) = x
et (0,
, 0) =
;
6.6. RSUM 229
2. Si , et
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
)Z
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