INVESTIGACION DE OPERACIONES Unidad 3 Tema 2.1 Programación Lineal. Dualidad DUALIDAD Problema de Mínimo Estudiemos un problema para conocer su estructura: Supongamos que nos proponemos realizar una alimentación económica para ganado, alimentación que debe contener obligadamente cuatro tipos de componentes nutritivos A, B, C y D. La industria alimenticia produce solamente 2 alimentos M y N que contienen esos componentes. 1 kg. de alimento M contiene 100 gr.de A, 100 gr.de C y 200 gr.de D. 1 kg. de alimento N contiene 100 gr.de B, 200 gr.de C y 100 gr.de D. Un animal debe consumir diariamente cuanto menos 0.4 kg.de A, 0.6 kg.de B, 2.0 kg.de C y 1.7 kg.de D. El alimento M me cuesta $10 el kg. y el N cuesta $4 el kg. ¿Qué cantidades de alimento M y N se deben utilizar diariamente por animal para poder realizar la alimentación en la forma menos costosa? Componente A B C D Costo $ MIN Z = Sujeto a: Alimento M N 0.1 0.0 0.0 0.1 0.1 0.2 0.2 0.1 10 4 10 X1 0.1 X1 0.1 X1 0.2 X1 X1,X2>=0 Cantidad Mínima 0.4 0.6 2.0 1.7 + 4 X2 >= 0.4 0.1 X2 >= 0.6 + 0.2 X2 >= 2.0 + 0.1 X2 >= 1.7 Variables de decisión: X1: Cant.kg. de M a prop. a los animales X2: Cant.kg. de N a prop. a los animales Solución Óptima Z = 76 X1 = 4 X2 = 9 X3 = 0.0 X4 = 0.3 X5 = 0.2 X6 = 0.0 Estudiemos ahora el problema que se plantea a un competidor del vendedor de alimentos M y N. Este competidor vende los componentes A, B, C, D en sí. Sabe que sus ventas son por día y por cabeza de ganado iguales a las cabezas prescritas. Desea buscar a qué precio unitario debe vender los componentes, de tal manera que su ganancia sea máxima. Su función económica será por tanto: MAX W = 0.4 Y1 + 0.6 Y2 + 2.0 Y3 +1.7 Y4 Pero por otra parte no quiere tener precios mas Y la restricción elevados que aquellos de la competencia, es decir se de no imponen las siguientes restricciones: negatividad: Y1,Y2,Y3,Y4>=0 0.1 Y1 + 0.1 Y3 + 0.2 Y4 <= 10 0.1 Y2 + 0.2 Y3 + 0.1 Y4 <= 4 Buscando el Máximo: Ver Tabla invertida. A B C D P.Venta $ Solución Optima W = 76 M 0.1 0.0 0.1 0.2 10 Y1 = 20 N 0.0 0.1 0.2 0.1 4 Y2 = 0 Y3 = 0 Cantidad 0.4 0.6 2.0 1.7 Y4 = 40 Y5 = 0 Y6 = 0 Aquí vemos que hay una propiedad muy importante que está ligada a esta inversión de datos: MAX W = MIN Z A esta propiedad la llamaremos DUALIDAD. FORMA CANÓNICA DE DUALIDAD: Los Programas: PRIMAL DUAL MAX Zp = C.X MIN Zd = B’.Y Sujeto a: A.X <= B A‘.Y >= C’ X>=0 Y>=0 que se corresponden por dualidad y son tales que: MAX W = MIN Z Donde: cj: Coeficientes de la función objetivo de primal y valores del término independiente del dual. Xj: Variables del Primal. bi: Valores del término independiente del primal y Yi: Variables del Dual. Coeficientes en la función objetivo del Dual. aij: Coeficientes de restricción del primal. aij’: Ídem del dual. Problema de Maximo Supongamos ahora que en una fabrica de ladrillos en bloques fabrica tres tipos o modelos con diferentes consistencias y los llama Especial, de Lujo, Comunes (en miles). Para ello necesitan combinar dos tipos de insumos: Cemento (bolsa) y arena (metros) y mano de obra para su confección. ARENA (en metros) CEMENTO (en bolsas) minutos de Mano Obra. ESPECIAL 4 metros 7 bolsas 8 minutos p/EDIFICIO 3 metros 9 bolsas 10 ninutos COMUN 2 metros 2 bolsas 12 minutos Precio de Venta: $18 $10 $12 Disponibil. 400 metros 800 bolsas 1000 minutos Se quiere maximizar el ingreso total porque ya se han comprado los recurso. Variables: X1: Cantidad de ladrillos Especiales a fabricar (en miles). X2: Cantidad de ladrillos para Edificios a fabricar (en miles). X3: Cantidad de ladrillos Comunes a fabricar (en miles). Primal: MAX Zp = s.a: 18 X1 + 10 X2 + 12 X3 4 X1 + 3 X2 + 2 X3 <= 400 metros de arena. 7 X1 + 9 X2 + 2 X3 <= 800 bolsas de cemento. 8 X1 + 10 X2 +12 X3 <= 1000 minutos de M. Obra. X1,X2,X3>=0 ----------------------------------------------------------------Dual: MIN Wd = 400 Y1 + 800 Y2 + 1000 Y3 s.a: 4 Y1 + 7 Y2 + 8 Y3 >= 18 3 Y1 + 9 Y2 + 10 Y3 >= 10 2 Y1 + 2 Y2 + 12 Y3 >= 12 Y1,Y2,Y3>=0 utilid. min. especial. para edificio comun La primera restricción del dual se relaciona coon los ladrillos especiales, la segunda con los para edificios y la tercera con los comunes. Ademas Y1 se relaciona con el arena, Y2 con el cemento y Y3 con la M.O. Supongase que alguien se ha ofrecido a comprar todos los recursos del vendedor. Entonces el empresario tiene que determinar el precia al que estaría dispuesto a pagar por una unidad de cada uno de los recursos: ====> Y1: Precio pagado por 1 metro de arena ====> Y2: Precio pagado por 1 bolsa de cemento ====> Y3: Precio pagado por 1 minuto de Mano de Obra. El precio total que tendría que pagar por estos recursos sería: MIN Wd = 400 Y1 + 800 Y2 + 1000 Y3 con las siguientes restricciones: Hay que cotizar los preccios de los recursos suficientemente altos para que el fabricante quiera venderlos. Por lo tanto habría que ofrecer al menos $ 18 por una combinación que incluya 4 metros de arena, 7 bolsas de cemento y 8 minutos de M.Obra. Sino el fabricante no tendría razones para vender esos recurso. Como el fabricante ofrece 4Y1 + 7 Y2 +8 Y3 con los que produce los ladrillos especiales, este tendría que escoger Y1,Y2,Y3 de tal manera que satisfagan: 4 Y1 + 7 Y2 + 8 Y3 >= 18 utilid. min. especial. En la 2º restriccion debemos ofrecer al menos $10 para: 3 Y1 + 9 Y2 + 10 Y3 >= 10 ladrillo para edificio En la 3º restriccion debemos ofrecer al menos $12 para: 2 Y1 + 2 Y2 + 12 Y3 >= 12 ladrillo comun En resúmen, cuando el primal es un problema MAX normal, las variables se relacionan con el valor de los recursos disponibles para quién toma las decisiones. La VARIABLE DUAL será el precio somba de los recurso. La solución a traves del Método Simplex sería: Cj 18 10 12 0 0 0 Base X1 X2 X3 X4 X5 X6 18 X1 0 X5 12 X3 Zj 18 15 12 3.75 0 0.75 Cj-Zj 0 -5 0 -3.75 0 -0.75 Solucion 87.5 137.5 25.0 1875 La solucion Optima sería: X1=87.5 X2=0 X3=25 X4=0 X5=137.5 X6=0 Z=1875 La solucion Dual sería: Y1=3.75 Y2=0 Y3=0.75 Y4=0 Y5=5 Y6=0 W=1875 Que ocurriría con el Valor Optimo de Z si modificaramos los lados derechos de las restricciones del problema primal. Por ejemplo si aumentaramos los metros de arena: Z’ = Z + b1 Encontrar los precios sombra. Si hubieran 700 bolsas de cemento cual sería el ingreso del fabricante. Ver análisis de Sensibilidad (-135 <= <= 0 ) Si hubieran 1100 minutos deMano de Obra cual sería el ingreso del fabricante. Ver análisis de Sensibilidad (-200 <= <= 1400 ) DUALIDAD Y SENSIBILIDAD Todo problema de programación lineal tiene su dual tal que si el original era: Maximizar: n Z Cj x j Z CX sujeto a AX b y X 0 El dual será : Minimizar Y0 Yb sujeto a YA C j 1 m a x ij j 1 j bi i 1, 2 ,...., m x j 0.............. j 1, 2 ,...., n m Y0 b j y j i 1 m a i 1 y Y0 ij yi C j yi 0 j 1,2,...., n i 1,2,...., m Volviendo al problema anterior vemos que su dual es: minimo. Y0 9 y1 15 y 2 con las restricciones y1 3 y 2 1 2 y1 2 y 2 9 Y1 , Y2 0 3 y1 2 y 2 1 y Aplicando a 1 el valor 9/2 con y2 = 0, vemos que la primer restricción se cumple 7 y3 2 ; la segunda restricción se pero habrá una variable de holgura negativa y 0 cumple con la igualdad, o sea 4 y en la tercera habrá un excedente 9 25 y5 1 3 2 2 y el funcional vale ahora (9 x 9/2) = 81/2. Resolviendo este simplex se hubiera llegado a estas mismas conclusiones que en realidad las hemos obtenido del primero, utilizando la fila de Cj - Zj En efecto en la columna de P1 aparece C1 – Z1 = - 7/2 que corresponde a -y3 en la de P2, C2 – Z2 = 0 que corresponde a y4 en la de P3, C3 – Z3 = - 25/2 que corresponde a -y5 en la de P4, C4 – Z4 = - 9/2 que corresponde a -y1 ; observar que x4 es la variable complemento de la primera restricción del primal. en la de P5, C5 – Z5 = 0 que corresponde a y2; P5 corresponde a x5 variable complemento de la segunda restricción del primal. O sea que las variables del dual están relacionadas a las restricciones del primal y las variables del primal a las restricciones del dual. En este caso los signos negativos surgen como una necesidad del procedimiento, siendo las variables siempre positivas. La solución completa del dual por SIMPLEX la vemos en el cuadro siguiente: Cj 9 Yk Ck P0 P1 15 15 P2 Y6 YM6 Y7 M 1 1 3 -1 0 0 P P P8 6 7 1 0 0 M 9 2 2 0 -1 0 0 1 0 Y8 M 1 3 2 0 0 -1 0 0 1 0 0 0 Cj- Zj 9-6M 157M 1/3 1 0 0 0 M M M P3 P4 P5 M M M -1/3 0 0 0 0 Y2 15 1/3 Y7 M 25/3 4/3 0 2/3 -1 0 1 0 Y8 M 1/3 0 2/3 0 -1 0 1 43,7M 2/7 0 0 -M -M 0 0 1 51,3M -3/7 0 1/7 0 57/7 0 0 2/7 -1 4/7 1 1/7 1 0 2/7 0 -3/7 0 M 0 0,29M 27/7 0 0 Cj- Zj Y2 Y7 Y1 Cj- Zj 15 M 7/3 9 Y5 0 2 0 7 -3 0 0,57M 12/7 M 1 Y7 M 7 0 -4 2 -1 0 1 Y1 9 1 1 3 -1 0 0 0 4M -2M M 0 -12 9 0 1 0 -3/2 1 0 -2 1 -1/2 0 1 1 0 -1/2 0 9 9 0 -9/2 0 0 6 0 9/2 0 Cj- Zj 0 Cj – Zj Cj – Zj Y5 0 Y3 0 Y1 9 Zj Cj-Zj 25/2 7/2 9/2 81/2 0 0 0 Vemos asociada a la variable de holgura de la primera restricción del dual aparece el valor 0 correspondiente a x1 , asociada a la segunda restricción aparece 9/2 el valor de x2 y asociada a la tercera 0 el valor de x3 . Así mismo y1 = 9/2 e y2 = 0 dan los valores de las variables de holgura del primal .Los valores de y5 . e. y3 ya los observamos en Z1 C1 . y . Z 3 C3 del primal y el valor de y1 coincide con Z4 C4 (se cambian de signo por la convención del Simplex). Los valores de las variables del dual , reciben el nombre de precio sombra porque miden la influencia del recurso considerado (el de la correspondiente restricción en el primal ) en el resultado del funcional . La naturaleza de las variables se determina fácilmente analizando el balance de unidades: En el primal : BENEFICIO CX max y AX B donde C C1 , C2 , C3 ,........= Unid. DE PRODUCTO b1 B CANTIDAD DE RECURSOS b2 a12 a13 CANTIDAD DE RECURSOS a11 A UNIDAD DE PRODUCTO a21 a22 a23 X1 X X 2 . CANTIDAD DE PRODUCTO y Z BENEFICIO $ X 3 de acuerdo al caso típico de restricción de recursos para aplicar a diversos productos que producen distintos beneficios. En el dual YB min con YA C de donde surge: BENEFICIOS Unid . de Pr oducto Y y1 y 2 x . Unid . de Pr oducto CANTID. RECURSO es decir que, Y0 estaría valorizando el stock de materia prima. Observar que un incremento unitario en la disponibilidad del primer recurso b1 10 2 llevaría la primer restricción a ser 10 lo que me permitiría aumentar sin superar la restricción y el funcional aumentaría hasta 90/2 o sea un incremento 9 y1 de 2 en el funcional . x1 hasta Para este análisis de SENSIBILIDAD sirven las variables duales (precio sombra) que los obtengo directamente del cuadro del SIMPLEX . C j , bi y aij Normalmente ocurre que los parámetros no son tan exactos ni tan fijos como suponemos, puede haber errores de estimación en los mismos o bien puede haber necesidad de evaluar la forma de mejorar la solución optima obtenida . En este caso por ejemplo el y2 0 me está mostrando que incrementos en disponibilidad del segundo recurso no mejorarán para nada el funcional , lo cual se observa en el original pues tenemos un excedente x5 6 , cualquier incremento b de 2 hará que x5 sea mayor sin afectar al funcional. No obstante este análisis debe ser cuidadoso pues variaciones importantes de los b parámetros i pueden cambiarnos la solución básica obtenida y en ese caso los resultados podrán ser muy distintos. Volviendo al ejemplo, la decisión de sacar P4 de la base para dar lugar a: x 9 P2 surgiode que el min i xij 2 era el correspondiente a la primera restricción, es decir que si esta aumentara a valores superiores a 15/2 sería superior al que se obtuvo para P5 con lo cual entraría a la base x5 y no x4 lo que nos daría una solución totalmente distinta, es decir que podemos asegurar que: Incrementos en b1 desde su valor 9 hasta 15 nos darán mejoras en el funcional a razón de 9/2 b por cada unidad que aumente e inversamente disminuciones de 1 implicarán b disminuciones del funcional a razón de 9/2 por cada unidad que disminuya 1 . b Por otra parte disminuciones de 2 no afectarán a la solución mientras no disminuya a menos de 9 en cuyo caso cambiará el valor de min y pasaremos entonces a otra solución. El análisis es más sencillo cuando se trata de variar los coeficientes de costo; en este caso siempre la solución será factible pues las restricciones no se ven afectadas pero puede llegar a cambiar la solución optima (en el otro caso, para bi , se puede caer en problemas sin solución factible). 7 Z1 C1 2 Aquí el cuadro del SIMPLEX nos permite observar que dado que 9 Z1 2 positivo, la variable x1 no entrará en la base mientras su valor no supere a o sea incrementos en el beneficio unitario de la variable x1 no serán de interés hasta que no superen el valor de 9/2; y lo mismo ocurrirá con x3 mientras no supere el valor de 27/2. Inversamente, decrecimientos en el coeficiente C2 cambiarán el valor del funcional correspondientemente pero no así la solución óptima mientras el mismo no caiga a valores inferiores a los que impliquen que otra variable deba entrar en la base . Así para valores de C2 menores que 2 el Z 1 final sería menor que 2/2=1 y el Z1 C1 .sería negativo lo que me obligaría a hacer entrar X 1 a la base y cambiar la solución . Por otra parte no entrará a la base X 3 mientras Z3 C3 sea 0 o sea Z3 1 lo que implica: 3 2 C2 1 C2 2 3 x 1 en cuyo caso ya antes habría entrado y no habría entrado x2 inicialmente en la base . Igual razonamiento puede hacerse con la reentrada de x4 . Volviendo a la interpretación del dual vemos que los valores de las variables nos están dando los valores mínimos que debo asignar a cada uno de los recursos que intervienen en la elaboración de los productos originales asumiendo que no se desea disminuir los beneficios que otorga cada producto.