Académique Documents
Professionnel Documents
Culture Documents
Cours 4
Méthode du simplexe
4–1
Théorème fondamental
minimiser cT x
x2P
minimiser cT x
x2P
Dans la suite nous n’écrivons plus que les contraintes d’égalité et cherchons toujours a
minimiser z.
Le tableau simplexe est sous forme canonique. La matrice des contraintes associées aux
variables de base est la matrice identité et les variables de base n’apparaissent pas dans
la fonction objectif.
Cette forme canonique s’obtient par des opérations élémentaires sur les lignes.
On a xB = B 1
b B 1
N xN et
cTB (B 1
b B N xN ) + cTN xN
1
= z
xB + B 1N xN = B 1
b
xB , xN 0
Soit un tableau simplexe sous forme canonique pour la base {1, 2}.
0 0 c3 c4 z 4
1 0 3 3 6
0 1 8 4 4
Les quantités qui apparaissent dans la première ligne du tableau sont les coûts réduits des
variables correspondantes. Suivant les valeurs des coûts réduits il y a trois cas possibles:
0 0 3 1 z 4
1 0 3 3 6
0 1 8 4 4
La solution (6, 4, 0, 0) est la solution admissible de base associée à la base {1, 2}.
Nous avons 3x3 + x4 = z 24. En (6, 4, 0, 0), z est égal à 24. Puisque x3, x4 0 nous
avons 3x3 + x4 0 et le coût en une autre solution admissible ne peut-être que supérieur
ou égal à 4. Le sommet (6, 4, 0, 0) est optimal et le coût optimal est égal à 4.
Au sommet (6, 4, 0, 0) le coût réduit de x3 est égal à 3 tandis que celui de x4 est égal à 1.
Si en un sommet tous les coûts réduits sont positifs ou nuls, alors le sommet est optimal.
0 0 3 1 z 4
1 0 3 3 6
0 1 8 4 4
La solution (6, 4, 0, 0) est la solution admissible de base associée à la base {1, 2}.
0 0 3 1 z 4
1 0 3 3 6
0 1 6 4 4
La solution (6, 4, 0, 0) est la solution admissible de base associée à la base {1, 2}.
2. Si tous les coûts réduits sont positifs ou nuls, stop (x⇤ est optimal). Sinon, choisir
une variable hors base xk de coût réduit négatif.
A l’étape 2, quelle variable choisir parmi les variables hors base de coût réduit négatif?
A chaque étape nous sommes libres de choisir la variable qui a notre préférence: la
variable de coût réduit minimum, la variable qui réduit le plus la fonction coût, la
variable de coût réduit négatif de plus petit indice, etc.
En e↵et, à chaque itération nous atteignons un nouveau sommet pour lequel le coût est
strictement inférieur au coût des sommets qui l’ont précédé. Nous ne pouvons donc pas
passer deux fois par le même sommet. D’autre part, un polyèdre ne possède qu’un
nombre fini de sommets et l’algorithme doit donc s’arrêter.
x1 x2 x3 x4
2 4 0 0 z
3 4 1 0 1700
2 5 0 1 1600
Itération 1. La solution (0, 0, 1700, 1600) est la solution admissible de base associée aux
variables x3, x4. Les coûts réduits associés aux variables x1 et x2 sont négatifs. Nous
choisissons de faire entrer x2 dans la base.
Nous ne pouvons pas augmenter x2 sans limite puisqu’il faut satisfaire les contraintes.
La première nous impose 4x2 + x3 = 1700 et la seconde 5x2 + x4 = 1600. La deuxième
contrainte est la plus contraignante. C’est x4 qui sort de la base.
x1 x2 x3 x4
2 4 0 0 z
3 4 1 0 1700
2 5⇤ 0 1 1600
Itération 2. La solution (0, 320, 420, 0) est la nouvelle solution admissible de base. Les
variables hors base sont x1 et x4. Le coût augmente si x4 augmente; il diminue si x1
augmente. Nous faisons rentrer x1 dans la base. Laquelle des variables x2 et x3 quitte la
base? Les contraintes sont 7/5x1 + x3 = 420 et 2/5x1 + x2 = 320 La plus contraignante
des contraintes est la première et nous obtenons donc
x1 x2 x3 x4
2/5 0 0 4/5 z + 1280
7/5⇤ 0 1 4/5 420
2/5 1 0 1/5 320
A l’étape 2, quelle variable choisir parmi les variables hors base de coût réduit négatif?
A chaque étape nous sommes libres de choisir la variable qui a notre préférence: la
variable de coût réduit minimum, la variable qui réduit le plus la fonction coût, la
variable de coût réduit négatif de plus petit indice, etc.
Nous ne pouvons pas augmenter x1 sans limite puisqu’il faut satisfaire les contraintes.
Lorsque x1 = et x2 = 0 celles-ci s’écrivent x3 = 4 2 0, x4 = 2 0 et
x5 = 5 0. Les deux premières contraintes sont actives en = 2. Les variables x3
et x4 sont toutes les deux candidates à la sortie. Quelle que soit la variable que nous
choisissons, l’autre variable sera égale à zéro à l’itération suivante et nous nous
trouverons en un sommet dégénéré. Nous choisissons de faire sortir x4.
x1 x2 x3 x4 x5
0 5 0 3 0 z+6
0 3 1 2 0 0
1 2 0 1 0 2
0 3 0 1 1 3
Itération 2. La solution admissible de base associée à la base {1, 3, 5} est (2, 0, 0, 0, 3), la
solution est dégénérée.
La variable x2 est la seule variable hors base de coût réduit négatif. La variable x2 entre
dans la base. Les contraintes sont x3 = 3x2, x4 = 2 2x2 et x5 = 3 3x2. La
première contrainte ne permet pas d’augmenter la valeur de x2. La seule possibilité est
de faire sortir x3 de la base pour passer à la base {1, 2, 5}.
x1 x2 x3 x4 x5
0 0 5/3 1/3 0 z+6
0 1 1/3 2/3 0 0
1 0 2/3 1/3 0 2
0 0 1 1 1 3
La base a changé mais la solution admissible de base n’a pas changé. En particulier, le
coût n’a pas diminué.
Itération 3. L’itération suivante est plus standard. x4 entre dans la base et x5 en sort.
A l’itération 2 de l’exemple, le coût n’a pas diminué suite au pivotage. Cette situation
n’est possible que lorsque que l’on se trouve en un sommet dégénéré.
Lorsque le coût ne diminue pas suite à un ou plusieurs pivotages successifs, il n’est pas
exclu de revenir à une base déjà visitée et de cycler en se déplaçant sur des sommets
dégénérés de coûts égaux.
2. Si tous les coûts réduits sont positifs ou nuls, stop (x⇤ est optimal). Sinon, choisir
une variable hors base xk de coût réduit négatif.
Parmi les variables candidates à l’entrée dans la base, choisir celle de plus petit indice.
Parmi les variables candidates à la sortie de la base, choisir celle de plus petit indice.
Robert G. Bland, New finite pivoting rules for the simplex method, Mathematics of Operations Research
2 (1977) pp. 103-107.
La recherche d’un sommet d’un polyèdre peut se faire lors d’une phase d’initialisation
(ou phase I) en résolvant un problème d’optimisation linéaire annexe pour lequel on
dispose d’un sommet initial.
Si le coût optimal du problème annexe est supérieur à 0, c’est qu’il n’y a pas de solution
admissible pour laquelle y = 0, et donc le polyèdre initial P est vide. Si le coût optimal
du problème annexe est égal à 0, on considère une solution admissible de base optimale
(x⇤, 0). La solution x⇤ est un sommet du polyèdre initial P.
On
P peut donc démarrer l’algorithme du simplexe avec comme objectif la minimisation de
i yi .