Está en la página 1de 64

ESCUELA TCNICA SUPERIOR DE INGENIERA

DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL

Dualidad y postoptimizacin

Jos Mara Ferrer Caja


Universidad Pontificia Comillas
Definicin

 A cada problema de optimizacin lineal le corresponde


otro que se denomina problema dual
 En forma cannica
Primal Dual

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

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 2
Interpretacin econmica

 El valor de la variable dual yj representa el


incremento en la funcin objetivo z del problema
primal al aumentar marginalmente el recurso bj
 Expresiones equivalentes:
 Variable dual
 Precio en la sombra
 Multiplicador simplex

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 3
Tabla de transformaciones

minimizacin maximizacin
VARIABLES RESTRICCIONES
0
0
No restringida =
RESTRICCIONES VARIABLES
0
0
= No restringida

 Las transformaciones y las relaciones entre ambos


problemas son simtricas

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 4
Problema dual. Ejemplo

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

 El valor de la funcin objetivo para cualquier solucin


factible del problema de maximizacin es menor o igual
que el valor de la funcin objetivo para cualquier
solucin factible del problema de minimizacin

cT x bT y

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 6
Teorema fuerte de dualidad

 Si uno de los problemas tiene solucin ptima,


entonces el otro tambin, y los valores objetivos
ptimos coinciden

cT x * = bT y *

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 7
Soluciones bsicas complementarias (1)

 En cada iteracin del mtodo simplex, se encuentra


una solucin bsica factible del primal y una solucin
bsica ptima (con costes reducidos positivos) del
dual. Los valores objetivos coinciden

xB = B1b y = cTB B1
cT x = bT y

 Si la solucin bsica del primal no es ptima, la


solucin bsica del dual no es factible

 Si la solucin bsica del primal es ptima, la solucin


bsica del dual tambin es ptima

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 8
Soluciones bsicas complementarias (2)

 Cuando los problemas primal y dual originales


corresponden a la forma cannica, en cada iteracin
del mtodo simplex:
 Los valores de las variables duales originales son los costes
reducidos de las variables primales de holgura (y exceso)
 Los valores de las variables duales de holgura (y exceso)
son los costes reducidos de las variables primales originales
 Los costes reducidos de las variables duales no bsicas son
los valores de las variables primales bsicas

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 9
Soluciones complementarias. Ejemplo (1)

max x 1 + 3x 2 min 3y1 + y2


x1 + x2 3 y1 y 2 1
(P ) (D )
x 1 + x 2 1 y1 + y 2 3
x 1, x 2 0 y1 , y 2 0

 En forma estndar

min x 1 3x 2 min 3y1 + y2


x1 + x 2 + x 3 =3 y1 y 2 y 3 =1
x 1 + x 2 + x4 = 1 (D )
y1 + y 2 y4 = 3
x 1, x 2 , x 3 , x 4 0 y1 , y 2 , y 3 , y 4 0

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 10
Soluciones complementarias. Ejemplo (2)


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

 Solucin no ptima para (P) y no factible para (D)

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 11
Soluciones complementarias. Ejemplo (3)

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

 Solucin no ptima para (P) y no factible para (D)

 Algebraicamente

y 1 1

T 1 T 1
y = = cBB = 0 3

y2
( ) = 0 3
0 1
( )

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 12
Soluciones complementarias. Ejemplo (4)

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

 Solucin ptima para (P) y factible para (D)

 Algebraicamente
y * 1/ 2 1/ 2
1 T 1
T
(y*) = = cBB = 1 3
( ) = 2 1
( )
y2 * 1/ 2 1/ 2

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 13
Soluciones complementarias. Ejemplo (5)

 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)

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 14
Teorema fundamental de dualidad

 Dados dos problemas respectivamente duales, se


cumple una y slo una de las siguientes afirmaciones:
 Ambos problemas tienen solucin ptima
 Uno de ellos tiene solucin no acotada y el otro es no factible
 Ambos problemas son no factibles

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 15
Teorema de holguras complementarias

 Dados dos problemas respectivamente duales, con


soluciones ptimas x* e y*:
 Si una variable es bsica su restriccin dual se cumple con
igualdad (la variable dual de holgura no es bsica)
 Si una restriccin se cumple estrictamente (variable de holgura
bsica) su variable dual no es bsica (y por tanto, nula)

 Dada una solucin


 Se llama restriccin activa a la que se cumple con igualdad
 Se llama restriccin inactiva a la que se cumple con
desigualdad estricta

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 16
Holguras complementarias. Ejemplo (1)
Queremos resolver el problema:

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

Como tiene 2 restricciones, su problema dual tendr dos


variables, y podr resolverse geomtricamente:

max w = 5y1 + 2y2


y1 +4y2 8
(D) y1 +y2 4
y1 2y2 2
y1, y2 0

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 17
Holguras complementarias. Ejemplo (2)
y1 = 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

 La solucin ptima del problema dual es


y1* = 10/3, y2* = 2/3
 La funcin objetivo vale w* = 18
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 18
Holguras complementarias. Ejemplo (3)

 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

 Se ha llegado a la solucin ptima del problema primal sin


necesidad de usar el teorema de dualidad fuerte, que asegura
z* = w* = 18
 Esta propiedad podr aplicarse conjuntamente con el teorema de
holguras complementarias, aportando una ecuacin ms
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 19
Mtodo simplex dual

 Mtodo alternativo al simplex para resolver un


problema de optimizacin lineal
 Parte de una solucin bsica ptima (con costes
reducidos positivos), pero quiz infactible
 Solucin dual factible: solucin bsica con costes reducidos
positivos
 En cada iteracin se saca de la base una variable con
valor negativo, y se mete una variable de forma que no
se pierda la optimalidad
 Cuando se consiga una solucin bsica factible (primal
factible) el mtodo termina. Si no se puede, el problema
es infactible

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 20
Algoritmo dual simplex

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

 Si se conoce una base que proporcione una solucin


bsica dual factible, se utiliza sta como solucin inicial
del algoritmo
 Cuando el problema est en forma cannica de minimizacin
con c 0, la base asociada a las variables de holgura/exceso
proporciona siempre una solucin bsica dual factible
 Si no, se requiere un mtodo para encontrar una
solucin bsica dual factible
 Un mtodo rpido es la tcnica de la restriccin artificial

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 22
Algoritmo dual simplex. Ejemplo (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

Aadimos variables de exceso y cambiamos de signo:


min z = 8x 1 + 4x 2 + 2x 3
x1 x 2 x 3 +x 4 = 5
4x 1 x 2 +2x 3 +x 5 = 2
x j 0 j

La base asociada a las variables x4 y x5 es la identidad

cTN = cTN cTB B 1N = cTN = 8 4 2 0 ( ) Dual factible

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 23
Algoritmo dual simplex. Ejemplo (2)
Se aplica el algoritmo dual simplex en forma tabular:
8 4 2 0 0
z x1 x2 x3 x4 x5 RHS
-z -1 8 4 2 0 0 0
0 x4 0 -1 -1 -1 1 0 -5
0 x5 0 -4 -1 2 0 1 -2
8 4 2

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

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 24
Algoritmo dual simplex. Ejemplo (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

Como hemos alcanzado una solucin factible (sin perder la


optimalidad), la solucin actual es ptima

x1* = 0, x2* = 4, x3 * = 1, z* = 18

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 25
Tcnica de la restriccin artificial (1)
 Expresar el problema en forma cannica de minimizacin
min cT x
(P ) Ax b
x 0
 Aadir variables de holgura (exceso) en todas las restricciones y
cambiar de signo para obtener la identidad
min cT x min cT x
Ax Ix h = b Ax + Ix h = b
x 0, x h 0 x 0, x h 0
 Construir la tabla asociada a la base B = I
 Si c j z j 0 j la solucin bsica actual es dual factible
Aplicar el algoritmo dual simplex
 Si no, agregar la restriccin x j M con M arbitrariamente
grande j I N

 Aadir una variable de holgura x j + x n +1 = M


j I N
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 26
Tcnica de la restriccin artificial (2)
 Introducir a la tabla la fila asociada a la restriccin artificial, con
variable bsica x n +1
{
 Meter en la base la variable x t con ct = min cj : cj < 0
j
} y sacar la
variable x n +1 pivotando sobre el elemento y n +1 t
 Se habr alcanzado una solucin dual factible Aplicar el
algoritmo dual simplex

 Si este problema es infactible el problema P es infactible


 Si tiene solucin ptima (x *, x n +1 *)
 x n +1 * > 0 x * es la solucin ptima de P

 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

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 27
Tcnica de la restriccin artificial. Ejemplo (1)

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

La 1 restriccin es de igualdad. Habra que desglosarla en dos


desigualdades. En este caso lo podemos evitar ya que x1 aporta una
columna a la identidad. Aadimos variables de holgura a las otras dos:
min 2x 1 + x 2 3x 3
x 1 + 2x 2 + x 3 =6
x 2 + 2x 3 x 4 =2
2x 2 + x 3 + x5 = 4
x 1, x 2 , x 3 , x 4 , x 5 0
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 28
Tcnica de la restriccin artificial. Ejemplo (2)
Cambiamos de signo la 2 restriccin para obtener la identidad:
min 2x 1 + x 2 3x 3
x 1 + 2x 2 + x 3 =6
x 2 2x 3 + x 4 = 2
2x 2 + x 3 + x5 = 4
x 1, x 2 , x 3 , x 4 , x 5 0
Tomamos la base B = I asociada a las variables x1, x4 y x5
La tabla inicial es -2 1 -3 0 0
z x1 x2 x3 x4 x5 RHS
-z -1 0 5 -1 0 0 12
-2 x1 0 1 2 1 0 0 6
0 x4 0 0 -1 -2 1 0 -2
0 x5 0 0 2 1 0 1 4
No es dual factible, ya que c3 z3 < 0
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 29
Tcnica de la restriccin artificial. Ejemplo (3)
Aadimos al problema la restriccin artificial, con su variable de holgura
x2 + x3 M x2 + x3 + x6 = M , x6 0
Aadimos la columna de x6 a la base anterior consiguiendo de nuevo la
identidad (de orden 4 ahora)
z x1 x2 x3 x4 x5 x6 RHS
-z -1 0 5 -1 0 0 0 12
x1 0 1 2 1 0 0 0 6
x4 0 0 -1 -2 1 0 0 -2
x5 0 0 2 1 0 1 0 4
x6 0 0 1 1 0 0 1 M

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

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 30
Tcnica de la restriccin artificial. Ejemplo (4)
Tras el pivoteo, se obtiene una solucin bsica dual factible
Se aplica normalmente el algoritmo dual simplex

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

Sale de la base x5 por ser la variable bsica con valor ms negativo


Entra en la base x6 por ser la nica variable con y5j < 0
Se pivota sobre el elemento correspondiente
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 31
Tcnica de la restriccin artificial. Ejemplo (5)

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

Hemos alcanzado una solucin factible (sin perder la optimalidad)


La solucin actual es ptima para el problema modificado
Como x6* > 0 tambin es ptima para el problema original:
x1* = 2, x2 * = 0, x3 * = 4
x4 * = 6, x5 * = 0
z* =16
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 32
Anlisis de sensibilidad

 Estudia los efectos sobre la solucin ptima de un


cambio en alguno de los elementos del problema
 Se trata de aprovechar la informacin dada en la tabla
ptima, no de comenzar a resolver de nuevo el
problema
 Se introducirn los cambios de forma oportuna en la
tabla ptima
 Si se pierde la optimalidad Aplicar simplex
 Si se pierde la factibilidad Aplicar dual simplex

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 33
Anlisis de sensibilidad. Ejemplo
Sea el siguiente problema
min 2x 1 + x 2 4x 3
x1 x2 + x 3 1
x 1 + 4x 2 3x 3 5
x 1, x 2 , x 3 0
Su tabla ptima es

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

x1* = 0, x2* = 8, x3* = 9, z* = 28

Se quiere resolver el problema tras algunas modificaciones


ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 34
Cambio en el vector de costes

 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

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 35
Cambio en el vector de costes. Ejemplo (1)
 Se reemplaza c3 = -4 por c3 = -1
Como x3 es una variable bsica hay que recalcular toda la fila 0

-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:

x1 x2 x3 x4 x5 RHS Solucin ptima:


-z 0 0 1/5 9/5 1/5 14/5 9 4
x1* = , x2* = , x3* = 0
x1 1 0 1/5 4/5 1/5 9/5 5 5
14
x2 0 1 -4/5 -1/5 1/5 4/5 z* =
5
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 36
Cambio en el vector de costes. Ejemplo (2)
 Para qu valores de c1 la solucin actual sigue siendo ptima?
Como x1 no es bsica basta con recalcular su coste reducido:

c1 ' = c1 + c1 ' c1 = 14 + c1 ' (2) = c1 '+ 16

La solucin seguir siendo ptima si este coste reducido es positivo:

c1 ' 0 c1 '+ 16 0 c1 ' 16

Por lo tanto, la solucin es ptima si y slo si c1 -16

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 37
Cambio en el vector del lado derecho

 Sustitucin de b por b

 Recalcular b' = B 1b ', z ' = cTBb'


 Si b ' 0 la tabla actual sigue siendo ptima
 Si no solucin no factible. Aplicar dual simplex

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 38
Cambio en el vector del lado derecho. Ejemplo
 Se reemplaza b1 = 1 por b1 = -2
Hay que recalcular el vector de cotas

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

Debe salir de la base la variable x3. Como su fila es completamente


positiva el problema es infactible

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 39
Cambio en una columna no bsica

 Sustitucin de aj por aj siendo xj no bsica

 Recalcular y j ' = B 1a j ', cj ' = cj cTB y j '


 Si cj ' 0 la solucin actual sigue siendo ptima
 Si cj ' < 0 solucin no ptima. Aplicar simplex

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 40
Cambio en una columna no bsica. Ejemplo
 Se reemplaza a1 = (1 1)T por a1 = (-2 1)T
Hay que recalcular la columna y1 y el nuevo coste reducido c1 - z1

4 12 7
1
y1 ' = B a1 ' = =
3 1 1 5
7

c1 ' = c1 cB y1 ' = 2 (4 1) = 25
T

La solucin ya no es ptima. Se aplica el algoritmo simplex:


Entra la variable x1 en la base
Como la columna y1 es completamente negativa el problema tiene
solucin no acotada

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 41
Adicin de una nueva variable

 Introduccin de una variable xn+1 con columna an+1 y


coste cn+1

1 T
 Calcular n +1y = B a n +1 ,
cn +1 = cn +1 cB yn +1

 Si cn +1 0 la solucin actual sigue siendo ptima


 Si cn +1 < 0 solucin no ptima. Aplicar simplex

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 42
Adicin de una nueva restriccin
n
 Agregacin de la nueva restriccin a j =1
m +1 j x j bm+1

 Si la solucin ptima del problema original satisface la


restriccin sigue siendo ptima
 Si no, aadir una variable de holgura xn+1
n

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

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 43
Adicin de una nueva restriccin. Ejemplo (1)
 Se aade al problema la restriccin 4x1 - x2 + 2x3 = 5
Se desglosa la igualdad en dos desigualdades que se deben verificar
4x1 x 2 + 2x 3 5
4x1 x 2 + 2x 3 5

La solucin bsica actual x* = (0 8 9) verifica la 2 desigualdad, pero no


la 1: se aade una variable de holgura
4x1 x 2 + 2x 3 + x 6 = 5
Se introducen en la tabla la fila correspondiente y la columna de x6

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

Tras la operacin, se aplica 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 -2 0 0 -5 -1 1 -5
7 13/5 3

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 45
Adicin de una nueva restriccin. Ejemplo (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

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 46
Cambio en una columna bsica

 Sustitucin de ak por ak siendo xk bsica

 Considerar xk como una nueva variable con el mismo


coste que xk. Calcular yk ' = B 1ak ', ck ' = ck cTB yk '
 Si ykk ' 0 colocar los nuevos datos en la columna de la
tabla correspondiente a xk. Pivotar sobre el elemento ykk.
Si se ha perdido slo optimalidad, aplicar simplex
Si se ha perdido factibilidad aplicar dual simplex
 Si ykk ' = 0 la variable xk se considera artificial con coste M
Aadir a la tabla la columna de xk con los coeficientes
obtenidos
En la columna xk poner M como nuevo coste reducido
Pivotar sobre el elemento ykk para conseguir ck zk = 0
Aplicar el mtodo de las penalizaciones
ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 47
Cambio en una columna bsica. Ejemplo (1)
 Se reemplaza a2 = (-1 4)T por a2 = (-1 5)T
Sea la variable x2 con columna a2 = (-1 5)T y coste c2 = c2 = 1

1 4 11 1
y2 ' = B a 2 ' = =
3 1 5 2
1

c2 ' = c2 cB y2 ' = 1 (4 1) = 3
T

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

No se ha perdido optimalidad ni factibilidad Tabla ptima


Solucin ptima:

x1* = 0, x2 * = 4, x3 * = 5, z* = 16

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 49
Cambio en una columna bsica. Ejemplo (3)
 Se reemplaza a2 = (-1 4)T por a2 = (1 -3)T
Sea la variable x2 con columna a2 = (1 -3)T y coste c2 = c2 = 1

1 4 1 1 1
y2 ' = B a 2 ' = =
3 13 0
1

c2 ' = c2 cB y2 ' = 1 (4 1) = 5
T

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

En vez de meter en la base x1 (menor coste reducido), metemos x5 que


garantiza que salga de la base la variable artificial

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

Solucin ptima: x1* = 0, x2 * = 0, x3 * = 1, z* = 4


ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 51
Programacin paramtrica

 Estudia los efectos sobre la solucin ptima de un


cambio continuo en alguno de los elementos del
problema
 Perturbacin en el vector de costes
 Perturbacin en el vector de cotas (lado derecho)
 El parmetro 0 representa el grado de perturbacin
del vector en una direccin d

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 52
Perturbacin en el vector de costes

 Se quiere resolver un problema de PL con vector de


costes c + d, siendo 0

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

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 53
Perturbacin en el vector de costes. Ejemplo (1)
Se quiere resolver el problema
min(1 + )x 1 + (3 + )x 2
x1 + x2 3
x 1 + x 2 1
x 1, x 2 0

El vector de costes es (-1 -3)T + (1 1)T


Paso 1. Obtener la solucin ptima del problema con = 0

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

Solucin ptima: x1* = 1, x2 * = 2, z* =7


ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 54
Perturbacin en el vector de costes. Ejemplo (2)
Paso 2. Reemplazar el vector de costes c = (-1 -3)T por c = (-1+ -3+)T
-1+ -3+ 0 0
x1 x2 x3 x4 RHS
-z 0 0 2- 1 7-3
-1+ x1 1 0 1/2 -1/2 1
-3+ x2 0 1 1/2 1/2 2

La tabla sigue siendo ptima si 2 - 0 2


Para [0,2] la solucin ptima es x1* = 1, x2* = 2, z* =7 + 3
Paso 3. Hacer = 2. Meter en la base x3 por tener coste reducido 0

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

La tabla sigue siendo ptima si -4 + 2 0 y 3 - 0 2 3

Para [2,3] la solucin ptima es x1* = 0, x2 * = 1, z* =3 +


ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 56
Perturbacin en el vector de costes. Ejemplo (4)
Paso 3. Hacer = 3. Meter en la base x4 por tener coste reducido 0

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

La tabla sigue siendo ptima si -1 + 0 y -3 + 0 3


Para [3,) la solucin ptima es x1* = 0, x2* = 0, z* = 0

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 58
Perturbacin en el vector de cotas

 Se quiere resolver un problema de PL con vector de cotas


b + d, siendo 0

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

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 59
Perturbacin en el vector de cotas. Ejemplo (1)
Se quiere resolver el problema
min x 1 3x 2
x1 + x 2 3
x 1 + x 2 1 +
x 1, x 2 0

El vector del lado derecho es (3 1)T + (-1 1)T


Paso 1. Obtener la solucin ptima del problema con = 0

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

Solucin ptima: x1* = 1, x2 * = 2, z* =7


ESCUELA TCNICA SUPERIOR DE INGENIERA
DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 60
Perturbacin en el vector de cotas. Ejemplo (2)
Paso 2. Reemplazar el vector de cotas b = (3 1)T por b = (3- 1+)T
1
1 3 1
2 1 ;
b ' = B 1b ' = 2
=
1 1 +

2
T
(
z ' = c b ' = 1 3 )
2
= 7
1
B

2 2

La tabla sigue siendo factible si 1 - 0 1


Para [0,1] la solucin ptima es x1* = 1 , x2 * = 2, z* =7 +

Paso 3. Hacer = 1. Sacar de la base x1 por tener valor 0

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

Paso 2. Reemplazar el vector de cotas b = (2 2)T por b = (3- 1+)T

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

La tabla sigue siendo factible si -2 + 2 0 y 3 - 0 1 3


Para [1,3] la solucin ptima es x1* = 0, x2 * = 3 , z* = 9 + 3

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 62
Perturbacin en el vector de cotas. Ejemplo (4)

Paso 3. Hacer = 3. Sacar de la base x2 por tener valor 0

x1 x2 x3 x4 RHS
-z 2 0 3 0 6
x4 -2 0 -1 1 4
x2 1 1 1 0 0

Como la fila 2 es completamente positiva no se puede pivotar


Para (3, ) el problema es infactible

ESCUELA TCNICA SUPERIOR DE INGENIERA


DEPARTAMENTO DE ORGANIZACIN INDUSTRIAL Dualidad y postoptimizacin - 63

También podría gustarte