Universidad Nacional Agraria La Molina Facultad de Ingeniería Agrícola Departamento de Recursos Hídricos Curso: IA3029 Ingeniería de Sistemas Ing. Eduardo Chávarri V. ____________________________________________________________________________________
CLASE Nº02 PROGRAMACION LINEAL
1. Introducción
Muchas decisiones de gestión implican maximizar la cantidad de beneficios mientras se mantienen iguales los niveles de uso de mano de obra y materiales dentro de ciertos límites. El proceso de encontrar combinaciones de diferentes tipos de actividades considerando un alto aprovechamiento de los recursos se denomina programación. Frecuentemente las restricciones de uso de los recursos tienen una particular forma algebraica simple (lineal), ello se denomina programación lineal. 2. Conceptos
Origen de la Investigación Operacional1 Los orígenes de la investigación operacional se remontan a la II Guerra Mundial. El problema a resolver fue la asignación o distribución óptima de recursos escasos. El éxito logrado por los militares sirvió para utilizar dichas técnicas en los problemas industriales. El interés de los científicos y el advenimiento de las computadoras facilitó el crecimiento de estas herramientas. Un ejemplo de ello fue la contribución de Dantzig quien desarrolló el método simplex para resolver el problema de la programación lineal en 1947. La investigación operacional implica la investigación sobre operaciones. Se aplica a problemas que tienen que ver como conducir y coordinar operaciones o actividades en una organización. El proceso básico es la observación cuidadosa del problema y la construcción de un modelo matemático que abstrae el problema real. Sin embargo hay algo más que esto, la investigación operacional proporciona a quien toma decisiones, soluciones positivas y prácticas a los problemas que se le presentan en la organización. El punto de vista de la investigación operacional es muy amplio y adopta por ello un punto de vista organizacional. Trata de resolver los problemas o conflictos que surgen entre los diferentes componentes de la organización como un sistema total. Una de las características de la investigación operacional es que las soluciones que trata de dar a los problemas deben ser óptimas. Debido a los aspectos tan variados de la investigación operacional, el estudio de un problema se hace no por un individuo sino frecuentemente por un grupo de trabajo y generalmente este grupo se compone de individuos preparados en áreas diversas.
1
Vélez Ignacio ‘Técnicas de simulación en el análisis de recursos hidrológicos’.
02/09/2010
1
Universidad Nacional Agraria La Molina Facultad de Ingeniería Agrícola Departamento de Recursos Hídricos Curso: IA3029 Ingeniería de Sistemas Ing. Eduardo Chávarri V. ____________________________________________________________________________________
La contribución del enfoque de la investigación operacional es: - Estructuración del problema real en un modelo abstracto matemático - Exploración del problema y desarrollo de métodos sistemáticos para solucionarlo - Desarrollo de una solución óptima Problema de Optimización En un problema de optimización uno busca maximizar o minimizar una cantidad específica llamada Objetivo, el cual depende de un número finito de variables de entrada. Estas variables pueden ser independientes unas de otras o pueden estar relacionadas a través de una o más restricciones. Ejemplo: Minimizar
2 2 z x1 x 2
Sujeto a las restricciones: x1 – x2 = 3 x2 2 Un programa matemático es un problema de optimización en el cual el objetivo y restricciones son dadas como funciones matemáticas y relaciones funcionales. Optimizar z = f(x1, x2, …., xn) Sujeto a las restricciones: g1 (x1, x2,…..xn) b1 g2 (x1, x2,…..xn) b2
(1)
. . .
gm (x1, x2,…..xn) bm Donde b1, ….bm son valores conocidos Cada una de las m restricciones pueden tener uno de los 03 signos: , =, . Programas lineales Un programa matemático (1) es lineal si f(x1,x2,…,xn) y cada gi (x1, x2, …,xn) (i=1,2,….m) son lineales en cada uno de sus argumentos, esto es si: f(x1, x2,…,xn) = c 1x1 + c2x2 + ….+ cnxn y gi(x1, x2,…,xn) = ai1x1 + ai2x2 + ….+ ainxn
(2)
(3)
donde c j y aij (i=1,2,….,m; j=1,2,…,n) son constantes conocidas 02/09/2010
2
Universidad Nacional Agraria La Molina Facultad de Ingeniería Agrícola Departamento de Recursos Hídricos Curso: IA3029 Ingeniería de Sistemas Ing. Eduardo Chávarri V. ____________________________________________________________________________________
3. Terminología para las soluciones del modelo 2 Hay que tener en cuenta que el término solución no solo significa la respuesta final a un problema. En Programación Lineal (PL) la convención es distinta, se llamará solución a cualquier conjunto de valores específicos para las variables de decisión (x1, x2,…xn), sin importar si es una posibilidad deseable o ni siquiera permitida.
La solución factible es aquella para las que todas las restricciones se satisfacen. La región factible es la colección de todas las soluciones factibles. Una solución óptima es una solución factible que lleva al valor más favorable de la función objetivo. El valor más favorable significa el valor más grande o más pequeño, dependiendo de si el objetivo es maximizar o minimizar. Entonces una solución óptima maximiza/minimiza la función objetivo sobre toda la región factible. La mayor parte de los problemas tendrán nada más que una solución óptima. Sin embargo, también es posible tener más de una solución. Otra posibilidad es que el problema no tenga soluciones óptimas. Esto ocurre sólo si: - No tiene soluciones factibles - Las restricciones no impiden que el valor de la función objetivo crezca indefinidamente en la dirección favorable (positiva o negativa). 4. Suposiciones de un problema de Programación Lineal (PL)
Suposición de proporcionalidad Es una suposición sobre las actividades individuales que se consideran independientes unas de las otras. En un modelo de PL el flujo de insumos y productos es proporcional al nivel de actividad. Esto es, que si se quiere triplicar el nivel de actividad, simplemente se triplica el flujo de los ‘items’ que se han establecido para el nivel de actividad unitario. Suposición de no negatividad Es posible determinar cualquier nivel de actividad mayor que o igual a cero, sin embargo, no es posible asignar niveles de actividad negativos. Suposición de aditividad Si existe interacción entre algunas actividades que puedan cambiar la medida total de efectividad o de consumo total de algún recurso, pueden surgir términos de producto cruzado. La aditividad supone que no existen interacciones de este tipo entre ninguna de las actividades, de manera que no habrá términos de productos cruzados en el modelo.
2
Hiller Frederick; Lieberman Gerald ‘Introducción a la Investigación de Operaciones’.
02/09/2010
3
Universidad Nacional Agraria La Molina Facultad de Ingeniería Agrícola Departamento de Recursos Hídricos Curso: IA3029 Ingeniería de Sistemas Ing. Eduardo Chávarri V. ____________________________________________________________________________________
La suposición de aditividad (al igual que la de proporcionalidad) se aplica tanto a la función objetivo como a las funciones del lado izquierdo de las restricciones. La suposición de aditividad dice que, para cada función, el valor total de la función se puede obtener sumando las contribuciones individuales de las actividades respectivas. Suposición de divisibilidad Algunas variables de decisión sólo tienen significado físico cuando adquieren valores enteros. La solución óptima que se obtiene en programación lineal con mucha frecuencia no es entera. Por esto, la suposición de divisibilidad se refiere a que las unidades de cada actividad se pueden dividir en cualquier nivel fraccional, para que se permitan valores no enteros de las variables de decisión. Suposición de certidumbre La suposición de certidumbre dice que todos los parámetros del modelo son constantes conocidas. En los problemas reales, muy pocas veces se satisface por completo esta suposición. Casi siempre se formula un modelo de programación lineal para elegir un curso de acción futuro. Entonces los parámetros que se emplean están basados en una predicción de las condiciones futuras, lo que inevitablemente conduce a un cierto grado de incertidumbre. 5. Ejemplo: La fabrica de queso 3
Enunciado del problema Una fábrica de queso puede producir dos tipos de productos: ‘Queso regular’ y ‘Queso Especial’. Ellos necesitan 07 litros de leche y 05 horas-hombre para elaborar 01 kilo del primer tipo y 13 litros de leche y 03 horas-hombre para elaborar 01 kilo del segundo. Cada kilogramo del queso regular da $4 de beneficio mientras que la misma cantidad del queso especial da $7. Si en cada turno hay 182 litros de leche y 60 horas-hombre disponibles, encontrar la cantidad de cada tipo de queso que ellos deben producir para maximizar su beneficio total. Solución Según la matemática tradicional, nosotros asignaríamos letras a esas variables no conocidas y examinaríamos las consecuencias. Supóngase que la fabrica produce en cada turno ‘x’ kg. de queso regular e ‘y’ kg. de queso especial. Cada posible combinación de x e y puede representar un punto en el siguiente gráfico (Figura Nº01).
3
Fuente: International Course on Computer Aided Decision Making in Agriculture, Novi Sad, Yugoslavia, 1991.
02/09/2010
4
Universidad Nacional Agraria La Molina Facultad de Ingeniería Agrícola Departamento de Recursos Hídricos Curso: IA3029 Ingeniería de Sistemas Ing. Eduardo Chávarri V. ____________________________________________________________________________________
Figura No.01 No todos los puntos en el gráfico corresponden a una forma factible de operar la fábrica. Claramente es imposible tener valores negativos de queso, así que x e y deben ser ambos positivos y/o cero. Esto restringe en representar el punto en la parte superior derecha del diagrama cartesiano. Asimismo, existen más restricciones de x e y debido a la disponibilidad de leche y horas-hombre. Considerando primero la cantidad de leche necesaria para producir ‘x’ kg de queso regular e ‘y’ kg de queso especial. Un kilo de queso regular necesita 07 litros, esto es ‘x’ kg necesitan 07 veces x, ó 7x litros. Similarmente ‘y’ kg de queso especial necesitan 13y litros de leche y por lo tanto la cantidad total de leche requerida es (7x + 13y) litros. Esto no debe exceder la cantidad disponible de 182 litros y puede escribirse de forma algebraica: 7x + 13y 182 Con respecto a la mano de obra, 5x horas-hombre son necesarias para hacer ‘x’ kg de queso regular y 3y para ‘y’ kg de queso especial. 5x + 3y 60 Hay que tener en cuenta que hay solamente 60 horas-hombre disponibles por cada turno. Las restricciones pueden ser ahora incorporadas en el gráfico para ver como ellas restringen las posibles posiciones de los puntos representativos. Obviamente ‘x’ igual a 0 e ‘y’ igual a 0 es una forma de operar la fábrica dentro de las restricciones. Si x e y se incrementan, el punto se moverá hasta que la fábrica este usando toda su capacidad de leche, lo que significa que 7x + 13y 182. Cuando esto pasa, ni ‘x’ ni ‘y’ pueden incrementarse ya que no habría suficiente leche para abastecer al proceso de producción de la fábrica. El conjunto de todos los puntos para los cuales 7x + 13y 182 es una línea recta (Figura No.02).
02/09/2010
5
Universidad Nacional Agraria La Molina Facultad de Ingeniería Agrícola Departamento de Recursos Hídricos Curso: IA3029 Ingeniería de Sistemas Ing. Eduardo Chávarri V. ____________________________________________________________________________________
Figura No.02 Si procesamos la restricción de mano de obra 5x + 3y 60 de la misma manera obtendremos (Figura No.03):
Figura No.03 Esto representa los efectos de las restricciones de la cantidad de leche y mano de obra mediante la cual la fábrica puede ser programada. La ventaja de presentar esto de manera gráfica permite visualizar el umbral de viabilidad operacional. Cualquier combinación de ‘x’ kg de queso regular e ‘y’ kg de queso especial debe resultar en un punto ubicado debajo de ambas líneas. De allí, el área en el diagrama que satisface estas condiciones se denomina región factible o viable. Ahora se tiene que determinar cual de esos puntos viables produce el mayor beneficio. Para este tipo de problema, sólo necesitamos considerar los vértices A, B, C y D de la región factible como las posibles opciones de operación de la fábrica.
02/09/2010
6
Universidad Nacional Agraria La Molina Facultad de Ingeniería Agrícola Departamento de Recursos Hídricos Curso: IA3029 Ingeniería de Sistemas Ing. Eduardo Chávarri V. ____________________________________________________________________________________
Vértice A B C D
X (kg de queso regular 0.0 5.3 12.0 0.0
Y (kg de queso especial) 14.0 11.1 0.0 0.0
Beneficio (4x + 7y) 98.0 98.9 48.0 0.0
Como es obvio, uno puede calcular exactamente la mejor combinación, resolviendo simultáneamente los ecuaciones: 7x + 13y 182 y 5x + 3y 60. En un problema simple tal como se ha visto es sencillo, sin embargo cuando existen varias restricciones, es preferible el método gráfico debido a que muestra cual de las intersecciones de líneas son en efecto vértices. La conclusión de este análisis es que la fábrica debe producir 5.3 kg de queso regular y 11.1 kg de queso especial en cada turno para maximizar los beneficios. Algunos otros rasgos que deben tomarse en cuenta: - x no es negativo - y no es negativo - El requerimiento de leche debe ser menor o igual a 182 litros. - El requerimiento de mano de obra debe ser menor o igual a 60 horas-hombre. - El problema maximizó el beneficio 4x + 7y (función objetivo). Si hubiéramos querido minimizar la función objetivo, la respuesta a este caso hubiera sido encontrada en el vértice D. Por otra parte, supongamos que el beneficio resultante de hacer x kg de queso regular e y kg de queso especial es (2x + y) en vez de (4x + 7y) como en el ejemplo, la mejor combinación sería representada por el vértice C y no en B; mientras que si el beneficio es (x + 2y) el vértice óptimo sería A.
02/09/2010
7
Universidad Nacional Agraria La Molina Facultad de Ingeniería Agrícola Departamento de Recursos Hídricos Curso: IA3029 Ingeniería de Sistemas Ing. Eduardo Chávarri V. ____________________________________________________________________________________
6. Algunos ejemplos de casos extremos Puede ocurrir que la solución óptima no sea única, e incluso que no exista, como en los ejemplos siguientes: Maximizar g(x, y) = 3x + 4y sujeta a las restricciones: x + y 14 2x +3y 36 4x + y 16 x 3y 0
Si representamos la región factible: Los vértices serán: A = (2/3,40/3), B = (6, 8), C = (12, 4) Observemos que la región factible es NO acotada superiormente.
02/09/2010
8
Universidad Nacional Agraria La Molina Facultad de Ingeniería Agrícola Departamento de Recursos Hídricos Curso: IA3029 Ingeniería de Sistemas Ing. Eduardo Chávarri V. ____________________________________________________________________________________
Ejemplo Minimizar g(x, y) = 3x + 3y sujeta a las restricciones x+y5 y x +3 3y x1 y +2x 16 4y x 22 La región es, en este caso:
Es decir, como buscamos el valor mínimo, todos los puntos comprendidos entre A y E sirven, es decir, hay innitas soluciones.
En general, un problema de máximos no tiene solución si la región factible no está acotada superiormente, y un problema de mínimos no tiene solución si la región no está acotada inferiormente.
02/09/2010
9