Vous êtes sur la page 1sur 12

Mme Yosr Salhi Méthodes opérationnelles d’aide à la décision 2018/2019

Section II Dualité et analyse de la sensibilité

II-1 Dualité :
II-1-1 Présentation
A tout programme linéaire appelé PRIMAL correspond un programme linéaire appelé DUAL en relation
étroite par leurs énoncés et par leurs solutions.
La solution optimale de l’un des deux programmes est complètement déterminée par la résolution de l’autre.

Exemple :
Un agriculteur cherche à maximiser sa marge sur coût fixe à partir de la culture des pommes de terre et des
tomates dont les conditions sont récapitulées dans le tableau suivant :

Hectares Eau Heures main Heures tracteur Marge sur coûts de


terrains (m3) d’oeuvre production par kg
( en dinars)
Pommes de terre 1 4 1 1 100
Tomates 1 2 4 0 200
Capacités 150 440 480 90

Il s’agit de résoudre le programme suivant :


Max 100x1  200x 2
S.C x1  x2  150
4 x1  2 x2  440
x1  4 x 2  480
x1  90
x1  0 , x 2  0
La résolution de ce programme par le logiciel LINDO donne les informations suivantes :
LP OPTIMUM FOUND AT STEP 2
OBJECTIVE FUNCTION VALUE
1) 26000.00

VARIABLE VALUE REDUCED COST


X1 40.000000 0.000000
X2 110.000000 0.000000

ROW SLACK OR SURPLUS DUAL PRICES


2) 0.000000 66.666664
3) 60.000000 0.000000
4) 0.000000 33.333332
5) 50.000000 0.000000

La solution peut être récapitulée dans le tableau suivant :


f=26000 um

Variables x1 x2 e1 e2 e3 e4

Valeurs optimales 40 110 0 60 0 50


Valeurs marginales 0 0 66.666664 0 33.333332 0

1
Mme Yosr Salhi Méthodes opérationnelles d’aide à la décision 2018/2019

Rappel :
Coût marginal « Cm » appelé : « dual price » par LINDO ou prix fictif.
Le coût Cmi est relatif à la variable d’écart ei associé à chaque ressource i (dont les disponibilités sont
exprimées par une contrainte technologique i) .
C’est le prix qu’on est disposé à payer pour l’achat d’une unité supplémentaire de ressource donnée.

 Si ei=0 alors Cmi ≠0, la ressource i est totalement utilisée ( la contrainte i est saturée). Par la suite
une variation de la disponibilité aura généralement une influence sur le revenu. Dans ce cas, Cmi:
précise la variation de la fonction économique résultant de l’utilisation d’une unité supplémentaire
de la ressource associée.
 Si ei≠0 alors Cmi=0, la ressource i est excédentaire ( la contrainte i n’est pas saturée). Par
conséquent, le fait de disposer d’une unité supplémentaire de ce bien n’aura aucune influence sur le
revenu.

La valeur monétaire de chaque ressource peut être déterminée par un programme linéaire
associé au programme initial appelé programme dual.

II-1-2 Interprétation du programme dual

Supposons qu’un producteur (le dual) s’intéresse à l’achat de toutes nos ressources : hectares terrain, eau,
heures main d’œuvre, heures tracteur.
À quels prix sommes nous disposé à les lui céder?
Soient:
y1 : le prix d’un hectare terrain,
y2 : le prix d’un m3 d’eau,
y3 : le prix d’une heure main d’œuvre;
y4 : le prix d’une heure tracteur;

L’objectif de l’acheteur est de minimiser le prix à payer de toutes ses ressources (ses dépenses).
Les quantités des ressources sont fixes soient : 150 hectares terrain, 440 m3 d’eau, 480 heures main d’œuvre et
90 heures tracteurs
.
La fonction objectif de l’acheteur (dual) est:

Min 150y1+440y2+480y3+90y4

Mais le dual sait que le primal ne cèdera ses ressources que si le revenu rapporté par la vente des ressources
nécessaires à la production d’une unité de produit ( x1 ou x2) soit supérieur ou égal à la vente de cette unité,
d’où :

y1+4y2+y3+y4>=100
y1+2y2+4y3>=200

y1, y2, y3 et y4>=0

2
Mme Yosr Salhi Méthodes opérationnelles d’aide à la décision 2018/2019

Correspondance entre PL Primal ET PL Dual

Sous forme canonique


Primal Dual
Max 100x1  200x 2 Min150 y1  440 y 2  480 y3  90 y 4
S.C x1  x2  150 sc
4 x1  2 x2  440  y1  4 y2  y3  y4  100
x1  4 x 2  480 
 y1  2 y2  4 y3  200
x1  90 y , y , y , y  0
 1 2 3 4
x1  0 , x 2  0
Variables structurelles : x1, x2 Variables structurelles : y1, y2, y3 et y4.

Primal Dual

Maximiser Minimiser
Contraintes d’infériorités Contraintes de supériorité
n variables structurelles n variables d’écart
m variables d’écart m variables structurelles
Écriture en ligne Écriture en colonne

La résolution de ce problème par le logiciel LINDO donne le tableau optimal suivant :


LP OPTIMUM FOUND AT STEP 3

OBJECTIVE FUNCTION VALUE

1) 26000.00

VARIABLE VALUE REDUCED COST


Y1 66.666664 0.000000
Y2 0.000000 60.000000
Y3 33.333332 0.000000
Y4 0.000000 50.000000

ROW SLACK OR SURPLUS DUAL PRICES


2) 0.000000 -40.000000
3) 0.000000 -110.000000

3
Mme Yosr Salhi Méthodes opérationnelles d’aide à la décision 2018/2019

La solution peut être récapitulée dans le tableau suivant :

Programme dual

f= 26000 UM

Variables e1 e2 y1 y2 y3 y4

Valeurs optimales 0 0 66.666664 0 33.333332 0

Valeurs marginales 40 110 0 60 0 50

On remarque que la solution optimale du Dual peut être déduite à partir du programme Primal et vis
vers ça.

Programme primal
f= 26000 UM

Variables x1 x2 e1 e2 e3 e4

Valeurs optimales 40 110 0 60 0 50

Valeurs marginales 0 0 66.666664 0 33.333332 0

Primal Dual

La même valeur de la fonction objectif

La valeur marginale d’une variable d’un programme La valeur optimale de la variable associée dans le
primal programme dual.

La valeur optimale d’une variable d’un programme La valeur marginale de la variable associée dans le
primal programme dual.

y1 : le prix d’un hectare terrain= 66.666664 um par hectare


y2 : le prix d’un m3 d’eau =0 um étant donné qu’il y un excès de ressource,
y3 : le prix d’une heure main d’œuvre=33.333332 um/h;
y4 : le prix d’une heure tracteur =0 étant donné qu’il y un excès de ressource.

Objectif du dual:
Déterminer un système de prix de référence dans le cadre d’une allocation optimale des
ressources: « ombre des prix de marché ou prix fictif ou shadow prices ».

4
Mme Yosr Salhi Méthodes opérationnelles d’aide à la décision 2018/2019

II-2 Analyse de sensibilité :

Les données d’un programme linéaire sont supposées connues avec certitude. Cependant, dans la réalité, il y a
des incertitudes concernant ces paramètres.

Questions :

Si on modifier l’un des paramètres du PL (paramètre du second membre bi de la ième contrainte, paramètre de
la fonction objectif ci), la solution trouvée demeure t- elle stable ?

Analyse de sensibilité = étude de voisinage d’une solution optimale

A savoir :

La solution optimale ne change pas ou reste stable, si suite à la variation de l’un des paramètres du PL,
l’ensemble des variables de base ne change pas même si les valeurs se trouvent modifiées.

Hypothèse fondamentale : cette analyse ne vaut que si on change un seul paramètre, tous les autres restent
stables.

OBJECTIFS :
- Trouver dans quel intervalle peut-on modifier l’un des paramètres du PL (paramètre du second membre bi
de la ième contrainte, paramètre de la fonction objectif ci) sans que la solution optimale change (ou pour que la
solution optimale reste stable).

- Lire et interpréter l’information fournie par le rapport de la résolution LINDO.

Exemple : l’exemple de l’agriculteur :

Il s’agit de résoudre le programme suivant :


Max 100x1  200x 2
S.C x1  x2  150
4 x1  2 x2  440
x1  4 x 2  480
x1  90
x1  0 , x 2  0

La résolution de ce programme par le logiciel LINDO donne les informations suivantes :

THE TABLEAU

ROW (BASIS) X1 X2 SLK 2 SLK 3 SLK 4 SLK 5

1 ART 0.000 0.000 66.667 0.000 33.333 0.000 26000.000


2 X1 1.000 0.000 1.333 0.000 -0.333 0.000 40.000
3 SLK 3 0.000 0.000 -4.667 1.000 0.667 0.000 60.000
4 X2 0.000 1.000 -0.333 0.000 0.333 0.000 110.000
5 SLK 5 0.000 0.000 -1.333 0.000 0.333 1.000 50.000

5
Mme Yosr Salhi Méthodes opérationnelles d’aide à la décision 2018/2019

II-2-1 Analyse de sensibilité sur les bj (second membre des contraintes)


Déterminer l’intervalle pour lequel, la solution optimale reste stable, pour une variation du second membre de
la ième contrainte bi .

QUESTION : De combien peut-on modifier la superficie de la terre sans que la solution optimale change ?

Rappel :
Coût marginal « Cm » appelé : « dual price » par LINDO.
Ce coût est associé à chaque contrainte technologique.
Cmi mesure l’impact sur la fonction objectif si on augmente (ou on diminue) le membre de droite de la
contrainte i.

Considérons une variation de b1 de 150 à 150 + .

Sachant que dans le premier tableau de simplexe b1 n’est présent que dans la première contrainte. On obtient
ainsi une correspondance entre la colonne résultat (des quantités) et la colonne de e1.
ROW (BASIS) X1 X2 e1 e2 e3 e4 résultat
1 ART -100.000 -200.000 0.000 0.000 0.000 0.000 0.000
2 SLK 2 1.000 1.000 1.000 0.000 0.000 0.000 150.000
3 SLK 3 4.000 2.000 0.000 1.000 0.000 0.000 440.000
4 SLK 4 1.000 4.000 0.000 0.000 1.000 0.000 480.000
5 SLK 5 1.000 0.000 0.000 0.000 0.000 1.000 90.000

les coefficients de
le tableau de la solution optimale :
la fonction objectif
ROW (BASIS) X1 X2 e1 e2 e3 e4

1 ART 0.000 0.000 66.667 0.000 33.333 0.000 26000.000


2 X1 1.000 0.000 1.333 0.000 -0.333 0.000 40.000
3 SLK 3 0.000 0.000 -4.667 1.000 0.667 0.000 60.000
4 X2 0.000 1.000 -0.333 0.000 0.333 0.000 110.000
5 SLK 5 0.000 0.000 -1.333 0.000 0.333 1.000 50.000

A partir de ce tableau, le système de contraintes dans le programme linéaire relatif au tableau de simplexe
optimal du problème de l’agriculteur :
 x1  1.333e1  0.333e3  40
 e  4.667e  0.667e  60
 2 1 3

 x2  0.333e1  0.333e3  110
 e4  1.333e1  0.333e3  50

e1=0 et e3=0 (ils sont des variables hors base)

6
Mme Yosr Salhi Méthodes opérationnelles d’aide à la décision 2018/2019

Considérons une variation de b1 de , la solution sera alors :

 x1  1.333(e1   )  0.333e3  40  1.333


 e  4.667(e  )  0.667e  60  4.667
 2 1 3

 x2  0.333(e1   )  0.333e3  110  0.333
 e4  1.333(e1   )  0.333e3  50  1.333

Elle restera optimale tant que :


x1,e2,x2 et e4 soient>=0 ou encore :

 x1  40  1.333  0 1  30


e  60  4.667  0   12.857
 2 
  1  - 30    12.857
 x2  110  0.333  0 1  330
e4  50  1.333  0 1  37.5

On aura 150- 30  b1+  150+12.857 ou encore 120  b1  160,85

Ces informations sont fournies par le rapport Lindo

RANGES IN WHICH THE BASIS IS UNCHANGED: (Plages de variation des


paramètres du second membre)

RIGHTH AND SIDE RANGES


ROW CURRENT ALLOWABLE ALLOWABLE
RHS INCREASE DECREASE
données
relatives à la
2 150.000000 12.857143 30.000000
diminution
première 3 440.000000 INFINITY 60.000000 admissible
contrainte 4 480.000000 120.000000 90.000000
5 90.000000 INFINITY 50.000000
augmentation
admissible

Remarque :
D’après le résultat ci-dessus on peut conclure que le coût marginal de 66.66664 par hectare de la première
ressource n’est valide que si la solution de base demeure stable. Donc si et seulement si 120  b1  160,85.
Ceci est appelé le domaine de validité du coût marginal.

Les valeurs marginales apportent des renseignements économiques intéressants, mais il faut les utiliser avec
prudence car leur domaine de validité est limité.

7
Mme Yosr Salhi Méthodes opérationnelles d’aide à la décision 2018/2019

Donc tant que 120  b1  160,85 la base demeure la même et la solution optimale est stable mais elle
change en valeur (exemple: pour = 3 le vecteur de solutions optimale est
(x1,x2,e1,e2,e3,e4)=(44,109,0,46,0,46)) avec f=26200

Solution optimale est stable : x1,x2,,e2,et e4 restent dans la base

Domaine de validité du coût marginal : Cm1 = 66.666664 pour cet intervalle. L’interprétation du coût
marginal est donc valide : si la ressource terre augmente de 3 hectares la fonction objctif augmente
de 66.66664*3 soit de 200 um elle passe alors de 26000 um à 26200 um.

Ces valeurs peuvent être vérifiées par la résolution du programme suivant avec LINDO

Max 100x1  200x 2


S.C x1  x2  153
4 x1  2 x2  440
x1  4 x 2  480
x1  90
x1  0 , x 2  0

Application 1 :
Sans faire de calcul, de combien peut-on modifier la quantité de m3 d’eau sans nuire à la solution optimale ?
Confirmez votre résultat à l'aide de la méthode d'analyse de sensibilité exposée ci-dessus?

Application 2:
Déterminer l’intervalle dans lequel peut varier b3 les ressources en main d’œuvre sans que la base optimale
change. Ou déterminer le domaine de validité du coût marginal associé à la ressource main d’œuvre.

II-2-2 Analyse de sensibilité sur les Ci (coefficients des variables dans la


fonction objectif)

On cherche à déterminer un intervalle dans lequel peut varier Ci sans que la solution optimale ne change. Ces
modifications peuvent provenir, par exemple, d’une erreur dans l’estimation des coûts de fabrication, un
changement de prix d’un fournisseur, une accentuation de la concurrence nécessitant une baisse de la marge,
etc.

Question : De combien peut-on modifier la marge sur coût de production d’un kg de pomme de terre sans
que la solution optimale change ?

Le système de contraintes dans le programme linéaire relatif au tableau de simplexe optimal donné par
LINDO est le suivant :
ROW (BASIS) X1 X2 e1 e2 e3 e4 résultat
2 X1 1.000 0.000 1.333 0.000 -0.333 0.000 40.000
3 e2 0.000 0.000 -4.667 1.000 0.667 0.000 60.000
4 X2 0.000 1.000 -0.333 0.000 0.333 0.000 110.000
5 e4 0.000 0.000 -1.333 0.000 0.333 1.000 50.000

8
Mme Yosr Salhi Méthodes opérationnelles d’aide à la décision 2018/2019

 x1  1.333e1  0.333e3  40  x1  40  1.333e1  0.333e3


4.667e  e  0.667e  60 
 1 2 3 
 
 x2  0.333e1  0.333e3  110  x2  110  0.333e1  0.333e3
 1.333e1  0.333e3  e4  50 

La fonction économique s’écrit


z  100x1  200x2
Si on exprime f en fonction de e1 et e3 (variables hors base) en utilisant le système d’équation ci dessus on a
f  100  1.333e1  0.333e3  40   200  0.333e1  0.333e3  110  (équation I)

Considérons une variation du coefficient Ci de 100 à 100 + 

En utilisant l’équation I, on aura :

f  (100   )  1.333e1  0.333e3  40   200  0.333e1  0.333e3  110 


ou encore

f=26000-(66,667+1,333∆)e1-(33,333-0,333∆)e3+40∆

Pour que la solution reste optimale, tous les coefficients de la fonction objectif doivent être positifs
(condition d’optimalité) d’où :

66.667  1.333  0   50


     50    100
33.333  0.333  0   100

On aura 100- 50  c1+  100+100 ou encore 50  c1  200

Ce résultat peut être trouvé à partir du tableau de la solution optimale. Dans le tableau optimal, la ligne
correspondante à x1 nous donne les coefficients de  dans la fonction objectif.

THE TABLEAU

ROW (BASIS) X1 X2 e1 e2 e3 e4 résultat


1 ART 0.000 0.000 66.667 0.000 33.333 0.000 26000.000
2 X1 1.000 0.000 1.333 0.000 -0.333 0.000 40.000
3 e2 0.000 0.000 -4.667 1.000 0.667 0.000 60.000
4 X2 0.000 1.000 -0.333 0.000 0.333 0.000 110.000
5 e4 0.000 0.000 -1.333 0.000 0.333 1.000 50.000

Donc la base demeure la même et la solution optimale est stable (x1,x2)=(40,110) tant que 50  C1 
200
La valeur optimale de la fonction objectif et des coûts marginaux changent. Donc si c1 passe de 100 à
100+ , e1 passe de 66.667 à 66.667+1.333 et e2 de 33.333 à 33.333-0.333.

9
Mme Yosr Salhi Méthodes opérationnelles d’aide à la décision 2018/2019

Remarque :
Etant donné que les coefficients de la fonction objectif deviennent les seconds membres des contraintes
du programme dual, l’intervalle de variation de  peut être calculé à partir de la solution optimale du
programme dual.
Le programme dual est :
forme canonique :
min 150y1+440y2+480y3+90y4
subject to
y1+4y2+y3+y4>=100
y1+2y2+4y3>=200
forme standard
min 150y1+440y2+480y3+90y4
subject to
y1+4y2+y3+y4-e1=100
y1+2y2+4y3-e2=200

la résolution de ce problème par le logiciel LINDO donne le tableau optimal suivant :


THE TABLEAU
ROW (BASIS) Y1 Y2 Y3 Y4 e1 e2 résultat
1 ART 0.000 60.000 0.000 50.000 40.000 0.11E+03 0.26E+05
2 Y3 0.000 -0.667 1.000 -0.333 0.333 -0.333 33.333
3 Y1 1.000 4.667 0.000 1.333 -1.333 0.333 66.667

Considérons une variation de c1 de 100 à 100+. pour que la base ne change pas il faut que y1 et y3
restant positives (variables de base), d’où :
y1=66.667-(-1.333)>=0
y3=33.333-(0.333)>=0

(à remarquer si nous allons rajouter  dans le premier membre de l’équation il faut retrancher  du second membre
étant donné que e1 est précédé d’un signe (-))

On retrouve les résultat trouvés précédemment soit  50    100

 Les valeurs optimales, du programme dual, de y1 et y3 correspondent respectivement aux valeurs


marginales des variables d’écart, du programme primale, e1 et e3.
Donc si c1 passe de 100 à 100+ , e1 passe de 66.667 à 66.667+1.333 et e2 de 33.333 à
33.333-0.333. Ce qui explique que les coûts marginaux changent suite à une variation d’un
coefficient de la fonction objectif.

 Dans le programme dual, y2, y4, e1 et e2 sont des variables hors base ce qui explique que e2, e4, x1 et
x2 restent les variables de base du programme primal.

10
Mme Yosr Salhi Méthodes opérationnelles d’aide à la décision 2018/2019

Ces informations sont fournies par le rapport Lindo du programme primal :

RANGES IN WHICH THE BASIS IS UNCHANGED:


(Plages de variation des coefficients
de la fonction objectif)

OBJ COEFFICIENT RANGES


VARIABLE CURRENT ALLOWABLE ALLOWABLE
COEF INCREASE DECREASE
X1 100.000000 99.999992 augmentation 49.999996 diminution
admissible
X2 200.000000 199.999985 admissible 99.999992

Donc tant que 50  c1  200 la base demeure la même et la solution optimale est stable mais elle
change en valeur (exemple: pour = 50um, c1=150 um
le vecteur de solutions optimale est (x1,x2,e1,e2,e3,e4)=(40,110,0,60,0,50)) avec f=28000

Les valeurs des variables de décision restent les même, mais la valeur optimale de la fonction
objectif va changer puisque un de ces coefficient change.

Solution optimale est stable : x1,x2,,e2,et e4 restent dans la base

Les coûts marginaux de e1 et e2 changent et passe respectivement à : 99.333336 et 26.6666

Ces valeurs peuvent être vérifiées par la résolution du programme suivant avec LINDO

Max 150x1  200x2


S.C x1  x2  150
4 x1  2 x2  440
x1  4 x 2  480
x1  90
x1  0 , x 2  0

Application :
De combien peut diminuer au maximum le profit unitaire réalisé sur les tomates pour que la solution reste
stable ?

11
Mme Yosr Salhi Méthodes opérationnelles d’aide à la décision 2018/2019

12

Vous aimerez peut-être aussi