Académique Documents
Professionnel Documents
Culture Documents
APPLIQUEES ET DE TECHNOLOGIE
DE SOUSSE
Éléments de Cours
Outils d’Optimisation de la
Production
1. PROGRAMMATION LINEAIRE
La programmation linéaire est une des techniques les plus remarquables
utilisées en recherche opérationnelle. Depuis quelques dizaines d’années elle s’est
développée à une vitesse foudroyante pour devenir un outil de gestion
indispensable dans plusieurs entreprises modernes et dans différents domaines
tels que la gestion de production, l’informatique, la télécommunication,…
Elle consiste à l’optimisation d’un problème industriel ou économique
modélisé par un modèle mathématique linéaire. Plus précisément, la
programmation linéaire consiste à optimiser une fonction économique linéaire
(fonction objectif), tout en respectant un certain nombre d’équations ou
d’inéquations linéaires (contraintes).
En effet, lorsque toutes les fonctions du problème mathématique général :
min (max) f ( X ) sujet à gi ( X ) , , bi , i 1,..., m
X 0
Max Z cjxj
j 1
sujet à :
a11 x1 a12 x2 ... a1n xn b1
a x a x ... a2 n xn b2
(1.3)
21 1 22 2
am1 x1 am 2 x2 ... amn xn bm
xj 0
Remarque : tout problème de programmation linéaire peut être mis sous la
forme canonique grâce aux transformations suivantes :
- Transformer les variables négatives en variables positives, en
remplaçant xi par xi' xi . S’il y a des variables sans contraintes de
signes, on pose xi xi xi où xi max( xi ,0) et xi max( xi ,0). Les
nouvelles variables xi , xi sont évidemment positives.
n
Max Z cj xj
j 1
sujet à :
a11 x1 a12 x2 ... a1n xn b1
a x a x ... a2 n xn b2
21 1 22 2
am1 x1 am 2 x2 ... amn xn bm
xj 0
Remarque : Pour pouvoir résoudre un programme linéaire, il faut passer
obligatoirement par la forme standard. Ce passage (de forme canonique vers la
forme standard) nécessite l’utilisation de ce qu’on appelle variables d’écarts
(positives ou nulles). Tout problème de programmation linéaire peut être mis
sous la forme standard grâce aux transformations suivantes :
- Transformer les variables négatives en variables positives comme on a
présenté précédemment.
- Transformer les contraintes de type “ ” en inégalités de type “ ” en
les multipliant par -1.
- Transformer les contraintes de type “ ” en égalités de type “ = ” en
introduisant une nouvelle variable positive, xn i dite variable d’écart,
dans la contrainte i.
- Pondérer les variables d’écarts par zéro dans la fonction objectif.
La forme standard du modèle (1.3) est :
nm
x1 , x2 0 x1 , x2 , x3 , x4 0
3 x 1 2 2
avec : C , X 1 , A et B .
1 x2 4 1 5
Max Z 3 x1 x2
sujet à :
La forme standard correspondante est : x1 2 x2 x3 2 .
4 x x x 5
1 2 4
x1 , x2 , x3 , x4 0
Max Z C 'T X '
Sujet à :
Son écriture matricielle est : .
A ' X ' B
X '0
3 x1
1 x2 1 2 1 0 2
avec : C ' , X ' , A' et B .
0 x3 4 1 0 1 5
0
x4
1.4 Modélisation d’un problème
Afin de bien illustrer les mécanismes de la programmation linéaire, on
débute avec un exemple simple à deux variables.
1.4.1 Exemple
Un industriel veut fabriquer deux produits P1 et P2 à partir de trois
composants (ressources) : , et .
Le produit P1 rapporterait un bénéfice de 8 dinars et consommerait 5 unités
de , 2 unités de et 1 unité de .
Le produit P2 rapporterait un bénéfice de 6 dinars et consommerait 3 unités
de , 3 unités de et 3 unités de .
Les disponibilités des composants par semaine sont : 3000 unités de , 2400
unités de et 1800 unités de .
Combien de produit P1 et P2 devrait-il fabriquer pour maximiser le bénéfice ?
1.4.2 Modélisation
Pour modéliser le problème par un programme linéaire :
1. Définir tout d’abord les variables de décision, pour cela on note par :
- x1 : le nombre de produit P1 qu’on cherche à fabriquer.
3
Pente : .
5
Maximiser : augmenter Z (en augmentant Z graduellement, on obtient
une série de droites parallèles. Il suffit donc d’augmenter Z jusqu’à ce
que la droite obtenue soit tangente à l’ensemble des solutions
réalisables pour déterminer la ou les solutions optimales).
Exemple :
Max Z 3x1 5 x2
sujet à :
x1 4
2 x2 12
3x1 2 x2 18
x1 , x2 0
x2
x2
9
x1 4 Z=36
2 x2 12 (2,6)
6
6
Z=20
(4,3)
(4,3)
Z=10
x1 x1
4 6 3x1 2 x2 18
4
Domaine
réalisable
2.3.1 Introduction
La méthode du simplexe est une technique algébrique qui permet de trouver
la solution optimale d’un programme linéaire d’une façon ordonnée et concise.
C’est une méthode itérative qui se base sur le fait de partir d’une solution de base
réalisable (solution de départ nulle) et d’augmenter (si on maximise) ou de
diminuer (si on minimise) la valeur de la fonction objectif.
Comme il a été déjà présenté dans le chapitre 1, un programme linéaire
général peut être formulé comme suit : On désire trouver la valeur de n variables
n
j 1
aij x j xn i bi , i 1,..., k
n
aij x j xn i bi , i k 1,..., l
j 1 (2.4)
n
aij x j xn i bi , i 1,..., m
j 1
x 0, j 1,..., n
j
Ce système d’équations linéaires s’écrit, sous forme matricielle :
AX x1a1 x2a2 ... xnl anl B
Une solution optimale de base est une solution réalisable de base qui rend
p
optimale la fonction économique Z c j x j c1 x1 c2 x2 ... cn xn 0 xn1 ... 0 xn l .
j 1
2 x1 3 x2 x4 2400
x 3x x5 1800
1 2
x1 , x2 , x3 , x4 , x5 0
Une solution réalisable de base est obtenue en annulant les variables hors
base et en résolvant le système ainsi déterminé pour avoir la valeur des variables
de base. La base est une m m matrice inversible fabriquée en extrayant m
colonnes linéairement indépendantes de la matrice A. En choisissant
x3 , x4 et x5 comme variables de base initiales, on obtient une solution réalisable de
base de départ immédiatement, soit :
x1 x2 0, x3 3000 ; x4 2400 ; x5 1800 .
On peut dresser le tableau suivant :
Variables x1 x2 x3 x4 x5 b
de base
x3 5 3 1 0 0 3000
doit être non négatif
x4 2 3 0 1 0 2400
x5 1 3 0 0 1 1800
Z -8 -6 0 0 0 0
Base initiale
(1 par colonne, 0 ailleurs)
. a1r 0 b1
.
.
xk . . . air . . . 1 . . . bi
.
.
.
amr 0 bm
bi
D’où xr .
air
Pour obtenir une solution réalisable au prochain tableau, il faut sortir de la
base la variable qui donne la plus petite valeur de xr , c'est-à-dire la première
variable qui prend une valeur non réalisable lorsqu’on augmente xr .
b b
Cette étape consiste donc à chercher : xr min i air 0 s
i , i 1,..., m a
ir asr
Où s est l’indice de la rangée avec le plus petit rapport. La variable de base
dans la rangée s tu tableau est appelée variable sortante de la base.
Le coefficient, à l’intersection de la colonne de la variable rentrante et la
ligne de la variable sortante s’appelle pivot.
Appliquons ceci à notre exemple :
x1 x2 x3 x4 x5 b Limitation
x3 3000
5 3 1 0 0 3000 600
5
x4 2400
2 3 0 1 0 2400 1200
2
x5 1800
1 3 0 0 1 1800 1800
1
Z -8 -6 0 0 0 0
ar
a ' k a k ask
asr
r k
ar ak `
asr ask s
x1 x2 x3 x4 x5 b Limitation
6 8
La rangée des coûts réduits (dernière rangée) indique que Z x2 x3 4800 .
5 5
Puisque x2 et x3 sont les variables hors-base, elles sont égales à zéro et on
obtient Z 4800 . Continuons la résolution de même, on obtient le tableau suivant :
x1 x2 x3 x4 x5 b
Tous les coûts réduits sont positifs ou nuls, on termine. La solution optimale
obtenue est :
x1 300
x2 500
x3 x5 0
x4 300
Z max 5400
Application :
Un industriel possède, dans l’un de ses ateliers de production, trois machines
M1, M2 et M3 qui sont partiellement inutilisées :
- M1 est libre 18 heures par semaine.
- M2 est libre 8 heures par semaine.
- M3 est libre 14 heures par semaine.
Pour mieux rentabiliser ces machines on envisage de fabriquer deux produits
P1 et P2 dont l’écoulement sur le marché ne poserait pas de problème.
- Chaque unité de P1 rapporterait 2 dinars et consommerait : 1 heure de M1,
1 heure de M2 et 2 heures de M3.
- Chaque unité de P2 rapporterait 3 dinar et consommerait : 3 heures de M1,
1 heure de M2 et 1 heure de M3.
( *** )
Le (PL) permettant de maximiser ses bénéfices est :
Max Z 2 x1 3x2
sujet à :
x1 3 x2 18
.
x1 x2 8
2 x1 x2 14
x1 , x2 0
La résolution par la méthode du simplexe nous conduit au tableau final
suivant :
x1 x2 x3 x4 x5 b
x2 0 1 1/2 -1/2 0 5
x1 1 0 -1/2 3/2 0 3 Solution optimale
x5
0 0 1/2 -5/2 1 3
Z 0 0 1/2 3/2 0 21
sujet à :
a11 x1 a12 x2 ... a1n xn b1
a21 x1 a22 x2 ... a2 n xn b2
a31 x1 a32 x2 ... a3 n xn b3
x j 0, j 1,..., n
La forme standard est :
Z c1 x1 c2 x2 ... cn xn 0 xn 1 0 xn 2 à optimiser (max ou min).
Toutefois, pour que la solution obtenue soit valide, tous les yi doivent être
égal à zéro dans le tableau final (doivent être hors base). Pour s’assurer que ces
x1 , x2 , y1 , y2 0
x1 x2 x3 y1 y2 b
y1 1 1 0 1 0 10 (M)
y2 1 0 -1 0 1 4 (M)
3 2 0 0 0 0
-Z
0 0 0 M M 0 (-) (-)
Cette expression n’est pas fonction des variables hors-base seulement et, par
conséquent il faut la transformer pour que les coefficients de y1 et y2 soient nuls.
Ceci permet d’éviter que l’une des variables artificielle soit une variable
rentrante dans la base. Le tableau devient :
x1 x2 x3 y1 y2 b Limitation
y1 1 1 0 1 0 10 10
y2 1 0 -1 0 1 4 4
3 2 0 0 0 0
-Z
-2M -M M 0 0 -14M
On
peut commencer la résolution. La première itération donne :
x1 x2 x3 y1 y2 b Limitation
y1 0 1 1 1 6 6
x1 1 0 -1 0 4 Pas de limitation
0 2 3 0 -12
-Z
0 -M -M 0 -6M
Une fois qu’une variable artificielle est sortie de la base, on peut négliger la
colonne correspondante dans le tableau.
La deuxième itération donne :
x1 x2 x3 y1 y2 b
x2 0 1 1 6
x1 1 0 -1 4
0 0 1 -24
-Z
0 0 0 0
On atteint la solution optimale lorsque tous les coûts réduits sont non
négatifs, c'est-à-dire que tous les coefficients de la première ligne de (-Z) sont non
négatifs et que tous les coefficients de sa deuxième ligne sont nuls.
Dans ce cas, la solution optimale obtenue est :
x1 4, x2 6, x3 0
Z min 24
Exercice :
Résoudre le (PL) suivant :
Max Z 3 x1 4 x2 x3
sujet à :
8
x1 2 x2 2 x3
3
x 2 x 3x 7
1 2 3
3
x1 , x2 , x3 0
Correction :
En introduisant les variables artificielles le système devient :
Max Z 3 x1 4 x2 x3 My Min ( Z ) 3 x1 4 x2 x3 My
sujet à :
8
x1 2 x2 2 x3 x4
3
7
x1 2 x2 3 x3 x5 y 3
x1 , x2 , x3 , x4 , y 0
La solution de base de départ est :
x1 x2 x3 x5 0
8
x4 .
3
7
y 3
x1 , x2 0
x4 1 1 1 0 0 1
y 0 0 -2 -1 1 2
Z 0 5 3 0 0 3
0 0 2M M 0 -2M
Étant donné que y est dans la base, on conclut qu’il n’y a pas de solution
réalisable.
x1 , x2 0
x1 x2 x3 x4 x5 b
x2 0 1 -1 2 0 3
x1 1 0 -2 2 0 2 Solution optimale
x5 0 0 2 -2 1 4
Z 0 0 0 2 0 4
Primal Dual
Max Z 8 x1 6 x2
sujet à : Min W 3000 y1 2400 y2 1800 y3
5 x1 3 x2 3000 sujet à :
5 y1 2 y2 y3 8
2 x1 3x2 2400 3 y 3 y 3 y 6
x1 3x2 1800 1 2 3
y1 , y2 , y3 0
x1 , x2 0
Ces programmes sont ainsi caractérisés par :
- la fonction économique d’un des deux problèmes est maximisée et celle
de l’autre est minimisée.
- Dans le problème de maximisation on a des contraintes de type ‘’ ’’ et
dans le problème de minimisation on a des contraintes de type ‘’ ’’.
- La matrice des coefficients de l’un des problèmes est la matrice
transposée de l’autre.
- Le coté droit des contraintes de l’un des problèmes est la fonction
économique de l’autre.
- À chaque contrainte du primal correspond une variable du dual et vice
versa.
Pour mieux comprendre la dualité, nous présentons deux types de problèmes
pouvant être rencontrés :
Avec :
X x j : vecteur des quantités fabriquées.
CT Y T A X .
Si 0 , on gagne plus en travaillant, donc il doit produire.
Si 0 , on gagne plus en revendant, donc il doit revendre et ne pas produire.
Exemple :
Un industriel possède, dans l’un de ses ateliers de production, trois machines
M1, M2 et M3 qui sont partiellement inutilisées :
- M1 est libre 18 heures par semaine.
- M2 est libre 8 heures par semaine.
- M3 est libre 14 heures par semaine.
Pour mieux rentabiliser ces machines on envisage de fabriquer deux produits
P1 et P2 dont l’écoulement sur le marché ne poserait pas de problème.
- Chaque unité de P1 rapporterait 1 dinars et consommerait : 1 heure de M1,
1 heure de M2 et 2 heures de M3.
- Chaque unité de P2 rapporterait 2 dinar et consommerait : 3 heures de M1,
1 heure de M2 et 1 heure de M3.
Le (PL) permettant de maximiser ses bénéfices est :
Max Z x1 2 x2
sujet à :
x1 3 x2 18
.
x1 x2 8
2 x1 x2 14
x1 , x2 0
1 1 1
On lui propose de louer ses trois machines aux prix Y T , , l’heure de
2 4 2
fonctionnement. Est-ce que la proposition intéresse le producteur ou non ?
( *** )
Calculons ?
CT Y T A X .
1 3
1 1 1 x
C 1 2 ; A 1 1 ; Y T , , et X 1
T
2 1 2 4 2 x2
1 3
1 1 1 x1 7 9 x1
1 2 1 1 x 1 2
2 4 2 2 4 4 x2
2 1
3 1 x
1 0
4 4 x2
Quelles sont les quantités des bruts B1 et B2 qu’on doit utiliser pour
minimiser les dépenses.
Soient :
x1 : quantité de B1 utilisée.
x2 : quantité de B2 utilisée.
La dépense à minimiser est : W 20 x1 25 x2 .
Les contraintes sont :
0,1x1 0,5 x2 0,5 x1 5 x2 5
0,1x 0, 2 x 0, 4 x 2x 4
1
1 2 2
0,3 x1 0, 2 x2 0, 6 3 x1 2 x2 6
x1 , x2 0 x1 , x2 0
Avec :
X x j : vecteur des quantités de bruts de produit de base consommé.
CT Y T A X .
m
Si yi est libre alors aij xi c j
i 1
Exemple1 :
Primal Dual
Max Z x1 2 x2
sujet à : Min W 18 y1 8 y2 14 y3
x1 3 x2 18 sujet à :
y1 y2 2 y3 1
x1 x2 8 3 y y y 2
2 x1 x2 14 1 2 3
y1 , y2 , y3 0
x1 , x2 0
Exemple2 :
Primal Dual
Min Z 2 x1 2,5 x2
sujet à : Max W 5 y1 4 y2 6 y3
x1 5 x2 5 sujet à :
y1 y2 3 y3 2
x1 2 x2 4 5 y 2 y 2 y 2,5
3x1 2 x2 6 1 2 3
y1 , y2 , y3 0
x1 , x2 0
Exemple3 : (Forme non standard)
Min Z x1 x2 x3
sujet à :
x1 3x2 4 x3 5
Primal : Dual ?
x1 2 x2 3
2 x2 x3 4
x1 , x2 0 ; x3 est libre
2 x2 x3 4
x1 , x2 0 ; x3 est libre
x3 est libre, on peut l’écrire sous la forme : x3 x3 x3 , où x3 , x3 0 .
Le programme primal devient donc :
Min Z x1 x2 x3 x3
sujet à :
x 3x 4 x 4 x 5
1 2 3 3
x1 3 x2 4 x3 4 x3 5
x 2 x 3
1 2
2 x2 x3 x3 4
x1 , x2 , x3 , x3 0
La 1ère contrainte est de type ‘’=’’, ceci engendre que la première variable
duale est libre. La troisième variable du primal est libre ceci engendre que la
troisième contrainte du dual est de type ‘’=’’.
Le problème dual est donc le suivant :
Max W 5 y1 5 y1 3 y2 4 y3
Max W 5 y1 5 y1 3 y2 4 y3
sujet à :
y y y 1 sujet à :
1 1 2
y1 y2 1
3 y1 3 y1 2 y2 2 y3 1
3 y1 2 y2 2 y3 1
4 y1 4 y1 y3 1 4y y3 1
4 y 4 y y3 1 1
1 1
y2 , y3 0 ; y1 est libre
y1 , y1 , y2 , y3 0
3.5 Théorème de la dualité
En écritures matricielles, le primal et le dual correspondant auront les
formes suivantes :
Primal Dual
? X 0 ? Y 0
T
AX B A Y C Y T A CT
C T X Z max BT Y W min
Si on multiplie les contraintes du primal par le vecteur Y T et celles du dual
par le vecteur X , on peut écrire :
Y T AX Y T B et Y T AX C T X
Ceci implique que : C T X Y T AX Y T B CT X Y T B .
À l’optimal : C T X Y T B Z max W min
Ceci relève une propriété importante des couples de problèmes duals :
Si le primal ou le dual a une solution optimale finie, l’autre problème a aussi
une solution optimale finie et les valeurs optimales de leurs fonctions
économiques sont égales.
3.6 Théorème de complémentarité des écarts
Soit le problème primal suivant :
a11 x1 a12 x2 ... a1n xn xn 1 b1
a21 x1 a22 x2 ... a2 n xn xn 2 b2
am1 x1 am 2 x2 ... amn xn xn m bm
x j 0
c1 x1 c2 x2 ... cn xn W min
b1 y1 b2 y2 ... bm ym Z max
m
m
m
m m
c1 ai1 yi x1 c2 ai 2 yi x2 cn ain yi xn xn i yi W min bi yi
i 1 i 1 i 1 i 1 i 1
ym1 Z max
m
ym1 x1 ym 2 x2 ym n xn xni yi W min Z max
i 1
n m
À l’optimal W Z 0 ym j x j xni yi 0
j 1 i 1
xn i yi 0
x j ym j 0
y1 , y2 , y3 0
x1 , x2 0
Si on les écrit sous la forme standard on obtient :
Primal Dual
Min Z 2 x1 3x2
sujet à : Max W 3 y1 5 y2 4 y3
2 x1 x2 x3 3 sujet à :
2 y1 2 y2 y3 y4 2
2 x1 x2 x4 5 y y 4y y 3
x1 4 x2 x5 4 1 2 3 5
yi 0, i 1,...,5
x j 0, j 1,...,5
x1 3
La solution est elle optimale ?
x2 1
La complémentarité des écarts permet d’écrire :
y1 2 x1 x2 3 0
0 y1 0
y2 2 x1 x2 5 0 y2 0
0 y 0
3
y
3 1 x 4 x2 4 0
0
x1 2 2 y1 2 y2 y3 0
2 0 2 y2 0 0
et
x2 3 y1 y2 4 y3 0
3 0 y2 0 0
y2 1
D’où :
y2 3
La solution est non optimale.
26
x1 9
Essayons maintenant la solution ?
x 7
2 9
La complémentarité des écarts permet d’écrire :
y1 2 x1 x2 3 0
0 y1 0
y2 2 x1 x2 5 0 y2 0
0 y 0
3
y3 x1 4 x2 4 0
0
x1 2 2 y1 2 y2 y3 0
et
x2 3 y1 y2 4 y3 0
5
2 0 2 y2 y3 0 y2 9
3 0 y2 4 y3 0 y 8
3 9
La solution est optimale.
Cette propriété peut être énoncée pour n’importe quelle paire de problèmes
duals. Elle est très importante car elle permet d’obtenir la solution optimale d’un
des programmes à partir du tableau final de l’autre programme.
Une fois écrit sous forme standard cette paire de programmes duals possède
le même nombre de variables dans le primal et dans le dual. À chaque contrainte
du primal sont associées une variable d’écart primale et une variable de décision
duale. De même, à chaque contrainte du dual sont associées une variable d’écart
duale et une variable de décision primale. Il existe donc une correspondance
biunivoque entre les variables de décisions primales et les variables d’écart
duales d’une part, et entre les variables de décisions duales et les variables
d’écart primales d’autre part.
Dans cet exemple on a les correspondances suivantes :
x1 y4 ; x2 y5 et y1 x3 ; y2 x4 ; y3 x5 .
Nous avons dit que nous pouvons obtenir la solution optimale de l’un des
programmes à partir du tableau final de l’autre programme. Examinons ceci pour
la paire de programmes duals suivante :
Primal Dual
Max Z 2 x1 3x2
sujet à : Min W 18 y1 8 y2 14 y3
x1 3 x2 18 sujet à :
y1 y2 2 y3 2
x1 x2 8 3 y y y 3
2 x1 x2 14 1 2 3
y1 , y2 , y3 0
x1 , x2 0
Si on les écrit sous la forme standard on obtient :
Primal Dual
Max Z 2 x1 3 x2
sujet à : Min W 18 y1 8 y2 14 y3
x1 3 x2 x3 18 sujet à :
y1 y2 2 y3 y4 2
x1 x2 x4 8 3 y y y y 3
2 x1 x2 x5 14 1 2 3 5
yi 0, i 1,...,5
x j 0, j 1,...,5
Le tableau final du primal est :
x1 x2 x3 x4 x5 b
x2 0 1 1/2 -1/2 0 5
x1 1 0 -1/2 3/2 0 3 Solution optimale
x5 0 0 1/2 -5/2 1 3
Z 0 0 1/2 3/2 0 21
x1 x2 x3 x4 x5 x6 b
x4 -1/4 -1/2 -1/4 1 0 0 -3
x5 -2/5 -3/10 -3/10 0 1 0 -2 négatifs
x6 -2/5 -2/5 -1/5 0 0 1 -2,5
-Z 15 20 12 0 0 0 0
non négatifs
Dans ce tableau les coûts réduits de départ sont non négatifs et le coté droit
est négatif, ce qui implique que la solution de base duale correspondante est
réalisable et que la solution primale n’est pas réalisable. Par conséquent il
continuer la résolution jusqu’à ce que le coté droit devient non négatif, c'est-à-dire
jusqu’à ce que la solution primale devienne réalisable, ce qui revient à résoudre le
problème dual.
2ème étape :(choix de la variable sortante)
Identifier la variable de base qui est la plus négative et la choisir comme
variable sortante de la base.
3ème étape :(recherche de limitation)
Si la ligne s est celle de la variable sortante, choisir comme nouvelle variable
de base celle qui correspond à :
cj c
xr min asj 0 r
j a asr
sj
Si tous les asj* ne sont pas négatifs, alors le programme dual est sans borne.
Dans cet exemple la variable la plus négative est x4 (variable sortante). La
variable rentrante, qui correspond à la plus petite valeur de la limitation
20
( 40 ), est x2.
( 1 2)
4ème étape : (transformation du tableau)
Changer de base, résoudre pour trouver la valeur des nouvelles variables de
base en transformant le tableau comme dans la méthode primale du simplexe.
Retourner à la deuxième étape.
Ce qui donne le tableau suivant :
x1 x2 x3 x4 x5 x6 b
x2 1/2 1 1/2 -2 0 0 6
x5 -1/4 0 -3/20 -3/5 1 0 -1/5
x6 -1/5 0 0 -4/5 0 1 -1/10
-Z 5 0 2 40 0 0 -120
Limitation 20 - 40/3 200/3 - -
x1 x2 x3 x4 x5 x6 b
x2 0 1 0 -8/3 10/3 -5/3 5,5
x3 0 0 1 -8/3 -20/3 25/3 1/2 Solution optimale
x1 1 0 0 4 0 -5 1/2
sujet à :
AX B .
sujet à :
AT Y C .
Exemple :
Max Z 3 x1 6 x2 2 x3
sujet à :
3 x1 4 x2 x3 20 (4.1)
x 3 x 2 x 10
1 2 3
x1 , x2 , x3 0
x1 , x2 , x3 0
x1 , x2 0
x1 x2 x3 x4 b
x3 1 0 1 0 4
x2 3/2 1 0 1/2 9
Z -3/2 0 0 1/2 9
Ce qui n’est plus optimal, puisque le coût réduit, associé à x1, est négatif.
On obtient la nouvelle solution optimale en exécutant une itération
supplémentaire de la méthode simplexe.
x1 x2 x3 x4 b
x3 1 0 1 0 4 + 0 (- 4) = 4
x2 3/2 1 0 1/2 9 + ½ (- 4) = 7
Z 9/2 0 0 5/2 45 + 5/2 (- 4) = 35
Comme le coté droit est non négatif, ce tableau set optimal. Si l’un ou
plusieurs des éléments du coté droit devient négatif, il faut ré-optimiser avec
l’algorithme dual du simplexe.
x3 1 0 1 0 4 4
x2 1/2 1 0 1/2 9 18
Z -1/2 0 0 5/2 45
x1 x2 x3 x4 b
x1 1 0 1 0 4
x2 0 1 -1/2 1/2 7
Z 0 0 1/2 5/2 47
x1 x2 x3 x4 x5 b
x3 1 0 1 0 0 4
x2 3/2 1 0 1/2 0 9
x5 1 2 0 0 1 12
Z 9/2 0 0 5/2 0 45
x1 x2 x3 x4 x5 b
x3 1 0 1 0 0 4
x2 3/2 1 0 1/2 0 9
x5 -2 0 0 -1 1 -6
Z 9/2 0 0 5/2 0 45
Limit. 9/4 5/2
x3 0 0 1 -1/2 1/2 1
x1 1 0 0 1/2 -1/2 3
Max Z 3 x1 5 x2 0 x5 Max Z 3 x1 5 x2 4 x5
sujet à : sujet à :
x1 0 x5 4 x1 2 x5 4
3 x 2 x 0 x 18 3 x 2 x x 18
1 2 5
1 2 5
x1 , x2 , x5 0 x1 , x2 , x5 0
x3 1 0 1 0 1 (2) + 0 (1) 4
Soit :
x1 x2 x3 x4 x5 b
x3 1 0 1 0 2 4
x5 1/2 0 1/2 0 1 2