Vous êtes sur la page 1sur 4

Chapitre 3 M ethode du simplexe : un aper cu par lexemple

Consid erons le probl` eme doptimisation lin eaire : maximiser z = 5x1 +4x2 +3x3 sous les contraintes 2x1 +3x2 +x3 4x1 +x2 +2x3 3x1 +4x2 +2x3 x1 , x2 , x3 5, 11, 8, 0.

(3.1)

An de se ramener a ` un syst` eme d equations plut ot que din equations, on introduit les ecrit le probl` eme ci-dessus sous la forme variables d ecart x4 , x5 , x6 et lon x4 x5 x6 z = 5 2x1 3x2 x3 , = 11 4x1 x2 2x3 , = 8 3x1 4x2 2x3 , = 5x1 +4x2 +3x3 ,

(3.2)

avec pour but de maximiser z sous les contraintes additionnelles xi 0, (i = 1, , 6). Il est ais e (et recommand e) de v erier que si (x1 , x2 , x3 , x4 , x5 , x6 ) est une solution optimale de ce dernier probl` eme, alors les (x1 , x2 , x3 ) correspondants constituent une solution optimale du probl` eme (3.1). Inversement, si (x1 , x2 , x3 ) est une solution optimale de (3.1), alors (x1 , x2 , x3 , 5 2x1 3x2 x3 , 11 4x1 x2 2x3 , 8 3x1 4x2 2x3 ) constitue une solution optimale de (3.2). Le syst` eme (3.2) poss` ede la solution (non optimale) (0, 0, 0, 5, 11, 8) (lusage est dappeler solution r ealisable tout choix de variables satisfaisant ` a lensemble des contraintes (cfr. le chapitre suivant)). On observe que dans lexpression z = 5x1 + 4x2 + 3x3 , une augmentation de x1 entra ne une augmentation de z. Lid ee premi` ere est alors daugmenter x1 autant que possible (sans ecart x4 , x5 ou x6 ne devient n egative. modier ni x2 ni x3 ) tant quaucune des variables d Le choix maximal est donc x1 = min(5/2, 11/4, 8/3) = 5/2, lorsque x4 devient nulle, et qui fait passer a ` la solution r ealisable (5/2, 0, 0, 0, 3, 1/2). On r ecrit le syst` eme (3.2) en exprimant cette fois (x1 , x5 , x6 ) (ainsi que z ) en termes 9

de (x2 , x3 , x4 ), au moyen de l equation x1 = Ceci donne, apr` es substitutions : x1 x5 x6 z = = = = 3 x 1 x 2 2 2 3 1 +5x2 1 +1 x 1 x 2 2 2 2 3 25 7 1 2 x2 + 2 x3 2


5 2

5 3 1 1 x2 x3 x4 . 2 2 2 2

1 x, 2 4 +2x4 , +3 x, 2 4 5 2 x4 .

(3.3)

Cette fois, on observe que dans lexpression z = 25/2 7/2x2 + 1/2x3 5/2x4 , une augmentation de x3 (cest ici le seul choix possible) entra ne une augmentation de z. A nouveau, on augmente donc x3 autant que possible (sans modier ni x2 ni x4 ) tant quaucune des variables (dites variables en bases (cfr. Chapitre 5)) x1 , x5 ou x6 ne devient n egative. Le choix maximal est donc x3 = min((5/2)/(1/2), (1/2)/(1/2)) = 1, lorsque x6 devient nulle, et qui fait passer ` a la solution r ealisable (2, 0, 1, 0, 1, 0). On r ecrit le syst` eme (3.3) en exprimant cette fois (x1 , x3 , x5 ) (ainsi que z ) en termes de (x2 , x4 , x6 ), au moyen de l equation x3 = 1 + x2 + 3x4 2x6 . Ceci donne, apr` es substitutions : x1 x3 x5 z = 2 2x2 2x4 +x6 , = 1 +x2 +3x4 2x6 , = 1 +5x2 +2x4 , = 13 3x2 x4 x6 .

(3.4)

Puisque les coecients de x2 , x4 et x6 intervenant dans lexpression de z ci-dessus sont tous n egatifs ou nuls, on d eduit que la solution r ealisable x1 x2 x3 x4 x5 x6 = 2, = 0, = 1, = 0, = 1, = 0,

(3.5)

est une solution optimale, pour laquelle z = 13. Avant de formaliser lalgorithme du simplexe, et den d ecouvrir les bases th eoriques, voyons une deuxi` eme m ethode pour laborder et qui consiste ` a placer les calculs en tableau (toutes les variables se retrouvant du m eme c ot e du signe d egalit e) plut ot que sous forme dictionnaire comme ci-dessus. Lavantage de cette deuxi` eme fa con de pr esenter les choses (mais qui est bien s ur equivalente ` a la premi` ere) et quelle se rapproche plus de la m ethode bien connue du pivot de Gauss.

10

Consid erons donc maintenant le probl` eme doptimisation lin eaire maximiser z= sous les contraintes x1 x1 x1 2x1 x1 x1 , +5x2 +3x2 +x3 +x3 +3x3 +4x2 x3 +3x2 x3 x2 , x3 3, 2, 4, 2, 0.

(3.6)

ementaire par On introduit les variables d ecart x4 , x5 , x6 , x7 (il y a une contrainte suppl rapport au probl` eme pr ec edent) et on r ecrit le probl` eme sous la forme maximiser z= sous les contraintes x1 x1 x1 2x1 x1 x1 , +5x2 +3x2 +x3 +x3 +x4 +3x3 +x5 +4x2 x3 +x6 +3x2 x3 +x7 x2 , x 3 x 4 , x5 , x6 , x7 = = = = 3, 2, 4, 2, 0.

(3.7)

On adopte alors la notation sous forme de tableau : 1 1 2 1 1 3 1 1 0 3 0 4 1 0 3 1 0 5 1 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 | | | | | 3 2 4 2 0

La derni` ere ligne du tableau correspond ` a un expression possible de z comme fonction ane des variables x1 , , x7 , loppos e du terme constant se trouvant en bas ` a droite du tableau. On part de la solution r ealisable (0, 0, 0, 3, 2, 4, 2) et puisque le terme en x1 dans la derni` ere ligne du tableau (=1) est positif, on va augmenter x1 (sans modier ni x2 ni x3 ) jusqu` a ce que lune des variables x4 , x5 , x6 ou x7 devienne nulle. Ceci se produit pour x1 = 2 pour lequel ` a la fois x6 et x7 deviennent nuls. On choisit dont de faire rentrer x1 en base, et de faire sortir (par exemple) x6 . Cela donne 1 1 2 1 1 3 1 1 0 3 0 4 1 0 3 1 0 5 1 0 0 1 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 1 0 | | | | | 3 2 4 2 0 1 1 1 1 1 0 1 2 1 1 2 1 0 2 0 1 2 0 1 2 3 1 1 0 3 0 2 1 0 2 3 1 0 5 1 0 0 0 0 1 0 | 1 | 4 | 2 | 0 | 2 0 1 0 0 0 0 0 | 0 0 | 1 0 | 2 0 1 | 0 0 | 3 2 2 2 0

3 1 2 5 2 2 2 1 2 1 1 2 3 3 2

1 0 0 0 0

et fournit une solution r ealisable pour laquelle x1 = 2, x4 = 1, x5 = 4, x7 = 0 (et les variables hors base sont toujours nulles : x2 = x3 = x6 = 0). Puisque le coecient de x2 11

dans la nouvelle expression de z est positive, on fait ensuite rentrer x2 en base, et on doit faire sortir x7 sans pouvoir en rien augmenter x2 ! Cela donne 0 0 1 0 0
3 1 2 5 2 2 2 1 2 1 1 2 3 3 2

1 0 0 0 0

0 1 2 1 1 2 1 0 2 0 1 2 0 1 2

0 0 0 1 0

| 1 | 4 | 2 | 0 | 2

0 0 1 0 0

0 2 7 0 2 1 0 2 1 1 2 0 3

1 0 0 0 0

0 0 3 1 2 3 0 2 0 1 2 0 1

1 2 2 1 3

| 1 | 4 | 2 | 0 | 2

et fournit la solution r ealisable (2, 0, 0, 1, 4, 0, 0). On fait ensuite rentrer x3 en base (son coecient dans lexpression de z vaut maintenant 3) et on fait sortir x4 (qui sannule lorsque x3 = 1/2). Cela donne 0 0 1 0 0 0 2 7 0 2 1 0 2 1 1 2 0 3 1 0 0 0 0 0 0 3 1 2 3 0 2 0 1 2 0 1 1 2 2 1 3 0 0 1 0 0 0 0 0 1 0 | 1 | 4 | 2 | 0 | 2 0 0 1 0 0 0 1 7 0 2 1 0 2 1 1 2 0 3 0 0 0 0
1 2

0 0 3 1 2 3 0 2 0 1 2 0 1

1 2 2 2 1 3

1 | 2 | 4 | 2 | 0 | 2

et fournit la solution r ealisable ( 7 , 1 , 1 , 0, 0, 0, 0). On fait ensuite rentrer x6 et sortir x1 4 4 2 (qui sannule en premier lorsque lorsque x6 = 7 ). Cela donne 3 0 0 1 0 0 0 0 0 1 0
1 0 0 1 2 7 3 0 4 1 2 3 0 0 0 2 1 1 0 0 4 2 3 0 2 0 1 1 1 | 2 2 1 9 4 | 4 7 7 | 4 4 1 3 | 4 4 3 2 | 7 2 1 0 0 0 0 1 2 7 3 0 0 0 4 1 2 2 0 0 0 0 1 3 1 1 0 1 0 0 2 4 3 0 0 0 2 0 1 1 | 2 1 | 2 7 | 6 5 | 6 | 14 3 1 1 | 2 2 1 9 4 | 4 7 7 | 6 6 1 3 | 4 4 3 2 | 7 2

1 0 0 1 2 3 0 7 1 4 2 3 0 0 0 2 1 1 0 0 4 2 0 3 0 1 2

1 1 | 2 2 9 1 | 4 4 7 7 | 4 4 3 1 | 4 4 3 | 7 2 2

et fournit nalement la solution optimale (0, 5 , 1 , 0, 1 , 7 , 0) pour laquelle z = 6 2 2 6

1 0 0 1 0 0 1 2 2 3 1 0 0 7 1 0 4 2 7 2 0 0 0 0 1 3 6 1 1 1 1 0 0 0 3 4 6 3 1 2 0 0 0 0 3 2 3

14 . 3

12