Académique Documents
Professionnel Documents
Culture Documents
Profesor
Fecha
TEMA: DUALIDAD
El concepto de dualidad tiene un rol muy importante, no solo en programacin lineal, sino en
teora de optimizacin en general.
Todo programa matemtico, lineal o no lineal, existe asociado con otro llamado programa dual.
En particular, todo programa lineal tiene su correspondiente programa dual.
PROGRAMAS PRIMAL Y DUAL
Considerando el programa lineal definimos el Programa Primal de la siguiente manera:
En forma cannica:
Maximizar Zx = c1X 1 +
s.a.:
<= b1
<= 2
............................................................................................................
<= bi
............................................................................................................
<= bm
xj >= 0
En consecuencia, definimos al Programa Lineal Dual del Programa Primal anterior como:
Minimizar Zy = b1y 1 +
b2 y 2 +.......+ bi yi +.............+ bm ym
s.a.:
>= c1
>= cn
>= 2
...................................................................................................................
>= j
.................................................................................................................
yi >= 0
Se define el:
Max Zx = C1,C2.Cj. Cn
X1
X2
.
Xj
.
Xn
DUAL
y1
y2
Min Zy =
b1,b2.bj. bm
yi
.
ym
s.a.:
s.a.:
a11, a12.a1j..a1n
.
.
.
.
.
.
.
.
ai1, ai2..aijain
.
am1, am2amj..amn
x1
.
.
xj
.
<=
b1
.
.
bi
a11, ..ai1..am1
.
.
.
.
.
.
ai1, .aijamj
.
.
.
.
.
.
a1n, ..ain.amn
xn
bm
y1
.
.
yi
.
.
ym
>=
c1
.
.
cj
.
.
cn
Se define el:
Max Zx = c * X
s.a.:
A * X <= b
DUAL
Min Zy = b * y
s.a.:
A * y >= c
X >= 0
y >= 0
Donde:
c : Vector n componentes
X: ,,
n
,,
b: ,,
m componentes
A: Matriz (mxn)
c: Vector traspuesto de c
y:
,,
m componentes
b: ,, traspuesto de b
A: Matriz traspuesta de A (nxm)
De acuerdo a las definiciones dadas, cada Primal tiene su Dual, cambiando c por b y
minimizando en vez de maximizar. Se cambi el sentido de la desigualdad y se hizo la
trasposicin de la matriz. Luego podemos deducir las siguientes:
Propiedades Primal Dual:
a) La funcin econmica o funcional Zx, del Programa Primal est dado por:
Zx = c1X 1 +
>= ci
El Primal tiene n variables (X 1, X 2..... X n); mientras que el Dual tiene n restricciones. Por
lo tanto a cada variable del Primal corresponde una restriccin en el Dual
b) El Primal tiene m restricciones, mientras que el Dual tiene m variables ( y1, y2 ......
lo tanto a cada restriccin del primal le corresponde una variable en el dual.
ym); por
d) El rol del vector c en el Primal, corresponde al rol de b del programa Dual y viceversa
e) A todo programa lineal Primal corresponde un programa Dual.
f)
El Dual ser:
Min Zy = 100 y1 + 75 y2 + 50 y3
s.a.:
9 y1 + 8y2 + 2y3 >= 4
7 y1 + 6y2 + 5y3 >= 3
y1, y2, y3 >=0
Primer Lema de dualidad
Si Xo es una solucin factible y ptimo del Primal, yo es una solucin factible ptima del Dual
Segundo Lema de dualidad
Al obtener el ptimo del dual, hemos encontrado el ptimo del primal
Tercer Lema de dualidad
Los coeficientes de las variables libres de la funcin Z final en la tabla Simplex, son los valores
ptimos del problema dual. As por ejemplo en el programa:
Primal:
Dual:
Max Z = 3X1+5X2
s.a.:
X1
<= 4
X2 <= 6
3X1+ 2X2 <= 18
X1, X2 >= 0
Min Zy = 4 y1 + 6 y2 + 18 y3
s.a.:
y1 + 3 y3 >= 3
y2 + 2y3 >= 5
y1, y2 >= 0
+ 3 X4 +
X5 = 36
X3 + 2/3 X4 1/3 X5 = 2
X2
+ X4
=6
X1
2/3 X4 + 1/3 X5 = 2
Z + 0 X3 + 3X4 + X5 = 36
y1*
y 2*
y 3*
Los coeficientes de las variables libres introducidas X3, X4, X5 de la Z final son los
valores ptimos en la Funcin Objetivo Dual
As para:
y1*
X3 = 0
X4 = 3
y 2*
X5 = 1
y 3*
Es decir que una vez solucionado uno de los problemas (primal o dual), tenemos la respuesta
para el otro problema.
Primal
n
Mx. Z x =
Dual
m
Cj Xj
Min Z =
bi yi
Soluciones no factibles,
mejor que optima
(bi = -)
+
Zx
Min Zy
Zy
Max Zx
Soluciones factibles,
pero no optimas
Soluciones no factibles,
mejor que optima
(+)
-
(bi = -)
A y c
y sin restriccin de signo
Siendo:
c : vector de n componentes
x : vector de n componentes
b : vector de m componentes
A : matriz de orden m x n , A : transpuesta de A
y : vector de m componentes y sin restricciones de signo
Ejemplo: hallar el dual del sgte. Programa:
Max Zx = 4 x1 + 3 x2 + 5 x3
s.a.:
x1 + x2 + x3 = 10
2 x1 + 7 x2 + x3 = 50
4 x1 + x2 + 3 x3 = 80
x1 + 2 x2 + 7 x3 = 100
x1 , x2 , x3 0
Solucin: El dual ser:
Min Zy = 10 y1 + 50 y2 + 80 y3 + 100 y4
s.a.:
y1 + 2 y2 + 4 y3 + y4 4
y1 + 7 y2 + y3 + 2 y4 3
y1 + y2 + 3 y3 + 7 y4 5
yi : sin restricciones de signo, ( i = 1....4)
Caso 3.- Si el programa primal P es uno expresado, como:
Max Zx = c x
s.a.
Ax <b
(x : sin restriccin de signo)
Tiene el dual D, expresado como:
Min Zy = b y
s.a. :
A y = c
x>0
Ejemplo: Hallar el dual del siguiente programa:
Max Zx = 4 x1 + 7 x2 + 8 x3
s.a.:
4 x1 + 2 x2 + x3 <= 100
x1 + 3 x2 + 7 x3 <= 80
2 x1 + 6 x2 + 3 x3 <= 50
( x sin restriccin de signo )
Solucin: El dual ser:
Min Zy = 100 y1 + 80 y2 + 50 y3
s.a.:
y1 + y2 + 2 y3 = 4
2 y1 + 3 y2 + 6 y3 = 7
y1 + 7 y2 + 3 y3 = 8
y1 , y2 , y3 >= 0
Caso 4.- Si el programa Primal es uno expresado por la forma:
Max Zx = c x
s.a.:
Ax = b
( x: sin restriccin de signo )
Tiene el Dual expresado como:
Min Zy = b y
s.a.:
A y = c
( y : sin restriccin de signo )
Ejemplo: Hallar el Dual del siguiente programa:
Max Zx = 4 x1 + 7 x2 + 0 x3
s.a.:
2 x1 + 3 x2 + x3 = 20
x1 + 10 x2 + 3 x3 = 50
x1 , x2 , x3 sin restricciones
Solucin: El dual ser:
Min Zy = 20 y1 + 50 y2
s.a.:
y2 = 4
2 y1 +
3 y1 + 10 y2 = 7
y1 - 3 y2 = 0
( y1 , y2 sin restricciones)
El resumen de los resultados anteriores se muestran en el siguiente cuadro:
PRIMAL
DUAL
Maximizacin
Minimizacin
signo