Professional Documents
Culture Documents
Dualit
en
programmation linaire
Illustration de la notion
Considrons une entreprise
produisant r produits finis: fk = demande du produit k =1, 2, , r
utilisant s matires premires: hl = disponibilit de la matire premire
l = 1, 2, , s
Lentreprise dispose de n procds de production (activits):
xj = niveau dutilisation du procd j = 1, 2, , n
cj = cot unitaire dutilisation du proccd j = 1, 2, , n
Le procd j
produit ekj units de produit k =1, 2, , r
utilise glj units de matire l = 1, 2, , s
pour chaque unit de son utilisation.
Illustration de la notion
Modle
n
min z =
jxj
j =1
n
Sujet
kj x j
fk
k = 1,2,..., r (demandes)
j =1
n
lj x j
hl
l = 1,2,..., s (disponibilits)
j =1
xj 0
j = 1,2,..., n
Illustration de la notion
Un entrepreneur propose lentreprise dacheter les quantits de ses
matires premires et de lui vendre les quantits de produits pour satisfaire
les demandes.
Il doit noncer (dterminer) des prix unitaires
vk pour les produits k = 1, 2, , r
wl pour les matires l = 1, 2, , s.
n
min z =
c x
j
j =1
n
Sujet
kj x j
fk
k = 1,2,..., r (demandes)
vk
l = 1,2,..., s (disponibilits)
wl
j =1
n
lj x j
hl
j =1
xj 0
j = 1,2,..., n
Illustration de la notion
min z =
jxj
j =1
n
Sujet
kj x j
fk
k = 1,2,..., r (demandes)
vk
l = 1,2,..., s (disponibilits)
wl
j =1
n
lj x j
hl
j =1
xj 0
ekj vk
k =1
j = 1,2,..., n
g lj wl
l =1
cj
Illustration de la notion
r
kj k
lj
wl
l =1
k =1
cj
max p =
k vk
k =1
r
Sujet
e
k =1
h w
l
l =1
s
kj v k
lj wl
cj
l =1
vk 0
k = 1,2,..., r
wl 0
l = 1,2,..., s
j = 1,2,..., n
Illustration de la notion
Problme de lentreprise: multiplions les contraintes de disponibilits par -1
n
min z =
Sujet
c x
j
min z =
j =1
j =1
kj x j
fk
k = 1,2,..., r (demandes
Sujet )
j =1
kj x j
fk
k = 1,2,..., r (demandes)
j =1
c x
lj x j
hl
l = 1,2,..., s (disponibil
itsg) lj x j hl
j =1
xj 0
l = 1,2,..., s (disponibilits)
j =1
j = 1,2,..., n
xj 0
j = 1,2,..., n
E
G
Problme de lentreprise
n
min z = c j x j
Sujet
j =1
n
ekj x j
j =1
n
e1 j
k = 1,2,..., r (demandes)
fk
l = 1,2,..., s (disponibilits)
j = 1,2,..., n
g lj x j hl
j =1
xj 0
e k1
ek 2
ekj
ekn
erj
Problme de lentrepreneur
r
max p =
k vk
k =1
r
Sujet
e
k =1
g1 j
h w
l
l =1
s
kj v k
g l1 g l 2 g lj
lj wl
cj
l =1
vk 0
k = 1,2,..., r
wl 0
l = 1,2,..., s
j = 1,2,..., n
g ln
Primal
n
min z =
c x
j
j =1
n
Sujet
kj x j
fk
k = 1,2,..., r (demandes)
lj x j
hl
l = 1,2,..., s (disponibilits)
j =1
n
g
j =1
xj 0
j = 1,2,..., n
Dual
r
max p =
f
e
k =1
x
y
min c T x
Sujet Ax b
x0
k vk
k =1
r
Sujet
min z = c T x
Sujet
E
f
x
G
h
x0
h w
l
l =1
s
kj v k
lj wl
cj
l =1
vk 0
k = 1,2,..., r
wl 0
l = 1,2,..., s
j = 1,2,..., n
v
max p = f T hT
w
Sujet
E T G T v c
w
v, w 0
max bT y
Sujet AT y c
y0
max bT y
Sujet AT y c
y0
min c T x
Sujet Ax b
x0
min z = 8 x 6 y
Sujet
5 x + 3 y 30
2 x + 3 y 24
x + 3 y 18
x, y 0
min z = 8 x 6 y
Sujet
5 x 3 y 30
2 x 3 y 24
v1
v
2
x 3 y 18 v3
x, y 0
5 3
30
2 3 x 24
1 3
18
max
Sujet
v1
5 2 1 8
3 3 3 v2 6
v3
Problme primal
T
min c x
Sujet Ax b
x0
max bT y
Sujet AT y c
y0
min c T x
Sujet Ax = b
x0
Problme dual
max bT y
Sujet AT y c
min z = 8 x 6 y
Sujet
5 x + 3 y 30
2 x + 3 y 24
x + 3 y 18
x, y 0
min c T x
Sujet Ax = b
x0
min z = 8 x 6 y
Sujet
5x + 3 y + u
= 30 w1
w
2x + 3y + p
= 24 2
x + 3y
+ h = 18 w3
x, y , u , p , h 0
x
5 3 1 0 0 y 30
2 3 0 1 0 u = 24
1 3 0 0 1 p 18
h
5
3
0
0
max bT y
Sujet AT y c
max
30 w1 + 24 w2 + 18w3
x
3w1 + 3w2 + 3w3 6 y
w1
0 u
w2
0 p
h
w
8
3
Sujet
2 1
3 3 w1 6
0 0 w2 0
1 0 w3 0
0
0 1
5w1 + 2w2 +
w3 8
min z = 4 x 6 y
Sujet
6 x + 3 y 10
2 x + 2 y = 20
x+ y 6
x, y 0
min z = 4 x 6 y
Sujet
6 x + 3 y 10 u1
2 x + 2 y = 20 u2
x y 6 u3
x, y 0
3
6
10
x
2
2 20
y
1 1 6
6u1 + 2u2 u3 4 x
3u1 + 2u2 u3 6 y
u1 0, u3 0
u1
6 2 1 4
3 2 1 u2 6
u3
Problme primal
T
min c x
Sujet Ax b
x0
max bT y
Sujet AT y c
y0
min c T x
Sujet Ax = b
x0
Problme dual
max bT y
Sujet AT y c
min c T x
Sujet Ax b
x0
min c T x 0T s
Sujet Ax Is = b
x 0, s 0
max bT y
AT
c
Sujet T y
0
I
max bT y
Sujet AT y c
Iy 0
max bT y
Sujet AT y c
y0
Thormes de dualit
Il est facile de dmontrer que nous pouvons passer dune paire de
problmes primal-dual lautre.
Il est galement facile de dmontrer que le problme dual du problme dual
est le problme primal.
Nous allons donc dmontrer les thormes de dualit en se rfrant la
paire o le problme primal est sous forme standard:
primal
min c T x
Sujet Ax = b
x0
Dual
max bT y
Sujet AT y c
Thormes de dualit
Thorme de dualit faible
Si x {x : Ax = b, x 0} (i.e., x est ralisable pour le problme primal) et
T
si y y : A y c (i.e., y est ralisable pour le problme dual),
alors bT y c T x
Preuve En effet,
bT y = xT AT y xT c
puisque AT y c et que x 0 .
NOTE:
Si y est une solution ralisable du dual et x*est une solution optimale du primal
alors
bT y c T x* = valeur optimale du primal
et ainsi,
bT y est une borne infrieure sur la valeur optimale du primal
Thormes de dualit
*
Corollaire Si x {x : Ax = b, x 0} et y y : A y c , et si
bT y* = cT x* ,alors x* et y* sont des solutions optimales respectivement
pour le problme primal et pour le problme dual.
*
Thormes de dualit
Thorme de dualit forte Si un des deux problmes primal ou dual
possde une solution optimale avec valeur finie, alors la mme chose est
vraie pour lautre problme, et les valeurs optimales des deux problmes
sont gales. Si un des deux problmes nest pas born, alors le domaine
ralisable de lautre problme est vide.
Preuve La seconde partie de lnonc dcoule directement du thorme de
dualit faible. En effet, supposons que le problme primal nest pas borne
infrieurement; ainsi cTx . Or si le problme dual tait ralisable,
T
alors il existerait un y y : A y c et par le thorme de dualit faible,
nous aurions que bT y c T x ;i.e., bTy serait une borne infrieure sur la
valeur de la fonction conomique du primal cTx, une contradiction.
Thormes de dualit
Pour dmontrer la premire partie, supposons que le problme primal
possde une solution de base optimale x* pour laquelle la valeur de la
fonction conomique est gale z*.
Soit x j1 , x j2 ,..., x jm les variables de base correspondantes.
Dnotons cB = [c j1 , c j2 ,..., c jm ]T , et le vecteur des multiplicateurs
associs la base optimale. Rappelons que les cots relatifs des variables
sont dfinis comme suit
c j = c j T a j j = 1, 2,..., n
o a j dnote la je colonne de la matrice A.
Supposons que cette solution de base optimale est telle que
Par consquent
c j = c j T a j 0
j = 1, 2,..., n
T a j c j j = 1, 2,..., n
Thormes de dualit
Supposons que cette solution de base optimale est telle que
Par consquent
c j = c j T a j 0 j = 1,2,..., n
T a j c j j = 1, 2,..., n
ou
aTj c j j = 1, 2,..., n
aT
T1
a2 = AT c
T
a n
{ y : AT y c}
Thormes de dualit
valuons maintenant la valeur de la solution ralisable pour le problme
dual. Rappelons dabord la dfinition de
T
= B 1 cB
Il sensuit que
.
T
bT = bT B 1 cB = ( B 1b)T cB = x*B cB = z *
T b = z*
primal
min c T x
Sujet Ax = b
x0
Dual
max bT y
Sujet AT y c
(i )
( ii )
xj > 0
aTj y = c j
aTj y < c j x j = 0
min c T x
Sujet Ax = b
x0
max bT y
Sujet AT y c
Donc
j =1
x j aTj y c j = 0
j =1
Thorie des carts complmentaires
aT1
T
j = 1, 2 ,=...,
[ x1n, x2 , , xn ] a2 y
aT
n
x j [ a T j y c j ] = 0
n
Donc
x j aTj y c j = 0
= x T AT y
j =1
n
Or
x j a y c j =
T
j
j =1
Par consquent
j =1
T
j j
x a y
x j c j = x T AT y c T x = bT y c T x
j =1
bT y = c T x
x j aTj y c j = bT y c T x = 0
j =1
Puisque
x j 0 et aTj y c j j = 1, 2,..., n,
j = 1, 2,..., n
min c T x
Sujet Ax b
x0
max bT y
Sujet AT y c
y0
(i )
( ii )
xj > 0
aTj y = c j
aTj y < c j
xj = 0
(iii )
(iv )
a i x > bi
yi > 0
yi = 0
a i x = bi
min c T x
Sujet Ax b
x0
max bT y
Sujet AT y c
I y0
max bT y
Sujet AT y c
I y0
min c T x
Sujet Ax Is = b
x, s 0
max bT y
Sujet AT y c
I y0
Pour j=1,2,,n
(i )
( ii )
xj > 0
aTj y = c j
aTj y < c j
xj = 0
yi = 0
si = 0
et pour i=1,2,,m
(iii ) s i > 0
(iv ) y i < 0
x
s
(i )
( ii )
xj > 0
aTj y < c j
aTj y = c j
xj = 0
et pour i=1,2,,m
(iii ) s i > 0
(iv ) y i < 0
yi = 0
si = 0
(iii )
(iv )
a i x > bi
yi > 0
yi = 0
a i x = bi
min c T x
Sujet Ax Is = b
x, s 0
.
.
.
.
.
.
a m1 x1 + a m 2 x 2 + ... + a mn x n = bm
xj 0
j = 1,2,..., n
min z =
Sujet
x
3 / 2u
+ 1/ 4u
+ 1/ 2h
27
1/ 4h = 6 / 4
1/ 4u + p 3 / 4h = 15 / 2
y 1/12u
+ 5 /12h = 13 / 2
x, y , u , p , h 0
c j 0 j = 1,2,..., n
c ji = 0 i = 1,2,..., m
Critre de sortie
c j 0 j = 1,2,..., n
c ji = 0 i = 1,2,..., m
Critre de sortie
c j 0 j = 1,2,..., n
c ji = 0 i = 1,2,..., m
{ }
a rj x j 0
et
j =1
br < 0
Critre de sortie
c j 0 j = 1,2,..., n
c ji = 0 i = 1,2,..., m
{ }
Critre dentre
c j 0 j = 1,2,..., n
c ji = 0 i = 1,2,..., m
b1 a1s xs a rs < 0
br ars xs
bm ams xs
la valeur de xs augmente
ii) les cots relatifs des variables demeurent non
ngatifs lorsque le pivot sur ars est complt pour
effectuer le changement de base
Critre dentre
c j 0 j = 1,2,..., n
c ji = 0 i = 1,2,..., m
a rs < 0
cj
a rj
a rs
cs
Critre dentre
c j 0 j = 1,2,..., n
c ji = 0 i = 1,2,..., m
cj
a rs < 0
a rj
a rs
cs
Pour tout j tel que a rj < 0, il faut s' assurer que le nouveau cout relatif
de la variable x j demeure non ngatif; i.e.,
cj
a rj
a rs
cs 0
Critre dentre
Pour tout j tel que a rj < 0, il faut s' assurer que le nouveau cout relatif
de la variable x j demeure non ngatif; i.e.,
cj
cj
a rj
a rs
a rj
cj
a rj
cs 0
cs
a rs
cs
a rs
c j
= max
: a rj < 0
1 j n a rj
ou
cs
a rs
c j
= min
: a rj < 0
1 j n a rj
Pivot
Pour retrouver le tableau du simplexe associ la nouvelle base o la
variable dentre xs remplace la variable de sortie x j il suffit de faire un
pivot sur llment a rs < 0 .
r
Convergence
Hypothse de non dgnrescence:
les cots relatifs de toutes les variables hors base sont positifs chaque
itration
Thorme Considrons le problme de programmation linaire sous forme
standard
min z = c T x
Sujet
Ax = b
x0
c, x R n , b R m
A matrice m n
Sous lhypothse de non dgnrescence, lalgorithme dual du simplexe se
termine en un nombre fini ditrations.
Convergence
Preuve:
En supposant que la matrice A est de plein rang m, chaque solution de base
doit comporter m variables de base.
Convergence
Considrons leffet de complter un pivot sur la valeur de la fonction
conomique lors dune itration de lalg. dual du simplexe
Division de ligne r
par a rs
br
a rs
cs
Soustraire de
br
z 0 ~
z0 = z 0 c s
< z0
a rs
puisque b r < 0 , a rs < 0, et c s > 0 par hyp. de non dgnres
ence
dgnrescence
Convergence
br
~
z 0 z0 = z 0 c s
< z0
a rs
puisque b r < 0 , a rs < 0, et c s > 0 par hyp.de non dgnrescence
dgnresence
Donc ~
z 0 > z 0 et ainsi la valeur de lobjectif augmente strictement dune
itration lautre.
Par consquent une mme solution de base non ralisable o les cots
relatifs de toutes les variables hors base sont positifs, ne peut se rpter au
cours de lapplication de lalgorithme dual du simplexe.
Puisque le nombre de ces dernires est born (fini), il sensuit que
lalgorithme dual du simplexe doit tre complt en un nombre fini
ditrations.
Parallle entre
algo. du simplexe et algo. dual du simplexe
Algo. du simplexe
Recherche dans le domaine ralisable