Documentos de Académico
Documentos de Profesional
Documentos de Cultura
T lp2 JF PDF
T lp2 JF PDF
Dualidad y postoptimizacin
max cT x minbT y
x y
(P) Ax b T
(D) A y c
x 0 y 0
x n , y m,c n , A mn ,b m
La correspondencia es biunvoca
El dual del dual es el primal
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 1
Problema dual en forma cannica. Ejemplo
Primal Dual
max z = 3x1 + 5x2
min w = 4y1 + 12y2 + 18y3
x1 4
y1 +3y3 3
2x2 12
2y2 +2y3 5
3x1 +2x2 18
y1, y2, y3 0
x1, x2 0
minimizacin maximizacin
VARIABLES RESTRICCIONES
0
0
No restringida =
RESTRICCIONES VARIABLES
0
0
= No restringida
min z = 2x1 x 3 + 4x 4
x1 +3x2 2x4 0
Primal 4x2 +x 3 +5x4 3
2x1 x2 +3x3 = 1
x1, x2 0, x 3 0
max w = 3y2 + y3
y1 2y3 2
3y1 4y2 y3 0
Dual
y2 +3y3 1
2y1 +5y2 = 4
y1 0, y2 0
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 5
Teorema dbil de dualidad
cT x bT y
cT x * = bT y *
xB = B1b y = cTB B1
cT x = bT y
En forma estndar
1 0 x3 3 T y1 T 1
B =
0 1 x4
1
; xB = = B b = ; y = = cBB = 0 0
1 y2
( )
Tabularmente
y3 =1, y4 =3 y1 = 0, y2 = 0
z x1 x2 x3 x4 RHS
-z -1 -1 -3 0 0 0
x3 0 1 1 1 0 3 Costes reducidos
x4 0 -1 1 0 1 1 de y1 e y2
y3 =4,y4 = 0 y1 = 0, y2 = 3
z x1 x2 x3 x4 RHS
-z -1 -4 0 0 3 3
x3 0 2 0 1 -1 2 Costes reducidos
x2 0 -1 1 0 1 1 de y1 e y4
Algebraicamente
y 1 1
T 1 T 1
y = = cBB = 0 3
y2
( ) = 0 3
0 1
( )
y3 = 0,y4 = 0 y1 = 2,y2 = 1
z x1 x2 x3 x4 RHS
-z -1 0 0 2 1 7
x1 0 1 0 1/2 -1/2 1 Costes reducidos
x2 0 0 1 1/2 1/2 2 de y3 e y4
Algebraicamente
y * 1/ 2 1/ 2
1 T 1
T
(y*) = = cBB = 1 3
( ) = 2 1
( )
y2 * 1/ 2 1/ 2
Geomtricamente
(0,3)
(1,2)
(0,1)
(-1,0)
(0,0) (3,0)
(0,3)
(2,1)
(0,0)
(1,0) (3,0)
(0,-1)
min z = 8x 1 + 4x 2 + 2x 3
x1 +x 2 +x 3 5
(P )
4x1 +x 2 2x 3 2
x 1, x 2 , x 3 0
y 1 2y 2 = 2
ptimo
10 2
,
3 3
y 1 + 4y 2 = 8
y2 = 0
5
c = y1 + y 2 = 4
2
y1* = 10/3 > 0 (la 1 variable es bsica) x1* + x2* + x3* = 5 (la 1
restriccin es activa)
y2* = 2/3 > 0 (la 2 variable es bsica) 4x1* + x2* - 2x3* = 2 (la 2
restriccin es activa)
y1* + 4y2* < 8 (la 1 restriccin es inactiva) x1* = 0
Se resuelve el sistema:
x2* + x3* = 5
x2* - 2x3* = 2
x2* = 4, x3* = 1 con z* = 18
1. Inicializacin
Elegir una base B que proporcione una solucin bsica dual
factible (con costes reducidos positivos)
xB = b = B 1b
cTN = cTN cTB B 1N = cTN cTBY 0
xN = 0
2. Criterio de factibilidad. Eleccin de la variable de salida
Si b = B 1b 0 La solucin actual es ptima
Si no, elegir la variable bsica xs tal que bs = min {bi : bi < 0}
3. Eleccin de la variable de entrada
Si y sj 0 j I N Problema infactible (el dual es no acotado)
Si no, elegir xt no bsica tal que ct z t = min c j z j : y < 0
y st j I N
y sj sj
4. Pivoteo
Con la nueva base B actualizar B 1, xB , Y , z, cN
Volver al paso 2
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 21
Inicializacin del algoritmo dual simplex
min z = 8x 1 + 4x 2 + 2x 3
x1 +x 2 +x 3 5
(P )
4x1 +x 2 2x 3 2
x 1, x 2 , x 3 0
z x1 x2 x3 x4 x5 RHS
-z -1 6 2 0 2 0 -10
x3 0 1 1 1 -1 0 5
x5 0 -6 -3 0 2 1 -12
1 2/3
z x1 x2 x3 x4 x5 RHS
-z -1 2 0 0 2/3 2/3 -18
x3 0 -1 0 1 -1/3 1/3 1 0
x2 0 2 1 0 -2/3 -1/3 4 0
x1* = 0, x2* = 4, x3 * = 1, z* = 18
x n +1 * = 0, cn 1 z n 1 = 0 x * es la solucin ptima de P
x n +1 * = 0, cn 1 z n 1 > 0 P es no acotado
min 2x 1 + x 2 3x 3
x 1 + 2x 2 + x 3 = 6
x 2 + 2x 3 2
2x 2 + x 3 4
x 1, x 2 , x 3 0
Entra en la base x3 por ser la nica variable con coste reducido negativo
Sale de la base x6
Se pivota sobre el elemento correspondiente
z x1 x2 x3 x4 x5 x6 RHS
-z -1 0 6 0 0 0 1 12+M
x1 0 1 1 0 0 0 -1 6-M
x4 0 0 1 0 1 0 2 2M-2
x5 0 0 1 0 0 1 -1 4-M
x3 0 0 1 1 0 0 1 M
1
z x1 x2 x3 x4 x5 x6 RHS
-z -1 0 7 0 0 1 0 16
x1 0 1 0 0 0 -1 0 2 0
x4 0 0 3 0 1 2 0 6 0
x6 0 0 -1 0 0 -1 1 M-4 0
x3 0 0 2 1 0 1 0 4 0
x1 x2 x3 x4 x5 RHS
-z 14 0 0 13 3 28
x3 5 0 1 4 1 9
x2 4 1 0 3 1 8
Sustitucin de ck por ck
Si xk es no bsica
Recalcular su coste reducido ck ' = ck + ck ' ck
Si ck ' 0 la solucin actual sigue siendo ptima
Si ck ' < 0 solucin no ptima. Aplicar simplex
Si xk es bsica
Recalcular los costes reducidos cj ' = cj + (ck ck ')ykj j I N
Recalcular el valor de la funcin objetivo z ' = z + (ck ck ')bk
Si cj ' 0 j la solucin actual sigue siendo ptima
Si algn cj ' < 0 solucin no ptima. Aplicar simplex
-2 1 -1 0 0
x1 x2 x3 x4 x5 RHS
-z -1 0 0 1 0 1
-1 x3 5 0 1 4 1 9 9/5
1 x2 4 1 0 3 1 8 8/4
La tabla ya no es ptima. Se aplica el algoritmo simplex:
Sustitucin de b por b
4 1
2 3 3
= , z ' = c b ' = 4 1 = 11
b' = B b ' =
1
5 1
3 1
T
B (
1
)
La solucin ya no es factible. Se aplica el algoritmo dual simplex
x1 x2 x3 x4 x5 RHS
-z 14 0 0 13 3 -11
-4 x3 5 0 1 4 1 -3
1 x2 4 1 0 3 1 -1
4 12 7
1
y1 ' = B a1 ' = =
3 1 1 5
7
c1 ' = c1 cB y1 ' = 2 (4 1) = 25
T
1 T
Calcular n +1y = B a n +1 ,
cn +1 = cn +1 cB yn +1
a
j =1
m +1 j x j + xn+1 = bm+1
Aadir a la tabla la fila correspondiente a la nueva restriccin
con variable bsica xn+1
Aadir a la tabla la columna correspondiente a xn+1
Modificar la nueva fila para hacer 0 en las posiciones
correspondientes a las variables bsicas originales
Aplicar el algoritmo dual simplex
x1 x2 x3 x4 x5 x6 RHS
-z 14 0 0 13 3 0 28
x3 5 0 1 4 1 0 9
x2 4 1 0 3 1 0 8
x6 4 -1 2 0 0 1 5
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 44
Adicin de una nueva restriccin. Ejemplo (2)
Para adaptar la tabla se realiza la operacin
f 6 f 6 + f2 2 f 3
x1 x2 x3 x4 x5 x6 RHS
-z 14 0 0 13 3 0 28
x3 5 0 1 4 1 0 9
x2 4 1 0 3 1 0 8
x6 -2 0 0 -5 -1 1 -5
7 13/5 3
x1 x2 x3 x4 x5 x6 RHS
-z 44/5 0 0 0 2/5 13/5 15
x3 17/5 0 1 0 1/5 4/5 5
x2 14/5 1 0 0 2/5 3/5 5
x4 2/5 0 0 1 1/5 -1/5 1
Solucin ptima:
x1* = 0, x2 * = 5, x3 * = 5, z* =15
2
Como y22 = 2 0 sustituimos la columna y2 por y2
x1 x2 x3 x4 x5 RHS
-z 14 3 0 13 3 28
x3 5 1 1 4 1 9
x2 4 2 0 3 1 8
Se pivota sobre y22 para recuperar la tabla del simplex
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 48
Cambio en una columna bsica. Ejemplo (2)
x1 x2 x3 x4 x5 RHS
-z 8 0 0 17/2 3/2 16
x3 3 0 1 5/2 1/2 5
x2 2 1 0 3/2 1/2 4
x1* = 0, x2 * = 4, x3 * = 5, z* = 16
0
Como y22 = 0 consideramos la variable x2 como variable artificial para
preservar la base. Le asignamos un coste arbitrariamente grande M
x1 x2 x2 x3 x4 x5 RHS
-z 14 M 5 0 13 3 28
x3 5 0 1 1 4 1 9
x2 4 1 0 0 3 1 8
Se pivota sobre y22 para recuperar la tabla del simplex
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 50
Cambio en una columna bsica. Ejemplo (4)
Tras el pivoteo se aplica el mtodo de las penalizaciones del simplex
x1 x2 x2 x3 x4 x5 RHS
-z 14-4M 0 5 0 13-3M 3-M 28-8M
x3 5 0 1 1 4 1 9 9
x2 4 1 0 0 3 1 8 8
x1 x2 x2 x3 x4 x5 RHS
-z 2 M-3 5 0 4 0 4
x3 1 -1 1 1 1 0 1
x5 4 1 0 0 3 1 8
1. Hacer 0 = 0 y k = 0
Obtener la solucin ptima del problema con = 0
2. Mediante anlisis de sensibilidad, determinar el intervalo [k,k+1]
para el que la tabla sigue siendo ptima
3. Si k+1 = parar
Si no, hacer = k+1 y aplicar simplex, metiendo en la base una
variable no bsica con coste reducido 0
Si su columna es negativa Solucin no acotada para > k+1
Si no, Hacer k = k+1 y volver al paso 2
x1 x2 x3 x4 RHS
-z 0 0 2 1 7
x1 1 0 1/2 -1/2 1
x2 0 1 1/2 1/2 2
x1 x2 x3 x4 RHS
-z 0 0 0 1 1
x1 1 0 1/2 -1/2 1 2
x2 0 1 1/2 1/2 2 4
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 55
Perturbacin en el vector de costes. Ejemplo (3)
x1 x2 x3 x4 RHS
-z 0 0 0 1 1
x3 2 0 1 -1 2
x2 -1 1 0 1 1
Tabla ptima
Paso 2. Reemplazar el vector de costes c = (1 -1)T por c = (-1+ -3+)T
-1+ -3+ 0 0
x1 x2 x3 x4 RHS
-z -4+2 0 0 3- 3-
0 x3 2 0 1 -1 2
-3+ x2 -1 1 0 1 1
x1 x2 x3 x4 RHS
-z 2 0 0 0 0
x3 2 0 1 -1 2
x2 -1 1 0 1 1 1
x1 x2 x3 x4 RHS
-z 2 0 0 0 0
x3 1 1 1 0 3
x4 -1 1 0 1 1
Tabla ptima
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 57
Perturbacin en el vector de costes. Ejemplo (5)
Paso 2. Reemplazar el vector de costes c = (2 0)T por c = (-1+ -3+)T
-1+ -3+ 0 0
x1 x2 x3 x4 RHS
-z -1+ -3+ 0 0 0
0 x3 1 1 1 0 3
0 x4 -1 1 0 1 1
1. Hacer 0 = 0 y k = 0
Obtener la solucin ptima del problema con = 0
2. Mediante anlisis de sensibilidad, determinar el intervalo [k,k+1]
para el que la tabla sigue siendo factible
3. Si k+1 = parar
Si no, hacer = k+1 y aplicar dual simplex, sacando de la base
una variable bsica con valor 0
Si su fila es positiva Problema infactible para > k+1
Si no, Hacer k = k+1 y volver al paso 2
x1 x2 x3 x4 RHS
-z 0 0 2 1 7
x1 1 0 1/2 -1/2 1
x2 0 1 1/2 1/2 2
x1 x2 x3 x4 RHS
-z 0 0 2 1 6
x1 1 0 1/2 -1/2 0
x2 0 1 1/2 1/2 2
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 61
Perturbacin en el vector de cotas. Ejemplo (3)
x1 x2 x3 x4 RHS
-z 2 0 3 0 6
x4 -2 0 -1 1 0
x2 1 1 1 0 2
1 1 3 2 + 2
1
b' = B b'= =
1 0 1 + 3
2 + 2
T
(
z ' = c B b ' = 0 3 ) = 9 3
3
x1 x2 x3 x4 RHS
-z 2 0 3 0 6
x4 -2 0 -1 1 4
x2 1 1 1 0 0