Vous êtes sur la page 1sur 171

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/353131411

Optimisation: Cours et exercices, Version 2021

Preprint · July 2021

CITATIONS READS
0 3,669

1 author:

Sonia Radjef
Université des Sciences et de la Technologie d'Oran Mohamed Boudiaf
21 PUBLICATIONS 62 CITATIONS

SEE PROFILE

All content following this page was uploaded by Sonia Radjef on 21 September 2021.

The user has requested enhancement of the downloaded file.


République Algérienne Démocratique et Populaire.
Ministère de l’Enseignement Supérieur et de la Recherche
Scientifique.
Université des Sciences et de la Technologie d’Oran.
Mohamed Boudiaf.
Faculté des Mathématiques et Informatique
Département des Mathématiques

Optimisation

Présenté par :

Dr RADJEF Epouse DOUAR Sonia


2021
Table des matières

I Optimisation sans contraintes 5


1 Concepts et Considérations Théoriques 6
1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.2 Vecteurs et matrices . . . . . . . . . . . . . . . . . . . . . . . 6
1.2.1 Matrices et vecteurs partitionnés . . . . . . . . . . . . 7
1.3 Discussion générale sur les solutions d’un système linéaire . . . 8
1.4 Propriétés des formes quadratiques . . . . . . . . . . . . . . . 9
1.4.1 Gradient d’une forme quadratique . . . . . . . . . . . . 10
1.4.2 Forme quadratique définie et semi-définie positive . . . 11
1.4.3 Critère de Sylvester pour les formes quadratiques définies
et semi-définies . . . . . . . . . . . . . . . . . . . . . . 12
1.4.4 Propriétés des matrices définies et semi-définies positives 13
1.5 Éléments d’analyse convexe . . . . . . . . . . . . . . . . . . . 14
1.5.1 Ensembles convexes . . . . . . . . . . . . . . . . . . . . 14
1.5.2 Fonctions convexes . . . . . . . . . . . . . . . . . . . . 16
1.6 Semi-continuité inférieure . . . . . . . . . . . . . . . . . . . . 18
1.7 Sur les polyèdres et les polytopes . . . . . . . . . . . . . . . . 19
1.8 Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

2 Optimisation non linéaire sans contraintes 23


2.1 Formulation mathématique d’un problème d’optimisation . . . 23
2.2 Minima locaux et globaux . . . . . . . . . . . . . . . . . . . . 25
2.3 Théorèmes généraux d’existence . . . . . . . . . . . . . . . . . 27
2.4 Caractérisation des solutions optimales . . . . . . . . . . . . . 29
2.4.1 Conditions nécessaires d’optimalité . . . . . . . . . . . 29
2.4.2 Conditions sufffisantes d’optimalité . . . . . . . . . . . 31
2.5 Étude de quelques exemples . . . . . . . . . . . . . . . . . . . 32
2.6 Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

1
2

3 Les méthodes numériques pour l’optimisation sans contraintes 38


3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
3.2 La méthode du gradient . . . . . . . . . . . . . . . . . . . . . 39
3.2.1 Interprétation physique du gradient . . . . . . . . . . . 39
3.2.2 Sélection des directions de descente . . . . . . . . . . . 40
3.2.3 Sélection du pas . . . . . . . . . . . . . . . . . . . . . . 41
3.3 La méthode de Newton . . . . . . . . . . . . . . . . . . . . . . 45
3.4 La méthode du gradient conjugué . . . . . . . . . . . . . . . . 49
3.4.1 Cas linéaire . . . . . . . . . . . . . . . . . . . . . . . . 49
3.4.2 Cas non linéaire . . . . . . . . . . . . . . . . . . . . . . 52
3.5 La méthode de relaxation . . . . . . . . . . . . . . . . . . . . 53
3.6 Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

II Optimisation avec contraintes 57


4 Optimisation non linéaire avec contraintes 58
4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
4.2 Théorèmes généraux d’existence . . . . . . . . . . . . . . . . . 60
4.3 Conditions d’optimalité . . . . . . . . . . . . . . . . . . . . . 62
4.3.1 Conditions nécessaires d’optimalité dans le cas des contraintes
quelconques . . . . . . . . . . . . . . . . . . . . . . . . 62
4.3.2 Conditions d’optimalité pour le cas de contraintes linéaires
de type égalités . . . . . . . . . . . . . . . . . . . . . . 64
4.3.3 Conditions d’optimalité pour le cas de contraintes linéaires
de type inégalités . . . . . . . . . . . . . . . . . . . . . 73
4.3.4 Conditions d’optimalité pour le cas de contraintes égalités
non linéaires . . . . . . . . . . . . . . . . . . . . . . . . 80
4.3.5 Conditions d’optimalité pour le cas de contraintes inégalités
non linéaires . . . . . . . . . . . . . . . . . . . . . . . . 85
4.3.6 Optimisation des fonctions non linéaires sous des contraintes
générales non linéaires . . . . . . . . . . . . . . . . . . 89
4.4 Exercices corrigés . . . . . . . . . . . . . . . . . . . . . . . . . 93
4.4.1 Exercice 1 . . . . . . . . . . . . . . . . . . . . . . . . . 93
4.4.2 Solution de l’exercice 1 . . . . . . . . . . . . . . . . . . 94
4.4.3 Exercice 2 . . . . . . . . . . . . . . . . . . . . . . . . . 96
4.4.4 Solution de l’exercice 2 . . . . . . . . . . . . . . . . . . 97
4.4.5 Exercice 3 . . . . . . . . . . . . . . . . . . . . . . . . . 97
3

4.4.6 Solution de l’exercice 3 . . . . . . . . . . . . . . . . . . 98


4.5 Exercices non corrigés . . . . . . . . . . . . . . . . . . . . . . 99

5 Les méthodes numériques pour l’optimisation avec contraintes


101
5.1 Méthode par élimination . . . . . . . . . . . . . . . . . . . . . 101
5.2 Méthodes de pénalisation . . . . . . . . . . . . . . . . . . . . . 104
5.2.1 Principe de la méthode . . . . . . . . . . . . . . . . . . 104
5.2.2 La méthode de pénalisation dans le cas de contraintes
égalités . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
5.2.3 La méthode de pénalisation dans le cas de contraintes
mixtes . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
5.2.4 Algorithme de la méthode de pénalisation quadratique 106
5.2.5 Quelques exemples corrigés . . . . . . . . . . . . . . . . 109
5.3 Méthode du gradient projeté . . . . . . . . . . . . . . . . . . . 110
5.4 Méthode Lagrange-Newton pour des contraintes égalité . . . . 112
5.4.1 Cas d’un problème quadratique avec des contraintes
affines égalités . . . . . . . . . . . . . . . . . . . . . . . 112
5.4.2 Cas d’un problème non quadratique . . . . . . . . . . . 113
5.5 Méthode de Newton projetée . . . . . . . . . . . . . . . . . . . 113
5.5.1 Cas de contraintes de type x ≥ 0 . . . . . . . . . . . . 113
5.5.2 Cas de contraintes de bornes . . . . . . . . . . . . . . . 114
5.6 Méthode d’Uzawa . . . . . . . . . . . . . . . . . . . . . . . . . 115
5.7 Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117

6 La programmation quadratique 121


6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
6.2 Programmation convexe . . . . . . . . . . . . . . . . . . . . . 122
6.2.1 Programmation quadratique convexe (P.Q.C) . . . . . 125
6.2.2 Dualité en programmation quadratique convexe . . . . 126
6.2.3 Dualité en programmation convexe . . . . . . . . . . . 126
6.3 Les méthodes de résolution . . . . . . . . . . . . . . . . . . . . 128
6.3.1 La méthode de Wolfe pour un PQC standard . . . . . 128
6.4 Exercices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130

7 Optimisation d’un problème linéaire-quadratique convexe à


variables bornées par la méthode adaptée 134
7.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
4

7.2 Position du problème et définitions . . . . . . . . . . . . . . . 134


7.3 Formule d’accroissement de la fonction objectif . . . . . . . . . 136
7.4 Critère d’optimalité . . . . . . . . . . . . . . . . . . . . . . . . 137
7.5 Critère de suboptimalité . . . . . . . . . . . . . . . . . . . . . 139
7.6 Méthode de résolution . . . . . . . . . . . . . . . . . . . . . . 140
7.6.1 Construction d’une direction d’amélioration adaptée l . 141
7.6.2 Changement de plan . . . . . . . . . . . . . . . . . . . 142
7.6.3 Estimation de suboptimalité . . . . . . . . . . . . . . . 143
7.6.4 Changement de support . . . . . . . . . . . . . . . . . 144
7.6.5 Algorithme de résolution . . . . . . . . . . . . . . . . . 145

8 La dualité 147
8.1 La fonction duale de Lagrange . . . . . . . . . . . . . . . . . . 147
8.1.1 La fonction de Lagrange . . . . . . . . . . . . . . . . . 147
8.1.2 La fonction duale de Lagrange . . . . . . . . . . . . . . 148
8.1.3 Borne sur la fonction duale . . . . . . . . . . . . . . . . 148
8.1.4 Exemples . . . . . . . . . . . . . . . . . . . . . . . . . 149
8.2 Le problème dual de Lagrange . . . . . . . . . . . . . . . . . . 150
8.2.1 Rendre les contraintes duales explicites . . . . . . . . . 151
8.2.2 La dualité faible . . . . . . . . . . . . . . . . . . . . . . 153
8.2.3 La dualité forte . . . . . . . . . . . . . . . . . . . . . . 153
8.3 Interprétation du point-selle (Saddle point) . . . . . . . . . . . 154
8.3.1 Définition des points-selle (ou cols) ; Problème de mini-
maximisation . . . . . . . . . . . . . . . . . . . . . . . 154
8.3.2 Points-selle de lagrangiens . . . . . . . . . . . . . . . . 155
8.3.3 Condition d’optimalité d’un point-selle (Dualité forte) . 157
8.4 Exercices corrigés . . . . . . . . . . . . . . . . . . . . . . . . . 159
8.4.1 Exercice 1 . . . . . . . . . . . . . . . . . . . . . . . . . 159
8.4.2 Solution de l’Exercice 1 . . . . . . . . . . . . . . . . . . 159
8.4.3 Exercice 2 . . . . . . . . . . . . . . . . . . . . . . . . . 160
8.4.4 Solution de l’Exercice 2 . . . . . . . . . . . . . . . . . . 160
8.4.5 Exercice 3 . . . . . . . . . . . . . . . . . . . . . . . . . 162
8.4.6 Solution de l’Exercice 3 . . . . . . . . . . . . . . . . . . 162
8.5 Exercices non corrigés . . . . . . . . . . . . . . . . . . . . . . 164

Bibliographie 167
Première partie

Optimisation sans contraintes

5
Chapitre 1

Concepts et Considérations
Théoriques

1.1 Introduction
Dans ce chapitre, on donne quelques rappels sur l’algèbre linéaire et la
programmation mathématique. On rappelle tout d’abord les propriétés essen-
tielles des formes quadratiques, ainsi que la notion des ensembles et fonctions
convexes.

1.2 Vecteurs et matrices


Définition 1.2.1. Soit n, m ∈ N∗ . Une matrice d’ordre m × n à coefficients
dans R est un tableau à deux dimensions, ayant m lignes et n colonnes,
représenté sous la forme suivante :
 
a11 a12 · · · a1n
 a21 a22 · · · a2n 
A = A(I, J) = (aij , i ∈ I, j ∈ J) =  ..
 
.. . . .. 
 . . . . 
am1 am2 · · · amn

où I = {1, 2, . . . , m} et J = {1, 2, . . . , n} représentent respectivement l’en-


semble des indices des lignes et des colonnes de A. Pour des calculs pratiques,

6
1.2 Vecteurs et matrices 7

la matrice A se note aussi


 
A1
 A2 
 .. 
.
 
A = (a1 , a2 , · · · , aj , · · · , an ) =  ,
 
 Ai 
 .. 
 . 
Am
 
a1j
 a2j 
où aj = A(I, j) =  ..  est un vecteur colonne de dimension m ;
 
 . 
amj
Ai = A(i, J) = (ai1 , ai2 , · · · , ain ) est un vecteur ligne de dimension n.
Chaque vecteur, noté x = x(J) = (xj , j ∈ J), sera ainsi considéré comme un
vecteur-colonne tandis que le vecteur-ligne sera noté xT . La matrice trans-
posée de A sera notée
AT = AT (J, I) = (aji , j ∈ J, i ∈ I).
Notons qu’un vecteur-colonne de dimension n peut être considéré comme une
matrice d’ordre (n × 1), tandis qu’un vecteur ligne de dimension n peut être
considéré comme une matrice d’ordre (1 × n).
La matrice A est dite carrée si on a m = n ; de plus, si A = AT , la matrice
est dite symétrique.
La matrice identité d’ordre n sera notée In .

1.2.1 Matrices et vecteurs partitionnés


On peut effectuer le produit d’une matrice A et d’un vecteur x, après les
avoir partitionnés judicieusement. On dit alors qu’on a effectué le produit
par blocs. En effet, si l’on a
 
x1
A = [A1 |A2 ], x = ,
x2
alors on peut écrire :

x1
Ax = [A1 |A2 ] = A 1 x1 + A 2 x2 .
x2
1.3 Discussion générale sur les solutions d’un système linéaire 8

De même pour
     
A11 A12 x1 b1
A= ,x = ,b = ,
A21 A22 x2 b2
l’équation Ax = b peut alors s’écrire :

A11 x1 + A12 x2 = b1 ,
A21 x1 + A22 x2 = b2 .

On peut partitionner une matrice d’une manière arbitraire. Par exemple, si


A = A(I, J) est une matrice d’ordre (m × n) et que JB et JN sont deux
sous-ensembles quelconques de J, tels que

|JB | = m, JB ∪ JN = J, JB ∩ JN = ∅,

alors on peut partitionner A de la façon suivante :

A = (a1 , a2 , · · · , aj , · · · , an ) = [AB |AN ],

avec AB = A(I,h JBi), AN = A(I, JN ).


Si x = x(J) = xxNB , xB = x(JB ), xN = x(JN ), alors on peut écrire

n
X X X
Ax = aj x j = aj x j + aj x j
j=1 j∈JB j∈JN
= A(I, JB )x(JB ) + A(I, JN )x(JN )
= A B xB + A N xN .

1.3 Discussion générale sur les solutions d’un


système linéaire
Soient m et n deux nombres entiers. Un système de m équations linéaires
à n inconnues x1 , x2 , · · · , xn s’écrit comme suit :

 a11 x1 + a12 x2 + · · · + a1n xn = b1 ,

 a21 x1 + a22 x2 + · · · + a2n xn = b2 ,

.. .. . .. . (1.1)


 . + . + .. + . = ..
 a x + a x + ··· + a x = b .
m1 1 m2 2 mn n m
1.4 Propriétés des formes quadratiques 9

où les coefficients aij sont des réels. Les nombres b1 , b2 , · · · , bm sont appelés
les membres libres du système (1.1) ou les seconds membres. En posant
   
x1 b1
 x2   b2 
A = (aij , 1 ≤ i ≤ m, 1 ≤ j ≤ n), x =  ..  , b =  ..  ,
   
 .   . 
xn bm

Le système (1.1) peut s’écrire sous la forme matricielle suivante :

Ax = b. (1.2)

Tout vecteur x vérifiant les équations (1.1) s’appelle solution du système. Le


système (1.1) est dit compatible s’il possède une ou plusieurs solutions. Dans
le cas contraire, il est dit incompatible ou impossible. Lorsque le vecteur b
est nul, le système (1.2) est dit homogène. Tout système homogène possède
la solution triviale x = 0.

Définition 1.3.1. Le système linéaire (1.2) est dit de rang complet en lignes
si rang(A) = m, m ≤ n, et de rang complet en colonnes si rang(A) =
n, m ≥ n.

Lemme 1.3.1. Soit m ≤ n et rang(A) = m. Alors le système Ax = b admet


toujours des solutions, quelque soit le second membre b :
a) une et une seule solution si m = n,
b) une infinité de solutions si m < n.

1.4 Propriétés des formes quadratiques


Définition 1.4.1. Une fonction F : Rn −→ R, est dite forme quadratique
de n variables x1 , x2 , · · · , xn si elle s’écrit sous la forme suivante :
n X
X n
F (x) = aij xi xj = xT Ax (1.3)
i=1 j=1

où xT = (x1 , x2 , · · · , xn ) est un n-vecteur ligne et A = (aij , 1 ≤ i, j ≤ n) est


une matrice carrée d’ordre n.
1.4 Propriétés des formes quadratiques 10

Pour i 6= j, le coefficient du terme xi xj s’écrit aij + aji . En vertu de


cela, la matrice A peut être supposée symétrique. En effet, en définissant de
nouveaux coefficients
dij = dji , 1 ≤ i, j ≤ n.
On obtient une nouvelle matrice D symétrique telle que
aij + aji
D = (dij , 1 ≤ i, j ≤ n), avec dij = dji = .
2
Il est clair qu’après une redéfinition des coefficients, la valeur de la forme
quadratique F (x) reste inchangée pour tout point x ∈ Rn :
F (x) = xT Ax = xT Dx.
Pour cela, il est naturel de considérer que la matrice d’une forme quadratique
est toujours symétrique.

1.4.1 Gradient d’une forme quadratique


Définition 1.4.2. Soit F : Rn −→ R une fonction réelle continûment
différentiable. Son gradient au point x est défini par :
 ∂F 
∂x1
(x)
 ∂F (x) 
 ∂x2
∇F (x) =  (1.4)

.. 
 . 
∂F
∂xn
(x)
Soit F une forme quadratique et D sa matrice symétrique associée :
F (x) = xT Dx. (1.5)
En écrivant la matrice D sous forme de vecteurs colonnes
D = (d1 , d2 , · · · , dn ),
l’expression (1.5) peut se mettre sous la forme suivante :
 T 
d1 x
 dT2 x 
 .  n
 .  X
 . 
F (x) = (x1 , x2 , · · · , xj , · · · , xn )  T  = xj dTj x.
d
 j  x
 .  j=1
 .. 
dTn x
1.4 Propriétés des formes quadratiques 11

La dérivée partielle de F par rapport à chaque variable xj est donnée par :


∂F
(x) = x1 d1j + · · · + xj−1 d(j−1)(j) + dTj x + xj djj + · · · + xn dnj
∂xj
= x1 d1j + · · · + xj−1 d(j−1)(j) + xj djj + · · · + xn dnj + dTj x
= 2dTj x

Par conséquent, le gradient de F (x) est :

∇F (x) = 2Dx. (1.6)

Définition 1.4.3. Soit une fonction réelle de classe C 2 , F : Rn −→ R. Le


Hessien de la fonction F est défini par :
 
2 ∂F ∂F ∂F ∂F
∇ F (x) = ∇ ∂x1 (x), ∇ ∂x2 (x), · · · , ∇ ∂xj (x), · · · , ∇ ∂xn (x)

 ∂2F ∂2F ∂2F 


∂ 2 x1
(x) ∂x1 ∂x2
(x) ··· ∂x1 ∂xn
(x)
∂2F ∂2F ∂2F . (1.7)

∂x2 ∂x1
(x) ∂ 2 x2
(x) ··· ∂x2 ∂xn
(x) 
=
 
 .. .. .. .. 
 . . . . 
∂2F ∂2F ∂2F
∂xn ∂x1
(x) ∂xn ∂x2
(x) ··· ∂ 2 xn
(x)

Définition 1.4.4. Soit F : Rn −→ R une fonction de classe C 1 . La dérivée


directionnelle de F dans la direction d au point x est :
0 F (x + td) − F (x)
F (x; d) = lim+
t→0 t
∂F ∂F
= (x + td)|t=0 d1 + · · · + (x + td)|t=0 dn
∂x1 ∂xn
= (∇F (x))T d.

1.4.2 Forme quadratique définie et semi-définie posi-


tive
Soit F (x) = xT Dx une forme quadratique avec D symétrique.
Définition 1.4.5. F est dite définie positive si xT Dx > 0, ∀x ∈ Rn et x 6= 0.
elle est dite semi-définie positive ou définie non négative si xT Dx ≥ 0, ∀x ∈
Rn .
1.4 Propriétés des formes quadratiques 12

Définition 1.4.6. F est dite définie négative si xT Dx < 0, ∀x ∈ Rn et x 6= 0.


Elle est dite semi-définie négative ou définie non positive si xT Dx ≤ 0, ∀x ∈
Rn .
Définition 1.4.7. Une matrice symétrique D est dite matrice définie positive
(respectivement non négative) et on note D  0 (respectivement D  0)
si elle est associée à une forme quadratique définie positive (respectivement
non négative).

1.4.3 Critère de Sylvester pour les formes quadratiques


définies et semi-définies
L’intérêt du critère du Sylvester est de caractériser une forme quadra-
tique définie ou semi-définie. Pour cela, considérons la matrice symétrique
suivante :  
d11 d12 · · · d1n
 d21 d22 · · · d2n 
D =  ..
 
.. .. 
 . . . 
dn1 dn2 · · · dnn
Le mineur de la matrice D, formé des lignes i1 , i2 , · · · , ip et les colonnes
j1 , j2 , · · · , jp , sera noté comme suit :

di1 j1 di1 j2 · · · di1 jp


di2 j1 di2 j2 · · · di2 jp
 
i1 i2 · · · ip
D = .. .. .. .
j1 j2 · · · jp . . .
dip j1 dip j2 · · · dip jp

Ce mineur est dit principal si : i1 = j1 , i2 = j2 , · · · , ip = jp , c’est-à-dire s’il


est formé des lignes et des colonnes portant les mêmes numéros.
Les mineurs suivants :
d11 d12 · · · d1n
d11 d12 d21 d22 · · · d2n
D1 = d11 , D2 = , · · · , Dn = .. .. .. ,
d21 d22 . . .
dn1 dn2 · · · dnn

sont appelés mineurs principaux sucessifs. Alors, le critère de Sylvester se


formule comme suit :
1.4 Propriétés des formes quadratiques 13

Théorème 1.4.1 (Critère de sylvester). (i) Pour que la matrice D soit


définie positive (D  0), il est nécessaire et suffisant que tous ses mi-
neurs principaux successifs soient positifs :

D1 > 0, D2 > 0, · · · , Dn > 0; (1.8)

(ii) Pour que la matrice D soit semi-définie positive (D  0), il est


nécessaire et suffisant que tous ses mineurs principaux soient non négatifs :
 
i1 , i2 , · · · , ip
D ≥ 0, 1 ≤ i1 < i2 < · · · < ip ≤ n, p = 1, 2, · · · , n.
i1 , i2 , · · · , ip
(1.9)

Remarque 1.4.1. Pour qu’une matrice D soit définie négative (D ≺ 0) ou non


positive (D  0), les conditions (1.8) et (1.9) se reformulent ainsi :
(i) D ≺ 0 ⇔ (−1)p Dp >  0, p = 1, 2,  · · · , n.
i ,
1 2 i , · · · , ip
(ii) D  0 ⇔ (−1)p D ≥ 0, 1 ≤ i1 < i2 < · · · < ip ≤
i1 , i2 , · · · , ip
n, p = 1, 2, · · · , n.
Remarque 1.4.2. Le critère de Sylvester n’est valable que pour les matrices
symétriques.

1.4.4 Propriétés des matrices définies et semi-définies


positives
Les matrices symétriques définies ont des propriétés très intéressantes. En
voici quelques unes :

Propriété 1.4.1. Soit la matrice D partitionnée de la manière suivante :

 m k 
D= D11 D21 m , m + k = n.
D21 D22 k

Si D > 0 (D ≥ 0), alors les sous-matrices principales D11 et D22 sont définies
positives (non négatives). D’une manière générale, toute sous-matrice prin-
cipale d’une matrice définie positive (non négative) est aussi définie positive
(non négative).
1.5 Éléments d’analyse convexe 14

Propriété 1.4.2. Un élément de la diagonale d’une matrice symétrique D


définie non négative ne peut s’annuler que si les autres éléments de la même
ligne et colonne s’annulent aussi.
Propriété 1.4.3. Soit D une matrice symétrique définie non-négative. Si
x ∈ Rn est un point quelconque fixe tel que xT Dx = 0, alors on aura Dx = 0.

1.5 Éléments d’analyse convexe


Dans les problèmes d’optimisation, avec ou sans contraintes, une notion va
jouer un rôle très important : celle de convexité. En effet, pour la plupart des
algorithmes, la convergence vers un optimum global ne pourra être démontrée
qu’avec des hypothèses de convexité.

1.5.1 Ensembles convexes


Définition 1.5.1. Un ensemble S ⊂ Rn est dit convexe si et seulement si :
∀x, y ∈ S, ∀λ ∈ [0, 1], on a λx + (1 − λ)y ∈ S. (1.10)
Cette définition peut s’interpréter en disant que S est convexe si et seule-
ment si pour deux points quelconques x et y pris dans S, le segment [x, y]
tout entier est contenu dans S.
Définition 1.5.2. Soit S = {p1 , p2 , . . . , pk } un ensemble de k points de Rn .
• Un point p ∈ Rn peut être obtenu par :
– Combinaison linéaire des points de S si
k
X
p= λi pi , λi ∈ R, i = 1, k.
i=1

– Combinaison affine des points de S si


k
X k
X
p= λi pi , λi = 0.
i=1 i=1

– Combinaison conique des points de S si


k
X
p= λi pi , λi ≥ 0 pour i = 1, k.
i=1
1.5 Éléments d’analyse convexe 15

– Combinaison convexe des points de S si


k
X k
X
p= λi pi , λi = 1, λi ≥ 0, i = 1, k.
i=1 i=1

• On définit l’enveloppe conique (respectivement convexe) des points de


S comme l’ensemble des points de Rn pouvant être obtenus par com-
binaison conique (respectivement convexe) des points de S.
• L’espace affine (respectivement espace vectoriel) engendré par les points
de S est l’ensemble des points de Rn pouvant être obtenus par combi-
naison affine (respectivement linéaire) des points de S.
• Les points de S sont dits affinement indépendants (respectivement
linéairement indépendants) si aucun des points de S ne peut être ob-
tenu par une combinaison affine (respectivement linéaire) des autres
points de S.
Propriété 1.5.1. Un ensemble S de points de Rn est convexe si et seulement
si toute combinaison convexe de points de S est encore un point de S.
Exemple 1.5.1. L’ensemble S = {x ∈ Rn , x = x0 + αd, α ≥ 0} est convexe,
où d ∈ Rn est un vecteur non nul, et x0 ∈ Rn est un point fixe.
En effet, pour tout x1 , x2 ∈ S et pour tout λ ∈ [0, 1], on a

x1 = x0 + α1 d, x2 = x0 + α2 d,

où α1 , α2 ∈ R+ . Donc

λx1 + (1 − λ)x2 = λ(x0 + α1 d) + (1 − λ)(x0 + α2 d)


= x0 + [λα1 + (1 − λ)α2 ]d.

Comme λα1 + (1 − λ)α2 ≥ 0, alors λx1 + (1 − λ)x2 ∈ S.


Théorème 1.5.1. Soient S1 et S2 deux ensembles convexes de Rn . Alors
1. S1 ∩ S2 est convexe ;
2. S1 ± S2 = {x1 ± x2 | x1 ∈ S1 , x2 ∈ S2 } est convexe.
Théorème 1.5.2. Soit S ⊂ Rn un ensemble convexe. Alors
1. l’intérieur de S, noté IntS, est un ensemble convexe ;
2. la clôture S de S est un ensemble convexe.
1.5 Éléments d’analyse convexe 16

1.5.2 Fonctions convexes


Définition 1.5.3. On dit qu’une fonction f : S ⊂ Rn −→ R, définie sur un
ensemble convexe S, est convexe, si elle vérifie :
∀x ∈ S, ∀y ∈ S, ∀λ ∈ [0, 1] , on a : f (λx + (1 − λ)y) ≤ λf (x) + (1 − λ)f (y).
Une fonction f est dite strictement convexe si l’inégalité ci-dessus est stricte
pour x 6= y et λ ∈ ]0, 1[.
Une fonction f est dite concave si (−f ) est convexe.
L’interprétation géométrique de cette définition est que le graphe d’une
fonction convexe est toujours en dessous du segment reliant les points (x, f (x))
et (y, f (y)).
Exemple 1.5.2. Un des exemples basiques de fonctions convexes est la fonction
indicatrice. Soit S ⊂ Rn un sous-ensemble non vide ; la fonction indicatrice
IS : Rn → R ∪ {+∞} est définie par

0, si x ∈ S,
IS (x) =
+∞, ailleurs.
La fonction indicatrice IS est convexe si et seulement si S est convexe.
Exemple 1.5.3. On définit la fonction distance :
dS (x) = inf {ky − xk | y ∈ S},
où S ⊂ Rn est un ensemble convexe non vide et k.k est une norme quelconque
dans Rn . Alors dS est une fonction convexe.
Une fonction convexe peut aussi être décrite par son épigraphe.

Définition 1.5.4. Soit S ⊂ Rn un ensemble non vide et f : S → R. L’en-


semble
{(x, f (x)) : x ∈ S} ⊂ Rn+1
décrivant la fonction f est appelé le graphe de la fonction f .
Définition 1.5.5. Soit S ⊂ Rn un ensemble non vide. Soit f : S ⊂ Rn → R.
L’épigraphe de f , noté epif , est un sous-ensemble de Rn+1 défini par
epif = {(x, α)|f (x) ≤ α, x ∈ S, α ∈ R}.
L’hypographe de f , noté hypf , est un sous-ensemble de Rn+1 défini par
hypf = {(x, α)|f (x) ≥ α, x ∈ S, α ∈ R}.
1.5 Éléments d’analyse convexe 17

Les théorèmes suivants indiquent la relation entre une fonction convexe


et la convexité de epif .

Théorème 1.5.3. Soient S ⊂ Rn un ensemble convexe non vide et f : S ⊂


Rn → R. Alors, f est convexe si et seulement si epif est un ensemble convexe.

Démonstration. Supposons que f est convexe. Soient x1 , x2 ∈ S et (x1 , α1 ), (x2 , α2 ) ∈


epif . D’après les définitions de la fonction convexe et de l’épiraphe, il s’ensuit

f (λx1 + (1 − λ)x2 ) ≤ λf (x1 ) + (1 − λ)f (x2 ) ≤ λα1 + (1 − λ)α2

pour tout λ ∈ [0, 1]. Comme S est un ensemble convexe, λx1 + (1 − λ)x2 ∈ S.
D’où
(λx1 + (1 − λ)x2 , λα1 + (1 − λ)α2 ) ∈ epif,
ce qui implique que epif est convexe.
Supposons, maintenant, que epif est convexe, et soient x1 , x2 ∈ S. On a
(x1 , f (x1 )), (x2 , f (x2 )) ∈ epif . D’après la convexité de epif , on a

(λx1 + (1 − λ)x2 , λf (x1 ) + (1 − λ)f (x2 )) ∈ epif, pour λ ∈ [0, 1].

Donc
f (λx1 + (1 − λ)x2 ) ≤ λf (x1 ) + (1 − λ)f (x2 )
pour tout λ ∈ [0, 1]. D’où f est convexe.

Théorème 1.5.4. 1. Soient f une fonction convexe sur un ensemble convexe


n
S ⊂ R et un nombre réel α ≥ 0. Alors αf est aussi une fonction
convexe sur S.
2. Soient f1 , f2 deux fonctions convexes sur un ensemble convexe S. Alors
f1 + f2 est aussi une fonction convexe sur S.
3. Soient f1 , f2 , . . . , fm des fonctions convexes sur P
un ensemble convexe S
et α1 , α2 , . . . , αm ≥ 0, des nombres réels. Alors m i=1 αi fi est aussi une
fonction convexe sur S.

Dans le cas où f : S ⊂ R → R, on a le résultat suivant :

Propriété 1.5.2. Si f : S → R est deux fois continûment dérivable sur S


convexe, alors f est convexe si et seulement si f 00 (x) ≥ 0, ∀x ∈ S. Elle est
strictement convexe si f 00 (x) > 0, ∀x ∈ S.
1.6 Semi-continuité inférieure 18

Théorème 1.5.5. Soit f : Rn → R. Si f est continûment différentiable, les


conditions a) et b) ci-dessous sont équivalentes ;
Si f est deux fois continûment différentiable, les conditions a), b) et c) ci-
dessous sont équivalentes :
a) f est convexe ;
b) ∀x, ∀y : f (y) ≥ f (x) + ∇f T (x)(y − x) ;
c) ∀x, le hessien ∇2 f (x) est une matrice semi-définie positive (y T ∇2 f (x)y ≥
0, ∀y ∈ Rn ).

Corollaire 1.5.1. Soit f une forme quadratique définie par


1
f (x) = xT Ax − bT x.
2
Alors f est convexe si et seulement si A  0, et strictement convexe si et
seulement si A  0.

Cela provient du fait que ∇2 f (x) = A.

Définition 1.5.6. On dit qu’un problème de programmation mathématique


est convexe s’il consiste à minimiser une fonction convexe (respectivement
maximiser une fonction concave) sur un domaine convexe.

1.6 Semi-continuité inférieure


De façon générale, une fonction convexe peut être très compliquée sur le
bord de son domaine. Par exemple, la fonction

0 si x2 + y 2 < 1,
f (x, y) = (1.11)
φ(x, y) si x2 + y 2 = 1, avec φ(x, y) ≥ 0

est convexe. Cependant, son comportement sur le bord peut être arbitraire-
ment complexe. Minimiser de telles fonctions est en général impossible. Cette
remarque nous mène à nous restreindre à la classe de fonctions semi-continues
inférieurement.

Définition 1.6.1. Un ensemble S ⊂ Rn est compact si et seulement s’il est


fermé et borné.
1.7 Sur les polyèdres et les polytopes 19

Définition 1.6.2 (Fonction semi-continue inférieurement). Une fonction f :


Rn → R ∪ {+∞} est dite fermée ou semi-continue inférieurement si :

∀x ∈ Rn , ∀xn −→ x, lim inf f (xn ) ≥ f (x).


n→+∞

Proposition 1.6.1. Soit f : Rn → R ∪ {+∞}. Les propositions suivantes


sont équivalentes :
i) f est semi-continue inférieurement.
ii) Quel que soit α ∈ R, l’ensemble de niveau {x ∈ Rn |f (x) ≤ α} est
fermé.
iii) epi(f ) est un ensemble fermé.
Définition 1.6.3. La fonction f : Rn → R est coercive si et seulement si

lim f (x) = +∞.


kxk→+∞

1.7 Sur les polyèdres et les polytopes


On note par S l’ensemble suivant :

S = {x ∈ Rn |Ax ≤ b} ,

où b est un vecteur de Rm et A une matrice à m lignes et n colonnes, m et


n étant des nombres finis.
On a


 a11 x1 + a12 x2 + · · · + a1n xn ≤ b1 ,
 a21 x1 + a22 x2 + · · · + a2n xn ≤ b2 ,

Ax ≤ b ⇔ .. .. . .. .


 . + . + .. + . ≤ ..
 a x + a x + ··· + a x ≤ b .
m1 1 m2 2 mn n m

Définition 1.7.1. L’ensemble S obtenu par l’intersection d’un nombre fini


de demi-espaces de Rn (chacun de ces demi-espaces correspondant à une
des lignes du système matriciel Ax ≤ b), constitue ce que l’on nomme un
polyèdre.
Définition 1.7.2. Un polyèdre borné, i.e. un polyèdre pour lequel il existe
un nombre B tel que chaque point du polyèdre a des coordonnées comprises
entre −B et B, est un polytope.
1.7 Sur les polyèdres et les polytopes 20

Théorème 1.7.1. Un polyèdre est un ensemble convexe.


Définition 1.7.3. Le polyèdre S est de dimension k, noté dim(S) = k, si le
nombre de points de S affinement indépendants est (k + 1). Le polyèdre S a
pleine dimension si dim(S) = n.
Définition 1.7.4. Un point x d’un polyèdre S est un point extrême de S si,
dans toute expression de x comme combinaison convexe de deux points x1
et x2 de S, on a forcément x1 = x2 = x.
Définition 1.7.5. Soit S = {x ∈ Rn |Ax ≤ b} un polyèdre dans Rn .
• Une inéquation aT x ≤ a0 est une inéquation valide pour S si elle est
vérifiée par chacun des points de S.
Si aT x ≤ a0 est une inéquation valide pour S, elle définit une face F
de S, avec F := x ∈ Rn |x ∈ S, aT x = a0 .
• Une face F de S est une face propre de S si F 6= ∅ et F 6= S.
• Une face F d’un polyèdre S est une facette de S si dim(F ) = dim(S)−1.
Théorème 1.7.2. Un point x est un point extrême d’un polyèdre S si et
seulement si x est une face de dimension 0 de S.
Une autre manière d’énoncer le théorème 1.7.2 est :
Un point x0 est un point extrême d’un polyèdre S si et seulement s’il existe
un vecteur c tel que x0 est l’unique solution optimale du problème suivant :

cT x −→ max, x ∈ S.

Théorème 1.7.3. Un polyèdre a un nombre fini de faces.


Définition 1.7.6. Un ensemble convexe C de points de Rn est un cône si
x ∈ C implique (λx) ∈ C pour tout λ ≥ 0.
Un cône est pointé s’il possède un point extrême.
Définition 1.7.7. Le cône de récession du polyèdre S est le polyèdre S0 =
{x ∈ Rn |Ax ≤ 0}.
Propriété 1.7.1. Si S est un polytope, alors S0 ne contient que le point 0,
i.e. rang(A) = n.
Définition 1.7.8. Si S n’est pas vide, alors r ∈ S0 \ {0} est un rayon de S.
Un rayon r de S est un rayon extrême de S s’il n’existe pas deux rayons de
S, r1 et r2 , tels que r1 6= λr2 pour tout λ ≥ 0, avec r = 21 r1 + 12 r2 .
1.8 Exercices 21

Une autre manière de caractériser les rayons extrêmes d’un polyèdre est
donnée par le théorème suivant :

Théorème 1.7.4. Soit S = {x ∈ Rn |Ax ≤ b} un polyèdre dans Rn . Si S


n’est pas vide, le vecteur r est un rayon extrême de S si et seulement si
{λr|λ ∈ R, λ ≥ 0} est une face de dimension 1 de S0 .

Corollaire 1.7.1. L’ensemble (polytope ou polyèdre) convexe :

S = {x ∈ Rn |Ax ≤ b}

a un nombre fini τ (S) de points extrêmes et τ (S) ≤ Cnm .

Corollaire 1.7.2. Tout point d’un polytope S ⊂ Rn est combinaison convexe


des points extrêmes de S.

Corollaire 1.7.3. Tout point d’un polyèdre S ⊂ Rn est combinaison convexe


des points extrêmes de S, à laquelle s’ajoute éventuellement une combinaison
linéaire, à coefficients positifs, de rayons extrêmaux.

1.8 Exercices
Exercice 1.8.1. Soit A ∈ Mn (R) telle que AT A = AAT . On suppose qu’il
existe p ∈ N tel que Ap = 0.
a) Montrer que AT A = 0.
b) En déduire que A = 0.
Exercice 1.8.2. Soit A ∈ Mn (R). Montrer que la matrice AT A est diagonali-
sable à valeurs propres positives.
Exercice 1.8.3. – Soit A une matrice carrée réelle d’ordre n et S = AT A.
Montrer que S est symétrique semi-définie positive.
– Réciproquement, montrer que pour toute matrice S symétrique posi-
tive, il existe une matrice A carrée réelle de format n telle que S = AT A.
A t-on l’unicité de A ?
– Montrer que S est définie positive si et seulement si A est inversible.
– Montrer que rang(A) = rang(S).
Exercice 1.8.4. 1. Soit A ∈ Rm×n et b ∈ Rm . Utiliser la définition de la
convexité pour montrer que l’ensemble S = {x ∈ Rn : Ax ≥ b} est un
ensemble convexe.
1.8 Exercices 22

2. Pour chacune des propositions suivantes, dire si elle est juste ou fausse :
– L’ensemble S ⊂ Rn est dit fermé quand tout point de S est un point
frontière.
– Si S ⊂ Rn est ouvert alors S est convexe.
Exercice 1.8.5. Etudier la convexité des fonctions suivantes :
1. f1 (X1 , X2 ) = 10X1 + 10X2 + 100 − X12 − 2X1 X2 − X22
2. f2 (X1 , X2 ) = X12 + 2X1 X2 + 100X1 + 100X2
3. f3 (X1 , X2 ) = X1 eX1 +X2 , X1 , X2 ≥ 0.
4. f (X1 , X2 , X3 ) = 3X12 + 2X22 + X32 − 2X1 X2 − 2X1 X3 + 2X2 X3 − 6X1 −
4X2 − 2X3
Exercice 1.8.6. Etudier la nature des formes quadratiques suivantes :
1. z = X12 + X22 ;
2. z = (X1 + X2 )2 ;
3. z = X12 − X22 .
Exercice 1.8.7. Calculer la jacobienne de la fonction f définie de R2 dans R3
et pour tout (x, y) de R2 , on a :

f (x, y) = (ex + y 3 , y, 3 cosh x + sinh y)T .

Exercice 1.8.8. Montrer que la fonction suivante est convexe :

f (x) = 3x21 + 2x22 + x23 − 2x1 x2 − 2x1 x3 + 2x2 x3 − 6x1 − 4x2 − 2x3 .

Exercice 1.8.9. Calculer le gradient et le hessien de la fonction de Rosen-


brock :
f (x) = 100(x2 − x21 )2 + (1 − x1 )2 .
Chapitre 2

Optimisation non linéaire sans


contraintes

2.1 Formulation mathématique d’un problème


d’optimisation
Il existe différents problèmes d’optimisation. Certaines caractéristiques
permettent de les distinguer : comportent-ils des contraintes ? les fonctions
objectifs sont-elles linéaires ? sont-elles quadratiques ? sont-elles convexes ? les
domaines de définition des fonctions sont-ils continus ou discrets ? le problème
contient-il une seule ou plusieurs fonctions objectifs ? Tous ces problèmes
possèdent des structures différentes et ne peuvent être traités de la même
façon.
Un problème d’optimisation continue se présente habituellement sous la forme
suivante : 
f (x) −→ min,
(2.1)
x ∈ S.

Définition 2.1.1. Le vecteur x = (x1 , . . . , xn ) est appelé vecteur des va-


riables de décision du problème ; la fonction f : Rn → R est la fonction ob-
jectif ; S est généralement défini par une collection de contraintes exprimées
sous forme d’égalités et d’inégalités, du genre S = {x ∈ Rn , g(x) ≤ 0}, où
g = (g1 , · · · , gm )T est une fonction de Rn dans Rm .

Définition 2.1.2. Un vecteur x0 est dit solution optimale du problème (2.1)


si pour tous les vecteurs x ∈ S, on a f (x) ≥ f (x0 ).

23
2.1 Formulation mathématique d’un problème d’optimisation 24

Définition 2.1.3. Le problème d’optimisation (2.1) est dit programme linéaire


si les fonctions f, g1 , . . . , gm sont linéaires, i.e., elles vérifient
f (αx + βy) = αf (x) + βf (y),
gi (αx + βy) = αgi (x) + βgi (y), i = 1, m,
pour tous x, y ∈ Rn et tous α, β ∈ R.
Ici, on a
S = {x ∈ Rn , gi (x) ≤ 0, i = 1, . . . , m}.
Si l’une au moins de ces fonctions n’est pas linéaire, le problème est dit
programme non-linéaire.
Définition 2.1.4. Le problème d’optimisation (2.1) est dit convexe si la fonc-
tion objectif f et les contraintes g1 . . . , gm sont convexes, i.e., elles vérifient
f (αx + βy) ≤ αf (x) + βf (y),
gi (αx + βy) ≤ αgi (x) + βgi (y), i = 1, m,
pour tous x, y ∈ Rn et tous α, β ∈ R, avec α + β = 1, α ≥ 0, β ≥ 0.
Conséquence 2.1.1. Un programme linéaire est alors un programme d’op-
timisation convexe.
On peut considérer l’optimisation convexe comme une généralisation de la
programmation linéaire.
Dans ce chapitre, nous allons étudier le problème de minimisation d’une
fonction non linéaire f : Rn → R, qu’on notera
min f (x). (2.2)
x∈Rn

Exemple 2.1.1. On voudrait installer une antenne pour connecter 4 clients


importants. Cette antenne doit se trouver au plus proche de chaque client,
en donnant priorité aux meilleurs clients.
Pour chaque client, on connait :
– sa localisation : les coordonnées (x, y) ;
– le nombre d’heures de communication par mois.
Le problème consiste à trouver (x, y) tel que
p p
min 200 (xp − 5)2 + (y − 10)2 + 150 2
p (x − 10) + (y − 5)
2

+200 x2 + (y − 10)2 + 300 (x − 12)2 + y 2


2.2 Minima locaux et globaux 25

Figure 2.1 – Exemple

2.2 Minima locaux et globaux


Les minima locaux et globaux de f sur Rn sont définis de la manière
suivante :

Définition 2.2.1. Un vecteur x0 ∈ Rn est un minimum local de f sur Rn si

∃ > 0 tel que f (x0 ) ≤ f (x), ∀x ∈ Rn , avec kx − x0 k < .

Définition 2.2.2. Un vecteur x0 ∈ Rn est un minimum global de f sur Rn


si
f (x0 ) ≤ f (x), ∀x ∈ Rn .

Remarque 2.2.1. Les maxima locaux et globaux sont définis de manière si-
milaire. Notons que x0 est un maximum local (respectivement global) de la
fonction f sur l’ensemble Rn si x0 est un minimum local (respectivement
global) de la fonction (−f ) sur Rn .
2.2 Minima locaux et globaux 26

Il découle de cette observation que tout problème de maximisation peut


être réduit immédiatement à un problème de minimisation (et inversement)
en multipliant la fonction objectif par -1.
Remarque 2.2.2. Le problème (2.2) peut ne pas admettre de solutions opti-
males, comme dans la figure suivante :

Remarque 2.2.3. Le problème (2.2) peut aussi admettre une infinité de solu-
tions optimales, comme dans la figure suivante :
2.3 Théorèmes généraux d’existence 27

Remarque 2.2.4. Dans le cas d’une fonction objectif convexe, il n’y a pas de
distinction entre minimum local et global : tout minimum local est également
global, comme l’établit le théorème suivant :
Théorème 2.2.1. Soit f : S ⊆ Rn → R une fonction convexe définie sur un
ensemble convexe S. Alors, tout minimum local est également un minimum
global. Si f est strictement convexe, alors il existe au plus un minimum global
de f .

2.3 Théorèmes généraux d’existence


Théorème 2.3.1 (Weierstrass). Soit S ⊂ Rn un ensemble non vide. Si
f : S ⊂ Rn → R une fonction semi-continue inférieurement sur S compact
(fermé et borné), alors il existe x0 ∈ S tel que
minf (x) = f (x0 ).
x∈S

Théorème 2.3.2. Si f : S ⊂ Rn → R une fonction continue sur Rn . Si f


est coercive, i.e.,
lim f (x) = +∞,
kxk→∞

alors le problème (2.2) admet une solution optimale x0 ∈ Rn .


L’unicité résulte en général des propriétés de convexité de f .
Avant de prouver les théorèmes 2.3.1 et 2.3.2, considérons les résultats sui-
vants sur les fonctions coercives.
Proposition 2.3.1. Soit S un sous ensemble fermé de Rn . Si f : S ⊂ Rn →
R est semi-continue inférieurement sur S alors ∀c ∈ R, l’ensemble
S(c) = {x ∈ S/f (x) ≤ c}
est fermé.

Démonstration. Soit c ∈ R et supposons que S(c) 6= ∅. Soit xk ⊂ S(c) une
suite de S(c) convergeant vers x.
Comme S est fermé, alors x ∈ S.
D’autre part, comme f est semi-continue inférieurement, alors de f (xk ) ≤ c,
on déduit
f (x) ≤ lim inf f (xk ) ≤ c.
k→+∞

D’où x ∈ S(c) et S(c) est fermé.


2.3 Théorèmes généraux d’existence 28

Proposition 2.3.2. Soit S un sous ensemble fermé de Rn . Si f : S ⊂ Rn →


R est semi-continue inférieurement et coercive, alors ∀c ∈ R, l’ensemble

S(c) = {x ∈ S/f (x) ≤ c}

est fermé et borné (compact).

Démonstration. L’ensemble S(c) est fermé d’après la proposition 2.3.1. Démontrons


que S(c) est borné. Supposons le contraire : il existe alors une suite {xk } ⊂
S(c) de S(c) telle que
lim kxk k = +∞.
k→∞

Comme f est coercive, alors

lim f (xk ) = +∞.


k→∞

Or
xk ∈ S(c) ⇒ f (xk ) ≤ c, ∀k.
D’où
+∞ = lim f (xk ) ≤ c < +∞.
k→∞

Ce qui nous amène à une contradiction.


Démonstration du théorème 2.3.1. On suppose que S 6= ∅. Soit {xk } ⊂ S
une suite minimisante telle que

lim f (xk ) = inf f (x).


k→∞ x∈S
 0
Comme S est borné, on peut extraire une sous-suite xk convergeant vers
x∗ .
Comme S est fermé, alors x∗ ∈ S. Par ailleurs, f est semi-continue inférieurement,
alors
f (x∗ ) ≤ lim
0
f (xk0 ) = lim f (xk ) = inf f (x).
k →∞ k→∞ x∈S

D’où
f (x∗ ) = inf f (x).
x∈S
2.4 Caractérisation des solutions optimales 29

Démonstration du théorème 2.3.2. Soit c ∈ R et considérons l’ensemble

S(c) = {x ∈ S/f (x) ≤ c} .

f étant coercive et semi-continue inférieurement, alors d’après la proposition


2.3.2, l’ensemble S(c) est compact.
D’après le théorème 2.3.1, il existe x∗ ∈ S(c) tel que

f (x∗ ) = inf f (x) = inf f (x).


x∈S(c) x∈S

Corollaire 2.3.1. Soit f : Rn → R une fonction semi-continue inférieurement


sur Rn et coercive. Alors le problème

min f (x)
x∈Rn

a une solution optimale x∗ .


Démonstration. Soit x0 ∈ Rn quelconque. En supposant que la fonction f
est coercive, il existe une constante M > 0 telle que

∀x ∈ Rn : kxk ≥ M ⇒ f (x) ≥ f (x0 ).

Le problème se ramène donc à un problème d’optimisation sur la boule com-


pacte S = {x ∈ Rn : kxk ≤ M } qui est non vide et le théorème 2.3.1 s’ap-
plique.
Pour beaucoup de problèmes d’optimisation sans contraintes, les princi-
pales méthodes de résolution connues ne permettent pas la détermination
d’un minimum global, on se contente d’optimums locaux.

2.4 Caractérisation des solutions optimales


2.4.1 Conditions nécessaires d’optimalité
Étant donné un vecteur x0 , nous souhaiterions être capables de déterminer
si ce vecteur est un minimum local ou global de la fonction f . La propriété
de différentiabilité de f fournit une première manière de caractériser une
solution optimale.
2.4 Caractérisation des solutions optimales 30

Théorème 2.4.1 (Condition nécessaire du premier ordre). Si x0 est un mi-


nimum local du problème (2.1) et supposons que f : Rn → R est continûment
∂f
différentiable (f est continue et ses dérivées partielles ∂xi
sont continues) sur
n 0
un ensemble ouvert S ⊂ R contenant x .
Alors
∇f (x0 ) = 0.

Démonstration. Soit d ∈ Rn un vecteur quelconque. On a

g(α) = f (x0 + αd) ≥ f (x0 ), ∀α ∈ R/(x0 + αd) ∈ S.

En utilisant l’hypothèse que f est différentiable, on obtient

f (x0 + αd) − f (x0 ) dg(0) f (x0 + αd) − f (x0 )


0 ≤ lim = = lim ≤ 0.
>
α→0 α dα <
α→0 α

D’où
dg(0)
= dT ∇f (x0 ) = 0.

Comme d est choisi arbitrairement, alors

∇f (x0 ) = 0.

Définition 2.4.1. Les points x0 tels que ∇f (x0 ) = 0 sont appelés points
critiques (ou stationnaires) de f .

Remarque 2.4.1. Si f est convexe, la condition nécessaire du premier ordre


est également suffisante pour que x0 soit un minimum global.

Théorème 2.4.2 (Condition nécessaire du second ordre). Soient f : Rn →


R, deux fois continûment différentiable et x0 ∈ Rn . Si x0 est un minimum
local (ou global) de f , alors ∇f (x0 ) = 0 et ∇2 f (x0 ) est semi-définie positive.

Démonstration. Supposons que f est deux fois continûment différentiable et


d ∈ Rn un vecteur quelconque.
Pour tout ∀α ∈ R, le développement de Taylor d’ordre 2 s’écrit :

α2 T 2
f (x0 + αd) − f (x0 ) = α[∇f (x0 )]T d + d ∇ f (x0 )d + o(α2 ).
2
2.4 Caractérisation des solutions optimales 31

En utilisant la condition ∇f (x0 ) = 0 et le fait que x0 est un minimum local,


on déduit l’existence d’un  > 0 (suffisamment petit) tel que

f (x0 + αd) − f (x0 ) 1 T 2 0 o(α2 )


∀α ∈ (0, ) : 0 ≤ = d ∇ f (x )d + .
α2 2 α2
Le passage à la limite quand α → 0 et l’utilisation de la relation

o(α2 )
lim =0
α→0 α2

entrainent
dT ∇2 f (x0 )d ≥ 0
ce qui démontre que ∇2 f (x0 ) est une matrice semi-définie positive.

2.4.2 Conditions sufffisantes d’optimalité


Les conditions données précédemment sont nécessaires, c’est-à-dire qu’elles
doivent être satisfaites pour tout minimum local (ou global) ; cependant, tout
vecteur vérifiant ces conditions n’est pas nécessairement un minimum.
Exemple 2.4.1. Soit la fonction

f (x) = −x4 , x ∈ R.

Le point x0 = 0 satisfait les conditions nécessaires du premier et du second


ordre :
0 00
f (x0 ) = −4x3 |x=0 = 0, f (x0 ) = −12x2 |x=0 = 0 ≥ 0.

Néanmoins, le point x0 = 0 ne constitue pas un minimum de la fonction f .


Il est au contraire un maximum global :

∀x ∈ R, f (x) = −x4 ≤ 0 = f (0).

Le théorème qui suit établit une condition suffisante pour qu’un vecteur
soit un minimum local, si f est deux fois continûment différentiable.

Théorème 2.4.3 (Condition suffisante du second ordre). Soient f : Rn → R,


deux fois continûment différentiable et x0 ∈ Rn . Si ∇f (x0 ) = 0 et ∇2 f (x0 )
est définie positive, alors x0 est un minimum local de f .
2.5 Étude de quelques exemples 32

Démonstration. Le développement de Taylor de la fonction f à l’ordre 2, au


voisinage de x0 s’écrit :
1
f (x0 + l) − f (x0 ) = lT ∇2 f (x0 )l + o(k l k2 ).
2
Toute direction l ∈ Rn , tendant vers 0, peut être écrite sous la forme

l = θd, où k d k= 1 et θ > 0 (assez petit).

On aura alors
o(θ2 )
 
0 0 0 0 2 1 T 2 0
f (x + l) − f (x ) = f (x + θd) − f (x ) = θ d ∇ f (x )d + 2 .
2 θ
Comme
dT ∇2 f (x0 )d > 0
et
o(θ2 )
lim= 0,
θ→0 θ 2

alors pour tout nombre positif θ > 0 assez petit, on aura

f (x) = f (x0 + θd) > f (x0 ),

ce qui prouve que x0 est un minimum local de f .

2.5 Étude de quelques exemples


2
Exemple 2.5.1. Soit f (x) = 1 − e−x .
On a à résoudre le problème suivant :

minf (x).
x∈R

On a
0 2
f (x) = 0 ⇔ 2xe−x = 0 ⇔ x = 0,
et
00 2 2
f (x)|x=0 = 2e−x − 4x2 e−x |x=0 = 2 > 0.
Le point x0 = 0 est un minimum local de f .
On peut remarquer que le point x0 = 0 est un minimum global de f .
2.5 Étude de quelques exemples 33

Exemple 2.5.2. Soit

f (x1 , x2 ) = x21 + x22 − 2x1 x2 + x1 → min

sur R2 .
On a  ∂f
 ∂x1
= 2x1 − 2x2 + 1 = 0
∇f (x) = 0 ⇔
∂f
= 2x2 − 2x1 = 0

∂x2

Les équations n’étant pas compatibles, il s’ensuit alors que le problème posé
n’a pas de solution. Le maximum de f n’existe pas non plus, puisque la
condition nécessaire du premier ordre est la même que pour le minimum.
Exemple 2.5.3. Soit

f (x1 , x2 ) = x21 − x22 − 2x1 x2 + x1 → min

sur R2 .
Cherchons les points stationnaires
 ∂f
 ∂x1 = 2x1 − 2x2 + 1 = 0 −1 1
∇f (x) = 0 ⇔ ⇒ x1 = , x2 = .
 ∂f 4 4
∂x2
= −2x2 − 2x1 = 0
2.6 Exercices 34

−1 1
Calculons le hessien de f au point x0 = ( 4 4
)

∂ 2f ∂ 2f ∂ 2f ∂ 2f
= 2, = = −2, = −2.
∂x21 ∂x1 ∂x2 ∂x2 ∂x1 ∂x22
Donc  
2 0 2 −2
∇ f (x ) = = M,
−2 −2
où
M1 = 2 > 0; M2 = det M = −8 < 0
Le hessien n’est pas semi-définie positif. Il s’ensuit alors que le point x0 =
( −1
4
1
4
) ne constitue pas un minimum de f .
−1 1 1
f( , ) = − > −1 = f (0, 1).
4 4 8
2 2
Exemple 2.5.4. Soit f (x) = f (x1 , x2 ) = e−x1 −x2 à minimiser sur R2 .
On a
−x2 −x2
 ∂f
 ∂x1 = −2x1 e 1 2 = 0
⇒ x1 = x2 = 0.
 ∂f −x21 −x22
∂x2
= −2x2 e =0
D’autre part, au point x0 = (0, 0), on a

∇2 f (x0 ) < 0.

Le point x0 = (0, 0) ne constitue pas donc un minimum pour la fonction f .


La fonction f admet le point x0 = (0, 0) comme maximum.

2.6 Exercices
Exercice 2.6.1. Soit f : Rn → R.
a) Démontrer que si f est convexe, alors tout minimum local est global.
b) Supposons que f est une forme quadratique. Démontrer une condition
nécessaire et suffisante pour que f soit strictement convexe.
c) Déterminer les valeurs de a, b et c telles que la fonction

f (x, y, z) = x2 + 2axy + by 2 + cz 2 ,

soit convexe sur R3 .


2.6 Exercices 35

d) Déterminer, si possible, les valeurs de a et b telles que

f (x) = x3 + ax2 + bx

admette :
1. un point maximum local au point x = −1 et un point minimum
local au point x = +1.
2. un point maximum local au point x = +1 et un point minimum
local au point x = 0.
Exercice 2.6.2. Soit ϕ la fonction définie sur R par

ϕ(x) = x exp(−x2 /2), pour x ∈ R

et f la fonction définie sur R2 par

f (x, y) = xy exp((−x2 − y 2 )/2), pour (x, y) ∈ R2 .

1. Déterminer les extrema de ϕ sur R et préciser leurs natures.


2. Déterminer les extrema de f sur R2 et préciser leurs natures.
Exercice 2.6.3. Supposons que f : R → R est convexe, et a et b du domaine
de définition de f avec a < b.
(a) Montrer que

b−x x−a
f (x) ≤ f (a) + f (b), ∀x ∈ [a, b].
a−x x−b
(b) Montrer que

f (x) − f (a) f (b) − f (a) f (b) − f (x)


≤ ≤ , ∀x ∈]a, b[.
x−a b−a b−x
(c) Supposons que f est différentiable. Utiliser le résultat de (b) (ou la
définition de f convexe) pour démontrer que

f (b) − f (a)
f 0 (a) ≤ ≤ f 0 (b).
b−a
(d) Supposons que f est deux fois différentiable. Utiliser le résultat de
(c) pour montrer que f 00 (a) ≥ 0 et f 00 (b) ≥ 0
2.6 Exercices 36

Exercice 2.6.4. – Montrer que la fonction f définie sur R2 par



f (x, y) = 2x2 + y 2 − 3xy + 2x + 1, (x, y) ∈ R2 ,

admet un unique point de minimum global sur R2 que l’on déterminera.


– Minimiser la fonction suivante sur son domaine de définition :
n
Y
g(x1 , x2 , · · · , xn ) = xxi i .
i=1

Exercice 2.6.5. Soit f : R2 −→ R la fonction définie par

f (x1 , x2 ) = x31 − 3x1 1 + x22 .




a) f admet-elle des points critiques ? des extrêma locaux ? justifier.


b) Soit g : [0, 2π] −→ R la fonction définie par

g(t) = f (cos t, sin t)

1. Montrer que g 0 (t) = −6 sin t cos(2t)


2. Trouver les points critiques de g.
3. Etudier la variation de g.
4. Déduire les extrêma de g.

Exercice 2.6.6. Considérons la fonction suivante :


4θ − 7
h(θ) =
θ2 +θ−2
– Identifier tous les points stationnaires de h ;
– Parmi ceux-ci, identifier tous les minima locaux de h ;
– Identifier des points où la fonction n’est pas bornée.
Exercice 2.6.7. Considérons la fonction suivante :

h(θ) = 1 − 12θ + 7.5θ2 − θ3 .

– Identifier tous les points stationnaires de h ;


– Parmi ceux-ci, identifier tous les minima locaux de h.
Exercice 2.6.8. a) Montrer que si f : Rn → R est strictement convexe et
possède un minimum, alors celui-ci est unique.
2.6 Exercices 37

b) L’affirmation suivante, spécifier si elle est vraie ou fausse. Justifier la


réponse.
Soient f : Rn → R et x∗ tel que ∇f (x∗ ) = 0 et ∇2 f (x∗ ) est semi définie
positive. Alors x∗ est un minimum local de f .
Exercice 2.6.9. – Soit f : Rn → R définie par
1 (x−µ)2
∀x ∈ R, f (x) = √ e− 2 .

On fixe x1 , . . . , xn ∈ R. Résoudre le problème suivant :
" n #
Y
max f (xi ) .
µ∈R
i=1

– Déterminer les extrema, s’ils existent, de la fonction suivante :

f (x, y) = x2 y 2 + x2 + y 2 + 2axy (a ≥ 0).

Exercice 2.6.10. Soient n ≥ 2 et f : Rn → R la fonction définie par


n−1
X
3
f (x) = (1 + xn ) x2i + x2n .
i=1

Montrer que 0 est le seul point critique de f , que f y atteint un minimum


local strict, mais pas global.
Chapitre 3

Les méthodes numériques pour


l’optimisation sans contraintes

3.1 Introduction
Comme la stationnarité de f est une condition nécessaire d’optimalité,
pratiquement toutes les méthodes de minimisation sans contrantes dans Rn
consistent à rechercher un point x∗ stationnaire (∇f (x∗ ) = 0).
Ce problème est équivalent à la résolution d’un système d’équations non
linéaires :
∂f
gi (x) = (x) = 0, i = 1, · · · , n.
∂xi
On peut chercher à résoudre directement ce système, ce qui conduit à la
méthode de Newton. Cependant, il faut se rappeler que cette méthode présente
quelques inconvénients :
i) la divergence de la méthode, si le point de départ est trop éloigné de
x∗ ,
ii) elle exige que la fonction f soit deux fois continûment différentiable
et exige le calcul des dérivées secondes.
C’est pourquoi, les méthodes les plus couramment utilisées sont basées sur un
principe général assez simple, mais dont l’analyse des conditions de conver-
gence sont complexes : on les appelle méthodes de descente. Il s’agit de
procédures itératives de construction d’une suite de points {xk } telle que la
fonction f décroı̂t d’une itération à une autre, i.e.,

f (xk+1 ) < f (xk ), k = 0, 1, · · · .

38
3.2 La méthode du gradient 39

Le processus itératif général de construction de la suite {xk } a la forme


suivante :
xk+1 = xk + θk dk , k = 0, 1, · · · (3.1)
où dk est une direction d’amélioration ou de descente et θk le pas le long de
cette direction.
Le problème restant posé et qui différencie les différentes méthodes numériques
est le choix du pas θk et de la direction dk à chaque itération.

3.2 La méthode du gradient


3.2.1 Interprétation physique du gradient
Pour une fonction différentiable f : Rn → R, le gradient ∇f (x0 ) de f au
point x0 se définit comme suit :

f (x0 + 4x) − f (x0 ) = (∇f (x0 ))T 4x + o(k4xk), (3.2)

où
o(k4xk)
lim = 0.
k4xk→0 k4xk

Une autre interprétation du gradient peut se faire de la manière suivante :


soit x0 ∈ Rn . De x0 , on choisit une direction de déplacement d ∈ Rn , kdk = 1,
et on pose :
x(θ) = x0 + θd, θ ≥ 0.
Le point x(θ) est le point atteint après un déplacement le long de la direction
d avec un pas θ. Estimons la variation de la valeur de la fonction f en passant
du point x0 au point x0 + θd. La relation (3.2) prend la forme suivante :
 
0 0 0 T o(θ)
f (x + θd) − f (x ) = θ (∇f (x )) d + .
θ

Pour des valeurs de θ ≥ 0 voisines de zéro, le signe de l’expression f (x0 +


θd) − f (x0 ) dépendra du signe de (∇f (x0 ))T d.
Pour avoir la relation f (x0 + θd) < f (x0 ), ie., une diminution de la valeur de
f (x) lors du passage du point x0 au point x0 + θd, on devrait choisir θ ≥ 0
assez petit et la direction d ∈ Rn de façon à avoir (∇f (x0 ))T d < 0.
3.2 La méthode du gradient 40

Définition 3.2.1. La direction d ∈ Rn est appelée direction de descente, si

(∇f (x0 ))T d < 0 (3.3)

Le processus itératif (3.1) de construction de la suite {xk } prend la forme

xk+1 = xk + θk dk , k = 0, 1, · · · (3.4)

avec, si ∇f (xk ) 6= 0, la direction dk est choisie de façon que


T
∇f (xk ) dk < 0,

(3.5)

et le pas θk est positif. Si ∇f (xk ) = 0, alors le processus itératif est arrêté et


xk+1 = xk (ce qui est équivalent à choisir dk = 0).
En vertu de la relation (3.5) de dk et du gradient ∇f (xk ), on appelle les
algorithmes de ce type ”méthodes du gradient”. Certains auteurs réservent
le terme ”méthode du gradient” pour le cas particulier où dk = −∇f (xk ).
Il existe une large variété de possibilités pour choisir la direction dk et le pas
θk dans les méthodes du gradient.

3.2.2 Sélection des directions de descente


Plusieurs méthodes du gradient s’écrivent sous la forme :

xk+1 = xk − θk Dk ∇f (xk ), (3.6)

où Dk est une matrice symétrique définie positive. Dans ce cas, la direction
dk s’écrit
dk = −Dk ∇f (xk )
et la condition de descente
T
∇f (xk ) dk < 0


peut s’écrire
T
− ∇f (xk ) Dk ∇f (xk ) < 0


et qui est vérifiée puisque Dk > 0.


On donne quelques exemples de choix de la matrice Dk .
3.2 La méthode du gradient 41

Méthode de la descente la plus rapide (méthode de la plus forte


pente, steepest descent)
On pose Dk = I, k = 0, 1, 2, · · · où I est la matrice identité n × n.
Dans ce cas, le processus itératif (3.6) prend la forme

xk+1 = xk − θk ∇f (xk ), k = 0, 1, 2, · · · (3.7)

Nous allons justifier ci-après l’appelation de méthode de la plus forte pente.


En partant du point xk et en se mouvant le long de la direction d, la fonction
f (x) va varier avec une vitesse donnée par la dérivée directionnelle de f au
point xk dans la direction d, soit :

f (xk + θd) − f (xk )  T


f 0 (xk ; d) = lim = ∇f (xk ) d.

θ→0
θ

Pour des directions d telles que kdk = 1, la vitesse de variation de la fonction


f sera maximale pour
∇f (xk )
dk = (3.8)
k∇f (xk )k
En effet, on a d’après l’inégalité de Cauchy-Schwartz
T
∇f (xk ) d ≤ k∇f (xk )kkdk = k∇f (xk )k


et pour dk vérifiant (3.8), on a


 T  
 k T
 ∇f (xk ) ∇f (xk )
∇f (x ) dk = .
k∇f (xk )k

Ainsi, le gradient ∇f (xk ) constitue la meilleure direction de croissance à


partir du point xk . La direction opposée à celle du gradient (−∇f (xk ) ) est
la meilleure direction de descente à partir de xk .
L’inconvénient de la méthode de descente rapide est sa lente convergence.

3.2.3 Sélection du pas


Il existe un certain nombre de règles de choix du pas θk dans la méthode
du gradient. Nous allons présenter les plus couramment utilisées.
3.2 La méthode du gradient 42

a) Règle du minimum
Elle consiste à choisir, à l’itération k, le pas θk minimisant la fonction f
dans la direction dk , c-à-d

f (xk + θk dk ) = min f (xk + θdk ). (3.9)


θ≥0

b) Règle du minimum réduit


C’est une version de la règle du minimum qui est la plus utilisée. On fixe
un scalaire s > 0 et θk est défini par

f (xk + θk dk ) = min f (xk + θdk ). (3.10)


θ∈[0,s]

Remarque 3.2.1. La résolution des problèmes d’optimisation (3.9) et (3.10)


se fait par des méthodes d’optimisation unidimentionnelle.

c) Règle du pas constant


Ici, on fixe pour toutes les itérations

θk = s, k = 0, 1, · · · (3.11)

La règle du pas constant est la plus simple. Toutefois, si le pas est grand, il
y-a risque de divergence et quand le pas est trop petit, la vitesse de conver-
gence serait très lente. Ainsi la règle du pas constant n’est utile que pour les
problèmes où la valeur appropriée du pas est connue ou peut être facilement
calculée.
Exemple 3.2.1. On considère la fonctionnelle quadratique suivante :

f (x1 , x2 ) = 8x21 + 4x1 x2 + 5x22 .

On applique la méthode du gradient à pas optimal, en partant du point initial


! 
(0) 
(0) x1 10
x = (0) = ,
x2 10

pour trouver le minimum de f .


3.2 La méthode du gradient 43

– On calcule le gradient de f :
 
16x1 + 4x2
∇f (x) = .
4x1 + 10x2
– On calcule la valeur du gradient au point x(0) :
 
(0) 200
∇f (x ) = .
140
– On calcule le point x(1) :
     
(1) (0) (0) (0) 10 (0) 200 10 − 200α(0)
x = x −α ∇f (x ) = −α = .
10 140 10 − 140α(0)
– On cherche la valeur optimale de α(0) . Pour ce, on calcule f (x(1) ) puis
on détermine α(0) permettant de minimiser f (x(1) ). On a
f (x(1) ) = 8(10 − 200α(0) )2 + 4(10 − 200α(0) )(10 − 140α(0) ) + 5(10 − 140α(0) )2
= −59600 + 1060000α(0)
= ϕ(α(0) ).
On calcule α(0) tel que ϕ0 (α(0) ) = 0, d’où α(0) = 0.056.
– On trouve ainsi  
(1) −1.20
x = .
2.16
– On cherche de la même façon tous les points x(k) jusqu’à ce que le
critère d’arrêt soit satisfait.
Exemple 3.2.2. Utiliser la méthode de la plus forte pente puis de la plus forte
pente accélérée (p=2) pour trouver le minimum de la fonction f définie de
R2 dans R comme suit :
1
f (x1 , x2 ) = x41 − 2x31 + x22 − 3x1 − x1 x2 .
6
On a  3 
4x1 − 6x21 − 3 − x2
∇f (x1 , x2 ) = 1 .
x − x1
3 2
 
0 0
Soit x = . On trouve la direction de la plus forte pente
0
 
0 3
−∇f (x ) = .
0
3.2 La méthode du gradient 44

On minimise donc

g0 (λ) = f (x0 − λ∇f (x0 )) = 81λ4 − 54λ3 − 6λ.

On trouve
λ0 ≈ 0.582.
Notre premier pas nous conduit donc au point
 
1 0 0 1.746
x = x − λ0 ∇f (x ) = .
0

On réitère pour obtenir les valeurs suivantes :


i i i
i x  −∇f
 (x) gi (λ) λi  x 
0 3 1.746
0 81λ4 − 54λ3 − 6λ 0.582
 0   0   0 
1.746 0 1.746
1 0.508λ2 − 3.049λ − 6.590 3
 0   1.746   5.238 
1.746 5.238 2.01
2 752λ4 + 716λ3 + 214λ2 − 27λ − 11 0.05
 5.238   0   5.238 
2.01 0 2.01
3 0.012λ2 − 0.07λ − 11.904 3
5.238 0.264 6.03

Pour la plus forte pente accélérée, après avoir fait 2 pas de la plus forte
pente standard, nous devons faire un pas accéléré, en utilisant la direction
x2 − x0 . On minimise donc la fonction

g2 (λ) = f (x0 + λ(x2 − x0 )) = 9.29λ4 − 10.65λ3 − 4.57λ2 − 5.238λ.

On trouve
λ2 = 1.172
et on atteint le point
 
3 0 2 0 2.05
x = x + λ2 (x − x ) = ,
6.137

qui est prés du minimum global.


3.3 La méthode de Newton 45

3.3 La méthode de Newton


La méthode de Newton est obtenue en posant dans (3.6)
−1
Dk = ∇2 f (xk ) , k = 0, 1, · · · (3.12)

ce qui donne
−1
xk+1 = xk − θk ∇2 f (xk ) ∇f (xk ), k = 0, 1, · · ·

en supposant que ∇2 f (xk ) est une matrice définie positive. Dans le cas où
∇2 f (xk ) n’est pas définie positive, une certaine modification est nécessaire.
L’idée de la méthode de Newton peut s’expliquer de deux manières :
– Lors de la minimisation d’une fonction sur Rn , le problème consistait
à chercher un point x∗ ∈ Rn tel que

∇f (x∗ ) = 0.

La méthode numérique de Newton appliquée à l’équation

g(x∗ ) = ∇f (x∗ ) = 0

construit les approximations successives de la manière suivante :


−1
∂g(xk )

k+1 k
x =x − g(xk ), k = 0, 1, · · · (3.13)
∂x

où 
g1
 ..  ∂g(xk ) ∂gi (xk )
 
g =  . , = .
∂x ∂xj 1≤i,j≤n
gn
En tenant compte du fait que

∂g(xk )
= ∇2 f (xk ) = H(xk ),
∂x
la formule itérative (3.13) s’écrit alors
−1
xk+1 = xk − ∇2 f (xk ) ∇f (xk ), k = 0, 1, · · ·

(3.14)
3.3 La méthode de Newton 46

Le point xk+1 peut être interprété comme la racine de l’approximation


linéaire de la fonction
g(x) = ∇f (x)
au voisinage de xk . On a
∂g(xk )
g(x) ' g(xk ) + (x − xk ) = 0,
∂x
d’où −1
∂g(xk )

k
x−x =− g(xk )
∂x
et −1
∂g(xk )

k+1 k
x=x =x − g(xk )
∂x
ou −1
xk+1 = xk − ∇2 f (xk ) ∇f (xk ).


– Une autre interprétation de la méthode de Newton est la suivante :


elle consiste à minimiser l’approximation quadratique q(x) de f (x) au
voisinage de xk .
T 1
f (x) ' q(x) = f (xk )+ ∇f (xk ) (x−xk )+ (x−xk )T ∇2 f (xk )(x−xk ).

2
Si le hessien H(xk ) = ∇2 f (xk ) est définie positif, le point xk+1 de
la méthode de Newton est alors pris comme étant le minimum de la
fonction q(x) :
0 = ∇q(xk+1 ) = ∇f (xk ) + ∇2 f (xk )(xk+1 − xk ) = 0.
D’où la formule itérative
−1
xk+1 = xk − ∇2 f (xk ) ∇f (xk ).


Cette formule itérative est une itération de la méthode de Newton. Elle


correspond à l’itération plus générale
xk+1 = xk − θk Dk ∇f (xk ), k = 0, 1, · · · (3.15)
 −1
où θk = 1, Dk = ∇2 f (xk ) , ou encore
xk+1 = xk + θk dk
 −1
avec θk = 1, dk = − ∇2 f (xk ) ∇f (xk ).
3.3 La méthode de Newton 47

Remarque 3.3.1. Lorsque le hessien ∇2 f (xk ) n’est pas défini positif, la di-
rection de déplacement dk dans la méthode de Newton peut ne pas être une
direction de descente. En effet, l’expression
T T  2 −1
∇f (xk ) dk = − ∇f (xk ) ∇ f (xk ) ∇f (xk ) = −dTk ∇2 f (xk )dk
 

peut être éventuellement positive et dans ce cas, la direction dk ne serait plus


une direction de descente.
Exemple 3.3.1. On cherche à obtenir le zéro de la fonction
 2 
x + y2 + z2 − 3
F : (x, y, z) 7→  x2 + y 2 − z − 1  .
x+y+z−3

La méthode de Newton s’écrit comme suit :


 (0)
x est donné
x(k+1) = x(k) − (∇F (x(k) ))−1 F (x(k) ).

Dans notre cas, on a


 
2x 2y 2z
∇F (x) =  2x 2y −1  .
1 1 1
 
1
(0)
Premier cas : On choisit x =  0 .
1
Itération 1 : On a  
−1
F (x(0) ) =  −1 
−1
et  
2 0 2
∇F (x(0) ) =  2 0 −1 
1 1 1
d’où
3
 
2
x(1) =  1
2
.
1
3.3 La méthode de Newton 48

Itération 2 : On a
−1
 
2
F (x(1) ) =  3
2

−1
et  
3 1 2
∇F (x(1) ) =  3 1 −1 
1 1 1
d’où
5
 
4
x(2) =  3
4
.
1
Itération 3 : On a
1
 
8
F (x(2) ) =  1
8

0
et  
5/2 3/2 2
∇F (x(2) ) =  5/2 3/2 −1 
1 1 1
d’où
9
 
8
x(3) =  7
8
.
1
On a ainsi
1
 
32
F (x(3) ) =  1
32
.
0

Deuxième cas : On choisit x(0) = 0 0 0 .
Itération 1 : On a  
3
F (x(0) ) =  −1 
−3
et  
0 0 0
∇F (x(0) ) =  0 0 −1  .
1 1 1
3.4 La méthode du gradient conjugué 49

On tombe ainsi sur l’un des cas pathologiques de la méthode de


Newton, lorsque la matrice ∇F est singulière.

3.4 La méthode du gradient conjugué


Dans cette méthode, on utilise un modèle quadratique de f , nous al-
lons donc d’abord présenter l’algorithme appliqué à une fonction fortement
convexe quadratique.

3.4.1 Cas linéaire


Soit f (x) = 12 xT Ax − bx, avec A symétrique définie positive.
On sait alors qu’il existe un minimum unique sur Rn donné par x∗ = A−1 b.
Dans la suite, on note r(x) = Ax − b = ∇f (x) le résidu.
Définition 3.4.1. Les vecteurs non nuls {d1 , · · · , dp } sont dits conjugués par
rapport à la matrice A si
pour tout i 6= j ∈ {1, · · · , p} : dTi Adj = 0.
Lemme 3.4.1. Un ensemble de vecteurs conjugués par rapport à A est un
ensemble de vecteurs linéairement indépendants.
Posons φ(ρ) = f (x + ρd), alors
0
φ (ρ) = ρdT Ad + Axd − bd
et
1
f (x + ρd) = (x + ρd)T A(x + ρd) − b(x + ρd).
2
D’où
0 r(x)d
φ (ρ) = 0 ⇒ ρ = − , (d 6= 0). (3.16)
dT Ad
Théorème 3.4.1. Soit x(0) ∈ Rm et {d0 , · · · , dm−1 } un ensemble de vecteurs
conjugués par rapport à A. On considère la suite définie par
r(x(k) )dk
x(k+1) = x(k) + ρk dk , où ρk = − .
dTk Adk
Alors r(x(k) )di = 0 pour i = 0, · · · , k − 1 et x(k) minimise f et la suite (x(k) )
converge en au plus n itérations.
3.4 La méthode du gradient conjugué 50

Pour pouvoir utiliser la méthode itérative du théorème précédent, il faut


construire un ensemble de vecteurs conjugués par rapport à A. Or, afin de
réduire le nombre d’opérations, on se propose de déduire d(k) à partir de
d(k−1) uniquement.
Dans l’algorithme du gradient conjugué linéaire, on prend
d(k) = −∇f (x(k) ) + βk d(k−1)
T
avec βk tel que d(k) Ad(k−1) = 0, on en déduit
T
d(k) Ad(k−1) = (−∇f (x(k) ) + βk d(k−1) )T Ad(k−1)
T T
= −r(x(k) )Ad(k−1) + βk d(k−1) Ad(k−1)
d’où T
r(x(k) )Ad(k−1)
βk = (k−1)T (k−1) . (3.17)
d Ad
Comme d(k) ∇f (x(k) ) = −kr(x(k) )k22 , on déduit bien une direction de descente.
Remarque 3.4.1. On rappelle que s’il existe un vecteur d tel que dT ∇f (x∗ ) <
0, alors d est une direction de descente de f en x∗ .

Algorithme : Gradient conjugué linéaire


1. Initialisation Choisir x(0) et poser k = 0, r(0) = Ax(0) − b, d(0) = −r(0) .

2. Itération k Tant que kr(x(k) )k > , faire


(k)T (k)
ρk = dr(k)T Ad
r
(k)

x(k+1) = x(k) + ρk d(k)


r(k+1) = r(k) + ρk Ad(k)
(k+1)T (k+1)
βk+1 = r r(k)T rr(k)
d(k+1) = −r(k+1) + βk+1 d(k)
k =k+1
Fin tant que
Notons que les formules pour r(k) et βk+1 ont changé, ceci est possible grâce
au théorème suivant qui affirme en particulier que les d(k) sont conjugués.
Théorème 3.4.2. Soit x(k) 6= x∗ , obtenu après la k ème itération de l’algo-
rithme du gradient conjugué linéaire avec r(k) et βk+1 définis par les équations
(8.17) et (8.18) respectivement. Alors, on a
3.4 La méthode du gradient conjugué 51

(i) r(k) r(i) = 0, pour i = 0, · · · , k − 1 ;


(ii) V ect{r(0) , · · · , r(k) } = V ect{r(0) , Ar(0) · · · , Ak r(k) } ;
(iii) V ect{d(0) , · · · , d(k) } = V ect{d(0) , Ad(0) · · · , Ak d(k) } ;
T
(iv) d(k) Ad(i) = 0 pour i = 0, · · · , k − 1 ;
Commentaires. • On a T
r(k) d(k)
ρk = − (k)T (k) , (3.18)
d Ad
et dans l’algorithme, on a
T
r(k) r(k)
ρk = (k)T (k) (3.19)
d Ad
Montrons l’équivalence de (3.18) et (3.19). On a d(k) = −r(k) +βk d(k−1) ,
donc (3.18) s’écrit comme suit :
(k)T
ρk = − d(k)rT Ad(k) −r(k) + βk d(k−1)

T (k)T
r(k) r(k) (k−1)
= T
d(k) Ad(k)
− βk rd(k)TdAd(k)
T
r(k) r(k)
= T
d(k) Ad(k)

T
car r(k) d(k−1) = 0.
• On a x(k+1) = x(k) + ρk d(k) et r(k) = Ax(k) − b d’où

r(k+1) − r(k) = (Ax(k+1) − b) − (Ax(k) − b)


= (Ax(k+1) − x(k) )
= ρk Ad(k)

d’où
r(k+1) = r(k) + ρk Ad(k) .
• Montrons que
T
r(k) Ad(k−1)
βk = (k−1)T (k−1)
d Ad
et T
r(k) r(k)
βk =
r(k−1)T r(k−1)
sont équivalentes.
On a
r(k) − r(k−1) = ρk−1 Ad(k−1)
3.4 La méthode du gradient conjugué 52

donc
T T r(k) − r(k−1)
r(k) Ad(k−1) = r(k)
ρk−1
d’où
T r(k) − r(k−1)
βk = r(k)
ρk−1 d(k−1)T Ad(k−1)
or T
r(k) r(k) T T
ρk = (k)T (k) ⇒ ρk−1 d(k−1) Ad(k−1) = r(k−1) r(k−1)
d Ad
d’où T
T r(k) − r(k−1) r(k) r(k)
βk = r(k) =
r(k−1)T r(k−1) r(k−1)T r(k−1)
car
T
r(k) r(k−1) = 0, r(k) = d(k) − βk−1 d(k−1)
et r(k) est orthogonal à toutes les directions d(0) , d(1) , · · · , d(k) .

Remarque 3.4.2. 1. Dans la démonstration du théorème, il est essentiel de


choisir d = −∇f (x(0) ). C’est à partir de d(0) que l’on construit des
(0)

gradients orthogonaux et des directions conjuguées.


2. L’algorithme du gradient conjugué linéaire est surtout utile pour résoudre
des grands systèmes creux.
3. La convergence peut être assez rapide, si A admet seulement p valeurs
propres distinctes, la convergence a lieu en au plus p itérations.

3.4.2 Cas non linéaire


Pour pouvoir appliquer l’algorithme du gradient conjugué linéaire au cas
d’une fonction f quelconque, il faut :
– remplacer r(x(k) ) par ∇f (x(k) ) ;
– déterminer ρk par une minimisation unidimentionnelle.

Algorithme du Gradient conjugué non linéaire (Fletcher-Reeves)


1. Initialisation Choisir x(0) , poser k = 0 et calculer f (0) = f (x(0) ) et
∇f (0) = ∇f (x(0) ), d(0) = −∇f (0) .
3.5 La méthode de relaxation 53

2. Itération k Tant que k∇f (k) k > , faire


– Déterminer ρk
– Calculer x(k+1) = x(k) + ρk d(k)
– Calculer ∇f (k+1) = ∇f (x(k+1) )
T
∇f (k+1) ∇f (k+1)
– Calculer βk+1 = T
∇f (k) ∇f (k)
– Calculer d(k+1) = −∇f (k+1)
+ βk+1 d(k)
– Poser k = k + 1.
Fin tant que

3.5 La méthode de relaxation


La dernière méthode que nous présentons permet de ramener un problème
de minimisation dans Rn à la résolution successive de n problèmes de mini-
misation dans R, à chaque itération.
On cherche à minimiser f : Rn → R. On pose X = (x1 , · · · , xn ).
Le principe de la méthode est le suivant : étant donné un itéré X k de coor-
données (xk1 , · · · , xkn ), on fixe toutes les composantes sauf la première et on
minimise sur la première :

min f (x, xk2 , · · · , xkn ), x ∈ R.

On obtient ainsi la première coordonnée de l’itéré suivant X k+1 que l’on note
xk1 ; on peut, pour effectuer cette minimisation dans R, utiliser par exemple
la méthode de Newton dans R. On recommence ensuite en fixant la première
coordonnée à xk+1
1 et les n − 2 dernières comme précédemment. On minimise
sur la deuxième et ainsi de suite.
L’algorithme obtenu est :

Algorithme de relaxation
1. Initialisation Poser k = 0 et choisir X 0 ∈ Rn .

2. Itération k Pour i variant de 1 à n, on calcule la solution xk+1


i de
k+1
min f (xk+1 k+1
1 , x2 , · · · , xi , x, xk+1 k+1
i+1 , · · · , xn ), x ∈ R.

3. Critère d’arrêt – Si kxk+1 − xk k < , stop.


– Sinon, poser k = k + 1 et aller à 2.
3.6 Exercices 54

3.6 Exercices
Exercice 3.6.1. Considérons un problème de minimisation d’une fonction
donnée sous la forme suivante :
m
1X
f (x) = fi (x)2 ;
2 i=1

où fi est deux fois différentiable.


a) Calculer le gradient et le Hessien de f en un point x.
b) Donner l’algorithme de Newton ou autre appliqué pour cette fonction
f.
c) Donner l’algorithme en prenant
1
fi (x) = xT Ai x + bTi x + 1.
2
Exercice 3.6.2. Soit le problème d’optimisation sans contraintes suivant où
la fonction f : R2 → R :

min f (x, y) = 3x2 + 3y 2 .

Pour chacun de ces algorithmes, appliquer deux itérations de la méthode


en prenant comme point de départ (x0 , y 0 ) = (1, 1).
– La méthode du gradient à pas variable ;
– La méthode de Newton ;
– La méthode des gradients conjugués.
Exercice 3.6.3. Dans cet exercice, on étudie une méthode de minimisation
sans contraintes d’une fonction quadratique de la forme :
1
f (x) = xT Ax + xT b + c.
2
Définition 3.6.1. On dit que les vecteurs di , i = 0, . . . , n − 1 sont conjugués
par rapport à une matrice symétrique définie positive A si :

∀i, j ∈ {i = 0, . . . , n − 1}, i 6= j ⇒ dTi Adj = 0.

• On note {di , i = 0, . . . , n − 1} une famille quelconque de vecteurs


conjugués par rapport à une matrice symétrique définie positive A de Rn×n .
On se donne par ailleurs un vecteur b ∈ Rn .
3.6 Exercices 55

Soit un vecteur initial x0 ∈ Rn arbitraire.


A l’étape (k +1), supposant construits les vecteurs x1 , x2 , . . . , xk , ce qui sous-
entend que les vecteurs (Axl + b), l = 0, . . . , k − 1 sont tous différents de zéro,
deux cas peuvent se présenter :
– ou bien Axk + b = 0 et l’algorithme est terminé,
– ou bien Axk + b 6= 0, auquel cas, on définit le nombre

dTk .(Axk + b)
ρk = ,
dTk Adk

puis le vecteur
xk+1 = xk − ρk .dk .
1. Justifier le choix de ρk .
2. En supposant que Axk + b 6= 0, ∀k = 1, . . . , n − 1, exprimer xl , pour l =
1, . . . , n en fonction de x0 , (ρi , i = 0, . . . , n − 1) et (di , i = 0, . . . , n − 1).
3. Montrer que dTk Axk = dTk Ax0 , ∀k = 0, . . . , n − 1.
4. – Calculer dTk (Axn + b).
– Déduire que xn est la solution du système Ax = −b.
– Que peut-on dire sur la convergence de la méthode.
5. Appliquer l’algorithme du gradient conjugué pour résoudre le problème
d’optimisation sans contraintes suivant :

min f (x1 , x2 ) = 10x1 + 10x2 + 100 − x21 − x22 − 2x1 x2 .


(x1 ,x2 )∈R2

Exercice 3.6.4. Soit f : R2 −→ R la fonction définie par

f (x1 , x2 ) = x31 − 3x1 1 + x22 .




a) f admet-elle des points critiques ? des extrêma locaux ? justifier.


b) Soit g : [0, 2π] −→ R la fonction définie par

g(t) = f (cos t, sin t)

1. Montrer que g 0 (t) = −6 sin t cos(2t)


2. Trouver les points critiques de g.
3. Etudier la variation de g.
3.6 Exercices 56

4. Déduire les extrêma de g.

Exercice 3.6.5. Pour chacune des affirmations suivantes, spécifier si elles sont
vraies ou fausses. Justifier la réponse.
1. Soit f : Rn → R une fonction deux fois continûment différentiable et
soit xk tel que ∇2 f (xk ) est définie positive. Alors la direction de Newton
dN est une direction de descente pour f en xk .
2. Soit q : Rn → R telle que
1
q(x) = xT Qx + g T x + c,
2
n×n
avec Q ∈ R symétrique définie positive, g ∈ Rn et c ∈∈ R.
On suppose d1 , . . . , dn Q−conjuguées. Si Q = αI avec α > 0, alors
d1 , . . . , dn sont orthogonales.
3. Soient f : Rn → R et x∗ tel que ∇f (x∗ ) = 0 et ∇2 f (x∗ ) est semi définie
positive. Alors x∗ est un minimum local de f .
Exercice 3.6.6. Soit le problème d’optimisation sans contraintes suivant :
min f (x, y) = 3x2 + 3y 2 .
(x,y)∈R2

1. Appliquer deux itérations de la méthode du gradient à pas fixe en


prenant comme point de départ (x0 , y0 ) = (1, 1).
2. Appliquer deux itérations de la méthode du gradient à pas optimal en
prenant comme point de départ (x0 , y0 ) = (1, 1).
Exercice 3.6.7. Appliquer un algorithme pour résoudre le problème d’opti-
misation sans contraintes suivant :
min f (x1 , x2 ) = 10x1 + 10x2 + 100 − x21 − x22 − 2x1 x2 .
(x1 ,x2 )∈R2

Exercice 3.6.8. Soit A ∈ Mn (R) et J la fonction definie de Rn dans R par


2
J(x) = ekAxk , où k.k designe la norme euclidienne sur Rn .
1. Montrer que J admet un minimum.
2. On suppose que la matrice A est inversible, montrer que ce minimum
est unique.
3. Ecrire l’algorithme du gradient à pas optimal pour la recherche de ce
minimum.
4. A quelle condition suffisante cet algorithme converge-t-il ?
Deuxième partie

Optimisation avec contraintes

57
Chapitre 4

Optimisation non linéaire avec


contraintes

4.1 Introduction
Un problème de minimisation d’une fonction non-linéaire f sous contraintes
x ∈ S ⊂ Rn , où S est défini par une collection de m inégalités et r égalités,
se présente sous la forme suivante :

 f (x) → min,
gi (x) ≤ 0, i = 1, m, (4.1)
hj (x) = 0, j = 1, r.

Les fonctions gi , i = 1, · · · , m et hj , j = 1, · · · , r sont des fonctions réelles de


classe C 1 .
Remarque 4.1.1. Si les fonctions f, gi , i = 1, · · · , m et hj , j = 1, · · · , r sont
linéaires, alors le problème (4.1) est appelé problème de programmation linéaire.
Remarque 4.1.2. Dans un problème de programmation linéaire, l’optimum
est toujours atteint en un point extrême du polyhèdre S.
En programmation non linéaire (ou optimimisation non linéaire), même si le
domaine admissible S est un polyhèdre, le minimum peut être atteint en un
point quelconque de S (en un point extrême, point frontière ou encore point
intérieur).

58
4.1 Introduction 59

Exemple 4.1.1. Soit le problème suivant :




 f (x) = (x1 − 4)2 + (x2 − 6)2 → min,
x1 + x2 ≥ 1,


 2x1 + 3x2 ≤ 12,
x1 ≥ 0, x2 ≥ 0,

L’ensemble S est un polytope et il est représenté sur la figure suivante :

L’équation f (x) = α √= constante > 0 représente un cercle de centre


M (4, 6) et de rayon R = α.
En faisant diminuer (ou augmenter) le nombre α, la valeur de f (x) diminue
(ou augmente). Il s’ensuit alors que le point x∗ , qui est l’intersection des
droites perpendiculaires BC et M x∗ , réalise le minimum de la fonction f sur
l’ensemble S. De plus, le point x∗ se trouve sur l’arête du polyèdre S.
Ici, on trouve
196
x∗ = 24 36
, f (x∗ ) =

13 13
.
13
Exemple 4.1.2. Considérons la fonction :
f (x) = (x1 − 4)2 + (x2 − 1)2 ,
4.2 Théorèmes généraux d’existence 60

et cherchons son minimum sur le même polyèdre précédent S. Cette fois-ci,


le minimum sera atteint au point intérieur

x∗ = 4 1 , f (x∗ ) = 0.


Exemple 4.1.3. Soit la fonction

f (x) = (x1 − 8)2 + x22 ,

et cherchons son minimum sur le même polyèdre précédent S. Cette fois-ci,


le minimum sera atteint au point extrême

x∗ = 6 0 , f (x∗ ) = 4.


Les minima locaux et globaux de f sur Rn sont définis de la manière


suivante :

Définition 4.1.1. Un vecteur x0 ∈ S est un minimum local de f sur S si

∃ > 0 tel que f (x0 ) ≤ f (x), ∀x ∈ S, avec kx − x0 k < .

Définition 4.1.2. Un vecteur x0 ∈ S est un minimum global de f sur S si

f (x0 ) ≤ f (x), ∀x ∈ S.

4.2 Théorèmes généraux d’existence


Considérons le problème d’optimisation suivant :

min f (x). (4.2)


x∈S⊂Rn

Nous allons donner deux résultats très généraux d’existence d’une solution
optimale au problème (4.70).

Théorème 4.2.1. (Existence) Soit S ⊂ Rn (S non vide) et f : S → R semi


continue inférieurement.
– Si S est un ensemble non vide fermé et borné de Rn , alors il existe une
solution optimale x0 ∈ S, qui vérifie donc

f (x0 ) ≤ f (x), ∀x ∈ S.
4.2 Théorèmes généraux d’existence 61

– Si S est un ensemble non vide fermé de Rn et si f est coercive alors il


existe une solution x0 ∈ S qui vérifie

f (x0 ) ≤ f (x), ∀x ∈ S.

Démonstration. – Si S 6=6= ∅ est un sous-ensemble fermé borné de Rn ,


comme f est continue, elle atteint ses bornes sur S, d’où l’existence de
x0 .
– Si f est croissante à l’infini, alors il existe R > 0 tel que si kxk > R
alors f (x) > f (0) ; donc

min f = min f,
S S∩BR

où BR désigne la boule fermée de centre 0 et de rayon R. L’ensemble


S ∩BR est compact, car c’est l’intersection d’un fermé et d’un compact.
Donc, par ce qui précède, il existe x0 ∈ S tel que

f (x0 ) = min f = min f.


S∩BR BR

Théorème 4.2.2. (Unicité) Soit f : S ⊂ Rn → R. On suppose que f est


strictement convexe et que S est convexe. Alors il existe au plus un élément
x0 de S tel que f (x0 ) = minf.
S

Démonstration. Supposons que x0 et x∗ soient deux solutions du problème


(4.70), avec x0 6= x∗ . Alors,
1 1 1 1
min f ≤ f ( x0 + x∗ ) < f (x0 ) + f (x∗ ) = min f.
S 2 2 2 2 S

On aboutit donc à une contradiction.

Théorème 4.2.3. (Existence et Unicité) Soit f : S ⊂ Rn → R une fonction


continue. On suppose que f est strictement convexe et que S est non vide et
convexe fermé sur Rn .
Si S est borné ou f est croissante à l’infini, c’est-à-dire que f (x) → +∞
quand kxk → +∞, alors il existe un unique élément x0 de S solution du
problème de minimisation (4.70), i-e, tel que f (x0 ) = minS f.
4.3 Conditions d’optimalité 62

4.3 Conditions d’optimalité


Afin d’analyser ou de résoudre de manière efficace un problème d’optimi-
sation, il est fondamental de pouvoir disposer de conditions d’optimalité. En
effet, celles-ci nous servent non seulement à vérifier la validité des solutions
obtenues, mais souvent l’étude de ces conditions aboutit au développement
des algorithmes de résolution eux-mêmes.
Des conditions équivalentes peuvent être obtenues de diverses manières, en
procédant à des analyses suivant différentes ”lignes directrices”. L’approche
considérée ici pour l’obtention de ces conditions est basée sur les notions de
descente et de direction admissible.

4.3.1 Conditions nécessaires d’optimalité dans le cas


des contraintes quelconques
Soit f une fonction non linéaire définie de Rn dans R et de classe C 1 . Soit
S un sous-ensemble non vide de Rn et considérons le problème de minimisatin
suivant : 
min f (x),
(4.3)
x ∈ S.
Définition 4.3.1. – Un vecteur x de Rn est dit solution réalisable ou
plan du problème (4.3), si x appartient à l’ensemble des contraintes S.
– Un plan x∗ est appelé solution optimale du problème (4.3), si

f (x∗ ) = min f (x).


x∈S

On dit aussi que x∗ constitue un point de minimum relatif global.


– Un vecteur x0 ∈ S est appelé point de minimum relatif local de la
fontion f , si pour un certain  > 0, il satisfait les relations :

f (x0 ) = min f (x),


x∈B(x0 ,)

B(x0 , ) = x ∈ S, kx − x0 k ≤  .


Définition 4.3.2 (Direction admissible). Soient un ensemble S ⊂ Rn et


x0 ∈ S. Une direction admissible de S en x0 est un vecteur d tel que

d 6= 0 et x0 + αd ∈ S, ∀α ∈ [0, α] pour un certain α > 0.


4.3 Conditions d’optimalité 63

En vertu de cette définition, on peut remarquer que tous les vecteurs d de


n
R sont des directions admissibles, si le point x est un point intérieur de S.
Le problème se posera donc pour les points de la frontière de S. Pour cette
raison, au lieu d’avoir ∇f (x0 ) = 0 comme dans le cas sans contraintes, ici la
condition nécessaire tiendra compte aussi de la nature de l’ensemble S.
La condition telle que nous venons de l’énoncer ne présente malheureuse-
ment que peu d’intérêt en vue d’un usage en pratique,
 car si l’ensemble des
directions de descente de f en x0 , disons A = d| (∇f (x0 ))T d < 0 , peut
être exprimé en fonction du gradient de la fonction objectif, ce n’est pas
nécessairement le cas de l’ensemble de toutes les directions admissibles de S
en x0 , A = {d | d 6= 0 et x0 + αd ∈ S, ∀α ∈ [0, αmax ] pour un certain αmax > 0}.
Il serait avantageux de trouver un moyen de la convertir en une condition
plus pratiquement utilisable mettant en jeu des équations ou des inéquations.

Théorème 4.3.1 (Condition nécessaire d’optimalité). Soit f une fonction


non linéaire, définie de Rn dans R et de classe C 1 . Si x0 est un minimum
local (ou global) du problème (4.3), alors pour toute direction admissible d en
x0 , on a
∇T f (x0 )d ≥ 0. (4.4)

Démonstration. Soit d une direction admissible en x0 . Il existe alors α > 0


tel que x0 + αd ∈ S pour tout α ∈ [0, α].
Considérons la fonction ϕ(α) = f (x0 + αd).
Comme x0 est un minimum local, il existe  > 0 tel que

f (x0 ) ≤ f (x), ∀x ∈ B(x0 , ) ∩ S.

Considérons
Sα = x0 + αd, α ∈ [0, α] .


∀x ∈ Sα ∩ B(x0 , ) ∩ S, on aura

f (x0 ) ≤ f (x).

Soit
e] = α ∈ [0, α] /x0 + αd ∈ Sα ∩ B(x0 , ) ∩ S ,

[0, α
et
ϕ(α) ≥ ϕ(0), ∀α ∈ [0, α
e] .
4.3 Conditions d’optimalité 64

D’où α0 = 0 est un minimum local de ϕ(α) sur [0, α


e].
On a
0
ϕ(α) = ϕ(0) + αϕ+ (0) + o(α)
où
0 ϕ(α) − ϕ(0)
ϕ+ (0) = lim+ .
α→0 α
0
Si ϕ+ (0) était négative, alors pour un nombre α assez petit, on aurait eu

ϕ(α) < ϕ(0).

Ce qui contredirait le fait que ϕ possède un minimum local en α = 0. On a


0
donc bien ϕ+ (0) ≥ 0.
Par conséquent, comme
0
ϕ (α) = [∇f (x0 + αd)]T d,

on obtient
0
ϕ+ (0) = [∇f (x0 )]T d ≥ 0.
La relation (4.4) est alors démontrée.

4.3.2 Conditions d’optimalité pour le cas de contraintes


linéaires de type égalités
a- Condition nécessaire d’optimalité du premier ordre
Considérons dans Rn le problème de programmation non linéaire :

f (x) → min,
(4.5)
g(x) = Ax − b = 0,

où b ∈ Rm , A une matrice d’ordre m × n, formée des vecteurs colonnes et des


vecteurs lignes suivants :
   
AT1 g1 (x)
 AT   g2 (x) 
 2 
A = (a1 , a2 , · · · , an ) =  ..  , g(x) =  ,
 
..
 .   . 
T
Am gm (x)
4.3 Conditions d’optimalité 65

où gi (x) = ATi x − bi , 1 ≤ i ≤ m.


Pour que l’ensemble des solutions réalisables
S = {x ∈ Rn , g(x) = 0} = x ∈ Rn , ATi x − bi = 0, 1 ≤ i ≤ m


ne soit pas vide ou ne soit pas réduit à un point isolé, on considérera que
rangA = m < n.
Proposition 4.3.1. Soit x une solution réalisable du problème (8.5).
Un vecteur d ∈ Rn est alors une direction admissible en x si et seulement si
Ad = 0. (4.6)
De plus, pour un tel vecteur, on a
x(α) = x + αd ∈ S, ∀α ∈ R.
En effet,
g(x(α)) = Ax(α) − b = Ax + αAd − b = 0, ∀(α 6= 0) ∈ R ⇔ Ad = 0.
Remarque 4.3.1. Pour α = 0, x(α) se réduit à x qui vérifie g(x) = 0.
Si donc x0 est un point minimum pour le problème (8.5), alors la fonction
ϕ(α) = f (x0 + αd) pour Ad = 0 admet aussi un minimum au point α = 0.
On en déduit que
dϕ(0)
= ϕT (0) = ∇f T (x0 )d = 0. (4.7)

L’égalité (8.7) montre que le vecteur d est orthogonal au gradient de f au
point minimum x0 . Il est aussi orthogonal à chacun des vecteurs-lignes de la
matrice A :
 
AT1
 AT 
 2 
Ad = 0 ⇒  ..  d = 0 ⇒ ATi d = 0, 1 ≤ i ≤ m.
 . 
ATm

Ceci n’est possible que s’il existe un vecteur λ0 ∈ Rm tel que


m
X
∇f (x0 ) = − λ0i Ai = −AT λ0 . (4.8)
i=1
4.3 Conditions d’optimalité 66

En effet, dans le cas contraire, pour tout vecteur λ ∈ Rm , on aura


m
X
0
∇f (x ) 6= λi Ai .
i=1

Donc le vecteur ∇f (x0 ) n’appartient pas au sous-espace vectoriel engendré


par les vecteurs-lignes de la matrice A.
Il existe alors un vecteur d0 6= 0 tel que

ATi d0 = 0, 1 ≤ i ≤ m, ∇f T (x0 )d0 6= 0.

Ce qui contredit le critère d’optimalité (8.7).


Pour le problème (8.5), introduisons la fonction L(x, λ), appelée fonction de
Lagrange.
Xm
T
L(x, λ) = f (x) + λ g(x) = f (x) + λi gi (x), (4.9)
i=1

où
 
g1 (x)
x = (x1 , x2 , · · · , xn ) ∈ Rn , λ = (λ1 , λ2 , · · · , λm ) ∈ Rm , g(x) =  ..
.
 
.
gm (x)

En termes de fonction de Lagrange, l’égalité (8.8) exprime donc simplement


la condition de stationnarité du point x0 .

∇x L(x0 , λ0 ) = 0.

En effet, on a
m
X m
X
0 0 0
∇x L(x , λ ) = ∇f (x ) + λ0i ∇gi (x0 ) 0
= ∇f (x ) + λ0i Ai = 0. (4.10)
i=1 i=1

D’autre part, la condition g(x0 ) = 0 réalisée pour une solution optimale est
équivalente à la condition de stationnarité du vecteur λ0 de la fonction de
Lagrange :  
g1 (x0 )
∇λ L(x0 , λ0 ) =  ... 0
 = g(x ) = 0. (4.11)
 
0
gm (x )
4.3 Conditions d’optimalité 67

Si l’on note  
∇x L(x, λ)
∇L(x, λ) =  ,
∇λ L(x, λ)
alors la règle des multiplicateurs de Lagrange s’établit ainsi :

Théorème 4.3.2 (Multiplicateurs de Lagrange). Si x0 est un point de mini-


mum relatif local (ou global) pour le problème (8.5), alors il existe un vecteur
unique λ0 ∈ Rm , appelé vecteur des multiplicateurs de Lagrange, tel que

∇L(x0 , λ0 ) = 0 ⇔ ∇x L(x0 , λ0 ) = 0 et ∇λ L(x0 , λ0 ) = 0. (4.12)

Donc si x0 est un point de minimum relatif du problème (8.5), alors le


couple (x0 , λ0 ) est un point stationnaire de la fonction de Lagrange (8.9).
Remarque 4.3.2. Le point x0 n’est pas nécessairement un point de minimum
de la fonction de lagrange L(x, λ) pour λ = λ0 .
Soit x0 un point de minimum relatif du problème (8.5). Il lui correspond
donc un vecteur λ0 = (λ01 , · · · , λ0m ) vérifiant la relation (8.10). Les nombres
λ0i , 1 ≤ i ≤ m, sont dits alors multiplicateurs de Lagrange et ils sont uniques
si et seulement si rangA = m, comme le montre le théorème suivant :

Théorème 4.3.3. Le vecteur des multiplicateurs de Lagrange λ0 est unique


si et seulement si rangA = m.

Démonstration. Soit rangA = m et supposons que pour le point de minimum


x0 , il correspond deux vecteurs λ0 et λ∗ tels que :
m
X m
X
∇f (x0 ) + λ∗i Ai = 0, ∇f (x0 ) + λ0i Ai = 0.
i=1 i=1

On en déduit que
m
X
(λ∗i − λ0i )Ai = 0.
i=1

Comme rangA = m, alors les vecteurs Ai , 1 ≤ i ≤ m sont linéairement


indépendants. Donc, λ∗i = λ0i , 1 ≤ i ≤ m, d’où

λ∗ = λ0 .
4.3 Conditions d’optimalité 68

Inversement, soit λ0 un vecteur unique correspondant au point de minimum


x0 et considérons la combinaison linéaire nulle suivante :
m
X
αi Ai = 0.
i=1

De la relation (8.10), on en déduit :


m
X m
X m
X
0
∇f (x ) + λ0i Ai − αi Ai = ∇f (x ) + 0
(λ0i − αi )Ai = 0.
i=1 i=1 i=1

Donc si λ0i − αi = λ∗i , on aura


m
X
∇f (x ) + 0
λ∗i Ai = 0.
i=1

Le vecteur λ∗ vérifie aussi, comme λ0 , la relation (8.10). En vertu de l’uni-


cité du vecteur des multiplicateurs de Lagrange, on conclut que les vecteurs
αi , 1 ≤ i ≤ m, sont nuls et que les vecteurs Ai , 1 ≤ i ≤ m sont linéairement
indépendants. Par conséquent, rangA = m.
Exemple 4.3.1. Résoudre le problème de minimisation suivant :

 f (x) = 2x21 + x22 + 5x23 → min,
x1 − x2 + x3 = 1,
2x1 + x2 + 5x3 = 0.

On définit la fonction de Lagrange :

L(x, λ) = 2x21 + x22 + 5x23 + λ1 (x1 − x2 + x3 − 1) + λ2 (2x1 + x2 + 5x3 ).

La condition nécessaire d’optimalité est donnée comme suit :

4x1 + λ1 + 2λ2 = 0 (4.13)


2x2 − λ1 + λ2 = 0 (4.14)
10x3 + λ1 + 5λ2 = 0 (4.15)
x1 − x2 + x3 = 1, (4.16)
2x1 + x2 + 5x3 = 0. (4.17)
4.3 Conditions d’optimalité 69

En faisant la somme des équations (4.56), (4.57) et (4.58) et en tenant compte


de (4.60), on obtient

λ1 + 8λ2 = 0 ⇒ λ1 = −8λ2 .

On aura alors
3 −9 3
x1 = λ2 , x2 = λ2 , x3 = λ2 .
2 2 10
10
En utilisant (4.59), on déduit la valeur de λ2 = 63 . D’où

80 5 −5 1 40
λ1 = − , x1 = , x2 = , x3 = , f (x) = .
63 21 7 21 63
On trouve donc un seul vecteur x ∈ Rn qui réalise le minimum de f sur
l’ensemble des contraintes. En effet, la condition nécessaire de Lagrange est
aussi suffisante puisque la fonction considérée ici est strictement convexe. Par
conséquent,
1 40
x∗ = 5 −15 1 , f (x∗ ) = .

21 63

b- Condition nécessaire d’optimalité du second ordre


Considérons le problème (8.5) et supposons de plus que la fonction f est
de classe C 2 . On a alors la condition nécessaire suivante de second ordre.

Théorème 4.3.4. Si x0 est un point de minimum relatif du problème (8.5)


et λ0 le vecteur des multiplicateurs de Lagrange correspondant, alors la forme
quadratique
∇2x L(x0 , λ0 ) (ou ∇2 f (x0 ))
est semi-définie positive sur l’ensemble des points de la variété

Ay = 0. (4.18)

Démonstration. Soit y un vecteur de Rn vérifiant (4.18). On sait déjà que le


vecteur
x(α) = x0 + αy
est solution réalisable du problème (8.5) pour tout α ∈ R.
Posons
ϕ(α) = f (x(α)) = f (x0 + αy).
4.3 Conditions d’optimalité 70

Puisque le point x0 réalise un minimum relatif pour la fonction f , alors la


fonction ϕ(α) admet aussi un minimum en α = 0. D’où

0 dϕ 00 d2 ϕ
ϕ (0) = |α=0 , ϕ (0) = |α=0 ≥ 0.
dα dα2
Donc
dϕ dx(α)
|α=0 = ∇f T (x(α)) |α=0
dα dα
= y T ∇f (x(α)) |α=0
= y T ∇f (x0 )

d2 ϕ dx(α)
2
|α=0 = y T ∇2 f (x(α))
dα dα
T 2
= y ∇ f (x(α))y.

Par conséquent, on obtient

y T ∇2 f (x0 )y ≥ 0 (4.19)

D’autre part, on a
m
T
X
L(x, λ0 ) = f (x) + λ0 g(x) = f (x) + λ0i (ATi x − bi ).
i=1

On en déduit que
m
X
0
∇x L(x, λ ) = ∇f (x) + λ0i Ai
i=1
∇2x L(x, λ0 ) = ∇2 f (x).

En vertu de la dernière égalité et de la relation (4.19), on obtient finalement

y T ∇2x L(x0 , λ0 )y ≥ 0.
4.3 Conditions d’optimalité 71

c- Condition suffisante d’optimalité du second ordre


Théorème 4.3.5. Soit f une fonction de classe C 2 et (x0 , λ0 ) un couple de
vecteurs vérifiant la condition nécessaire d’optimalité du premier ordre pour
le problème (8.5), i.e.,
∇x L(x0 , λ0 ) = 0.
Pour que x0 soit un point de minimum relatif local du problème (8.5), il est
alors suffisant que la forme quadratique
y T ∇2x L(x0 , λ0 )y
soit définie positive sur l’ensemble des points y de la variété Ay = 0.
Démonstration. Soit y un vecteur de Rn vérifiant Ay = 0. Donc x(α) =
x0 + αy est solution réalisable pour tout α ∈ R. Soit
ϕ(α) = f (x(α)) = f (x0 + αy), α ∈ R.
On a alors
0 T dx(α) 0
∇f (x0 + αy) = ∇f (x0 + αy)y ⇒ ϕ (0) = ∇f (x0 )y.

ϕ (α) =

00 00
ϕ (α) = y ∇ f (x + αy)y ⇒ ϕ (0) = y T ∇2 f (x0 )y.
T 2 0

En outre, de la condition nécessaire du premier ordre (8.8), on déduit que


∇f (x0 ) = −AT λ0 .
D’où
0
ϕ (0) = −AT λ0 y = 0,
00
ϕ (0) = y T ∇2 f (x0 )y > 0.
La fonction ϕ admet donc un minimum local en α = 0.
Soit maintenant un vecteur x, solution réalisable du problème (8.5) telle que
kx − x0 k =  > 0.
Il existe donc un vecteur y tel que
k y k= 1, Ay = 0, x = x0 + y.
Il s’ensuit alors que
f (x) = f (x0 + y) = ϕ() > ϕ(0) = f (x0 ).
Le point x0 constitue donc bien un point de minimum pour le problème
(8.5).
4.3 Conditions d’optimalité 72

d- Cas d’une fonction convexe


Considérons le problème

f (x) → min,
(4.20)
x ∈ S = {x ∈ Rn , g(x) = Ax − b = 0}

où f est une fonction convexe de classe C 1 et A une matrice d’ordre m × n,


avec rangA = m < n.
Soit x0 ∈ S et λ0 un m−vecteur tels que le couple (x0 , λ0 ) vérifie la condition
nécessaire d’optimalité du premier ordre, ie,

∇x L(x0 , λ0 ) = ∇f (x0 ) + AT λ0 = 0. (4.21)

Cette dernière relation est aussi suffisante pour l’optimalité du vecteur x0


dans le problème (4.20).
Puisque S est aussi convexe, on peut écrire

f (x) − f (x0 ) ≥ (∇f (x0 ))T (x − x0 ), ∀x ∈ S.

De l’égalité (4.21), on déduit que


T
f (x) − f (x0 ) ≥ −λ0 A(x − x0 ), ∀x ∈ S.

Comme A(x − x0 ) = 0, on déduit

f (x) ≥ f (x0 ).

Ce qui prouve que x0 réalise un minimum pour la fonction objectif du


problème (4.20).
Exemple 4.3.2. A titre d’illustration, calculons le minimum x0 pour une fonc-
tion quadratique convexe :
1
f (x) = xT Dx + cT x,
2
où D est une matrice symétrique définie positive et x ∈ S = {x ∈ Rn , g(x) = Ax − b = 0} .
La condition (4.21) donne alors

Dx0 + c = −AT λ0 ⇒ x0 = −D−1 (AT λ0 + c).


4.3 Conditions d’optimalité 73

D’autre part, on a

Ax0 = b ⇒ −AD−1 AT λ0 − AD−1 c = b.

D’où −1
λ0 = − AD−1 AT (AD−1 c + b).


Par conséquent,
−1
x0 = D−1 AT AD−1 AT (AD−1 c + b) − D−1 c.


Exemple 4.3.3. Résolvons le problème suivant :



 f (x) = x21 + 3x22 + 4x23 − x1
x1 + x2 + x3 = 0,
2x1 − x2 + 5x3 = 1.

On a
   
2 0 0 −1    
1 1 1 0
D =  0 6 0 ,c =  0 ,A = ,b = .
2 −1 5 1
0 0 8 0

En appliquant les résultats de l’exemple précédent, on trouve


 
7
−1 1  7
x0 = D−1 AT AD−1 AT (AD−1 c + b) − D−1 c = −9  , f (x0 ) = .

33 99
2

4.3.3 Conditions d’optimalité pour le cas de contraintes


linéaires de type inégalités
Avant d’aborder le problème, voyons un lemme, appelé lemme de Farkas,
qui joue un rôle très important en optimisation mathématique.
Lemme 4.3.1 (Lemme de Farkas). Soient (m + 1) vecteurs de Rn , c, Ai , i =
1, m, m < n. Si pour chaque vecteur x vérifiant ATi x ≤ 0, 1 ≤ i ≤ m, on a
cT x ≤ 0, alors il existe des coefficients λi ≥ 0, 1 ≤ i ≤ m, tels que
m
X
c= λi Ai .
i=1
4.3 Conditions d’optimalité 74

Démonstration. Sans perte de généralité, on peut supposer que les vecteurs


Ai , 1 ≤ i ≤ m, sont linéairement indépendants. Montrons alors que le vecteur
c appartient au sous-espace engendré par les vecteurs Ai , 1 ≤ i ≤ m, ie
m
X
c= λi A i . (4.22)
i=1

Si ce n’était pas le cas, il existerait alors un vecteur x orthogonal à tous les


vecteurs Ai , 1 ≤ i ≤ m et tel que

ATi x = 0, 1 ≤ i ≤ m, cT x = α > 0. (4.23)

Soit x0 un certain vecteur satisfaisant aux conditions du théorème :

ATi x0 ≤ 0, 1 ≤ i ≤ m, cT x0 = β ≤ 0. (4.24)

Considérons ensuite le vecteur x = x + θx0 où


 α
0 < θ < |β| si β 6= 0,
0<θ si β = 0.

En vertu des relations (4.23) et (4.24), on aura alors

ATi x = ATi x + θATi x0 ≤ 0, 1 ≤ i ≤ m,


cT x = cT x + θcT x0 = α + θβ > 0.

Cette dernière relation contredit l’hypothèse du lemme, l’égalité (4.22) est


donc vraie.
Supposons maintenant que dans la relation (4.22), les coefficients λi ne sont
pas tous positifs ou nuls, par exemple λk < 0. Il existe alors un vecteur x tel
que
ATi x = 0, i 6= k, 1 ≤ i ≤ m, ATk x = αk < 0.
Soit aussi un certain vecteur x0 , satisfaisant aux inégalités

ATi x0 = βi < 0, 1 ≤ i ≤ m.

On construit le vecteur
αk λk
x = x + θx0 , 0 < θ < Pm .
| i=1 λi βi |
4.3 Conditions d’optimalité 75

On aura donc
ATi x = ATi x + θATi x0 = θβi < 0, 1 ≤ i ≤ m, i 6= k;
ATk x = ATk x + θATk x0 = αk + θβk < 0;
mais
m
X m
X
T
c x = λi ATi x = λk ATk x + λi ATi x
i=1 i=1,i6=k
m
X
= λk (αk + θβk ) + θλi βi
i=1,i6=k
m
X
= λk αk + θ λi βi .
i=1
Cette dernière relation contredit l’hypothèse du théorème pour un nombre θ
positif assez petit. Notre supposition sur un certain λk < 0 est donc fausse.
Le lemme de Farkas est ainsi démontré.
Remarque 4.3.3. Ici, la démonstration est faite pour m vecteurs linéairement
indépendants, où m < n. Ce lemme reste vrai, même pour m ≥ n. Il suffit
alors de prendre les λi égaux à zéro pour les vecteurs linéairement dépendants.

a- Condition nécessaire d’optimalité du premier ordre


Soit f une fonction non linéaire définie de Rn dans R et de classe C 1 .
Considérons le problème de minimisation de la fonction f sur l’ensemble S
défini par les inégalités linéaires suivantes :
S = {x ∈ Rn : g(x) = Ax − b ≤ 0} ,
où
       
g1 (x) AT1 x − b1 AT1 b1
g(x) =  .. .. ..  , b =  ..  .
= ,A = 
    
. . .   . 
gm (x) ATm x − bm Am T
bm
On notera ici que le nombre m peut être plus grand que n.
Le problème de minimisation d’une fonction f avec des contraintes linéaires
de type inégalités se résume ainsi :
f (x) → min, (4.25)
gi (x) ≤ 0, i ∈ I = {1, · · · , m} . (4.26)
4.3 Conditions d’optimalité 76

Définition 4.3.3. Tout vecteur x vérifiant les inégalités (4.26) est appelé
solution admissible ou plan du problème (4.25)-(4.26).
Définition 4.3.4. La contrainte gi (x) ≤ 0 sera dite active au point x, si
gi (x) = 0 et passive si gi (x) < 0.
On notera l’ensemble des indices actifs au point x par

Ia = Ia (x) = {i ∈ I : gi (x) = 0} .

On a alors le lemme suivant :


Lemme 4.3.2. Dans les contraintes (4.26), un vecteur y de Rn est une
direction admissible au point x ∈ S si et seulement si

ATi y ≤ 0, i ∈ Ia (x).

Démonstration. Soit y une direction admissible au point x. Il existe alors un


nombre α > 0 assez petit tel que

x(α) = x + αy ∈ S, ∀α ∈]0, α].

On aura donc
Ax − b + αAy ≤ 0.
Puisque

ATi x − bi + αATi y ≤ 0, i ∈ I,
ATi x − bi = 0, ∀i ∈ Ia (x),

alors, en vertu de α > 0, on obtient

ATi y ≤ 0, ∀i ∈ Ia (x).

Inversement, soit y un vecteur tel que

ATi y ≤ 0, ∀i ∈ Ia (x).

Soit le vecteur x(α) = x + αy, où x est une solution admissible du problème
(4.25)-(4.26). On peut alors écrire

gi (x(α)) = ATi x − bi + αATi y = αATi y ≤ 0, ∀i ∈ Ia (x), ∀α ≥ 0;


gi (x(α)) = ATi x − bi + αATi y = gi (x) + αATi y, ∀i ∈ I \ Ia (x).
4.3 Conditions d’optimalité 77

Comme gi (x) < 0, ∀i ∈ I \ Ia (x), on peut alors trouver un nombre α > 0


assez petit tel que
gi (x(α)) = gi (x) + αATi y ≤ 0, ∀i ∈ I \ Ia (x), ∀α ∈ [0, α].
Donc
gi (x(α)) ≤ 0, ∀i ∈ I, ∀α ∈ [0, α].
Ce qui revient à dire que
x(α) = x + αy ∈ S.
Le vecteur y considéré est, par conséquent, une direction admissible au point
x.
Théorème 4.3.6 (Théorème de Karush-Kuhn-Tucker). Soit x0 un point de
minimum du problème (4.25)-(4.26). Il existe alors un m−vecteur λ0 ≥ 0 tel
que :
i) pour la fonction de Lagrange L(x, λ) = f (x) + λT g(x), la condition de
stationnarité est satisfaite :
∇x L(x0 , λ0 ) = 0.
ii) la condition de complémentarité est remplie :
λ0i gi (x0 ) = 0, i ∈ I.
Démonstration. Le vecteur x0 étant un minimum, alors pour toute direction
admissible y en x0 , on aura
∇T f (x0 )y ≥ 0,
et ce, en vertu du théorème (4.3.1).
En utilisant le lemme (4.3.2), on peut écrire
ATi y ≤ 0, ∀i ∈ Ia (x0 ) ⇒ −∇T f (x0 )y ≤ 0.
En vertu du lemme de Farkas, il existe alors des coefficients λ0i ≥ 0, i ∈
Ia (x0 ), tels que X
−∇T f (x0 ) = λ0i Ai .
i∈Ia (x0 )

Posons λ0i = 0 pour i ∈ I\Ia (x0 ). On obtient alors


X
−∇T f (x0 ) = λ0i Ai ⇔ ∇x L(x0 , λ0 ) = 0, λ0i gi (x0 ) = 0, i ∈ I.
i∈I

Le théorème de de Karush-Kuhn-Tucker (KKT) est ainsi démontré.


4.3 Conditions d’optimalité 78

b- Condition nécessaire d’optimalité du second ordre


Théorème 4.3.7. Soit f une fonction de classe C 2 . Si x0 un point de mini-
mum du problème (4.25)-(4.26), alors la forme quadratique

y T ∇2 f (x0 )y

est définie non négative sur l’ensemble de la variété :

ATi y = 0, i ∈ Ia (x0 ), (4.27)

où Ia (x0 ) est l’ensemble des indices actifs en x0 .

Démonstration. Supposons qu’il existe un vecteur y vérifiant (4.27) tel que

y T ∇2 f (x0 )y < 0.

Considérons le vecteur x(α) = x0 + αy. Pour α > 0 assez petit, le vecteur


x(α) est une solution réalisable du problème (4.25)-(4.26). On peut alors
écrire
1
f (x(α)) − f (x0 ) = α∇T f (x0 )y + α2 y T ∇2 f (x0 )y + o(α2 ).
2
En vertu du théorème de Karush-Kuhn-Tucker (4.3.6), on a
X
∇f (x0 ) = − λ0i ATi , λ0i ≥ 0, i ∈ Ia (x0 ).
i∈Ia (x0 )

D’où X
(∇f (x0 ))T y = − λ0i ATi y = 0.
i∈Ia (x0 )

Donc
o(α2 )
 
0 2 1 T 2 0
f (x(α)) − f (x ) = α y ∇ f (x )y + < 0,
2 α2
si α est un nombre positif assez petit.
Cette dernière inégalité contredit le fait que x0 soit un minimum local de f .
Par conséquent, la matrice ∇2 f (x0 ) est définie non négative sur l’ensemble
(4.27).
4.3 Conditions d’optimalité 79

c- Condition suffisante d’optimalité du second ordre


Théorème 4.3.8. Soit x0 un point admissible du problème (4.25)-(4.26)
vérifiant les conditions nécessaires de Karush-Kuhn-Tucker. Si la matrice
∇2 f (x0 ) est définie positive sur l’ensemble (4.27), alors x0 est un point de
minimum du problème (4.25)-(4.26).

d- Cas de fonction convexe


Considérons le problème suivant :

f (x) → min, x ∈ S = {x ∈ Rn : g(x) = Ax − b ≤ 0} (4.28)

où f est une fonction convexe de classe C 1 .


Soit (x0 , λ0 ) un couple de vecteurs vérifiant le théorème de Karush-Kuhn-
Tucker (4.3.6) :
m
X
0
0 0
∇x L(x , λ ) = 0 ⇔ ∇f (x ) = − λ0i ATi , λ0i ≥ 0, 1 ≤ i ≤ m;
i=1
λ0i gi (x0 ) = 0, 1 ≤ i ≤ m.

Alors le vecteur x0 constitue un point minimum global du problème (4.28).


En effet, on peut écrire, du fait que f est convexe et S convexe,

f (x) − f (x0 ) ≥ ∇T f (x0 )(x − x0 ), ∀x ∈ S.

D’où m
X
0
f (x) − f (x ) ≥ − λ0i ATi (x − x0 ), ∀x ∈ S.
i=1

Puisque λ0i 0
= 0, pour i ∈ I\Ia (x ), alors on aura
X
f (x) − f (x0 ) ≥ − λ0i (ATi x − ATi x0 ),
i∈Ia (x0 )

d’où X
f (x) − f (x0 ) ≥ − λ0i (ATi x − bi ) ∀x ∈ S.
i∈Ia (x0 )

Par conséquent, x0 est un point de minimum global du problème (4.28).


Pour une fonction convexe, les conditions de KKT sont donc à la fois nécessaires
et suffisantes pour l’optimalité du plan x0 .
4.3 Conditions d’optimalité 80

4.3.4 Conditions d’optimalité pour le cas de contraintes


égalités non linéaires
Considérons le problème suivant :

f (x) → min,
(4.29)
x ∈ S = {x ∈ Rn : g(x) = 0}
où f est une fonction non linéaire définie de Rn dans R et de classe C 1 .
g(x) = (g1 (x), g2 (x), · · · , gm (x)) ,
avec gi (x) : Rn → R, 1 ≤ i ≤ m, sont de classes C 1 .
Considérons la fonction de Lagrange :
L(x, λ) = f (x) + λT g(x). (4.30)

a- Conditions nécessaires de premier ordre


Théorème 4.3.9 (Règle des multiplicateurs de Lagrange). Soit x0 une so-
lution optimale du problème (4.29) et supposons que les vecteurs
∇g1 (x0 ), ∇g2 (x0 ), · · · , ∇gm (x0 ) (4.31)
sont linéairement indépendants.
Alors il existe un vecteur multiplicateur de Lagrange (unique) λ0 tel que la
paire (x0 , λ0 ) vérifie les relations appelées conditions de stationnarité de la
fonction de Lagrange :
∇x L(x0 , λ0 ) = 0, ∇λ L(x0 , λ0 ) = 0. (4.32)
Définition 4.3.5. Un point x∗ est appelé point stationnaire du problème
(4.29), s’il existe un vecteur λ∗ tel que la paire (x∗ , λ∗ ) est un point station-
naire de la fonction de Lagrange (4.30) :
∇x L(x∗ , λ∗ ) = 0, ∇λ L(x∗ , λ∗ ) = 0. (4.33)
La recherche des points stationnaires du problème (4.29) se ramène à la
résolution du système (4.33) de (m + n) équations avec (m + n) inconnus
(x, λ).
Ainsi, d’après la règle des multiplicateurs de Lagrange, la résolution du
problème (4.29) (si la solution existe) se ramène à la recherche de la valeur
minimale de la fonction f (x) sur l’ensemble des points stationnaires.
4.3 Conditions d’optimalité 81

Remarque 4.3.4. Contrairement aux fonctions convexes, les solutions opti-


males ne sont pas, en général, des points stationnaires de la fonction de
Lagrange avec λ = λ∗ .
Exemple 4.3.4. Considérons le problème de minimisation suivant :

f (x1 , x2 ) = x32 → min,
g(x1 , x2 ) = x2 − x21 = 0.
La solution optimale étant x0 = (0, 0).  
∂g ∂g ∂g 0
On a ∂x1
(0, 0) = −2x1 |(0,0) = 0, ∂x2
(0, 0) = 1. Le vecteur ∂x
(0, 0) =
1
est un vecteur linéairement indépendant.
On définit la fonction de Lagrange :
L(x, λ) = x32 + λ(x2 − x21 ).
Les conditions de stationnarité sont ainsi données :
∂L
(x, λ) = −2λx1 = 0,
∂x1
∂L
(x, λ) = 3λx22 + λ = 0,
∂x2
∂L
(x, λ) = x2 − x21 = 0,
∂λ

Ainsi à la solution optimale x0 = (0, 0) correspond un multiplicateur de La-


grange λ0 = 0.
On a alors L(x, λ0 ) = L(x, 0) = x32 ; le point x0 = (0, 0) est un point d’in-
flexion de la fonction de Lagrange L(x, 0) = x32 .
Exemple 4.3.5. Considérons le problème de minimisation suivant :

f (x1 , x2 ) = x2 → min,
g(x1 , x2 ) = x2 − x21 = 0.
La solution optimale étant x0 = (0, 0).  
∂g ∂g ∂g 0
On a ∂x1
(0, 0) = −2x1 |(0,0) = 0, ∂x2
(0, 0) = 1. Le vecteur ∂x
(0, 0) =
1
est un vecteur linéairement indépendant.
On définit la fonction de Lagrange :
L(x, λ) = x2 + λ(x2 − x21 ).
4.3 Conditions d’optimalité 82

Les conditions de stationnarité sont ainsi données :


∂L
(x, λ) = −2λx1 = 0,
∂x1
∂L
(x, λ) = 1 + λ = 0,
∂x2

Ce qui donne λ = −1.


On a alors L(x, λ0 ) = L(x, −1) = x21 qui atteint son minimum en x0 = (0, 0).
Exemple 4.3.6. Considérons le problème de minimisation suivant :

f (x1 , x2 ) = −x22 → min,
g(x1 , x2 ) = x2 = 0.

La solution optimale étant x0 = (0, 0).


On définit la fonction de Lagrange :

L(x, λ) = −x22 + λx2 .

On trouve λ = 0. L(x, 0) = −x22 , cette fonction n’atteint pas le minimum


mais le maximum au point x0 = (0, 0).

b- Condition nécessaire du second ordre


Considérons le problème (4.29), où on suppose que f (x) et g(x) sont de
classe C 2 et la solution optimale x0 est telle que les vecteurs (4.31) sont
linéairement indépendants, c-à-d, la solution optimale x0 est régulière.

Théorème 4.3.10. Si x0 est une solution optimale locale régulière du problème


(4.29), λ0 le vecteur multiplicateur de Lagrange correspondant, alors la forme
quadratique suivante est définie non négative :

lT ∇2x L(x0 , λ0 )l ≥ 0 (4.34)

sur l’hyperplan
lT ∇gi (x0 ) = 0, i = 1, · · · , m. (4.35)
4.3 Conditions d’optimalité 83

c- Condition suffisante d’optimalité locale


Considérons le problème (4.29), où on suppose que f (x) et g(x) sont de
classe C 2 .
Théorème 4.3.11. Pour qu’un point stationnaire x0 soit une solution opti-
male locale du problème (4.29), il est suffisant qu’avec le vecteur multiplica-
teur de Lagrange correspondant λ0 , la forme quadratique suivante soit définie
positive :
lT ∇2x L(x0 , λ0 )l > 0 (4.36)
sur l’hyperplan
lT ∇gi (x0 ) = 0, i = 1, · · · , m (4.37)
avec l 6= 0.
Exemple 4.3.7. Trouver les paramètres d’une citerne tels que pour une surface
extérieure donnée S0 , la citerne aurait un volume maximal.
La surface extérieure de la citerne est égale à :

S0 = 2πx22 + 2πx1 x2 .

Le volume de la citerne est :

V = πx22 x1 .

Soient les fonctions suivantes :

f (x1 , x2 ) = −πx22 x1
g(x1 , x2 ) = 2πx22 + 2πx1 x2 − S0 .

Le problème posé est transformé ainsi :



f (x1 , x2 ) → min,
(4.38)
g(x1 , x2 ) = 0.
Le problème obtenu n’est pas équivalent au problème initial, puisqu’on n’a
pas pris en considération les contraintes supplémentaires

x1 ≥ 0, x2 ≥ 0. (4.39)

Mais nous allons résoudre le problème sous forme (4.38) en excluant, si


nécessaire, les solutions ne vérifiant pas les contraintes (4.39). Si le problème
4.3 Conditions d’optimalité 84

(4.38) admet une solution alors le problème posé aurait sa solution parmi les
solutions optimales locales du problème (4.38).
On définit la fonction de Lagrange :

L(x, λ) = −πx22 x1 + λ(2πx22 + 2πx1 x2 − S0 ).

Les points stationnaires vérifient les relations suivantes :

∂L
(x, λ) = −πx22 + 2πλx2 = 0
∂x1
∂L
(x, λ) = −2πx2 x1 + 4πλx2 + 2πλx1 = 0
∂x2
∂L
(x, λ) = 2πx22 + 2πx1 x2 − S0 = 0
∂λ
4.3 Conditions d’optimalité 85

D’où r
S0
x1 = 4λ, x2 = 2λ, λ = ± .
24π
q
0 S0
Choisissons λ = 24π .
Calculons la matrice
   
2 0 0 −2πx2 + 2πλ0 0 −2πλ0
∇x L(x, λ ) = =
−2πx2 + 2πλ0 −2πx1 + 4πλ0 −2πλ0 −4πλ0
L’équation de l’hyperplan (4.37) est
∂g ∂g
( )y1 + ( )y2 = 4πλ0 y1 + 16πλ0 y2 = 0. (4.40)
∂x1 ∂x2
De (4.40), on obtient y1 = −4y2 .
La forme quadratique avec la matrice ∇2x L(x, λ) a la forme
y T ∇2x L(x, λ0 )y = −4πλ0 y1 y2 − 4πλ0 y22
et sur l’hyperplan (4.40), elle devient
y T ∇2x L(x, λ0 )y = 12πλ0 y22 > 0,
pour tout y = (y1 , y2 ) avec y2 6= 0.
Ainsi les conditions du théorème (4.3.11) sont vérifiées pour :
r r
0 S0 0 S0
x1 = 2 , x2 = .
6π 6π
Le cylindre avec ces paramètres aurait le plus grand volume.

4.3.5 Conditions d’optimalité pour le cas de contraintes


inégalités non linéaires
Considérons le problème suivant :

 f (x) → min,
g(x) ≤ 0, (4.41)
x∈D

où f : Rn → R et gi : Rn → R, 1 ≤ i ≤ m sont des fonctions de classe C 1 ,


I = {1, 2, · · · , m} , D ⊂ Rn ouvert non vide.
4.3 Conditions d’optimalité 86

Définition 4.3.6. – Tout vecteur x ∈ D vérifiant les contraintes g(x) ≤


0 du problème (4.41) est appelé solution admissible ou plan du problème
(4.41).
– La contrainte gi (x) ≤ 0 est dite active au point x si gi (x) = 0. Elle est
dite passive si gi (x) < 0.
– On notera l’ensemble des indices actifs au point x par

Ia (x) = {i ∈ I, gi (x) = 0} .

a- Conditions nécessaires d’optimalité de premier ordre


Théorème 4.3.12. Supposons que f et gi , i ∈ Ia (x0 ) sont différentiables au
point x0 , et les fonctions gi , i 6∈ Ia (x0 ) sont continues en x0 .
Si x0 est une solution optimale locale du problème (4.41), alors il n’existe pas
de vecteur l ∈ Rn vérifiant le système suivant :

lT ∇f (x0 ) < 0 (4.42)


lT ∇gi (x0 ) < 0, i ∈ Ia (x0 ) (4.43)

Démonstration. Soit x0 un plan optimal du problème (4.41), l ∈ Rn un vec-


teur vérifiant (4.43).
Comme x0 ∈ D et D est ouvert, alors il existe δ1 > 0 tel que

x0 + λl ∈ D, ∀λ ∈ [0, δ1 ]. (4.44)

Comme gi (x0 ) < 0 et les fonctions gi (.) sont continues en x0 pour i 6∈ Ia (x0 ),
alors il existe δ2 > 0 tel que

gi (x0 + λl) < 0, ∀λ ∈ [0, δ2 ], ∀i 6∈ Ia (x0 ). (4.45)

Enfin, comme
lT ∇gi (x0 ) < 0, i ∈ Ia (x0 ),
alors d’après le théorème 4.3.1, il existe δ3 > 0, tel que

gi (x0 + λl) < gi (x0 ) = 0, ∀λ ∈ [0, δ3 ], ∀i ∈ Ia (x0 ). (4.46)

De (4.44), (4.45) et (4.46), on déduit que

x0 + λl ∈ S, ∀λ ∈ [0, δ],
4.3 Conditions d’optimalité 87

où δ = min(δ1 , δ2 , δ3 ). Donc l est une direction admissible en x0 .


D’après le théorème 4.3.1, on a

(∇f (x0 ))T l ≥ 0,

et donc le système (4.42)-(4.43) n’admet pas de solution l ∈ Rn .


Définition 4.3.7. Un vecteur l est dit direction admissible au point x e par
rapport à la contrainte inégalité gi (x) ≤ 0 (direction intérieure), si

lT ∇gi (e
x) < 0, si gi (e
x) = 0,

et l un vecteur quelconque si gi (e
x) < 0.
Définition 4.3.8. Un vecteur l est appelé direction admissible au point x e par
rapport aux contraintes du problème (4.41), si il est une direction admissible
par rapport à chacune des contraintes gi (x) ≤ 0, 1 ≤ i ≤ m au point x e.
Ainsi, les directions admissibles par rapport aux contraintes du problème
(4.41) au plan xe sont décrites par les équations (4.43) si on change x0 par x
e.
Du théorème 4.3.12, on déduit la proposition suivante :
Proposition 4.3.2. Si x0 est un optimum local du problème (4.41), alors au
point x0 , il n’existe pas de directions admissibles du problème (4.41).
Théorème 4.3.13. Soit x0 un point de minimum relatif local du problème
(4.41) tel que les vecteurs

∇gi (x0 ), i ∈ Ia (x0 ) (4.47)

sont linéairement indépendants.


Il existe alors un unique vecteur multiplicateur de Lagrange λ0 vérifiant les
relations suivantes :
λ0 ≥ 0.
∇x L(x0 , λ0 ) = 0.
(λ0 )T g(x0 ) = 0.

Définition 4.3.9. On dira qu’un plan x0 est régulier si les vecteurs

∇gi (x0 ), i ∈ Ia (x0 )

sont linéairement indépendants.


4.3 Conditions d’optimalité 88

b- Condition nécessaire d’optimalité du second ordre


Considérons de nouveau le problème (4.41) mais en supposant que f, g
sont des fonctions de classe C 2 .
D’après le théorème 4.3.13, à toute solution optimale x0 régulière du problème
(4.41), il correspond un unique vecteur de Lagrange λ0 .

Définition 4.3.10. – Une contrainte gi (x) ≤ 0 active au point x0 est


dite forte si λ0i > 0.
L’ensemble des indices des contraintes fortes au point x0 sera noté :

Ia+ (x0 ) = i : gi (x0 ) = 0, λ0i > 0 .




– Une contrainte gi (x) ≤ 0 active au point x0 est dite faible si λ0i = 0.


L’ensemble des indices des contraintes faibles au point x0 sera noté :

Ia0 (x0 ) = i : gi (x0 ) = 0, λ0i = 0 .




Théorème 4.3.14. Soient x0 un plan optimal régulier du problème (4.41)


et λ0 le vecteur de Lagrange correspondant.
Alors, la forme quadratique est définie non négative :

lT ∇2x L(x0 , λ0 )l ≥ 0,

sur l’ensemble des vecteurs l vérifiant le système suivant :

lT ∇gi (x0 ) = 0, i ∈ Ia+ (x0 ),


(4.48)
T 0
l ∇gi (x ) ≤ 0, i ∈ Ia0 (x0 ).

c- Condition suffisante d’optimalité locale


Supposons que dans le problème (4.41), les fonctions f (x) et g(x) sont de
classe C 2 .

Définition 4.3.11. Un plan x0 du problème est dit pseudo-stationnaire, s’il


existe un m−vecteur λ0 tel que

∇x L(x0 , λ0 ) = 0, λ0i gi (x0 ) = 0, λ0i ≥ 0, 1 ≤ i ≤ m.


4.3 Conditions d’optimalité 89

Théorème 4.3.15. Pour qu’un plan pseudo-stationnaire x0 soit localement


optimal dans le problème (4.41), il suffit que l’inégalité

lT ∇2x L(x0 , λ0 )l > 0, (4.49)

soit vérifiée pour tout vecteur l 6= 0 vérifiant le système :

lT ∇gi (x0 ) = 0, i ∈ Ia+ (x0 ),


(4.50)
lT ∇gi (x0 ) ≤ 0, i ∈ Ia0 (x0 ).

4.3.6 Optimisation des fonctions non linéaires sous des


contraintes générales non linéaires
Considérons le problème de minimisation d’une fonction non linéaire sous
des contraintes non linéaires :

 f (x) → min,
gi (x) ≤ 0, i ∈ I = {1, 2, · · · , m}, (4.51)
hj (x) = 0, j = 1, r,

où les fonctions f : Rn → R, gi : Rn → R, i = 1, m et hj (x) = 0, j = 1, r


sont de classe C 1 .

a- Condition nécessaire d’optimalité du premier ordre


Théorème 4.3.16. Si x0 est un point de minimum local du problème (4.51)
et les vecteurs

∇gi (x0 ), i ∈ Ia (x0 ) = {i ∈ I : gi (x0 ) = 0} ,
(4.52)
∇hj (x0 ), j = 1, r,

sont linéairement indépendants, alors il existe un multiplicateur de Lagrange


λ ∈ Rm , λ ≥ 0, µ ∈ Rr tels que :

∇f (x0 ) + m
 P 0
Pr 0
i=1 λi ∇gi (x ) + j=1 µj ∇hj (x ) = 0,
(4.53)
λi gi (x0 ) = 0, i = 1, m.
4.3 Conditions d’optimalité 90

b- Condition suffisante d’optimalité


Théorème 4.3.17. Supposons que dans le problème (4.51), les fonctions
f, gi , hj sont de classe C 2 .
Supposons que pour une solution admissible x0 , il existe λ ∈ Rm , λ ≥ 0,
µ ∈ Rr tels que :

∇f (x0 ) + m
 P 0
Pr 0
i=1 λi ∇gi (x ) + j=1 µj ∇hj (x ) = 0,
0
λi gi (x ) = 0, i = 1, m,

et pour tout d 6= 0 tel que


 T

 d ∇gi (x0 ) = 0, λi > 0, gi (x0 ) = 0,



dT ∇gi (x0 ) ≤ 0, i = 1, m, λi = 0, gi (x0 ) = 0,




 T
d ∇hj (x0 ) = 0, j = 1, r,
on a
dT ∇2x L(x0 , λ, µ)d > 0,
alors x0 est un point de minimum local.

Exemple 4.3.8. Considérons le problème de minimisation suivant :


 √ 2
 f (x1 , x2 ) = −x21 363 − x162 → min,
g(x1 , x2 ) = x1 + x2 − l = 0, (4.54)
x1 ≥ 0, x2 ≥ 0,

avec l > 0.
Posons
g1 (x1 , x2 ) = g(x1 , x2 );
g2 (x1 , x2 ) = −x1 ;
g3 (x1 , x2 ) = −x2 ;
x = (x1 , x2 ).
Le problème (4.54) devient :


 f (x) → min,
g1 (x) = 0,

(4.55)

 g2 (x) ≤ 0,
g3 (x) ≤ 0.

4.3 Conditions d’optimalité 91

L’ensemble des plans du problème (4.55) est un ensemble compact et la


fonction objectif est continue. Donc le problème (4.55) admet une solution
optimale.
Calculons les vecteurs :
     
1 −1 0
∇g1 (x) = , ∇g2 (x) = , ∇g3 (x) = .
1 0 −1
Ces trois vecteurs sont linéairement indépendants deux à deux.
Considérons les contraintes du problème (4.55). On remarque aisément que
deux contraintes seulement peuvent être simultanément actives :
Soit g1 (x) = 0, g2 (x) = 0.
Soit g1 (x) = 0, g3 (x) = 0.

Ainsi, chaque plan du problème (4.55) est régulier.


Construisons la fonction de Lagrange :

3 x22
L(x, λ) = −x21 − + λ1 (x1 + x2 − l) − λ2 x1 − λ3 x2 .
36 16
La règle des multiplicateurs de Lagrange conduit aux relations suivantes :

∂L 3
(x, λ) = −x1 + λ1 − λ2 = 0, (4.56)
∂x1 18
∂L 1
(x, λ) = −x2 + λ1 − λ3 = 0, (4.57)
∂x2 8
∂L
(x, λ) = x1 + x2 − l = 0, (4.58)
∂λ1
−λ2 x1 = −λ3 x2 = 0, (4.59)
λ2 ≥ 0, λ3 ≥ 0, (4.60)

De (4.59), on déduit

λ2 x1 = 0, (4.61)
λ3 x2 = 0, (4.62)

De (4.56) et (4.57), on a

λ2 = −x1 183 + λ1 , (4.63)
λ3 = −x2 18 + λ1 , (4.64)
4.3 Conditions d’optimalité 92

De (4.63) et (4.61), on déduit



3
(−x1 + λ1 )x1 = 0. (4.65)
18
De (4.58), on a
x2 = l − x1 . (4.66)
De (4.64) et (4.66), on déduit
l x1
λ3 = − + + λ1 . (4.67)
8 8
Les équations (4.62), (4.67) et (4.66) nous donnent
l x1
(− + + λ1 )(l − x1 ) = 0. (4.68)
8 8
Ainsi, on a obtenu les deux équations (4.65) et (4.68) :

(−x1 183 + λ1 )x1 = 0,
(− 8 + x81 + λ1 )(l − x1 ) = 0,
l

qui donnent trois plans pseudo-stationnaires :


1. x∗1 = 0, x∗2 = l, λ∗1 = 8l , λ∗2 = 8l , λ∗3 = 0.
√ √
2. x∗1 = l, x∗2 = 0, λ∗1 = l 183 , λ∗2 = 0, λ∗3 = l 183 .
√ √
3. x∗1 = 9l√
9+4 3
, x∗2 = 4l √
9+4 3
3
, λ∗1 = l 3√
18+8 3
, λ∗2 = λ∗3 = 0.
La forme quadratique correspondante a la forme suivante
 √3  √
− 0 3 1
y T ∇2x L(x, λ)y = y T 8
−1 y = −y12 − y22 . (4.69)
0 8
8 8
Considérons la relation (4.60) pour tout point pseudo-stationnaire :
Le premier plan : La troisième contrainte est passive.
  
∂g 1
 y T ∂x1 (x∗ ) = y1 y2

= y1 + y2 = 0


 1 
 −1
 y T ∂g 2
(x ∗
) = y y = −y1 = 0

1 2

∂x 0
Ce qui nous donne
y1 = y2 = 0.
4.4 Exercices corrigés 93

Le deuxième plan : La deuxième contrainte est passive.


  
T ∂g1 ∗
 1
 y ∂x (x ) = y1 y2 = y1 + y2 = 0


 1 
0
 y T ∂g (x∗ ) = y1 y2

3
= −y2 = 0


∂x −1

Ce qui nous donne


y1 = y2 = 0.
Le troisième plan : La deuxième et la troisième contrainte sont passives.
 
T ∂g1 ∗
 1
y (x ) = y1 y2 = y1 + y2 = 0
∂x 1

D’où
y1 = −y2 .
Au troisième plan pseudo-stationnaire, la forme quadratique (4.69) est
définie négative. Donc d’après le théorème 4.3.15, ce plan ne peut être
la solution du problème. La solution serait parmi les deux premiers
plans.
Les deux premiers plans vérifient le théorème 4.3.14 mais ne vérifient
pas le théorème 4.3.15.
La solution du problème sera trouvée en comparant les valeurs de la fonction
f. √
l2
Au premier plan, f (x∗ ) = − 16 , au second plan f (x∗ ) = − 363 l2 .
Donc le plan optimal est

x∗1 = 0, x∗2 = l .


4.4 Exercices corrigés


4.4.1 Exercice 1
Considérer le problème suivant :

min 21 k x k2 ,

x ∈ R3
(P )
x1 + 2x2 + 3x3 = 1.
4.4 Exercices corrigés 94

1. Identifier le couple (x∗ , λ∗ ) de KKT associé à ce problème.


2. Vérifier si x∗ est une solution optimale du problème.
3. Résoudre le problème :
1
 2 n
Pn 2 k x k , x ∈ R
min
i=1 ixi = 1.

4. Vérifier si x∗ solution optimale du problème (P ) est une solution opti-


male pour le problème suivant :

 min 12 k x k2 , x ∈ R3
x1 + 2x2 + 3x3 = 1,
x≥0

5. Que peut-on dire de x∗ par rapport au problème suivant :



 min 21 k x k2 , x ∈ R3
x1 + 2x2 + 3x3 ≤ 1,
x≥0

6. Que peut-on dire de x∗ par rapport au problème suivant :



 min 12 k x k2 , x ∈ R3
x1 + 2x2 + 3x3 ≥ 1,
x≥0

4.4.2 Solution de l’exercice 1


1.
min 12 k x k2 ,

x ∈ R3
(4.70)
x1 + 2x2 + 3x3 = 1.
On définit la fonction de Lagrange associée à ce problème (4.70) comme
suit :
1
L(x, λ) = k x k2 +λ(x1 + 2x2 + 3x3 − 1).
2
Les conditions de KKT associées à ce problème sont :


 x1 + λ = 0;
x2 + 2λ = 0;


 x3 + 3λ = 0;
x1 + 2x2 + 3x3 = 1.

4.4 Exercices corrigés 95

En résolvant ce système d’équations, on trouve le point de KKT sui-


vant :
1 1 3 −1
x∗ = (x∗1 = ; x∗2 = ; x∗3 = ), λ∗ = .
14 7 14 14
2. Le point de KKT (x∗ , λ∗ ) est optimal car le problème (4.70) est convexe.
3. Considérons le problème suivant :

min 12 k x k2 , x ∈ Rn

P n (4.71)
i=1 ixi = 1.

On définit la fonction de Lagrange associée à ce problème (8.2) comme


suit : n
1 X
L(x, λ) = k x k2 +λ( ixi − 1).
2 i=1

Les conditions de KKT associées à ce problème (8.2) sont :




 x1 + λ = 0;
 x2 + 2λ = 0;



..
 .


 xn + nλ = 0;
 Pn ix = 1.

i=1 i

En résolvant ce système d’équations, on trouve :


−1 −6
λ = Pn =
i=1 i2 n(n + 1)(2n + 1)
et
6i
xi = −iλ = .
n(n + 1)(2n + 1)
La solution optimale est donc
6i −6
x∗i = −iλ = , i = 1, . . . , n; λ∗ = .
n(n + 1)(2n + 1) n(n + 1)(2n + 1)

4. Considérons le problème :

 min 21 k x k2 , x ∈ R3
x1 + 2x2 + 3x3 = 1, (4.72)
x ≥ 0.

4.4 Exercices corrigés 96

La solution du problème (8.3) est la même que celle du problème (4.70)


si et seulement si cette solution vérifie la contrainte supplémentaire
x∗ ≥ 0. Comme la solution de (4.70) est
1 ∗ 1 ∗ 3
x∗ = (x∗1 = ; x2 = ; x3 = ),
14 7 14
et est ≥ alors cette solution est aussi solution optimale de (8.3).
5. Considérons le problème :

 min 21 k x k2 , x ∈ R3
x1 + 2x2 + 3x3 ≤ 1, (4.73)
x ≥ 0.

Cette fois, les conditions sont λ∗ ≥ 0 et x∗ ≥ 0. Ces conditaions n’étant


pas vérifiées, car λ∗ ≤ 0 ; donc x∗ n’est pas solution optimale de (8.5).
6. Considérons le problème :

 min 12 k x k2 , x ∈ R3
x1 + 2x2 + 3x3 ≥ 1, (4.74)
x ≥ 0.

Cette fois, les conditions sont λ∗ ≤ 0 et x∗ ≥ 0. Ces conditaions étant


vérifiées, donc x∗ est solution optimale de (8.4).

4.4.3 Exercice 2
Etudier l’existence et l’unicité des solutions du problème suivant :
 ∗
x ∈ K,
f (x∗ ) = minx∈K f (x)

où f est définie sur R par f (x) = x2 , et pour les quatre différents ensembles
K suivants :
(i) K = {|x| ≤ 1} ; (ii) K = {|x| = 1} ;
(iii) K = {|x| ≥ 1} ; (iv) K = {|x| > 1}.
4.4 Exercices corrigés 97

4.4.4 Solution de l’exercice 2


(i) K = {|x| ≤ 1} ; K est un ensemble fermé borné et convexe. Donc,
d’après le théorème d’existence et d’unicité, la solution optimale du
problème existe et est unique.
Comme f (x) ≥ 0 pour tout x ∈ R et f (0) = 0, on en déduit que
l’unique solution du problème est x∗ = 0.

(ii) K = {|x| = 1} ; K est fermé borné mais non convexe. Donc, d’après
le théorème d’existence et d’unicité, la solution optimale du problème
existe mais elle n’est pas unique.
En effet, K = {+1, −1} et {f (x), x ∈ K} = {1}. On a donc deux
solutions du problème :

x∗1 = 1, x∗2 = −1.

(iii) K = {|x| ≥ 1} ; K est fermé, non borné et non convexe.


On peut écrire K = K1 ∪ K2 où

K1 = [1, +∞[, K2 = [−∞, −1[.

K1 et K2 sont covexes fermés. Donc il existe une unique solution opti-


male du problème x∗1 ∈ R et une unique solution optimale du problème
x∗2 ∈ R pour K = K1 et K = K2 respectivement.
Pour K = K1 , x∗1 = 1.
Pour K = K2 , x∗2 = −1.
On a ainsi 2 solutions optimales (pas d’unicité de la solution optimale).
(iv) K = {|x| > 1}; K n’est pas fermé. Le théorème d’existence ne s’ap-
plique pas.
Comme lim+ f (x) = 1, mais cet infinimum n’est pas atteint, alors le
x→1
problème n’admet pas une solution optimale.

4.4.5 Exercice 3
Considérer le problème de minimisation avec contraintes suivant :

 min f (x) = 12 xt Ax − xt b,
x1 ≥ 0,
x2 − 2x3 = 1,

4.4 Exercices corrigés 98

avec    
1 −1 0 −1
A =  −1 2 −1  , b =  1 
0 −1 3 −1
1. Donner les conditions de minimalité de Karush-Kuhn-Tucker (KKT)
de ce problème.
2. Trouver le point de (KKT) associé à ce problème ;
3. Trouver le point solution de ce problème.

4.4.6 Solution de l’exercice 3


1. On définit la fonction de Lagrange comme suit :
1
L(x, λ, µ) = xt Ax − xt b − λt (x1 − 1) + µ(x2 − 2x3 − 1).
2
Les conditions de KKT sont :


 x1 − x2 + 1 − λ = 0,
−x1 + 2x2 − x3 − 1 + µ = 0,




−x2 + 3x3 + 1 − 2µ = 0,


 λ(x1 − 1) = 0,
x ≥ 1, λ ≥ 0,

 1



x2 − 2x3 = 1.

2. On résoud ce système d’équations (de KKT), en distinguant deux cas :


Cas 1 : Pour λ = 0, on résoud le système et on trouve
8 1 4
x1 = − , x2 = − , x3 = − .
7 7 7
Cette solution est refusée car x1 doit être ≥ 1.
Cas 2 : Pour λ 6= 0, donc x1 = 1 ; on résoud le système et on trouve

x1 = 1, x2 = 1, x3 = 0, λ = 1 > 0.

C’est le point de KKT.


3. Le problème étant convexe, la solution optimale est

x∗1 = 1, x∗2 = 1, x∗3 = 0.


4.5 Exercices non corrigés 99

4.5 Exercices non corrigés


Exercice 4.5.1. Considérons le problème de recherche du point de la parabole
y = 15 (x − 1)2 le plus proche du point (x, y) = (1, 2), dans le sens de norme
Euclidienne.
1. Modéliser ce problème en un programme de minimisation avec contraintes ;
2. Trouver tous les points de Karush-Kuhn-Tucker (KKT),
3. Déterminer les points correspondant aux solutions optimales.
Exercice 4.5.2. Considérer le problème de minimisation avec contraintes sui-
vant : 

 min (x1 − 23 )2 + (x2 − 18 )2 ,
 1 − x1 − x2 ≥ 0,


1 − x1 + x2 ≥ 0,
1 + x1 − x2 ≥ 0,




1 + x1 + x2 ≥ 0.

1. Résoudre graphiquement ce problème ;


2. Trouver le point de Karush-Kuhn-Tucker (KKT) associé à ce problème ;
3. Dire si ce point de KKT correspond à une solution locale ou globale du
problème, justifier.
Exercice 4.5.3. Soit la fonction

f (x) = f (x1 , x2 ) = x21 + x22 − 8x1 − 10x2 .

1) Quel est le point minimum global ?


2) Résoudre graphiquement le problème (P ) suivant :

f (x) −→ min

sous les contraintes

3x1 + 2x2 ≤ 6, x1 ≥ 0, x2 ≥ 0.

3) Formuler le système d’optimalité de KKT pour (P ).


4) Calculer alors les valeurs des paramètres correspondant à la solution op-
timale de (P ) trouvée précédemment.
4.5 Exercices non corrigés 100

Exercice 4.5.4. On considère le programme quadratique convexe suivant :



 F (x) = 6x1 + 4x2 − 13 − x21 − x22 → max,
Sous x1 + x2 ≤ 3,
x1 ≥ 0, x2 ≥ 0.

– Résoudre le problème graphiquement.


– Donner les conditions d’optimalité Karush-Kuhn-Tucker pour ce problème.
– Trouver le point de Karush-Kuhn-Tucker puis déduire le point opti-
mum.
Exercice 4.5.5. On considère le problème suivant :

 min f (x1 , x2 ) = −2x1 + x2
(1 − x1 )3 − x2 ≥ 0,
x2 + 0.25x21 − 1 ≥ 0.

La solution optimale est x∗ = 0 .




Les conditions de KKT sont-elles satisfaites ?


Chapitre 5

Les méthodes numériques pour


l’optimisation avec contraintes

5.1 Méthode par élimination


Considérons le problème suivant :

min f (x),
(5.1)
Ax − b = 0
où f : Rn → R, A est une matrice m × n de rang plein, b ∈ Rm .
On suppose, sans perte de généralité, que les m premières colonnes de A sont
linéairement indépendantes.

On pose A = B R avec B est une m × n-matrice inversible, R est une
T
m × (n − m)-matrice, x = xB xR , avec xB ∈ Rm et xR ∈ Rn−m .
Le problème (5.1) devient alors

min f (xB , xR ),
(5.2)
BxB + RxR = b.

Pour satisfaire les contraintes de (5.2), il faut que

xB = B −1 (b − RxR ).

Le problème (5.2) devient alors le problème d’optimisation sans contraintes :

min F (B −1 (b − RxR ), xR ),

(5.3)
xR ∈ Rn−m .

101
5.1 Méthode par élimination 102

On a si (x∗B , x∗R ) est solution optimale de (5.1), x∗R est solution optimale de
(5.3).
Exemple 5.1.1. On considère le problème suivant :

 sin(x1 + x2 ) + x23 + 13 (x4 + x45 + x26 ) → min,
8x1 − 6x2 + x3 + 9x4 + 4x5 = 6,
3x1 + 2x2 − x4 + 6x5 + 4x6 = −4.

On réorganise la matrice A tel que


T
xT = x3 x6 x1 x2 x4 x5 .
 
 1 0 8 −6 9 4
A= B R = ,
0 4 3 2 −1 6
avec  
1 0
B= ,
0 4
 
8 −6 9 4
R= .
3 2 −1 6
La matrice B est diagonale,
 
−1 1 0
B = .
0 14

On obtient
   
x3 −1 6 − 8x1 + 6x2 − 9x4 − 4x5
xB = = B (b − RxR ) =
x6 −1 − 43 x1 − 12 x2 + 14 x4 − 32 x5

En remplaçant x3 et x6 dans la fonction objectif, on obtient le problème


sans contraintes suivant :
2 1
sin(x 1 + x2 ) + (6 − 8x1 + 6x2 − 9x4 − 4x 5) + 3
1 3 1 1 3
 
x4 + x45 − 2 + 8 x1 + 4 x2 − 8 x4 + 4 x5 → min,
(x1 , x2 , x4 , x5 ) ∈ R4 .

Remarque 5.1.1. On peut choisir autrement B et R mais il faut veiller à


choisir B et R de telle sorte à faciliter les calculs et B inversible.
5.1 Méthode par élimination 103

Exemple 5.1.2. On considère le problème suivant :



 f (x1 , x2 ), x3 , x4 ) → min,
x1 + x23 − x4 x3 = 0, (5.4)
−x2 + x4 + x23 = 0.

Les contraintes sont non linéaires.

x1 = −x23 + x4 x3
x2 = x4 + x23 .

On définit
h(x4 , x3 ) = f (−x23 + x4 x3 , x4 + x23 , x3 , x4 ).
Le problème (5.4) devient un problème sans contraintes comme suit :

min f (−x23 + x4 x3 , x4 + x23 , x3 , x4 ).


x4 , x3 ∈ R.

Remarque 5.1.2. Le danger de cette méthode d’élimination est illustré dans


l’exemple suivant appelé problème de Fletcher.
Exemple 5.1.3. Considérons le problème suivant :

min x2 + y 2
(x − 1)3 = y 2

Le graphe montre que la solution optimale est (1, 0).


On va essayer de résoudre le problème par élimination. On otient

h(x) = x2 + (x − 1)3 .

On voit bien que h(x) → −∞ quand x → −∞. On peut déduire que le


problème n’admet pas de solution.
Le problème, par cette approche, est qu’on ignore que (x − 1)3 = y 2 impose
que x ≥ 1. Cette contrainte doit tenue en considération.
Remarque 5.1.3. Cet exemple montre la limite de la méthode dans le cas de
contraintes non linéaires. En général, pour utiliser cette méthode, on doit
linéariser d’abord les contraintes non linéaires.
5.2 Méthodes de pénalisation 104

5.2 Méthodes de pénalisation


5.2.1 Principe de la méthode
Le principe est de remplacer la fonction objectif originale du problème
par une fonction de pénalité. La fonction de pénalité est composée de :
– la fonction objectif originale du problème d’optimisation avec contraintes,
et
– un terme supplémentaire pour chaque contrainte.
Ce terme est positif si le point courant x viole les contraintes et nul
dans le cas contraire.
Donc on remplace le problème avec contraintes suivant :

f (x) → min,
(5.5)
x ∈ C ⊂ Rn ,
5.2 Méthodes de pénalisation 105

par un problème sans contraintes suivant :

f (x) + µ1 α(x) → min,



(5.6)
x ∈ Rn ,

où α : Rn → R est une fonction de pénalisation des contraintes et µ > 0.


Le but est de trouver des fonctions α telles que les problèmes (5.5) et (5.6)
soient équivalents.
Nous supposons que α vérifie les propriétés suivantes :
1. La fonction α est continue sur Rn .
2. ∀x ∈ Rn , α(x) ≥ 0.
3. α(x) = 0 ⇔ x ∈ C.
Nous donnons quelques exemples de pénalisation pour différentes contraintes :
1. Pour une contrainte x ≥ 0, on a la fonction α(x) = kx− k2
2. Pour une contrainte h(x) = 0, on a la fonction α(x) = kh(x)k2
3. Pour une contrainte g(x) ≥ 0, on a la fonction α(x) = kg(x)− k2
où k − k est la norme euclidienne de Rn et x− = max(−x, 0).

5.2.2 La méthode de pénalisation dans le cas de contraintes


égalités
Dans le cas de problème d’optimisation avec contraintes de type égalité,
la fonction pénalité utilisée est la fonction quadratique.
Le problème à résoudre est le suivant :

f (x) → min,
(5.7)
gi (x) = 0, 1 ≤ i ≤ m.

La fonction quadratique de pénalisation q(x, µ) pour (5.7) est :


m
1 X 2
q(x, µ) = f (x) + g (x) (5.8)
2µ i=1 i

où µ > 0 est le paramètre de pénalisation.


En tendant µ vers zéro, nous pénalisons les violations des contraintes.
Le principe est donc : on considère une séquence de valeurs de {µk } avec
µk → 0, k → +∞ et on calcule le minimum xk de q(x, µk ) pour chaque k.
5.2 Méthodes de pénalisation 106

Exemple 5.2.1. On considère le problème suivant :



min x1 + x2
x21 + x22 = 2.

La fonction de pénalisation quadratique associée est :


1 2
q(x, µ) = x1 + x2 + (x + x22 − 2)2 .
2µ 1
Pour µ = 1 , on trouve le minimum de q est (−1.1; −1.1) ;
Pour µ = 0.1 , on trouve le minimum de q est (−1; −1) ;
La solution du problème est donc (−1; −1).

5.2.3 La méthode de pénalisation dans le cas de contraintes


mixtes
Considérons le problème d’optimisation avec contraintes mixtes suivant :

 f (x) → min,
gi (x) = 0, 1 ≤ i ≤ m, (5.9)
hj (x) ≥ 0, 1 ≤ j ≤ l.

On définit la fonction q de pénalisation comme suit :


m l
1 X 2 1 X −
q(x, µ) = f (x) + gi (x) + (h (x))2 , (5.10)
2µ i=1 2µ j=1 j

où y − = max(−y, 0).

5.2.4 Algorithme de la méthode de pénalisation qua-


dratique
Soient µ0 > 0, 0 > 0, et le point initial xs0 donnés.

Tant que k∇q(x, µk )k > k faire


– Trouver le minimum approximatif de q(., µk ), en partant de xsk ; soit
le minimum xk ;
– Choisir le nouveau paramètre de pénalisation µk+1 ∈ [0, µk ].
5.2 Méthodes de pénalisation 107

– Choisir le nouveau point xsk+1


Fin Tant que
Théorème 5.2.1. Supposons que chaque solution xk est un minimum global
exact de q(x, µk ) dans l’algorithme précédent et que µk → 0. Alors, chaque
point x∗ limite de la séquence {xk } est une solution du problème (5.7).
Démonstration. Soit x une solution globale du problème (5.7), alors

f (x) ≤ f (x), ∀x : gi (x) = 0, 1 ≤ i ≤ m.

Puisque xk minimise q(., µk ) pour chaque k, alors on a

q(xk , µk ) ≤ q(x, µk ),

d’où
m m
1 X 2 1 X 2
f (xk ) + g (xk ) ≤ f (x) + g (x) = f (x) (5.11)
2µk i=1 i 2µk i=1 i

alors m
X
gi2 (xk ) ≤ 2µk (f (x) − f (xk )). (5.12)
i=1

Supposons que x est un point limite de {xk }, donc il existe une sous-séquence
K telle que
lim xk = x∗ .
k∈K,k→+∞

En passant aux limites dans (5.12), k → +∞, k ∈ K, on obtient


m
X m
X
gi2 (x∗ ) = lim gi2 (xk ) ≤ lim 2µk (f (x) − f (xk )) = 0;
k∈K k∈K
i=1 i=1

d’où, gi (x∗ ) = 0, 1 ≤ i ≤ m. x∗ est alors réalisable.


D’un autre côté, ayant k → ∞, k ∈ K dans l’équation (5.11), µk non négative
et gi2 (xk ), 1 ≤ i ≤ m non négatives, on a
m
1 X 2
f (x∗ ) ≤ f (x∗ ) + lim gi (xk ) ≤ f (x).
k∈K 2µk
i=1

Ayant x∗ réalisable et f (x∗ ) ≤ f (x), alors on conclut que x∗ est un minimum


global.
5.2 Méthodes de pénalisation 108

Théorème 5.2.2. Si les k de l’algorithme précédent vérifient

lim k = 0
k→∞

et les paramètres de pénalisation vérifient µk → 0, alors tous les points limites


x∗ de la séquence {xk } pour lesquelles les gradients ∇gi (x∗ ) sont linéairement
indépendants, on a x∗ est un point de Karush-Kuhn-Tucker du problème
(5.7). Pour ces points, on a une infinité de sous-séquence K tel que

lim xk = x∗ ,
k∈K
(5.13)
lim −gi (xk )/µk = λ∗i , 1 ≤ i ≤ m,
k∈K

où λ∗ est le vecteur multiplicateur qui satisfait les conditions de KKT.

Démonstration. Soit q(xk , µk ) = f (xk ) + 2µ1k m 2


P
i=1 gi (xk ), d’où

m
X gi (xk )
∇x q(xk , µk ) = ∇f (xk ) + ∇gi (xk ). (5.14)
i=1
µk

En appliquant le critère d’arrêt de l’algorithme, on obtient :


m
X gi (xk )
k∇f (xk ) + ∇gi (xk )k ≤ k (5.15)
i=1
µk

d’où m
X
k gi (xk )∇gi (xk )k ≤ µk (k + k∇f (xk )k) (5.16)
i=1

Quand k → ∞ pour k ∈ K, on a

k + k∇f (xk )k → k∇f (x∗ )k

d’où, comme µk → 0, on a

µk (k + k∇f (xk )k) → 0.

On obtient alors m
X
gi (x∗ )∇gi (x∗ ) = 0. (5.17)
i=1
5.2 Méthodes de pénalisation 109

Par hypothèse, on a ∇gi (x∗ ), 1 ≤ i ≤ m linéairement indépendants et


gi (x∗ ) = 0, 1 ≤ i ≤ m, d’où x∗ est réalisable. On va maintenant démontrer
la condition de KKT et montrer que la limite (5.13) du théorème 5.2.2 se
produit.
On dénote la matrice des gradients des contraintes par A(x),

A(x) = (∇gi (x))1≤i≤m (5.18)

et
g(xk )
λk = − ,
µk
on a alors comme dans (5.15) :
 
T −gi (xk )
A(xk ) λk = (∇gi (x)) = ∇f (xk ) − ∇x q(xk , µ) (5.19)
µk 1≤i≤m

k∇x q(xk , µ)k ≤ k .


Si on multiplie l’équation (5.19) par A(xk ), on a
−1
λk = A(xk )AT (xk ) A(xk ) (∇f (xk ) − ∇x q(xk , µ)) .

D’où −1
lim λk = λ∗ = A(x∗ )AT (x∗ ) A(x∗ )∇f (x∗ ).
k∈K

Conformément à l’équation (5.15), on a

∇f (x∗ ) − AT (x∗ )λ∗ = 0,

d’où λ∗ satisfait les conditions de KKT. Donc x∗ est un point de KKT.

5.2.5 Quelques exemples corrigés


Exemple 5.2.2. Considérons le problème de minimisation suivant :

 min x,
x2 ≥ 0,
x + 1 ≥ 0,

pour lequel x∗ = −1 est la solution. Ecrire la fonction de pénalisation P (x, µ)


associée à ce problème et trouver les minimums locaux.
5.3 Méthode du gradient projeté 110

Montrer que pour chaque séquence {µk }k telle que µk → 0, il existe une
séquence de minimums locaux x(µk ) qui convergent vers -1.

Solution :
On définit la fonction de pénalisation P (x, µ) comme suit :
1 1
P (x, µ) = x + ((x2 )− )2 + ((x + 1)− )2
2µ 2µ
avec
(x2 )− = max(0, −x2 ) = 0, ∀x,
(x + 1)− = max(0, −1 − x)
– Si x ≥ −1, alors (x + 1)− = 0. On a alors P (x, µ) = x.
– Si x < −1, alors (x + 1)− = −x − 1. On a alors P (x, µ) = x + 2µ
1
(x + 1)2 .
Dans les deux cas, on trouve que min P (x, µ) est atteint pour x → −1.
Exemple 5.2.3. Vérifier que les conditions de KKT du problème suivant :

 min f (x),
l ≤ x ≤ u,
x ∈ Rn ,

sont équivalentes à la condition :

P[l,u] ∇f (x) = 0,

où P[l,u] est l’opérateur de projection sur [l, u].


Solution :
Rappelons qu’on définit P[l,u]g , la projection du vecteur g ∈ Rn sur [l, u],
comme suit :

 min(0, gi ) si xi = li ,
(P[l,u] )gi = gi si xi ∈ (li , ui ),
max(0, gi ) si xi = u i .

5.3 Méthode du gradient projeté


Dans le cas d’optimisation sans contraintes, l’algorithme du gradient
s’énonce comme suit :
 (0)
x ∈ Rn un point initial donné,
x(k+1) = x(k) + ρ(k) d(k) , d(k) ∈ Rn \{0}, ρ(k) ∈ R+∗ ,
5.3 Méthode du gradient projeté 111

où ρ(k) et d(k) sont choisis de telle sorte que :

f (x(k+1) ) ≤ f (x(k) ).

Dans le cas avec contraintes, on ne peut pas être sûr que x(k) reste sur l’en-
semble des contraintes C. Il est donc nécessaire de se ramener sur C, et ceci
grâce à une projection sur C, l’opérateur associé étant noté ΠC où C est
convexe fermé et non vide :
C : Rn → C
x → ΠC (x).
On obtient ainsi l’algorithme du gradient projeté, qui est identique à celui
du gradient à la projection près :
Initialisation :
k = 0, choix de x(0) et  > 0.
Itération k :
Tant que le critère d’arrêt est non satisfait :
b(k+1) = x(k) − ρ(k) ∇f (x(k) )
x
x(k+1) = ΠC x
b(k+1)
k =k+1
Fin tant que
Théorème 5.3.1 (Convergence). Soit f une fonction de classe C 1 définie de
Rn dans R. On suppose que f est elliptique de dérivée lipschitzienne. Alors,

si on choisit le pas ρ(k) dans un intervalle [β1 , β2 ] tel que 0 < β1 < β2 < M 2

(où α et M sont respectivement les constantes d’elliplicité

(∇f (x) − ∇f (y))T (x − y) ≥ αkx − yk2 )

et d’inégalité lipschitzienne

(kf (x) − f (y)k ≤ M kx − yk).

La suite (x(k) )k définie par la méthode du gradient projeté converge vers la


solution du problème.
Exemple 5.3.1. – Pour des contraintes de type x ≥ 0, l’opérateur de pro-
jection est
ΠC (x) = max(xi , 0)i=1,··· ,m .
5.4 Méthode Lagrange-Newton pour des contraintes égalité 112

– Pour des contraintes de type a ≤ x ≤ b, l’opérateur de projection est



 b, si x > b,
ΠC (x) = x, si a ≤ x ≤ b,
a, si x < a.

5.4 Méthode Lagrange-Newton pour des contraintes


égalité
5.4.1 Cas d’un problème quadratique avec des contraintes
affines égalités
Considérons un problème quadratique avec contraintes affines de type
égalité :
min 21 xT Qx − cT x,


Ax = b
où Q est une matrice carrée de R d’ordre n × n, c un vecteur de Rn , A une
matrice de R d’ordre m × n et b un vecteur de Rm .
Les conditions de KKT de premier ordre nous donnent

∇x ( 12 xT Qx − cT x + λT (Ax − b)) = 0,


Ax = b,

où λ ∈ Rm est le vecteur multiplicateur de Lagrange associé aux contraintes


Ax = b.
Par conséquent, le couple optimal (x∗ , λ∗ ) est la solution du système :

Qx∗ − c + AT λ∗ = 0,


Ax∗ = b.

Ce système peut s’écrire comme suit :


  ∗   
Q AT x c
= .
A 0 λ∗ b
 
Q AT
Si la matrice est inversible, le système admet une solution que
A 0
l’on peut calculer par une des méthodes de résolution des systèmes linéaires.
5.5 Méthode de Newton projetée 113

5.4.2 Cas d’un problème non quadratique


Considérons un problème non quadratique suivant :

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

où f : Rn → R et g : Rn → Rm sont de classe C 2 .


Les conditions de premier ordre de KKT s’écrivent comme suit :

∇x L(x, λ) = 0,
g(x) = 0,

où λ ∈ Rm et L(x, λ) = f (x) + λT g(x) est le lagrangien du problème. On


résoud ce système d’équations non linéaires par la méthode de Newton. C’est
l’algorithme de Lagrange-Newton énoncé comme suit :
– Initialisation : k = 1, Choix de (x(0) , λ(0) ) ∈ Rn × Rm .
– Itération k
– Tant que le critère d’arrêt est non satisfait, faire
Résoudre le système linéaire suivant :
 2   (k)   
∇x,x L(x(k) , λ(k) ) ∇x g(x(k) )T d ∇x L(x(k) , λ(k) )T
=−
∇x g(x(k) ) 0 y (k) g(x(k) )

où ∇2x,x L(x(k) , λ(k) ) est le hessien de L par rapport à x.


Poser
x(k+1) = x(k) + d(k)
λ(k+1) = λ(k) + y (k)
k = k + 1.
– Fin tant que

5.5 Méthode de Newton projetée


5.5.1 Cas de contraintes de type x ≥ 0
Considérons le problème suivant :

min f (x)
(5.20)
x≥0
5.5 Méthode de Newton projetée 114

où f est de classe C 2 sur Rn . Si H (k) désigne la matrice hessienne de f en


(k)
x , une itération de la méthode de Newton est de la forme suivante :

x(k+1) = x(k) − [H (k) ]−1 (∇f (x(k) ).

On peut affiner en introduisant un pas α(k) > 0, ce qui donne :

x(k+1) = x(k) − α(k) [H (k) ]−1 (∇f (x(k) ).

Si on projete sur l’ensemble des contraintes, on obtient :


+
= x(k) − α(k) [H (k) ]−1 (∇f (x(k) )
 (k+1)
x

où x+ = max(xi , 0)1≤i≤n .


On a le théorème de convergence suivant :
Théorème 5.5.1. On suppose que f est convexe et est de classe C 2 et que le
∂f
problème (5.20) a une solution unique x∗ vérifiant ∂x i
(x∗ ) > 0, ∀i ∈ Ia (x∗ ),

(Ia (x ) est l’ensemble des indices actifs). On suppose de plus que l’on peut
trouver m1 et m2 deux réels strictement positifs tels que :

m1 kzk2 ≤ z T ∇2 f (x)z ≤ m2 kzk2 ,

dans chacun des cassuivants :


– pour tout z ∈ x/f (x) ≤ f (x(0) ) , d’une part ;
– x dans une boule centrée en x∗ et z 6= 0 tel que zi = 0 pour i ∈ Ia (x∗ ),
d’autre part.
Alors la suite x(k) engendrée par l’algorithme converge vers x∗ et le taux de
convergence est superlinéaire. On peut alors généraliser l’algorithme précédent
au problème à contraintes bornées.

5.5.2 Cas de contraintes de bornes


Dans ce cas, le problème se présente comme suit :

min f (x)
(5.21)
a≤x≤b
Nous appliquons les itérés de la méthode de Newton projetée comme dans le
cas du problème (5.20), en utilisant la projection suivante :
Proj
= x(k) − α(k) [H (k) ]−1 (∇f (x(k) )
 (k+1)
x
5.6 Méthode d’Uzawa 115

où pour tout z ∈ Rn , z Proj = ΠC (z) désigne le vecteur :



 bi si bi ≤ zi ,
Proj
[z]i = zi si ai ≤ zi ≤ bi ,
ai si zi ≤ ai .

5.6 Méthode d’Uzawa


L’idée générale de la méthode est de considérer le Lagrangien L au lieu
de la fonction f . Ce choix est motivé par, au moins, deux raisons :
– La fonction de Lagrange L englobe la fonction f et les cotraintes g et
h ; donc L représente bien le problème ;
– Ensuite, nous avons vu qu’une condition nécessaire du premier ordre
pour que x∗ soit un minimum de f sous les contraintes est que x∗
(associé aux multiplicateurs de Lagrange) soit un point critique de L.
Notre problème à considérer est :

 min f (x)
hj (x) = 0 1 ≤ j ≤ l,
gi (x) ≤ 0 1 ≤ i ≤ m.

Le Lagrangien du problème est :


l
X m
X
L(x, µ, λ) = f (x) + µj hj (x) + λi gi (x).
j=1 i=1

Définition 5.6.1. On appelle point-selle de L sur Rn × Rl × R+m tout triplet


(x∗ , µ∗ , λ∗ ) ∈ Rn × Rl × R+m vérifiant l’équation suivante :

L(x∗ , µ, λ) ≤ L(x∗ , µ∗ , λ∗ ) ≤ L(x, µ∗ , λ∗ ), ∀(x, µ, λ) ∈ Rn × Rl × R+m .

On a alors le résultat suivant :


Théorème 5.6.1. Supposons que f, h et g soient des fonctions de classe C 1
et que le triplet (x∗ , µ∗ , λ∗ ) ∈ Rn × Rl × R+m soit un point selle de L sur
Rn × Rl × R+m . Alors, ce triplet vérifie les conditions de KKT.
Théorème 5.6.2. Supposons que f, h et g soient des fonctions convexes et
de classe C 1 . Alors, le triplet (x∗ , µ∗ , λ∗ ) ∈ Rn × Rl × R+m est un point selle
de L sur Rn × Rl × R+m si et seulement s’il vérifie les conditions de KKT.
5.6 Méthode d’Uzawa 116

L’algorithme d’Uzawa se base sur ces théorèmes. Il consiste à chercher un


triplet (x∗ , µ∗ , λ∗ ) ∈ Rn × Rl × R+m vérifiant les conditions de KKT de la
façon suivante :
1. Pour (µ∗ , λ∗ ) fixé dans Rl × R+m , nous allons chercher le minimum sur
Rn de la fonction définie ainsi :

x → L(x, µ∗ , λ∗ ).

2. Pour x∗ fixé sur Rn , on cherche le maximum sur Rl ×R+m de la fonction


définie ainsi :
(µ, λ) → L(x∗ , µ, λ).
En faisant ces deux calculs simultanément, on obtient l’algorithme d’Uzawa
suivant :
Initialisation – Poser k = 0 ;
– Choisir µ(0) ∈ Rl et λ(0) ∈ R+m
Itération k : Tant que le critère d’arrêt n’est pas satisfait, faire
a) Calculer x(k) ∈ Rn solution du problème :

min L(x, µ(k) , λ(k) )
x ∈ Rn .

b) Calculer µ(k+1) et λ(k+1) comme suit :


(
(k+1) (k)
µj = µj + ρhj (x(k) ), 1 ≤ j ≤ l,
(k+1) (k) (k)
λi = max(0, λi + ρgi (x )), 1 ≤ i ≤ m

où ρ > 0 est un réel fixé.

Théorème 5.6.3 (Convergence). On suppose que f est de classe C 1 et ellip-


tique, que h est affine, g est convexe de classe C 1 et que g et h sont lipschit-
ziennes. On suppose de plus que la fonction de Lagrange L possède un point-
selle (x∗ , µ∗ , λ∗ ) sur Rn × Rl × R+m . Alors, il existe ρ1 , ρ2 avec 0 < ρ1 < ρ2
tels que ∀ρ ∈ [ρ1 , ρ2 ] la suite (x(k) )k>0 générée par l’algorithme converge vers
x∗ .
5.7 Exercices 117

5.7 Exercices
Exercice 5.7.1. Expliquer si les problèmes suivants admettent des solutions
optimales : 
 min
 x1 + x2 ,
x1 + x22 = 0,
2

(5.22)

 0 ≤ x1 ≤ 1,
0 ≤ x2 ≤ 1.


 min x1 + x2 ,
x2 + x22 ≤ 1, (5.23)
 1
x1 + x2 = 3.

min x1 x2 ,
(5.24)
x1 + x2 = 2.
Exercice 5.7.2. Montrer que dans le problème de Fletcher, si on élimine x en
termes de y, alors la bonne solution du problème est obtenue en résolvant le
problème sans contraintes.
Exercice 5.7.3. Considérons le problème de recherche du point de la parabole
y = 51 (x − 1)2 le plus proche du point (x, y) = (1, 2), dans le sens de norme
Euclidienne.
1. Modéliser ce problème en un programme de minimisation avec contraintes ;
2. Trouver tous les points de Karush-Kuhn-Tucker (KKT),
3. Déterminer les points correspondant aux solutions optimales.
Exercice 5.7.4. Le problème de recherche de la plus courte distance entre
un point x0 ∈ Rn et l’hyperplan d’équation {x\Ax = b} où les lignes de
la matrice A sont linéairement indépendantes et b, un vecteur colonne de
taille n. Ce problème peut s’écrire comme un problème de programmation
quadratique :
min 12 (x − x0 )T (x − x0 ),


Ax = b.
– Montrer que le multiplicateur de Lagrange, à l’optimum est :

λ∗ = (AAT )−1 (Ax0 − b).

– Montrer que la solution optimale est :

x∗ = x0 + AT (AAT )−1 (b − Ax0 ).


5.7 Exercices 118

– Montrer que, dans le cas où A est un vecteur ligne, la plus petite dis-
tance entre x0 et l’hyperplan vaut :
kb − Ax0 k
d= .
kAk
Exercice 5.7.5. Considérons le problème de minimisation suivant :
1

min 1+x 2,

x≥1
Ecrire la fonction de pénalisation P (x, µ) associée à ce problème, puis montrer
que P (x, µ) est non bornée pour toute valeur positive de µ.
Exercice 5.7.6. On considère la fonctionnelle f définie sur R2 par : f (x, y) =
2x2 +3xy+2y 2 . On appelle Q le quadrant défini par : Q = x ≤ − 12 , y ≤ − 12 .


– Donner les étapes de l’algorithme du gradient projeté appliquées au


problème de minimisation suivant :

min f (x, y),
(x, y) ∈ Q.
– Donner les étapes de l’algorithme de Newton projeté appliquées à ce
problème.
– Donner les étapes de l’algorithme Uzawa appliquées à ce problème.
Exercice 5.7.7. En utilisant la méthode d’élimination, résoudre les problèmes
suivants :
– min f (x, y) = xy, sous x − y = 1,
– min f (x, y) = x2 + y 2 , sous x + y = 2,
– min f (x, y) = (x − 3)2 + (y + 1)2 , sous 2x − y = 1.
Exercice 5.7.8. Considérons le problème de minimisation suivant :
1

min 1+x 2,

x ≥ 1.
Ecrire la fonction de pénalisation Q(x, µ) associée à ce problème, puis montrer
que Q(x, µ) est non bornée pour toute valeur positive de µ.
Exercice 5.7.9. Considérons le problème de minimisation suivant :

 min x,
x2 ≥ 0,
x + 1 ≥ 0,

5.7 Exercices 119

pour lequel x∗ = −1 est la solution.


Ecrire la fonction de pénalisation Q(x, µ) associée à ce problème et trouver
les minimums locaux. Montrer que pour chaque séquence {µk }k telle que
µk → 0, il existe une séquence de minimums locaux x(µk ) qui converge vers
0.
Exercice 5.7.10. Vérifier que les conditions de KKT du problème suivant :

min f (x),
l ≥ x ≤ u,

sont équivalentes à la condition :

P[l,u] .∇f (x) = 0,

où P[l,u] est l’opérateur de projetion sur [l, u]. Indication : L’opérateur de
projection du vecteur g ∈ Rn sur [l, u] est défini ainsi :

 min(0, gi ), si xi = li ,
(P[l,u] g)i = gi , si xi ∈ [li , ui ],
max(0, gi ), si xi = ui ,

Exercice 5.7.11. Soit (P) le problème d’optimisation suivant :



 min f (x, y) = 3x2 + y 2 + xy − x,
g1 (x, y) = x + y ≤ 0,
g2 (x, y) = 1 − x ≤ 0,

1. Montrer que le point (1, −1) est régulier et qu’il vérifie les conditions
de Karush-Kuhn-Tucker.
2. Pour k ≥ 1 entier et pour tout (x, y) ∈ R2 , on définit la fonction :

fk (x, y) = f (x, y) + k[(g1− (x, y))2 + (g2− (x, y))2 ]

où g1− (x, y) = max(0, x + y) et g2− (x, y) = max(0, 1 − x).


Soit le problème (Pk ) défini : min(x,y)∈R2 fk (x, y).
a) En supposant que x + y > 0 et 1 − x > 0, donner (xk , yk ) la solution
optimale de (Pk ) en fonction de k. Vérifier que pour tout k ≥ 1, on
a xk + yk > 0 et 1 − xk > 0, puis calculer la limite de la suite (xk , yk )
lorsque k tend vers l’infini.
5.7 Exercices 120

b) Montrer que (g1− (x, y))2 et (g2− )2 sont convexes. En déduire que
fk (x, y) est strictement convexe et que la solution (xk , yk ) trouvée
en a) est l’unique solution de (Pk ). En déduire une solution optimale
de (P).
– Calculer les limites des suites 2kg1 (xk , yk ) et 2kg2 (xk , yk ). Quelles
valeurs retrouve-t-on ?
Indication : Faire attention au calcul de ∇(g1− (x, y))2 et de ∇(g2− (x, y))2
Exercice 5.7.12. On considère le problème suivant où (x1 , x2 ) ∈ R2 :

min f (x1 , x2 ) = 3x21 + 2x22 ,
x1 + x2 ≥ 1,

Exprimer le problème graphiquement.

Donner les conditions de Karush-Kuhn-Tucker et les résoudre.

Sont-elles suffisantes pour l’optimalité ? Justifier votre réponse.

En déduire la solution du problème.

Résoudre le problème par la méthode de pénalisation en prenant µk =
1/2k.
– Retrouver le multiplicateur de Lagrange des conditions de Karush-
Kuhn-Tucker.
Exercice 5.7.13. On considère le problème suivant où (x, y) ∈ R2 :

min f (x, y) = y,
x2 + y 2 ≤ 1,
1. Montrer que le point (0, 1) est régulier et qu’il vérifie les conditions de
Karush-Kuhn-Tucker.
2. Pour k ≥ 1 entier et pour tout (x, y) ∈ R2 , on définit la fonction :
fk (x, y) = f (x, y) + k(g − (x, y))2
où g − (x, y) = max(0, x2 + y 2 − 1).
Soit le problème (Pk ) défini : min(x,y)∈R2 fk (x, y).
a) Donner (xk , yk ) la solution optimale de (Pk ) en fonction de k. Vérifier
que pour tout k ≥ 1, on a x2k + yk2 > 1, puis calculer la limite de la
suite (xk , yk ) lorsque k tend vers l’infini.
b) Montrer que (g − (x, y))2 est convexe. En déduire que fk (x, y) est
strictement convexe et que la solution (xk , yk ) trouvée en a) est
l’unique solution de (Pk ). En déduire une solution optimale de (P).
– Calculer la limite de la suite 2kg(xk , yk ). Quelle valeur retrouve-t-on ?
Chapitre 6

La programmation quadratique

6.1 Introduction
La programmation quadratique est un cas intermédiaire entre la program-
mation linéaire et la programmation non linéaire. C’est un cas particulier du
problème (4.1), avec une fonction objectif quadratique et les m contraintes
linéaires.
Un nombre important des problèmes de l’industrie, de l’économie, des fi-
nances et des différents types de réseaux, etc peuvent se formuler sous forme
de programmes quadratiques.
Illustrons ces derniers par deux exemples numériques simples :
Exemple 6.1.1. Une entreprise produisant du savon tente de minimiser les
coûts perdus dûs aux retards de livraison. Lors d’un retard de livraison,
l’entreprise est pénalisée de deux manières : les coûts dûs aux manques à
gagner et les coûts dûs aux pénalités des retards, imposées par les clients
concernés par ces retards.
On note par f les coûts totaux perdus lors des retards de livraison ; x1 la
variable désignant les manques à gagner ; x2 la variable désignant les pénalités
de retard.
La modélisation économétrique de ce problème nous donne la formulation
suivante : 

 f (x1 , x2 ) = −3x2 − 2x21 + 2x1 x2 → min,
x1 + x2 ≤ 2,


 2x1 − x2 ≤ 1,
x1 , x2 ≥ 0,

121
6.2 Programmation convexe 122

c’est un programme quadratique.


Exemple 6.1.2. Un investisseur souhaite retenir p projets parmi n. Chaque
projet a le même coût et a un rendement représenté par une variable aléatoire.
Les paramètres suivants :
– l’espérance de rendement ei , (i = 1, . . . , n),
– la variance σi , (i = 1, . . . , n)
– la covariance associée à chaque couple de projets σij , (i = 1, n; j = 1, n)
sont connus. Ils sont estimés, par exemple, à partir d’un historique des ren-
dements observés.
Le problème consiste à choisir p projets de façon à obtenir une espérance
de rendement global supérieure ou égale à une valeur fixée ρ tout en mi-
nimisant le risque, c’est à dire la variance de ce rendement. Le programme
mathématique convexe en variables bivalentes associé est :
r(x) = p12 ni=1 nj=1 σij xi xj → min,
 P P
 P
n
xi = p, (6.1)
 Pi=1 n
i=1 ei xi ≥ pρ,

où 
1, si le projet i est choisi,
xi =
0, sinon
La fonction objectif de ce programme est quadratique et les contraintes sont
linéaires.
Schématiquement, l’investisseur souhaite constituer un portefeuille de projets
et arbitrer entre les gains et les risques.
Le hessien de la fonction objectif du problème (6.1) n’est autre que la matrice
de variance-covariance, qui est semi-définie positive ; la fonction r(x) est alors
convexe. Le problème (6.1) est donc un programme quadratique convexe.

6.2 Programmation convexe


L’hypothèse de convexité apporte élégance et simplicité à la théorie de
l’optimisation. En particulier les conditions nécessaires deviennent également
suffisantes, et tout le résultat acquiert un caractère global.
Définition 6.2.1. On dit qu’un programme mathématique est convexe (resp.
strictement convexe), s’il consiste à minimiser une fonction convexe (resp.
strictement convexe) sur un domaine convexe.
6.2 Programmation convexe 123

L’étude des problèmes convexes et des algorithmes de résolution corres-


pondants est l’objet de la programmation convexe. L’hypothèse de convexité
est cruciale en optimisation. Notons que
X Les problèmes convexes sont synonymes de minimisation.
X Les problèmes convexes sont les bons problèmes de la théorie, ceux
pour lesquels il existe des algorithmes de résolution efficaces.
X L’hypothèse de convexité ne garantit cependant ni l’existance ni l’uni-
cité d’une éventuelle solution.
Citons certaines propriétées et théorèmes concernant la programmation convexe.
Propriété 6.2.1. Soit F une fonction convexe définie sur un convexe S de
Rn . Alors l’ensemble des points où F atteint son minimum est convexe.
Propriété 6.2.2. Tout problème strictement convexe admet au plus une
solution.
Propriété 6.2.3. Tout minimum local est un minimum global.
Propriété 6.2.4. Si la fonction F est strictement convexe, alors son mini-
mum global est atteint en un seul point x0 .
Considérons d’abord le problème sans contraintes donné sous la forme
suivante :
minn F (x)
x∈R

Théorème 6.2.1. Soit F une fonction convexe continûment différentiable


sur Rn . Alors les conditions suivantes sont équivalentes :
(i) x0 est un minimum global de F sur Rn .
(ii) x0 est un minimum local de F sur Rn .
(iii) x0 est un point stationnaire de F, i.e, ∇F (x0 ) = 0.
Démonstration. [(i) =⇒ (ii)] : Tout minimum global est minimum local.
[(ii) =⇒ (iii)] : c’est un résultat directe.
[(iii) =⇒ (i)] : La fonction F étant convexe, en vertu du théorème (??) on
a:
F (x) − F (x0 ) ≥ (x − x0 )0 ∇F (x0 ), ∀x, x0 ∈ Rn .
Donc si x0 est un point stationnaire de F, on déduit immédiatement que :

F (x) ≥ F (x0 ) pour tout x ∈ Rn .


6.2 Programmation convexe 124

Considérons maintenant le problème avec contraintes d’égalités données


sous la forme (??), où F est une fonction convexe de classe C 1 .

Théorème 6.2.2. Soit (x0 , λ0 ) un couple de vecteurs vérifiant la condition


de lagrange :
∇L(x0 , λ0 ) = 0.
Alors le vecteur x0 constitue un minimum global de F sur S = {x ∈ Rn :
Ax = b}.

Démonstration. En effet, le théorème (??) nous permet d’écrire

F (x) − F (x0 ) ≥ (x − x0 )0 ∇F (x0 ), ∀x, x0 ∈ S

d’où
m
X
0
F (x) − F (x ) ≥ − λ0 A0i (x − x0 )
i=1
m
X
≥ − λ0 (A0i x − A0i x0 )
i=1
Xm
≥ − λ0 (bi − bi ) = 0 ∀x ∈ S.
i=1

Par conséquent, x0 est un minimum global de F sur S


Ainsi les conditions de Lagrange sont donc à la fois des conditions nécessaires
et suffisantes de minimalité (c’est le théorème de lagrange-convexe).
Considérons le deriner problème, avec contraintes d’inégalités où F est une
fonction convexe de classe C 1 .

Théorème 6.2.3. Soit (x0 , λ0 ), avec x0 ∈ S, un couple de vecteurs vérifiant


la condition de Karush-Kuhn-Tucker :
1. ∇x L(x0 , λ0 ) = 0, λ0i ≥ 0, i ∈ I.
2. λ0i gi (x0 ) = 0, i ∈ I.
Alors le vecteur x0 constitue un minimum global de F sur S = {x ∈ Rn :
Ax ≤ b.}
6.2 Programmation convexe 125

Démonstration. En effet, le théorème (??) nous permet d’écrire

F (x) − F (x0 ) ≥ (x − x0 )0 ∇F (x0 ), ∀x ∈ S,

d’où m
X
F (x) − F (x0 ) ≥ − λ0i (x − x0 ), ∀x ∈ S.
i=1

Comme λ0i 0
= 0, pour i ∈ I0 (x , ) alors on aura :
X
F (x) − F (x0 ) ≥ − λ0i A0i (x − x0 )
i∈I0 (x0 ,)
X
≥ − λ0i (A0i x − A0i x0 )
i∈I0 (x0 ,)
X
≥ − λ0i (A0i x − bi ) ≥ 0, ∀x ∈ S.
i∈I0 (x0 ,)

Par conséquent, x0 est un point minimum global de F sur S.


Ainsi les conditions de KKT sont donc à la fois des conditions nécessaires
et suffisantes de minimalité (c’est le théorème de KKT-convexe).

6.2.1 Programmation quadratique convexe (P.Q.C)


Il s’agit d’une classe de problème d’optimisation où la fonction objectif est
quadratique, s’écrivant sous la forme F (x) = 12 x0 Dx+c0 x, avec D symétrique,
que l’on minimise sur un polyèdre convexe fermé. Ce genre de programme
est convexe dés que la matrice D est semi-définie positive.
Remarque 6.2.1. On remarquera qu’un problème linéaire n’est autre qu’un
problème quadratique dégénéré (D = 0), et c’est toujours un problème
convexe.
L’étude des problèmes quadratiques convexes constitue un domaine propre
de la théorie de la programmation quadratique ; le résultat le plus remar-
quable est le suivant :

Théorème 6.2.4. Pour tout problème quadratique convexe dont la valeur


est finie admet au moins une solution.
6.2 Programmation convexe 126

6.2.2 Dualité en programmation quadratique convexe


Le concept de dualité joue un rôle très important en programmation
mathématique. Le but est de trouver une formulation alternative équivalente
du problème de programmation mathématique, qui convient le plus au calcul
ou qui a une signification théorique importante. Le problème original est ap-
pelé problème primal et le problème transformé est le problème dual. Souvent
les variables du dual peuvent être interprétées comme des multiplicateurs de
Lagrange pour le cas linéaire et prennent la valeur λ0 comme solution duale,
quand λ0 est le multiplicateur associé à la solution optimale primale x0 . Ce-
pendant, dans le cas non linéaire, il existe toujours une fonction objectif,
souvent reliée à la fonction de Lagrange, qui doit être optimisée. Ici, on trai-
tera de la dualié associée à un problème de programmation convexe comme
problème primal. Il est important de remarquer que si le problème primal
n’est pas convexe, alors le problème dual peut bien ne pas avoir de solution
à partir de laquelle la solution primale peut être déduite. Donc ce n’est pas
toujours possible d’appliquer la dualité comme technique générale dans le
but de chercher une solution.
Nous allons par conséquent nous contenter d’introduire un résultat de base
de la théorie de la dualité en programmation convexe.

6.2.3 Dualité en programmation convexe


Définition 6.2.2 (Problème primal). On définit le problème primal comme
un problème de minimisation, qui consiste à trouver un vecteur x0 , s’il existe,
tel que

 F (x0 ) = minS F (x),
(P CP ) (6.2)
 0
x ∈ S = {x ∈ Rn /gi (x) ≤ 0, i = 1, 2, · · · , m},
où la fonction F est convexe sur l’ensemble S défini par les fonctions gi (x), i =
1, m, qui sont aussi convexes sur Rn .
Définition 6.2.3 (Problème dual). On définit le problème dual de (PCP)
comme un problème de maximisation, qui consiste à trouver deux vecteurs
k 0 ∈ Rn et y 0 ∈ Rm , s’ils existent, tels que

 L(k 0 , y 0 ) = maxV L(k, y),
(P CD) (6.3)
 0 0 n m
(k , y ) ∈ V = {(k, y) ∈ R × R /∇k L(k, y) = 0, y ≥ 0},
6.2 Programmation convexe 127

où L(k, y) = F (k) + y 0 g(k) est la fonction de Lagrange associée au problème


(PCP).

Nous avons alors les théorèmes de la dualité suivants :

Théorème 6.2.5 (Théorème faible de la dualité (Wolfe 1961)). Soient F (x)


et L(k, y) les fonctions objectives respectivement des problèmes primal et
dual. On a alors

L(k, y) ≤ F (x), ∀(k, y) ∈ V, ∀x ∈ S.

Démonstration. Comme F (x) est convexe, on peut écrire

F (x) − F (k) ≥ ∇0 F (k)(x − k).

D’où
F (x) ≥ F (k) + ∇0 F (k)(x − k).
Le couple (k, y) appartient à V . Donc

∇k L(k, y) = ∇F (k) + ∇g(k)y = 0 ⇒ ∇F (k) = −∇g(k)y,

et
F (x) ≥ F (k) − y 0 ∇0 g(k)(x − k).
De la convexité de la fonction g(k), on déduit

F (x) ≥ F (k) + y 0 (g(k) − g(x)).

Comme y 0 g(x) ≤ 0, on obtient alors

F (x) ≥ F (k) + y 0 g(k) ⇒ L(k, y) ≤ F (x).

Théorème 6.2.6 (Théorème de la dualité de Wolfe (1961)). Soit x0 une


solution optimale du problème primal (6.2) Alors, il existe y 0 ∈ Rm , y 0 ≥ 0,
tel que le couple (x0 , y 0 ) est une solution optimale du problème dual 6.3 et
on a
F (x0 ) = L(x0 , y 0 ).
6.3 Les méthodes de résolution 128

Démonstration. Le théorème de Karush-Kuhn-Tucker nous assure qu’il existe


y 0 ∈ Rm , y 0 ≥ 0, tel que le couple (x0 , y 0 ) satisfait les conditions :

∇F (x0 ) + ∇g(x0 )y 0 = 0,
y 0 g(x0 ) = 0,
g(x0 ) ≤ 0,
y0 ≥ 0,
Par conséquent, on en déduit que

(x0 , y 0 ) ∈ V == {(k, y) ∈ Rn × Rm /∇F (k) + ∇g(k)y = 0, y ≥ 0}

En utilisant le théorème précèdent et l’égalité y 0 g(x0 ) = 0, on obtient

L(k, y) ≤ F (x0 ) = F (x0 ) + y 0 g(x0 ) = L(x0 , y 0 ), ∀(k, y) ∈ V.

Ceci prouve que le couple (x0 , y 0 ) réalise un maximum pour le problème dual.
De plus on a F (x0 ) = L(x0 , y 0 ).

6.3 Les méthodes de résolution


Beaucoup d’algorithmes ont été développés pour la résolution d’un problème
quadratique. Certaines de ces méthodes sont exactes et d’autres approxima-
tives. En 1973, M. Simonnard [17] a transformé le problème quadratique
initial en un problème linéaire équivalent pour lui appliquer la méthode du
simplexe. Karmakar [8] a élaboré un algorithme polynomial pour résoudre
des problèmes de programmation linéaire. L’algorithme de Karmakar génère
une suite de points intérieurs de l’ensemble réalisable qui converge vers la
solution optimale. Cet algorithme est effectif et compétitif avec la méthode
du simplexe en termes de temps de résolution. Ye et Tse [20] ont présenté
une extension de cet algorithme pour la programmation quadratique convexe
en 1989. Mais la méthode la plus classique est celle de Wolfe [19], qui n’est
autre que la méthode du simplexe légèrement modifiée, développée en 1959.

6.3.1 La méthode de Wolfe pour un PQC standard


Formulons le théorème de KKT pour le problème suivant :
F (x) = 21 xT Dx + cT x → min,

(6.4)
Ax = b, x ≥ 0,
6.3 Les méthodes de résolution 129

où DT = D ≥ 0, c ∈ Rn , b ∈ Rm , rangA = m < n.


Ce problème peut encore s’écrire sous la forme équivalente suivante :


 F (x) = 21 xT Dx + cT x → min,
Ax − b ≤ 0,

(6.5)

 −Ax + b ≤ 0,
−x ≤ 0,

Le point de minimum x0 est alors caractérisé par les équations et les inégalités
suivantes : il existe deux m−vecteurs λ01 ≥ 0, λ02 ≥ 0 ainsi qu’un n−vecteur
δ 0 ≥ 0 tels que  ∂L 0 0 0 0
 ∂x
(x , λ1 , λ2 , δ ) = 0,
 T

 λ (Ax0 − b) = 0,
0
 01T


λ2 (−Ax0 + b) = 0,
T

 δ 0 x0 = 0,
0
− b = 0,

 Ax



0
x ≥ 0,
où
1
L(x, λ1 , λ2 , δ) = xT Dx + cT x + λT1 (Ax − b) + λT2 (−Ax + b) − δ T x,
2
∂L
(x, λ1 , λ2 , δ) = Dx + c + AT λ1 − AT λ2 − δ.
∂x
En posant λ = λ1 − λ2 , λ ∈ Rm , le point x0 est défini par le système suivant :

Dx0 + AT λ0 − δ 0 = −c, (6.6)


Ax0 = b, (6.7)
T
δ 0 x0 = 0, (6.8)
0T 0
λ (Ax − b) = 0, (6.9)
x0 ≥ 0, λ0 ∈ Rm , δ 0 ≥ 0. (6.10)

Comme l’équation (6.9) est tout le temps vérifiée, le système se réduit à :

Dx0 + AT λ0 − δ 0 = −c,
Ax0 = b,
T
δ 0 x0 = 0,
x0 ≥ 0, λ0 ∈ Rm , δ 0 ≥ 0.
6.4 Exercices 130

Un tel système n’est pas linéaire par rapport à (x0 , λ0 , δ 0 ) à cause de l’équation
(6.8). On obtient ainsi un système linéaire de (n + m) équations à (n + m + n)
inconnues, constitué des équations (6.6) et (6.7), avec en plus n équations
non linéaires δj xj = 0, j = 1, n.
Pour trouver une solution telle que δj xj = 0, j = 1, n, il suffit d’obtenir une
solution réalisable basique du système linéaire, avec xj basique et δj non
basique ou vice-versa. Pour cela, on appliquera la première phase du sim-
plexe et on choisira l’indice j0 du vecteur qui entre dans la base de telle sorte
que les vecteurs-colonnes correspondant à xj0 et δj0 ne se retrouvent pas en
même temps dans la base. Pour appliquer la méthode du simplexe, il faut
alors écrire le système (6.6)-(6.7) sous forme standard, à savoir que le second
membre doit être positif ou nul, ainsi que le vecteur λ0 qui doit être réécrit
sous la forme :
λ0i = αi0 − αm+1
0
, αi0 ≥ 0, i = 1, m + 1.

6.4 Exercices
Exercice 6.4.1. On considère la fonction f définie sur R2 par

f (x, y) = x2 + y 2 + xy.

On note
D = {(x, y) ∈ R2 , x2 + y 2 ≤ 1 et x + y ≥ 1}.
– Montrer que f est strictement convexe sur R2 et qu’elle possède un
unique minimum sur D.
– En écrivant les relations de KKT, déterminer le point où f atteint son
minimum sur D.
Exercice 6.4.2. Pour chacune des affirmations suivantes, spécifier si elles sont
vraies ou fausses. Justifier la réponse.
1. Soit f : Rn → R une fonction deux fois continûment différentiable et
soit xk tel que ∇2 f (xk ) est définie positive. Alors la direction de Newton
dN est une direction de descente pour f en xk .
2. Soit q : Rn → R telle que
1
q(x) = xt Qx + g t x + c,
2
6.4 Exercices 131

avec Q ∈ Rn×n symétrique définie positive, g ∈ Rn et c ∈∈ R.


On suppose d1 , . . . , dn Q−conjuguées. Si Q = αI avec α > 0, alors
d1 , . . . , dn sont orthogonales.
3. Soient f : Rn → R et x∗ tel que ∇f (x∗ ) = 0 et ∇2 f (x∗ ) est semi définie
positive. Alors x∗ est un minimum local de f .
Exercice 6.4.3. Soient m, n ∈ N∗ avec n ≥ 2, A ∈ Mn (R) une matrice
symétrique et définie positive, B ∈ Mm,n (R) et d ∈ Rn .
On considère la fonction f : Rn → R donnée par
1
f (x) = xt Ax − dt x, ∀x ∈ Rn
2
et l’ensemble des contraintes C
C = {x ∈ Rn : Bx = 0}.
– Montrer que C 6= ∅ et qu’on peut écrire C comme un ensemble donné
par 2m inégalités larges (à préciser).
– Montrer l’existence et l’unicité d’un point de minimum de f sur C ;
dans la suite nous notons par x∗ ce point de minimum.
– Montrer qu’il existe λ∗ ∈ Rm tel que le système suivant soit satisfait :
Ax∗ − d + B t λ∗ = 0


Bx∗ = 0
Exercice 6.4.4. Dans cet exercice, on étudie une méthode de minimisation
sans contraintes d’une fonction quadratique de la forme :
1
f (x) = xt Ax − xt b.
2
Définition 6.4.1. On dit que les vecteurs di , i = 0, . . . , n − 1 sont conjugués
par rapport à une matrice symétrique définie positive A si :
∀i, j ∈ {i = 0, . . . , n − 1}, i 6= j ⇒ dti Adj = 0.
• On note {di , i = 0, . . . , n − 1} une famille quelconque de vecteurs
conjugués par rapport à une matrice symétrique définie positive A de Rn×n .
On se donne par ailleurs un vecteur b ∈ Rn .
Soit un vecteur initial x0 ∈ Rn arbitraire.
A l’étape (k +1), supposant construits les vecteurs x1 , x2 , . . . , xk , ce qui sous-
entend que les vecteurs (Axl − b), l = 0, . . . , k − 1 sont tous différents de zéro,
deux cas peuvent se présenter :
6.4 Exercices 132

– ou bien Axk − b = 0 et l’algorithme est terminé,


– ou bien Axk − b 6= 0, auquel cas, on définit le nombre

dtk .(Axk − b)
ρk = ,
dtk Adk

puis le vecteur
xk+1 = xk − ρk .dk .
1. Justifier le choix de ρk .
2. En supposant que Axk − b 6= 0, ∀k = 1, . . . , n − 1, exprimer xl , pour l =
1, . . . , n en fonction de x0 , (ρi , i = 0, . . . , n − 1) et (di , i = 0, . . . , n − 1).
3. Montrer que dtk Axk = dtk Ax0 , ∀k = 0, . . . , n − 1.
4. – Calculer dtk (Axn − b).
– Déduire que xn est la solution du système Ax = b.
– Que peut-on dire sur la convergence de la méthode.
Exercice 6.4.5. Considérons le problème de recherche du point de la parabole
y = 51 (x − 1)2 le plus proche du point (x, y) = (1, 2), dans le sens de norme
Euclidienne.
1. Modéliser ce problème en un programme de minimisation avec contraintes ;
2. Trouver tous les points de Karush-Kuhn-Tucker (KKT),
3. Déterminer les points correspondant aux solutions optimales.
Exercice 6.4.6. Le problème de recherche de la plus courte distance entre
un point x0 ∈ Rn et l’hyperplan d’équation {x\Ax = b} où les lignes de
la matrice A sont linéairement indépendantes et b, un vecteur colonne de
taille n. Ce problème peut s’écrire comme un problème de programmation
quadratique :
min 12 (x − x0 )t (x − x0 ),


Ax = b.
– Montrer que le multiplicateur de Lagrange, à l’optimum est :

λ∗ = (AAt )−1 (Ax0 − b).

– Montrer que la solution optimale est :

x∗ = x0 + At (AAt )−1 (b − Ax0 ).


6.4 Exercices 133

– Montrer que, dans le cas où A est un vecteur ligne, la plus petite dis-
tance entre x0 et l’hyperplan vaut :

kb − Ax0 k
d= .
kAk
Chapitre 7

Optimisation d’un problème


linéaire-quadratique convexe à
variables bornées par la
méthode adaptée

7.1 Introduction
On se propose d’étudier un problème linéaire-quadratique à variables
bornées. La méthode utilisée [6, 7], dite adaptée, tient compte des spécificités
du problème et de ce fait, traite les contraintes telles qu’elles se présentent,
c’est à dire, sans chercher à les modifier. Cela évite d’agrandir les dimensions
du problème et permet donc d’économiser l’espace mémoire sur ordinateur.
En outre, cette méthode présente l’avantage d’arrêter l’algorithme dès qu’une
solution suboptimale satisfaisante est obtenue.

7.2 Position du problème et définitions


Le problème de programmation quadratique convexe à variables bornées
se présente comme suit :

 F (x) = 12 xT Dx + cT x −→ min,
Ax = b, (7.1)
d− ≤ x ≤ d+ ,

134
7.2 Position du problème et définitions 135

où DT = D ≥ 0 ; c, d− , d+ et x sont des n-vecteurs ; b un m-vecteur ;


rangA = m < n.
Soit I = {1, 2, . . . , m} : l’ensemble d’indices des lignes de A ;
J = {1, 2, . . . , n} : l’ensemble
S d’indicesTdes colonnes de A ;
J = {1, 2, . . . , n} = JB JN , avec JB JN = ∅, |JB | = m.
On peut fractionner les vecteurs et la matrice de la manière suivante :
d− = d− (J) = (d− + +
j , j ∈ J), d = d (J), x = x(J) = (xj , j ∈ J),
 
xB
x = −− , xB = x(JB ) = (xj , j ∈ JB ), xN = x(JN ) = (xj , j ∈ JN ),
xN
 
cB
c = −− , cB = c(JB ), cN = c(JN ),
cN
A  J) = (aij , 1 ≤ i ≤ m, 1 ≤ j ≤ n); A = (aj , j ∈ J), aj =
 = A(I,
a1j
 .. 
 . ,
amj
A = (AB |AN ), AB = A(I, JB ), AN = A(I, JN ).
Rappelons les définitions que nous avons déjà vues dans le chapitre 2.
Définition 7.2.1. i) Un vecteur x vérifiant les contraintes du problème
(7.1) est appelé plan ou solution réalisable du problème (7.1).
ii) Un plan x0 est dit optimal si
1 1
F (x0 ) = (x0 )T Dx0 + cT x0 = min xT Dx + cT x,
2 2

où x est pris parmi tous les vecteurs vérifiant les contraintes du problème
(7.1).
iii) Un plan x est appelé -optimal ou suboptimal si
1 1
F (x ) − F (x0 ) = (x )T Dx + cT x − (x0 )T Dx0 + cT x0 ≤ ,
2 2
où  est un nombre arbitraire positif ou nul et x0 est une solution
optimale du problème (7.1).
iv) L’ensemble JB ⊂ J, |JB | = m, est appelé support des contraintes de
(7.1) si
detAB 6= 0.
7.3 Formule d’accroissement de la fonction objectif 136

v) Le couple {x, JB }, formé du plan x et du support JB , est appelé plan


de support des contraintes.
vi) Le plan de support est dit non dégénéré si

d− +
j < xj < dj , j ∈ JB .

7.3 Formule d’accroissement de la fonction


objectif
Soit {x, JB } un plan de support des contraintes du problème (7.1) et
considérons un autre plan quelconque x̄ = x + ∆x. L’accroissement de la
fonction objectif s’écrit alors :
1
F (x̄) − F (x) = g T (x)∆x + (∆x)T D(∆x), (7.2)
2
où g(x) = Dx + c est le gradient de la fonction objectf, avec g(x) = g(J) =
(gj , j∈ J),
gB
g = −− , gB = g(JB ), gN = g(JN ).
gN 
Ax = b,
Par ailleurs , on a ⇔ Ax̄ = A(∆x + x) = A∆x + Ax = b ⇒
Ax̄ = b.
A∆x = 0.
 
∆xB
En posant ∆x =  −−  , ∆xB = ∆x(JB ), ∆xN = ∆x(JN ), l’égalité
∆xN
A∆x = 0 peut s’écrire AB ∆xB + AN ∆xN = 0 ; d’où

∆xB = −A−1
B AN ∆xN . (7.3)

On définit le vecteur des potentiels u et le vecteur des estimations E tels


que :
uT = gBT A−1
B , E T = E T (J) = g T − uT A = (EBT , EN
T
),
où
EBT = 0, T
EN T
= gN − uT A N .
7.4 Critère d’optimalité 137

La formule (7.2) devient alors :


1
F (x̄) − F (x) = gBT ∆xB + gN
T
∆xN + (∆xB , ∆xN )T D(∆xB , ∆xN ).
2
En vertu de (7.3), on obtient donc
F (x̄) − F (x) = gBT (−A−1 T
B AN ∆xN ) + gN ∆xN +
1
(−A−1 T −1
B AN ∆xN ), ∆xN ) D(−AB AN ∆xN , ∆xN ),
2
T 
−A−1 −1
 
T −1 T 1 T B AN −AB AN
= [−gB AB AN + gN ]∆xN + (∆xN ) D ∆xN ,
2 IN IN
où IN = I(JN , JN ) est la matrice identité d’ordre (n − m).
Posons
−A−1
 
B AN
Z = Z(J, JN ) = , M = M (JN , JN ) = Z T DZ. (7.4)
IN
Finalement (7.2) aura la forme suivante :

T 1
F (x̄) − F (x) = EN ∆xN + (∆xN )T M ∆xN . (7.5)
2

7.4 Critère d’optimalité


Théorème 7.4.1. Soit {x, JB } un plan de support des contraintes du problème
(7.1). Alors les relations suivantes :
xj = d−

 Ej ≥ 0, si j ,
Ej ≤ 0, si xj = d+
j , (7.6)
− +
Ej = 0, si dj < xj < dj , ∀j ∈ JN ,

sont suffisantes pour l’optimalité du plan x.


Ces mêmes relations sont aussi nécessaires, si le plan de support des contraintes
est non-dégénéré.
Démonstration. Condition suffisante : Soit {x, JB } un plan de support
des contraintes du problème (7.1), vérifiant les relations (7.6). Pour tout plan
x du problème (7.1), la formule d’accroissement (7.5) nous permet d’écrire :

T 1
F (x) − F (x) = EN ∆xN + ∆T xN M ∆xN ≥ EN
T
∆xN ,
2
7.4 Critère d’optimalité 138

car la matrice M est semi-définie positive. D’où


X X
F (x) − F (x) ≥ Ej (xj − xj ) + Ej (xj − xj ).
j∈JN j∈JN
Ej >0 Ej <0

Comme d− + − +
j ≤ x ≤ dj , on a x − dj ≥ 0 et x − dj ≤ 0. Les relations (7.6)
nous permettent ensuite d’écrire :
X X
F (x) − F (x) ≥ Ej (xj − d−
j )+ Ej (xj − d+
j ) ≥ 0.
j∈JN j∈JN
Ej >0 Ej <0

D’où
F (x) ≥ F (x) ⇒ x est optimal.
Condition nécessaire : Soit {x, JB } un plan de support optimal non
dégénéré du problème (7.1) et supposons que les relations (7.6) ne sont pas
vérifiées , c’est à dire , qu’il existe au moins un indice j0 ∈ JN , tel que :
Ej0 < 0, xj0 < d+
j0 ou Ej0 > 0, xj0 > d−
j0 .

On construit un autre plan x = x + θl, où θ est un nombre réel positif et


l = l(J) est un vecteur de direction à construire comme suite :

lj0 = −signEj0 ,
lj = 0, j 6= j0 , j ∈ JN .
D’autre part, on doit avoir
Ax = Ax + θAl = b ⇔ Al = AB lB + AN lN = 0.
D’où
lB = −A−1 −1
B AN lN = AB aj0 signEj0 .

On a donc 
 lj0 = −signEj0 ,
lj = 0, j 6= j0 , j ∈ JN ,
lB = A−1B aj0 signEj0 .

En outre, le vecteur x doit vérifier l’inégalité d− ≤ x ≤ d+ ⇔ d− ≤ x + θl ≤


d+ . En écrivant composante par composante
 −
dj − xj ≤ θlj ≤ d+ j − xj , j ∈ JB ,
− +
dj0 − xj0 ≤ θlj0 ≤ dj0 − xj0 .
7.5 Critère de suboptimalité 139

Comme le plan de support est non-dégénéré, on trouve toujours un nombre


θ positif assez petit tel que le vecteur x sera un plan pour le problème (7.1).
La formule d’accroissement (7.5) nous donne alors

T 1
F (x) − F (x) =EN ∆xN + ∆xN M ∆xN
2
T 1
=θEN lN + θ2 lNT
M lN
 2 
1 T
=θ −Ej0 signEj0 + θlN M lN
2
 
1 T
=θ −|Ej0 | + θlN M lN .
2

Pour θ et l ainsi choisis, on aura −|Ej0 |+ 12 θlN


T
M lN < 0. D’où F (x)−F (x) < 0,
ce qui contredit l’optimalité de x. Donc les relations sont forcément vérifiées
si le plan de support est non-dégénéré.

7.5 Critère de suboptimalité


Les relations (7.6) n’étant pas vérifiées, calculons alors le nombre β(x, JB )
appelé estimation de suboptimalité qui estime l’écart entre la valeur optimale
F (x0 ) et une autre valeur F (x) d’un plan de support des contraintes quel-
conque {x, JB }.

Théorème 7.5.1. Soit {x, JB } un plan de support des contraintes du problème


(7.1) et  un nombre positif ou nul arbitraire. Si le nombre
X X
β(x, JB ) = Ej (xj − d−
j )+ Ej (xj − d+
j ) ≤ , (7.7)
j∈JN j∈JN
Ej >0 Ej <0

Alors {x, JB } est -optimal.

Démonstration. En remplaçant dans la formule d’accroissement (7.5) le vec-


7.6 Méthode de résolution 140

teur x par x0 et en minorant l’expression, on aura donc :


1
F (x0 ) − F (x) =EN T
∆xN + (∆xN )T M ∆xN
2
X 1
= Ej (x0j − xj ) + (∆xN )T M ∆xN
j∈JN
2
X
≥ Ej (x0j − xj ).
j∈JN

D’où
X X X
F (x) − F (x0 ) ≤ Ej (xj − x0j ) = Ej (xj − x0j ) + Ej (xj − x0j ).
j∈JN j∈JN j∈JN
Ej >0 Ej <0

Nous avons d− 0 +
j ≤ xj ≤ dj , j ∈ JN , alors on aura

Ej (xj − x0j ) ≤Ej (xj − d−


j ), si Ej > 0,
Ej (xj − x0j ) ≤Ej (xj − d+
j ), si Ej < 0.

D’où
X X
F (x) − F (x0 ) ≤ Ej (xj − d−
j )+ Ej (xj − d+
j ) ≤ ,
j∈JN j∈JN
Ej >0 Ej <0

Par conséquent x est  − optimal.


– Si β(x) =  = 0, alors x est optimal.
– Si β(x) > , il faut alors améliorer le plan x.

7.6 Méthode de résolution


introduisons les définitions suivantes :
Définition 7.6.1. • On appelle support de la fonction objectif du problème
(7.1), l’ensemble des indices JS ⊂ JN , tel que detM (JS , JS ) 6= 0. où M
est la matrice (7.4). On posera JN N = JN \JS .
• L’ensemble des indices JP = {JB , JS } est appelé support du problème
(7.1), formé du support des contraintes JB et de celui de la fonction
objectif JS .
7.6 Méthode de résolution 141

• On appelle plan de support du problème (7.1), la paire {x, JP } formée


du plan x et du support JP ; il est dit accordé si E(JS ) = 0.
• La direction l est dite admissible si : Al = 0, elle est dite d’amélioration
si en outre E T l < 0.

7.6.1 Construction d’une direction d’amélioration adaptée


l
La méthode de support que nous avons vue dans le chapitre précédent
est une méthode d’amélioration basée sur la métrique du simplexe, mais les
plans de support admettent encore d’autres métriques pour les directions
d’amélioration. Considérons la métrique suivante pour les composantes non
basique de la direction admissible l :
d− +
j − xj ≤ lj ≤ dj − xj , j ∈ JN N = JN \JS . (7.8)
Cette métrique dépend du plan courant x, et de ce fait, elle est dite adaptée.
Afin de calculer les composantes de la direction admissible d’amélioration l,
considérons l’accroissement
X X 1 T
∆F =F (x + l) − F (x) = Ej lj + Ej lj + lN M lN .
j∈J j∈J
2
N N
Ej >0 Ej <0

En tenant compte de la métrique (7.8) , la partie linéaire de ∆F atteint son


minimum pour les valeurs des composantes de l(JN N ) suivantes :
 −
 dj − xj , si Ej > 0,
lj = d+ − xj , si Ej < 0, (7.9)
 j
0, si Ej = 0, pourj ∈ JN N ,
Quant aux composantes l(JS ), elle se déduisent à partir de Ej (x + l) =
0, j ∈ JS . Donc
M (JS , JS )l(JS ) + M (JS , JN N )l(JN N ) = 0.
D’où

l(JS ) = −MS−1 M (JS , JN N )l(JN N ). (7.10)


Ensuite, on calcule l(JB ) de manière à avoir Al = 0 d’où
l(JB ) = −A−1
B (AS lS + AN N lN N ). (7.11)
7.6 Méthode de résolution 142

7.6.2 Changement de plan


On construit alors le nouveau plan x sous la forme
x = x + θ0 l,
où l est la direction d’amélioration définie par les formules (7.9)-(7.11), et le
nombre θ0 est le pas le long de cette direction, avec θ0 = min{1, θj1 , θjS , θF }.
Les nombres 1, θj1 et θjS se calculent de façon à ce que les relations suivantes
soient vérifiées :
d− 0 +
j − xj ≤ θ lj ≤dj − xj , j ∈ JN N ,
d− 0 +
j − xj ≤ θ lj ≤dj − xj , j ∈ JS ,
d− 0 +
j − xj ≤ θ lj ≤dj − xj , j ∈ JB ,

Donc
θj1 = min(θj , j ∈ JB ), θjS = min(θj , j ∈ JS ),
avec

d+
j −xj


 lj
, si lj > 0,
θj = d−
j −x j
 lj
, si lj < 0,

∞, si lj = 0.

Le nombre θ0 = 1 représente le pas correspondant aux indices de JN N .

Quant à θF , il se calcule de façon que le passage de x à x puisse assurer


une relaxation maximale de la fonction objectif, tout en gardant le même
signe pour Ej et E j , où
T
EN (x) =g T (x)Z, E N (x) = E N (x + θ0 l)
E N (x) =EN (x) + θ0 M lN = EN (x) + θ0 δN .
On posera donc θF = σj∗ = min σj , j ∈ JN N , avec
(
E
− δjj , si Ej δj < 0,
σj =
∞, si Ej δj ≥ 0.

δj = M (j, JN )lN .
7.6 Méthode de résolution 143

7.6.3 Estimation de suboptimalité


Calculons la nouvelle estimation de suboptimalité β(x, JB ) en fonction de
β(x, JB ) :
X X
β(x, JB ) = E j (xj − d−
j ) + E j (xj − d+j ).
j∈JN , j∈JN ,
E j >0 E j <0

On a alors
X X
β(x, JB ) = Ej (xj − d−
j )+ Ej (xj − d+
j )
j∈JN , j∈JN ,
E j >0 E j <0
X X
= (Ej + θ0 δj )(xj + θ0 lj − d−
j )+ (Ej + θ0 δj )(xj + θ0 lj − d+
j )
j∈JN , j∈JN ,
Ej >0 Ej <0
X X X X
= Ej (xj − d−
j )+ Ej θ0 lj + θ0 δj (xj − d−
j )+ θ0 δj θ0 lj
j∈JN , j∈JN , j∈JN , j∈JN ,
Ej >0 Ej >0 Ej >0 Ej >0
X X X X
+ Ej (xj − d+
j )+ Ej θ0 lj + θ0 δj (xj − d+
j )+ θ0 δj θ0 lj
j∈JN , j∈JN , j∈JN , j∈JN ,
Ej <0 Ej <0 Ej <0 Ej <0
X X X
= β(x, JB ) + Ej θ0 lj + θ0 δj (xj − d−
j )+ θ0 δj θ0 lj
j∈JN , j∈JN , j∈JN ,
Ej >0 Ej >0 Ej >0
X X X
+ Ej θ0 lj + θ0 δj (xj − d+
j )+ θ0 δj θ0 lj .
j∈JN , j∈JN , j∈JN ,
Ej <0 Ej <0 Ej <0
7.6 Méthode de résolution 144

En vertu des relations (7.9), on aura


X X
β(x, JB ) = β(x, JB ) + θ0 Ej (d−
j − x j ) + θ 0
Ej (d+
j − xj )
j∈JN , j∈JN ,
Ej >0 Ej <0
X X
+ θ0 δj (−lj ) + θ0 δj (−lj )
j∈JN , j∈JN ,
Ej <0 Ej >0
2 2
X X
+ θ0 δj lj + θ0 δj lj
j∈JN , j∈JN ,
Ej >0 Ej <0
2
= β(x, JB ) − θ0 β(x, JB ) − θ0 δN
T
lN + θ0 δN
T
lN
0 0 0 T
= (1 − θ )β(x, JB ) − θ (1 − θ )δN lN .
Donc, on obtient la formule suivante :
β(x, JB ) = (1 − θ0 )(β(x, JB ) − θ0 lT Dl). (7.12)

7.6.4 Changement de support


– Pour θ0 = 1, alors le vecteur x = x0 = x + l est une solution optimale
du problème (7.1).
– Le changement de support s’effectue lorsque θ0 < 1 et β(x, JB ) > .
Trois cas peuvent alors se présenter :
• Si θ0 = θj1 < 1 : contrairement à la méthode du simplexe, le choix
de l’indice j0 n’est pas unique, ce qui fait la particularité de cette
méthode. Lorsque ce cas se réalise pour un indice j1 ∈ JB , on a alors
X X
lj1 = − eTj1 A−1
B a j lj = − xj1 j lj 6= 0,
j∈JN j∈JN

où e est un vecteur unitaire de dimension m. Il existe alors j0 ∈ JN


tel que xj1 j0 6= 0. Cette dernière condition nous assure par conséquent
que J B = (JB \j1 ) ∪ j0 est bel et bien un support.
Si on peut avoir xj1 j0 6= 0, avec j0 ∈ JS , on posera donc
J B = (JB \j1 ) ∪ j0 , J S = (JS \j0 ).
Sinon, on choisira un indice j0 ∈ JN N tel que lj0 6= 0 et on posera
J B = (JB \j1 ) ∪ j0 , J S = JS .
7.6 Méthode de résolution 145

• Si θ0 = θjs : alors J B = JB , J S = JS \js ,


• Si θ0 = θF : alors J B = JB , J S = JS ∪ j∗ ,
Pour ces trois cas sus-cités, on recommencera alors une nouvelle itération
avec le nouveau plan de support accordé {x, J P } si β(x, J B ) > 
avec J P = {J B , J S }.

7.6.5 Algorithme de résolution


Soit un nombre réel positif ou nul quelconque  et un plan de support
initial {x, JP } tel que JP = {JB , JS }, avec JS = ∅ pour plus de facilité.
Algorithme :
Début
1. Soit un plan de support initial {x, JP } du problème (7.1) ;
T
2. calculer le vecteur des estimations EN = E T (JN ) = gN
T
− uT A N ;

• Si β(x, JB ) ≤  Alors x est -optimal ; Aller à Fin.

• Sinon Aller en 3 ;

3. Changement de plan :
Calculer la direction d’amélioration l ;
Calculer le pas θ0 = min{1, θj1 , θjS , θF } ;
Calculer x = x + θ0 l ;
Calculer l’estimation de suboptimalité β(x) = (1 − θ0 )(β − θ0 lT Dl);

• Si β(x) ≤  Alors x est -optimal ; Aller à Fin ;

• Sinon Aller en 4 ;

4. Changement de support :

• Si θ0 = 1 Alors x = x + l ; β(x) = 0 ; x est optimal ; Aller à Fin ;

• Sinon Si θ0 = θj1 , Alors

– Si j0 ∈ JS , Alors J B = (JB \j1 ) ∪ j0 , J S = (JS \j0 );


7.6 Méthode de résolution 146

– Sinon Si j0 ∈ JN N Alors J B = (JB \j1 ) ∪ j0 , J S = JS ;

• Sinon Si θ0 = θjS Alors J B = JB , J S = (JS \jS );

• Sinon Si θ0 = θjF Alors J B = JB , J S = (JS ∪ j∗ );

Si β(x, J B ) > , Alors Aller en 2 en partant de {x, J P }.

Fin.
Chapitre 8

La dualité

8.1 La fonction duale de Lagrange


8.1.1 La fonction de Lagrange
On considère le problème d’optimisation suivant :

 min f (x)
gi (x) ≤ 0, i ∈ {1, · · · , m} (8.1)
hj (x) = 0, j ∈ {1, · · · , p}

avec x ∈ Rn . On suppose que


m p
\ \
S= domgi ∩ domhj ∩ domf
i=1 j=1

est non vide.


On définit le lagrangien L : Rn × Rm × Rp −→ R associé au problème (8.1)
comme suit :
m p
X X
L(x, λ, µ) = f (x) + λi gi (x) + µj hj (x)
i=1 j=1

avec dom L = S ×Rm ×Rp . On désigne par λi les multiplicateurs de Lagrange


associés aux contraintes inégalités gi (x) ≤ 0 ; et µj les multiplicateurs de
Lagrange associés associés aux contraintes égalités hj (x) = 0 du problème
(8.1).

147
8.1 La fonction duale de Lagrange 148

8.1.2 La fonction duale de Lagrange


On définit la fonction duale de Lagrange (ou simplement la fonction duale)
q : Rm ×Rp −→ R comme la valeur minimale du lagrangien en x pour λ ∈ Rm
et µ ∈ Rp comme suit :
m p
X X
q(λ, µ) = inf (f (x) + λi gi (x) + µj hj (x)).
x∈S
i=1 j=1

Remarque 8.1.1. – Quand le lagrangien est non borné inférieurement en


x, la fonction duale prend la valeur −∞.
– Comme la fonction duale est une famille de fonctions affines de (λ, µ),
elle est concave.
– Les variables λ et µ sont appelées les variables duales.

8.1.3 Borne sur la fonction duale


Soit x∗ une solution optimale du problème (8.1) et soit q(λ, µ) la fonction
duale du même problème.
Pour λ ∈ Rm et µ ∈ Rp , λ ≥ 0, on a
q(λ, µ) ≤ f (x∗ ). (8.2)
En effet, supposons que x est une solution réalisable pour le problème (8.1),
i.e,
gi (x) ≤ 0, i = 1, m, et hj (x) = 0, j = 1, p et λ ≥ 0.
Alors p
m
X X
λi gi (x) + µj hj (x) ≤ 0
i=1 j=1

d’où p
m
X X
L(x, λ, µ) = f (x) + λi gi (x) + µj hj (x) ≤ f (x).
i=1 j=1

Donc
q(λ, µ) = inf L(x, λ, µ) ≤ L(x, λ, µ) ≤ f (x).
x∈S

Comme
q(λ, µ) ≤ f (x)
est vérifiée pour un x réalisable quelconque, alors l’inégalité (8.2) est vérifiée.
8.1 La fonction duale de Lagrange 149

Remarque 8.1.2. L’inégalité (8.2) est vérifiée, mais non utile, quand q(λ, µ) =
−∞.
La fonction duale est une borne inférieure non triviale pour f (x∗ ) seulement
quand λ ≥ 0 et (λ, µ) ∈ dom q, i.e, q(λ, µ) > −∞.
Le couple (λ, µ), avec λ ≥ 0 et (λ, µ) ∈ dom q, est dit réalisable dual.

8.1.4 Exemples
Exemple 8.1.1. On considère le problème suivant :

min xt x,
Ax = b

où A ∈ Mp×n (R.


Le lagrangien est
L(x, µ) = xt x + µt (Ax − b)
avec (x, µ) ∈ Rn × Rp .
La fonction duale est donnée par :

q(µ) = inf L(x, µ).


x

Comme L(x, µ) est une fonction quadratique convexe de x, alors on peut


trouver le minimum de cette condition :

∇x L(x, µ) = 2x + At µ = 0

d’où
1
x = − At µ.
2
La fonction duale est donc
1
q(µ) = L(− At µ, µ)
2
1 t
= − µ AAt µ − bt µ
4
qui est une fonction quadratique concave avec µ ∈ Rp .
La borne inférieure (8.2), avec µ ∈ Rp , est ainsi donnée
1
− µt AAt µ − bt µ ≤ inf {xt xAx = b}.
4 x
8.2 Le problème dual de Lagrange 150

Exemple 8.1.2. On considère le problème suivant :



 min ct x,
Ax = b,
x ≥ 0.

La fonction de Lagrange associée à ce problème est ainsi définie :

n
X
t
L(x, λ, µ) = c x − λi xi + µt (Ax − b)
i=1
= −bt µ + (c + At µ − λ)t x.
avec (x, λ, µ) ∈ Rn × Rn Rp .
La fonction duale est donnée par :
q(λ, µ) = inf L(x, λ, µ)
x
= −bt µ + inf (c + At µ − λ)t x
x

C’est une fonction linéaire bornée seulement inférieurement par 0.



−bt µ si c + At µ − λ = 0,
q(λ, µ) =
−∞ sinon
La borne inférieure (8.2) est −bt µ si λ ≥ 0 et c + At µ − λ = 0.
Donc
−bt µ ≤ inf{ct xAx = b, x ≥ 0}
seulement si λ ≥ 0 et c + At µ − λ = 0.

8.2 Le problème dual de Lagrange


Pour chaque couple (λ, µ) avec λ ≥ 0, la fonction duale de Lagrange
donne une borne inférieure pour la valeur optimale f ∗ du problème (8.1).
Donc, on a une borne inférieure qui dépend des paramètres λ et µ.
Une question naturelle se pose alors : quelle est la meilleure borne
inférieure de la fonction duale de Lagrange qu’on peut obtenir ?
Ceci nous conduit au problème d’optimisation suivant :

max q(λ, µ)
(8.3)
λ ≥ 0.
8.2 Le problème dual de Lagrange 151

Ce problème est appelé problème dual de Lagrange associé au problème (8.1).


Dans ce contexte, le problème original (8.1) est appelé problème primal.

Le problème dual de Lagrange (8.3) est un problème d’optimisation convexe,


du fait que la fonction objectif à maximiser est concave et la contrainte est
convexe. Ceci est le cas indépendamment du problème (8.1) (convexe ou non).

8.2.1 Rendre les contraintes duales explicites


Les exemples ci-dessous nous montrent qu’il est possible que le domaine
de définition de la fonction duale

domq = {(λ, µ)q(λ, µ) > −∞}

soit de dimension inférieure à m+p. Ce qui veut dire qu’on peut identifier des
contraintes égalités comme implicites dans la fonction objectif q du problème
duale (8.3).
On forme alors un problème équivalent, dans lequel les contraintes égalités
sont donées explicitement.
Etudions les exemples suivants :
Exemple 8.2.1. Etudions le problème dual de Lagrange d’un programme
linéaire standard suivant : 
 min ct x
Ax = b (8.4)
x ≥ 0.

La fonction duale de Lagrange associée à ce problème est précédemment


trouvée et est donnée par :

−bt µ si At µ − λ + c = 0
q(λ, µ) =
−∞ sinon

Ce qui veut dire, le problème dual de Lagrange du PL (8.4) revient à maxi-


miser q sous la condition λ ≥ 0, ie,
 
−bt µ si At µ − λ + c = 0
max q(λ, µ) =

−∞ sinon (8.5)
sous λ ≥ 0

8.2 Le problème dual de Lagrange 152

Comme q n’est finie que si At µ − λ + c = 0, on forme alors un problème


équivalent en rendant ces égalités comme des contraintes explicites :

 max −bt µ
sous At µ − λ + c = 0 (8.6)
λ≥0

qui est équivalent à 


max −bt µ
(8.7)
sous At µ + c ≥ 0
C’est un PL avec des contraintes inégalités.
Le problème dual de (8.4) est le programme (8.5) qui est équivalent (mais
pas le même) que les problèmes (8.6) et (8.7).
On dit alors que le problème (8.6) ou (8.7) est le problème dual de Lagrange
d’un PL standard (8.4).
Exemple 8.2.2. Etudions le problème dual de Lagrange d’un programme
linéaire avec contraintes de type inégalités suivant :

min ct x
(8.8)
Ax ≤ b.
Le lagrangien associé à ce PL est :
L(x, λ) = ct x + λt (Ax − b)
= −bt λ + (At λ + c)t x.
La fonction duale est
q(λ) = inf L(x, λ) = −bt λ + inf (At λ + c)t x
x x

On a 
t t −∞ si At λ + c 6= 0
inf (A λ + c) x =
x 0 si At λ + c = 0
Donc 
−bt λ si At λ + c = 0
q(λ) =
−∞ sinon
La variable λ est une variable duale réalisable si λ ≥ 0 et At λ + c = 0.
Le problème dual du problème (8.8) est

max q(λ)
λ≥0
8.2 Le problème dual de Lagrange 153

qui peut être reformulé en incluant explicitement les conditions de réalisabilité


comme contraintes :

max −bt λ
(8.9)
At λ + c = 0λ ≥ 0
c’est un PL standard.
Remarque 8.2.1. Vérifier que le problème dual de Lagrange du problème (8.9)
est éqquivalent au problème primal (8.8).

8.2.2 La dualité faible


Soit x∗ la solution optimale du problème primal et soit (λ∗ , µ∗ ) la solution
optimale du problème dual associé. Alors, on a l’inégalité suivante :

q(λ∗ , µ∗ ) ≤ f (x∗ ). (8.10)

Cette propriété est appelée ”la dualité faible”.


La propriété (8.10) se réalise quand q(λ∗ , µ∗ ) et f (x∗ ) sont infinies. Par
exemple, si le problème primal est non borné inférieurement, alors on doit
avoir q(λ∗ , µ∗ ) = −∞, c-à-d, le problème dual est irréalisable. Inversement,
si le problème dual est non borné supérieurement q(λ∗ , µ∗ ) = +∞, on doit
avoir f (x∗ ) = +∞, c-à-d, le problème primal est irréalisable.

Définition 8.2.1. La différence f (x∗ ) − q(λ∗ , µ∗ ) est appelée le saut de


la dualité ou fossé de la dualité du problème original (optimal duality
gap).
Cette valeur est toujours non négative.

8.2.3 La dualité forte


Si l’équation
f (x∗ ) = q(λ∗ , µ∗ )
est vérifiée, ie, le gap optimal de la dualité est égal à zéro, alors on dit qu’on
a la dualité forte.
En général, la dualité forte ne se réalise pas. Mais si le problème primal (8.1)
est convexe, alors souvent (mais pas toujours), on a la dualité forte.
8.3 Interprétation du point-selle (Saddle point) 154

8.3 Interprétation du point-selle (Saddle point)


8.3.1 Définition des points-selle (ou cols) ; Problème
de mini-maximisation
Soit l : X × Y −→ R. Un couple (x, y) ∈ X × Y est appelé point-selle (ou
col) de l sur X × Y lorsque

l(x, y) ≤ l(x, y) ≤ l(x, y)

pour (x, y) ∈ X × Y .
L’ensemble des points-selle de l sur X × Y a nécessairement une structure
particulière : c’est un produit cartésien d’ensembles.
La valeur l(x, y) est constante pour tous les points-selle (x, y) de l sur X ×Y :
elle est appelée la valeur selle.

Théorème 8.3.1 (Existence de point-selle). Soient X ⊂ Rn et Y ⊂ Rm


deux ensembles convexes fermés non vides et l : X × Y −→ R.
On suppose :
– Pour tout y ∈ Y , la fonction l(., y) : X −→ R est convexe ; pour tout
x ∈ X, la fonction l(x, .) : Y −→ R est concave. On dit alors que l est
convexe-concave sur X × Y .
– X est borné, ou bien il existe y0 ∈ Y tel que l(x, y0 ) → +∞ quand
kxk → +∞, x ∈ X;
– Y est borné, ou bien il existe x0 ∈ X tel que l(x0 , y) → −∞ quand
kyk → +∞, y ∈ y;
alors l’ensemble des points-selle de l sur X × Y est un convexe compact non
vide de X × Y .

Posons à présent

ϕ : x ∈ X → ϕ(x) = sup l(x, y) (à valeurs +∞ éventuellement)


y∈Y
ψ:y∈Y → ψ(y) = inf l(x, y) (à valeurs −∞ éventuellement)
x∈X

Les définitions mêmes de ”inf” et de ”sup” font que l’on a toujours les
inégalités
ψ(y) ≤ l(x, y) ≤ ϕ(x)
8.3 Interprétation du point-selle (Saddle point) 155

pour tout (x, y) ∈ X × Y .


Et (x, y) est un point-selle de l sur X × Y si et seulement si ψ(y) ≥ ϕ(x);
dans ce cas, ψ(y) = ϕ(x) est la valeur-selle de l(x, y) sur X × Y .
On associe à l les deux problèmes d’optimisation suivants :
 
min sup l(x, y) (Problème de minimisation de sup) (8.11)
x∈X y∈Y

 
max inf l(x, y) (Problème de maximisation de inf) (8.12)
y∈Y x∈X

Alors une condition nécessaire et suffisante pour que l ait des points-selle sur
X × Y est
minϕ(x) = maxψ(y)
x∈X y∈Y

(i.e les optimu sont égaux et atteints).


Dans ce cas, (x, y) est un point-selle exactement lorsque x minimise ϕ sur X
et y maximise ψ sur Y.

8.3.2 Points-selle de lagrangiens


Ici, nous sommes particulièrement intéressés par les points-selle du la-
grangien sur Rn × (Rp × (R+ )m ). On a donc X = Rn et Y = Rp × (R+ )m
et
m p
X X
L : (x, (λ, µ)) ∈ X × Y → L(x, λ, µ) = f (x) + λi gi (x) + µj hj (x).
i=1 j=1

Définition 8.3.1. Soit x un point réalisable du problème (8.11) (x ∈ S) et


λ ≥ 0. On dit que (x, λ, µ) est un point selle de L(x, λ, µ) si :

L(x, λ, µ) ≤ L(x, λ, µ), ∀x ∈ S,
L(x, λ, µ) ≤ L(x, λ, µ), ∀λ ≥ 0, ∀µ.

Proposition 8.3.1 (Caractérisation d’un point-selle). Les points-selle de L


sur Rn × (Rp × (R+ )m ) sont les points (x, λ, µ) tels que :
1. L(x, λ, µ) = min(x, λ, µ) ;
x∈S

2. gi (x) ≤ 0, ∀i = 1, m, hj (x) = 0, ∀j = 1, p;
8.3 Interprétation du point-selle (Saddle point) 156

3. λi gi (x) = 0, ∀i = 1, m.

Sans perte de généralités, on va considérer les points-selle (x, λ) de L sur


R × (R+ )m ).
n

Démonstration. Supposons que (x, λ) est un point selle de L alors

L(x, λ) ≤ L(x, λ) ≤ L(x, λ), ∀x ∈ S, ∀λ ≥ 0.

On a
L(x, λ) ≤ L(x, λ), ∀x ∈ S ⇒ L(x, λ) = minL(x, λ).
x

Le point 1) de la proposition est ainsi démontré.


t
L(x, λ) ≤ L(x, λ) ⇔ f (x) + λt g(x) ≤ f (x) + λ g(x)
D’où
(λ − λ)t g(x) ≤ 0, ∀λ ≥ 0. (8.13)
Si ∃i tel que gi (x) > 0, alors pour λi suffisamment grand, on aurait

(λi − λi )t gi (x) > 0

ceci est impossible d’après l’équation (8.13). Le point 2) est ainsi vérifié.

L(x, λ) ≤ L(x, λ) ⇔ (λ − λ)t g(x) ≤ 0, ∀λ ≥ 0,


t
Si λ = 0, on aura λ g(x) ≥ 0, or
t
λ ≥ 0 et g(x) ≤ 0 ⇒ λ g(x) ≤ 0

d’où
t
λ g(x) = 0 ⇒ λi gi (x) = 0, ∀i.
Le point 3) est ainsi vérifié.
Prouvons la réciproque :
Supposons que les points 1), 2) et 3) sont vrais.
De 1), on a
L(x, λ) ≤ L(x, λ), ∀x ∈ S.
De 2), on a
L(x, λ) = f (x).
8.3 Interprétation du point-selle (Saddle point) 157

D’où
L(x, λ) = f (x) + λt g(x) ≤ f (x) = L(x, λ), ∀λ ≥ 0.
On a alors
L(x, λ) ≤ L(x, λ) ≤ L(x, λ),
d’où (x, λ) est un point selle.

8.3.3 Condition d’optimalité d’un point-selle (Dualité


forte)
Théorème 8.3.2. Si (x, λ) est un point selle de la fonction de Lagrange L
associée au problème suivant :

min f (x)
(8.14)
g(x) ≤ 0
alors
1. L(x, λ) = L(x, λ) = L (x, λ).
x λ≥0
2. x est la solution optimale du problème (8.14).
Démonstration. Par définition, on a
L(x, λ) ≤ L(x, λ) ≤ L(x, λ), ∀x ∈ S, ∀λ ≥ 0.
Ayant
L(x, λ) ≤ L(x, λ), ∀λ ≥ 0 ⇒ L(x, λ) = maxL(x, λ)
λ≥0
et
L(x, λ) ≤ L(x, λ), ∀x ∈ S ⇒ L(x, λ) = minL(x, λ)
x
D’autre part,
t
L(x, λ) ≤ L(x, λ), ∀x ∈ S ⇔ f (x) + λ g(x) ≤ f (x) + λt g(x)
or d’après le point 3) de la proposition précédente, on a
λi gi (x) = 0, ∀i = 1, m
d’où
t
f (x) ≤ f (x) + λ g(x) ≤ f (x), ∀x ∈ S
car
t
λ ≥ 0, g(x) ≤ 0 ⇒ λ g(x) ≤ 0.
Donc x est optimum global de f sur S.
8.3 Interprétation du point-selle (Saddle point) 158

Exercice 8.3.1. Montrer que si (x1 , λ1 ) et (x2 , λ2 ) sont deux points selle de
L(x, λ) alors (x1 , λ2 ) et (x2 , λ1 ) sont deux autres points selle et
L(x1 , λ1 ) = L(x2 , λ1 ) = L(x1 , λ2 ) = L(x2 , λ2 ).

Correction de l’exercice
On suppose les inégalités suivantes pour tout x ∈ S et ∀λ ≥ 0. On a alors
L(x1 , λ) ≤ L(x1 , λ1 ) ≤ L(x, λ1 ) (8.15)
L(x2 , λ) ≤ L(x2 , λ2 ) ≤ L(x, λ2 ) (8.16)
D’après la partie gauche de (8.15), on
L(x1 , λ2 ) ≤ L(x1 , λ1 )
D’après la partie droite de (8.15), on
L(x1 , λ1 ) ≤ L(x2 , λ1 )
D’après la partie gauche de (8.16), on
L(x2 , λ1 ) ≤ L(x2 , λ2 )
D’après la partie droite de (8.16), on
L(x2 , λ2 ) ≤ L(x1 , λ2 )
Ensuite, pour tout x ∈ S et ∀λ ≥ 0, on a
L(x1 , λ) ≤ L(x1 , λ1 ) = L(x1 , λ2 ) = L(x2 , λ2 ) ≤ L(x, λ2 )
Donc
L(x1 , λ) ≤ L(x1 , λ2 ) ≤ L(x, λ2 )
d’où (x1 , λ2 ) est un point selle.
Et pour x ∈ S et ∀λ ≥ 0, on a
L(x2 , λ) ≤ L(x2 , λ2 ) = L(x2 , λ1 ) = L(x1 , λ1 ) ≤ L(x, λ1 )
Donc
L(x2 , λ) ≤ L(x2 , λ1 ) ≤ L(x, λ1 )
d’où (x2 , λ1 ) est un point selle.
Remarque 8.3.1. Il n’existe pas toujours de point selle et s’il en existe un, il
n’est pas forcèment unique.
8.4 Exercices corrigés 159

8.4 Exercices corrigés


8.4.1 Exercice 1
Étant donnés a1 , · · · , an des réels différents de zéro, on considère l’el-
lipsoı̈de plein de Rn défini par comme suit :
( n  2 )
X ui
ξ = u = (u1 , · · · , un ) ∈ Rn | ≤1 .
i=1
ai

Soient x 6∈ ξ fixé et f : Rn → R définie par :


∀u ∈ Rn , f (u) =k u − x k2 .
On cherche à résoudre le problème de minimisation (P) suivant :

min f (u),
u ∈ ξ.
– Déterminer la fonction duale µ ∈ R+ → q(µ) associée au lagrangien
usuel (u, µ) ∈ Rn × R → L(u, µ) dans le problème précédent (P).
– Montrer que q est maximisée sur R+ en un point µ∗ > 0 unique solution
de l’équation (en µ) :
n
X a2i x2i
2 2 = 1.
i=1 (a i + µ)

8.4.2 Solution de l’Exercice 1


1. Pour µ ≥ 0, la fonction de Lagrange
n n
!
X X u i
u ∈ Rn → L(u, µ) = (ui − xi )2 − µ ( )2 − 1
i=1 i=1
a i

est minimisée sur Rn en u(µ) dont les composantes sont


a2i xi
u(µ)i = , i = 1, . . . , n.
a2i + µ
La valeur optimale q(µ) = minn L(u, µ) est
u∈R
n
X x2i µ
q(µ) = 2
− µ.
i=1
a i + µ
8.4 Exercices corrigés 160

q est notre fonction duale.


q est strictement concave continue sur R+ et q(µ) → −∞ quand µ →
+∞. Il existe donc un et un seul µ maximisant q sur R+ .
2. q est dérivable sur R+ , avec
n
0
X a2i x2i
q (µ) = 2 −1
i=1 (a2i + µ)

pour tout µ ≥ 0.
Comme q 0 (µ) > 0, car x 6∈ S, q est donc maximisée au seul point µ > 0
annulant q 0 .

8.4.3 Exercice 2
Étant donnés s ∈ Rn \ {0} et c ∈ Rn , on considère le problème de mini-
misation convexe suivant :
 
1 2 t
(P ) min kxk − c x sous la contrainte st x ≤ 0.
2
1. Déterminer la fonction duale λ ∈ R+ → q(λ) associée au lagrangien
1
L : (x, λ) → L(x, λ) = kxk2 − ct x + λst x.
2
2. Résoudre le problème dual (D) associé à (P ), c’est-à-dire celui de la
maximisation de q sur R+ .
3. Utiliser le résultat précédent pour résoudre effectivement (P ).

8.4.4 Solution de l’Exercice 2


1. On détermine la fonction duale q : λ ∈ R+ → q(λ) associée à la fonction
de Lagrange
1
L : (x, λ) → L(x, λ) = kxk2 − ct x + λst x
2
en considérant le fait que L est strictement convexe sur Rn . Donc en
calculant ∇x L(x, λ) = 0, on trouve

x = c − λs.
8.4 Exercices corrigés 161

On remplace x par x = c − λs dans L, on trouve


1
q(λ) = − kc − λsk2 .
2
2. q est une fonction concave qu’on maximise sur R+ .
Le problème dual est donc

max q(λ)
(D)
λ ≥ 0.
On a
q 0 (λ) = ct s − λksk2 .
On pose
q 0 (λ) = 0
on trouve
ct s
λ=
ksk2
c’est la solution du problème (D) si
ct s ≥ 0.
On trouve la valeur
1 1 ct s
q(λ) = − kck2 + .
2 2 ksk2
Mais si ct s < 0, alors q 0 (λ) = 0 si λ = 0. Dans ce cas, on trouve
1
q(λ) = − kck2 .
2
3. Pour résoudre le problème (P ), on distingue deux cas :
ct s
– si ct s ≥ 0, on a trouvé λ = ksk 2 , donc

ct s
x = c − λs = c − s
ksk2
d’où
1 1 ct s
f (x) = L(x, λ) = q(λ) = − kck2 + .
2 2 ksk2
– si ct s < 0, on a trouvé λ = 0, d’où x = c. On a alors
1
f (x) = L(x, λ) = q(λ) = − kck2 .
2
8.4 Exercices corrigés 162

8.4.5 Exercice 3
Étant donnés r1 , · · · , rn des réels tous strictement positifs, A ∈ Mm,n (R)
et c ∈ Rm , on considère le problème de minimisation (P ) suivant :
( Pn  
xi
min x
i=1 i ln ri
,
x ∈ Λn , Ax ≤ c.

Dans cette formulation, Λn désigne le simplexe-unité de Rn et αln(α) est


prise égale à 0 pour α = 0.  
Pn xi
Soient (x, λ) ∈ Λn × (R+ )m → L(x, λ) = x
i=1 i ln ri
+ λt (Ax − c) le
lagrangien dans le problème (P ) et

λ ∈ (R+ )m → q(λ) = min L(x, λ)

la fonction duale associée. Déterminer la fonction explicite de q et formuler


(le plus simplement possible) le problème dual (D) de (P ).

8.4.6 Solution de l’Exercice 3


Ayant
n  
X xi
L(x, λ) = xi ln + λt (Ax − c),
i=1
ri
on aura
 
xi
(∇x L(x, λ))i = ln + 1 + (At λ)i , pour i = 1, · · · , n.
ri
Les points stationnaires de L doivent satisfaire la condition

(∇x L(x, λ))i = 0, pour i = 1, · · · , n, (8.17)

et la contrainte n
X
xi = 1. (8.18)
i=1

De (8.17), on aura
 
xi
ln = −1 − (At λ)i , pour i = 1, · · · , n
ri
8.4 Exercices corrigés 163

d’où
t
xi = ri e−1−(A λ)i , pour i = 1, · · · , n. (8.19)
De (8.18), on aura
Pn
xi = ni=1 e1+(Ari
P
i=1 t λ)
i
= 1e ni=1 e(Artiλ)i = 1,
P

et
1 1
= Pn −(At λ)i
.
e i=1 ri e

L’équation (8.19) devient alors


1 −(At λ)i
xi = ri Pn −(A t λ) e , pour i = 1, · · · , n. (8.20)
i=1 ri e
i

Le point x vérifiant (8.17) et (8.20) est alors l’unique munimum de L(., λ)


sur Λn .

La fonction duale associée au problème (P) est alors


n
t t
X
q(λ) = L(x, λ) = −ln( ri e−(A λ)i +λ c ).
i=1

En effet, de (8.20), on a
t
xi e−(A λ)i
= Pn −(At λ)i
, pour i = 1, · · · , n,
ri i=1 ri e

et
t n
xi e−(A λ)i X t
ln( ) = ln( Pn −(A
t
t λ) ) = −(A λ)i − ln( ri e−(A λ)i ).
ri i=1 ri e
i
i=1

Ce qui donne

L(x, λ) = ni=1 xi (−At λ)i − ni=1 xi ln( ni=1 ri e−(A λ)i ) + λt (Ax − c)
P P P t

= −λt Ax − ln( ni=1 ri e−(A λ)i ) ni=1 xi + λt Ax − λt c


P t P

Ayant ni=1 xi = 1, on aura finalement la fonction duale


P
8.5 Exercices non corrigés 164

n
t
X
L(x, λ) = −ln( ri e−(A λ)i ) − λt c = q(λ) = L(x, λ).
i=1

On définit le problème dual du problème (P) est

max −ln( ni=1 ri e−(A λ)i ) − λt c


 P t

λ ≥ 0.

Ce problème est équivalent à

min ln( ni=1 ri e−(A λ)i ) + λt c


 P t

λ ≥ 0.

On a précédemment trouvé en (8.19) que


t
xi = ri e−1−(A λ)i , pour i = 1, · · · , n

d’où
t xi
ri e−(A λ)i ) =
e−1
et n n
X
−(At λ)i
X xi
ri e )= −1
= e.
i=1 i=1
e
Le problème dual devient alors

min λt c
λ ≥ 0.

8.5 Exercices non corrigés


Exercice 8.5.1. Considérer le problème suivant :

 f0 (x) −→ min,
fi (x) ≤ 0, i = 1, · · · , m
lj ≤ xj ≤ uj , j = 1, · · · , n

– Donner la fonction de Lagrange associée à ce problème.


– Donner la fonction duale associée à ce problème.
– Donner le programme dual associé à ce problème.
8.5 Exercices non corrigés 165

Exercice 8.5.2. Considérons le problème (P ) de minimisation suivant :

min f (x) = 21 xt M x + xt q


Ax + b ≤ 0,

où M ∈ Mn (R) est symétrique définie positive, q ∈ Rn , A ∈ Mm,n (R) et


b ∈ Rm .
1. Déterminer la fonction duale Θ associée au lagrangien du problème (P ).
2. (i) Formuler le problème dual (D) de (P ).
(ii) Donner la formule caractérisant la solution λ de (D).
(iii) Donner une condition suffisante pour que (D) ait une solution
unique.
Exercice 8.5.3. Considérer le problème linéaire booléen reformulé comme
suit :  t
 c x −→ min,
Ax ≤ b,
xi (1 − xi ) = 0, i = 1, · · · , n

avec des contraintes égalités quadratiques.


– Donner la fonction de Lagrange associée à ce problème.
– Donner la fonction duale associée à ce problème.
– Donner le programme dual associé à ce problème.
Exercice 8.5.4. Considérer le problème suivant :
 1
2
kx + g t k2 −→ min,
Ax = 0,
où A est une matrice de rang complet.
(a) Écrivez les conditions d’optimalité de ce problème.
(b) Exprimez la solution x(λ) explicitement en fonction du vecteur de
multiplicateurs de Lagrange λ.
(c) Injectez l’expression trouvée en (b) dans les contraintes pour déterminer
λ∗ .
(d) Obtenez alors l’expression de x(λ∗ ) = x∗ = −M g t .
(e) Vérifiez que la matrice M est symétrique, et satisfait M 2 = M.
Exercice 8.5.5. Étant donnés s ∈ Rn \{0} et c ∈ Rn , on considère le problème
de minimisation convexe suivant :

(P ) min kxk2 + ct x sous la contrainte st x ≥ 0.



8.5 Exercices non corrigés 166

1. Déterminer la fonction de Lagrange associée à ce problème.


2. Déterminer la fonction duale λ ∈ R+ → q(λ) associée au lagrangien.
3. Résoudre le problème dual (D) associé à (P ).
4. Utiliser le résultat précédent pour résoudre effectivement le problème
(P ).
Exercice 8.5.6. Étant donnés a1 , · · · , an des réels différents de zéro, on considère
l’ellipsoı̈de plein de Rn défini par comme suit :
( n  2 )
X u i
ξ = u = (u1 , · · · , un ) ∈ Rn | ≤1 .
i=1
ai
Soient x 6∈ ξ fixé et f : Rn → R définie par :
∀u ∈ Rn , f (u) =k u − x k2 .
On cherche à résoudre le problème de minimisation (P) suivant :

min f (u),
u ∈ ξ.
– Déterminer la fonction duale λ ∈ R+ → q(λ) associée au lagrangien
usuel (u, λ) ∈ Rn × R → L(u, λ) dans le problème précédent (P).
– Montrer que q est maximisée sur R+ en un point λ∗ > 0 unique solution
de l’équation (en λ) :
n
X a2i x2i
2 2 = 1.
i=1 (ai + λ)
Exercice 8.5.7. Soit l : (x, y) ∈ Rn × Rm 7→ l(x, y) une fonction différentiable
sur Rn × Rm , X ⊂ Rn et Y ⊂ Rm deux convexes fermés non vides.
1. Montrer l’équivalence des deux assertions suivantes :
(i) l est convexe-concave sur X × Y ;
(ii) h∇x l(x1 , y1 )−∇x l(x2 , y2 ), x1 −x2 i ≥ h∇y l(x1 , y1 )−∇y l(x2 , y2 ), y1 −
y2 i
pour tout (x1 , y1 ) et (x2 , y2 ) dans X × Y.
2. Soit P ∈ Sn (R), Q ∈ Sm (R) et R ∈ Sm,n (R).
Donner une condition suffisante portant sur P et Q, assurant que la
fonction
1 1
l : (x, y) ∈ Rn × Rm 7→ l(x, y) = hP x, xi + hQy, yi + hRx, yi
2 2
n m
est convexe-concave sur R × R .
3. On suppose l convexe-concave sur X × Y . Montrer l’équivalence des
assertions suivantes concernant (x, y) ∈ X × Y :
(j) (x, y) est un point-selle de l sur X × Y ;
(jj) h∇x l(x, y), x − xi ≥ 0 pour tout x ∈ X
et
h∇y l(x, y), y − yi ≤ 0 pour tout y ∈ Y ;
(jjj) h∇x l(x, y), x−xi−h∇y l(x, y), y −yi ≥ 0 pour tout (x, y) ∈ X ×Y .
Exercice 8.5.8. Soient f1 , · · · , fm m fonctions convexes différentiables sur Rn .
On suppose que l’une d’entre elles est 0-coercive sur Rn , c’est-à-dire vérifie :
limkxk→+∞ fi (x) = +∞.
On définit :
l : (x, y) ∈ Rn × Rm 7→ l(x, y) = m
P
i=1 yi fi (x);
n
X=R ;
Y est le simplexe-unité de Rm , c’est-à-dire
Pm
{(y1 , · · · , ym ) ∈ Rm | pour tout i, et i=1 yi = 1} .

1. Indiquer pourquoi l a des points-selles sur X × Y .


2. Montrer que (x, y) est un point-selle de l sur X × Y si et seulement si :

x minimise la fonctionϕ = max fi sur Rn


i=1,...,m

et
y ∈ Y avec y i = 0 dès que fi (x) < ϕ(x).

167
Bibliographie

[1] S. Achmanov. Programmation linéaire. Edition Mir, Moscou, 1984.


[2] H. Bergounioux. Optimisation et contrôle des systèmes linéaires. Dunod
Paris, 2001.
[3] Leonard D. Berkovotz. Convexity and optimization in Rn. JOHN WI-
LEY and SONS, INC., 2002.
[4] P.G. Ciarlet. Introduction à l’analyse numérique matricielle et à l’opti-
misation. Dunod Paris, 1998.
[5] G.B. Dantzig. Applications et prolongements de la programmation
linéaire. Dunod, Paris, 1966.
[6] R. Gabasov et al. Constructive methods of optimization. P.I.-University
Press, Minsk, 1984.
[7] R. Gabasov, F.M. Kirillova, and V.M. Rakestsky. Constructive methods
of optimization. P.IV : Convex problems. University Press, Minsk, 1987.
[8] N. Karmarkar. A new polynomial-time algorithm for linear program-
ming. Combinatorica, 4 :374–395, 1984.
[9] F. Margot. Composition de polytopes combinatoires : une approche par
projection. Presses polytechniques et universitaires romandes, 1995.
[10] M. Minoux. Programmation mathématique :Théorie et algorithmes,
Tome 1, 2. Collection technique et scientifique des télécommunications,
1983.
[11] S. Radjef. Thèse de doctorat : Application de la méthode adaptée aux
problèmes multicritères.
[12] S. Radjef. Cours Optimisation sans contraintes, L3 Mathématiques. Uni-
versité USTO MB, 2006.
[13] S. Radjef. Cours Optimisation avec contraintes, L3 Mathématiques. Uni-
versité USTO MB, 2009.

168
[14] S. Radjef. Cours Optimisation convexe, Master 1 Mathématiques. Uni-
versité USTO MB, 2010.
[15] S. Radjef and M.O Bibi. An effective generalization of the direct support
method. Mathematical Problems of Engineering, Article ID 374390, 18
pages, doi :10.1155/2011/374390, 2011.
[16] R.T. Rockafellar. Convex analysis. Princeton University Press, 1970.
[17] M. Simmonnard. Programmation linéaire. Techniques du calcul
économique. 2ème Edition Dunod, Paris, 1973.
[18] D. De Werra and al. Recherche opérationnelle pour ingénieur I. Press
Polytechniques et universitaires romandes, Lausanne, 2003.
[19] P. Wolfe. The simplex method for quadratic programming. Econome-
trica, 27 :382–398, 1959.
[20] Y. Ye and E. Tse. An extension of karmarkar’s algorithm to convex
quadratic programming. Math. Prog., 44 :157–179, 1989.

169

View publication stats

Vous aimerez peut-être aussi