Académique Documents
Professionnel Documents
Culture Documents
BOUKERRAM
FIN
Oui
Tous les Cj <=0 La solution optimale est
atteinte
Non
Non
Changement de base
Détermination des vecteurs entrant et sortant
Xk entre si Ck =max(Cj tel que Cj >0) pour j=1..n
Xr sort si b r/A rk = Min (b i /A ik tel que A ik >0) pour i=1..m
Dans le cas d’un programme linéaire à minimiser nous avons deux possibilités
Soit MIN(Z) = - MAX(Z) et l’algorithme ne change pas.
Soit modifier l’Algorithme comme suit
L’arrêt se fait quand tous les Cj sont >=0
Le polyèdre est non borné quand il existe un Cj <0/ tous les A ij <=0.
Le changement de base s’effectue en choisissant comme vecteur sortant Ck = Max (|Cj |/ Cj <0)
1
Cours ROP 20021-2022 Réalisé par S.BOUKERRAM
Max( Z ) 5 X 1 8 X 2 Max( Z ) 5 X 1 8 X 2
X1 X 2 2 X 1 X 2 E1 2
( P) X 1 2 X 2 0 ( PS ) X 1 2 X 2 E 2 0
4 X 2 1 4 X 2 E3 1
X 1 X 1
X 1, X 2 0
X 1 , X 2 , E1 , E 2 , E 3 0
Résolution par le Simplexe :
La première solution de base est évidente X(0,0,0,2,0,1) donc nous pouvons appliquer la méthode du simplexe.
Base X1 X2 E1 E2 E3 B
E1 1 1 1 0 0 2
E2 1 -2 0 1 0 0 X2
E3 -1 4 0 0 1 1
Z 5 8 0 0 0 0 2
Base X1 X2 E1 E2 E3 B
E1 5/4 0 1 0 -1/4 7/4
E2 1/2 0 0 1 1/2 1/2
1/2 C(1,1/2)
X2 -1/4 1 0 0 1/4 1/4
Z 7 0 0 0 -2 -2
1/4 D
Base X1 X2 E1 E2 E3 B
E1 0 0 1 -5/2 -3/2 1/2 X1
X1 1 0 0 2 1 1 1 2
X2 0 1 0 1/2 1/2 1/2
Z 0 0 0 -14 -9 -9
Il existe un Cj >0 tel que tous les Aij <=0 donc le problème n’admet pas de solutions optimales finis (polyèdre non
borné) MaxZ +∞
2
Cours ROP 20021-2022 Réalisé par S.BOUKERRAM
c) Apparition de la dégénérescence
Max( Z ) X 1 X 2 Max( Z ) X 1 X 2
2
2 X 1 X 2 2 X 1 X 2 E1 2
( P) ( PS )
3 X 1 X 2 3 3 X 1 X 2 E 2 3
X 1, X 2 0
X 1 , X 2 , E1 , E 2 0
Arrêt Tous les Cj <=0 ; la solution Optimale est atteinte. X=(0,2,0,1) et Zmax = 2
Nous pouvons constater que le 2eme et 3ème tableau du simplexe ont donnée la même solution de base qui est
X=(1,0,0,0) qui est une solution de base dégénérée.
Le problème de dégénérescence apparaît quand un Point extrême (sommet) correspond à l’intersection de plus de
n hyperplans (pour n=2, l’hyperplan est une droite).
2 x1 x 2 2
3 x1 x 2 3
x 0
2
Dans notre cas par le sommet (1,0) passe n+1 droites (3).
Ainsi un point extrême A d’un polyèdre correspond à une solution de base dégénérée si par A passe plus de N
hyperplans définissant le polyèdre.
Chaque pivotage ne va pas nécessairement conduire à un nouveau point extrême du polyèdre. Possibilité de boucler
au même point et la fonction objectif Z ne change pas.
Dans ce cas-là il faudra appliquer un autre algorithme du simplexe qui permet d’assurer la convergence ou de
détecter l’existence d’un cycle.
On dit qu’il y’ a un cycle si on revient à une base déjà explorer.
En réalité le cas de cycle n’existe pas ; tous les PLs qui présentent des « CYCLES » sont des PLs construits au
laboratoire par des Matheux comme contre exemple à l’algorithme.
3
Cours ROP 20021-2022 Réalisé par S.BOUKERRAM
d) Unicité de la solution
Max( Z ) 2 X 1 X 2 Max( Z ) 2 X 1 X 2
2 2
X 2 X 2 E1
( P) ( PS )
4 X 1 2 X 2 8 4 X 1 2 X 2 E 2 8
X 1 , X 2 0 X 1 , X 2 , E1 , E 2 0
X=1.X1+2.X2 est solutions optimales d’où le PL admet une infinité de solutions optimales
.
Ainsi, si la solution de base optimale n’est pas dégénérée et si pour une Variable Hors base Xj, Cj=0 alors Xj peut
entrer en base. Dans ce cas nous pouvons dire qu’il existe une infinité de solutions optimales.
4
Cours ROP 20021-2022 Réalisé par S.BOUKERRAM
- Le problème à résoudre pour trouver une solution de base initiale est le suivant :
Min( w) yi
( Py ) A. X I . y B
X ,Y 0
Ainsi pour résoudre un Problème général de PL, nous pourrons utiliser la méthode des deux phases .
Phase I :
Introduire les variables artificielles Yi si nécessaire et minimiser W=Yi par l’algorithme du simplexe.
Si à l’optimum W>0, on s’arrête, car il n’ya pas de solution admissible au problème de PL.
Si W=0, le problème de PL a des solutions admissibles. On cherche à éliminer de la base toutes les variables
artificielles Yi, par pivotage.
Premier cas : si on a réussi à éliminer toutes les variables artificielles, on élimine la ligne de W et les colonnes des
variables artificielles. On passe à la seconde phase.
Second cas : s’il reste des variables artificielles dans la base (leur valeur est nécessairement nulle), alors les lignes
associées à ces variables sont des contraintes redondantes que l’on peut éliminer. On procède ensuite comme dans
le premier cas.
Exemples
a)Soit le PL suivant à résoudre
Max( Z ) 2 X 1 X 2 X 1 2 X 2 X 3 y1 5
2
X 1 X2 X3 5 3 X 1 2 X 2 3 X 3 y 2 2
( P) ( P' )
3 X 1 2 X 2 3 X 3 2 Min( w) y1 y 2
X i 0 X i , y 0
i
Le PL n’a pas de solutions initiales évidentes, on doit La solution évidente est (0,0,0,1,1) ; Les variables
ajouter des variables artificielles, le PL à résoudre sera doivent être éliminées de la fonction objectif.
comme suit : Y1 =5-X1 -2X2 -X3
Y2 =2-3X1 +2X2 -3X3
La fonction objectif devient : Min(w)-7=-4X1 +4X3
5
Cours ROP 20021-2022 Réalisé par S.BOUKERRAM
Base X1 X2 X3 y1 y2 B
y1 1 2 1 1 0 5
y2 3 -2 3 0 1 2
w -4 0 -4 0 0 -7
Z 2 1 0 0 0 0
y1 0 8/3 0 1 13/3
X1 1 -2/3 1 0 2/3
w 0 -8/3 0 0 -13/3
Z 0 7/3 -2 0 -4/3
X2 0 1 0 13/8
X1 1 0 1 7/4
w 0 0 0 0
Z 0 0 -2 -41/8
A chaque fois qu’une variable artificielle sort de la base, on l’élimine du tableau du simplexe.
On a obtenu Min(w)=0 et on a une solution de base (7/4,13/8,0)
Puisqu’aucune des variables artificielles n’est dans la base. La phase I est terminée. On élimine La ligne de w pour
Commencer la Phase II.
Phase II : Dans ce cas, On constate que la solution de base initiale est déjà optimale (Cj<=0). On a donc terminé.
b) Soit le PL suivant :
Max( Z ) CX
X 1 X 2 X 3 y1 1
X 1 X 2 X 3 1
( P) X 2 X 4 y2 1
X 2 X 4 1 ( P' )
X i 0 Min( w) y1 y 2
X i , y 0
i
Le PL n’a pas de solutions initiales évidentes, on doit La solution évidente est (0,0,0,0,1,1) ; Les variables
ajouter des variables artificielles, le PL à résoudre sera doivent être éliminées de la fonction objectif.
comme Y1 =1-X1 -X2 -X3
suit Y2 =1-X2 -X4
La fonction objectif devient :
La Min(w)-2=-X1 -2X2 -X3 -X4
Base X1 X2 X3 X4 y 1 y2 B
y1 1 1 1 0 1 0 1
y2 0 1 0 1 0 1 1
w -1 -2 -1 -1 0 0 -2
X2 1 1 1 0 0 1
y2 -1 0 -1 1 1 0
w 1 0 1 -1 0 0
On constate que w=0, y2 est encore une variable artificielle de base mais o n pourrait la remplacer par X4 et l’on
obtiendrait une solution de base admissible du système initiale (X1=0, X2=1, X3=X4=0). Cette solution est
dégénérée.
Généralement quand w=0 et que certaines variables artificielles sont des variables de base (avec valeur 0), on
obtient une solution de base admissible dégénérée si on peut éliminer ces variables artificielles en pivotant (on ne
s’occupe pas du signe de Cj dans la colonne pivot).
6
Cours ROP 20021-2022 Réalisé par S.BOUKERRAM
Base X1 X2 y1 y2 B
y1 1 1 1 0 2
y2 2 2 0 1 4
w -3 -3 0 0 -6
X1 1 1 0 2
y2 0 0 1 0
w 0 0 0 0
On a obtenu w=0. Toutefois y2 ne peut être éliminé de la base (le seul pivot possible est nul) ; cela signifie qu’il
n’est pas possible de trouver une base ne comportant que les colonnes X1 et X2.
Autrement dit les vecteurs X1 et X2 sont linéairement dépendant. Le système admet des solutions puisque w=0. Il
est donc redondant. On peut ôter la ligne correspondant à la variable artificielle de base y2.
c) soit le PL (P) à résoudre et (P’) sont équivalent après introduction des variables artificielles :
Base X1 X2 y1 y2 B
y1 1 1 1 0 8
y2 1 2 0 1 7
w -2 -3 0 0 -15
y1 1/2 0 1 9/2
X2 1/2 1 0 7/2
w -1/2 0 0 -9/2
y1 0 -1 1 1
X1 1 2 0 7
w 0 1 0 1
La solution optimale est donc w=1.
Le système initial n’a donc pas de solution (de base) admissible (réalisable).
Remarque
Lorsqu’il s’agit de déterminer si un système d’inégalités linéaires admet des solutions, on peut utiliser la phase I
de la méthode à deux phases.
L’algorithme du simplexe est ainsi un outil efficace pour tester la compatibilité d’un système d’inégalité.