Sunteți pe pagina 1din 38

Analyse de sensibilit et

Post-optimalit
(Chapitre VI)

Introduction
Est-ce que la solution optimale est sensible aux paramtres du PL ?
Pourquoi se poser cette question ?
Les paramtres utiliss ne sont que des estimations
Dans un environnement dynamique, ceux-ci peuvent changer
rgulirement.
Une analyse de scnarios (what-if) peut permettre de proposer des
changements aux paramtres.
L'analyse post-optimale permet de dterminer la sensibilit d'un PL par
rapport aux donnes :
Une faible variation des donnes entraine-t-elle un changement important de
la solution optimale ?
L'analyse post-optimale permet de dterminer des intervalles de variations
des donnes pour lesquels la base optimale B n'est pas modifie.
2

Introduction
Changement affectant loptimalit
Changement dans les coefficients de la fonction objectif
Introduction/suppression de variables de dcision
Modification des coefficients technologiques ( coefficients de
gauche des contraintes)

Changement affectant la nature ralisable de la solution


Changement dans les seconds membres des contraintes
Introduction/suppression de contraintes

Une solution de base optimale est dite stable si lensemble


des variables de base loptimum ne change pas, mme si
les valeurs de ces variables de base sont modifies.
3

Variation des coef. de la fonction objectif cj


c = c +
La base reste ralisable car B-1b 0 est indpendant de c
La base reste optimale si :
j = cH - cBB-1H 0 (en cas de maximisation)
j = cH - cBB-1H 0 (en cas de minimisation)
Si les conditions doptimalit ne sont pas satisfaites, on
continue loptimisation pour trouver la solution optimale
partir de la base courante.
Dterminer un intervalle dans lequel peut varier le
coefficient cj dune variable de dcision sans que la solution
optimale ne change: Intervalle doptimalit
4

Variation des coef. de la fonction objectif cj


Modification du cj dune variable de dcision hors base :

cj = cj + .
La modification apporte au tableau naffectera quune seule case,
celle du cot marginal de xj : j
Modification du cj dune variable de dcision de base :

cj = cj +
La modification apporte au tableau affectera tous les cots
marginaux des variables hors base: j .

Variation des coef. de la fonction objectif cj


Exemple:
Max Z = 300 x1 + 200 x2 + 150 x3
x1 + x2 + x3 10 (Production minimale)
x1 + 2x2 + x3 20
(Sciage)
2 x1 + x2 + x3 22 (Assemblage)
x1 0, x2 0, x3 0

300

200

150

VB

x1

x2

x3

s1

s2

s3

bi

200

x2

1/3

2/3

-1/3

s1

-1/3

1/3

1/3

300

x1

1/3

-1/3

2/3

-50/3

-100/3

- 400/3

3600

Variation des coef. de la fonction objectif cj


Considrons une variation du coefficient C3 de 150 150 +
300

200

150+

VB

x1

x2

x3

s1

s2

s3

bi

200

x2

1/3

2/3

-1/3

s1

-1/3

1/3

1/3

300

x1

1/3

-1/3

2/3

-50/3+

-100/3

- 400/3

3600

Le tableau reste optimal si -50/3+ 0 cd si 50/3


Intervalle doptimalit: C3[0, 500/3]
Si C3> 500/3, la variable x3 entre dans la base et il faut

trouver la nouvelle solution optimale.


7

Variation des coef. de la fonction objectif cj


Considrons une variation du coefficient C1 de 300 300 +
300+

VB x1

200

150

x2

x3

s1 s2

s3

bi

200

x2

1/3

2/3

-1/3

s1

-1/3

1/3

1/3

300+

x1

1/3

-1/3

2/3

-50/3-/3 0

-100/3+/3

- 400/3-2/3

3600+8

Afin de garder la mme solution optimale, il faut que:


-50/3-/3 0
-100/3+/3 0
- 400/3- 2/3 0
Do: -50 100
Intervalle doptimalit: C1 [250, 400]
La valeur du profit change: Z [3200, 4400].
8

Variation des coef. de la fonction objectif cj


Considrons une variation du coefficient C2 de 200 200 +
300

VB x1

200+

150

x2

x3

s1 s2

s3

bi

200+

x2

1/3

2/3

-1/3

s1

-1/3

1/3

1/3

300

x1

1/3

-1/3

2/3

-50/3-/3

-100/3-2/3

- 400/3+/3

3600+6

Afin de garder la mme solution optimale, il faut que:

-50/3-/3 0
-100/3-2/3 0
- 400/3+/3 0
Do: -50 400
Intervalle doptimalit: C2 [150, 600]
La valeur du profit change: Z [3300, 6000].

Variation du second membre de la contrainte: bj


b = b +
La base reste optimale car cH-cBB-1H0 est indpendant de

b.
La base est ralisable si B-1b 0
Changer b na dinfluence que sur la ralisabilit de la base
(et sur la valeur de lobjectif) mais pas sur loptimalit.
Donc, les valeurs de certaines variables de bases
pourraient changer.
Dterminer lintervalle de ralisabilit pour lequel, la
solution optimale reste stable, pour une variation bi . En
dehors de cet intervalle, il faudrait r-optimiser.
10

Variation du second membre de la contrainte: bj


Exemple:
Max Z = 300 x1 + 200 x2 + 150 x3
x1 + x2 + x3 10 (Production minimale)
x1 + 2x2 + x3 20
(Sciage)
2 x1 + x2 + x3 22 (Assemblage)
x1 0, x2 0, x3 0

11

300

200

150

VB

x1

x2

x3

s1

s2

s3

bi

200

x2

1/3

2/3

-1/3

s1

-1/3

1/3

1/3

300

x1

1/3

-1/3

2/3

-50/3

-100/3

- 400/3

3600

Variation du second membre de la contrainte: bj


Contrainte de type

Considrons une variation de b2 de 20 20 +.

12

300

200

150

VB

x1

x2

x3

s1

s2

s3

bi=bi+s2

200

x2

1/3

2/3

-1/3

6+2/3

s1

-1/3

1/3

1/3

4+1/3

300

x1

1/3

-1/3

2/3

8-1/3

-50/3

-100/3

- 400/3

3600+100/3

Dans le tableau optimal, la colonne correspondant s2 nous donne les


coefficients de dans la colonne des valeurs de VB.
La base optimale reste ralisable tant que :
6 +2/3 0 -9
4+1/3 0 -12
8-1/3 0 24

Variation du second membre de la contrainte: bj


Contrainte de type

Do: -9 24
Le cot marginal par heure (|cj-zj|=100/3) de la deuxime
ressource (appel galement Shadow price nest valide que si la
solution de base demeure stable. Donc si et seulement si:
11 b2 44
Ceci est appel le domaine de ralisabilit
Ou domaine de validit du cot marginal
Rappel: Ce cot marginal mesure laugmentation de la fonction
objectif si lon accrot dune unit la capacit disponible (b1).
Tout changement au terme de droite dune contrainte sature
entranera une modification de la valeur de la solution optimale.
3300 Z 4400
13

Variation du second membre de la contrainte: bj


Contrainte de type
Considrons une variation de b3 de 22 22 +.
300

200

150

VB

x1

x2

x3

s1

s2

s3

bi=bi+s3

200

x2

1/3

2/3

-1/3

6-1/3

s1

-1/3

1/3

1/3

4+1/3

300

x1

1/3

-1/3

2/3

8+2/3

-50/3

-100/3

- 400/3

3600+400/3

La base optimale reste ralisable tant que :


6 -1/3 0 18
4+1/3 0 -12
8+2/3 0 -12
Do,
-12 18
10 b3 40 : intervalle de ralisabilit
Et 2000 Z 6000
14

Variation du second membre de la contrainte: bj


Contrainte de type

Considrons une variation de b1 de 10 10 +.


300

200

150

VB

x1

x2

x3

s1

s2

s3

bi=bi-s1

200

x2

1/3

2/3

-1/3

6-0

s1

-1/3

1/3

1/3

4-1

300

x1

1/3

-1/3

2/3

8-0

-50/3

-100/3

- 400/3

3600

La base optimale reste ralisable si 4 - 0 4


Do: b1 14
Toute variation au terme de droite dune contrainte marginale, infrieure
la valeur de la variable dcart correspondante, nentrainera pas de
modification de la solution optimale Z.
15

Variation du second membre de la contrainte: bj


Contrainte de type =

Si on fait varier le second membre dune contrainte lgalit, on


value la nouvelle solution avec 2 mthodes possibles: (b = b + )
Si la variable artificielle correspondante est prsente dans le tableau, on
procde comme pour le cas dune contrainte de type en rajoutant les
coefficients de la colonne de la variable artificielle multiplis par la
variation .
Sinon, il suffit de calculer les nouvelles valeurs des VB avec la mthode
matricielle: B-1b

16

Variation du second membre de la contrainte: bj


Remarque: Relation avec le Dual
Les coefficients de la fonction objectif du primal correspondent
aux second membres des contraintes du Dual et inversement.
Donc, faire varier le second membre des contraintes du primal,
revient faire varier les coefficients de la fonction objectif du
Dual et inversement.

17

Variation du second membre de la contrainte: bj


Si on perd la ralisabilit en perturbant le PL, c--d si au moins une
des composantes du vecteur B-1b est ngative, on applique
lalgorithme du simplexe dual partir de la base courante.
Etapes :
Rechercher le bi le plus ngatif (on sattaque la contrainte la
moins satisfaisante): la variable sortante (ligne pivot)
Dans cette ligne i, choisir le pivot dans la colonne ralisant le
min en valeur absolue | j/aij| pour aij<0 (variable entrante)
Nouvelle solution: Pivotage de gauss
Remarque: Si pas de variable entrante, le dual a une solution
infinie et le primal na pas de solution ralisable.
18

Variation du second membre de la contrainte: bj


Exemple
Quelle est la rpercussion sur la solution optimale si la ressource
Sciage augmente de 30 units.
300

VB x1

200

150

x2

x3

s1 s2

s3

bi

200

x2

1/3

2/3

-1/3

6+(2/3*30)=26

s1

-1/3

1/3

1/3

4+(1/3*30)=14

300

x1

1/3

-1/3

2/3

8-(1/3*30)=-2

-50/3

-100/3

- 400/3

3600+100/3*30=4600

La variable x1 a une valeur ngative (-2). Il faut appliquer


lalgorithme dual simplexe pour trouver la nouvelle solution
optimale qui respecte la condition de ralisabilit.
19

Variation du second membre de la contrainte: bj


Exemple
300

200 150

VB

x1

x2

x3

s1

s2

s3

bi

200

x2

1/3

2/3

-1/3

26

s1

-1/3

1/3

1/3

14

300

x1

1/3

-1/3

2/3

-2

-50/3

-100/3

- 400/3

4600

|j/a3j| -

100

300

200

150

x1

x2

x3

s1

s2

s3

bi

200 x2

22

s1

-1/3

12

s2

-3

-1

-2

-100

-50

-200

4400

VB

20

Ajout dune contrainte (ligne)


Si on ajoute une contraine au PL, 2 cas de figures se prsentent:
La solution initiale satisfait la contrainte: Pas de changement dans la
solution optimale.
La solution ne satisfait pas la contrainte: Recours au simplexe dual.
Lajout d'une contrainte se traduit par l'ajout d'une ligne au systme des
contraintes , on ajoute aussi une nouvelle variable dcart qui sera en
base (cot rduit nul). La nouvelle base reste optimale.
Rappel: Ajouter une contrainte revient ajouter une variable dans le
dual.

21

Ajout dune contrainte (ligne)


Exemple
Si on ajoute une contrainte supplmentaire relative la ressource
main duvre alloue au sablage:
x1 + 2x2 + 3x3 25
La solution optimale initiale donne par: x1 =8 et x2=6 vrifie la
contrainte. Donc la solution optimale ne change pas.
Supposons que la contrainte de sablage soit:
2x1 + 2x2 + 2x3 25
La solution optimale initiale donne par: x1 =8 et x2=6 ne vrifie
plus la contrainte.

22

Ajout dune contrainte (ligne)


300

200

150

VB

x1

x2

x3

s1

s2

s3

s4

bi

200

x2

1/3

2/3

-1/3

s1

-1/3

1/3

1/3

300

x1

1/3

-1/3

2/3

s4

25

-50/3

-100/3

- 400/3

3600

Il faut transformer les colonnes des variables de base initiales


en vecteur unitaire (x1 et x2) laide du pivot de Gauss:
Remarque: La colonne de s1 est unitaire, pas besoin de la
modifier
23

Ajout dune contrainte (ligne)


Commenons par:
Ls4-2*Lx1

24

300 200 150

VB

x1

x2

x3

s1 s2

s3

s4 bi

200

x2

1/3

2/3

-1/3 0

s1

-1/3 1

1/3

1/3

300

x1

1/3

-1/3 2/3

s4

4/3

2/3

-4/3 1

Ajout dune contrainte (ligne)


Ensuite:
Ls4-2*Lx2
300 200 150

VB

x1

x2

x3

s1 s2

s3

s4 bi

200

x2

1/3

2/3

-1/3

s1

-1/3

1/3

1/3

300

x1

1/3

-1/3

2/3

s4

2/3

-2/3

-2/3

-3

-50/3

-100/3

- 400/3

|j/a4j| -

50

200

La solution nest pas ralisable Car s4=-3


On rsout le PL avec le simplexe dual
25

Ajout dune contrainte (ligne)


300 200 150

VB

x1

x2

x3

s1 s2

s3

s4 bi

200

x2

1/3

2/3

-1/3

s1

-1/3

1/3

1/3

300

x1

1/3

-1/3

2/3

s4

2/3

-2/3

-2/3

-3

-50/3 0

-100/3

- 400/3

300 200 150

26

VB

x1

x2

x3

s1 s2 s3

s4

bi

200

x2

-1

s1

1/2

5/2

300

x1

-1/2

19/2

s2

-1

-3/2

9/2

-50

-100

-50

3450

Ajout dune contrainte (ligne)


A la place de la contrainte sablage, on rajoute une autre contrainte de
production de type:
x3 3.
Clairement, la contrainte nest pas satisfaite par la solution optimale initiale. On
insre une ligne et une colonne relatives cette nouvelle contrainte:
300

200

150

VB

x1

x2

x3

s1

s2

s3

s4

bi

200

x2

1/3

2/3

-1/3

s1

-1/3

1/3

1/3

300

x1

1/3

-1/3

2/3

s4

-1

-50/3

-100/3

- 400/3

3600

On multiplie la nouvelle ligne par -1 pour retrouver un vecteur unitaire au


niveau de s4
27

Ajout dune contrainte (ligne)


300

200

150

VB

x1

x2

x3

s1 s2

s3

s4

bi

200

x2

1/3

2/3

-1/3

s1

-1/3

1/3

1/3

300

x1

1/3

-1/3

2/3

s4

-1

-3

-50/3

-100/3

- 400/3

3600

|j/a4j| -

50/3

La solution nest pas ralisable, on procde avec le simplexe


dual.
..
28

Ajout dune contrainte (ligne)


Lorsquon rajoute une contrainte lgalit, on value la
nouvelle solution, en rajoutant une ligne et une colonne
relatives la variable artificielle qui correspond cette
contrainte. Et on procde avec la mme mthode que
prcdemment.

29

Suppression dune contrainte


Si la contrainte est marginale (Variable dcart dans la base), on
supprime la colonne et la ligne correspondants la variable dcart:
Pas de modification de la solution cas de la 1re contrainte de
lexemple.
Si la contrainte est sature (Variable dcart hors-base): On oblige
la variable dcart correspondante entrer dans la base et on
dtermine la nouvelle itration.
Une fois la contrainte est devenue marginale, on supprime la ligne et
la colonne lui correspondants et on dtermine la solution optimale.

30

Suppression dune contrainte


Exemple: Dterminer la nouvelle solution optimale si on supprime la
2me contrainte

31

300

200

150

RT

VB

x1

x2

x3

s1

s2

s3

bi

200

x2

1/3

2/3

-1/3

s1

-1/3

1/3

1/3

12

300

x1

1/3

-1/3

2/3

-50/3

-100/3

- 400/3

3600

300

200

150

VB

x1

x2

x3

s1 s2

s3

bi

s2

3/2

1/2

-1/2

s1

-1/2

-1/2

1/2

300

x1

1/2

1/2

1/2

11

50

-150

3300

Suppression dune contrainte

32

300

200

150

VB

x1

x2

x3

s1 s3

s1

-1/2 -1/2 1

300

x1

1/2

1/2

50

bi

RT

1/2

1/2

11

22

-150

3300

300

200

150

VB

x1

x2

x3

s1 s3

bi

s1

12

200

x2

22

-100

-50

-200

4400

Ajout dune variable (colonne)


Un nouveau produit, service ou activit introduits dans
lentreprise.
Rappel: Ajouter une variable au Primal revient ajouter
une contrainte au Dual.
Deux mthodes de dtermination de la nouvelle solution:
On rajoute une contrainte dans le tableau optimal du Dual
A partir du tableau optimal du Primal, on rajoute la nouvelle
variable en tant que VHB (ajout dune colonne). On calcule
les coefficients de la colonne: B-1Hx. Ensuite calculer son j
et vrifier loptimalit ou non du tableau.

33

Ajout dune variable (colonne)


On rajoute une nouvelle variable x4 avec le coefficient
1
c4=200 et la matrice des coefficients suivante:

aix4 = 1
1

34

300

200

150

200

VB

x1

x2

x3

s1

s2

s3

x4

bi

200

x2

1/3

2/3

-1/3

s1

-1/3

1/3

1/3

300

x1

1/3

-1/3

2/3

-50/3

-100/3

- 400/3

3600

Ajout dune variable (colonne)


B 1a jx4

2
0
3

= 1 13
0 1
3

300 200 150

VB x1

13 1 13
1
1
3 1 = 3
1
2
1
3
3

200

x2

x3

s1

s2

s3

x4

bi

RT

200 x2

1/3

2/3

-1/3

1/3

18

s1

-1/3

1/3

1/3

-1/3

300 x1

1/3

-1/3

2/3

1/3

24

-50/3

-100/3

- 400/3

100/3

3600

Nouveau tableau dvelopper .


35

Suppression dune variable (colonne)


Une activit ou un produit nest plus rentable.
Si la variable supprimer xn est hors base, alors on peut
supprimer la colonne correspondante et la solution optimale ne
change pas (par exemple on peut supprimer x3 sans aucun
changement dans la solution optimale).
Si la variable xn est de base, alors on rajoute une contrainte
supplmentaire: xn =0. Et on procde comme dans le cas dajout
de contraintes.

36

Suppression dune variable (colonne)


Exemple
Suppression de la variable x2 .
On rajoute la contrainte x2 =0
300

VB x1

37

200

150

-M

x2

x3

s1 s2

s3

A1

bi

200

x2

1/3

2/3

-1/3

s1

-1/3

1/3

1/3

300

x1

1/3

-1/3

2/3

-M

A1

Suppression dune variable (colonne)


300

200

150

-M

VB

x1

x2

x3

s1 s2

s3

A1

bi

200

x2

1/3

2/3

-1/3

s1

-1/3

1/3

1/3

300

x1

1/3

-1/3

2/3

-M

A1

-1/3

-2/3

1/3

-6

-(50+M)/3

-(100+2M)/3

- 400+M/3

3600+6M

|j/a4j|

50+M

50+M

A1=-6: Utilisation de lalgorithme dual simplexe


On obtient 2 valeurs identiques pour |j/a4j|, le choix est
arbitraire entre x3 et s2
Nouveau tableau dvelopper .
38

S-ar putea să vă placă și