You are on page 1of 5

Chapitre 2

Dualit
e
2.1

Introduction

Avant de donner la definition formelle dun probl`eme dual, nous allons expliquer comment il sexplique en terme de probl`eme de production.
Une entreprise I fabrique n produit et le benefice par unite du produit i est ci . Pour
fabriquer les produits lentreprise utilise m mati`eres premi`eres, et la quantite totale de
mati`ere j est bj . Par unite de produit i, il faut ai,j quantite de la mati`ere j. Pour I,
maximiser son benefice revient `a resoudre :
Max z = cx
Ax b
x0

avec A(m, n), c(1, n) = (c1 , . . . , cn ), x(n, 1) =

x1
.
.
xn

, b(m, 1)

b1
.
.
bm

quon appelle le

probl`eme primal.
Une entreprise II propose de racheter les ressources de I pour sa propre production.
Quand est-ce que la transaction peut se faire ? Quand I ne perd pas `a vendre ses mati`eres
premi`eres plutot que de fabriquer ses produits. De plus II veut payer le prix le plus bas
possible. On pose yj le prix propose par II `a I par unite de produit j.
Le co
ut pour II est
= J=M
j=1 yj bj
Les contraintes representent que pour I le prix de vente (par unite de produit) `a II est
plus eleve ou egal au benefice pour chaque produit.
pour une unite de produit i :
j=m
j=1
yj aj,i ci
et evidemment yj 0 pour tout j.
1


CHAPITRE 2. DUALITE

2
Cela secrit :

Min = yb
yA c
y0

quon appelle le probl`eme dual. Le dual modelise ainsi le fait quil est plus interessant pour
I de vendre `a II que de fabriquer et aussi que II cherche `a proposer le prix le plus bas
possible.

2.2

Definition

Definition 1 P un probl`eme de PL (appele primal) sous la forme canonique :


Max z = cx
Ax b
x0
avec A(m, n), c(1, n), x(n, 1), b(m, 1) alors le probl`eme dual est :
Min = yb
yA c
y0
avec y(m, 1)
Proposition 1 Le dual du dual est le primal.
Rappel : la transposee dune matrice A(m, n) = (ai,j ) est la matrice tA (n, m) = (aj,i).
On a ttA = A et tAB = tB tA , tA = tA , si A B alors tA tB .
On met le dual sous forme canonique :
Max = yb
yA c
y0
puis
Max = tb u
tA u tc
u0
(avec u = ty ) dont on calcule le dual
Min = vtc
vtA tb
v0

2.3. LIEN PRIMAL-DUAL


on elimine les -1

Max = vtc
vtA tb
v0

on transpose et on obtient en posant x = tv


Max = cx
Ax b
x0
Definition 2 P un probl`eme de PL (appele primal) sous la forme standard :
Max z = cx
Ax = b
x0
avec A(m, n), c(1, n), x(n, 1), b(m, 1) alors le probl`eme dual est :
Min = yb
yA c
y quelconque
avec y(m, 1)
Proposition 2 Les deux definitions sont equivalentes.
Cela signifie que partant dun probl`eme en forme canonique, si on le transforme en
probl`eme standard auquel on applique le dual, on a un resultat equivalent `a celui obtenu
en calculant directement le dual du probl`eme initial (et idem si on part du pb standard).

2.3
2.3.1

Lien Primal-Dual
Comparaison des solutions

On prend P en forme canonique et D son dual et on consid`ere x et y deux solutions


quelconques du primal et du dual. Comme x 0 et y 0 on peut multiplier les contraintes
du primal par y et du dual par x pour obtenir :
cx yAx yb
Cela est valable pour toutes solutions x du primal, y du dual. Donc loptimum du primal
est forcement inferieur ou egal `a celui du dual. Autre consequence, si on trouve x solution
du primal et y solution du dual telles que cx = yb alors ont sait quelles sont optimales et
que loptimum est z = = cx = yb.


CHAPITRE 2. DUALITE

2.3.2

Th
eor`
eme de dualit
e

On admet le resultat suivant : etant donnes une matrice A, deux vecteurs b et c, alors
{Max cx | Ax b} = {min yb | yA = c, y 0} si les ensembles existent.
Donc quand les optima des probl`emes correspondants sont finis ils sont egaux. Avoir
pris un probl`eme primal sous la forme Max z = cx
nest pas restrictif car on
Ax b
x quelconque
peut ramener un probl`eme standard ou canonique `a cette forme en preservant loptimum.
Le tableau suivant recapitule la situation (th. de dualite).

optimum fini
pas doptimum fini
pas de solution

optimum fini
cas 1
impossible
impossible

pas doptimum fini


impossible
impossible
cas 2

pas de solution
impossible
cas 2
cas 3

Exemples

Cas 1.

Max z = x1 + x2
x1 + x2 = 1
x1 1/2x2 = 0
x1 , x2 0

et le dual

Min z = y1
y1 + y2 1
y1 1/2y2 1
y1 , y2 quelconques

x = (1, 2), y = (3, 4) admissibles et z = = 3 donc optimales.

Cas 2.

Max z = x1 x2
x1 + x2 = 1
x1 x2 = 0
x1 , x2 0

et le dual

Min z = y1
y1 + y2 1
y1 y2 1
y1 , y2 quelconques

Pas de solution au primal mais possibilite de solution admissible y1 = , y2 = + 1


pour le dual avec aussi petit que voulu, donc pas doptimum fini.
Cas 3.

Max z = x1 + x2
x1 + x2 = 1
x1 x2 = 0
x1 , x2 0

et le dual

Pas de solution ni au primal ni au dual.

Min z = y1
y1 + y2 1
y1 y2 1
y1 , y2 quelconques

PRIMALES-DUALES
2.4. CONDITION DOPTIMALITE

2.4

Condition doptimalit
e primales-duales

On consid`ere un probl`eme primal en forme canonique :


Max z = cx et le dual Min = yb alors
Ax b
yAx c
x0
y0
Proposition 3 Soit x et y deux solutions admissibles du primal et du dual.
Alors x et y sont optimales ssi les conditions suivantes sont realisees :

yj(bj i=n
i=1 aj,i xi ) = 0 pour j = 1, . . . , m
j=m
(j=1
yj aj,i ci )xi = 0 pour i = 1, . . . , n
Attention : Lhypoth`ese x et y solutions admissibles est necessaire ! !
Preuve :
Si x, y solutions alors elles satisfont les contraintes :
y A c et Ax b
On multiplie la premi`ere inegalite par x 0 et la seconde par y 0 ce qui donne
y Ax cx et y Ax y b
c.a.d.
y b y Ax cx
Condition n
ecessaire : Si x et y sont optimales alors loptimum est le meme (th.
de dualite) :
cx = y b
Do`
u:
y b = y Ax = cx
do`
u on tire les deux egalites
y (b Ax) = 0 et (y A c)x = 0
Tous les yj et xi sont > 0 et b Ax 0 tout comme y A c 0 donc tous les
termes des deux produits sont necessairement nuls ce qui donne les deux serie degalites.
Condition suffisante : Si les conditions sont vraies on a :
y b = y Ax et y Ax = cx
donc les deux fonctions objectif sont egales et donc x et y sont optimales.
Remarque : si le primal est en forme standard, alors la premi`ere egalite est evidente car
Ax = b et donc tous les coefficients de yi sont nuls.

You might also like