programación lineal con excel

Anuncio
Programación Lineal con Excel: estabilidad de la solución
PROGRAMACIÓN LINEAL CON EXCEL:
ESTABILIDAD DE LA SOLUCIÓN
Inmaculada Lekubarri y José Mª Eguzkitza (*)
El objetivo principal que se persigue en todo problema de programación lineal (PL) es la obtención de unos valores numéricos que verifiquen ciertas restricciones y optimicen una determinada función. El problema, sin embargo, no termina con el cómputo de la solución óptima. Es
importante además conocer la estabilidad de esa solución; es decir, saber en qué márgenes
pueden moverse, por ejemplo, los coeficientes de la función objetivo sin que la solución
óptima cambie. Por lo general, este último punto es de gran interés en el mundo empresarial
ya que las decisiones que son válidas dentro de una amplia gama de valores de entrada no se
transforman tan pronto en malas decisiones a causa de pequeños cambios en algunas de las
entradas del modelo y por ello son decisiones “cómodas”.
Las consideraciones anteriores tienen que ver con el denominado análisis de sensibilidad.
Mediante este análisis se trata de estudiar qué sensibles son la solución óptima y el correspondiente valor de la función objetivo a cambios en los datos del problema; es decir, a
cambios en los coeficientes de la función objetivo y de las restricciones. Aquí prestaremos
atención únicamente al efecto producido por las variaciones en los coeficientes de la función objetivo. Para ello consideremos el problema siguiente:
Una empresa produce dos clases de mosto A y B, siendo A de mejor calidad que B. Sus
disponibilidades de uva por día le permiten producir 400 litros de un tipo u otro o de
ambos. Así mismo, dispone de máquinas para embotellar diariamente 200 litros del tipo
A y 350 del tipo B como máximo.
El mosto A, que se exporta en su totalidad y se cobra en dólares, deja en el momento
presente un beneficio neto de 2 euros por litro, mientras que el mosto de tipo B se coloca
en el mercado interior dejando un beneficio neto fijo de 1, 8 euros por litro.
¿Cuántos litros de cada mosto se deben producir diariamente para conseguir el máximo
beneficio? ¿En qué medida afecta a la solución obtenida la posible fluctuación del dólar,
que se espera a la baja en el próximo período, teniendo en cuenta que el beneficio que
deja el mosto B no varía en absoluto?
El problema expresado en forma estándar es:
Max Z = 2X + 1,8Y
s.a X + Y ≤ 400
X ≤ 200
Y ≤ 350
X,Y ≥ 0
(*) Profesores del Departamento de Matemática Aplicada de la Universidad del País Vasco/ Euskal Herriko Unibertsitatea.
Noviembre 2003 • 2003ko Azaroa
81
Inmaculada Lekubarri y José Mª Euzkitza
La resolución gráfica (dos variables) del problema se presenta en la figura 1.
Figura 1
Puesto que la solución óptima se halla en alguno de los vértices de la región factible, veamos
cuál es el beneficio en cada uno de ellos:
En
En
En
En
el
el
el
el
vértice
vértice
vértice
vértice
I(200, 0) el beneficio obtenido es 400 euros por día.
II(200, 200) el beneficio obtenido es 760 euros por día.
III(50, 350) el beneficio obtenido es 680 euros por día.
IV(0, 350) el beneficio obtenido es 630 euros por día.
Por tanto, si se producen 200 litros de mosto del tipo A y otros 200 litros del tipo B, el beneficio diario que se obtiene, 760 euros, es el máximo.
Vamos a comprobar que la solución obtenida es la correcta, representando en la figura 2 las
rectas de nivel de ecuación genérica 2X + 1,8Y = K, K e R. Trasladándolas hacia la derecha
del eje 0X aumenta el nivel (K) y se comprueba que el último punto de contacto de dichas curvas de nivel con la región factible corresponde al máximo beneficio buscado.
Figura 2
Analicemos ahora en qué medida afecta a la solución obtenida la posible fluctuación de la
divisa en la que se cobra el mosto del tipo A. Teniendo en cuenta que el coeficiente de Y en
la función objetivo no varía a causa de la estabilidad del precio en el mercado interior, de la
figura 2 se sigue lo siguiente:
82
SIGMA Nº 23 • zk. 23 SIGMA
Programación Lineal con Excel: estabilidad de la solución
1. Cuando la divisa aumenta de valor el coeficiente de X crece y la recta 2X + 1,8 Y = K
gira en sentido horario. Entonces la solución óptima sigue siendo la misma, II(200, 200);
no importa cuánto crezca ese coeficiente pues la recta nunca llega a ser vertical.
2. Cuando la divisa se deprecia el coeficiente de X disminuye y la recta 2X + 1,8 Y = K
gira en sentido antihorario, de modo que para valores del coeficiente menores que 1,8
la solución óptima ya no es II(200, 200) sino III(50, 350).
Teniendo en cuenta esto último, y como se prevé que la divisa tiende a la baja en el próximo
período, estimándose como muy probable que sea menor que 1,8 €, la política a seguir más
conveniente sería vender únicamente 50 litros diarios del mosto A en el mercado exterior y
350 litros del mosto B en el interior (solución III), a pesar de que la solución óptima es la
II(200, 200). Lo que ocurre es que III(50, 350) es más estable que II, pues permanece como
óptima en un rango de valores más amplio cuando el coeficiente tiende a la baja.
Como se acaba de ver, este ejemplo puede ser resuelto gráficamente al intervenir únicamente
dos variables de decisión. Cuando el número de variables aumenta la resolución gráfica ya no
es posible y se hace necesaria la aplicación de métodos sofisticados (método del Simplex). No
obstante, existe una herramienta informática ampliamente extendida que resuelve con relativa
facilidad problemas de programación lineal de dimensiones incluso grandes: la hoja de cálculo EXCEL. Esta hoja de cálculo ofrece muchas posibilidades y su uso es tan natural en el
mundo del trabajo como una hoja en blanco, un lápiz y una calculadora.
Las características de EXCEL para la resolución y análisis de problemas de programación lineal
no se presentan habitualmente en cursos donde se enseña la mecánica de las hojas de cálculo
electrónicas, ni tampoco, usualmente, son tenidas en cuenta a la hora de comenzar el estudio
de los modelos de programación lineal. Sin embargo, presentaremos aquí el análisis de un
problema concreto haciendo uso de la opción Solver disponible en la hoja de cálculo EXCEL.
Resolveremos el problema planteado más arriba, pero suponiendo ahora que interviene una
tercera variable de decisión: el bodeguero decide producir un tercer tipo de mosto que se destina al mercado interior y que deja un beneficio de 3 euros por litro, siendo el tope máximo
de producción 250 litros por día. Solver aportará la solución óptima y, sobre todo, que es lo
que aquí nos ocupa, un informe de sensibilidad sobre la estabilidad de esa solución.
El problema de PL se plantea ahora en los siguientes términos:
Max Z = 2X + 1,8Y + 3Z
s.a X + Y + Z ≤ 400
X ≤ 200
Y ≤ 350
Z ≤ 250
X,Y,Z ≥ 0
Las siguientes ilustraciones nos mostrarán las pantallas correspondientes a la resolución del
problema mediante EXCEL. (*)
En primer lugar se debe prestar una especial atención al planteamiento del problema en la
hoja de cálculo, como se muestra en la figura 3. De forma práctica, algunas celdas contienen
rótulos cuya finalidad es aclarar el significado de las entradas de la hoja de cálculo electrónica; otras contienen fórmulas subyacentes que determinan el valor numérico de varios coeficientes del modelo:
Noviembre 2003 • 2003ko Azaroa
83
Inmaculada Lekubarri y José Mª Euzkitza
Figura 3
• En las celdas B2, C2 y D2 se introducen los rótulos de las variables de decisión.
• En B3, C3 y D3 se indican los beneficios diarios por litro que se obtienen de la venta de
cada uno de los tres tipos de mosto.
• Las celdas B4, C4 y D4 muestran los valores numéricos que el programa elige respetando
las restricciones del problema hasta que optimiza la función objetivo. Como valores iniciales hemos introducido de forma arbitraria: 1, 1, 1.
• Los coeficientes que representan a cada una de las tres restricciones del problema se reseñan en las celdas B7, C7, D7, B8, C8, D8, B9, C9, D9, B10, C10 y D10 .
• Las celdas G7, G8, G9 y G10 corresponden a los términos independientes de las restricciones.
• En E7, E8, E9 y E10 se introducen las fórmulas que proporcionan el valor numérico del
lado izquierdo de las restricciones; por ejemplo, en la celda E7 debe ponerse
B4*B7+C4*C7+D4*D7.
• La celda G4 contiene la fórmula: B3*B4+C3*C4+D3*D4, que representa la función objetivo
que se debe maximizar.
• Por último, las celdas H7, H8, H9 y H10 representan la “Holgura”; es decir la diferencia,
siempre considerada positiva, entre las celdas de “Términos Independientes” y las del
“Total”. Por ejemplo, en la celda H7 debe aparecer la fórmula: G7-E7.
Figura 4
84
SIGMA Nº 23 • zk. 23 SIGMA
Programación Lineal con Excel: estabilidad de la solución
Una vez construido correctamente el modelo de optimización, se selecciona el comando
Solver en el menú Herramientas, como muestra la figura 4. Después de que se ha cargado
en memoria el comando Solver aparece el cuadro de diálogo “Parámetros de Solver” de la
figura 5.
Figura 5
En primer lugar se ha de reseñar que la “Celda objetivo” indica cuál de las celdas va a contener el valor óptimo de la función objetivo. El siguiente campo del cuadro, “Valor de la celda
objetivo”, nos permite definir el tipo de optimización que se desea realizar. El campo
“Cambiando las celdas” permite especificar las variables de decisión del modelo que desean
optimizarse; en este caso se encuentran en las celdas B4, C4 y D4. A continuación debemos
definir las restricciones del modelo una a una. Para ello, en el campo “Sujetas a las siguientes
restricciones” pulsaremos el botón “Agregar” que está situado a su derecha. Aparecerá un
nuevo cuadro: “Agregar restricción” (figura 6).
Figura 6
En “Referencia de la celda” se detallarán las celdas que representan el total del lado izquierdo
de cada restricción y en “Restricción” los términos independientes. Cada vez que se introduce
una restricción se pulsa “Agregar”. Una vez introducidas todas se pulsa el botón “Aceptar”
para regresar al cuadro de diálogo “Parámetros de Solver”.
Al pulsar, por último, el botón de “Opciones” del cuadro de dialogo aparece uno nuevo:
“Opciones de Solver” (figura 7). En él sólo debemos marcar las casillas de verificación que
están junto a “Adoptar modelo lineal”y “Asumir no negativos”. En el resto de casillas se dejan
los valores por defecto establecidos. A continuación se pulsa el botón “Aceptar” de la derecha para regresar de nuevo al cuadro de diálogo “Parámetros de Solver”. Pulsando en él el
botón “Resolver”, al cabo de unos segundos aparece el cuadro de diálogo “Resultados de
Solver” con un mensaje de terminación como muestra la figura 8. Hay que prestar especial
atención al mensaje que en él se encuentra sobre la solución obtenida. Seleccionando el
comando “Aceptar” se obtiene el valor óptimo de las variables junto con el valor también
Noviembre 2003 • 2003ko Azaroa
85
Inmaculada Lekubarri y José Mª Euzkitza
óptimo de la función objetivo (figura 9).
Figura 7
Figura 8
Figura 9
A la derecha del cuadro “Resultados de Solver” se encuentra el campo “Informes” con tres
opciones: “Respuestas, Sensibilidad y Límites”. Si marcamos “Respuestas” aparece la ilustración
de la figura 10. En ella se aprecian los valores originales de las variables X, Y y Z junto con sus
valores finales (óptimos) obtenidos. También cabe destacar el valor original de la función objetivo (el correspondiente a los valores iniciales de las variables que han sido introducidos) y el
valor final u óptimo de ella.
86
SIGMA Nº 23 • zk. 23 SIGMA
Programación Lineal con Excel: estabilidad de la solución
Figura 10
Si se pulsa el “Informa de Sensibilidad” se obtiene la ilustración de la figura 11. Analizaremos
lo que nos interesa en este caso, pasando por alto otro tipo de información que aporta el
informe. En concreto, estamos interesados en el rango de valores para los que el coeficiente
de la variable X no cambia. Por tanto, centraremos la atención únicamente en la mitad superior de la figura 11; la mitad inferior se refiere a posibles variaciones en las restricciones.
Figura 11
Según indica el informe, la solución óptima A(150, 0, 250) permanece estable, siempre que
el coeficiente de X no aumente en más de una unidad ni disminuya menos de 0,2. Como
hemos dicho al principio, las expectativas son a la baja para este coeficiente, por lo que si
decrece más de 0,2 la solución A deja de ser válida.
Si resolvemos el problema cambiando el coeficiente de X al valor 1,7 (una disminución mayor
que 0,2) se obtiene la solución B(0, 150, 250), cuyo correspondiente análisis de sensibilidad
nos muestra una mayor estabilidad.
Como conclusión podemos decir que en PL, y en Investigación Operativa en general, tan
importante como la solución óptima es la estabilidad de tal solución. De hecho, en ocasiones
es mejor un resultado que, aun no siendo óptimo, se muestre más estable frente a la incertidumbre que pueda deparar el futuro.
Noviembre 2003 • 2003ko Azaroa
87
Inmaculada Lekubarri y José Mª Euzkitza
BIBLIOGRAFÍA
Eppen G., Gould F., Schmidt C. y Weatherford L. (2000). Investigación de operaciones
en la ciencia administrativa. Editorial Prentice Hall. Mexico.
Infante Macías, R. (1991). Métodos de programación matemática. Vol. I y II. UNED.
Madrid.
Pardo L. y Felipe A. (1990). Programación lineal continua. Aplicaciones prácticas en la
empresa. Editorial Díaz de Santos. Madrid.
NOTAS
(*) Imágenes de pantalla reimpresas con permiso de Microsoft Corporation.
88
SIGMA Nº 23 • zk. 23 SIGMA
Descargar