Académique Documents
Professionnel Documents
Culture Documents
Introduction
Comme la méthode de résolution graphique est limitée à deux variables, et les problèmes réels
présentent généralement plus que deux variables, alors c’est la méthode de simplexe qui sera
utilisée. Cette méthode est efficace et performante pour les problèmes de grande taille surtout
en terme de temps de résolution.
1.1. Concept 1
La méthode du simplexe se concentre uniquement sur la recherche de points extrêmes du
domaine des solutions réalisables (D).
On suppose que le domaine des solutions réalisables (D) est borné.
Pour tout problème ayant au moins une solution optimale, trouver la solution qui
correspond au meilleur point extrême.
1.2. Concept 2
La méthode du simplexe est un algorithme itératif qui nécessite l’application d’un certain
nombre d’étapes :
Initialisation
Oui
Test STOP
d’optimalité ?
Non
d’énumératio
Lequel ?
méthode
1.3. Concept 3
Le choix de l’origine comme solution initiale de la méthode du simplexe quand c’est possible.
Vérifier si l’origine (toutes les variables de décision sont nulles) répond à toutes les
contraintes.
1.4. Concept 4
Etant donnée une solution qui correspond à un point extrême, ça sera plus rapide de rassembler
les informations sur les points extrêmes adjacents (on parle en termes de temps de calcul
informatique).
A chaque fois qu’on veut améliorer une solution, la méthode simplexe considère les
points extrêmes adjacents.
Qu’est-ce qu’un point adjacent ?
Pour un PL à n variables, deux points extrêmes réalisables sont adjacents s’ils partagent les
frontières données par (m-1) contraintes. Ainsi, deux solutions adjacentes sont reliées par un
segment (ou un bord) du domaine réalisable.
Pour l’exemple :
Max Z= 3𝑥 +5 𝑥 (1)
Sous les contraintes (s.c.) :
𝑥 ≤4 (2)
2𝑥 ≤ 12 (3)
3 𝑥 + 2 𝑥 ≤ 18 (4)
𝑥 ≥0, 𝑥 ≥0 (5)
On a :
Point extrême réalisable Point extrême réalisable adjacent
(0,0) (0,6) et (4,0)
(0,6) (0,0) et (2,6)
(4,3) (2,6) et (4,0)
1.5. Concept 5
Une fois une solution (qui correspond à un point extrême) est identifiée, la méthode du simplexe
examine chaque bord du domaine qui provient de ce point. Chacun des bords correspond à un
point extrême adjacent. La méthode identifie le taux d’amélioration de Z qui correspond au taux
le plus élevé. C’est le point extrême correspondant qui sera considéré et constituera la nouvelle
solution du problème qui subira le test d’optimalité.
1.6. Concept 6
Le test d’optimalité consiste à vérifier si l’un des bords correspond à un taux d’amélioration
positif de Z.
On prend l’exemple précédent ci-dessous :
(2,6)
(0,6)
(4,3)
(0,0)
(4,0)
2. Forme Standard
La forme standard d’un programme linéaire (PL) est donnée comme suit :
Max 𝐶 𝑥
S.c : A.x = b
x≥0
Remarque : Pour n’importe quel programme linéaire (PL), il est possible de le transformer
en un PL équivalent exprimé sous la forme standard :
Un problème de minimisation est transformé en un problème équivalent de maximisation
Min ( 𝑪𝑻 𝒙) = -Max (- 𝑪𝑻 𝒙)
Une inégalité de la forme ∑ 𝒂𝒊𝒋 ≤ 𝒃𝒋 peut être transformée en une égalité en introduisant
une variable supplémentaire non négative 𝒔𝒊 , appelée variable d’écart ou slack
variable. Alors, on aura la contrainte équivalente qui s’écrit ∑ 𝒂𝒊𝒋 + 𝒔𝒊𝒋 = 𝒃𝒋
Dans la mesure du possible, et si on a des contraintes de type « ≥ » le sens d’une inégalité
peut être inversé en multipliant les deux côtés par (-1) à condition que le second membre
reste positif.
Une variable de décision 𝒙𝒊 non contrainte en signe ( 𝒙𝒊 є 𝑰𝑹 ) peut être exprimée
comme la différence de deux variables positives 𝑥 et 𝑥 ; 𝒙𝒊 = 𝒙𝒊 − 𝒙𝒊 .
3. Solution de Base
4. Tableau canonique
Le tableau canonique relatif à la base B est obtenu en transformant la matrice sous les
variables 𝒙𝑩 et –Z en une matrice identité d’ordre (m+1).
Il s’agit de multiplier à gauche de chaque colonne du tableau par :
𝐵 0 𝐵 0
𝑇 = =
𝑪𝑩 𝟏 𝑪𝑩 𝐵 1
L’idée de la méthode simplexe est de partir d’un point extrême initial et de générer une suite de
points extrêmes adjacents tout en assurant une amélioration de la fonction objectif.
Recherche d’une solution de Base Réalisable Initiale (Point extrême).
On revient à notre exemple. La formulation standard est :
Max 3𝑥 +5 𝑥 –Z =0 (1)
Sous les contraintes (s.c.) :
𝑥 + 𝒙𝟑 = 4 (2)
2𝑥 + 𝒙𝟒 = 12 (3)
3 𝑥 + 2 𝑥 + 𝒙𝟓 = 18 (4)
𝑥 , 𝑥 , 𝒙𝟑 , 𝒙𝟒 , 𝒙𝟓 ≥ 0 (5)
Il s’agit d’un tableau canonique relatif à la solution de base réalisable initiale (0,0,4,12,18).
Comme l’exemple dispose une SBR, il faut vérifier s’il s’agit d’une solution Optimale (test
d’optimalité).
- Soit x* une Solution de Base Réalisable associée à la base B
Z(x*) = 𝑪𝑩 𝑩 𝟏 𝒃 (1)
- Soit x une Solution Réalisable. D’où, on peut écrire: x = 𝒙𝑩 + 𝒙𝑵
Z (x) = 𝑪𝑩 𝒙𝑩 + 𝑪𝑵 𝒙𝑵 (2)
De plus 𝐵𝒙𝑩 + 𝑁𝒙𝑵 = b . En multipliant par ( 𝑪𝑩 𝑩 𝟏 ) à gauche, on obtient :
Corollaire
Soit x une SBR associée à la base B. S’il existe une variable Hors Base 𝑥 / 𝛥 > 0 (cela
représente le taux d’amélioration de la fonction objectif si la variable 𝑥 devient une variable
de Base) alors :
Soit l’optimum du PL est non borné
Soit il existe une SBR y associée à une base B´/ 𝑐 > 𝑐 ; x et y deux solutions de
bases réalisables adjacentes. En fait, on se déplace d’une base à une autre adjacente :
- Si la SBR est non dégénérée, le déplacement implique un point extrême adjacent
- Si la SBR est dégénérée la base change mais on reste au même point extrême (une nouvelle
variable nulle).
𝑥 𝑥
𝑥 𝑥
⎛𝑥 ⎞ ⎛𝑥 ⎞
⎜ ⎟ ⎜ ⎟
Sans perdre de généralité, on va supposer que 𝒙𝑩 = ⎜ . ⎟ et 𝒙 = ⎜ . ⎟
⎜ . ⎟ ⎜ . ⎟
. .
⎝𝑥 ⎠ ⎝ 𝑥 ⎠
Avec :
𝑎 , 𝑎,
𝑎 ,
𝑎 ,
⎛ ⎞ ⎛𝑎 , ⎞
⎜𝑎 ⎟,
𝟏 ⎜ . ⎟
⎜ . ⎟ =𝑩 ⎜ ⎟
⎜ . ⎟ ⎜ . ⎟
. .
⎝𝑎 , ⎠ ⎝𝑎 , ⎠
Pour se déplacer d’une SBR à une autre, une variable hors base va prendre la place de l’une
des variables de base. Ainsi,
Définition
𝑎 , est appelé élément pivot avec la ligne s est la ligne pivot et la colonne e est la colonne
pivot.
Déterminer la nouvelle SBR relative à la base B’= (x1, x2,…,xe,…,xm)
𝑎 , 0
. .
⎛ . ⎞ ⎛.⎞
⎜ ⎟ ⎜ ⎟
.
⎜ ⎟ ⎜.⎟
𝑎
⎜ , ⎟ ⎜1⎟ Ligne s
⎜ . ⎟ ⎜.⎟
⎜ . ⎟ ⎜.⎟
. .
⎝𝑎 , ⎠ ⎝0⎠
Pour cela, il faut appliquer les opérations élémentaires (Gauss-Jordan) :
- Opération 1 : Diviser la ligne Pivot par l’élément pivot 𝑎 ,
𝑎 , 𝑎 , /𝑎 , en particulier 𝑎 , =1
- Opération 2 : Pour toute ligne différente de la ligne Pivot, soustraire cette ligne à un
multiple approprié de la ligne pivot pour annuler le coefficient de la ligne i correspondant
à la colonne pivot
𝑎, 𝑎, -𝑎, 𝑎 , /𝑎 , en particulier 𝑎 , = 0
Aussi, pour la ligne qui correspond à la fonction objectif, on a : 𝛥 𝛥 − 𝛥 𝑎 , / 𝑎 ,
pout tout j.
Critère d’arrêt des itérations : si tous les coefficients de la ligne (-Z) relatifs au variables HB
sont négatifs ou nuls, la solution trouvée est optimale.
Exemple d’application 1
On propose de reprendre l’exemple du chapitre 1 et de le résoudre par la méthode du simplexe.
Max Z= 3𝑥 +5 𝑥 (1)
Sous les contraintes (s.c.) :
𝑥 ≤4 (2)
2𝑥 ≤ 12 (3)
3 𝑥 + 2 𝑥 ≤ 18 (4)
𝑥 ≥0, 𝑥 ≥0 (5)
2𝑥 + 𝒔𝟐 = 12 (3)
3 𝑥 + 2 𝑥 + 𝒔𝟑 = 18 (4)
𝑥 , 𝑥 , 𝒔𝟏 , 𝒔𝟐 , 𝒔𝟑 ≥ 0 (5)
#2 𝑥 𝑥 𝒔𝟏 𝒔𝟐 𝒔𝟑 𝒃𝒊
𝒔𝟏 1 0 1 0 0 4
𝑥 0 1 0 1/2 0 6
𝒔𝟑 3 0 0 -1 1 6
-z 3 5 0 -5/2 0 -30
#3 𝑥 𝑥 𝒔𝟏 𝒔𝟐 𝒔𝟑 𝒃𝒊
𝒔𝟏 0 0 1 1/3 -1/3 2
𝑥 0 1 0 1/2 0 6
𝑥 1 0 0 -1/3 1/3 2
-z 0 0 0 -3/2 -1 -36
#2 𝑥 𝑥 𝒕𝟏 𝒕𝟐 𝒃𝒊
𝒕𝟏 0 5/2 1 -1/2 70
𝑥 1 1/2 0 1/6 30
-z 0 400 0 -200 -36000
#3 𝑥 𝑥 𝒕𝟏 𝒕𝟐 𝒃𝒊
𝒕𝟏 0 1 2/5 -1/5 28
𝑥 1 0 -1/5 4/15 16
-z 0 0 -160 -120 -47200
Critère d’arrêt des itérations : si tous les coefficients de la ligne (-Z) relatifs au variables HB
sont négatifs ou nuls, la solution trouvée est optimale.
Exercice
On considère une société qui fabrique trois modèle de meubles : classique, rustique, moderne.
Les standards unitaires de production sont résumé dans le tableau suivant :
Modèle Modèle rustique Modèle Capacité
classique moderne maximale
Bois 5 8 5 900
Main d’œuvre 1 2 3 516
Centre finition 2 2 0 200
Marges sur coût 1000 960 1200
variables
La méthode simplexe part d’un PL sous la forme canonique. Cela suppose qu’on peut
facilement identifier une SBR initiale. Parfois ce n’est pas évident de trouver une SBR initiale.
Dans ce cas, on applique la méthode du simplexe à deux phases.
Soit le PL ci-dessous :
Max Z= 4𝑥 + 3𝑥
Sous les contraintes (s.c.) :
2𝑥 - 𝑥 ≥ 15 (1)
𝑥 + 𝑥 = 10 (2)
2 𝑥 - 𝑥 ≤ 20 (3)
𝑥 , 𝑥 ,≥ 0 (4)
La forme standard est :
Max Z= 4𝑥 + 3𝑥
S.C 2𝑥 - 𝑥 - 𝑒 = 15 (1)
𝑥 + 𝑥 = 10 (2)
2 𝑥 - 𝑥 + 𝑠 = 20 (3)
𝑥 , 𝑥 ,𝑒 ,𝑠 ≥ 0 (4)
Dans ce cas, c’est difficile de trouver une SBR. Alors, qu’est-ce qu’on fait ?
Une SBR de (PL)’ est donnée par les variables de base (𝑠̅ , 𝑠̅ , 𝑠 ). Or, les variables artificielles
doivent être nulles dans une SBR de PL (si une variable artificielle est non nulle, ceci indique
que la solution est non réalisable pour PL).
On doit donc essayer d’annuler les variables artificielles dans (PL)’. Pour cela, nous allons
appliquer la méthode simplexe pour le (𝑃𝐿) constitué des mêmes contraintes que le
problème initiale et dont l’objectif sera de minimiser la somme des variables artificielles.
Cela représente la phase I de la méthode simplexe à deux phases.
Min 𝑍 = 𝑠̅ + 𝑠̅
S.C 2𝑥 - 𝑥 - 𝑒 + 𝑠̅ = 15 (1)
𝑥 + 𝑥 + 𝑠̅ = 10 (2)
2 𝑥 - 𝑥 + 𝑠 = 20 (3)
𝑥 , 𝑥 , 𝑒 , 𝑠 , 𝑠̅ , 𝑠̅ ≥ 0 (4)
8. Cas particulier
𝑎 ,
.
⎛ . ⎞
⎜ ⎟
.
⎜ ⎟
La direction : ⎜ . ⎟
⎜ . ⎟
⎜ . ⎟
.
⎝𝑎 , ⎠
Exemple :
Max Z = x1 + 2x2
s.c. 7x1 + 2x2 ≥ 28
x1 + 6x2 ≥ 12
x1, x2 0
8.2. PL avec une infinité de solution
Dans le tableau canonique optimal, à l’une des variables hors base correspond un 𝛥 =0. Si on
fait entrer 𝑥 dans la base, on obtient une autre SBR sans que la valeur de la fonction objectif
change. Le segment formé par ces deux SBRs optimales contient toutes les solutions optimales
du problème.
Exemple :
Max Z = 3x1 + 2x2
s.c. 3x1 + 2x2 ≤ 120
x1 + x2 ≤ 50
x1, x2 0