Post on 27-May-2022
Dualidad y Análisis de
Sensibilidad
INVESTIGACION DE OPERACIONES I
MIGUEL ANGEL CANO LENGUA
Dualidad
Asociado con cualquier problema de
programación lineal (PPL) existe otro
llamado DUAL. Conocer la relación de
un PPL y su dual es vital para
entender el análisis de sensibilidad.
Dualidad
Cuando se habla del dual de un PPL
entonces este último se denomina
PRIMAL. Si el PPL primal es un
problema de maximización, entonces
su dual será un problema de
minimización y viceversa.
Dualidad
Por conveniencia la variable de la
función objetivo del primal se
denomina Z, y sus variables primales
de decisión se denominan Xi. En el
caso del dual la variable de la función
objetivo se denomina W, y sus
variables duales se denominan Yj.
Dualidad
Primero aprenderemos como hallar el
programa dual de un problema primal
de maximización, con todas sus
variables no negativas y cuyas
restricciones son todas del tipo menor
o igual (Problema estándar de
maximización).
Dualidad
Un problema estándar de maximización se puede
escribir como:
Maximizar Z = C1 X1 + C2 X2 + ...... + Cn Xn
Sujeto a:
a11 X1 + a12 X2 + ..... + a1n b1
a21 X1 + a22 X2 + ..... + a2n b2
.... ...... ..... .... ...
am1 X1 + am2 X2 + ..... + amn bm
Xi 0 (i = 1, 2, ... , n)
Dualidad
El dual de un problema de maximización se define
como:
Minimizar W = b1 Y1 + b2 Y2 + ..... + bm Ym
Sujeto a:
a11 Y1 + a21 Y2 + .... + am1 Ym C1
a12 Y1 + a22 Y2 + .... + am2 Ym C2
.... ...... ..... .... ...
a1n Y1 + a2n Y2 + .... + amn Ym C2
Yj 0 (j = 1, 2, ... , m)
Dualidad
Maximizar Z = 3 X1 + 4 X2
Sujeto a:
X1 + 2 X2 1000
3 X1 + 2 X2 1800
X2 400
X1 0, X2 0
Minimizar W= 1000 Y1 +
1800 Y2 +400 Y3
Sujeto a:
Y1 + 3 Y2 > 3
2 Y1 + 2 Y2 + 1Y3 > 4
Y1 0, Y2 0, Y3 0
PRIMAL DUAL
Dualidad
Dual de un problema no estándar
No todos los problemas de programación lineal
tienen la forma del problema de maximización
estándar.
Pasos:
• Identifique las variables correspondientes en el dual
de su problema primal.
• Aplique el mismo análisis del problema estándar
para hallar los coeficientes de la función objetivo,
restricciones y de sus respectivos lados derechos.
• Aplique la siguiente tabla de signos:
Dualidad
Modelos max Modelo min
Xi 0 la iésima restricción es
Xi 0 la iésima restricción es
Xi srs la iésima restricción es =
la iésima restricción es Yj 0
la iésima restricción es Yj 0
la iésima restricción es = Yj srs
Dualidad
Ejemplo:
Maximizar Z = 3 X1 + 4 X2 – 2 X3
Sujeto a:
4 X1 - 2 X2 + 3 X3 12
-2 X1 + 3 X2 + X3 6
-5 X1 + X2 - 6 X3 4
3 X1 + 4 X2 – 2X3 = 10
X1 0, X2 0, X3 srs
En este programa primal
hay 3 variables primales y
4 restricciones.
El programa dual tendrá 4
variables duales y 3
restricciones.
Dualidad
Ejemplo:
Maximizar Z = 3 X1 + 4 X2 – 2 X3
Sujeto a:
4 X1 - 2 X2 + 3 X3 12
-2 X1 + 3 X2 + X3 6
-5 X1 + X2 - 6 X3 4
3 X1 + 4 X2 – 2X3 = 10
X1 0, X2 0, X3 srs
En este programa primal
hay 3 variables primales y
4 restricciones.
El programa dual tendrá 4
variables duales y 3
restricciones.
Y1
Y2
Y3
Y4
Dualidad
Ejemplo:
Maximizar Z = 3 X1 + 4 X2 – 2 X3
Sujeto a:
4 X1 - 2 X2 + 3 X3 12
-2 X1 + 3 X2 + X3 6
-5 X1 + X2 - 6 X3 4
3 X1 + 4 X2 – 2X3 = 10
X1 0, X2 0, X3 srs
Cada columna representa
una restricción del dual.
Los coeficientes de la
función objetivo serán los
valores del lado derecho
del primal. Y los valores
del lado derecho del dual
serán los valores de los
coeficientes de la función
objetivo del primal
Y1
Y2
Y3
Y4
Dualidad
Ejemplo:
Maximizar Z = 3 X1 + 4 X2 – 2 X3
Sujeto a:
4 X1 - 2 X2 + 3 X3 12 Y1
-2 X1 + 3 X2 + X3 6 Y2
-5 X1 + X2 - 6 X3 4 Y3
3 X1 + 4 X2 – 2X3 = 10 Y4
X1 0, X2 0, X3 srs
Función Objetivo del programa dual:
Minimizar W = 12 Y1+ 6 Y2 + 4 Y3 + 10 Y4
Primera restricción del programa dual:
4 Y1- 2 Y2 - 5 Y3 + 3 Y4 ??? 3
Dualidad
Función Objetivo del programa dual:
Minimizar W = 12 Y1+ 6 Y2 + 4 Y3 + 10 Y4
Primera restricción del programa dual:
4 Y1- 2 Y2 - 5 Y3 + 3 Y4 ??? 3
Modelos max Modelo min
Xi 0 la iésima restricción es
Ejemplo:
Maximizar Z = 3 X1 + 4 X2 – 2 X3
Sujeto a:
4 X1 - 2 X2 + 3 X3 12 Y1
-2 X1 + 3 X2 + X3 6 Y2
-5 X1 + X2 - 6 X3 4 Y3
3 X1 + 4 X2 – 2X3 = 10 Y4
X1 0, X2 0, X3 srs
Dualidad
Función Objetivo del programa dual:
Minimizar W = 12 Y1+ 6 Y2 + 4 Y3 + 10 Y4
Primera restricción del programa dual:
4 Y1- 2 Y2 - 5 Y3 + 3 Y4 > 3
Modelos max Modelo min
Xi 0 la iésima restricción es
Ejemplo:
Maximizar Z = 3 X1 + 4 X2 – 2 X3
Sujeto a:
4 X1 - 2 X2 + 3 X3 12 Y1
-2 X1 + 3 X2 + X3 6 Y2
-5 X1 + X2 - 6 X3 4 Y3
3 X1 + 4 X2 – 2X3 = 10 Y4
X1 0, X2 0, X3 srs
Dualidad
Función Objetivo del programa dual:
Minimizar W = 12 Y1+ 6 Y2 + 4 Y3 + 10 Y4
Segunda restricción del programa dual:
-2 Y1+ 3 Y2 + Y3 + 4 Y4 < 4
Modelos max Modelo min
Xi < 0 la iésima restricción es <
Ejemplo:
Maximizar Z = 3 X1 + 4 X2 – 2 X3
Sujeto a:
4 X1 - 2 X2 + 3 X3 12 Y1
-2 X1 + 3 X2 + X3 6 Y2
-5 X1 + X2 - 6 X3 4 Y3
3 X1 + 4 X2 – 2X3 = 10 Y4
X1 0, X2 0, X3 srs
Dualidad
Función Objetivo del programa dual:
Minimizar W = 12 Y1+ 6 Y2 + 4 Y3 + 10 Y4
Tercera restricción del programa dual:
3 Y1+ 1 Y2 - 6 Y3 - 2 Y4 = -2
Modelos max Modelo min
Xi srs la iésima restricción es =
Ejemplo:
Maximizar Z = 3 X1 + 4 X2 – 2 X3
Sujeto a:
4 X1 - 2 X2 + 3 X3 12 Y1
-2 X1 + 3 X2 + X3 6 Y2
-5 X1 + X2 - 6 X3 4 Y3
3 X1 + 4 X2 – 2X3 = 10 Y4
X1 0, X2 0, X3 srs
Dualidad
Programa Dual
Min W = 12 Y1 + 6 Y2 + 4 Y3 + 10 Y4
Sujeto a:
4Y1 - 2 Y2 - 5 Y3 + 3 Y4 3
-2 Y1+ 3 Y2 + Y3 + 4 Y4 4
3 Y1+ 1 Y2 - 6 Y3 - 2 Y4 = -2
Y1 0, Y2 0, Y3 0, Y4 srs
Ejemplo:
Maximizar Z = 3 X1 + 4 X2 – 2 X3
Sujeto a:
4 X1 - 2 X2 + 3 X3 12 Y1
-2 X1 + 3 X2 + X3 6 Y2
-5 X1 + X2 - 6 X3 4 Y3
3 X1 + 4 X2 – 2X3 = 10 Y4
X1 0, X2 0, X3 srs
la iésima restricción es Yj 0
la iésima restricción es Yj 0
la iésima restricción es = Yj srs
Modelos max Modelo min
Dualidad
OBSERVACIÓN:
EL DUAL DEL PROBLEMA DUAL ES
OTRA VEZ EL PROBLEMA PRIMAL
Dualidad
Maximizar Z = 3 X1 + 4 X2
Sujeto a:
X1 + 2 X2 1000 Y1
3 X1 + 2 X2 1800 Y2
X2 400 Y3
X1 0, X2 0
Minimizar W= 1000 Y1 + 1800 Y2
+ 400 Y3
Sujeto a:
Y1 + 3 Y2 + 0 Y3 > 3
2 Y1 + 2 Y2 + 1Y3 > 4
Y1 0, Y2 0, Y3 0
DUAL
Minimizar Z = 1000 X1 + 1800 X2
+ 400 X3
Sujeto a:
X1 + 3 X2 > 3 Y1
2 X1 + 2 X2 + 1X3 > 4 Y2
X1 0, X2 0, X3 0
Maximizar W = 3 Y1 + 4 Y2
Sujeto a:
Y1 + 2 Y2 1000
3 Y1 + 2 Y2 1800
Y2 400
Y1 0, Y2 0
PRIMAL
Dualidad
TEOREMA DEL DUAL:
EL VALOR OPTIMO Z DEL PROBLEMA
PRIMAL ES IGUAL AL VALOR OPTIMO W
EN EL DUAL
ANALISIS DE SENSIBILIDAD
El objetivo de este análisis es determinar los
cambios en el valor de la función objetivo Z al
variar:
a) los coeficientes de las variables de decisión en
la función objetivo, y
b) los valores en el lado derecho de las
restricciones.
Estos cambios de valor se analizarán en el
reporte de análisis de sensibilidad que se
obtiene del programa SOLVER.
Ejemplo
Una compañía elabora los productos A, B y C. Cada producto se
procesa en tres departamentos: I, II y III. El total disponible de horas
de trabajo por semana por cada departamento es de 900, 1080 y
840 horas, respectivamente. Los requisitos de tiempo (en horas por
unidad) y la ganancia por cada unidad del producto son:
¿Cuántas unidades de cada producto debe fabricar la compañía
para maximizar las ganancias?
ANALISIS DE SENSIBILIDAD
Producto Producto Producto
A B C
Departamento I 2 1 2
Departamento II 3 1 2
Departamento III 2 2 1
Ganancia $16 $12 $15
ANALISIS DE SENSIBILIDAD
El programa lineal respectivo será la
siguiente:
Maximizar Z = 16 x1 + 12 x2 + 15 x3
Sujeto a:
2 x1 + x2 + 2 x3 900
3 x1 + x2 + 2 x3 1080
2 x1 + 2x2 + x3 840
x1, x2, x3 0
Maximizar Z = 16 X1 + 12 X2 + 15 X3
Sujeto a:
2 X1 + X2 + 2 X3 900 (s1)
3 X1 + X2 + 2 X3 1080 (s2)
2 X1 + 2 X2 + X3 840 (s3)
X1, X2, X3 0
FORMA ESTANDAR
Maximizar Z = 16 X1 + 12 X2 + 15 X3 + 0 s1 + 0 s2 + 0 s3
Sujeto a:
2 X1 + 1 X2 + 2 X3 + 1 s1 + 0 s2 + 0 s3 = 900
3 X1 + 1 X2 + 2 X3 + 0 s1 + 1 s2 + 0 s3 = 1080
2 X1 + 2 X2 + 1 X3 + 0 s1 + 0 s2 + 1 s3 = 840
X1, X2, X3, s1, s2, s3 0
ANALISIS DE SENSIBILIDAD
ITERACION 4
Cj 16 12 15 0 0 0
CB VB X1 X2 X3 s1 s2 s3 B
15 X3 2/3 0 1 2/3 0 -1/3 320
0 s2 1 0 0 -1 1 0 180
12 X2 2/3 1 0 -1/3 0 2/3 260
Zj 18 12 15 6 0 3 7920
Cj - Zj -2 0 0 -6 0 -3 Cj-Zj < 0
ANALISIS DE SENSIBILIDAD Maximizar Z = 16 X1 + 12 X2 + 15 X3
Sujeto a:
2 X1 + X2 + 2 X3 900 (s1)
3 X1 + X2 + 2 X3 1080 (s2)
2 X1 + 2 X2 + X3 840 (s3)
X1, X2, X3 0
ITERACION 4
Cj 16 12 15 0 0 0
CB VB X1 X2 X3 s1 s2 s3 B
15 X3 2/3 0 1 2/3 0 -1/3 320
0 s2 1 0 0 -1 1 0 180
12 X2 2/3 1 0 -1/3 0 2/3 260
Zj 18 12 15 6 0 3 7920
Cj - Zj -2 0 0 -6 0 -3 Cj-Zj < 0
ANALISIS DE SENSIBILIDAD Maximizar Z = 16 X1 + 12 X2 + 15 X3
Sujeto a:
2 X1 + X2 + 2 X3 900 (s1) Y1 = 6
3 X1 + X2 + 2 X3 1080 (s2) Y2 = 0
2 X1 + 2 X2 + X3 840 (s3) Y3 = 3
X1, X2, X3 0
ANALISIS DE SENSIBILIDAD Resolviendo por el programa LINDO, obtenemos los
resultados del reporte de Análisis de Sensibilidad:
ANALISIS DE SENSIBILIDAD El análisis de sensibilidad nos sirve para responder a las
preguntas ¿Qué pasa si?
Preguntas:
1. ¿Conviene programar horas extras en el Departamento 1?
Si su respuesta es afirmativa ¿hasta cuantas horas extras
conviene programar? ¿Cuánto aumenta la utilidad por cada
hora extra que se programe?
2. ¿Conviene programar horas extras en el Departamento 2?
Si su respuesta es afirmativa ¿hasta cuantas horas extras
conviene programar? ¿Cuánto aumenta la utilidad por cada
hora extra que se programe?
3. Debido a problemas laborales, en la empresa se pierden
150 horas en el departamento 2, por lo cual esas horas se
dejan de trabajar. ¿Cuánto deja de ganar la empresa?
ANALISIS DE SENSIBILIDAD
4. Debido a problemas laborales, en la empresa se
pierden 150 horas en el departamento 3, por lo cual
esas horas se dejan de trabajar. ¿Cuánto deja de
ganar la empresa?
5. Debido a la mayor demanda la ganancia del
producto B aumenta $2. ¿Varía el plan de producción
óptimo? ¿Cuál es la nueva utilidad?
6. Debido a la menor demanda la ganancia del
producto B disminuye $2. ¿Varía el plan de
producción óptimo? ¿Cuál es la nueva utilidad?
ANALISIS DE SENSIBILIDAD
7. Debido a la mayor demanda la ganancia del
producto C aumenta $10. ¿Varía el plan de
producción óptimo? ¿Cuál es la nueva utilidad?
8. Debido a la menor demanda la ganancia del
producto C disminuye $5. ¿Varía el plan de
producción óptimo? ¿Cuál es la nueva utilidad?
9. ¿Cuánto debe ser la ganancia mínima del
producto A para que sea rentable producirlo?