Vous êtes sur la page 1sur 5

Support de cours ROP Mme BOUKERRAM

Chapitre 6 : LES PROGRAMMES LINEAIRES DUAUX


NOTION DE DUALITE

Le concept de dualité est un concept fondamental de programmation linéaire, deux programmes


linéairement duaux ne constituent pas deux problèmes distincts mais deux aspects du même
problème.

DEFINITION
Max ( Z)  CX

Soit un PL écrit sous forme canonique (P)AX  b . On appelle DUAL de ce programme
X  0

Min ( w )  Yb

linéaire, le programme (D)YA  c où Y est un vecteur ligne à m inconnues.
Y  0

REMARQUE

On note que les variables (inconnues) du dual sont en bijection avec les contraintes du programme
linéaire de départ appelé PRIMAL. Tandisque les contraintes du DUAL sont en bijection avec les
variables du PRIMAL. Ceci apparaît clairement dans le schéma suivant :

X1 X2 …………….. Xn B
Y1 A 11 A 12 …………….. A 1n  B1
Y2 A 21 A 22 …………….. A 2n  B2

Yn A n1 A n2 …………….. Amn  Bn

  …………….. 
C1 C2 ……………. Cn
Exemple :
Soit le PL suivant :
Max ( Z)  4 x1  5x 2
2 x1  x 2  8  y1

(P)x1  2 x 2  7  y 2 son DUAL est
x 2  3  y3

x1, x 2  0
Min ( w )  8y1  7 y2  3y3
2 1  y1 
 c1  4   y2 d' où (D)4 y1  y2  4
y1, y2, y3 * 1 2       
c2  5
min(w) (b1 8, b2 7, b3 3) *  
0 1   y3  y1  2 y2  y3  5
 y1, y2, y3  0
PRIMAL DUAL
3 CONTRAINTES 3 VARIABLES

2 VARIABLES 2 CONTRAINTES
Support de cours ROP Mme BOUKERRAM

Remarque : Le Dual du Dual est le Primal.

DUAL DU PROGRAMME STANDARD


Max ( Z)  CX Min ( w )  Yb
 
(P)AX  b (D)YA  c
X  0 Y quelconque
 

Plus généralement le tableu suivant montre comment trouver le dual d’un programme linéaire sans
avoir à écrire le programme sous forme canonique.

PRIMAL(Max) ou (DUAL) DUAL(Min) ou (PRIMAL)


La contrainte i : <= Var yi : >=
La contrainte i : >= Var yi : <=
La contrainte i : = Var yi :  R
Var xj : >= La contrainte j : >=
Var xj :<= La contrainte j : <=
Var xj :  R La contrainte j : =

THEOREMES DE DUALITE
a) Si X et Y sont des solutions réalisables respectivement du primal et du dual alors on a CX<=YB
b) Si la solution optimale du Primal existe et est fini alors celle du Dual existe aussi et est fini. Et les
valeurs numériques de leurs fonctions objectifs sont égales (CX=YB).
c) Si la solution du Primal est infinie (non borné) alors le système des contraintes du Dual est
incompatible (non réalisable).
d) Si (P) et (D) possèdent des solutions réalisables X0 et Y0 (respectivement), vérifiant CX0 =Y0 b
alors X0 est solution optimale de (P) et Y0 est solution optimale de (D).

INTERPRETATION DES VARIABLES DU DUAL


Soit (P) et (D) deux programmes duaux tel que Z=CX=Yb=W cette relation montre que les
composantes du vecteur Y mesurent l’intérêt d’une modification éventuelle de certaines contraintes
(bi) du PL (P).
Ainsi si b>=0 (ce qui est le cas généralement) et Z à maximiser et soit Y=(y1,y2,…yi,….ym)
 Si yi>0 indique qu’une augmentation de la composante bi de (P) est souhaitable car plus bi
augmente plus Z augmente.
 Si yi <0 indique qu’une diminution de bi est souhaitable.
 S yi =0 indique que bi n’influe pas sur le problème.

Remarque : Si le problème est à minimiser : yi<0 sera l’intérêt car bi diminue donc Z diminue.

-
THEOREME DES ECARTS COMPLEMENTAIRES: Une condition nécessaire et suffisante pour
qu’un couple de solutions réalisables des PLs duaux (P) et (D) soit un couple de solutions optimales
est que :
 Si une contrainte de l’un des Pl est LACHE la variable correspondante du Dual est NULLE.
 Si une variable de l’un des PL est >0 alors la contrainte correspondante est SERREE.

Définition : Soit X0 une solution réalisable de (P). La ieme contrainte sera dite :
- SERREE SI AiX0 = bi
- LACHE SI Ai X0 <bi
Support de cours ROP Mme BOUKERRAM

Exemple :
5x1  3x 2  30
2x1  3x 2  24 5y1  2 y2  y3  8
 
( P)  et (D)3y1  3y2  3y3  6
x1  3x 2  18 30y1  24y2  18y3  min(w)
8x1  6x 2  max(z) 
La solution optimale de (P) est : X1=3, X2= 5, Z=54.
Remarque en remplaçant dans les contraintes nous retrouvons :
1- 5*(3)+3*(5)=30 : La contrainte est saturé donc SERREE DONC Y1 >0
2- 2*(3)+3*(5)=21 <24 La contrainte est LACHE donc Y2=0
3- 3+3*(5)=18 Containte SERREE donc Y3 >0.
4- Comme X1=3>0 donc la contrainte 1 de (D) est SERREE : 5Y1 + 2Y2 +Y3 = 8
5- Comme X2=5>0 donc la contrainte 2 de (D) est SERREE : 3Y1 + 3Y2 +3Y3 = 6
6- Comme à l’optimum on max(z) = min(w) alors ona 30Y1 + 24Y2 + 18Y3 = 54
La résolution du Dual (D) est donc Y1=3/2, Y2=0 y3=1/2 W=54.

Interprétation économique
Les variables duales ont généralement une interprétation physique ou économique suivant la nature
du PL modélisé.

Exemple
- Quand la Pb est à Max un bénéfice le Dual est de Minimiser les frais d’achat de la matière
première
- Quand on a un Pb du transport qui consiste à assurer un approvisionnement en Produit au coût
minimal son Dual consiste à utiliser un sous traitant qui maximise son bénéfice sous contrainte
de compétitivité.

Pb Production Fournisseur
Définition Fabriquer des (PF) au bénéfice Max, sans Assurer un
consommer plus de (MP) que ce qui est approvisionnement en (PF)
disponible au coût minimal des (MP)
Primal AX <= B AX>=B
CX=Max(Z) CX=Min(Z)
X={xi} Qt des PF Qt de MP nécessaire
B={bi} Stock de MP Demande de PF
Aij Qt de MPi /unité de PFj produit Qt de PFi/unité de MPj traité
CX Bénéfice à Max Coût à Min
Cj Bénéfice/Unité PFj fabriqué Coût/unité de MPj traité
Y Prix unitaire des MP Prix unitaire des PF
YA : C YA>C signifie que chaque unité de PFj YA<C signifie que chaque
rapporte d’avantage vendu à l’état de unité de MPj coûte moins
MPde MP sous forme de PF
Alternative Vendre MP transformé Fabriquer PF et le vendre
Ou Ou
Vendre MP Brute Acheter les PF et les
revendre
Dual YA>=C YA <= C
BY=Min(w) BY=Max(w)
Point de vu L’acheteur du stock de MP doit penser à Le Sous traitant des PF
minimiser le coût d’achat sous contrainte maximise son bénéfice sous
de compétitivité contrainte de compétitivité
Support de cours ROP Mme BOUKERRAM

Exemple
restaurateur Racheteur
(P) 5x1+3x2  30 (D) 5y1+2y2 + y38
2x1+3x224 3y1+3y2+3y324
1x1+3x218 Min(w)=30y1+24y2+18y3
Max(Z)=8x1+6x2 yi0i=1..3
xi0i=1 ;2 yi : prix de rachat de la MPi
xi : qt d’assiettes de type i à fabriqué

Exemple 2
On veut élaborer un menu riche à valeur nutritive
Nbre d’unité nutritives/aliment
Vitamines A B C Coût de l’aliment
Aliment
A1 1 1 3 20 DA
A2 5 2 2 25 DA
Qt stock Vitamines 5 4 6

Producteur d’aliment Fournisseur


(P) x1+5x2  5 (D) y1+y2 +3 y320
x1+2x24 5y1+2y2+2y325
3x1+2x26 Max(w)=5y1+4y2+6y3
Min(Z)=20x1+25x2 yi0i=1..3
xi0i=1 ;2 yi : prix de vente de l’aliment
xi : qt d’aliment i à utiliser par menu Ai ( PFi)

Solution Dual par le tableau du simplexe

Soit le Pl (P) suivant Soit le Pl (D) suivant dual de (P)


Max(Z)= x1+3x2 Min(w)= 14y1+12y2+12y3
x1+ x2 <=14 y1-2y2+2y3>=1
-2x1+3x2<=12 y1+3y2-y3>=3
2x1-x2<=12 y1 ;y2>=0
x1 ;x2>=0

La résolution par le simplexe mene au tableau fianal suivant :


Pour (P)
Base X1 X2 E1 E2 E3 B
X1 1 0 3/5 -1/5 0 6
X2 0 1 2/5 1/5 0 8
E3 0 0 -4/5 3/5 1 8
Max(Z) 0 0 -9/5 -2/5 0 -30

Pour(D)
Base y1 y2 Y3 U1 U2 B
Y1 1 0 4/5 -3/5 -2/5 9/5
Y2 0 1 -3/5 1/5 -1/5 2/5
Min(w) 0 0 8 6 8 -30

La solution optimale de (P) correspond aux paramètres de la fonction objectif de (D)


De même La solution optimal de (D) correspond aux paramètres de la fonction objectif de (P)
Support de cours ROP Mme BOUKERRAM

On note que
Les variables Primales de (P) Correspondent aux variables d’écarts de (D)
Les variables d’écarts de (P) Correspondent aux variables Primales de (D)

Pour passer du tabeau du simplexe de (P) à celui de (D) il suffit de faire les correspondances
suivantes

Ligne (xj ; ej) en base correspond à la Colonne (Ui ;yi) Hors base
Colonne (xi,ei) hors base correspond à la Ligne (Uj ;yj) en Base

Base X1 X2 E1 E2 E3 B
VHB (D) U1 U2 Y1 Y2 Y3 Min(w)
X1 U1 1 0 3/5 -1/5 0 6
X2 U2 0 1 2/5 1/5 0 8
E3 Y3 0 0 -4/5 3/5 1 8
Max(Z) B’ 0 0 -9/5 -2/5 0 -30

Vous aimerez peut-être aussi