Análisis Cuantitativo con WINQSB

Víctor Manuel Quesada Ibarguen y  Juan Carlos Vergara Schmalbach

Esta página puede carecer de formato, fórmulas, notas, gráficos o tablas. Puede bajarse el libro completo en formato PDF comprimido ZIP (156 páginas, 1342 Kb)
pulsando aquí

 

2. PROGRAMACIÓN LINEAL Y ENTERA

2.1 CREANDO UN NUEVO PROBLEMA DE PROGRAMACIÓN LINEAL O ENTERA

La opción Nuevo Problema (New Problem) genera una plantilla en el cual se introducirán las características de nuestro problema:

A continuación se describirán cada una de las casillas de esta ventana:

* Título del problema (Problem Title): Se escribe el título con que identificamos el problema.

* Número de variables (Number of Variables): Se escribe la cantidad de variables con que cuenta el sistema en el modelo original.

* Número de restricciones (Number of Constraints): Se anotan la cantidad de restricciones con que cuenta el modelo (no se debe contar la restricción de no negatividad).

* Objetivo (Objective Criterion): Los problemas de programación lineal y entera se clasifican en dos: problemas de Maximización (Maximization) y Minimización (Minimization).

* Formato de entrada de datos (Data Entry Format): Permite elegir entre dos plantillas distintas para introducir los datos del modelo. La primera alternativa se asemeja a una hoja de calcula, mientras que la segunda, es una plantilla diseñada especialmente para este fin.

* Tipo de variable (Default Variable Type): En esta parte se indica las características del modelo:

- Continuas no negativas (Nonnegative continuous): Indica que el modelo lo componen variables continuas no negativas (iguales o mayores a cero).

- Enteras no negativas (Nonnegative Integer): Variables enteras no negativas.

- Binarias (Binary): Variables cuyo valor solo serán 0 o 1.

- Sin asignar / Irrestrictas (Unsigned/unrestricted): Variables irrestrictas.

2.2 UN PROBLEMA EJEMPLO

Mediante un ejemplo demostraremos como se introducen los datos para la creación de un nuevo problema de programación lineal.

ENUNCIADO

Ejemplo 2-1

La empresa AXUS S.A. desea conocer la cantidad de productos A, B y C a producir para maximizar el beneficio, si cada unidad vendida genera en utilidad $150, $210 y $130 por unidad respectivamente.

Cada producto pasa por 3 mesas de trabajo, restringiendo la cantidad de unidades producidas debido al tiempo disponible en cada una de ellas. La siguiente tabla muestra el tiempo requerido por unidad de cada producto en cada mesa y el tiempo total disponible semanalmente (tiempo dado en minutos):

Tiempo requerido Mesa 1 Tiempo requerido Mesa 1 Tiempo requerido Mesa 1 Producto 1 10 12 8 Producto 2 15 17 9 Producto 3 7 7 8 Tiempo total disponible por mesa 3300 3500 2900Se supone que cada unidad producida es vendida automáticamente. Determinar la combinación de productos que maximicen la utilidad para la compañía.

Una vez analizado el enunciado el lector procederá a crear el modelo matemático.

MODELO MATEMÁTICO

Función Objetivo (F.O.):

Max. Z = $150X1 + $210X2 + $130X3

Restricciones (S.A.):

10X1 + 15X2 + 7X3 ? 3300 Minutos

12X1 + 17X2 + 7X3 ? 3500 Minutos

8X1 + 9X2 + 8X3 ? 2900 Minutos

X1 , X2 , X3 ? 0

Podemos ver claramente que estamos ante un problema de Maximización, con tres restricciones y tres variables (las cuales trabajaremos como variables continuas de tipo No Negativas).

Teniendo claro esto, se alimenta el programa desde la ventana Nuevo Problema (New Problem):

Una vez llenados todos los campos pulsamos el botón OK, generando nuevas opciones dentro del programa.

2.3 INGRESANDO EL MODELO

Si se escogió por la plantilla tipo hoja de calculo (Spreadsheet Matrix Form), se mostrará una nueva ventana dentro de la ZONA DE TRABAJO, la cual servirá para introducir el modelo matemático.

La primera fila (Variable --?) corresponde a los encabezados de las variables (en gris) definidas automáticamente por el sistema como X1, X2 y X3 (son las tres variables del ejemplo), seguido por el operador de relación (Direction) y la solución de las restricciones o Lado de la mano derecha (Right Hand Side -R. H. S). El nombre de las variables se puede cambiar accediendo al submenú Nombre de variables (Variables Names) del menú Editar (Edit).

La segunda fila (Maximize) permite introducir los coeficientes de la función objetivo. Luego aparecen una serie de filas identificadas por la letra C y un consecutivo, las cuales corresponden a la cantidad de restricciones con que cuenta el modelo:

Por último aparecen tres filas donde definimos el valor mínimo aceptado por cada variable (Lower Bound), el valor máximo (Upper Bound) y el tipo de variable (Variable Type). En el caso del valor máximo, M significa que la variable podrá recibir valores muy grandes (tendientes a infinito).

2.4 EL MODELO DE EJEMPLO

Para ingresar nuestro modelo propuesto en el ejemplo, el primer paso es llenar la segunda fila con los coeficientes de la función objetivo:

Se sigue con las restricciones C1, C2 y C3:

Usted podrá cambiar los operadores de relación pulsando dos veces seguidas sobre ellos con el botón izquierdo del Mouse. Las otras filas se mantienen iguales.

2.5 RESOLVIENDO UN PROBLEMA

Cuando haya terminado de ingresar el modelo en la plantilla, podrá utilizar las herramientas que provee el menú Resolver y Analizar (Solve and Analyze). Este menú cuenta con las siguientes opciones:

* Resolver el problema (Solve the Problem): Resuelve el problema mediante el método Simplex Primal. Muestra la solución final completa.

* Resolver y mostrar los pasos (Solve and Display Steps): Muestra cada uno de los pasos o las interacciones realizadas por el Simplex hasta llegar a la solución óptima.

* Método Gráfico (Graphic Method): Resuelve el problema de programación lineal mediante el método gráfico (para problemas que trabajan con dos variables).

2.6 RESOLVIENDO EL PROBLEMA EJEMPLO

Seleccionamos la primera opción del menú Resolver y Analizar (Solve and Analyze), donde se mostrará una pequeña ventana con el mensaje “El problema ha sido resuelto. La solución óptima ha sido lograda”.

Pulsamos el botón ACEPTAR y automáticamente el programa generará la solución optima.

2.7 ENTENDIENDO LA MATRIZ FINAL

Esta matriz presenta suficiente información sobre el modelo resuelto. La primera parte (Solution Summary) corresponde al análisis de las variables definidas (X1, X2 y X3).

La columna Valores de la solución (Solution Value) presenta los valores óptimos encontrados. En este ejemplo se tiene que X1 es 0 unidades, X2 es 105,4795 unidades y X3 es 243,8356 unidades.

La columna Costo o Utilidad Unitaria (Unit Cost or Profit) muestra los coeficientes de la función objetivo para cada variable.

La columna Contribución Total (Total Contribution) representa el costo o utilidad generado por cada variable. Por ejemplo, si el valor de la variable X2 es 105,4795 unidades y la utilidad unitaria es $210, el beneficio total resultará de la multiplicación de ambos valores dando como resultado $22.150,69. Justo debajo de la última contribución aparece el valor de Z óptimo ($53.849,32).

La columna Costo Reducido (Reduced Cost) identifica el costo que genera incrementar una unidad para cada variable no básica. La siguiente columna llamada Estatus de la Variable (Basis Status) muestra si una variable es básica (Basic) o no (at bound).

La siguiente parte de la matriz final (Constraint Summary), presenta las variables de holgura del sistema (C1, C2, C3).

La columna Lado de la mano derecha (Left Hand Side) muestra el valor alcanzado al reemplazar los valores de X1, X2 y X3 en cada restricción (recuerde que cada restricción se identifica con su variable de holgura).

Las dos columnas siguientes (Direction y Right Hand Side) muestran las especificaciones dadas a las restricciones en cuanto al operador de relación (?) y los valores originales de las restricciones (3.300, 3.500 y 2.900 minutos).

La columna Déficit o Superávit (Slack or Surplus) muestran los valores de las variables de holgura y la columna Precios Sombras (Shadow Price) corresponde a los precios sombras; cuánto se estaría dispuesto a pagar por una unidad adicional de cada recurso.

2.8 LA TABLA FINAL DEL SIMPLEX

WINQSB permite mostrar los resultados óptimos mediante el formato aplicado por el método Simplex. Para mostrar este formato deberá, una vez resuelto el problema, seleccionar en el menú Resultados (Results) la opción Tabla final del Simplex (Final Simplex Tableau).

2.9 RESOLVIENDO EL MODELO PASO A PASO

Regrese nuevamente a la plantilla correspondiente al modelo inicial (sin solucionar). Procederemos a marcar la opción Resolver y mostrar los pasos (Solve and Display Steps).

La primera tabla corresponde a la tabla inicial del Simplex:

WINQSB cuenta con opciones de navegación para pasar de una tabla a otra (este menú se llama Simplex Iteration) hasta encontrar la solución óptima:

Al pulsar sobre la opción Próxima Interacción (Next Iteration) se avanza a la siguiente tabla del Simplex.

La opción Escoger variable de entrada (Choose Entering Variable) permite seleccionar la variable que entra al sistema de forma manual:

Debe pulsar sobre la variable no básica que desee que entre (en este caso se muestra a X1, X3 y C2 como no básicas). Para mostrar la última tabla del Simplex directamente podrá optar por seleccionar la opción llamada Ir a la última tabla (Go To The Last Tableau).

La última opción Nonstop to Finish muestra el resultado final completo (junto al análisis de sensibilidad).

2.10 LA OPCIÓN IMPRIMIR

Cada ventana mostrada puede ser impresa mediante la opción Imprimir (Print) que se encuentra en el menú Archivo (File) o mediante el botón desplegado en la barra de herramientas.

2.11 GUARDANDO UN PROBLEMA

Si quiere acceder a un problema posteriormente simplemente seleccione la opción Salvar como (Save As) o pulsando sobre el botón .


Google
 
Web eumed.net

 

Volver al índice de Análisis Cuantitativo con WINQSB

Volver a "Libros Gratis de Economía"

Volver a la "Enciclopedia y Biblioteca de Economía EMVI"