Está en la página 1de 44

Análisis de Dualidad y

Sensibilidad
Objetivo:
Aplicar el concepto de Dualidad en el
análisis post optimal.
Dualidad y Análisis de Sensibilidad
• La solución óptima de una programación lineal se basa
en las condiciones que prevalecen en el momento de
formular y resolver el modelo.

• En el mundo real las condiciones cambian y por lo tanto


la soluciones óptima del problema también. Por esto es
muy importante saber como cambia la solución óptima
cuando cambia un parámetro del modelo.
Dualidad y Análisis de Sensibilidad
• El análisis de sensibilidad ofrece técnicas de cómputo
eficientes para estudiar el comportamiento dinámico de
la solución óptima.

• Se estudiará la dualidad para presentar un tratamiento


algebraico del aspecto de análisis de sensibilidad.
DUALIDAD
El problema dual es una programación lineal definida en forma directa y
sistemática a partir del modelo original al que llamaremos primal.

La resolución óptima de uno produce en forma automática la resolución


óptima del otro.

El problema dual se forma a partir del primal siguiendo las siguientes


indicaciones:

1. Se define una variable dual por cada restricción primal.


2. Se define una restricción dual por cada variable primal.
3. Los coeficientes de restricción (columna) de una variable primal
definen los coeficientes en el lado izquierdo de la restricción dual.
4. Los lados derechos de las restricciones primales definen los
coeficientes de la función objetivo del problema dual.
DUALIDAD
• Las desigualdades del problema dual cambian
dependiendo de que las variables del problema primal
sean mayores o iguales a cero, menores o iguales a
cero o sin restricción.

• Las variables duales pueden ser no negativas, no


positivas o sin restricción dependiendo del tipo de
restricción primal (mayor o igual, menor o igual o estricta
igualdad).
DUALIDAD
Relaciones entre los problemas primal y dual

primal dual
Min Max
z  c1 x1  c2 x2    cn xn w  b1 y1  b2 y2    bm ym
Sujeto _ a : Sujeto _ a :
a11 x1  a12 x2    a1n xn  b1 a11 y1  a21 y2    am1 ym  c1
a21 x1  a22 x2    a2 n xn  b2 a21 y1  a22 y2    am 2 ym  c2
       
am1 x1  am 2 x2    amn xn  bm an1 y1  an 2 y2    anm ym  cn

x1 , x2 ,  xn  0 y1 , y2 ,  ym  0
La función objetivo cambia al pasar de primal a dual y vice versa
Se crea una variable dual por cada restricción del problema primal. La
cantidad de restricciones del primal es la cantidad de variables del dual
DUALIDAD
Relaciones entre los problemas primal y dual

primal dual
Min Max
z  c1 x1  c2 x2    cn xn w  b1 y1  b2 y2    bm ym
Sujeto _ a : Sujeto _ a :
a11 x1  a12 x2    a1n xn  b1 a11 y1  a21 y2    am1 ym  c1
a21 x1  a22 x2    a2 n xn  b2 a21 y1  a22 y2    am 2 ym  c2
       
am1 x1  am 2 x2    amn xn  bm an1 y1  an 2 y2    anm ym  cn

x1 , x2 ,  xn  0 y1 , y2 ,  ym  0

Los lados derechos de las restricciones primales pasan a ser los coeficientes
de la función objetivo del dual
Los coeficientes de la función objetivo primal serán los lados derechos de las
restricciones del problema dual
DUALIDAD
Relaciones entre los problemas primal y dual

primal dual
Min Max
z  c1 x1  c2 x2    cn xn w  b1 y1  b2 y2    bm ym
Sujeto _ a : Sujeto _ a :
a11 x1  a12 x2    a1n xn  b1 a11 y1  a21 y2    am1 ym  c1
a21 x1  a22 x2    a2 n xn  b2 a21 y1  a22 y2    am 2 ym  c2
       
am1 x1  am 2 x2    amn xn  bm an1 y1  an 2 y2    anm ym  cn

x1 , x2 ,  xn  0 y1 , y2 ,  ym  0

Los coeficientes de restricción por columna del primal pasan a ser los
coeficientes de restricción por renglón del problema dual. La cantidad
de variables del problema primal corresponderá a la cantidad de restricciones
del problema dual.
Reglas para construir el problema
Dual

Objetivo del problema Problema Dual


Primal Objetivo Tipo de Restricciónes Signos de variables
Maximización Minimización ≥ No restringido
Minimización Maximización ≤ No restringido

Metodología:

1. Escribir el problema primal en ecuaciones

2. Definir las variables duales

3. Convertir el problema primal a dual


DUALIDAD
Ejemplo 1 de transformación del primal al dual

Primal Dual
(min, variables≥0, restricciones ≥) (max, restricciones ≤, variables≥0)

Min
z  5 x1  4 x2
S . A. Max
6 x1  4 x2  24 w  24 y1  6 y2  y3  2 y4
x1  2 x2  6 S . A.
 x1  x2  1 6 y1  y2  y3  5
x2  2 4 y1  2 y2  y3  y4  4

x1 , x2  0 y1 , y2 , y3 , y4  0
DUALIDAD
Ejemplo 2 de transformación del primal al dual

Primal Dual
(max, variables≥0, restricciones ≥) (min, restricciones ≥, variables≤0)

Max
z  5 x1  4 x2
S . A. Min
6 x1  4 x2  24 w  24 y1  6 y2  y3  2 y4
x1  2 x2  6 S . A.
 x1  x2  1 6 y1  y2  y3  5
x2  2 4 y1  2 y2  y3  y4  4

x1 , x2  0 y1 , y2 , y3 , y4  0
DUALIDAD
Ejemplo 3 de transformación del primal al dual

Primal Dual
(min, variables≥0, restricciones ≤) (max, restricciones ≤, variables≤0)

Min
z  5 x1  4 x2
S . A. Max
6 x1  4 x2  24 w  24 y1  6 y2  y3  2 y4
x1  2 x2  6 S . A.
 x1  x2  1 6 y1  y2  y3  5
x2  2 4 y1  2 y2  y3  y4  4

x1 , x2  0 y1 , y2 , y3 , y4  0
DUALIDAD
Ejemplo 4 de transformación del primal al dual

Primal Dual
(max, variables≥0, restricciones ≤) (min, restricciones ≥, variables≥0)

Max
z  5 x1  4 x2
S . A. Min
6 x1  4 x2  24 w  24 y1  6 y2  y3  2 y4
x1  2 x2  6 S . A.
 x1  x2  1 6 y1  y2  y3  5
x2  2 4 y1  2 y2  y3  y4  4

x1 , x2  0 y1 , y2 , y3 , y4  0
DUALIDAD
Ejemplo 5 de transformación del primal al dual

Primal Dual
(max, variables≥0, restricciones =) (min, restricciones ≥, variables no
restringidas)
Max
z  5 x1  4 x2
Min
S . A.
w  24 y1  6 y2  y3  2 y4
6 x1  4 x2  24
S . A.
x1  2 x2  6
6 y1  y2  y3  5
 x1  x2  1
4 y1  2 y2  y3  y4  4
x2  2
y1 , y2 , y3 , y4 : no _ restringid as
x1 , x2  0
DUALIDAD
Problema 1
Plantee el problema dual de este problema primal

Primal Dual
(max, variables≥0, restricciones ≤) (min, variables≥0, restricciones ≥)

Max Min
z  3 x1  2 x2  x3 w  7 y1  y2
S . A. S . A.
x1  2 x2  4 x3  7 y1  5 y2  3
5 x1  x2  1 2 y1  y2  2
4 y1  1

x1 , x2 , x3  0
y1 , y2  0
DUALIDAD
Problema 2
Plantee el problema dual de este problema primal

Primal
Dual
(max, variables≥0, restricciones distintas)
Min
Max w  7 y1  y2
z  3 x1  2 x2  x3 S . A.
S . A. y1  5 y2  3
2 y1  y2  2
x1  2 x2  4 x3  7
4 y1  1
5 x1  x2  1

y1  0
x1 , x2 , x3  0
y2  0
DUALIDAD
Problema 3
Plantee el problema dual de este problema primal

Primal

Max
z  3 x1  2 x2  x3
S . A.
x1  2 x2  4 x3  7
5 x1  x2  1

x1  0
x2  0
x3  0
INTERPRETACIÓN DE LAS VARIABLES DUALES
La variable dual también se conocen con el nombre de precio sombra y se
interpreta de dos formas equivalentes:

• Yi es el precio justo que se debe pagar por una unidad del recurso i
• La función objetivo aumentará en Yi unidades monetarias por cada aumento
unitario del recurso i

Ejemplo:
La siguiente restricción se refiere a la disponibilidad de Materia Prima 1

6Xe + 4Xi ≤ 24

Su variable dual correspondiente es de y1=3/4=0.75

El valor objetivo óptimo es de z=21

Del valor del precio sombra (variable dual) se puede concluir que si en vez de
contar con 24 unidades de M1 tuviéramos 25, la función objetivo aumentaría de
$21.00 a $21.75
En otras palabras si alguien nos vende la unidad de M1 a un precio mayor que
$0.75 no valdría la pena comprarlo.
ANÁLISIS DE SENSIBILIDAD
Cambio en disponibilidad de recursos

El valor de las variables básicas está dado por:


x B  B 1b
Si hay un cambio en el vector b, se calculan las nuevas variables básicas
aplicando la expresión anterior.

Ejemplo: obtenemos los siguientes datos de la iteración óptima:

 x2  1 / 2  1 / 4 0  430   100 
       Solución óptima original
 x3    0 1 / 2 0  460    230 
x  2 1 1  420   20 
 6 

 x2  1 / 2  1 / 4 0  602   140  Se decide aumentar la


       disponibilidad de recursos
 x3    0 1 / 2 0  644    322 
y se resuelve para la
x  2 1 1  588   28 
 6  nueva solución óptima

La nueva solución es factible. Si no fuera factible se aplica el método simplex


Dual para recuperar la factibilidad.
ANÁLISIS DE SENSIBILIDAD
Cambio en disponibilidad de recursos

Suponga que se desea saber cuánto se puede aumentar la disponibilidad de


la primera restricción sin que se pierda la factibilidad de la solución.

La solución permanecerá factible mientras todas las variables básicas sean no


negativas.

Ejemplo:

 x2  1 / 2  1 / 4 0  430  D  100  D / 2  D es una variable que


       representará el aumento
x
 3  0 1 / 2 0  460 
  230   0
permisible
x  2 1   
1  420   20  2 D  
 6 
Lo anterior nos ofrece los siguientes resultados:

D
x2  0 : 100   0  D  200 La solución permanecerá factible
2 mientras
x3  0 : x3 es independiente de D -200≤ D ≤10
x6  0 : 20  2 D  0  D  10
ANÁLISIS DE SENSIBILIDAD
Cambio en los coeficientes de la función objetivo
Estos cambios pueden afectar la optimalidad de la solución, por consiguiente se
requiere calcular los costos reducidos con el siguiente procedimiento:

1. Calcular el valor de las variables duales


2. Usar los valores de las variables duales para encontrar los costos reducidos
de las variables no básicas con la siguiente fórmula:
m
z j  c j   aij yi  c j
i 1

Costo Lado izquierdo de Lado derecho de


= -
reducido restricción dual restricción dual
asociada asociada

Luego del cálculo de los nuevos costos reducidos se presentarán dos casos:

• Los nuevos costos reducidos satisfacen la condición de optimalidad y la solución


permanece sin cambio (sin embargo, el valor objetivo óptimo puede cambiar)
• La condición de optimalidad no se satisface por lo que se aplica el método
símplex para recuperar la optimalidad.
ANÁLISIS DE SENSIBILIDAD
Cambio en los coeficientes de la función objetivo
Ejemplo:
Minimizar
Se tiene el siguiente problema primal y su dual:
w  430 y1  460 y2  420 y3
Maximizar Maximizar sujeto a
z  3 x1  2 x2  5 x3 z  3 x1  2 x2  5 x3  0 s4  0 s5  0 s6 y1  3 y2  y3  3
sujeto a sujeto a 2 y1  0 y2  4 y3  2
x1  2 x2  x3  430 x1  2 x2 x3  s4  0 s5  0 s6  430 y1  2 y2  0 y3  5
3 x1  2 x3  460 3 x1  0 x2  2 x3  0 s4  s5  0 s6  460 y1  0 y2  0 y3  0
x1  4 x2  420 x1  4 x2  0 x3  0 s4  0 s5  s6  420 0 y1  y2  0 y3  0
0 y1  0 y2  y3  0
x1 , x2 , x3  0 x1 , x2 , x3 , s4 , s5 , s6  0
y1 , y2 , y3 no restringidas

La tabla óptima del problema primal es:


Básicas X1 X2 X3 S4 S5 S6 b
z 4 0 0 1 2 0 1350
X2 -1/4 1 0 1/2 -1/4 0 100
X3 3/2 0 1 0 1/2 0 230
S6 2 0 0 -2 1 1 20
ANÁLISIS DE SENSIBILIDAD
Cambio en los coeficientes de la función objetivo
Ejemplo:

Suponga que se sustituye la función objetivo original por la siguiente:


Maximizar
z  2 x1  3x2  4 x3
Cómo se afecta la solución óptima y el valor objetivo óptimo?
Paso 1: calcular las variables duales
c B  c2 c3 c6   3 4 0  Las variables básicas
en la tabla óptima son
X2, X3 y S6
1 / 2  1 / 4 0 
 
B 1   0 1/ 2 0
2 1 1 

1 / 2  1 / 4 0 
 
c B B 1  3 4 0  0 1 / 2 0   3 / 2 5 / 4 0 
2 1 1 

c B B 1   y1 y2 y3   3 / 2 5 / 4 0 
ANÁLISIS DE SENSIBILIDAD
Cambio en los coeficientes de la función objetivo
Ejemplo:

Paso 2: usar los valores de las variables duales para obtener los costos reducidos
de las variables no básicas

Calculando el nuevo costo reducido de X1

Lado izquierdo de restricción


dual asociada a X1 Nuevo lado derecho de restricción
dual asociada a X1
Nuevo costo
3 5 13 reducido de
Nuevo costo reducido de X1= y1  3 y2  y3  3   3   0  3 
2 4 4 X1

  y1 y3   3 / 2 5 / 4 0 
 x1  Variables
Variables no   y2
 duales
básicas en  s4 
tabla óptima s 
 5
ANÁLISIS DE SENSIBILIDAD
Cambio en los coeficientes de la función objetivo
Ejemplo:

Paso 2: usar los valores de las variables duales para obtener los costos reducidos
de las variables no básicas

Calculando el nuevo costo reducido de S4

Lado izquierdo de restricción


dual asociada a S4 Lado derecho de restricción
dual asociada a S4
Nuevo costo
3 3 reducido de
Nuevo costo reducido de S4= y1  0  0 
2 2 S4

  y1 y3   3 / 2 5 / 4 0 
 x1  Variables
Variables no   y2
 duales
básicas en  s4 
tabla óptima s 
 5
ANÁLISIS DE SENSIBILIDAD
Cambio en los coeficientes de la función objetivo
Ejemplo:

Paso 2: usar los valores de las variables duales para obtener los costos reducidos
de las variables no básicas

Calculando el nuevo costo reducido de S5

Lado izquierdo de restricción


dual asociada a S5 Lado derecho de restricción
dual asociada a S5
Nuevo costo
5 5 reducido de
Nuevo costo reducido de S5= y2  0  0 
4 4 S5

  y1 y3   3 / 2 5 / 4 0 
 x1  Variables
Variables no   y2
 duales
básicas en  s4 
tabla óptima s 
 5
ANÁLISIS DE SENSIBILIDAD
Cambio en los coeficientes de la función objetivo
Ejemplo:

Los nuevos costos reducidos de las variables no básicas (X1,S4,S5) se muestran


en la nueva tabla.

La nueva tabla del problema primal es:

Básicas X1 X2 X3 S4 S5 S6 b
z 13/4 0 0 3/2 5/4 0 1227
X2 -1/4 1 0 1/2 -1/4 0 100
X3 3/2 0 1 0 1/2 0 230
S6 2 0 0 -2 1 1 20

En este caso la solución óptima original continúa siendo óptima a pesar de los
cambios en los coeficientes de la función objetivo. El valor objetivo si sufre una
modificación en este caso.
ANÁLISIS DE SENSIBILIDAD
Ejercicio 1

Max z = 5 + 12 + 4
S.A.:
+ 2 + 10
2- + 3=8
,, 0
Tabla óptima del primal

Básica R b
z 0 0 3/5 29/5 -2/5 + M 274/5

0 1 -1/5 2/5 -1/5 12/5

1 0 7/5 1/5 2/5 26/5

Determine los valores duales óptimos.


ANÁLISIS DE SENSIBILIDAD

Ejercicio 2.
Un carpintero fabrica dos tipos de mesas de madera. Cada mesa del tipo 1
necesita 4 horas de mecanizado primario (preparación de piezas) y 4 horas de
mecanizado secundario (ensamblado y barnizado). Análogamente, cada mesa
del tipo 2 necesita 3 horas de mecanizado primario y 7 horas de mecanizado
secundario. Las disponibilidades diarias de mecanizados primario y secundario
son respectivamente de 40 y 56 horas-máquina. La venta de una mesa del tipo
1 reporta un beneficio de $70, mientras que la venta de una mesa del tipo 2 de
$90. Se desea determinar el número de mesas de cada tipo que han de
producirse diariamente para maximizar el beneficio obtenido.
ANÁLISIS DE SENSIBILIDAD
Modelo:
= cantidad diaria de mesas a fabricar del tipo 1
= cantidad diaria de mesas a fabricar del tipo 1

Max z = 70 + 90
S.A.:
4 + 3 40
4 + 7 56
, 0

La solución óptima es:


z= 850
=7
=4
Han de producirse diariamente 7 sillas del tipo 1 y 4 sillas del tipo 2,
dando lugar a un beneficio de $850.
ANÁLISIS DE SENSIBILIDAD

Supóngase que ahora la capacidad de mecanizado puede aumentarse cada


dia en 8 horas-máquina. En estas condiciones:

• ¿Cómo afecta esta ampliación de capacidad a los beneficios diarios?

• ¿En qué tipo de mecanizado (primario o secundario) es preferible


invertir estas 8 horas?

Para responder a estas preguntas pueden calcularse las sensibilidades


asociadas a cada una de las capacidades de mecanizado.
ANÁLISIS DE SENSIBILIDAD
El problema con la nueva capacidad de mecanizado primario incrementada
en 8 horas-máquina es:
Max z = 70 + 90
S.A.:
4 + 3 48
4 + 7 56
, 0
La solución óptima es:
z= 915
= 10.5
=2

Han de producirse diariamente 10.5 sillas del tipo 1 y 2 sillas del tipo 2,
dando lugar a un beneficio de $915.
ANÁLISIS DE SENSIBILIDAD

Esta solución indica que el beneficio diario crece en $65 cuando la capacidad
de mecanizado primario lo hace en 8 horas-máquina.

Así, la sensibilidad o precio sombra de la capacidad de mecanizado primario


es el ratio 65/8 igual a $8.125, que determina el crecimiento de la función
objetivo al crecer la capacidad de mecanizado primario a 1 hora.
ANÁLISIS DE SENSIBILIDAD

El problema con la nueva capacidad de mecanizado secundario


incrementada en 8 horas-máquina es:

Max z = 70 + 90
S.A.:
4 + 3 40
4 + 7 64
, 0

La solución óptima es:


z= 925
= 5.5
=6

Han de producirse diariamente 5.5 sillas del tipo 1 y 6 sillas del tipo 2,
dando lugar a un beneficio de $925.
ANÁLISIS DE SENSIBILIDAD

Esta solución indica que el beneficio diario crece en $75 cuando la capacidad
de mecanizado secundario lo hace en 8 horas-máquina.

Así, la sensibilidad o precio sombra de la capacidad de mecanizado


secundario es el ratio 75/8 igual a $9.375, que determina el crecimiento de la
función objetivo al crecer la capacidad de mecanizado secundario a 1 hora.
ANÁLISIS DE SENSIBILIDAD

En vista de los resultados, pueden extraerse las siguientes conclusiones:


• Incrementar la capacidad de mecanizado primario en 1 hora-máquina
incrementa el beneficio en $8.125 al día.

• Incrementar la capacidad de mecanizado secundario en 1 hora-máquina


incrementa el beneficio en $9.375 al día.

• Si se dispusiese de 8 horas-máquina adicionales de mecanizado sería


preferible invertirlas en el mecanizado secundario.
ANÁLISIS DE SENSIBILIDAD

Resumen:
• En general el precio sombra de una restricción proporciona el cambio en el
valor de la función objetivo como resultado de un cambio unitario en el
término independiente de la restricción, suponiendo que el resto de
parámetros del problema permanecen inalterados.
• En muchos problemas de programación lineal los precios sombra son tan
importantes como la solución del problema, ya que proporcionan
información sobre el efecto en la función objetivo de cambios en los
recursos disponibles.
• Las sensibilidades o precios sombra pueden obtenerse simultáneamente
resolviendo el problema Dual.
Dualidad en la Programación Lineal
Min
w  40 y1  56 y2
S . A.
4 y1  4 y2  70
3 y1  7 y2  90
y1  0
y2  0

La solución final es:


z= 850
= 8.125
= 9.375
Dualidad en la Programación Lineal

El problema Dual puede interpretarse de la siguiente manera:

• Dado que las soluciones del problema Dual coinciden con las sensibilidades
del Primal, las variables e del problema Dual corresponden al incremento
en el beneficio obtenido al vender mesas al incrementar en una hora de la
capacidad de mecanizado primario y secundario respectivamente.
Dualidad en la Programación Lineal
• Así, dichas sensibilidades pueden verse cómo el precio a la hora al que
deberían venderse las capacidades de mecanizado si se quiere obtener al
menos el mismo nivel de beneficios vendiendo tiempo de mecanizado que
haciendo mesas. En esta situación las variables Duales pueden
interpretarse de la siguiente manera:

= precio de venta de una hora de capacidad de mecanizado primario


= precio de venta de una hora de capacidad de mecanizado secundario
Dualidad en la Programación Lineal

• Para preservar la competitividad del negocio, se ha de ofrecer el mínimo


precio de venta de las capacidades de mecanizado primario y secundario
diarias, esto es minimizar la función 40 + 56, donde 40 y 56 representan
respectivamente la disponibilidad diaria en horas de mecanizado primario y
secundario respectivamente:

Min
w  40 y1  56 y2
Dualidad en la Programación Lineal

• Por otro lado, si se desea al menos el mismo beneficio vendiendo horas de


mecanizado que vendiendo mesas, el que se obtiene por la venta de las
horas de mecanizado primario y secundario para producir una mesa de
cada tipo no debe ser inferior al beneficio que se obtiene por venta de la
misma:

4 y1  4 y2  70
3 y1  7 y2  90
Dualidad en la Programación Lineal

• Si añadimos que los precios de venta son cantidades no negativas, se


obtiene de nuevo el problema Dual:

y1  0
y2  0

También podría gustarte