Vous êtes sur la page 1sur 92

Année universitaire 2017-2018 Licence de Sciences et Technologies

Optimisation linéaire & convexité

Cours de Licence 3 - LM239

Yannick PRIVAT - Didier SMETS

Laboratoire Jacques-Louis Lions, UMR 7598


Université Pierre et Marie Curie – Paris 6 & CNRS
email : yannick.privat@upmc.fr / didier.smets@upmc.fr
– ii –
Préambule

Ce cours présente les bases théoriques et numériques de l’optimisation linéaire et qua-


dratique Le premier chapitre traite de la résolution des problèmes d’optimisation linéaire
à l’aide de la méthode du simplexe. Le second chapitre est plus généralement consacré
à la notion de convexité ainsi que ses conséquences pour l’optimisation. Ces développe-
ments présentent également un fort interêt dans le cadre de l’optimisation de fonctions
quadratiques, qui fait l’objet du troisième chapitre.

Divers exercices et séances de travaux dirigés accompagnent le présent document afin


d’assimiler les notions plus théoriques vues en cours. Les travaux dirigés sont développés
pour être notamment implémentés sous le logiciel de calcul scientifique Python.

L’évaluation pour ce cours sera organisée de la façon suivante :

• pour les étudiants suivant la formation en présentiel


- un examen (F, sur 40)
- un partiel (P, sur 20)
- une évaluation de contrôle continu (CC, sur 20)
- un examen de TP (TP, sur 20).
La note finale pour les étudiants suivant la formation à distance est obtenue par la formule
   
4 3
T P + max CC + E, E , avec E = max F + P, F .
3 2

• pour les étudiants suivant la formation à distance


- un examen (F, sur 80)
- quatre ou cinq devoirs en temps libres (CC, sur 20).

La note finale pour les étudiants suivant la formation à distance est obtenue par la
formule  
5
max CC + F, F .
4

– iii –
Table des matières

– iv –
Table des matières

Préambule iii

I. Programmation linéaire 1
I.1 Introduction à la programmation linéaire . . . . . . . . . . . . . . . . . . . . . . 1
I.1.1 Un problème d’optimisation linéaire en dimension 2 . . . . . . . . . . . . . 1
I.1.2 Solution graphique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
I.1.3 Sensibilité à la variation des stocks . . . . . . . . . . . . . . . . . . . . . 2
I.1.4 Le problème dual du concurrent . . . . . . . . . . . . . . . . . . . . . . . 4
I.1.5 Un problème d’optimisation linéaire en dimension supérieure . . . . . . . . 5
I.2 La méthode du simplexe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
I.2.1 Méthode du simplexe : un aperçu par l’exemple . . . . . . . . . . . . . . . 8
I.2.2 Formes générale, canonique et standard . . . . . . . . . . . . . . . . . . . 11
I.2.3 Solutions de base d’un problème sous forme standard . . . . . . . . . . . 15
I.2.4 Pivot à partir d’une solution de base réalisable : critère de Dantzig . . . . 19
I.2.5 Détermination d’une première solution de base réalisable . . . . . . . . . . 23
I.2.6 Description algorithmique de la méthode du simplexe . . . . . . . . . . . . 26
I.3 Dualité en programmation linéaire . . . . . . . . . . . . . . . . . . . . . . . . . . 27

II. Optimisation quadratique 35


II.1 Préliminaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
II.1.1 Motivations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
II.1.2 Le vocabulaire de l’optimisation . . . . . . . . . . . . . . . . . . . . . . . 36
II.2 Ensembles convexes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
II.2.1 Propriétés algébriques . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
II.2.2 Propriétés topologiques . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
II.2.3 Projection orthogonale . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
II.2.4 Fonctions convexes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
II.3 Analyse des problèmes d’optimisation quadratique . . . . . . . . . . . . . . . . . 48
II.3.1 Existence de solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
II.3.2 Questions d’unicité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
II.3.3 Conditions d’optimalité . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
II.3.4 Minimisation d’une fonction quadratique généralisée sans contrainte . . . 52
II.3.5 La méthode des moindres carrés . . . . . . . . . . . . . . . . . . . . . . 54

A Non cyclicité sous le critère de Bland 57

B Rappels de calcul différentiel 61


II.1 Différentiabilite aux ordres 1 et 2 . . . . . . . . . . . . . . . . . . . . . . . . . . 61
II.2 Formules de Taylor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

–v–
Table des matières

C Compléments sur la convexite : polytopes et polyèdres 65


III.1 Rappels de géométrie affine . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
III.2 Séparation et Hyperplan d’appui . . . . . . . . . . . . . . . . . . . . . . . . . . 70
III.3 Représentation extérieure et intérieure . . . . . . . . . . . . . . . . . . . . . . . 72
III.3.1 Représentation extérieure . . . . . . . . . . . . . . . . . . . . . . . . . . 72
III.3.2 Faces, Points extrémaux, Cône de récession . . . . . . . . . . . . . . . . 73
III.3.3 Représentation intérieure . . . . . . . . . . . . . . . . . . . . . . . . . . 75
III.4 Polyèdres et polytopes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
III.4.1 Polytopes et cônes finiment engendrés . . . . . . . . . . . . . . . . . . . 76
III.4.2 Lemme de Farkas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
III.4.3 Polyèdres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
III.4.4 Correspondances polyèdres/polytopes . . . . . . . . . . . . . . . . . . . 81

Bibliographie 85

– vi –
I.
Programmation linéaire

I.1 Introduction à la programmation linéaire

I.1.1 Un problème d’optimisation linéaire en dimension 2


::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

On considère le cas d’un fabricant d’automobiles qui propose deux modèles à la vente,
des grosses voitures et des petites voitures. Les voitures de ce fabriquant sont tellement
à la mode qu’il est certain de vendre tout ce qu’il parvient à produire, au moins au prix
catalogue actuel de 16000 euros pour les grosses voitures, et 10000 euros pour les petites
voitures. Son problème vient de l’approvisionnement limité en deux matières premières, le
caoutchouc et l’acier. La construction d’une petite voiture nécessite l’emploi d’une unité de
caoutchouc et d’une unité d’acier, tandis que celle d’une grosse voiture nécessite une unité
de caoutchouc mais deux unités d’acier. Sachant que son stock de caoutchouc est de 400
unités et son stock d’acier de 600 unités, combien doit-il produire de petites et de grosses
voitures au moyen de ces stocks afin de maximiser son chiffre d’affaire ?

Nous appellerons x le nombre de grosses voitures produites, y le nombre de petites


voitures produites, et z le chiffre d’affaire résultant. Le problème se traduit alors sous la
forme

maximiser z = 16000x + 10000y


sous les contraintes x + y ≤ 400
(I.1)
2x + y ≤ 600
x ≥ 0, y ≥ 0.

I.1.2 Solution graphique


:::::::::::::::::::::::::::::

Un tel système, parce qu’il ne fait intervenir que deux variables, peut se résoudre assez
facilement de manière graphique, en hachurant la zone correspondant aux contraintes, et
en traçant les lignes de niveaux (ici des lignes parallèles) de la fonction à maximiser
(cfr. graphique ci-dessous). On obtient ainsi la solution optimale x = 200 et y = 200, qui
correspond à z = 5200000. Elle est unique dans ce cas précis, et correspond à un “sommet”
de la zone de contraintes.

–1–
CHAPITRE I. PROGRAMMATION LINÉAIRE

I.1.3 Sensibilité à la variation des stocks


::::::::::::::::::::::::::::::::::::::::::::::::

Observons comment la solution du problème évolue lorsqu’on modifie certaines données


de départ, par exemple une augmentation du stock de caoutchouc ou du stock d’acier.

Imaginons que le stock d’acier soit de 700 au lieu de 600, le nouveau problème s’écrit

maximiser z = 16000x + 10000y


sous les contraintes x + y ≤ 400
(I.2)
2x + y ≤ 700
x ≥ 0, y ≥ 0.

Toujours de manière graphique, on s’aperçoit que la solution optimale est maintenant


donnée par x = 300 et y = 100, ce qui correspond à z = 5800000. Autrement dit, une
augmentation de 100 unités d’acier a un impact de 600000 euros sur le chiffre d’affaire. On
dira alors que le prix marginal de l’unité d’acier est de 6000 euros (= 600000/100).

–2–
I.1. INTRODUCTION À LA PROGRAMMATION LINÉAIRE

Si le stock d’acier passe à 800, la solution optimale devient x = 400 et y = 0 et le


chiffre d’affaire z = 6400000. Augmenter le stock d’acier au-delà de 800, sans changer le
stock de caoutchouc, n’a plus aucune influence sur la solution optimale, car y est contraint
à rester positif.

Imaginons maintenant que le stock d’acier reste fixé à 600 mais que le stock de caou-
tchouc passe de 400 à 500. Le nouveau problème s’écrit

maximiser z = 16000x + 10000y


sous les contraintes x + y ≤ 500
(I.3)
2x + y ≤ 600
x ≥ 0, y ≥ 0.

Toujours de manière graphique, on s’aperçoit que la solution optimale est maintenant


donnée par x = 100 et y = 400, ce qui correspond à z = 5600000. Autrement dit, une
augmentation de 100 unités de caoutchouc à un impact de 400000 euros sur le chiffre
d’affaire. On dira alors que le prix marginal de l’unité de caoutchouc est de 4000 euros.
–3–
CHAPITRE I. PROGRAMMATION LINÉAIRE

Si le stock de caoutchouc passe à 600, la solution optimale devient x = 0 et y = 600


et le chiffre d’affaire z = 6000000. Augmenter le stock de caoutchouc au-delà de 600,
sans changer le stock d’acier, n’a plus aucune influence sur la solution optimale, car x est
contraint à rester positif.

I.1.4 Le problème dual du concurrent


::::::::::::::::::::::::::::::::::::::::::::

Supposons maintenant que le fabricant d’automobile possède un concurrent qui, pour


honorer des commandes en trop grand nombre, se propose de lui racheter tous ses stocks.

–4–
I.1. INTRODUCTION À LA PROGRAMMATION LINÉAIRE

Ce dernier doit faire une offre de prix (la même, disons u) pour chaque unité de caoutchouc
et une offre de prix (disons v) pour chaque unité d’acier. Pour que l’offre soit acceptée, il
faut que le prix payé par le concurrent soit au moins égal à ce que le fabriquant pourrait
en tirer en produisant des voitures. Le problème du concurrent s’écrit ainsi

minimiser p = 400u + 600v


sous les contraintes u + v ≥ 10000
(I.4)
u + 2v ≥ 16000
u ≥ 0, v ≥ 0.

Une analyse graphique fournit la solution optimale u = 4000 et v = 6000, ce qui correspond
à un prix global p = 5200000. On remarque (nous verrons par la suite que ce n’est pas
un hasard) que la solution optimale du problème du concurrent (on parlera de problème
dual, par opposition au problème primal du fabriquant) correspond aux prix marginaux du
problème du fabricant, et que le prix minimal que puisse proposer le concurrent est égal
au chiffre d’affaire maximal du fabricant.

I.1.5 Un problème d’optimisation linéaire en dimension supérieure


::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

Dans cette section, nous allons décrire un problème de transport optimal assimilable
à un problème d’optimisation linéaire en dimension 6. De ce fait, il ne sera plus possible
de le résoudre au moyen de la méthode graphique de la section précédente.
Notre fabricant d’automobiles possède trois chaînes de montage M1 , M2 et M3 , tandis
que son stock d’acier provient de deux aciéries A1 et A2 . Les coûts de transport d’une unité
d’acier d’une aciérie vers une usine de montage sont donnés par le tableau suivant :

M1 M2 M3
A1 9 16 28
A2 14 29 19

Les besoins de production des chaînes de montage diffèrent, ainsi que les capacités de

–5–
CHAPITRE I. PROGRAMMATION LINÉAIRE

production des aciéries, et sont données par les deux tableaux suivants :
M1 142
A1 206
M2 266
A2 394
M3 192
Il s’agit donc pour le fabricant de déterminer le plan de transport des unités d’acier pro-
duites vers les chaînes de montage afin de minimiser le coût total de transport. Pour i = 1,2
et j = 1,2,3, notons xij le nombre d’unités d’acier acheminées depuis l’aciérie Ai vers la
chaîne de montage Mj . Le problème de transport optimal peut alors s’écrire :
minimiser t = 9x11 +16x12 +28x13 +14x21 +29x22 +19x23
sous les contraintes x11 +x12 +x13 ≤ 206,
x21 +x22 +x23 ≤ 394,
x11 +x21 ≥ 142,
x12 +x22 ≥ 266,
x13 +x23 ≥ 192,
x11 , x12 , x13 , x21 , x22 , x23 ≥ 0.
Nous verrons par la suite qu’il est possible de traiter un tel problème de manière sys-
tématique, par le biais d’une réduction à une forme standard suivie d’un algorithme qui
porte le nom de méthode du simplexe. Toutefois, dans ce cas précis, cela nous mènerait
à des manipulations trop fastidieuses pour être réalisées sans l’aide d’un ordinateur. A
sa place, nous allons procéder à un certain nombre de remarques ad hoc qui vont nous
permettre de poursuivre les calculs à la main.
La remarque principale ici est que dans la mesure où la somme des capacités de pro-
duction des aciéries (206 + 394 = 600) est égale à la somme des besoins de production
des trois chaînes de montage (142 + 266 + 192 = 600), chacune des 5 premières inégalités
dans le problème d’optimisation ci-dessus doit nécessairement être une égalité. Si on omet
momentanément de s’occuper des contraintes xij ≥ 0 (i = 1,2, j = 1,2,3), les contraintes
restantes se réduisent à un système de 5 équations à 6 inconnues, que nous pouvons tenter
de résoudre par la méthode du pivot de Gauss (cfr. Algèbre linéaire L1).
On récrit le sous-système des contraintes d’égalité sous la forme (on choisit l’ordre des
équation afin de faciliter le pivot de Gauss) :
x11 +x21 = 142,
x12 +x22 = 266,
x13 +x23 = 192,
x11 +x12 +x13 = 206,
x21 +x22 +x23 = 394.
On échelonne ensuite (méthode du tableau) :
   
1 0 0 1 0 0 | 142 1 0 0 1 0 0 | 142
 0 1 0 0 1 0 | 266   0 1 0 0 1 0 | 266 
   
 0 0 1 0 0 1 | 192  →  0 0 1 0 0 1 | 192 →
   
 1 1 1 0 0 0 | 206   0 1 1 −1 0 0 | 64 
0 0 0 1 1 1 | 394 0 0 0 1 1 1 | 394
   
1 0 0 1 0 0 | 142 1 0 0 1 0 0 | 142
 0 1 0
 0 1 0 | 266 


 0 1 0 0 1 0 | 266 

 0 0 1
 0 0 1 | →
192   0 0 1 0 0 1 | 192 →

 0 0 1 −1 −1 0 | −202   0 0 0 −1 −1 −1 | −394 
0 0 0 1 1 1 | 394 0 0 0 1 1 1 | 394

–6–
I.1. INTRODUCTION À LA PROGRAMMATION LINÉAIRE

   
1 0 0 1 0 0 | 142 1 0 0 0 −1 −1 | −252
 0
 1 0 0 1 0 | 266   0 1
→ 0 0 1 0 | 266 
.
 0 0 1 0 0 1 | 192   0 0 1 0 0 1 | 192 
0 0 0 1 1 1 | 394 0 0 0 1 1 1 | 394
La forme échelonnée laisse apparaître les variables x22 et x23 comme libres, desquelles on
déduit
x21 = 394 − x22 − x23 ,
x13 = 192 − x23 ,
(I.5)
x12 = 266 − x22 ,
x11 = −252 + x22 + x23 .
On exprime ensuite le coût t uniquement en termes des variables libres x22 et x23 :

t = 9(−252 + x22 + x23 ) + 16(266 − x22 ) + 28(192 − x23 )


+ 14(394 − x22 − x23 ) + 29x22 + 19x23 (I.6)
= 8x22 − 14x23 + 12880.

Afin de minimiser t il est donc opportun de choisir x23 le plus grand possible, et x22 le plus
petit possible. C’est à ce niveau qu’il nous est nécessaire de faire réapparaître les contraintes
xij ≥ 0 (i = 1,2, j = 1,2,3), sans lesquelles t pourrait être rendu aussi négatif que souhaité.
En examinant les équation (I.5), on se convainc assez rapidement que le meilleur choix est
obtenu en prenant x23 = 192 (afin de satisfaire mais saturer la contrainte x13 ≥ 0), et
ensuite x22 = 60 (afin de satisfaire mais saturer la contrainte x11 ≥ 0). On propose alors
la solution suivante
x11 = 0,
x12 = 206,
x13 = 0,
(I.7)
x21 = 142,
x22 = 60,
x23 = 192,
comme candidat à être le transport optimal. Pour vérifier notre intuition, on choisit d’ex-
primer cette fois le système (I.5) uniquement en termes des variables x11 et x13 (on com-
prendra ce choix dans un instant), ce qui donne (on n’a en réalité besoin que d’exprimer
x22 et x33 puisqu’elles seules interviennent dans l’expression de t dans (I.6)) :

x22 = 60 + x11 + x13 ,


(I.8)
x23 = 192 − x13 .

On obtient ainsi l’expression

t = 8x22 − 14x23 + 12880


= 8(60 + x11 + x13 ) − 14(192 − x13 ) + 12880 (I.9)
= 8x11 + 22x13 + 10672 ≥ 10672.

Comme x11 ≥ 0 et x13 ≥ 0 par contrainte, on a nécessairement t ≥ 10672 quel que soit
le choix de xij (i = 1,2, j = 1,2,3) satisfaisant l’ensemble des contraintes. Par ailleurs, le
choix proposé en (I.7) fournit t = 10672 et satisfait à l’ensemble des contraintes. Il s’agit
donc effectivement de la solution optimale.
Pour terminer cet exemple par une synthèse, observons que nous sommes parvenus
à récrire le problème d’optimisation initial sous la forme d’un système linéaire augmenté

–7–
CHAPITRE I. PROGRAMMATION LINÉAIRE

de contraintes de positivité de toutes les variables. Nous avons ensuite déterminé le rang
du système linéaire en question et exprimé de diverses manières possibles (deux en l’occur-
rence) la fonction à optimiser (ici t) en termes de variables libres pour ce système linéaire.
Nous nous sommes arrêtés lorsque les coefficients des variables libres dans l’expression de
la fonction à optimiser furent tous positifs ou nuls, et avons conclu que les égaler à zéro
fournissait une solution assurément optimale.

Dans la section I.2.1, nous reprenons cette démarche de manière un peu plus systéma-
tique sur un exemple initialement en dimension 3.

I.2 La méthode du simplexe

I.2.1 Méthode du simplexe : un aperçu par l’exemple


:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

Considérons le problème d’optimisation linéaire :

maximiser z = 5x1 +4x2 +3x3


sous les contraintes 2x1 +3x2 +x3 ≤ 5,
4x1 +x2 +2x3 ≤ 11, (I.10)
3x1 +4x2 +2x3 ≤ 8,
x1 , x2 , x3 ≥ 0.

Afin de se ramener à un système d’équations plutôt que d’inéquations, on introduit les


variables d’écart x4 , x5 , x6 et l’on écrit le problème ci-dessus sous la forme

x4 = 5 −2x1 −3x2 −x3 ,


x5 = 11 −4x1 −x2 −2x3 ,
(I.11)
x6 = 8 −3x1 −4x2 −2x3 ,
z = 5x1 +4x2 +3x3 ,

avec pour but de maximiser z sous les contraintes additionnelles xi ≥ 0, (i = 1, · · · , 6). Il


est aisé (et recommandé) de vérifier que si (x1 ,x2 ,x3 ,x4 ,x5 ,x6 ) est une solution optimale de
ce dernier problème, alors les (x1 ,x2 ,x3 ) correspondants constituent une solution optimale
du problème (I.10). Inversement, si (x1 ,x2 ,x3 ) est une solution optimale de (I.10), alors
(x1 ,x2 ,x3 , 5 − 2x1 − 3x2 − x3 ,11 − 4x1 − x2 − 2x3 ,8 − 3x1 − 4x2 − 2x3 ) constitue une solution
optimale de (I.11).
Le système (I.11) possède la solution (non optimale) (0,0,0,5,11,8) (l’usage est d’appeler
solution réalisable tout choix de variables satisfaisant à l’ensemble des contraintes (cfr.
Section I.2.2)).
On observe que dans l’expression z = 5x1 + 4x2 + 3x3 , une augmentation de x1 entraîne
une augmentation de z. L’idée première est alors d’augmenter x1 autant que possible (sans
modifier ni x2 ni x3 ) tant qu’aucune des variables d’écart x4 ,x5 ou x6 ne devient négative.
Le choix maximal est donc x1 = min(5/2,11/4,8/3) = 5/2, lorsque x4 devient nulle, et qui
fait passer à la solution réalisable (5/2,0,0,0,1,1/2).
On récrit le système (I.11) en exprimant cette fois (x1 ,x5 ,x6 ) (ainsi que z) en termes
de (x2 ,x3 ,x4 ), au moyen de l’équation

5 3 1 1
x1 = − x2 − x3 − x4 .
2 2 2 2

–8–
I.2. LA MÉTHODE DU SIMPLEXE

Ceci donne, après substitutions :


5
x1 = 2 − 23 x2 − 12 x3 − 21 x4 ,
x5 = 1 +5x2 +2x4 ,
1 1 1 3 (I.12)
x6 = 2 + 2 2x − x
2 3 + 2 x4 ,
25
z = 2 − 27 x2 + 12 x3 − 25 x4 .

Cette fois, on observe que dans l’expression z = 25/2 − 7/2x2 + 1/2x3 − 5/2x4 , une
augmentation de x3 (c’est ici le seul choix possible) entraîne une augmentation de z. A
nouveau, on augmente donc x3 autant que possible (sans modifier ni x2 ni x4 ) tant qu’au-
cune des variables (dites variables en bases (cfr. Chapitre I.2.3)) x1 ,x5 ou x6 ne devient
négative. Le choix maximal est donc x3 = min((5/2)/(1/2),(1/2)/(1/2)) = 1, lorsque x6
devient nulle, et qui fait passer à la solution réalisable (2,0,1,0,1,0).
On récrit le système (I.12) en exprimant cette fois (x1 ,x3 ,x5 ) (ainsi que z) en termes
de (x2 ,x4 ,x6 ), au moyen de l’équation

x3 = 1 + x2 + 3x4 − 2x6 .

Ceci donne, après substitutions :

x1 = 2 −2x2 −2x4 +x6 ,


x3 = 1 +x2 +3x4 −2x6 ,
(I.13)
x5 = 1 +5x2 +2x4 ,
z = 13 −3x2 −x4 −x6 .

Puisque les coefficients de x2 ,x4 et x6 intervenant dans l’expression de z ci-dessus sont


tous négatifs ou nuls, on déduit que la solution réalisable

x1 = 2,
x2 = 0,
x3 = 1,
(I.14)
x4 = 0,
x5 = 1,
x6 = 0,

est une solution optimale, pour laquelle z = 13.


Avant de formaliser l’algorithme du simplexe, et d’en découvrir les bases théoriques,
voyons une deuxième méthode pour l’aborder et qui consiste à placer les calculs en tableau
(toutes les variables se retrouvant du même côté du signe d’égalité) plutôt que sous forme
dictionnaire comme ci-dessus. L’avantage de cette deuxième façon de présenter les choses
(mais qui est bien sûr équivalente à la première) et qu’elle se rapproche plus de la méthode
bien connue du pivot de Gauss.
Considérons donc maintenant le problème d’optimisation linéaire

maximiser z= x1 +5x2 +x3


sous les contraintes x1 +3x2 +x3 ≤ 3,
−x1 +3x3 ≤ 2,
(I.15)
2x1 +4x2 −x3 ≤ 4,
x1 +3x2 −x3 ≤ 2,
x1 , x2 , x3 ≥ 0.

–9–
CHAPITRE I. PROGRAMMATION LINÉAIRE

On introduit les variables d’écart x4 , x5 , x6 , x7 (il y a une contrainte supplémentaire par


rapport au problème précédent) et on récrit le problème sous la forme

maximiser z= x1 +5x2 +x3


sous les contraintes x1 +3x2 +x3 +x4 = 3,
−x1 +3x3 +x5 = 2,
(I.16)
2x1 +4x2 −x3 +x6 = 4,
x1 +3x2 −x3 +x7 = 2,
x1 , x2 , x3 x 4 , x 5 , x 6 , x7 ≥ 0.

On adopte alors la notation sous forme de tableau :

1 3 1 1 0 0 0 | 3
−1 0 3 0 1 0 0 | 2
2 4 −1 0 0 1 0 | 4
1 3 −1 0 0 0 1 | 2
1 5 1 0 0 0 0 | 0

La dernière ligne du tableau correspond à un expression possible de z comme fonction


affine des variables x1 , · · · ,x7 , l’opposé du terme constant se trouvant en bas à droite du
tableau. On part de la solution réalisable (0,0,0,3,2,4,2) et puisque le terme en x1 dans
la dernière ligne du tableau (=1) est positif, on va augmenter x1 (sans modifier ni x2 ni
x3 ) jusqu’à ce que l’une des variables x4 ,x5 ,x6 ou x7 devienne nulle. Ceci se produit pour
x1 = 2 pour lequel à la fois x6 et x7 deviennent nuls. On choisit donc de faire rentrer x1
en base, et de faire sortir (par exemple) x6 . Cela donne

1 3 1 1 0 0 0 | 3 1 3 1 1 0 0 0 | 3
−1 0 3 0 1 0 0 | 2 −1 0 3 0 1 0 0 | 2
2 4 −1 0 0 1 0 | 4 → 1 2 − 12 0 0 1
2 0 | 2 →
1 3 −1 0 0 0 1 | 2 1 3 −1 0 0 0 1 | 2
1 5 1 0 0 0 0 | 0 1 5 1 0 0 0 0 | 0

3
0 1 2 1 0 − 12 0 | 1
5 1
0 2 2 0 1 2 0 | 4
1 2 − 12 0 0 1
2 0 | 2
0 1 − 12 0 0 − 12 1 | 0
3
0 3 2 0 0 − 12 0 | −2
et fournit une solution réalisable pour laquelle x1 = 2, x4 = 1, x5 = 4, x7 = 0 (et les
variables hors base sont toujours nulles : x2 = x3 = x6 = 0). Puisque le coefficient de x2
dans la nouvelle expression de z est positif, on fait ensuite rentrer x2 en base, et on doit
faire sortir x7 sans pouvoir en rien augmenter x2 ! Cela donne
3
0 1 2 1 0 − 21 0 | 1 0 0 2 1 0 0 −1 | 1
5 1 7 3
0 2 2 0 1 2 0 | 4 0 0 2 0 1 2 −2 | 4
1 2 − 21 0 0 2
1
0 | 2 → 1 0 1
2 0 0 3
2 −2 | 2
0 1 − 21 0 0 − 21 1 | 0 0 1 − 12 0 0 − 12 1 | 0
3
0 3 2 0 0 − 21 0 | −2 0 0 3 0 0 1 −3 | −2

et fournit la solution réalisable (2,0,0,1,4,0,0). On fait ensuite rentrer x3 en base (son


coefficient dans l’expression de z vaut maintenant 3) et on fait sortir x4 (qui s’annule

– 10 –
I.2. LA MÉTHODE DU SIMPLEXE

lorsque x3 = 1/2). Cela donne


1
0 0 2 1 0 0 −1 | 1 0 0 1 2 0 0 − 21 | 1
2
7 3 7 3
0 0 2 0 1 2 −2 | 4 0 0 2 0 1 2 −2 | 4
1 3 1 3
1 0 2 0 0 2 −2 | 2 → 1 0 2 0 0 2 −2 | 2 →
0 1 − 12 0 0 − 12 1 | 0 0 1 − 12 0 0 − 12 1 | 0
0 0 3 0 0 1 −3 | −2 0 0 3 0 0 1 −3 | −2
1
0 0 1 2 0 0 − 12 | 1
2
7 3
0 0 0 −4 1 2 − 14 | 9
4
1 0 0 − 14 0 3
2 − 74 | 7
4
1
0 1 0 4 0 − 12 3
4 | 1
4
0 0 0 − 32 0 1 − 32 | − 72
et fournit la solution réalisable ( 74 , 14 , 12 ,0,0,0,0). On fait ensuite rentrer x6 et sortir x1 (qui
s’annule en premier lorsque lorsque x6 = 76 ). Cela donne
1
0 0 1 2 0 0 − 12 | 1
2 0 0 1 1
2 0 0 − 12 | 1
2
0 0 0 − 47 1 2
3
− 14 | 9
4 0 0 0 − 74 1 3
2 − 14 | 9
4
1 0 0 − 41 0 2
3
− 74 | 7
4 → 2
3 0 0 −6
1
0 1 − 76 | 7
6 →
1
0 1 0 4 0 − 21 3
4 | 1
4 0 1 0 1
4 0 − 12 3
4 | 1
4
0 0 0 − 32 0 1 − 32 | − 72 0 0 0 − 32 0 1 − 32 | − 72
1
0 0 1 2 0 0 − 21 | 1
2
3 3 1
−1 0 0 − 2 1 0 2 | 2
2 1
3 0 0 −6 0 1 − 67 | 7
6
1 1 1 5
3 1 0 6 0 0 6 | 6
− 23 0 0 − 43 0 0 − 31 | − 14
3
et fournit finalement la solution optimale (0, 65 , 12 ,0, 12 , 76 ,0) pour laquelle z = 14
3 .

I.2.2 Formes générale, canonique et standard


::::::::::::::::::::::::::::::::::::::::::::::::::::

Dans ce chapitre, nous définissons la forme générale d’un problème d’optimisation li-
néaire, ainsi que la forme canonique et la forme standard. Nous montrons également qu’un
problème sous forme générale peut être transformé d’abord en un problème équivalent sous
forme canonique, puis enfin sous un problème équivalent sous forme standard. Dans les cha-
pitres qui suivront, nous nous restreindrons donc à fournir un algorithme de résolution
pour les problèmes sous forme standard.

Définition I.2.1. Problème d’optimisation linéaire

On appelle problème d’optimisation linéaire sous forme générale un problème de la


forme
maximiser F (X)
(I.17)
sous les contraintes X ∈ IRQ , G1 (X) ≤ 0, · · · , GP (X) ≤ 0,

où P,Q ∈ IN∗ , F : IRQ → IR est une forme linéaire sur IRQ et G1 , · · · ,GP sont des
applications affines définies sur IRQ et à valeurs réelles. On dit que la fonction F est
la fonction objectif et que les fonctions G1 , · · · ,GP sont les contraintes.

– 11 –
CHAPITRE I. PROGRAMMATION LINÉAIRE

Remarque I.2.2
On pourrait bien sûr traiter de manière équivalente les problèmes de minimisation. Il n’y a
toutefois aucune perte de généralité à ne traiter que les problèmes de maximisation. De fait,
minimiser une fonctionnelle F revient à maximiser la fonctionnelle −F. Dans le même esprit,
on pourrait considérer des contraintes de la forme Gi (X) ≥ 0 ou même Gi (X) = 0. Dans le
premier cas il suffit alors de récrire la contrainte sous la forme −Gi (X) ≤ 0, et dans le second
de la dédoubler en deux contraintes : Gj (X) ≤ 0 et −Gi (X) ≤ 0.

Définition I.2.3. Solution réalisable

On dit que X ∈ IRQ est une solution réalisable du problème (I.17) si X satisfait
aux contraintes, autrement dit si G1 (X) ≤ 0, · · · ,GP (X) ≤ 0. L’ensemble P de
toutes les solutions réalisables d’un problème d’optimisation est appelé son ensemble
réalisable.

Définition I.2.4. Solution optimale

On dit que X ∈ IRQ est une solution optimale du problème (I.17) si X est une
solution réalisable du problème (I.17) et si de plus, quelle que soit la solution réalisable
Y ∈ IRQ du problème (I.17) on a nécessairement F (Y ) ≤ F (X). Autrement dit, une
solution réalisable est optimale si elle maximise la fonction objectif sur l’ensemble
réalisable.

Remarque I.2.5 Existence de solutions


Dans tout ce chapitre, on n’aborde pas (ou très peu) la question de l’existence d’une solution
optimale. La question de savoir si le problème d’optimisation, qui se reécrit en géneral sous la
forme
inf f (x) ou sup f (x)
x∈X x∈X

avec f : X → IR, une application lineaire dans le cas qui nous occupe et X ⊂ IRn , a une solution
revient exactement à se demander si la borne inférieure ci-dessus (resp. la borne superieure) est
en realite un minimum (resp. un maximum).
En général, dans le cadre de l’optimisation linéaire, répondre à cette question est assez
simple. Néanmoins et bien que cette question soit importante, nous ne l’aborderons pas dans ce
chapitre dedié à l’expose de la méthode du simplexe mais dans la deuxième partie de ce cours
(chapitre II.).

Remarque I.2.6
Anticipant un peu sur l’appendice C, on affirme que l’ensemble P est un polyèdre dans IRQ ,
c’est-à -dire une intersection finie de demi-espaces fermés de IRQ . Si P est de plus borné (cela
n’est pas nécessairement le cas), et puisque la fonction objectif est une fonction continue, l’exis-
tence d’au moins une solution optimale est alors garantie par le théorème des bornes atteintes.

– 12 –
I.2. LA MÉTHODE DU SIMPLEXE

Dans tous les cas, nous verrons que si la fonction est majorée sur P, alors le problème de
maximisation a toujours au moins une solution.

Un même problème d’optimisation linéaire peut se récrire de diverses manières équiva-


lentes les unes aux autres. Parmi ces versions, nous distinguerons les formes canoniques et
les formes standards.

Définition I.2.7. Forme canonique

On appelle problème d’optimisation linéaire sous forme canonique un problème de la


forme Pq
maximiser cj xj
Pj=1
q
sous les contraintes j=1 aij xj ≤ bi (i = 1, · · · ,p), (I.18)
xj ≥ 0 (j = 1, · · · ,q),
où p,q ∈ IN∗ , et où les cj (1 ≤ j ≤ q), les aij (1 ≤ i ≤ p, 1 ≤ j ≤ q), et les bi
(1 ≤ i ≤ p) sont des constantes réelles.
En écriture matricielle, un problème sous forme canonique s’écrit donc

maximiser cT x
sous les contraintes Ax ≤ b,
x ≥ 0,

où c = (c1 , · · · ,cq )T et (la variable) x = (x1 , · · · ,xq )T sont des vecteurs colonnes à q lignes,
A = (aij )1≤i≤p,1≤j≤q est une matrice à p lignes et q colonnes, et b = (b1 , · · · ,bp )T est un
vecteur colonne à p lignes.
Il est immédiat que tout problème d’optimisation linéaire sous forme canonique est un
problème d’optimisation linéaire sous forme générale. En effet, la fonction à maximiser dans
(I.18) est bien une forme linéaire, les contraintes xj ≥ 0 s’écrivent de manière équivalente
sous la forme P Gj (x) ≤ 0 avec Gj (x) = −xj qui est bien une fonction affine, P et enfin les
contraintes qj=1 aij xj ≤ bi se récrivent sous la forme Hj (x) ≤ 0 où Hj (x) = qj=1 aij xj −bi
est également affine.
Nous allons montrer maintenant que la résolution de n’importe quel problème d’op-
timisation linéaire sous forme générale peut se ramener à la résolution d’un problème
d’optimisation linéaire sous forme canonique. Pour ce faire, on récrit tout d’abord (I.17)
sous la forme étendue (c’est-à -dire que l’on rend explicite F et G1 , · · · ,GP ) :
PQ
maximiser fl Xl
Pl=1
Q (I.19)
sous les contraintes l=1 Gkl Xl − Bk ≤ 0 (k = 1, · · · ,P ).

On introduit alors les variables fictives X1+ , · · · ,XQ


+
et X1− , · · · ,XQ

et on considère le
problème
PQ
maximiser fl (Xl+ − Xl− )
Pl=1
Q + −
sous les contraintes l=1 Gkl (Xl − Xl ) ≤ Bk (k = 1, · · · ,P ),
(I.20)
+ −
Xl ≥ 0, Xl ≥ 0 (l = 1 · · · ,Q).

Le problème (I.20) est un problème d’optimisation linéaire sous forme canonique. En effet,
il suffit de choisir p = P et q = 2Q et de poser (x1 , · · · ,xq ) := (X1+ , · · · ,XQ
+
,X1− , · · · ,XQ

).
+ + − −
Le lecteur vérifiera que si (X1 , · · · ,XN ,X1 , · · · ,XN ) est une solution réalisable (resp.

– 13 –
CHAPITRE I. PROGRAMMATION LINÉAIRE

optimale) de (I.20), alors (X1+ − X1− , · · · ,XQ +


− XQ −
) est une solution réalisable (resp.
optimale) de (I.19). Inversement, si (X1 , · · · ,XQ ) est une solution réalisable (resp. optimale)
de (I.19), alors (X1+ , · · · ,XQ
+
,X1− , · · · ,XQ

), où pour 1 ≤ l ≤ Q on a défini Xl+ := max(Xl ,0)
et Xl− := − min(Xl ,0), est une solution réalisable (resp. optimale) de (I.20).

Définition I.2.8. Forme standard

On appelle problème d’optimisation linéaire sous forme standard un problème de la


forme Pn
maximiser cj xj
Pj=1
n
sous les contraintes j=1 aij xj = bi (i = 1, · · · ,m),
xj ≥ 0 (j = 1, · · · ,n),
où m,n ∈ IN∗ , et où les cj (1 ≤ j ≤ n), les aij (1 ≤ i ≤ m, 1 ≤ j ≤ n), et les bi
(1 ≤ i ≤ m), sont des constantes réelles.

En écriture matricielle, un problème sous forme standard s’écrit donc

maximiser cT x
sous les contraintes Ax = b,
x ≥ 0,

où c = (c1 , · · · ,cn )T et (la variable) x = (x1 , · · · ,xn )T sont des vecteurs colonnes à n
lignes, A = (aij )1≤i≤m,1≤j≤n est une matrice à m lignes et n colonnes, et b = (b1 , · · · ,bm )T
est un vecteur colonne à m lignes.

Remarque I.2.9
Sans perte de généralité, on peut supposer que dans un problème sous forme standard, les
lignes de A sont linéairement indépendantes (si ce n’est pas le cas soit certaines contraintes
sont redondantes, soit l’ensemble des contraintes est vide). Dans la suite, lorsque nous parlerons
de problème sous forme standard, nous supposerons implicitement que les lignes de A sont
linéairement indépendantes, autrement dit que

rang(A) = m,

ce qui implique également que n ≥ m.

A tout problème d’optimisation linéaire sous forme canonique, on peut associer un


problème d’optimisation linéaire sous forme standard de la manière suivante. Soit le système
sous forme canonique
Pq
maximiser cj xj
Pj=1
q
sous les contraintes j=1 aij xj ≤ bi (i = 1, · · · ,p), (I.21)
xj ≥ 0 (j = 1, · · · ,q).

On pose m = p et n = p + q, et on considère le système


Pq
maximiser cj xj
Pj=1
q
sous les contraintes j=1 aij xj + xq+i = bi (i = 1, · · · ,m), (I.22)
xj ≥ 0 (j = 1, · · · ,n).

– 14 –
I.2. LA MÉTHODE DU SIMPLEXE

Il est aisé (et c’est un bon exercice) de vérifier que si le vecteur (x1 , · · · ,xq )T est une
solution réalisable (resp. optimale) du problème (I.21), alors le vecteur
q
X q
X
(x1 , · · · ,xn )T := (x1 , · · · ,xq ,b1 − a1j xj , · · · , bp − apj xj )T
j=1 j=1

est solution réalisable (resp. optimale) du problème (I.22). Inversement, si le vecteur


(x1 , · · · ,xq ,xq+1 , · · · ,xq+p )T
est solution réalisable (resp. optimale) du problème (I.22), alors (x1 , · · · ,xq )T est solution
réalisable (resp. optimale) du problème (I.21). Le problème (I.22) peut se récrire sous forme
matricielle comme
maximiser c̄T x̄
sous les contraintes Āx̄ = b̄, (I.23)
x̄ ≥ 0,
où x̄ := (x1 , · · · ,xp+q )T ,

c̄T := (c1 , · · · , cq ,0, · · · ,0),


 
a11 · · · a1q 1 0 0 ··· 0
a21 · · · a2q 0 1 0 · · · 0
Ā :=  . ..  ,
 
 .. .
ap1 · · · apq 0 0 · · · 0 1

b̄ := b.
De par sa structure particulière (elle contient la matrice identité de taille q dans sa partie
droite), la matrice Ā est nécessairement de rang égal à m = p, quelle que soit A.

Définition I.2.10.

Dans la suite, nous dirons qu’un problème d’optimisation linéaire est sous forme stan-
dard canonique s’il est de la forme (I.23)

Remarque I.2.11
Même si les méthodes présentées ci-dessus permettent de ramener de manière systématique
n’importe quel problème d’optimisation linéaire sous forme générale en des problèmes d’optimi-
sation linéaire sous forme canonique ou standard, dans la pratique il peut arriver (c’était le cas
dans le chapitre précédent) que ce ne soit pas la plus économe en nombre de variables. Dans
ces cas, il est bien entendu plus avantageux d’utiliser la réduction rendant le problème standard
le plus compact possible (i.e. avec le moins de contraintes ou le moins de variables possible).

I.2.3 Solutions de base d’un problème sous forme standard


::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

Dans ce chapitre, nous mettons en évidence certaines solutions réalisables (dites de base)
pour un problème d’optimisation linéaire sous forme standard. Ces solutions se révéleront
suffisantes pour la recherche d’une solution optimale.

– 15 –
CHAPITRE I. PROGRAMMATION LINÉAIRE

Considérons le problème d’optimisation linéaire sous forme standard


maximiser cT x
sous les contraintes Ax = b, (I.24)
x ≥ 0,

où c = (c1 , · · · ,cn )T et (la variable) x = (x1 , · · · ,xn )T sont des vecteurs colonnes à n lignes,
A = (aij )1≤i≤m,1≤j≤n est une matrice à m lignes et n colonnes vérifiant rang(A) = m,
et b = (b1 , · · · ,bm )T est un vecteur colonne à m lignes. Sans perte de généralité, on peut
supposer que n > m, car si n = m l’ensemble réalisable contient au plus un point.
On note
     
a11 a1k a1n
A1 :=  ...  , · · · , Ak =  ...  , · · · , An =  ...  ,
     

am1 amk amn


les colonnes de la matrice A. Par hypothèse sur le rang de A, on peut trouver m colonnes
parmi A1 , · · · ,An qui soient linéairement indépendantes. En général, ce choix n’est pas
unique. On note
n o
Γ := γ : {1, · · · ,m} → {1, · · · ,n} strictement croissante .

Pour γ ∈ Γ, on note Aγ la matrice carrée de taille m


 
a ··· a1γ(m)
  1γ(1)
Aγ = Aγ(1) , · · · , Aγ(m) =  ... ..  .
. 
amγ(1) · · · amγ(m)
Finalement, on définit n o
B := γ ∈ Γ t.q. rang(Aγ ) = m .

Remarque I.2.12
On a bien sûr
n!
]B ≤ ]Γ = .
m!(n − m)!

Pour chaque γ ∈ Γ, on note γ̂ l’unique application strictement croissante de {1, · · · ,n −


m} dans {1, · · · ,n} telle que
 
γ {1, · · · ,m} ∪ γ̂ {1, · · · ,n − m} = {1, · · · ,n}
(autrement dit, γ̂ fournit en ordre croissant les indices complémentaires à ceux atteints
par γ).

Définition I.2.13. Variables en base

Etant fixé un choix de γ ∈ B, on dit que les variables xγ(1) , · · · ,xγ(m) sont les
variables en base (pour γ), tandis que les variables xγ̂(1) , · · · ,xγ̂(n−m) sont les
variables hors base (pour γ).

– 16 –
I.2. LA MÉTHODE DU SIMPLEXE

Pour x ∈ IRn et γ ∈ B, on note


T T
xB := xγ(1) , · · · ,xγ(m) , xN := xγ̂(1) , · · · ,xγ̂(n−m) .

On note aussi
T T
cB := cγ(1) , · · · ,cγ(m) , cN := cγ̂(1) , · · · ,cγ̂(n−m) ,

et enfin
B := Aγ , N := Aγ̂ .
On remarque alors que le système Ax = b se récrit sous la forme

BxB + N xN = b,

qui est équivalent, puisque B est inversible lorsque γ ∈ B, au système

xB = B −1 b − B −1 N xN . (I.25)

Définition I.2.14. Solution de base

On appelle solution de base du système Ax = b associée au choix de base γ ∈ B la


solution x∗ définie par

x∗B = B −1 b, x∗N = (0, · · · ,0)T .

Définition I.2.15. Solution de base réalisable

On dit que la solution de base x∗ du système Ax = b associée au choix de base


γ ∈ B est une solution de base réalisable si de plus elle vérifie les contraintes de
(I.24), c’est-à -dire si toutes les composantes de x∗ sont positives. Dans ce cas, on
dit aussi que la base γ est une base réalisable, et on note R l’ensemble des bases
réalisables. On dit que la solution de base réalisable x∗ est non dégénérée si toutes
les composantes de x∗B sont strictement positives.

Corollaire I.2.16.

Etant fixée γ ∈ B, pour x ∈ IRn solution de Ax = b, on a

xB = x∗B − B −1 N xN , et cT x = cT x∗ + dT x,

où le vecteur d est défini par les relations

dTN = cTN − cTB B −1 N

et
dTB = (0, · · · ,0).

– 17 –
CHAPITRE I. PROGRAMMATION LINÉAIRE

Démonstration. La première égalité découle de manière directe de la définition de x∗ . Pour


la seconde, on écrit
cT x = cTB xB + cTN xN
et l’on substitue xB par B −1 b − B −1 N xN . Ceci donne

cT x = cTB B −1 b+ cTN − cTB B −1 N xN = cTB x∗B + cTN − cTB B −1 N xN = cT x∗ + cTN − cTB B −1 N xN ,


  

d’où la conclusion.

Définition I.2.17. Vecteur des prix marginaux

On dit que le vecteur d est le vecteur des prix marginaux associé à la base γ.

Remarque I.2.18
La terminologie pour vecteur des prix marginaux apparaîtra plus clairement dans le Chapitre
I.3 lorsque nous aborderons les problèmes duaux ; il serait en fait plus juste d’attribuer ce nom
à −d plutôt qu’à d. Cette notion a été vaguement esquissée dans le premier chapitre, lorsque
nous avons évoqué le problème du concurrent.

Proposition I.2.19.

Soit γ une base réalisable et x∗ la solution de base associée à γ. Si le vecteur des prix
marginaux d n’a que des composantes négatives, alors x∗ est une solution optimale
du problème (I.24).

Démonstration. Si x est une solution réalisable quelconque de (I.24), on a par le Corollaire


I.2.16
cT x = cT x∗ + dTN xN ≤ cT x∗ .
De fait, le produit matriciel dTN xN est négatif puisque les composantes de d (et donc dN )
sont supposées négatives et celles de xN positives (car x est réalisable).

La remarque qui suit est à la base de la technique du tableau (cfr. Section I.2.1) pour
l’implémentation de la méthode du simplexe.

Remarque I.2.20
On peut transformer le problème (I.24) en le problème équivalent suivant

maximiser −z
sous les contraintes Ax = b,
(I.26)
cT x + z = 0,
x ≥ 0,

– 18 –
I.2. LA MÉTHODE DU SIMPLEXE

où z est une variable scalaire réelle (non nécessairement positive). Ce dernier problème peut se
récrire sous la forme matricielle
maximiser c̄T x̄
sous les contraintes Āx̄ = b̄, (I.27)
x ≥ 0,

où x̄T := (x1 , · · · ,xn ,z), c̄T = (0, · · · ,0, − 1), et où


   
A 0 b
Ā := T et b̄ := .
c 1 0

Si γ : {1, · · · ,m} → {1, · · · ,n} est un élément de B alors γ̄ : {1, · · · ,m + 1} → {1, · · · ,n + 1}


définie par γ̄(j) = γ(j) si j ∈ {1, · · · ,m} et γ̄(m + 1) = n + 1 est telle que les colonnes
Āγ̄(1) , · · · ,Āγ̄(m+1) sont linéairement indépendantes. Par analogie avec les notations utilisées
plus haut, on notera
B̄ = Āγ̄ = (Āγ̄(1) , · · · ,Āγ̄(m+1) ),
qui est par conséquent une matrice carrée inversible de taille m+1. On remarque que le système
Āx̄ = b̄ est équivalent au système
B̄ −1 Āx̄ = B̄ −1 b̄,
et on explicite ensuite l’expression de B̄ −1 Ā et B̄ −1 b̄. On a

B −1
   
B 0 −1 0
B̄ = T d’où B̄ = ,
cB 1 −cTB B −1 1

et donc
B −1 B −1 A
      −1 
−1 0 A 0 0 B A 0
B̄ Ā = = = ,
−cTB B −1 1 cT 1 c − cTB B −1 A 1
T dT 1

et
B −1 b
 
−1
B̄ b̄ = .
−cTB B −1 b
Finalement, pour chaque i ∈ {1, · · · ,m},

(B −1 A)γ(i) = (0, · · · ,0,1,0, · · · ,0)T ,

où l’unique 1 est placé en ième position.

I.2.4 Pivot à partir d’une solution de base réalisable : critère de Dantzig


::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

Au chapitre précédent, nous avons associé à tout choix de base γ ∈ B une solution de
base x∗ , et nous avons fournit un critère (la Proposition I.2.19) permettant de s’assurer
que x∗ soit une solution optimale.
Dans ce chapitre, nous présentons une méthode permettant, étant donné un choix de
base γ ∈ B pour laquelle la solution de base x∗ est réalisable mais le critère de la Proposition
I.2.19 n’est pas vérifié, de déterminer un autre choix de base δ ∈ B dont la solution de base
associée y ∗ est réalisable et vérifie de plus

cT y ∗ ≥ cT x∗ .

– 19 –
CHAPITRE I. PROGRAMMATION LINÉAIRE

Cette méthode opère au moyen d’un pivot, au sens où les ensembles γ({1, · · · ,m}) et
δ({1, · · · ,m}) ne diffèrent que par un élément.
Reprenons donc le problème d’optimisation linéaire sous forme standard (I.24) du cha-
pitre précédent :
maximiser cT x
sous les contraintes Ax = b,
x ≥ 0,

où n > m ∈ IN∗ , c = (c1 , · · · ,cn )T et (la variable) x = (x1 , · · · ,xn )T sont des vecteurs
colonnes à n lignes, A = (aij )1≤i≤m,1≤j≤n est une matrice à m lignes et n colonnes
vérifiant rang(A) = m, et b = (b1 , · · · ,bm )T est un vecteur colonne à m lignes.
Soit γ ∈ B, x∗ la solution de base du système Ax = b associée à γ et supposons que
x∗ soit réalisable mais que l’une au moins des composantes du vecteur d soit strictement
positive.
On note n o
Eγ := j ∈ {1, · · · ,n − m} t.q. dγ̂(j) > 0 .

(par construction on a nécessairement dγ(i) = 0 pour tout i ∈ {1, · · · ,m})


Supposons J ∈ Eγ fixé (nous verrons différents critères pour ce faire ci-dessous). On
définit l’ensemble n o
−1
Sγ,J := i ∈ {1, · · · ,m} t.q. (B N )iJ > 0 .

Lemme I.2.21.

Si Sγ,J = ∅ alors le problème d’optimisation (I.24) n’a pas de solution optimale car
la fonction objectif n’est pas bornée supérieurement sur l’ensemble réalisable.

Démonstration. Soit t > 0 fixé quelconque. On définit le vecteur x ∈ IRn par les relations

xγ̂(j) = 0 si j ∈ {1, · · · ,n − m} \ {J},


xγ̂(J) = t,
xγ(i) = x∗γ(i) − t(B −1 N )iJ si i ∈ {1, · · · ,m}.

Par construction,
xB = x∗B − B −1 N xN ,
de sorte que
Ax = b.
De plus, puisque t ≥ 0, puisque x∗ est réalisable, et puisque (B −1 N )iJ ≤ 0 pour tout
i ∈ {1, · · · ,m} par hypothèse, on a
x ≥ 0,
et on déduit donc que x est une solution réalisable. Enfin, on a

cT x = cT x∗ + tdTγ̂(J) .

Comme t ≥ 0 était quelconque et que dγ̂(J) > 0, on déduit que la fonction objectif n’est
pas bornée supérieurement sur l’ensemble réalisable.

– 20 –
I.2. LA MÉTHODE DU SIMPLEXE

Supposons maintenant que la fonction objectif soit bornée supérieurement sur l’en-
semble réalisable et fixons I ∈ Sγ,J (là aussi nous verrons différents critères de choix par
la suite). Dans tous les cas, on a

Lemme I.2.22.

Soit δ l’unique application strictement croissante de {1, · · · ,m} dans {1, · · · ,n} telle
que    
δ {1, · · · ,m} = γ {1, · · · ,m} \ γ {I} ∪ γ̂ {J} .
Alors δ ∈ B.

(Autrement dit les colonnes de A associées aux variables en base obtenues en faisant sortir
de la base initiale la variable xγ(I) et en y faisant rentrer la variable xγ̂(J) sont linéairement
indépendantes).

Démonstration. Par définition des matrices B et N (pour la base γ), on a


m
X
Aγ̂(J) = (B −1 N )iJ Aγ(i) .
i=1

Puisque (B −1 N )IJ > 0 (et donc 6= 0) par hypothèse sur I, et puisque la famille (Aγ(i) )1≤i≤m
est une base de IRm , on déduit que Aγ̂(J) n’est pas combinaison linéaire des seuls Aγ(i) avec
i ∈ {1, · · · ,m} \ {I}. Il s’ensuit que δ définit une famille de m vecteurs libres de IRm , et
donc que δ ∈ B par définition de B.

Lemme I.2.23. Critère de Dantzig

Sous les hypothèses du lemme précédent, si de plus


x∗γ(I) x∗γ(i)
= tJ := min
(B −1 N )IJ i∈Sγ,J (B −1 N )iJ

alors δ est une base réalisable. De plus, si y ∗ désigne la solution de base réalisable
associée à la base δ, alors
cT y ∗ ≥ cT x∗ ,
l’inégalité étant stricte si tJ 6= 0.
Démonstration. On procède de manière assez semblable à la démonstration du Lemme
I.2.21. Soit y ∈ IRn défini par

yγ̂(j) = 0 si j ∈ {1, · · · ,n − m} \ {J},


yγ̂(J) = tJ ,
yγ(i) = x∗γ(i) − tJ (B −1 N )iJ si i ∈ {1, · · · ,m}.

Par construction,
yB = x∗B − B −1 N yN ,

– 21 –
CHAPITRE I. PROGRAMMATION LINÉAIRE

de sorte que
Ay = b.
Aussi, par définition de tJ on a
y≥0
et on déduit donc que y est une solution réalisable. De plus

yγ(I) = x∗γ(I) − tJ (B −1 N )IJ = 0,

et par construction
yγ̂(j) = 0 si j ∈ {1, · · · ,n − m} \ {J}.
Il s’ensuit que, relativement à la base δ,

yN = 0.

Par conséquent, y = y ∗ est l’unique solution de base (on sait qu’elle est aussi réalisable)
associée à la base δ, et on a

cT y ∗ = cT y = cT x∗ + dγ̂(J) tJ ≥ cT x∗ ,

l’inégalité étant stricte si tJ > 0.

Dans la méthode présentée ci-dessus, et permettant de passer de la base réalisable γ


à la base réalisable δ, il se peut que les indices J puis I des variables entrantes puis sor-
tantes ne soient pas déterminés de manière unique (si Eγ n’est pas réduit à un élément,
et si le maximum tJ est atteint pour plusieurs indices I). Dans ces cas, et avec l’optique
par exemple de rendre la méthode algorithmique (et donc déterministe) en vue de la pro-
grammer sur un ordinateur, il faut y adjoindre un ou des critères additionnels permettant
de déterminer I et J de manière univoque. Nous allons décrire deux tels critères. On peut
également imaginer beaucoup d’autres variantes.

Définition I.2.24. Critère naturel

On appelle variable entrante selon le critère naturel la variable xγ̂(J) telle que

dγ̂(J) = max dγ̂(j) et J= min j.


j∈Eγ j∈Eγ ,dγ̂(j) =dγ̂(J)

(autrement dit la variable entrante est dans ce cas une de celles associées aux plus
grands coefficients positifs de d, et parmi celles-ci celle de plus petit indice)
On appelle variable sortante selon le critère naturel la variable xγ(I) telle que

x∗γ(i)
( )
I = min i ∈ Sγ,J t.q. = tJ .
(B −1 N )iJ

(autrement dit la variable sortante est dans ce cas celle de plus petit indice parmi les
variables satisfaisant au critère de Dantzig étant donnée la variable entrante J)

– 22 –
I.2. LA MÉTHODE DU SIMPLEXE

Définition I.2.25. Critère de Bland

On appelle variable entrante selon le critère de Bland la variable xγ̂(J) telle que

J = min j.
j∈Eγ

(autrement dit la variable entrante est dans ce cas celle associée au premier coefficient
strictement positif de d)
On appelle variable sortante selon le critère de Bland la variable xγ(I) telle que

x∗γ(i)
( )
I = min i ∈ Sγ,J t.q. = tJ .
(B −1 N )iJ

(autrement dit la variable sortante est dans ce cas celle de plus petit indice parmi les
variables satisfaisant au critère de Dantzig étant donnée la variable entrante J)

Remarque I.2.26 Non cyclicité sous le critère de Bland


Les méthodes que nous venons d’étudier (application du critère naturel ou de Bland) permettent
de passer d’une base réalisable γ à une base réalisable δ tout en augmentant (au sens non
strict) la fonction objectif. Puisqu’il n’y a qu’un nombre fini de bases réalisables (au plus Cnm ),
les itérées de cette méthode nous conduiront assurément à une solution optimale à condition
que la fonction objectif soit majorée et que nous puissions démontrer que l’algorithme ne cycle
pas, c’est-à -dire qu’aucune des bases réalisables obtenues par les différentes itérations ne peut
être égale à la base initiale γ. Cette condition n’est pas vérifiée en général pour le critère naturel
(il existe un célèbre contre-exemple du à Beale (1955)). A l’inverse, Bland (1974) à démontré
que la cyclicité est proscrite suivant son critère. Nous renvoyons à l’appendice A pour davantage
de précisions.

I.2.5 Détermination d’une première solution de base réalisable


:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

Le Chapitre I.2.4 nous a fourni un moyen de passer d’une base réalisable à une autre
base réalisable plus avantageuse du point de vue de la fonction objectif. Il nous reste
néanmoins à déterminer, en vue d’initialiser la méthode, comment obtenir une première
base réalisable. Ceci constitue l’objet du chapitre présent.
Considérons un problème d’optimisation linéaire sous forme canonique :

maximiser cT x
sous les contraintes Ax ≤ b, (I.28)
x ≥ 0,

où c = (c1 , · · · ,cq )T et (la variable) x = (x1 , · · · ,xq )T sont des vecteurs colonnes à q lignes,
A = (aij )1≤i≤p,1≤j≤q est une matrice à p lignes et q colonnes, et b = (b1 , · · · ,bp )T est un
vecteur colonne à p lignes.

– 23 –
CHAPITRE I. PROGRAMMATION LINÉAIRE

Définition I.2.27. Problème de première (resp. deuxième) espèce

On dit que le problème sous forme canonique (I.28) est un problème de première
espèce si toutes les composantes du vecteur b sont positives. Dans le cas inverse, ou
si le problème n’est pas sous forme canonique, on dit qu’il s’agit d’un problème de
deuxième espèce.

Comme indiqué au Chapitre I.2.2, au problème (I.28) on peut associer un problème


équivalent sous forme standard : on explicite (I.28) comme
Pq
maximiser cj xj
Pj=1
q
sous les contraintes j=1 aij xj ≤ bi (i = 1, · · · ,p), (I.29)
xj ≥ 0 (j = 1, · · · ,q),
on pose m = p et n = p + q, et on considère le système
Pq
maximiser cj xj
Pj=1
q
sous les contraintes j=1 aij xj + xq+i = bi (i = 1, · · · ,m), (I.30)
xj ≥ 0 (j = 1, · · · ,n).
Ce dernier problème se récrit sous forme matricielle comme
maximiser c̄T x̄
sous les contraintes Āx̄ = b̄, (I.31)
x̄ ≥ 0,

où x̄ = (x1 , · · · ,xp+q )T ,

c̄T = (c1 , · · · , cq ,0, · · · ,0),


 
a11 · · · a1q 1 0 0 ··· 0
a21 · · · a2q 0 1 0 · · · 0
Ā =  . ..  ,
 
 .. .
ap1 · · · apq 0 0 · · · 0 1

b̄ = b.

De par la forme de Ā, on obtient directement le

Lemme I.2.28.

Si toutes les composantes de b sont positives (i.e. si le problème sous forme canonique
est de première espèce), alors le problème sous forme standard (I.30) possède comme
base réalisable celle obtenue en ne retenant en base que les m variables d’écart.
Démonstration. En effet, en posant γ({1, · · · ,m}) = {n − m + 1, · · · ,n}, on s’aperçoit que
B̄ := Āγ n’est autre que la matrice identité de taille m (en particulier γ ∈ B), et par
conséquent
x̄∗B = (B̄)−1 b̄ = b̄ = b
n’a que des composantes positives. La conclusion suit alors la définition de base réalisable,
puisque d’autre part par construction x̄∗N = (0, · · · ,0).

– 24 –
I.2. LA MÉTHODE DU SIMPLEXE

Venons en maintenant au cas général d’un système de deuxième espèce. Nous com-
mençons par le cas d’un système sous forme standard (nous savons que tout problème
d’optimisation peut se ramener sous cette forme). Nous verrons ensuite une deuxième ma-
nière de procéder, moins gourmande en nombre de variables additionnelles, qui s’applique
lorsque l’on part d’un système sous forme canonique de deuxième espèce.
Soit donc le problème d’optimisation linéaire sous forme standard

maximiser cT x
sous les contraintes Ax = b, (I.32)
x ≥ 0,

où c = (c1 , · · · ,cn )T et (la variable) x = (x1 , · · · ,xn )T sont des vecteurs colonnes à n
lignes, A = (aij )1≤i≤m,1≤j≤n est une matrice à m lignes et n colonnes, de rang égal à m,
et b = (b1 , · · · ,bm )T est un vecteur colonne à m lignes.
Sans perte de généralité, on peut supposer que toutes les composantes de b sont
positives, sinon il suffit de les multiplier, ainsi que les lignes correspondantes de A, par −1
(ce qui revient à remplacer une égalité entre deux quantités par l’égalité de leurs quantités
opposées, ce qui est bien sûr équivalent).
On introduit alors la variable “fictive” y = (y1 , · · · ,ym )T ∈ IRm et on considère le
problème d’optimisation linéaire

maximiser −y1 − y2 − · · · − ym
sous les contraintes Ax + y = b, (I.33)
x,y ≥ 0.

Notons que la fonction objectif de ce dernier problème n’a aucun lien avec la
fonction objectif du problème de départ. Par contre, si le problème (I.32) possède une
solution réalisable, alors le maximum du problème (I.33) est égal à zéro, et inversement.
L’avantage du problème (I.33) est qu’il possède, comme dans le cas des problèmes de pre-
mière espèce, une solution de base réalisable évidente donnée par (x1 , · · · ,xn ) = (0, · · · ,0)
et (y1 , · · · ,ym ) = (b1 , · · · , bm ) (d’où le choix d’écrire le système de départ avec b n’ayant que
des composantes positives). L’itération de la méthode du chapitre I.2.4 appliquée à (I.33)
permet par conséquent de s’assurer si le maximum de (I.33) vaut 0, auquel cas le sommet
optimal en lequel se termine l’algorithme détermine une solution réalisable de (I.32) et
l’itération de la méthode du chapitre I.2.4 peut alors être appliquée directement à (I.32).
Si par contre le maximum de (I.33) est strictement négatif, alors l’ensemble réalisable de
(I.32) est vide et par conséquent il est vain de tenter de résoudre (I.32).
Revenons maintenant au cas d’un problème sous forme canonique

maximiser cT x
sous les contraintes Ax ≤ b, (I.34)
x ≥ 0,

que l’on a transformé via les variables d’écart en le problème sous forme standard canonique

maximiser c̄T x̄
sous les contraintes Āx̄ = b̄, (I.35)
x̄ ≥ 0,

– 25 –
CHAPITRE I. PROGRAMMATION LINÉAIRE

où x̄ := (x1 , · · · ,xp+q )T ,

c̄T := (c1 , · · · , cq ,0, · · · ,0),


 
a11 · · · a1q 1 0 0 ··· 0
a21 · · · a2q 0 1 0 · · · 0
Ā :=  . ..  ,
 
 .. .
ap1 · · · apq 0 0 · · · 0 1

b̄ := b,

et faisons l’hypothèse que b possède au moins une composante strictement négative (de sorte
que le problème soit de deuxième espèce). Plutôt que d’introduire p nouvelles variables
comme dans le procédé ci-dessus, on en introduit une seule (appelons la xp+q+1 ) et on
considère le problème d’initialisation

maximiser −xp+q+1
sous les contraintes Ā¯x̄
¯ = b, (I.36)
¯ ≥ 0,

¯ := (x1 , · · · ,xp+q+1 )T et
où x̄
 
a11 · · · a1q 1 0 0 · · · 0 −1
a21 · · · a2q 0 1 0 · · · 0 −1
Ā¯ =  . ..  .
 
..
 .. . . 
ap1 · · · apq 0 0 · · · 0 1 −1

Comme plus haut, le problème (I.35) possède une solution de base réalisable si et seulement
si le maximum du problème (I.36) est égal à zéro. Ce dernier problème possède une solution
de base réalisable relativement facile à déterminer. Pour ce faire, soit i0 ∈ {1, · · · ,p} un
indice tel quel
bi0 = min bi < 0.
i∈{1,··· ,p}

On prétend qu’en choisissant pour variables en base les variables {xq+1 , · · · ,xq+p+1 } \
{xp+i0 } on obtient une base réalisable. En effet, les variables hors base étant fixées à zéro,
le système (I.36) se ramène à

xp+q+1 = −bi0 (se lit dans la ligne i0 ),


xp+i = bi + xp+q+1 (pour tout i 6= i0 ).

Ainsi, xp+q+1 > 0 par définition de i0 et aussi

xp+i = bi − bi0 ≥ 0

pour tout i 6= i0 . La suite de l’analyse suit alors les mêmes lignes que ci-dessus dans le cas
d’un problème sous forme standard quelconque.

I.2.6 Description algorithmique de la méthode du simplexe


::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

Dans ce chapitre, on traduit sous forme algorithmique la méthode développée dans les
chapitres précédents afin de résoudre un problème d’optimisation linéaire que l’on sup-
posera (le Chapitre I.2.2 nous garantit que cela n’enlève aucune généralité) sous forme

– 26 –
I.3. DUALITÉ EN PROGRAMMATION LINÉAIRE

standard :
maximiser cT x
sous les contraintes Ax = b, (I.37)
x ≥ 0,

où c = (c1 , · · · ,cn )T et (la variable) x = (x1 , · · · ,xn )T sont des vecteurs colonnes à n
lignes, A = (aij )1≤i≤m,1≤j≤n est une matrice à m lignes et n colonnes, de rang égal à m,
et b = (b1 , · · · ,bm )T est un vecteur colonne à m lignes de composantes toutes positives.
Etape 1 : Soit on connaît une base réalisable pour (I.37), auquel cas on passe à l’étape
2, soit on n’en connaît pas et considère alors le problème (I.33) du Chapitre I.2.5 pour
lequel on dispose d’une base réalisable évidente. On passe alors à l’étape 2 pour ce dernier
problème, et on laisse momentanément en suspend la résolution de (I.37).
Etape 2 : On dispose d’une base réalisable. Si le vecteur des prix marginaux pour cette
base réalisable n’a que des composantes négatives, la solution de base réalisable correspon-
dant à la base réalisable courante est un optimum pour le problème en question, on passe
alors directement à l’Etape 3. Sinon, on applique la méthode décrite dans le Chapitre
I.2.4. Celle-ci permet soit de déterminer que le problème d’optimisation en question n’est
pas majoré (cfr. Lemme I.2.21), auquel cas on passe directement à l’Etape 4, soit de dé-
terminer une nouvelle base réalisable meilleure (au sens non strict) concernant la fonction
objectif. Dans ce dernier cas, on applique par défaut le critère naturel pour le choix des
variables entrantes et sortantes, sauf si celui-ci conduit à une augmentation non stricte
de la fonction objectif, auquel cas on applique le critère de Bland. On retourne ensuite en
début d’Etape 2 avec cette nouvelle base réalisable.
Etape 3 : On dispose d’une solution optimale pour le problème en question. S’il s’agit
du problème initial (I.37), on passe à l’Etape 6. S’il s’agit du problème (I.33), ou bien
le maximum est strictement négatif, auquel cas le problème (I.37) possède un ensemble
réalisable vide et on passe à l’Etape 5, ou bien le maximum est égal à zéro, ce qui fournit
une base réalisable pour (I.37), et on retourne à l’Etape 1.
Etape 4 : On sort de l’algorithme avec la conclusion que la fonction objectif du pro-
blème d’optimisation I.37 n’est pas majorée sur l’ensemble réalisable.
Etape 5 : On sort de l’algorithme avec la conclusion que l’ensemble réalisable du
problème d’optimisation I.37 est vide.
Etape 6 : On sort de l’algorithme avec une solution optimale.

Il est vivement conseillé au lecteur de tenter d’implémenter l’algorithme ci-dessus dans


son langage de programmation préféré. La procédure en question recevra en entrée la
matrice A ainsi que les vecteurs b et c et fournira en sortie une solution optimale (s’il en
existe, sinon elle en indiquera l’une des deux raisons possibles) ainsi que la valeur optimale
de la fonction objectif.

I.3 Dualité en programmation linéaire


Considérons à nouveau un problème d’optimisation linéaire sous forme canonique
Pq
maximiser cj xj
Pj=1
q
sous les contraintes j=1 aij xj ≤ bi (i = 1, · · · ,p), (I.38)
xj ≥ 0 (j = 1, · · · ,q),

– 27 –
CHAPITRE I. PROGRAMMATION LINÉAIRE

où p,q ∈ IN∗ , et où les cj (1 ≤ j ≤ q), les aij (1 ≤ i ≤ p, 1 ≤ j ≤ q), et les bi (1 ≤ i ≤ p)


sont des constantes réelles.
A supposer que (I.38) possède au moins une solution optimale x∗ , la méthode du sim-
plexe permet, à chacune de ses étapes, d’obtenir (et d’améliorer) une borne inférieure sur
la valeur optimale cT x∗ de la fonction objectif.
Une question naturelle, mais qui va dans la direction opposée, est celle de savoir s’il
est possible d’obtenir une borne supérieure sur la valeur cT x∗ , et cela sans être obligé de
parcourir l’algorithme du simplexe jusqu’à ce qu’il aboutisse à une solution optimale. De
fait, on peut imaginer que dans certains cas on puisse être intéressé à encadrer avec plus
ou moins de précision la valeur cT x∗ , sans toutefois requérir sa valeur exacte (par exemple
si les calculs sont coûteux ou si le temps est compté).
Pour ce faire, partons des p contraintes d’inégalités
q
X
aij xj ≤ bi (i = 1, · · · ,p),
j=1

et faisons en une somme pondérée au moyen de p coefficients positifs yi :


 
Xp q
X p
X
yi  aij xj  ≤ yi bi .
i=1 j=1 i=1

En récrivant le terme de gauche de l’inégalité précédente, on obtient


q p p
!
X X X
aij yi xj ≤ yi bi ,
j=1 i=1 i=1

de sorte que si
p
X
aij yi ≥ cj (j = 1, · · · ,q), (I.39)
i=1
alors nécessairement pour toute solution réalisable x ≡ (x1 , · · · ,xq ) de (I.38) on a
q
X p
X
cj xj ≤ yi bi .
j=1 i=1

En particulier,
cT x∗ ≤ bT y
quel que soit y ≡ (y1 , · · · ,yp ) vérifiant (I.39) et tel que y ≥ 0. Autrement dit, pour obtenir
une borne supérieure sur la valeur optimale de la fonction objectif du problème (I.38), il
suffit de connaître une solution réalisable du problème dual de (I.38), que nous définissons
plus précisément maintenant :

Définition I.3.1. Problème primal et dual

Le problème dual de (I.38) est le problème


Pp
minimiser Pi=1 bi yi
p
sous les contraintes i=1 aij yi ≥ cj (j = 1, · · · ,q), (I.40)
yi ≥ 0 (i = 1, · · · ,p).

On dit aussi que (I.38) est le problème primal de (I.40).

– 28 –
I.3. DUALITÉ EN PROGRAMMATION LINÉAIRE

Remarquons que sous forme matricielle, les problèmes primal et dual s’écrivent donc

maximiser cT x minimiser bT y
sous les contraintes Ax ≤ b, 7→ sous les contraintes AT y ≥ c,
x ≥ 0, y ≥ 0.

Remarquons aussi que le problème dual est équivalent au problème d’optimisation linéaire
sous forme canonique
maximiser (−b)T y
sous les contraintes (−A)T y ≤ −c,
y ≥ 0,

l’optimum du second étant égal à l’opposé de l’optimum du premier 1 . Dès lors, on peut
appliquer au problème dual tout ce que nous avons développé jusqu’ici concernant le pro-
blème primal, en particulier l’algorithme du simplexe, ce qui permet déjà de donner une
réponse à la question évoquée en tête de chapitre.
Finalement, remarquons que puisque le problème dual (I.40) est lui-même (équivalent à )
un problème primal, on peut considérer son problème dual à lui aussi. On s’aperçoit de
suite que ce dernier n’est autre que le problème primal du départ, autrement dit le dual
du problème dual est égal au problème primal qui est donc aussi un problème dual !
Répétant alors l’argumentaire nous ayant conduit à la définition I.3.1, on obtient di-
rectement le

Théorème I.3.2.

Si x est une solution réalisable du problème primal (I.38), et y une solution réalisable
du problème dual (I.40), alors nécessairement

cT x ≤ bT y.

En particulier, si cT x = bT y alors x est une solution optimale du primal et y est une


solution optimale du dual.

Corollaire I.3.3.

Si la fonction objectif du problème primal est non majorée sur son ensemble réalisable,
alors le problème dual ne possède aucune solution réalisable. Inversement, si la fonction
objectif du problème dual est non minorée sur son ensemble réalisable, alors le problème
primal ne possède aucune solution réalisable.

Attention au fait que les réciproques des énoncés du Corollaire I.3.3 sont fausses en
général.
Un résultat plus difficile est le théorème de dualité suivant

1. En effet, cela suit la formule classique − maxy (−f (y)) = miny (f (y)) avec f (y) = bT y.

– 29 –
CHAPITRE I. PROGRAMMATION LINÉAIRE

Théorème I.3.4. Théorème de dualité de Gale, Kuhn et Tucker

Le problème primal (I.38) possède une solution optimale x∗ si et seulement si le pro-


blème dual (I.40) possède une solution optimale y ∗ . Dans ce cas, on a nécessairement
q
X p
X
cj x∗j = bi yi∗ .
j=1 i=1

Démonstration. Au vu du Théorème I.3.2, et de la remarque sur le dual du dual, il suffit


de montrer que si x∗ ≡ (x∗1 , · · · ,x∗q ) est une solution optimale du problème primal, alors il
existe une solution réalisable y ∗ ≡ (y1∗ , · · · ,yp∗ ) du dual pour laquelle
q
X p
X
cj x∗j = bi yi∗ .
j=1 i=1

Partant donc du problème primal


Pq
maximiser cj xj
Pj=1
q
sous les contraintes j=1 aij xj ≤ bi (i = 1, · · · ,p),
xj ≥ 0 (j = 1, · · · ,q),

introduisons les p variables d’écart


q
X
xq+i := bi − aij xj , (i = 1, · · · ,p),
j=1

et récrivons le problème primal sous forme standard


Pq
maximiser c x
Pqj=1 j j
sous les contraintes j=1 aij xj + xq+i = bi (i = 1, · · · ,p), (I.41)
xj ≥ 0 (j = 1, · · · ,q + p),

ou sous forme matricielle


maximiser c̄T x̄
sous les contraintes Āx̄ = b̄,
x̄ ≥ 0,

avec (cfr. Chapitre I.2.2)

x̄ = (x̄1 , · · · ,x̄q ,x̄q+1 , · · · ,x̄q+p ),

c̄T = (c1 , · · · , cq ,0, · · · ,0),


 
a11 · · · a1q 1 0 0 ··· 0
a21 · · · a2q 0 1 0 · · · 0
Ā =  . ..  ,
 
 .. .
ap1 · · · apq 0 0 · · · 0 1

b̄ = b.

Appelons γ la base réalisable pour P (I.41) correspondant à la solution optimale x̄∗ =


(x∗1 , · · · ,x∗q ,b1 − j=1 a1j x∗j , · · · ,bp − qj=1 apj x∗j ), et soit d¯ ≡ (d1 , · · · ,dq ,dq+1 , · · · ,dq+p ) le
q
P

– 30 –
I.3. DUALITÉ EN PROGRAMMATION LINÉAIRE

vecteur des prix marginaux correspondants. Alors pour toute solution (non nécessaire-
ment réalisable ! - cfr Corollaire I.2.16) x̄ de (I.41) on a

q
X p
X q
X
c̄ x̄ = c̄ x̄ + d¯T x̄ = cT x∗ +
T T ∗

dj x̄j + dq+i bi − aij x̄j
j=1 i=1 j=1
" p
# q
" p
# (I.42)
X X X
T ∗
= c x − bi (−dq+i ) + dj − aij dq+i x̄j .
i=1 j=1 i=1

En choisissant pour x̄ l’unique solution pour laquelle x̄1 = · · · = x̄q = 0 on obtient de (I.42)

p
X
cT x∗ = bi (−dq+i ). (I.43)
i=1

En choisissant pour x̄ l’unique solution pour laquelle x̄1 = · · · = x̄q = 0 sauf pour un
certain j ∈ {1, · · · ,q} pour lequel x̄j = 1, on obtient, par (I.42) et en tenant compte de
(I.43),
Xp
dj − aij dq+i = cj . (I.44)
i=1

Par ailleurs, puisque x̄∗ est une solution optimale, nécessairement le vecteur des prix mar-
ginaux d¯ en cette solution est négatif. D’autre part j ∈ {1, · · · ,q} a été choisi quelconque.
Ainsi, de (I.44) on obtient

p
X
aij (−dq+i ) = cj − dj ≥ cj , j = 1, · · · ,q. (I.45)
i=1

Il s’ensuit que le vecteur y ∗ ≡ (y1∗ , · · · ,yp∗ ) := (−dq+1 , · · · ,−dq+p ) est une solution réalisable
du problème dual (I.40), et par (I.43) on a

cT x∗ = bT y ∗ ,

ce qui termine la démonstration.

La démonstration du théorème précédent permet également d’affirmer le

Corollaire I.3.5. Solution optimale du dual et prix marginaux

Si le problème primal (I.38) possède une solution optimale x∗ , et si d¯ ≡


(d1 , · · · ,dq ,dq+1 , · · · ,dq+p ) désigne le vecteur des prix marginaux pour la base réali-
sable correspondant à x∗ , alors une solution optimale du problème dual (I.40) est
fournie par
(y1∗ , · · · ,yp∗ ) := (−dq+1 , · · · , − dq+p ).

– 31 –
CHAPITRE I. PROGRAMMATION LINÉAIRE

Théorème I.3.6. Prix marginaux et problème dual

Supposons que le problème primal (I.38) possède une solution optimale x∗ non dégé-
nérée. a Alors il existe ε > 0 tel que si les variations t1 , · · · ,tp des contraintes vérifient
la condition de petitesse

|ti | ≤ ε ∀ i ∈ {1, · · · ,p},

l’optimum du problème primal modifié


Pq
maximiser cj xj
Pj=1
q
sous les contraintes j=1 aij xj ≤ bi + ti (i = 1, · · · ,p), (I.46)
xj ≥ 0 (j = 1, · · · ,q),

est encore atteint et est donné par


p
X
T ∗
c x + ti yi∗ ,
i=1

où (y1∗ , · · · ,yp∗ ) désigne une (en fait l’unique) solution optimale du problème dual
(I.40).
a. On rappelle qu’une solution de base est dite non dégénérée si aucune des composantes
correspondant aux variables en base n’est nulle.

Démonstration. Le problème dual de (I.46) est donné par


Pp
minimiser Ppi=1 (bi + ti )yi
sous les contraintes i=1 aij yi ≥ cj (j = 1, · · · ,q), (I.47)
yi ≥ 0 (i = 1, · · · ,p).

La variation des contraintes du primal se traduit donc par une variation de la fonction
objectif du dual, mais les contraintes du dual ne sont pas modifiées. En particulier, les
solutions de base réalisables de (I.47) et de (I.40) sont identiques. Par hypothèse, x∗ est
non-dégénérée, et par conséquent y ∗ est l’unique solution optimale de (I.40). En effet, le
corollaire précédent (utilisé en renversant le rôle du primal et du dual) implique que les prix
marginaux du dual correspondant aux variables d’écart du dual sont donnés par x∗ , et sont
donc tous strictement négatifs, il s’ensuit que l’optimum du dual est atteint et uniquement
atteint en y ∗ . Puisque y ∗ est l’unique solution optimale de (I.40), il existe r > 0 tel que
p
X p
X
bi yi∗ ≥ bi yi + r
i=1 i=1

quelle que soit la solution de base réalisable (y1 , · · · ,yp ) de (I.40) (et donc de (I.47)) dif-
férente de y ∗ . Par continuité et finitude (il n’y a qu’un nombre fini de solutions de base
réalisables), on déduit alors qu’il existe ε > 0 tel que
p
X p
X
(bi + ti )yi∗ > (bi + ti )yi
i=1 i=1

quelle que soit la solution de base réalisable (y1 , · · · ,yp ) de (I.47) différente de y ∗ , et quels
que soient t1 , · · · ,tp vérifiant |ti | ≤ ε pour chaque i ∈ {1, · · · ,p}. En particulier, pour de tels

– 32 –
I.3. DUALITÉ EN PROGRAMMATION LINÉAIRE

ti le problème dual (I.47) possède un optimum dont la valeur est donnée par pi=1 (bi +ti )yi∗ .
P
Le Théorème de dualité I.3.4 assure alors que (I.46) possède également un optimum, dont
la valeur optimale, égale à celle du dual (I.47), est donnée par
p
X p
X p
X q
X p
X p
X
∗ ∗ ∗ ∗ ∗ T ∗
(bi + ti )yi = bi yi + ti yi = cj xj + ti yi = c x + + ti yi∗ .
i=1 i=1 i=1 j=1 i=1 i=1

Ceci termine la démonstration.

Il est conseillé au lecteur de relire la partie du premier chapitre consacrée au problème


du concurrent à la lumière du Corollaire précédent.

Remarque I.3.7 Sur le choix du primal ou du dual pour l’application de l’algorithme du


simplexe
Dans certains cas, il est plus intéressant d’appliquer l’algorithme du simplexe à un problème
dual (ou plûtot à sa forme standard associée) plutôt qu’au problème primal. Considérons en ef-
fet un primal ayant p = 1000 contraintes pour seulement q = 100 inconnues. La forme standard
associée au primal (après introduction des variables d’écart) aura m = 1000 contraintes pour
n = p + q = 1100 inconnues. L’algorithme du simplexe dans ce cas nécessite à chaque étape
de résoudre un système de taille 1000 × 1000. A l’inverse, le problème dual possède p = 100
contraintes pour q = 1000 inconnues. Le problème standard qui lui est associé possède donc
m = 100 contraintes pour n = p + q = 1100 inconnues. L’algorithme du simplexe dans ce
deuxième cas ne nécessite plus donc à chaque étape “que” de résoudre un système de taille
100 × 100, ce qui constitue un gain énorme. En résumé, il est donc préférable de considérer en
priorité la version (primale ou duale) qui possède le moins de contraintes.

Théorème I.3.8. Théorème des écarts complémentaires

Soient x ≡ (x1 , · · · ,xq ) et y = (y1 , · · · ,yp ) deux solutions réalisables respectivement


du problème primal (I.38) et du problème dual (I.40). Une condition nécessaire et
suffisante pour que x et y soient optimaux simultanément est que
p
X
∀j ∈ {1, · · · ,q}, si xj > 0 alors aij yi = cj
i=1
et (I.48)
q
X
∀i ∈ {1, · · · ,p}, si yi > 0 alors aij xj = bi .
j=1

Démonstration. Elle reprend le schéma du début de chapitre concernant les bornes supé-
rieures et inférieures sur la fonction objectif.
Puisque x est une solution réalisable du primal et que y ≥ 0,
 
Xp X q p
X
 aij xj yi ≤
 bi yi .
i=1 j=1 i=1

– 33 –
CHAPITRE I. PROGRAMMATION LINÉAIRE

Inversement, puisque y est une solution réalisable du dual et que x ≥ 0,


q p q
!
X X X
aij yi xj ≥ cj xj .
j=1 i=1 j=1

Par ailleurs, en développant on obtient bien sûr que


 
p q q p
!
X X X X
 aij xj  yi = aij yi xj .
i=1 j=1 j=1 i=1

Ainsi,  
q q p p q p
!
X X X X X X
cj xj ≤ aij yi xj =  aij xj  yi ≤ bi yi . (I.49)
j=1 j=1 i=1 i=1 j=1 i=1

Nous pouvons maintenant démontrer Pla conditionP nécessaire. Si x et y sont optimales,


alors par le Théorème de dualité on a qj=1 cj xj = pi=1 bi yi et par conséquent chacune
des deux inégalités de (I.49) est une égalité. Les inégalités de (I.48) s’ensuivent.
Inversement pour la condition suffisante. Si les inégalités de P(I.48) sont vérifiées, alors
les deux inégalités de (I.49) sont des égalités et par conséquent qj=1 cj xj = pi=1 bi yi . Il
P
s’ensuit du Théorème I.3.2 que x et y sont optimales.

Corollaire I.3.9.

Soit x une solution réalisable du problème primal. Alors x est optimale


Psiq et seulement
si il existe une solution réalisable
P y du problème dual pour laquelle j=1 aij xj = bi
pour tout i vérifiant yi > 0 et pi=1 aij yi = cj pour tout j vérifiant xj > 0.

– 34 –
II.
Optimisation quadratique

Dans tout ce chapitre, si n ∈ IN∗ , on désignera par k · k (ou par k · kn s’il y a une
ambiguïté sur la dimension) la norme euclidienne de IRn .

II.1 Préliminaires
II.1.1 Motivations
::::::::::::::::::::::

Ce chapitre est dédié à l’optimisation quadratique, un sous-domaine de l’optimisation


non-linéaire ayant de nombreuses applications pratiques.
L’une d’elles est la célèbre méthode des moindres carrés. Afin de l’illustrer, considérons
un jeu de donnée issu de [TALM92]. Il s’agit d’une étude réalisée en 1973 sur un parasite
du pin bien connu : la chenille processionnaire. On désire connaître l’influence de certaines
variables sur la densité de peuplement du parasite. Introduisons la variable X0 définie
comme le nombre moyen de nids par arbre sur la parcelle considérée de 10 hectares. Il est
raisonnable de supposer qu’il existe cinq nombres réels a1 , a2 , a3 , a4 et a5 tels que

X0 = a1 X1 + a2 X2 + a3 X3 + a4 X4 + a5 ,


• X1 est l’altitude en mètres ;
• X2 est la pente en degrés ;
• X3 est la hauteur (en m) de l’arbre échantillonné au centre de la placette ;
• X4 est le diamètre de cet arbre.
On dispose au total des résultats concernant 32 parcelles distinctes, autrement dit d’un
jeu de données {(X̂0j ,X̂1j ,X̂2j ,X̂3j ,X̂4j )}32
j=1 . En général, les données réelles sont entachées
d’erreurs pouvant provenir par exemple d’imprecisions dues aux appareils ou méthodes de
mesures si bien qu’il n’est pas raisonnable d’espérer avoir

∀j = 1, . . . ,32, X̂0j = a1 X̂1j + a2 X̂2j + a3 X̂3j + a4 X̂4j + a5 ,

mais seulement

∀j = 1, . . . ,32, X̂0j ' a1 X̂1j + a2 X̂2j + a3 X̂3j + a4 X̂4j + a5 ,

Introduisons les 32 variables d’erreur {εj }32


j=1 définies par

∀j = 1, . . . ,32, εj = X̂0j − a1 X̂1j − a2 X̂2j − a3 X̂3j − a4 X̂4j − a5 .

Dans un cas idéal, il devrait exister un 5-uplet (a1 ,a2 ,a3 ,a4 ,a5 ) tel que εj = 0 pour tout
j = 1, . . . ,32. Pour les raisons mentionnées précedemment, cela n’a aucune raison d’être le

– 35 –
CHAPITRE II. OPTIMISATION QUADRATIQUE

cas, et une façon de procéder consiste à minimiser la norme euclidienne de (ε1 , . . . ,ε32 ) par
rapport au 5-uplet (a1 ,a2 ,a3 ,a4 ,a5 ).
Ainsi, introduisons la fonction
32
X
5
J : IR 3 (a1 ,a2 ,a3 ,a4 ,a5 ) 7→ ε2j ∈ IR
j=1

i.e. la fonction définie par


32  2
X̂0j − a1 X̂1j − a2 X̂2j − a3 X̂3j − a4 X̂4j − a5
X
J(a1 ,a2 ,a3 ,a4 ,a5 ) = .
j=1

Le méthode des moindres carrés consiste alors à résoudre le problème d’optimisation

inf J(a1 ,a2 ,a3 ,a4 ,a5 ).


(a1 ,a2 ,a3 ,a4 ,a5 )∈IR5

Cette façon de procéder est notamment très répandue dans divers domaines de l’ingénierie,
typiquement lorsque l’on cherche à estimer des paraètres de modèles à partir de données
mesurées.
Nous verrons qu’il s’agit d’un problème d’optimisation quadratique. Dans ce chapitre,
nous aborderons à la fois des questions théoriques (existence et unicité des solutions) mais
aussi pratiques (algorithmes de minimisation de fonctions quadratiques).

II.1.2 Le vocabulaire de l’optimisation


::::::::::::::::::::::::::::::::::::::::::::

Dans ce chapitre, nous nous intéressons à des problèmes s’écrivant

inf f (x) (II.1)


x∈IRn

où f : IRn −→ R est une fonction, appelée fonction coût ou critère. On dit que (II.1)
est un problème d’optimisation sans contrainte.

Remarque II.1.1

• À l’inverse, un problème d’optimisation sous contrainte est un problème de la forme

inf f (x)
x∈K

où K ( IRn .
• Remarquons que ce formalisme englobe tous les problèmes d’optimisation, y compris
les problèmes de maximisation puisque maximiser une quantité revient à minimiser son
opposé.

Nous adopterons la convention suivante : si l’on veut indiquer que la valeur du minimum
est atteinte, on écrira
min f (x)
x∈K

– 36 –
II.1. PRÉLIMINAIRES

tandis que l’on utilisera la notation “inf” quand on ne sait pas a priori si la valeur de la
borne inférieure est, ou non atteinte.

Définition II.1.2. Minimiseur local/global

On dit que
• x∗ est un minimiseur global du problème (II.1) si f (x∗ ) ≤ f (x) pour tout
x ∈ IRn ;
• x∗ est un minimiseur local du problème (II.1) s’il existe un voisinage V de
x∗ tel que f (x∗ ) ≤ f (x) pour tout x ∈ V .

Enfin, rappelons que toute partie non vide de R admet une borne inférieure 1 (éven-
tuellement infinie), caractérisée de la façon suivante.

Proposition II.1.3. Suites minimisantes

Il existe une suite (xn )n∈N ∈ (IRn )N telle que

lim f (xn ) = inf n f (x).


n→+∞ x∈IR

Toute suite vérifiant cette propriété est appelée “suite minimisante”.


Démonstration. La preuve repose sur la caractérisation de la borne inférieure d’un sous-
ensemble de IR. Notons-là m, avec la convention que m ∈ IR ∪ {−∞}.
Si m = −∞, pour tout m̂ ∈ IR, il existe x ∈ IRn tel que f (x) ≤ m̂. On construit alors
l’élément xn pour n ∈ IN en appliquant la proprieté ci-dessus à partir du choix m̂ = −n.
On a alors f (xn ) ≤ −n et le résultat s’ensuit.
Si m ∈ IR, alors pour tout ε > 0 il existe x ∈ IRn tel que m ≤ f (x) < m + ε. Si n ∈ IN,
choisissons ε = 1/(n + 1) et xn tout élément de IRn satisfaisant la propriéte précédente.
On a alors
1
|f (xn ) − m| ≤
n+1
et le résultat s’ensuit.

De façon générale, voici les questions qu’il sera naturel de se poser lorsque vous ren-
contrerez un problème d’optimisation :
• Ce problème possède t-il une solution ?
• 1er cas de figure.
Si ce problème possède une solution, on cherchera à la caractériser (par exemple,
est-elle unique ?) ou mieux, à la déterminer lorsque ce sera possible. On exploitera
pour cela les conditions nécessaires d’optimalité (aux premier et deuxième ordres).
• 2ème cas de figure.
Si ce problème ne possède pas de solution, on cherchera à exhiber une suite minimi-
sante, i.e. une suite d’éléments de l’ensemble K convergeant vers inf{f (x),x ∈ K}.
1. Rappelons que la borne inférieure d’un sous-ensemble K de IR est définie par

le plus grand minorant de K si K est minoré,
inf K =
−∞ sinon.

L’existence d’un plus grand minorant résulte du lemme de Zorn, reposant lui-même sur l’axiome du choix.

– 37 –
CHAPITRE II. OPTIMISATION QUADRATIQUE

• Enfin, on se posera la question, lorsque l’on ne sait pas déterminer explicitement les
solutions du problème d’optimisation, du choix de méthodes numériques adaptées
pour déterminer le minimum et ses minimiseurs.

Définition II.1.4. Optimisation quadratique

On appelle problème d’optimisation quadratique sans contrainte tout problème de


la forme (II.1) pour lequel la fonction coût est une fonction polynômiale de degré au
plus 2.

Voici des exemples de tels problèmes :


sup −x21 − x1 x2 − 2x1 − 5 et inf kAx − bk2 ,
2
(x1 ,x2 )∈IR x∈IRn

où A ∈ Mn (IR), b ∈ IRn .

II.2 Ensembles convexes

Définition II.2.1. Ensemble convexe

Un sous-ensemble C de IRn est dit convexe si

∀x,y ∈ C, ∀λ ∈ [0,1], λx + (1 − λ)y ∈ C.

Dans la suite, par abus de langage et lorsque cela n’amène aucune ambiguïté, on parlera
simplement d’un convexe ou d’un convexe de IRn pour désigner un sous-ensemble convexe
de IRn .
D’un point de vue géométrique, un convexe est donc un ensemble qui, lorsqu’il contient
deux points, contient nécessairement le segment les reliant.

II.2.1 Propriétés algébriques


:::::::::::::::::::::::::::::::::

Proposition II.2.2.

On a les propriétés élémentaires suivantes :


(i) Si C1 , C2 sont deux convexes de IRn et λ1 , λ2 deux réels, alors λ1 C1 + λ2 C2
est un convexe de IRn .
(ii) Si (Cj )j∈J est une famille quelconque de convexes de IRn , alors ∩j∈J Cj est
un convexe de IRn .
(iii) Si C est un convexe de IRn et f : IRn → IRm est une application affine,
i.e. f (x) = Ax + b pour certains A ∈ IRm×n et b ∈ IRm , alors f (C) est un
convexe de IRm .

– 38 –
II.2. ENSEMBLES CONVEXES

Définition II.2.3. Combinaison convexe

Soient x1 , · · · ,xk un nombre fini de points de IRn , et λ1 , · · · ,λk des réels tels que
k
X
λj ≥ 0 ∀j = 1, · · · ,k et λj = 1.
j=1

On dit que
k
X
x := λj xj
j=1

est une combinaison convexe des points x1 , · · · ,xk .


Plus généralement, si S ⊆ IRn est un sous-ensemble quelconque, on dit que x ∈ IRn
est une combinaison convexe de points de S s’il existe un nombre fini de points de S
dont x soit une combinaison convexe.

Dans le cas particulier de deux points x1 et x2 , toute combinaison convexe des x1 , x2


peut s’écrire sous la forme

x = λx1 + (1 − λ)x2 , λ ∈ [0,1],

qui intervient dans la Définition II.2.1 ci-dessus.

Proposition II.2.4.

Un sous-ensemble C de IRn est convexe si et seulement si il contient toutes les com-


binaisons convexes de points de C.
Démonstration. Elle est en tout point similaire à celle correspondante de la Proposition
III.1.8. Cfr. TD 9.

Lorsqu’un ensemble S ⊆ IRn n’est pas convexe, on peut considérer le plus petit ensemble
convexe le contenant, c’est la notion importante suivante d’enveloppe convexe.

Définition II.2.5. Enveloppe convexe

L’enveloppe convexe d’un sous-ensemble S de IRn est l’intersection de tous les sous-
ensembles convexes de IRn contenant S. L’enveloppe convexe de S est par conséquent
le plus petit sous-ensemble convexe de IRn qui contienne S, on le note conv(S).

Proposition II.2.6.

On a la définition équivalente : conv(S) est l’ensemble de toutes les combinaisons


convexes de points de S.

– 39 –
CHAPITRE II. OPTIMISATION QUADRATIQUE

Démonstration. Elle est très similaire à celle correspondante de la Proposition III.1.10. Cfr.
TD 9.

Théorème II.2.7. Carathéodory (bis)

Soit S ⊆ IRn . N’importe quel point de conv(S) peut s’écrire comme combinaison
convexe de points de S affinement indépendants (et par conséquent en nombre infé-
rieur n + 1).
Pk
Démonstration. Soit x = j=1 λj xj un point de conv(S), où sans perte de généralité
on suppose que tous les λj sont strictement positifs. Si les xj ne sont pas affinement
indépendants, il existe des coefficients µj tels que :

k
X k
X
µj xj = 0 avec µj = 1.
j=1 j=1

En particulier, au moins un des coefficients µj est strictement positif. Pour α ≥ 0 quel-


conque, on peut donc aussi écrire

k
X
x= (λj − αµj ) xj .
j=1

On choisit pour α la valeur 2


λj
α := min{ | µj > 0}.
µj
Par construction, au moins un des coefficients λj − αµj est nul, les autres restant compris
entre 0 (par définition de α) et 1 (puisque tous sont positifs et leur somme totale valant 1).
On obtient ainsi une expression de x comme combinaison convexe d’au plus k − 1 points
de S. Si ces k − 1 points ne sont pas affinement indépendants, on recommence la procédure
ci-dessus, et ainsi de suite. Au bout d’un nombre fini d’étapes (au plus k − 1 puisqu’une
famille d’un seul point est bien sûr affinement indépendante) on aboutit nécessairement à
la thèse.

Les cônes convexes jouent un rôle particulier dans l’étude des convexes non bornés :

Définition II.2.8. Cône convexe

Un sous-ensemble Ĉ de IRn est un cône convexe si

∀x1 ,x2 ∈ Ĉ, ∀λ1 ,λ2 ∈ IR+ , λ1 x1 + λ2 x2 ∈ Ĉ.

2. Cela devrait vous rappeler de critère de Dantzig !

– 40 –
II.2. ENSEMBLES CONVEXES

Définition II.2.9. Combinaison positive

Soient x1 , · · · ,xk un nombre fini de points de IRn , et λ1 , · · · ,λk des réels positifs. On
dit alors que
X k
x := λj xj
j=1

est une combinaison positive des points x1 , · · · ,xk .


Plus généralement, si S ⊆ IRn est un sous-ensemble quelconque, on dit que x ∈ IRn
est une combinaison positive de points de S s’il existe un nombre fini de points de S
dont x soit une combinaison positive.

Proposition II.2.10.

Un sous-ensemble Ĉ de IRn est un cône convexe si et seulement si il contient toutes


les combinaisons positives de points de Ĉ.

Démonstration. Elle est très similaire à celle correspondante de la Proposition III.1.8. Cfr.
TD 9.

Définition II.2.11. Enveloppe conique

L’enveloppe conique d’un sous-ensemble S de IRn est l’ensemble de toutes les com-
binaisons positives de points de S. On la note cône (S).

Proposition II.2.12.

L’enveloppe conique d’un sous-ensemble S de IRn est un cône convexe, c’est le plus
petit cône convexe contenant S.

Démonstration. Elle est très similaire à celle correspondante de la Proposition III.1.10. Cfr.
TD 9.

Théorème II.2.13. Carathéodory (ter)

Soit S ⊆ IRn . N’importe quel point de cône(S) peut s’écrire comme combinaison
positive de points de S linéairement indépendants (et par conséquent en nombre
inférieur n).

Démonstration. Elle est très similaire à celle correspondante du Théorème II.2.7 ci-dessus.
Cfr. TD 9.

– 41 –
CHAPITRE II. OPTIMISATION QUADRATIQUE

II.2.2 Propriétés topologiques


:::::::::::::::::::::::::::::::::::

Lemme II.2.14.

On a les propriétés élémentaires suivantes :


(i) Si C est un convexe de IRn , son adhérence C̄ est un convexe de IRn .
(ii) Si C est un convexe de IRn , son intérieur C̊ est un convexe de IRn .
Pour l’étude des ensembles convexes, il est commode d’adopter la notion de topologie
relative : celle-ci qui n’est autre que la topologie au sens usuel, mais considérée dans le
plus petit sous-espace affine comprenant l’ensemble en question, autrement dit dans son
enveloppe affine.

Définition II.2.15. Intérieur relatif

Soit S un sous-ensemble quelconque de IRn , l’intérieur relatif de S est l’ensemble

intr (S) := {x ∈ S | ∃ ε > 0, B(x,ε) ∩ aff(S) ⊂ S} .

Bien sûr, on a toujours S̊ ⊆ intr (S). Pour un ensemble convexe, on a de plus

Lemme II.2.16.

Si C est un convexe de IRn , son intérieur relatif intr (C) est un convexe de IRn . De
plus, si C n’est pas vide, alors intr (C) non plus.
Démonstration. Soient x1 ,x2 deux points de intr (C) et λ ∈ (0,1). Par hypothèse, il existe
ε1 > 0 tel que B(x1 ,ε1 ) ∩ aff(C) ⊂ C et ε2 > 0 tel que B(x2 ,ε2 ) ∩ aff(C) ⊂ C. Par inégalité
triangulaire, et en posant ε := min(ε1 ,ε2 ), on montre facilement que

B(λx1 + (1 − λ)x2 ,ε) = λB(x1 ,ε) + (1 − λ)B(x2 ,ε)

et par conséquent
B(λx1 + (1 − λ)x2 ,ε) ∩ aff(C) ⊂ C.
Il s’ensuit que intr (C) est convexe. Montrons maintenant qu’il est non vide, si C ne l’est
pas. Soit k := dim(C). Si k = 0 alors C est réduit à un point, de mÃa me que aff(C), et la
conclusion suit. Si k ≥ 1, soient x1 , · · · ,xk+1 k + 1 points affinement indépendants dans C
et soit
k+1
X 1
x := xk ∈ C.
k+1
j=1

On prétend que x ∈ intr (C). En effet, si ε > 0 et si y ∈ B(x,ε) ∩ aff(C) alors puisque les
vecteurs x2 − x1 , · · · ,xk+1 − x1 forment une base de lin(aff(C)), on peut décomposer
k+1
X
y−x= µj (xj − x1 )
j=2

– 42 –
II.2. ENSEMBLES CONVEXES

où pour une constante C positive (toutes les normes sont équivalents en dimension finie)
|µj | ≤ Cε pour chaque j. Dès lors,
 
k+1 k+1  
1 X X 1
y= − µj  x 1 + + µj x j .
k+1 k+1
j=2 j=2

1
− k+1 1
P
Si ε est suffisamment petit, ( k+1 j=2 µj ) ∈ (0,1) tout comme ( k+1 + µj ) et on conclut
que y ∈ C. La conclusion suit, par définition de l’intérieur relatif.

Définition II.2.17. bord relatif

Soit S un sous-ensemble quelconque de IRn , le bord relatif de S est l’ensemble

bdr (S) := S̄ \ intr (S).

Lemme II.2.18.

Soit C un convexe de IRn , x ∈ intr (C) et y ∈ C̄. Alors quel que soit λ ∈ (0,1),
λx + (1 − λ)y ∈ intr (C).
Démonstration. Par hypothèse, il existe ε > 0 tel que B(x,ε)∩aff(C) ⊂ C. Supposons dans
un premier temps que y ∈ C. Par inégalité triangulaire, pour tout λ ∈ (0,1) on obtient

B(λx + (1 − λ)y, λε) ∩ aff(C) ⊂ (λB(x,ε) + (1 − λ){y}) ∩ aff(C) ⊂ C.

Il s’ensuit que λx + (1 − λ)y ∈ intr (C). Supposons maintenant que y ∈ C̄. Soit (y` )`∈IN
une suite dans C qui converge vers y. Par la première partie, on obtient que pour chaque
`,B(λx + (1 − λ)y` , λε) ⊂ C. Mais pour ` suffisamment grand,
λε
B(λx + (1 − λ)y, ) ⊂ B(λx + (1 − λ)y` , λε)
2
et par conséquent la conclusion suit également.

Corollaire II.2.19.

Soit C un convexe de IRn , alors intr (C) = intr (C̄).


Démonstration. Si C est vide la conclusion est immédiate. Sinon, il suffit bien sûr de
montrer l’inclusion du deuxième ensemble dans le premier, soit donc x ∈ intr (C̄). Par le
Lemme II.2.16 il existe x1 ∈ intr (C). Par définition de intr (C̄), pour ε suffisamment petit
on a x2 := x + ε(x − x1 ) ∈ C̄. Comme
1 1
x= (x + ε(x − x1 )) + (1 − )x1 = λx1 + (1 − λ)x2
1+ε 1+ε
1
avec λ = 1 − 1+ε ∈ (0,1), la conclusion suit du Lemme II.2.18.

– 43 –
CHAPITRE II. OPTIMISATION QUADRATIQUE

II.2.3 Projection orthogonale


::::::::::::::::::::::::::::::::::

Théorème II.2.20. Projection orthogonale

Soit C un convexe fermé non vide de IRn et x ∈ / C. Il existe un unique élément


pC (x) ∈ C qui minimise la distance de x à C :

kx − pC (x)k = min kx − yk.


y∈C

De plus, pC (x) est caractérisé par les propriétés



pC (x) ∈ C
(II.2)
hx − pC (x), y − pC (x)i ≤ 0 ∀y ∈ C.

Démonstration. Soit (xk )k∈IN une suite minimisante pour la distance de x à C, autrement
dit xk ∈ C et
lim kxk − xk = inf kx − yk := α.
k→+∞ y∈C

On rappelle l’inégalité du parallélogramme pour tous vecteurs a,b de IRn ,

ka + bk2 + ka − bk2 = 2 kak2 + kbk2 ,




que l’on applique à a := x − xk et b := x − xj (j,k quelconques dans IN). Ceci donne

xj + xk 2
k + kxj − xk k2 = 2 kx − xj k2 + kx − xk k2 .

4kx −
2
Puisque C est convexe, et puisque xj ,xk ∈ C, on a (xj + xk )/2 ∈ C et il suit de la définition
de α que
xj + xk 2
kx − k ≥ α2 .
2
Dès lors, on déduit que

0 ≤ kxj − xk k2 ≤ 2 kx − xj k2 + kx − xk k2 − 4α2 .


Prenant alors la limite lorsque j,k tendent simultanément vers +∞, on déduit que la suite
(xk )k∈IN est de Cauchy. Par complétude de IRn , celle-ci possède une limite que nous notons
pC (x). Par fermeture de C, pC (x) ∈ C. Par construction et par continuité de la norme

kx − pC (x)k = lim kx − xk k = α,
k→+∞

ce qui prouve l’existence de pC (x). L’unicité suit de la même manière de l’identité du


parallélogramme. Venons en maintenant à la condition (II.2). Pour y quelconque dans C,
et λ ∈ [0,1] quelconque, on a (1 − λ)pC (x) + λy ∈ C. Par conséquent,

kx − ((1 − λ)pC (x) + λy)k2 ≥ kx − pC (x)k2 .

Mais
kx − ((1 − λ)pC (x) + λy)k2 = kx − pC (x) − λ(y − pC (x)))k2

– 44 –
II.2. ENSEMBLES CONVEXES

et

kx − pC (x) − λ(y − pC (x))x)k2 = kx − pC (x)k2 − 2λhx − pC (x),y − pC (x)i + λ2 ky − pC (x)k2 .

Par conséquent, pour tout λ ∈ [0,1],

−2λhx − pC (x),y − pC (x)i + λ2 ky − pC (x)k2 ≥ 0.

En faisant tendre λ vers 0 par les positifs (auquel cas on peut diviser par λ), on déduit
(II.2). De plus, si pC (x) vérifie (II.2) alors l’argument ci-dessus appliqué à λ = 1 montre que
kx−yk ≥ kx−pC (x)k quel que soit y ∈ C, et par conséquent (II.2) caractérise effectivement
pC (x).

Définition II.2.21.

L’application pC : IRn → C, x 7→ pC (x) décrite dans le théorème précédent est


appelée la projection orthogonale sur C.

Proposition II.2.22.

La projection orthogonale pC sur un convexe fermé non vide vérifie l’inégalité

kpC (x) − pC (y)k ≤ kx − yk pour tous x,y ∈ IRn .

En particulier, pC est lipschitzienne de constante de Lipschitz égale à 1.

Démonstration. On écrit

kpC (x) − pC (y)k2 = h(pC (x) − x) + (x − y) + (y − pC (y)), pC (x) − pC (y)i

et on développe

h(pC (x) − x) + (x − y) + (y − pC (y)), pC (x) − pC (y)i


=hx − y, pC (x) − pC (y)i + hpC (x) − x, pC (x) − pC (y)i + hy − pC (y), pC (x) − pC (y)i
≤hx − y, pC (x) − pC (y)
≤kx − yk kpC (x) − pC (y)k.

La conclusion suit.

II.2.4 Fonctions convexes


::::::::::::::::::::::::::::::

La convexité est un outil très important dans le cadre de l’optimisation quadratique.


Nous verrons en particulier que les minimiseurs/maximiseurs d’une fonction convexe peuvent
se caractériser de façon très précise à l’aide des conditions d’optimalité au premier ordre.

– 45 –
CHAPITRE II. OPTIMISATION QUADRATIQUE

Définition II.2.23. Fonctions convexes

Soit K ⊂ IRn , un convexe. La fonction f : K −→ R est dite convexe si, et seulement


si

∀(x1 ,x2 ) ∈ K 2 , ∀t ∈ [0,1], f (tx1 + (1 − t)x2 ) ≤ tf (x1 ) + (1 − t)f (x2 ).

On dit que f est dite strictement convexe si l’inégalité ci-dessus est stricte pour
x 6= y, t ∈]0,1[.

Remarque II.2.24 Régularité des fonctions convexes


Il est intéressant de noter que toute fonction convexe possède une régularité minimale en
dimension finie. La preuve de ces résultats dépasse un peu le cadre de ce cours et nécessite
des outils avancés sur la convexité. Nous renvoyons donc le lecteur intéressé à la littérature
mentionnée.
• Si f est une fonction convexe définie sur un ouvert convexe Ω de Rn , alors f est continue
sur Ω et lipschitzienne 3 sur tout compact de Ω. (voir par exemple [HU96] pour la preuve
dans Rn et [ZQ07] pour le cas n = 1)
• De la propriété de Lipschitz découle, en utilisant le théorème de Rademacher, que toute
fonction convexe définie sur Ω ⊂ Rn est différentiable presque partout (au sens de la
mesure de Lebesgue) sur son domaine.

À présent, nous allons montrer que l’on peut caractériser assez facilement une fonction
convexe dans le cas où celle-ci est régulière (différentiable partout ou deux fois différentiable
partout). À toute fin utile, rappelons que si f est deux fois différentiable en x0 , alors on
définit
 2 
∂ f
Hessf (x0 ) = (x0 )
∂xi ∂xj 1≤i,j≤n

et cette matrice est symétrique en vertu du théorème de Schwarz, voir (B1).


Rappelons également qu’une matrice symétrique A ∈ Sn (IR) est dite semi-définie posi-
tive si

hAx,xi ≥ 0, ∀x ∈ IRn .

3. On rappelle qu’une fonction f : K ⊂ IRn → IR est dite Lipschitzienne s’il existe M > 0 telle que

∀(x,y) ∈ K 2 , |f (x) − f (y)| ≤ M kx − yk

où k · k désigne une norme de IRn (toutes les normes étant équivalentes en dimension finie, il suffit que
cette propriété soit satisfaite pour une norme et elle le sera alors pour toute autre norme).

– 46 –
II.2. ENSEMBLES CONVEXES

Théorème II.2.25. Caractérisation des fonctions convexes dans le cas


régulier

(i) Si f : Rn −→ R est différentiable, on a les équivalences entre


(i) f est convexe sur Rn ;
(ii) f (y) ≥ f (x) + h∇f (x),y − xi, ∀(x,y) ∈ [Rn ]2 ;
(iii) h∇f (y) − ∇f (x),y − xi ≥ 0, ∀(x,y) ∈ [Rn ]2 .
(ii) On a équivalence entre convexité stricte et les inégalités (ii) et (iii) précé-
dentes rendues strictes, pour x 6= y.
(iii) Si f : Rn −→ R est deux fois différentiable, on a les équivalences entre
(i) f est convexe ;
(ii) pour tout x ∈ Rn , la matrice hessienne de f au point x notée Hess f (x)
est semi-définie positive.

Démonstration. (i) • (i) =⇒ (ii). Soit t ∈ [0,1], (x,y) ∈ [Rn ]2 . Alors, par convexité
de f , f (tx + (1 − t)y) ≤ (1 − t)f (x) + tf (y), d’où f (x + t(y − x)) ≤ t[f (y) − f (x)],
puis on divise par t et on fait tendre t vers 0.
• (ii) =⇒ (iii). On écrit (ii) avec (x,y), puis (y,x) et on somme.
• (iii) =⇒ (ii). On utilise la formule de Taylor Mac-Laurin à l’ordre 1 4 , appliquée
à la fonction t ∈ [0,1] 7→ f (x + t(y − x)). Il existe t ∈ [0,1] tel que

f (y) = f (x) + h∇f (x + t(y − x)),y − xi


= f (x) + h∇f (x),y − xi + h∇f (x + t(y − x)) − ∇f (x),y − xi,

et ce dernier terme est positif par (iii), donc on a (ii).


• (ii) =⇒ (i). On pose xt = (1 − t)x + ty = x + t(y − x) et on écrit (ii) avec x = xt ,
y = x ou y. On a :

f (x) ≥ f (xt ) + h∇f (xt ),x − xt i


f (y) ≥ f (xt ) + h∇f (xt ),y − xt i,

sachant que x − xt = −t(y − x), y − xt = (1 − t)(y − x). On multiplie alors les


deux inégalités respectivement par 1 − t et t, puis on les somme :

(1 − t)f (x) + tf (y) ≥ (1 − t + t)f (xt ) = f (xt ).

(ii) Il s’agit d’adapter avec beaucoup de précaution la démonstration précédente. Cet


exercice est laissé au lecteur. Attention cependant à être prudent lors des passages
à la limite afin de conserver des inégalités strictes.
(iii) • (i) =⇒ (ii). On applique la propriété (iii) précédente avec x et y = x + th. On
obtient h∇f (x + th) − ∇f (x),thi ≥ 0. On divise alors cette inégalité par t2 puis
on fait tendre t vers 0, ce qui fournit : hHess f (x)h,hi ≥ 0, ∀x ∈ Rn , ∀h ∈ Rn .
4. Rappelons la formule de Taylor Mac-Laurin : soit f : [α,β] −→ R une fonction N + 1 fois dérivable.
Alors, il existe γ ∈]α,β[ tel que
N
X (β − α)k (k) (β − α)N +1 (N +1)
f (β) = f (α) + f (α) + f (γ).
k! (N + 1)!
k=1

Remarquons que lorsque N = 1, la formule de Taylor Mac-Laurin coïncide avec la formule des accroisse-
ments finis.

– 47 –
CHAPITRE II. OPTIMISATION QUADRATIQUE

• (ii) =⇒ (i). On applique la formule de Taylor-Mac Laurin à l’ordre deux :

1
f (y) = f (x) + h∇f (x),y − xi + hHess f (x + t(y − x))(y − x),y − xi
2
≥ f (x) + h∇f (x),y − xi, ∀(x,y) ∈ [Rn ]2 ,

qui est une condition équivalente à la convexité d’après la première partie du


théorème.

Exemple II.2.26 Convexité d’une fonction quadratique généralisée


On considère la fonction

f : Rn −→ R
x 7−→ f (x) = 12 hAx,xi − hb,xi + c,

avec A une matrice réelle symétrique, b un vecteur de Rn et c une constante donnée. Un calcul
fournit :
1
f (x + h) − f (x) = hAx − b,hi + hAh,hi,
2
ce qui permet de se convaincre (en identifiant les termes du membre de droite avec ceux du
développement limité de f par exemple) que le gradient de f est

∇f (x) = Ax − b, ∀x ∈ Rn .

et la hessienne de f est, pour tout x ∈ Rn , Hess f (x) = A.


En particulier, on déduit immédiatement de ce calcul et du théorème II.2.25 que f est
convexe si, et seulement si A est semi-définie positive, et strictement convexe si, et seulement
si A est définie positive.

II.3 Analyse des problèmes d’optimisation quadratique


L’objectif de cette section est d’étudier de façon complète le problème d’optimisation

inf f (x), (II.3)


x∈Rn

où f désigne la fonction quadratique généralisée (en réalité f est la somme d’une fonction
quadratique et d’une fonction affine)

f : Rn −→ R
x 7−→ f (x) = 12 hAx,xi − hb,xi + c,

avec A, une matrice réelle symétrique de taille n, b est un vecteur de Rn et c est une
constante donnée.
Les sections II.3.1, II.3.2 et II.3.3 présente une caractère plus géneral que celui de la
simple étude des fonctions quadratiques. Nous appliquerons ensuite tous ces résultats dans
les sections II.3.4 et II.3.5 afin de décrire complètement les solutions du problème (II.6).

– 48 –
II.3. ANALYSE DES PROBLÈMES D’OPTIMISATION QUADRATIQUE

II.3.1 Existence de solutions


:::::::::::::::::::::::::::::::::

Dans cette partie, on suppose que f : K ⊂ Rn −→ R est continue, K désignant une


partie fermée quelconque de Rn (éventuellement IRn lui-même). On considère le problème
d’optimisation
inf f (x). (II.4)
x∈K
Remarquons que l’existence n’est pas toujours assurée, comme le montre l’exemple de
la minimisation de x 7→ ex sur R, mais nécessite en général peu d’hypothèses.

Théorème II.3.1. Existence en dimension finie

On suppose qu’il existe x0 ∈ Rn tel que l’ensemble {f ≤ f (x0 )} soit borné. Alors, le
problème (II.4) a au moins une solution globale x∗ .

Remarque II.3.2
On rappelle que {f ≤ f (x0 )} est l’écriture abrégée de {x ∈ Rn , f (x) ≤ f (x0 )}

Démonstration. Le problème (II.4) équivaut à minimiser f sur l’ensemble compact K̃ :=


{f ≤ f (x0 )}. Or, une fonction continue sur un compact atteint sa borne inférieure. Redon-
nons une démonstration de ce résultat élémentaire en utilisant les suites minimisantes, ce
qui est tout à fait dans l’esprit de ce cours. Posons m = inf{f (x),x ∈ K̃} ∈ [−∞, +∞[.
Soit (xn )n∈N , une suite minimisante pour le problème (II.4), i.e. xn ∈ K pour tout n ∈ N et
f (xn ) −−−−−→ m. D’après le théorème de Bolzano-Weierstrass 5 , quitte à extraire, il existe
n→+∞
x∗ ∈ K̃ (fermé) tel que (xn )n∈N converge vers x∗ . Par continuité de f , (f (xn ))n∈N converge
vers f (x∗ ) ce qui implique que m = f (x∗ ) > −∞, autrement dit que x∗ réalise le minimum
de f sur K̃, puis sur K.

Deux remarques très utiles en pratique. . .

Voici comment on utilise en général le théorème précédent. Rappelons cependant qu’il est
essentiel que l’on se soit placé en dimension finie pour pouvoir utiliser ce théorème. Dans
le cas contraire, il est aisé de construire des contre-exemples.
• Si K est compact, alors, on obtient immédiatement l’existence en utilisant la conti-
nuité de f .
• Si f est coercive (on dit aussi infinie à l’infini), c’est-à-dire f (x) −−−−−−→ +∞ 6
kxk→+∞
et K est fermé, alors on est dans les conditions d’utilisation du théorème précédent.

Exemple II.3.3
Considérons le problème
min f (x,y) = x4 + y 4 − x2


(x,y) ∈ K = {(x,y) ∈ R2 , x + y ≤ 4}.


5. On rappelle que le théorème de Bolzano-Weierstrass stipule que, de tout suite bornée en dimension
finie, on peut extraire une sous-suite convergente.
6. Cette condition signifie : ∀A > 0, ∃η > 0, kxk ≥ η =⇒ f (x) ≥ A ou encore “quelle que soit la suite
(xn )n∈N d’éléments de K telle que lim kxn k = +∞, on a lim f (xn ) = +∞.
n→+∞ n→+∞

– 49 –
CHAPITRE II. OPTIMISATION QUADRATIQUE

Montrons que f est “infinie à l’infini”. Pour tous (X,Y ) ∈ R2 , on sait que |XY | ≤ 12 (X 2 + Y 2 ).
En remplaçant X par x2 et Y par 1, on obtient x4 ≥ 2x2 − 1 et par conséquent,

f (x,y) ≥ x2 + y 4 − 1 ≥ x2 + 2y 2 − 2 ≥ k(x,y)k2 − 2 −−−−−−→ +∞.


kxk→+∞

f est donc “infinie à l’infini” et K est fermé (image réciproque d’un fermé par une application
continue. . . ), et on en déduit que le problème d’optimisation a (au moins) une solution.

II.3.2 Questions d’unicité


::::::::::::::::::::::::::::::

La convexité est permet en général d’obtenir facilement l’unicité des minimiseurs/maxi-


miseurs. Il est interessant de noter que le résultat qui suit n’est pas propre à la dimension
finie. Nous l’utiliserons fortement par la suite.

Théorème II.3.4.

On suppose que f et K sont convexes (K étant éventuellement de dimension infinie).


(i) tout minimum local du problème (II.4) est un minimum global.
(ii) si f est strictement convexe, alors le problème (II.4) a au plus une solution.

Démonstration. (i) Soit x∗ , un minimum local pour le problème (II.4). Par l’absurde,
supposons qu’il existe y ∈ K tel que f (y) < f (x∗ ). Soit yt = ty + (1 − t)x∗ , avec
t ∈]0,1[. Alors, f (yt ) ≥ f (x∗ ) si t est suffisamment petit (en effet, si t est petit,
kyt − x∗ k = tky − x∗ k l’est aussi. . . ). La convexité de f implique que f (x∗ ) ≤
f (yt ) ≤ tf (y) + (1 − t)f (x∗ ), ce qui montre que f (y) < f (x∗ ) ≤ f (y). C’est absurde
et il s’ensuit que x∗ minimise f sur K.
(ii) Si x1 et x2 sont deux solutions globales de (II.4), alors si x1 6= x2 ,
 
x1 + x2 1 1
f < f (x1 ) + f (x2 ) = f (x1 ),
2 2 2

ce qui est absurde. Cela implique donc l’unicité.

II.3.3 Conditions d’optimalité


:::::::::::::::::::::::::::::::::::

On s’intéresse dans cette section au problème

inf f (x) (II.5)


x∈Rn

où f : Rn −→ R. Souvenons-nous qu’en dimension 1, si un point maximise ou minimise


localement une fonction dérivable, alors, sa dérivée s’annule nécessairement en ce point.
Nous allons préciser cette propriété et la généraliser aux dimensions supérieures.

– 50 –
II.3. ANALYSE DES PROBLÈMES D’OPTIMISATION QUADRATIQUE

Théorème II.3.5. Conditions nécessaires

Soit x∗ , un minimum local pour le problème (II.5).


(i) si f est différentiable en x∗ , alors ∇f (x∗ ) = 0. On dit que x∗ est un point
stationnaire ou critique.
(ii) si f est deux fois différentiable en x∗ , alors Hess f (x∗ ) est semi-définie positive.

Remarque II.3.6
L’exemple f (x) = x4 montre que l’on n’a pas mieux que le caractère semi-défini positif de la
hessienne, même si x∗ est un minimum global. L’exemple f (x) = x3 montre que ce théorème
donne une condition nécessaire mais pas suffisante.

Démonstration. (i) On écrit f (x∗ ) ≤ f (x∗ + εh) = f (x∗ ) + h∇f (x∗ ),εhi + |εh|ϕ(εh),
avec ϕ(εh) −−−→ 0. On divise alors par ε > 0 puis on fait tendre ε vers 0+ . Enfin,
ε→0
en choisissant dans le développement précédent ±h pour tout h ∈ Rn , la conclusion
s’ensuit.
(ii) On utilise un développement de Taylor-Young à l’ordre 2 et on utilise les mêmes
notations que précédemment. On a :

1
f (x∗ + h) = f (x∗ ) + h∇f (x∗ ),hi + hHess f (x∗ )h,hi + khk2 ϕ(h)
2
∗ 1 ∗
= f (x ) + hHess f (x )h,hi + khk2 ϕ(h)
2

Comme précédemment, on remplace h par εh, h quelconque, ε petit, puis on divise


par ε2 et on fait tendre ε vers 0 pour obtenir le résultat escompté.

Théorème II.3.7. Conditions suffisantes

Soit f , deux fois différentiable en x∗ ∈ Rn , tel que ∇f (x∗ ) = 0 et de plus :


• soit Hess f (x∗ ) est définie positive,
• soit f est deux fois différentiable dans un voisinage de x∗ et Hess f (x) est
semi-définie positive dans ce voisinage.
Alors, x∗ est un minimum local pour f .

Remarque II.3.8
Le caractère “semi-défini positif” de la hessienne en x∗ ne suffit pas pour conclure, comme en
atteste l’exemple f (x) = x3 . En revanche, le caractère “défini-positif” de la hessienne n’est pas
nécessaire, comme en témoigne l’exemple f (x) = x4 .
Un point critique qui n’est pas un extremum local porte le nom de point selle.

– 51 –
CHAPITRE II. OPTIMISATION QUADRATIQUE

Démonstration. • Hess f (x∗ ) est définie positive, par conséquent, il existe α > 0 tel
que hHess f (x∗ )h,hi ≥ αkhk2 pour tout h ∈ Rn (rappelons que α peut être choisi
égal à la plus petite valeur propre de la matrice hessienne de f en x∗ ). On écrit
alors la formule de Taylor-Young à l’ordre deux en x∗ :
1
f (x∗ + h) = f (x∗ ) + hHess f (x∗ )h,hi + khk2 ϕ(h)
h2α i

≥ f (x ) + + ϕ(h) khk2 > f (x∗ ),
2
pourvu que h soit choisi assez petit, puisque ϕ(h) −−−→ 0.
h→0
• f étant supposée deux fois différentiable au voisinage de x∗ , on écrit la formule de
Taylor-Mac Laurin. Ainsi, il existe t ∈ [0,1] tel que
1
f (x∗ + h) = f (x∗ ) + hHess f (xt )h,hi ≥ f (x∗ ),
2
où xt = x∗ + th est proche de x∗ si h est petit.

On vient donc d’établir une condition nécessaire, des conditions suffisantes, mais a priori
pas de conditions à la fois nécessaires et suffisantes. Comme précédemment, il est possible
de préciser cette étude dans le cadre “convexe”.

Théorème II.3.9. Condition nécessaire et suffisante, cas convexe

Soit f convexe et différentiable sur Rn . Une C.N.S. pour que x∗ soit un minimum
local (donc global) de f est que x∗ soit un point critique de f , autrement dit, que

∇f (x∗ ) = 0.
Démonstration. La condition nécessaire résulte immédiatement du théorème II.3.5, tandis
que l’équivalence local-global résulte du théorème II.3.4. Quant à la condition suffisante,
elle résulte de l’application du théorème II.2.25. En effet, pour tout x ∈ Rn ,

f (x) ≥ f (x∗ ) + h∇f (x∗ ),x − x∗ i = f (x∗ ).

On en déduit que x∗ est bien un minimum.

II.3.4 Minimisation d’une fonction quadratique généralisée sans contrainte


:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

On considère la fonction

f : Rn −→ R
x 7−→ f (x) = 12 hAx,xi − hb,xi + c,

où A ∈ Sn (IR), b ∈ Rn et c ∈ IR. On considère le problème

inf f (x) (II.6)


x∈Rn

Nous avons montré dans l’exemple II.2.26 que le gradient de f est ∇f (x) = Ax − b et que
Hess f (x) = A, pour tout x ∈ Rn . En particulier, nous avons montré que f est convexe si,
et seulement si A est semi-définie positive.

– 52 –
II.3. ANALYSE DES PROBLÈMES D’OPTIMISATION QUADRATIQUE

D’après le théorème II.3.7, f admet un minimum (global) si, et seulement si il existe


x∗ ∈ Rn tel que Ax∗ = b ou encore si, et seulement si b ∈ Im A. Notons, puisque nous
sommes en dimension finie et que A est symétrique, que Im A = (ker A> )⊥ = (ker A)⊥ .
Étant donné que A est symétrique réelle, on peut la diagonaliser dans une base or-
thonormée réelle de vecteurs propres notée {ei }1≤i≤n . Le spectre de A rangé par ordre
croissant est :
λ1 ≤ · · · ≤ λn .

Remarque II.3.10 Coercivite de f


On peut alors écrire que A = P > DP , avec P ∈ On (R), la matrice telle que P > = P −1 =
[e1 · · · en ], où les vecteurs e1 , · · · , en , sont écrits en colonne, et D = diag (λ1 , · · · ,λn ). Posons
u = P h. Alors,
X n X n
hAh,hi = λi u2i ≥ λ1 u2i = λ1 |uk2 = λ1 khk2 .
i=1 i=1

On en déduit immediatement que f est coercive si, et seulement si A est definie positive.

On distingue alors plusieurs cas selon le signe de la plus petite valeur propre λ1 :
• si λ1 < 0 , alors f n’est pas bornée inférieurement. En effet,

λ1 2
∀z ∈ R, f (ze1 ) = z − zhb,e1 i + c −−−−→ −∞.
2 z→+∞

Le problème (II.6) n’a donc pas de solution dans ce cas.


• si λ1 = 0 et si b ∈/ (ker A)⊥ , alors l’équation ∇f (x) = 0 n’a pas de solution, ce
qui implique que le problème (II.6) n’a donc pas de solution. Plus précisément, f est
convexe, mais pas bornée inférieurement et il existe e1 ∈ ker A tel que hb,e1 i =
6 0.
On en déduit :

∀z ∈ R, f (ze1 ) = −zhb,e1 i + c −−−−−−−−−−→ −∞.


z→ sgn(hb,e1 i)∞

• si λ1 = 0 et si b ∈ (ker A)⊥ , alors l’équation ∇f (x) = 0 possède une infinité


de solutions, ce qui implique que le problème (II.6) a une infinité de solutions.
Puisque A est semi-définie positive, f est convexe et tout minimum local est un
minimum global. Plus précisément, si x0 désigne une solution particulière de l’équa-
tion ∇f (x) = 0, il est aisé de vérifier que l’ensemble des solutions est l’espace affine
x0 + ker A et
1
min f (x) = − hb,x0 i + c.
x∈Rn 2
• si λ1 > 0 , la matrice A est inversible et l’équation ∇f (x) = 0 admet une solution
unique qui est A−1 b. On notera que, puisque Hess f (x) = A pour tout x et que
A est definie positive, alors f est strictement convexe en particulier (voir Exemple
II.2.26). De plus, la valeur du minimum est

1
minn f (x) = − hb,A−1 bi + c.
x∈R 2

– 53 –
CHAPITRE II. OPTIMISATION QUADRATIQUE

Figure II.1 : Illustration : en haut à gauche, cas λ1 < 0, en haut à droite, cas λ1 = 0 et en-
dessous, cas λ1 > 0.

On a donc en particulier demontre le resultat suivant.

Proposition II.3.11.

Le problème (II.6) possède une solution si, et seulement si


• soit A est définie positive et il y a une unique solution ;
• soit A est semi-définie positive et il y a une infinite de solutions.

II.3.5 La méthode des moindres carrés


:::::::::::::::::::::::::::::::::::::::::::::

On pourra se référer par exemple à [AK08]. Soit A, une matrice réelle de taille m × n
(en pratique, m est souvent bien plus grand que n). On suppose donc que m > n. On
cherche à résoudre Ax = b “au mieux”, i.e. on cherche x∗ minimisant
f : Rn −→ R
x 7−→ f (x) = kAx − bk2 ,
la notation k·k désignant bien sûr la norme euclidienne de Rn . Pour montrer que le problème
consistant à minimiser f sur Rn possède une solution, on peut le réexprimer sous la forme :
“rechercher l’existence d’un projeté de b sur le sous espace vectoriel Im A”.
Puisqu’il s’agit d’un problème de dimension finie, on sait d’après le théorème II.2.20 qu’il
existe un unique projeté b sur le sous espace vectoriel Im A, car celui-ci est de dimension
finie donc fermé.

– 54 –
II.3. ANALYSE DES PROBLÈMES D’OPTIMISATION QUADRATIQUE

On peut réexprimer f (x) sous une forme mieux adaptée à la procédure de minimisation
que l’on souhaite mettre en œuvre. En effet,
1 1 1
∀x ∈ Rn , f (x) = kAx − bk2 = hAx,Axi − hAx,bi + kbk2
2 2 2
1 > 1
= hA Ax,xi − hA> b,xi + kbk2 .
2 2
La fonction f est bien évidemment convexe. Remarquons que la matrice A> A est de taille
n × n, symétrique et semi-définie positive (immédiat). On peut alors réutiliser l’étude faite
dans la section II.3.4. On distingue alors deux cas :

• Si A est de plein rang n , alors d’après le théorème du rang, la matrice A est


injective, ce qui garantit que A> A est également injective donc inversible. En consé-
quence, le problème des moindres carrés (ou de projection orthogonale) possède une
solution unique x∗ . On peut obtenir explicitement x∗ en résolvant le système d’équa-
tions normales issu de la fonctionnelle quadratique f (i.e. ∇f (x) = 0) :

A> Ax = A> b.

• Si rgA < n , alors la plus petite valeur propre de A> A est nulle, puisque A> A
n’est pas injective. On a vu que le problème des moindres carrés se ramène à un
problème de projection orthogonale et que ce problème possède (au moins) une
solution. D’après l’étude faite dans la section II.3.4, dans le cas où la plus petite
valeur propre de A> A est nulle, ce qui est le cas ici, le problème de minimisation
de la fonctionnelle quadratique associée a soit une infinité de solutions, soit pas de
solution. On en déduit que le problème des moindres carrés possède dans ce cas
une infinité de solutions. On peut également s’en convaincre de la façon suivante :
l’équation A> Ax = A> b possède au moins une solution si, et seulement si A> b ∈
Im A> A, i.e. A> b ∈ [ker A> A]⊥ = [ker A]⊥ (car ker A> A = ker A), ce qui est vrai
puisque ker A = [Im A> ]⊥ 7 .

Remarque II.3.12 Pseudo-inverse


Dans le cas où A> A est inversible, la matrice

A† = (A> A)−1 A>

s’appelle pseudo-inverse ou inverse généralisé de A. Le pseudo-inverse se calcule à l’aide d’une


généralisation du théorème spectral aux matrices non carrées. L’opération de pseudo-inversion
est très utile en analyse numérique. Elle est en particulier involutive et commute avec la trans-
position et la conjugaison.

Exemple II.3.13 La régression linéaire


On pourra par exemple se référer à [Ber01, Chapitre 2] pour la régression linéaire sans contrainte
et à [Ber01, Chapitre 3] pour la régression linéaire avec contraintes.
On considère un nuage de m points de R2 : Mi = (ti ,xi ), pour i ∈ {1, · · · , m}. Ces
données sont souvent le résultat de mesures et on cherche à décrire le comportement global de
7. En effet, rappelons que, puisque nous sommes en dimension finie, tout espace vectoriel est fermé et
[Im A> ]⊥⊥ = Im A> = Im A>

– 55 –
CHAPITRE II. OPTIMISATION QUADRATIQUE

ce nuage. En général, ces points ne sont pas alignés, mais si on a de bonnes raisons de penser
qu’ils devraient l’être (un modèle physique, biologiste, etc. peut guider l’intuition), on peut se
demander quelle est la droite approchant au mieux ces points.
La méthode des moindres carrés consiste alors à rechercher la droite telle que la somme des
carrés des distances des points du nuage à cette droite soit minimale.
Autrement dit, on cherche à résoudre
n

 min f (α,β) = X(x − αt − β)2 ,

i i
 i=1
(α,β) ∈ R2 .

Posons X = (α,β)> . Alors, on peut écrire que


   
t1 1 x1
f (α,β) = kAX − bk2 , avec A =  ... ...  , b =  .. 
  
. 
tm 1 xm

On a vu que ce problème possède une solution unique si A est de rang plein, i.e. 2. On en
déduit que ce problème possède une solution unique sauf si t1 = · · · = tm .
De plus,  Pm 2 Pm   Pm 
> i=1 t i i=1 ti > i=1 x i t i
A A= Pm et A b = Pm .
i=1 ti m i=1 xi

On en déduit que l’équation normale associée est



St2 α + St β = Sxt
St α + mβ = Sx

où l’on a posé St = m
P Pm Pm Pm 2
i=1 ti , Sx = i=1 xi , Sxt = i=1 xi ti et St2 = i=1 ti . Sous réserve
que l’on ne soit pas dans la situation “t1 = · · · = tm ” (ce qui se retrouve en calculant le
déterminant du système et en retrouvant un cas d’égalité de Cauchy-Schwarz), ce système a
pour solution
Sx St − mSxt Sxt St − Sx St2
α= 2
et β = .
(St ) − mSt2 (St )2 − mSt2

– 56 –
A
Non cyclicité sous le critère de Bland

Le chapitre précédent nous fournit une (en réalité deux suivant que l’on applique le
critère naturel ou celui de Bland) méthode pour passer d’une base réalisable γ à une
base réalisable δ tout en augmentant (au sens non strict) la fonction objectif. Puisqu’il
n’y a qu’un nombre fini de bases réalisables (au plus Cnm ), les itérées de cette méthode
nous conduiront assurément à une solution optimale à condition que la fonction objectif
soit majorée et que nous puissions démontrer que l’algorithme ne cycle pas, c’est-à -dire
qu’aucune des bases réalisables obtenues par les différentes itérations ne peut être égale
à la base initiale γ. Cette condition n’est pas vérifiée en général pour le critère naturel (il
existe un célèbre contre-exemple du à Beale (1955)). A l’inverse, Bland (1974) à démontré
que la cyclicité est proscrite suivant son critère :

Théorème I.0.1. (Bland)

L’itération de la méthode du Chapitre I.2.4 avec le critère de Bland garantit la non-


cyclicité des bases réalisables produites, et par conséquent atteint une solution optimale
en un nombre fini d’étapes si la fonction objectif est majorée.
Démonstration. La démonstration se fait par l’absurde et n’est pas des plus éclairantes.
On la fournit néanmoins par souci de complétude. Supposons donc que l’itération de la
méthode engendre un cycle. Cela implique bien sûr que la fonction objectif soit constante
tout au long du cycle, et donc qu’à chaque étape on ait tJ = 0, de sorte que la solution
de base x∗ est elle aussi constante tout au long du cycle. Appelons K le plus grand indice
(parmi {1, · · · ,m}) pour lequel la variable xK se retrouve à la fois en base et hors base
dans deux itérations différentes du cycle. Appelons aussi γ la base réalisable correspondant
à une étape du cycle (que nous fixons) où xK est appelée à rentrer en base, et δ la base
réalisable correspondant à une étape du cycle (que nous fixons) où xK est appelée à sortir
de la base.
Faisant référence à la remarque I.2.20 du Chapitre I.2.3, on augmente le système Ax = b
en le système Āx̄ = b̄, que l’on récrit sous les deux formes équivalentes
B̄γ−1 Āx̄ = B̄γ−1 b̄ et B̄δ−1 Āx̄ = B̄δ−1 b̄,
où Bγ et Bδ se réfèrent à la matrice B du Chapitre I.2.3 suivant que l’on choisit γ ou δ
comme base réalisable. De plus,
 −1   −1 
−1 Bγ A 0 −1 Bδ A 0
B̄γ Ā = et B̄δ Ā = .
dTγ 1 dTδ 1

On note H le sous-espace vectoriel de IRn+1 engendré par les lignes de Ā. Une première
remarque importante est que puisque Bγ et Bδ sont inversibles, H est aussi le sous-espace

– 57 –
CHAPITRE A NON CYCLICITÉ SOUS LE CRITÈRE DE BLAND

vectoriel engendré par les lignes de B̄γ−1 Ā ou par celles B̄δ−1 Ā. En particulier, on a

h := dTγ

1 ∈ H. (A1)

De plus, par définition de K et de γ, et en vertu du critère de Bland,

(dγ )k ≤ 0, ∀k < K,
(A2)
(dγ )K > 0.

Venons en maintenant à l’étape correspondant à la base δ. Puisque xK est destinée


à sortir de la base à cette étape, en particulier xK est en base à ce moment, et on peut
donc écrire K = δ(I) pour un certain I ∈ {1, · · · ,m}. Soit xE la variable destinée à rentrer
en base à l’étape correspondant à la base δ. Par définition de K on a donc E ≤ K et
d’autre part
(dδ )E > 0, et (Bδ−1 A)IE > 0. (A3)
On définit le vecteur f ∈ IRn+1 par

fδ(i) := (B̄δ−1 Ā)iE ∀i ∈ {1, · · · ,m},


fE := −1,
fn+1 := (dδ )E ,
les autres composantes de f étant nulles.

On prétend que quel que soit i ∈ {1, · · · ,m + 1}, on a


n+1
X
(B̄δ−1 Ā)il fl = 0,
l=1

autrement dit le vecteur f est orthogonal à l’espace vectoriel engendré par les lignes de
B̄δ−1 Ā, c’est-à -dire H. En effet, pour 1 ≤ i ≤ m on a, par définition de f ,
n+1
X m
X
(B̄δ−1 Ā)il fl = (Bδ−1 A)iδ(j) fδ(j) + (Bδ−1 A)iE fE = (Bδ−1 A)iδ(i) fδ(i) − (Bδ−1 A)iE = 0,
l=1 j=1

où on a utilisé le fait que (Bδ−1 A)iδ(j) = δij (symbole de Kronecker). D’autre par, pour
i = m + 1 on a
n+1
X m
X
(B̄δ−1 Ā)il fl = (dδ )δ(j) fδ(j) + (dδ )E fE + fn+1 = 0 − (dδ )E + (dδ )E = 0,
l=1 j=1

où on a ici utilisé le fait que (dδ )δ(j) ≡ 0.


Comme h ∈ H et f ∈ H⊥ , on déduit que
n+1
X
hl fl = 0.
l=1

Pour l = n + 1, on a hn+1 fn+1 = (dδ )E > 0 par (A3), et par conséquent il existe au moins
un indice L ∈ {1, · · · ,n} pour lequel hL fL < 0. En particulier, hL 6= 0 et donc xL est une
variable hors base γ. Aussi, fL 6= 0, et par conséquent ou bien xL est une variable en base
δ ou bien L = E. Dans l’un ou l’autre cas, on conclut que xL est une variable qui rentre

– 58 –
et sort de la base à différentes étapes du cycle, et par définition de K cela implique que
L ≤ K. Enfin, hK = (dγ )K > 0 par (A2) et fK = (Bδ−1 A)IE > 0 par (A3). Il s’ensuit que
L < K. Dès lors hL = (dγ )L ≤ 0 par (A2), d’où on déduit que hL < 0, et finalement que
fL > 0. Comme fE = −1 on ne peut donc avoir L = E, et d’un argument précédent on
conclut que xL est une variable en base pour δ (rappelons que xL est à l’inverse hors base
γ, et donc que x∗L = 0). Dès lors, si L = δ(J), on a alors à l’étape correspondant à la base
δ,

(Bδ−1 A)JE > 0 car fL > 0,


x∗δ(J) =0 car x∗δ(J) = x∗L ,
L < K.

Le critère de Bland nous interdit alors de faire sortir la variable xK , ce qui constitue la
contradiction cherchée.

– 59 –
CHAPITRE A NON CYCLICITÉ SOUS LE CRITÈRE DE BLAND

– 60 –
B
Rappels de calcul différentiel

II.1 Différentiabilite aux ordres 1 et 2


Rappelons la notion de différentiabilité.

Définition II.1.1. Différentiabilité

Soient E et F , deux espaces vectoriels normés réels. Soit U , un ouvert de E et


x0 ∈ U . On dit qu’une application f : U −→ F est différentiable en x0 ou admet
un développement limité au premier ordre en x0 s’il existe une application
linéaire continue dfx0 ∈ L (E,F ), telle que

f (x0 + h) − f (x0 ) = dfx0 (h) + o (khkE ).


h→0

Remarque II.1.2

• En dimension infinie, la différentiabilité d’une fonction dépend de la norme dont sont


munis les espaces E et F . Ça n’est bien sûr pas le cas en dimension finie, étant donné
que toutes les normes sont équivalentes.
• Par définition, l’application dfx0 est continue. Il n’en est pas nécessairement de même
de l’application df : U −→ L(E,F ) . Si c’est le cas, on dira que f est de classe
x0 7−→ dfx0
C au voisinage de x0 .
1

• Comment calculer de façon pratique une différentielle ?


Si l’on a au préalable démontré que f est différentiable en x0 , alors, on peut écrire pour
tout h ∈ E que
f (x0 + εh) − f (x0 )
dfx0 (h) = lim .
ε→0 ε
ε∈R

L’intérêt d’une telle écriture vient du fait que l’on s’est ainsi ramené au calcul d’une
limite d’une fonction d’une variable réelle. La limite précédente s’appelle indifféremment
dérivée directionnelle de f en x0 selon le vecteur h ou différentielle au sens de
Gâteaux de f en x0 dans la direction h. Notons que si f est différentiable, il est aisé
de montrer que f admet une dérivée directionnelle selon tout vecteur h, mais que la
réciproque n’est pas vraie.

Résumons sous la forme d’un schéma les relations d’implication entre ces différentes
propriétés.

– 61 –
CHAPITRE B RAPPELS DE CALCUL DIFFÉRENTIEL

f est C 1 en x0 =⇒ f est différentiable en x0 =⇒ f est C 0 en x0



f dérivable en x0 selon tout vecteur h

Les implications non écrites sont a priori fausses, c’est-à-dire que l’on peut trouver des
contre-exemples.

Exemple II.1.3 Quelques contre-exemples

• On peut aisément se convaincre à l’aide de la fonction


( 3
x
si x 6= −y
(x,y) ∈ R2 7→ x+y
0 sinon

qu’il est possible de trouver une fonction f dérivable selon tout vecteur en x0 = (0,0)
qui n’est cependant pas continue en ce point.
• De même, il existe des fonctions continues non différentiables ayant cependant des
dérivées dans toutes les directions. C’est par exemple le cas de l’application
x si x = y 2

2
(x,y) ∈ R 7→
0 sinon.
Cette fonction est bien continue en (0,0), dérivable dans toutes les directions en (0,0)
(de dérivées directionnelles nulles), mais pas différentiable en (0,0).

Définition II.1.4. Différentiabilité à l’ordre 2

On dit que f est deux fois différentiable en x0 si, et seulement si df (définie dans la
remarque II.1.2) est différentiable en x0 . On appelle alors différentielle d’ordre 2 en
x0 l’application d2 fx0 = d(dfx0 ) ∈ L (E,L (E,F )).

Dans ce qui suit, on note (e1 , · · · ,en ) la base canonique de Rn et on munit Rn de sa


structure euclidienne usuelle.

Définition II.1.5. Fonctions de classe C k

Soit i ∈ {1, · · · n} et k ≥ 2. On dit qu’une fonction f : U ⊂ Rn −→ R


(i) admet une dérivée partielle d’indice i en x0 si elle est dérivable en x0 selon le
vecteur ei ;
(ii) est de classe C k si toutes ses dérivées partielles jusqu’à l’ordre k existent et
sont continues sur U .

plaçons-nous dans le cas particulier d’une fonction f : U ⊂ Rn −→ R, avec U ouvert


de Rn . Soit x0 ∈ K.
• Supposons que f est différentiable en x0 . Alors, pour tout h ∈ Rn ,

f (x0 + h) − f (x0 ) = h∇f (x0 ),hi + o (khk)


h→0

– 62 –
II.2. FORMULES DE TAYLOR

∂f ∂f
où ∇f (x0 ) est le gradient de f en x0 , i.e. le vecteur ( ∂x1
(x0 ), · · · , ∂xn
(x0 )).
• Supposons que f est deux fois différentiable en x0 . Alors, pour tout h ∈ Rn ,

1
f (x0 + h) − f (x0 ) = h∇f (x0 ),hi + hHessf (x0 )h,hi + o (khk2 )
2 h→0

où Hessf (x0 ) est la matrice de taille n × n des dérivées secondes de f évaluées en


x0 , i.e.  2 
∂ f
Hessf (x0 ) = (x0 ) (B1)
∂xi ∂xj 1≤i,j≤n

On notera que, si f est deux fois différentiable, en vertu du théorème de Schwarz,


Hessf (x0 ) est symétrique (réelle).

II.2 Formules de Taylor


Pour rappel, refaisons le point sur les différentes formules de Taylor et les hypothèses
minimales de régularité qu’elles nécessitent. Nous les écrivons ici à l’ordre deux seulement,
car cela s’inscrit dans la logique de ce cours, mais ces formules s’étendent bien sûr à tous
les ordres avec des hypothèses ad hoc.

,→ Formule de Taylor avec reste intégral.


Supposons que f est de classe C 2 dans un ouvert U de Rn dans R. Si le segment
[a,a + h] est contenu dans U , alors
1
(1 − t)k
Z
1
f (x0 + h) − f (x0 ) = h∇f (x0 ),hi + hHessf (x0 + th)h,hidt
2 0 k!

,→ Formule de Taylor avec reste de Lagrange.


Supposons que f est deux fois différentiable dans un ouvert U de Rn à valeurs dans
R. Si le segment [a,a + h] est contenu dans U et supposons qu’il existe une constante
C > 0 telle que
∀t ∈ [0,1], |hHessf (x0 + th)h,hi| ≤ Ckhk2 .
Alors,
C
khk2 .
|f (x0 + h) − f (x0 ) − h∇f (x0 ),hi| ≤
2
,→ Formule de Taylor Mac-Laurin. Soit f : [α,β] −→ R une fonction N + 1 fois
dérivable. Alors, il existe γ ∈]α,β[ tel que
N
X (β − α)k (β − α)N +1 (N +1)
f (β) = f (α) + f (k) (α) + f (γ).
k! (N + 1)!
k=1

La formule de Taylor Mac-Laurin constitue une généralisation de la formule des


accroissements finis

– 63 –
CHAPITRE B RAPPELS DE CALCUL DIFFÉRENTIEL

– 64 –
C
Compléments sur la convexite : polytopes et
polyèdres

III.1 Rappels de géométrie affine

Définition III.1.1. Sous-espace affine

Un sous-ensemble non vide F de IRn est appelé un sous-espace affine si

∀x,y ∈ F, ∀λ ∈ IR, λx + (1 − λ)y ∈ F.

Proposition III.1.2.

On a les propriétés élémentaires suivantes :


(i) Si F1 , F2 sont deux sous-espaces affines de IRn et λ1 , λ2 deux réels, alors
λ1 F1 + λ2 F2 est un sous-espace affine de IRn .
(ii) Si F1 , F2 sont deux sous-espaces affines de IRn , alors F1 ∩F2 est un sous-espace
affine de IRn .
(iii) Si F est un sous-espace affine de IRn et f : IRn → IRm est une application
affine, i.e. f (x) = Ax + b pour certains A ∈ IRm×n et b ∈ IRm , alors f (F )
est un sous-espace affine de IRm .

Définition III.1.3. Espace vectoriel associé et dimension

Soit F un sous-espace affine de IRn . L’espace vectoriel associé à F est défini par

lin(F ) := {v ∈ IRn | ∀x ∈ F, x + v ∈ F } .

La dimension de F est la dimension (au sens des espaces vectoriels) de son espace
vectoriel associé.

– 65 –
CHAPITRE C COMPLÉMENTS SUR LA CONVEXITE : POLYTOPES ET
POLYÈDRES

Définition III.1.4. Indépendance affine

On dit que les points x1 , · · · ,xk de IRn sont affinement indépendants si quels que
soient les réels λ1 , · · · ,λk vérifiant
k
X
λj = 0,
j=1

si
k
X
λ j xj = 0
j=1

alors nécessairement λ1 = · · · = λk = 0.

Lemme III.1.5.

Les points x1 , · · · ,xk de IRn sont affinement indépendants si et seulement si les


vecteurs x2 − x1 , · · · ,xk − x1 sont linéairement indépendants.

Démonstration. Pour la condition nécessaire, si µ2 , · · · ,µk sont tels que


k
X
µj (xj − x1 ) = 0,
j=2

alors
k
X
λ j xj = 0
j=1

où λj := µj pour j ∈ {2, · · · ,k} et

k
X
λ1 := − µj .
j=2

En particulier, puisque kj=1 λj = 0, on déduit de l’indépendance affine des xj que λj = 0


P
pour tout j ∈ {1, · · · ,k} et donc aussi que µj = 0 pour tout j ∈ {2, · · · ,k}.
Pour la condition suffisante, si λ1 , · · · ,λk sont tels que
k
X
λ j xj = 0
j=1

Pk
alors λ1 = − j=2 λj et donc
k
X
λj (xj − x1 ) = 0.
j=2

Il suit de l’indépendance vectorielle des (xj − x1 ) que λj = 0 pour tout j ∈ {2, · · · ,l}, et
donc aussi que λ1 = − kj=2 λj = 0.
P

– 66 –
III.1. RAPPELS DE GÉOMÉTRIE AFFINE

Corollaire III.1.6.

Un sous-espace affine F est de dimension k si et seulement si le nombre maximal de


points affinement indépendants qu’il contient est égal à k + 1.
Démonstration. Si F est de dimension k, et si e1 , · · · ,ek est une base de lin(F ), alors au vu
du lemme précédent quel que soit x ∈ F les k + 1 points x,x − e1 , · · · ,x − ek sont affinement
indépendants. Inversement, si x1 , · · · ,xk+1 sont k + 1 points affinements indépendants
dans F , alors les k vecteurs x2 − x1 , · · · ,xk+1 − x1 sont linéairement indépendants et
appartiennent à lin(F ). Il s’ensuit que lin(F ) est de dimension supérieure ou égale à k. La
conclusion suit ces deux implications.

Définition III.1.7. Combinaison affine

Soient x1 , · · · ,xk un nombre fini de points de IRn , et λ1 , · · · ,λk des réels tels que
k
X
λj = 1.
j=1

On dit que
k
X
x := λj xj
j=1

est une combinaison affine des points x1 , · · · ,xk .


Plus généralement, si S ⊆ IRn est un sous-ensemble quelconque, on dit que x ∈ IRn
est une combinaison affine de points de S s’il existe un nombre fini de points de S
dont x soit une combinaison affine.

Proposition III.1.8.

Un sous-ensemble F de IRn est un sous-espace affine si et seulement si il contient


toutes les combinaisons affines de points de F.
Démonstration. La condition suffisante est immédiate, puisque la condition intervenant
dans la Définition III.1.1 ne fait intervenir autre-chose qu’une combinaison affine à deux
éléments. Pour la condition suffisante, on peut utiliser une récurrence sur le nombre d’élé-
ments intervenant dans la combinaison affine. En effet, si l’on
P suppose que toute combinai-
son affine d’au plus k éléments de F est dans F , et si x := k+1j=1 λj xj est une combinaison
Pk+1
affine de k + 1 éléments de F (s’entend donc j=1 λj = 1), alors on a (on peut supposer
que tous les λj sont non nuls sinon il s’agit d’une combinaison à au plus k éléments)
 
k+1
X λj
x = λ1 x1 + (1 − λ1 )  xj  .
1 − λ1
j=2

– 67 –
CHAPITRE C COMPLÉMENTS SUR LA CONVEXITE : POLYTOPES ET
POLYÈDRES

Or,
k+1
X λj
= 1,
1 − λ1
j=2

et dès lors par hypothèse de récurrence


k+1
X λj
y := xj ∈ F.
1 − λ1
j=2

Finalement, puisque F est affine x = λ1 x1 + (1 − λ1 )y ∈ F et la démonstration est


complète.

Pour un ensemble quelconque S ⊆ IRn , on peut considérer le plus petit sous-espace


affine le contenant, c’est la notion suivante d’enveloppe affine.

Définition III.1.9. Enveloppe affine

L’enveloppe affine d’un sous-ensemble S de IRn est l’ensemble de toutes les combi-
naisons affines de points de S. On la note aff(S).

Proposition III.1.10.

L’enveloppe affine de S ⊆ IRn est un sous-espace affine, c’est le plus petit sous-espace
affine contenant S.

Démonstration. Si un sous-espace affine contient F , alors par la Proposition III.1.8 il


contient toutes les combinaisons affines de points de F , c’est-à-dire aff(FP ). Pour conclure,
il suffit donc de montrer que aff(F ) est un sous-espace affine. Soit x := kj=1 λj xj ∈ aff(F )
P P`
(s’entend
P que x j ∈ F et λ j = 1), y := i=1 µi yi ∈ aff(F ) (s’entend que yi ∈ F et
µi = 1), et λ ∈ IR. Alors

k
X `
X
λx + (1 − λ)y = λλj xj + (1 − λ)µi yi ∈ aff(F )
j=1 i=1

puisque kj=1 λλj xj + `i=1 (1 − λ)µi = λ + (1 − λ) = 1. [Plus généralement, on montrerait


P P

de mÃa me que toute combinaison affine de combinaisons affines est une combinaison affine]

Théorème III.1.11. Carathéodory

Si S est un sous-ensemble de IRn , tout point de aff(S) peut s’écrire comme une
combinaison affine de points de S affinement indépendants.

– 68 –
III.1. RAPPELS DE GÉOMÉTRIE AFFINE

Démonstration. Soit x = kj=1 λj xj un point de aff(F ), où sans perte de généralité on


P
suppose que tous les λj sont non nuls. Si les xj ne sont pas affinement indépendants, l’un
d’entre eux (quitte à les renuméroter on peut supposer qu’il s’agit de xk ) peut s’écrire
comme combinaison affine des k − 1 autres :
k−1
X k−1
X
xk = µi xi avec µi = 1.
i=1 i=1

Dès lors,
k−1
X
x= (λj + λk µj ) xj
j=1

et k−1
P
j=1 (λj + λk µj ) = 1, de sorte que x s’écrit comme combinaison affine d’au plus k − 1
points de F. Si les points x1 , · · · ,xk−1 ne sont pas affinement indépendants, on recommence
la procédure ci-dessus, et ainsi de suite. Au bout d’un nombre fini d’étapes (au plus k −
1 puisqu’une famille d’un seul point est bien sûr affinement indépendante) on aboutit
nécessairement à la thèse.

Définition III.1.12. Dimension

La dimension d’un sous-ensemble non vide S de IRn , notée dim(S), est la dimension
de son enveloppe affine (au sens de la Définition III.1.3).

Remarque III.1.13
Il existe d’autres notions de dimension pour les ensembles (sans doute rencontrerez vous par
exemple dans vos études la notion de dimension de Hausdorff). Elles ont des significations dif-
férentes et prennent donc en général des valeurs différentes que la dimension au sens ci-dessus.

Définition III.1.14. Hyperplan affine

Un hyperplan affine de IRn est un sous-espace affine de dimension n − 1.

Proposition III.1.15.

Tout hyperplan affine de IRn est de la forme

H ≡ Ha,r := {x ∈ IRn | ha,xi = r}

où a ∈ IRn∗ et r ∈ IR.

– 69 –
CHAPITRE C COMPLÉMENTS SUR LA CONVEXITE : POLYTOPES ET
POLYÈDRES

Démonstration. Etant donné un hyperplan affine H, il suffit de choisir pour a un vecteur


de norme unité dans H ⊥ et de poser r := dist(H,{0}), où dist se réfère à la distance signée
dans la direction de a.

Un hyperplan affine de IRn détermine deux demi-espaces de IRn :


H + ≡ Ha,r
+
:= {x ∈ IRn | ha,xi ≥ r}
et
H − ≡ Ha,r

:= {x ∈ IRn | ha,xi ≤ r} .
On a
H = H + ∩ H −.

III.2 Séparation et Hyperplan d’appui


On rappelle (cfr. Section III.1) qu’un hyperplan affine H ⊂ IRn détermine deux demi-
espaces fermés que nous avons notés H + et H − .

Définition III.2.1. Hyperplan d’appui

Soit S un sous-ensemble de IRn et x ∈ S. On dit qu’un hyperplan affine H de IRn est


un hyperplan d’appui pour S en x si x ∈ H et si S est entièrement contenu dans un
des deux demi-espaces déterminés par H.

Par extension, on dira qu’un hyperplan affine H de IRn est un hyperplan d’appui pour
S si il existe x ∈ S tel que H soit un hyperplan d’appui pour S en x. Le demi-espace
déterminé par H et contenant S est appelé un demi-espace de support de S.

Proposition III.2.2.

Soit C un convexe fermé de IRn et x ∈ IRn \ C. Alors l’hyperplan défini par

H := {y ∈ IRn | hx − pC (x), yi = hx − pC (x), pC (x)i} ,

où pC désigne la projection orthogonale sur C est un hyperplan d’appui pour C en


pC (x). Le demi-espace

H − := {y ∈ IRn | hx − pC (x), yi ≤ hx − pC (x), pC (x)i} ,

est un demi-espace de support pour C, de plus il ne contient pas x.


Démonstration. Il est immédiat que pC (x) ∈ H. Pour montrer que H est un hyperplan
d’appui pour C en pC (x) il suffit donc de montrer que C est entièrement contenu dans H − .
Mais pour y ∈ C, on a en vertu de Théorème II.2.20
hx − pC (x),y − pC (x)i ≤ 0,
et par conséquent
hx − pC (x), yi ≤ hx − pC (x), pC (x)i,
ce qui montre que y ∈ H − .

– 70 –
III.2. SÉPARATION ET HYPERPLAN D’APPUI

Définition III.2.3. Hyperplan d’appui propre

Soit S un sous-ensemble de IRn et x ∈ S. On dit qu’un hyperplan affine H de IRn est


un hyperplan d’appui propre pour S en x si x ∈ H et si S est entièrement contenu
dans un des deux demi-espaces déterminés par H, sans être toutefois entièrement
contenu dans H.

Proposition III.2.4. Existence d’un hyperplan d’appui propre

Soit C un convexe fermé de IRn et x ∈ bdr (C). Alors il existe un hyperplan d’appui
propre pour C en x.

Démonstration. Puisque x ∈ bdr (C), il existe une suite (xk )k∈IN dans aff(C) \ C qui
converge vers x lorsque k → +∞. Par la Proposition III.2.2, pour chaque k l’hyperplan

Hk := {y ∈ IRn | hxk − pC (xk ), yi = hxk − pC (xk ), pC (xk )i} ,

est un hyperplan d’appui pour C en pC (xk ). Remarquons que puisque xk ∈ / C, xk 6= pC (xk )


et par conséquent on peut récrire Hk comme
 
n xk − pC (xk ) xk − pC (xk )
Hk := y ∈ IR | h , yi = h , pC (xk )i .
kxk − pC (xk )k kxk − pC (xk )k

Quitte à passer à une sous-suite si nécessaire, on peut supposer que

xk − pC (xk )
→ a ∈ S n−1 lorsque k → +∞.
kxk − pC (xk )k

Par ailleurs, par continuité de pC (pC est même lipschitzienne),

pC (xk ) → pC (x) = x lorsque k → +∞.

On prétend que
H := {y ∈ IRn | ha,yi = ha,xi}
est un hyperplan d’appui propre pour C en x. Premièrement, il est clair que x ∈ H. Ensuite,
pour tout y ∈ C on a

xk − pC (xk ) xk − pC (xk )
ha, yi = lim h , yi ≤ lim h , pC (xk )i = ha, xi,
k→+∞ kxk − pC (xk )k k→+∞ kxk − pC (xk )k

où on a utilisé le fait que Hk est un hyperplan d’appui pour C en pC (xk ). Il s’ensuit que
C ⊂ H − et donc que H est un hyperplan d’appui pour C en x. Finalement, H est un
hyperplan d’appui propre. En effet, par construction H ⊥ a ∈ aff(C) et par conséquent si
on avait C ⊂ H alors H ∩ aff(C) serait une sous-espace affine contenant C et strictement
inclus dans aff(C), ce qui serait incompatible avec le fait que aff(C) soit le plus petit
sous-espace affine contenant C.

– 71 –
CHAPITRE C COMPLÉMENTS SUR LA CONVEXITE : POLYTOPES ET
POLYÈDRES

Définition III.2.5. Séparation et séparation stricte

Soient S et T deux sous-ensembles de IRn .


• On dit que l’hyperplan affine H sépare S et T au sens large si S ⊆ H − et
T ⊆ H + , ou inversement.
• On dit que l’hyperplan affine H ≡ Ha,r sépare S et T au sens strict s’il existe
− +
ε > 0 tel que S ⊆ Ha,r−ε et T ⊆ Ha,r+ε , ou inversement.

Théorème III.2.6. Séparation stricte d’un convexe et d’un point

Soit C un convexe fermé non vide de IRn et x ∈


/ C. Il existe un hyperplan affine qui
sépare C et x au sens strict, autrement dit

∃a ∈ IRn∗ , ∃r ∈ IR, ha,xi > r > supha, yi.


y∈C

Démonstration. Il suffit de choisir a := x − pC (x) et r := ha, x+p2C (x) i, de sorte que l’hy-
perplan affine en question passe par le point milieu du segment joignant x et pC (x) et
est orthogonal à ce segment. Les détails sont très similaires à ceux de la preuve de la
Proposition III.2.2.

Proposition III.2.7. Séparation au sens large de deux convexes

Soit C1 et C2 deux convexes disjoints de IRn . Alors il existe un hyperplan affine H


qui sépare C1 et C2 au sens large.
Démonstration. Par hypothèse, 0 ∈ / C := C1 − C2 . Comme C est convexe comme différence
(au sens vectoriel et non ensembliste !) de deux convexes, on déduit du Corollaire II.2.19 que
0∈ / intr (C̄). Si 0 ∈
/ C̄, alors par la Théorème III.2.6 il existe un hyperplan affine qui sépare
C̄ et 0 au sens strict (en particulier au sens large). Si inversement 0 ∈ C̄, alors comme
par ailleurs 0 ∈ / intr (C̄) on a nécessairement 0 ∈ bdr (C̄), et il s’ensuit de la Proposition
III.2.4 qu’il existe un hyperplan d’appui (propre) H pour C̄ en 0. Dans un cas comme dans
l’autre, il existe donc a ∈ IRn \ {0} tel que
ha, x1 i ≤ ha, x2 i
quels que soient x1 ∈ C1 et x2 ∈ C2 . Dès lors, l’hyperplan Ha,r où r := supx1 ∈C1 ha, x1 i <
+∞ sépare C1 et C2 au sens large.

III.3 Représentation extérieure et intérieure


III.3.1 Représentation extérieure
::::::::::::::::::::::::::::::::::::::

Comme corollaire de la Proposition III.2.2 nous obtenons :

– 72 –
III.3. REPRÉSENTATION EXTÉRIEURE ET INTÉRIEURE

Théorème III.3.1.

Tout sous ensemble convexe fermé non vide de IRn est égal à l’intersection de ses
demi-espaces de support.

Démonstration. Puisque tout demi-espace de support de C contient C, il suit que C est


inclus dans l’intersection de ses demi-espaces de support. D’autre part, si x ∈
/ C, par la
Proposition III.2.2 le demi-espace défini par

{y ∈ IRn | hx − pC (x), yi ≤ hx − pC (x), pC (x)i,

où pC désigne la projection orthogonale sur C, est un demi-espace de support de C qui ne


contient pas x. D’où l’inclusion inverse.

III.3.2 Faces, Points extrémaux, Cône de récession


::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

Définition III.3.2. Face

Soit C un sous-ensemble convexe fermé de IRn et F ⊆ C convexe fermé lui aussi.


On dit que F est une face de C si quels que soient x1 , x2 ∈ C et λ ∈ (0,1), si
λx1 + (1 − λ)x2 ∈ F alors nécessairement x1 ∈ F et x2 ∈ F.

Définition III.3.3. Point extrémal

Un point extrémal d’un convexe C de IRn est une face réduite à un point. Autrement
dit, x ∈ C est un point extrémal si et seulement si quels que soient x1 , x2 ∈ C et
λ ∈ (0,1), si λx1 + (1 − λ)x2 = x alors nécessairement x1 = x2 = 0.

Définition III.3.4. Demi-droite et direction extrémale

Une demi-droite
F = {x0 + λz0 | λ ≥ 0},
où x0 , z0 ∈ IRn sont fixés est appelée une demi-droite extrémale du convexe C ⊆ IRn
si F est une face de C. On dit alors que z0 est une direction extrémale de C.

Définition III.3.5. Cône de récession

Soit C un sous-ensemble convexe fermé de IRn . Le cône de récession de C est l’en-


semble
rec(C) := {z ∈ IRn | ∀x ∈ C, ∀λ ≥ 0, x + λz ∈ C} .

– 73 –
CHAPITRE C COMPLÉMENTS SUR LA CONVEXITE : POLYTOPES ET
POLYÈDRES

Lemme III.3.6.

Soit C un sous-ensemble convexe fermé de IRn , alors rec(C) est un cône convexe
fermé de IRn et on a l’égalité

rec(C) := {z ∈ IRn | ∃x ∈ C, ∀λ ≥ 0, x + λz ∈ C} .

De plus, C est borné si et seulement si rec(C) est réduit à zéro.


Démonstration. Par définition on a
\ C − {x}
rec(C) = .
λ
x∈C,λ>0

Comme une intersection quelconque de fermés est fermée, et qu’une intersection quelconque
de convexes est convexe, rec(C) est un convexe fermé. Supposons ensuite que x0 ∈ C et
z0 ∈ IRn soient tels que
∀λ ≥ 0, x0 + λz0 ∈ C.
Soit x ∈ C et λ ≥ 0 quelconques. Pour tout ε > 0 on a
λ
x + λz = x + λz + ε(x0 − x) − ε(x0 − x) = ε(x0 + z) + (1 − ε)x − ε(x0 − x).
ε
Comme x0 + λε z ∈ C et x ∈ C on a
λ
x + λz + ε(x0 − x) − ε(x0 − x) = ε(x0 + z) + (1 − ε)x ∈ C.
ε
Comme C est fermé par hypothèse, et que ε(x0 − x) tend vers 0 lorsque ε tend vers 0, on
déduit que x + λz ∈ C. D’où l’égalité annoncée dans l’énoncé. Il reste à démontrer que C
est borné si son cône de récession est réduit à 0 (l’implication inverse étant immédiate). Si
C n’était pas borné, il existerait dans C un suite de segments {λy0 + (1 − λ)yn | λ ∈ [0,1]}
avec kyn − y0 k → +∞ quand n → +∞. Par compacité de la sphère unité de IRn , on peut
supposer, modulo un passage à une sous-suite, que
yn − y0
→ z1 lorsque n → +∞,
kyn − y0 k
pour un certain z1 ∈ IRn \ {0}. Par fermeture de C, on déduit alors que
{y0 + λz1 | λ ≥ 0} ⊆ C
et par conséquent que z1 ∈ rec(C) \ {0}.

Définition III.3.7. Espace linéaire d’un convexe

Soit C un sous-ensemble convexe fermé de IRn , l’espace linéaire de C est l’ensemble

lin(C) := rec(C) ∩ (−rec(C)) = {z ∈ IRn | ∀x ∈ C, ∀λ ∈ IR, x + λz ∈ C} .

C’est un sous-espace vectoriel de IRn .

– 74 –
III.3. REPRÉSENTATION EXTÉRIEURE ET INTÉRIEURE

Définition III.3.8.

On dit qu’un convexe fermé de IRn ne contient aucune droite si son espace linéaire
est réduit à zéro.

Proposition III.3.9.

Soit C un sous-ensemble convexe fermé de IRn , alors


 

C = lin(C) + C ∩ (lin(C)) .

De plus, C ∩ (lin(C))⊥ est un convexe fermé ne contenant aucune droite.

Démonstration. Soit p la projection orthogonale de IRn sur lin(C). Alors tout x ∈ C se


décompose comme
x = p(x) + (x − p(x))
et il suit de la caractérisation (II.2) de p(x), et du caractère linéaire (et pas seulement
convexe) de lin(C), que x − p(x) ∈ C ∩ (lin(C))⊥ .

III.3.3 Représentation intérieure


:::::::::::::::::::::::::::::::::::::

Théorème III.3.10. Minkowski

Tout convexe fermé et borné de IRn est égal à l’enveloppe convexe de ses points
extrémaux.

Nous déduisons le Théorème de Minkowski du théorème plus général suivant :

Théorème III.3.11.

Tout convexe fermé de IRn ne contenant aucune droite est égal à l’enveloppe convexe
de ses points extrémaux et de ses demi-droites extrémales.

Démonstration. La démonstration se fait par récurrence sur la dimension du convexe en


question. Remarquons d’abord qu’un convexe de dimension zéro est réduit à un point, ce
point est nécessairement extrémal et le convexe est donc égal à l’enveloppe convexe de
lui-même ! Ensuite, un convexe fermé de dimension un est soit a) un segment, auquel cas
il est égal à l’enveloppe convexe de ses deux extrémités (qui sont des points extrémaux) ;
b) une demi-droite fermée, auquel cas il est égal à l’enveloppe convexe de ses demi-droites
extrémales (il n’en a qu’une, égale à lui-même) ; c) une droite, mais ce dernier cas est
exclu par hypothèse. Supposons maintenant avoir montré la thèse pour tout sous-ensemble
convexe fermé de IRn de dimension au plus k, k ≥ 1, et considérons un sous-ensemble
convexe fermé C de IRn de dimension k + 1. Soit x ∈ C. On distingue deux cas.

– 75 –
CHAPITRE C COMPLÉMENTS SUR LA CONVEXITE : POLYTOPES ET
POLYÈDRES

i) Cas où x ∈ bdr (C). Dans ce cas, par la Proposition III.2.4, il existe un hyperplan
d’appui propre H pour C en x. L’intersection C ∩ H est un convexe fermé de dimension
au plus k de IRn . Par notre hypothèse de récurrence, x est donc contenu dans l’enveloppe
convexe des points extrémaux et des demi-droites extrémales de C ∩ H. Mais comme H est
un hyperplan d’appui, les points extrémaux et les demi-droites extrémales de C ∩ H sont
aussi des points extrémaux et des demi-droites extrémales de C (vérifier !). La conclusion
suit dans ce cas.
ii) Cas où x ∈ intr (C). Par hypothèse sur k, E := lin(aff(C)) est un espace vectoriel
de dimension supérieure ou égale à deux. Par hypothèse sur C, lin(C) = {0}, et donc
rec(C) ∩ (−rec(C)) = {0}. Par conséquent,

(rec(C) ∩ {e ∈ E | kek = 1}) ∩ (−rec(C) ∩ {e ∈ E | kek = 1}) = ∅.

Comme d’autre part les deux ensembles ci-dessus sont fermés, et que la sphère unité de E
est connexe (E est de dimension supérieure à deux), on déduit que

rec(C) ∪ (−rec(C)) 6= E.

Soit z ∈ E \ (rec(C) ∪ (−rec(C))). Par construction, l’ensemble

C̃ := C ∩ {x + λz | λ ∈ IR}

est un convexe borné de dimension 1 (x ∈ intr (C)). Dès lors c’est un segment. On peut ainsi
écrire x comme combinaison convexe des extrémités (appelons les x1 et x2 ) de ce segment.
Puisque x1 , x2 ∈ bdr (C), par le Cas i) x1 et x2 sont contenues dans l’enveloppe convexe
des points extrémaux et des demi-droites extrémales de C. Comme ce dernier ensemble est
un convexe, il contient donc x lui aussi.

III.4 Polyèdres et polytopes


III.4.1 Polytopes et cônes finiment engendrés
:::::::::::::::::::::::::::::::::::::::::::::::::::::

Définition III.4.1. Polytope

Un polytope dans IRn est l’enveloppe convexe d’un nombre fini de points de IRn .

Définition III.4.2. Simplexe

Un simplexe dans IRn est l’enveloppe convexe d’un nombre fini de points de IRn
affinement indépendants.

Proposition III.4.3.

Tout polytope de IRn peut s’écrire comme une union finie de simplexes de IRn .

– 76 –
III.4. POLYÈDRES ET POLYTOPES

Démonstration. C’est une conséquence directe du Théorème de Carathéodory version bis


(Théorème II.2.7).

Proposition III.4.4.

Tout polytope de IRn est fermé et borné.

Démonstration. Si P = conv({x1 , · · · ,xk }), alors P est l’image par l’application linéaire
(de IRk dans IRn )
X j
(λ1 , · · · ,λk ) 7−→ λ j xj
j=1

du simplexe standard de IRk

k
X
Sk := {(λ1 , · · · ,λk ) ∈ IRk | λj = 1, λj ≥ 0 ∀j ∈ {1, · · · ,k}}.
j=1

Comme Sk est un fermé borné de IRk et que l’image d’un fermé borné par une application
continue est un fermé borné, la conclusion suit.

Définition III.4.5. Cône finiment engendré

Un cône finiment engendré dans IRn est l’enveloppe conique d’un nombre fini de points
de IRn .

Définition III.4.6. Cône simplicial

Un cône simplicial dans IRn est l’enveloppe conique d’un nombre fini de points de IRn
linéairement indépendants.

Proposition III.4.7.

Tout cône finiment engendré de IRn peut s’écrire comme une union finie de cônes
simpliciaux de IRn

Démonstration. Il s’agit cette fois d’une conséquence directe du Théorème de Carathéodory


version ter (Théorème II.2.13).

– 77 –
CHAPITRE C COMPLÉMENTS SUR LA CONVEXITE : POLYTOPES ET
POLYÈDRES

Corollaire III.4.8.

Tout cône finiment engendré de IRn est fermé.


Démonstration. Contrairement à la démonstration de la Proposition III.4.4, on ne peut se
baser ici sur la compacité. Toutefois, en vertu de la Proposition III.4.7, il suffit de montrer
que tout cône simplicial est fermé (car une union finie de fermés est fermée). Soit donc
cône({x1 , · · · ,xk }) un cône simplicial dans IRn , avec x1 , · · · ,xk linéairement indépendants.
L’application linéaire (de IRk dans IRn )
j
X
(λ1 , · · · ,λk ) 7−→ λ j xj
j=1

est par conséquent injective. Son inverse (bien définie sur son image) est linéaire et donc
continue ; il suffit dès lors de remarquer que cône({x1 , · · · ,xk }) est l’image réciproque,
par cette application inverse, du fermé {(λ1 , · · · ,λk ) ∈ IRk | λj ≥ 0 ∀j ∈ {1, · · · ,k}} de
IRk . Comme l’image réciproque d’un fermé par une application continue est un fermé, la
conclusion suit.

III.4.2 Lemme de Farkas


:::::::::::::::::::::::::::::

Théorème III.4.9. Lemme de Farkas

Soient a1 , · · · ,ak des points de IRn et b ∈ IRn . Alors

∩kj=1 {x ∈ IRn | haj , xi ≤ 0} ⊆ {x ∈ IRn | hb, xi ≤ 0}

si et seulement si
b ∈ cône({a1 , · · · ,ak }).
Démonstration. Commençons par la condition suffisante, la plus aisée. Si
k
X
b= βj aj ∈ cône({a1 , · · · ,ak }),
j=1

avec les βj tous positifs, et si

x0 ∈ ∩kj=1 {x ∈ IRn | haj , xi ≤ 0} ,

alors
k
X
hb,x0 i = βj haj , x0 i ≤ 0,
j=1

de sorte que x0 ∈ {x ∈ IRn | hb, xi ≤ 0} .


Passons à la condition nécessaire, où plutôt à sa contraposée.
Supposons que b ∈ / Ĉ := cône({a1 , · · · ,ak }). Comme Ĉ est un convexe fermé (Corollaire
III.4.8), par le théorème de séparation stricte (Théorème III.2.6) il existe a ∈ IRn et r ∈ R
tels que
supha, yi < r < ha, bi.
y∈Ĉ

– 78 –
III.4. POLYÈDRES ET POLYTOPES

Comme Ĉ est un cône, pour tout λ > 0

r > supha, yi = sup ha, λyi = λ supha, yi.


y∈Ĉ λy∈Ĉ y∈Ĉ

Il s’ensuit que supy∈Ĉ ha, yi = 0. Par conséquent, comme chaque aj ∈ Ĉ,

a ∈ ∩kj=1 {x ∈ IRn | haj , xi ≤ 0} .

Mais hb, ai > r ≥ 0, de sorte que

/ {x ∈ IRn | hb, xi ≤ 0} .
a∈

Ceci termine la démonstration.

III.4.3 Polyèdres
::::::::::::::::::::

Définition III.4.10. Polyèdre

Un polyèdre dans IRn est un ensemble de la forme

P := {x ∈ IRn | Ax ≤ b} ,

où A ∈ IRm×n (IR) et b ∈ IRm sont fixés.

Soit P := {x ∈ IRn | Ax ≤ b} un polyèdre de IRn . Pour j ∈ {1, · · · ,m}, notons Aj la


j-ième ligne de A (considérée comme un élément de IRn ) et bj la j-ième composante de b.
On peut dès lors décrire de manière équivalente

P := x ∈ IRn | hAj , xi ≤ bj , ∀j ∈ {1, · · · ,m} .




Autrement dit, un sous-ensemble de IRn est un polyèdre si et seulement si c’est une inter-
section finie de demi-espaces fermés de IRn . En particulier, tout polyèdre dans IRn est un
convexe fermé.

Proposition III.4.11.

Soit P un polyèdre dans IRn (décrit par A et b) et F ⊆ P un sous-ensemble de


dimension k. Les deux affirmations suivantes sont équivalentes :
(i) F est une face de P .
(ii) Il existe n − k lignes linéairement indépendantes de A, notées {Aj }j∈J avec
]J = n − k, telles que

F = x ∈ P | hAj ,xi = bj ∀ j ∈ J .


Démonstration. Commençons par la condition suffisante, la plus simple. Montrons à cet


effet que quel que soit le sous-ensemble J de {1, · · · ,m}, l’ensemble

G := x ∈ P | hAj ,xi = bj ∀ j ∈ J


– 79 –
CHAPITRE C COMPLÉMENTS SUR LA CONVEXITE : POLYTOPES ET
POLYÈDRES

est une face de P . De fait, si x1 et x2 sont des éléments de P et λ ∈ (0,1) sont tels
que λx1 + (1 − λ)x2 ∈ G, alors pour i ∈ G on a à la fois hAi , x1 i ≤ bi (car x1 ∈ P ),
hAi , x2 i ≤ bi (car x2 ∈ P ) et λhAi , x1 i + (1 − λ)hAi ,x2 i = bi (car x ∈ G). Ceci implique
que hAi , x1 i = hAi , x2 i = bi , et par conséquent que x1 ∈ G et x2 ∈ G, d’où la conclusion.
Venons en à la condition nécessaire. Soit F une face de P de dimension k. Soit x0 ∈
intr (F ) fixé (nous avons que celui-ci est non-vide puisque F l’est). On désigne par I l’en-
semble des indices i de lignes de A pour lesquelles hAi , x0 i = bi . Soit V := Vect({Ai }i∈I ).
Pour v ∈ V ⊥ quelconque et pour tout i ∈ I, on a

hAi , x0 + vi = hAi ,xi = bi .

/ I on a hAi ,x0 i < bi et par conséquent, par continuité,


D’autre part, pour tout i ∈

∃δ > 0 | hAi ,x0 + vi < bi , / I, ∀v ∈ V ⊥ t.q. kvk ≤ δ.


∀i ∈

Il s’ensuit que
x0 + v ∈ P ∀v ∈ V ⊥ t.q. kvk ≤ δ. (C1)
D’autre part, puisque x0 = (x0 + v)/2 + (x0 − v)/2 et que F est une face, il s’ensuit aussi
que
x0 + v ∈ F ∀v ∈ V ⊥ t.q. kvk ≤ δ. (C2)
Dès lors, comme F est de dimension k, dim(V ⊥ ) ≤ k, et aussi dim(V ) ≥ n − k. Supposons
par l’absurde que dim(V ) > n − k. Si E := lin(aff(F )) désigne l’espace vectoriel associé à
l’enveloppe affine de F, alors dim(E) = k et par conséquent V ∩ E 6= {0}. Soit 0 6= w =
i
P
i∈I αi A ∈ V ∩ E. Comme x0 ∈ intr (F ) par hypothèse, on a x0 + εw ∈ F ⊂ P pour tout
ε ∈ IR suffisamment petit en valeur absolue, et en particulier, pour de tels ε
X X
bj ≥ hAj , x0 + ε αi Ai i = bj + hAj , ε α i Ai i
i∈I i∈I

pour tout j ∈ I, et donc, en variant le signe de ε,


X
0 = hAj , ε α i Ai i
i∈I

pour tout j ∈ I. Par sommation, on obtient alors


X X
0= αj hAj , αi Ai i = kwk2 ,
j∈I i∈I

ce qui est absurde. D’où dim(V ) = n − k et E = V ⊥ . Montrons maintenant que

F = G := x ∈ P | hAi ,xi = bi

∀i ∈ I .

Soit x ∈ F ∪ G avec x 6= x0 . On peut écrire


 
δ
x0 = λ x0 + (x0 − x) + (1 − λ)x
kx0 − xk

où  −1
δ
λ := 1 + ∈ (0,1).
kx − x0 k

– 80 –
III.4. POLYÈDRES ET POLYTOPES

Comme x − x0 ∈ E = V ⊥ , on a x0 + kx0δ−xk (x0 − x) ∈ P par (C1). Mais comme F (par


hypothèse) et G (par la première partie) sont des faces de P , on déduit que x ∈ F ∩ G, et
donc que F = G.
Pour terminer, on remarque que puisque dim(V ) = n − k (et ∅ = 6 F 3 x0 ),

x ∈ P | hAi ,xi = bi ∀ i ∈ I = x ∈ P | hAj ,xi = bj ∀ j ∈ J ,


 

où J désigne n’importe quel sous-ensemble de I correspondant à n − k lignes linéairement


indépendantes de A.

Corollaire III.4.12.

Un polyèdre de IRn possède au plus un nombre fini de faces. En particulier, il contient


un nombre fini de points extrémaux et de demi-droites extrémales.

Démonstration. Il suit de la proposition III.4.11 que pour P = {x ∈ IRn | Ax ≤ b} , où


A ∈ IRm×n (IR) et b ∈ IRm , le nombre de faces de dimension k de P est majoré par le
nombre de combinaisons de n − k lignes parmi m, soit m!/((n − k)!(m − n + k)!).

Définition III.4.13. Cône polyédrique

Un cône polyédrique dans IRn est un ensemble de la forme

Ĉ := {x ∈ IRn | Ax ≤ 0} ,

où A ∈ IRm×n (IR).

La démonstration de la proposition suivante est immédiate.

Proposition III.4.14.

Un cône polyédrique est un cône convexe fermé.

III.4.4 Correspondances polyèdres/polytopes


:::::::::::::::::::::::::::::::::::::::::::::::::::

Les polytopes et les cônes finiment engendrés correspondent à une description intérieure
de certains convexes (en tant que combinaisons convexes ou de combinaisons positives d’un
nombre fini de points). A l’inverse, les polyèdres et les cônes polyédriques correspondent
à une description extérieure (en tant qu’intersection d’un nombre fini de demi-espaces).
Dans cette section, on montre que ces différentes notions coïncident cependant.

Théorème III.4.15.

Tout polyèdre borné est un polytope.

– 81 –
CHAPITRE C COMPLÉMENTS SUR LA CONVEXITE : POLYTOPES ET
POLYÈDRES

Démonstration. C’est une conséquence directe du Théorème de Minkowski (Théorème


III.3.10) et du Corollaire III.4.12.

Plus généralement, on a

Théorème III.4.16.

Soit P ⊆ IRn un polyèdre. Il existe des ensembles de cardinal fini E et D dans IRn
tels que
P = conv(E) + cône(D).
Si de plus P ne contient aucune droite, alors on peut choisir pour E l’ensemble des
points extrémaux de P et pour D l’ensemble des directions extrémales de P.

Démonstration. On comment par écrire, au moyen de la Proposition III.3.9,


 
P = lin(P ) + P ∩ (lin(P ))⊥

où P ∩ (lin(P ))⊥ ne contient aucune droite. Soit (e1 , · · · ,e` ) une base de lin(P ). Alors si

P = x ∈ IRn | hAj , xi ≤ bj , ∀j ∈ {1, · · · ,m} .




on a
 hAj , xi ≤ bj ,
 
∀j ∈ {1, · · · ,m} 
⊥ n

P ∩ (lin(P )) = x ∈ IR | hej , xi ≤ 0, ∀j ∈ {1, · · · ,`}
h−ej , xi ≤ 0, ∀j ∈ {1, · · · ,`}
 

et ce dernier est donc un polyèdre dans IRn ne contenant aucune droite. Soient {x1 , · · · ,xk }
les points extrémaux de P ∩ (lin(P ))⊥ et {z1 , · · · ,zp } ses directions extrémales. Alors par
le Théorème III.3.11 on a

P ∩ (lin(P ))⊥ = conv({x1 , · · · ,xk }) + cône({z1 , · · · ,zp }),

et finalement, puisque

lin(P ) = Vect({e1 , · · · ,e` )} = cône({e1 , · · · ,e` , − e1 , · · · , − e` }),

on obtient

P = conv({x1 , · · · ,xk }) + cône({z1 , · · · ,zp ,e1 , · · · ,e` , − e1 , · · · , − e` }).

Ceci termine la démonstration.

Enfin, dans le cas particulier où P est un cône polyédrique, on déduit le

Corollaire III.4.17.

Tout cône polyédrique est un cône finiment engendré.

– 82 –
III.4. POLYÈDRES ET POLYTOPES

Démonstration. Il suffit de reprendre la démonstration du théorème précédent et de remar-


quer que P ∩(lin(P ))⊥ est un cône polyédrique ne contenant aucune droite. Par conséquent,
{0} est son unique point extrémal, et dès lors

P = conv({0}) + cône(D) = cône(D),

ce qui termine la démonstration.

Nous allons maintenant montrer la réciproque du Corollaire III.4.17, ce qui permettra


d’affirmer :

Théorème III.4.18.

Un cône est finiment engendré si et seulement si il est polyédrique.

Démonstration. Il ne nous reste bien sûr qu’à démontrer la condition nécessaire. Soit Ĉ =
cône({x1 , · · · ,x` }) un cône finiment engendré. On définit son cône polaire Ĉ o par

Ĉ o := {y ∈ IRn | hxi ,yi ≤ 0 ∀i ∈ {1, · · · ,`}}.

Par construction, Ĉ o est un cône polyédrique, et il suit dès lors du Corollaire III.4.17 que
Ĉ o = cône({y1 , · · · ,yk }) pour certains y1 , · · · ,yk dans IRn . On prétend que

Ĉ = (Ĉ o )o := {x ∈ IRn | hyj ,xi ≤ 0 ∀j ∈ {1, · · · ,k}},

ce qui terminera la démonstration.


P` Afin de montrer une première inclusion, prenons x ∈ C
quelconque. Alors x = i=1 αi xi pour certains αi ≥ 0. Pour chaque j ∈ {1, · · · ,k}), on a
alors
X` `
X
hyj ,xi = αi hyj ,xi i = αi hxi , yj i ≤ 0
i=1 i=1

car les αi sont positifs et yj ∈ Ĉ o .


Donc x ∈ (Ĉ o )o . Inversément, soit x ∈ (Ĉ o )o . Si
Pk
z = j=1 βj yj ∈ Ĉ o avec tous les βj positifs, alors

k
X
hx, zi = βj hx, yj i ≤ 0.
j=1

Il suit du Lemme de Farkas (Théorème III.4.9), appliqué pour aj := xj et b := x, que


x ∈ cône({x1 , · · · ,xk }), c’est-à-dire x ∈ Ĉ, d’où l’inclusion opposée.

De même, le théorème qui suit est une réciproque du Théorème III.4.16.

Théorème III.4.19.

Soient E et D des ensembles finis de IRn . Alors le convexe

P := conv(E) + cône(D)

est un polyèdre.

– 83 –
CHAPITRE C COMPLÉMENTS SUR LA CONVEXITE : POLYTOPES ET
POLYÈDRES

Démonstration. On écrit E = {e1 , · · · ,ek }, D = {z1 , · · · ,z` }, et on pose

Ĉ := cône({(e1 ,1), · · · ,(ek ,1),(z1 ,0), · · · ,(z` ,0)}) ⊆ IRn+1 .

Comme Ĉ est un cône finiment engendré dans IRn+1 , par le théorème précédent, il existe
{c1 , · · · ,cp } ⊂ IRn+1 tels que

Ĉ = {z ∈ IRn+1 | hci , zi ≤ 0 ∀i ∈ {1, · · · ,p}}.

On observe enfin que x ∈ P si et seulement si z := (x,1) ∈ Ĉ. Dès lors,

P = {x ∈ IRn | hai , xi ≤ bi ∀i ∈ {1, · · · ,p}},

où, pour chaque i ∈ {1, · · · ,p}, on a écrit ci ≡ (ai , − bi ) avec ai ∈ IRn et bi ∈ IR. Par
conséquent P est polyédrique.

Corollaire III.4.20.

Un sous-ensemble de IRn est un polytope si et seulement si c’est un polyèdre borné.

Démonstration. C’est une conséquence du Théorème III.4.15, du théorème précédent ap-


pliqué avec D = ∅, et de la Proposition III.4.4.

– 84 –
BIBLIOGRAPHIE

Bibliographie

[AK08] G. Allaire and S.M. Kaber, Numerical linear algebra, Texts in Applied Mathe-
matics, vol. 55, Springer, 2008.
[Ber01] M. Bergounioux, Optimisation et contrôle des systèmes linéaires, Dunod, 2001.
[HU96] J.-B. Hiriart-Urruty, Convex analysis and minimization algorithms i, Springer-
Verlag, 1996.
[TALM92] R. Tomassone, S. Audrain, E. Lesquoy, and C. Miller, La régression, nouveaux
regards sur une ancienne méthode statistique, Masson, Paris, 1992.
[ZQ07] C. Zuily and H. Queffélec, Analyse pour l’agrégation, 3ème édition, Dunod, 2007.

– 85 –
BIBLIOGRAPHIE

– 86 –

Vous aimerez peut-être aussi