,

Cómo resolver un problema de programación lineal con Solver-Excel 2016

Resolver los problemas de programación lineal de forma manual se convierte en algo tedioso y complicado a medida que aumentan las variables y las restricciones; es por esa razón que existen diversos softwares que se encargan de resolver estos problemas de manera fácil y rápida.  En esta nueva entrada de Plan de Mejora aprenderemos cómo resolver un problema de programación lineal con Solver-Excel 2016.

Cómo resolver un problema de programación lineal con Solver-Excel 2016

Si estas empezando a revisar lo relacionado a programación lineal, te recomendamos leer primero nuestros posts:

Si deseas conocer otras herramientas gratuitas y online para solucionar problemas de programación lineal; puedes encontrarlas en nuestra entrada: 3 herramientas online para resolver problemas de programación lineal.

¿Dónde encuentro el complemento Solver en Excel?

Probablemente estés rebuscando en las opciones de Excel y no encuentres ninguna que mencione Solver; esto se debe a que por defecto se encuentra deshabilitado.




Para aprender cómo habilitarlo revisaremos el siguiente video:

Ahora que ya tienes Solver habilitado en Excel, vamos a proceder a resolver los siguientes ejercicios:

Ejemplo 1 – Maximizar

El chef principal (encargado de la parrilla) de “Tacoste”, está tratando de decidir cuál es la mejor manera de asignar las materias primas disponibles a los cuatro platillos especiales del viernes por la noche. La decisión se debe tomar temprano por la tarde porque tres de los platillos se deben empezar a preparar ya (albóndigas, tacos y picadillo).

La tabla que está en seguida contiene la información sobre los alimentos en inventario y las cantidades requeridas por cada platillo.

Cuadro 1 insumos

No hay otros hechos importantes para la decisión del chef. A continuación, se presenta la demanda de mercado estimada y el precio de venta.

cuadro 2 demanda

El chef quiere maximizar el ingreso porque ya ha comprado todos los materiales, los cuales están en el congelador.

  1. ¿Cuál es la mejor mezcla de los especiales del viernes por la noche para maximizar el ingreso de Tacoste?
  2. Si un proveedor ofreciera surtir un pedido extra de panes a $1.00 la pieza, ¿vale la pena invertir ese dinero?

Solución

 

Planteamiento Matemático:

Definimos las variables de decisión:

H = Número de Hamburguesas con queso a preparar el viernes

A = Número de Albóndigas a preparar el viernes

T = Número de Tacos a preparar el viernes

P = Número de porciones de picadillo a preparar el viernes

Función Objetivo

funcion objetivo problema

Restricciones

  • Respecto a los Insumos:

ecuaciones insumos

  • Respecto a la Demanda:

restricciones demanda

  • No negatividad:

no negatividad

Si quieres revisar en mayor detalle el planteamiento matemático el problema te sugerimos ingresar aquí.

Solución en Excel:

Representaremos el problema en Excel empezando con los datos que componen la función objetivo

función objetivo excel

Las celdas referidas a las variables quedarán en blanco ya que ahí se generará la solución.

En la celda de ingreso total hemos colocado la siguiente fórmula para representar la función objetivo: =SUMAPRODUCTO(C2:F2;C3:F3). Si quieres conocer más sobre esta fórmula de excel puedes ingresar a este link.

A continuación realizaremos otra tabla (dentro de la misma hoja de cálculo) con los datos de las restricciones:

restricciones excel

Para la columna “Total” se utilizó nuevamente la formula “SUMAPRODUCTO” de la siguiente forma:

fórmulas restricciones excel

Esta columna realiza el cálculo del consumo real de cada insumo, de acuerdo a los valores que se obtengan de las variables decisión.

Como ya tenemos representado nuestro problema en Excel; ahora daremos click en la Pestaña Datos y luego en el botón Solver, donde obtendremos la siguiente ventana:

solver restricciones excel

  • En la opción “Establecer objetivo” seleccionaremos la celda correspondiente al cálculo de los ingresos: $C$4.
  • Seleccionamos la opción “Máx”, “Mín” o un valor específico, dependiendo del problema que resolveremos. Para nuestro ejemplo seleccionaremos “Máx”.
  • Para la opción “Cambiando las celdas de variables” colocaremos las celdas correspondientes a las variables de decisión: $C$2:$F$2.
  • En la parte de restricciones daremos click en agregar y colocaremos cada una de las restricciones de la siguiente forma:
    • Insumos:excel restriccion insumos
    • Demanda:
      solver restriccion demanda
    • No Negatividad:solver restriccion no negatividad

 

  • La restricción de No negatividad puede obviarse haciendo click en el check de “Convertir variables sin restricciones en no negativas”.
  • Seleccionamos como método de resolución “Simplex LP”.
  • Finalmente damos click en “Resolver”.

Al dar click en resolver obtendremos la siguiente ventana:

Cómo resolver un problema de programación lineal con Solver

Selecciones los 3 informes disponibles: Responder, Sensibilidad y Límites y damos click en aceptar.

En las celdas que habíamos dejado vacías para nuestras variables de decisión, aparecerán los valores óptimos que maximizan los ingresos del problema:



Cómo resolver un problema de programación lineal con Solver

H = 20

A = 60

T = 65

P = 55

El ingreso máximo aparece en la celda correspondiente por un valor de 416.25 dólares.

Informes de Solver:

Para resolver la pregunta referente a si vale la pena invertir en comprar pan adicional a $1 la unidad analizaremos los reportes que nos brinda Solver:

Informe de Respuestas:

Cómo resolver un problema de programación lineal con Solver

En este informe visualizamos nuevamente la solución óptima y datos adicionales sobre las restricciones; los más importantes son:

  • Valor de la celda: Representa el uso real de cada insumo en nuestra solución óptima. Por ejemplo: Teníamos disponible 100 libras disponibles de carne molida, sin embargo, en nuestra solución solamente utilizamos 59,25 libras.
  • Demora: Representa la cantidad de insumo que dejamos de utilizar. En nuestro ejemplo de la carne molida se obtiene restando los 100 disponibles menos las 59,25 libras que se utilizan; en total 40,75 libras.
  • Estado: Informa sobre si el recurso se usó completamente (vinculante) o si tiene un valor sobrante (no vinculante). Los valores vinculantes limitan el resultado final de la función objetivo.

Respecto al pan, el informe indica que éste es un recurso vinculante, lo que representa que limita el resultado final de los ingresos; por lo tanto, el conseguir más pan permitirá poder aumentar el nivel de ingresos.

¿A qué precio debería conseguir el pan adicional?

Para responder esta pregunta revisaremos nuestro informe de sensibilidad.

Informe de Sensibilidad:

Cómo resolver un problema de programación lineal con Solver

Este análisis de sensibilidad nos brinda la siguiente información:

  • Celdas Variables:
    • Final Valor: indica los valores de la solución óptima para cada variable.
    • Reducido Coste: En este ejemplo, se interpreta como la variación que tendrá el valor final de la función objetivo por cada unidad que variamos en una determinada variable. Por ejemplo: Si aumentamos /reducimos en una unidad la variable picadillo; entonces el resultado final de la función objetivo aumentará/reducirá en $2.5.
    • Objetivo Coeficiente: Representan los coeficientes que tiene la función objetivo.
    • Permisible Aumentar: Evalúa el nivel de incremento permitido en los coeficientes de la función objetivo; sin cambiar la solución óptima. Por ejemplo: El coeficiente correspondiente a la variable H de 2.25, puede aumentar hasta en 0.625 adicional, manteniéndose la misma solución.
    • Permisible Reducir: Evalúa el nivel de reducción permitido en los coeficientes de la función objetivo; sin cambiar la solución óptima. Por ejemplo: El coeficiente correspondiente a la variable H de 2.25, puede reducirse en 1.375, manteniéndose la misma solución.
  • Restricciones:
    • Final Valor: Representa el valor que toma la restricción en la solución óptima. En nuestro caso, por ejemplo, de la cantidad de libras de tomate disponible, el valor final de uso es 44 libras.
    • Precio Sombra: También conocido como precio dual; indican en cuanto mejora o disminuye la función objetivo, si se aumenta/disminuye el límite que la restringe. Por ejemplo, por cada libra de lechuga que podamos conseguir, nuestros ingresos aumentaran en $8.75.
    • Restricción Lado Derecho: Indica el valor que tiene el lado derecho de las desigualdades. En nuestro caso son los mismos valores que se indican en la columna “Disponible”.
    • Permisible Aumentar: Hacen referencia hasta que punto puede incrementarse la desigualdad de la restricción sin que varíe el precio sombra. Por ejemplo, habíamos mencionado que por cada libra de lechuga que se aumente, nuestros ingresos crecerán a una tasa de $8.75; sin embargo, esta tasa de crecimiento sólo será válido hasta 3 libras adicionales. Si agregamos más unidades, el precio sombra cambiará.
    • Permisible Reducir: Representa hasta que punto puede disminuirse la desigualdad de la restricción sin afectar el precio sombra.

Finalmente, para responder la pregunta si me conviene conseguir pan adicional por $1, evaluamos el incremento en los ingresos para el pan en la columna del precio sombra. Este valor nos indica que los ingresos aumentarán en 1.375 por cada unidad de pan adicional; por lo tanto, el obtener el pan a $1, significará una ganancia de 0.375 dólares para el restaurant por cada pan adicional.

No debemos olvidar que este precio sombra se mantiene igual hasta un máximo de 55 panes adicionales; por lo que la empresa sólo podrá aceptar a ese precio la venta de 55 panes. Para comprar una mayor cantidad debe realizar un nuevo análisis.

Informe de Límites:

Cómo resolver un problema de programación lineal con Solver

Este informe nos brinda la siguiente información:

  • Valor: nos recuerda el valor óptimo de cada una de las variables.
  • Límite Inferior: Es el menor valor que puede tomar la variable y cumplir todas las restricciones; cuando las demás variables mantienen su valor óptimo.
  • Resultado Objetivo: Es el valor de la función objetivo si la variable toma el valor del límite inferior y las otras variables mantienen su valor óptimo.
  • Límite Superior: Es el mayor valor que puede tomar la variable y cumplir todas las restricciones; cuando las demás variables mantienen su valor óptimo.
  • Resultado Objetivo: Es el valor de la función objetivo si la variable toma el valor del límite superior y las otras variables mantienen su valor óptimo.

El archivo excel de la solución al problema puedes descargarlo en Ejercicio 1.

Ejemplo 2 – Minimizar

Nutmeg Corporation elabora cinco productos diferentes a base de nueces simples y mezcladas: el paquete de almendras, el paquete de nueces, el paquete gourmet, el paquete fantasía y el paquete económico. Cada producto (individual o en mezcla) se vende en latas de una libra. La empresa compra almendras a razón de $0.80 por libra, nueces a $0.60 por libra y cacahuates a $0.35 por libra. Los cacahuates se emplean para completar todas las mezclas y la compañía tiene una provisión ilimitada de ellos. El suministro de almendras y nueces es limitado. La compañía puede comprar hasta 3,000 libras de almendras y 2,000 libras de nueces. A continuación, se presentan los requisitos de recursos y los pronósticos de demanda de los productos.

Cómo resolver un problema de programación lineal con Solver

¿Con qué mezcla se minimiza el costo que implica satisfacer la demanda de los cinco productos?

Solución

 

Planteamiento Matemático:

V = Número de latas del paquete de almendras a producir

W = Número de latas del paquete de nueces a producir

X = Número de latas del paquete gourmet a producir

Y = Número de latas del paquete fantasía a producir

Z = Número de latas del paquete económico a producir

La función objetivo busca minimizar los costos de compra de insumos:

funcion objetivo sin resolver

 

A continuación se presenta una explicación a esta función objetivo:

función objetivo explicada

Simplificando tenemos:

funcion objetivo final

Las restricciones para la compra de insumos son las siguientes:

restricciones ejercicio 2Las restricciones para satisfacer la demanda son:

funcion objetivo demanda

La restricción de no negatividad se encuentra incluida en la restricción de satisfacción de demanda.

Solución en Excel:

A continuación, mostramos el planteamiento en Excel:

Cómo resolver un problema de programación lineal con Solver

Cómo resolver un problema de programación lineal con Solver

La configuración en solver sería:

Cómo resolver un problema de programación lineal con Solver

La solución es:

Cómo resolver un problema de programación lineal con Solver

 

Informes de Solver:

Respuestas:

informe de respuestas 2

Sensibilidad:

informe de sensibilidad 2

Límites:

informe de límites 2

El archivo excel de la solución al problema puedes descargarlo en Ejercicio 2.

Reflexión final:

Como puedes darte cuenta, resolver un problema de programación lineal en Solver, es sencillo y muy rápido; por lo que conocerlo te facilitará muchísimo tu trabajo.

Si tienes alguna duda respecto al uso de Solver, puedes dejarla en la sección de comentarios. No te olvides de compartir en tus redes sociales para que tus compañeros también puedan aprender a utilizarlo.


Referencias:

  • Krajewski, L., Ritzman, L. & Malhotra M, (2008). Administración de Operaciones. Procesos y Cadena de Valor (Octava ed.). Mexico, D.F.: Pearson Educación.
    Disponible en: Casa del Libro y Amazon
  • Chase, R. & Jacobs, F. (2014). Administración de operaciones. Producción y cadena de suministro (Decimotercera ed.). Mexico, D.F.: McGraw-Hill.