Вы находитесь на странице: 1из 13
Universidad de Los Andes Facultad de Ingeniería Escuela de Mecánica Departamento de Tecnología y Diseño (Gerencia)

Universidad de Los Andes Facultad de Ingeniería Escuela de Mecánica Departamento de Tecnología y Diseño (Gerencia) Producción II Mérida. Estado. Mérida

Universidad de Los Andes Facultad de Ingeniería Escuela de Mecánica Departamento de Tecnología y Diseño (Gerencia)

Método Simplex. Programación Lineal

Br.: Astrid Diaz C.I.: 19.146.017

Prof. Sara Yépez

Introducción.

El Método Simplex es un método analítico de solución de problemas de programación lineal capaz de resolver modelos más complejos que los resueltos mediante el método gráfico sin restricción en el número de variables.

Es un método iterativo que permite ir mejorando la solución en cada paso. La razón matemática de esta mejora radica en que el método consiste en caminar del vértice de un poliedro a un vértice vecino de manera que aumente o disminuya (según el contexto de la función objetivo, sea maximizar o minimizar), dado que el número de vértices que presenta un poliedro solución es finito siempre se hallará solución.

Este famosísimo método fue creado en el año de 1947 por el estadounidense George Bernard Dantzig y el ruso Leonid Vitalievich Kantorovich, con el ánimo de crear un algoritmo capaz de solucionar problemas de m restricciones y n variables.

Existen algunas herramientas como el Excel que permiten resolver modelos de Programación Lineal utilizando el Método Simplex. Este tipo de aplicaciones resultan de bastante utilidad para los estudiantes de ingeniería que desean verificar si los resultados que obtienen en la aplicación manual del método resultan ser correctos.

Algoritmo para resolver algún problema con el método simplex.

Definir las ecuaciones.

Igualar la función objetiva igual a cero.

Introducir una variable holgura por cada una de las restricciones menores o iguales, para convertirlas en igualdades, resultando el sistema de ecuaciones lineales. Cambiar las inecuaciones a ecuaciones.

Una mejor manera de entender esta introducción es con un problema real:

La empresa el SAMÁN Ltda. Dedicada a la fabricación de muebles, ha ampliado su producción en dos líneas más. Por lo tanto actualmente fabrica mesas, sillas, camas y bibliotecas. Cada mesa requiere de 2 piezas rectangulares de 8 pines, y 2 piezas cuadradas de 4 pines. Cada silla requiere de 1 pieza rectangular de 8 pines y 2 piezas cuadradas de 4 pines, cada cama requiere de 1 pieza rectangular de 8 pines, 1 cuadrada de 4 pines y 2 bases trapezoidales de 2 pines y finalmente cada biblioteca requiere de 2 piezas rectangulares de 8 pines, 2 bases trapezoidales de 2 pines y 4 piezas rectangulares de 2 pines. Cada mesa cuesta producirla $10000 y se vende en $ 30000, cada silla cuesta producirla $ 8000 y se vende en $ 28000, cada cama cuesta producirla $ 20000 y se vende en $ 40000, cada biblioteca cuesta producirla $ 40000 y se vende en $ 60000. El objetivo de la fábrica es maximizar las utilidades.

Imagen1. Tabla donde se encuentran todos los requerimientos de piezas por producto. PASO 1: MODELACIÓN MEDIANTE

Imagen1. Tabla donde se encuentran todos los requerimientos de piezas por producto. PASO 1: MODELACIÓN MEDIANTE PROGRAMACIÓN LINEAL Las variables:

X 1 = Cantidad de mesas a producir (unidades). X 2 = Cantidad de sillas a producir (unidades). X 3 = Cantidad de camas a producir (unidades). X 4 = Cantidad de bibliotecas a producir (unidades).

Las restricciones:

2X 1 + 1X 2 + 1X 3 + 2X 4 <= 24 2X 1 + 2X 2 + 1X 3 <= 20 2X 3 + 2X 4 <= 20 4X 4 <= 16

La función Objetivo:

Z MAX = 20000X 1 + 20000X 2 + 20000X 3 + 20000X 4

PASO 2: CONVERTIR LAS INECUACIONES EN ECUACIONES

En este paso el objetivo es asignar a cada recurso una variable de Holgura, dado que todas las restricciones son "<=".

2X 1 + 1X 2 + 1X 3 + 2X 4 + 1S 1 + 0S 2 + 0S 3 + 0S 4 = 24

2X 1 + 2X 2 + 1X 3 + 0X 4 + 0S 1 + 1S 2 + 0S 3 + 0S 4 = 20 0X 1 + 0X 2 + 2X 3 + 2X 4 + 0S 1 + 0S 2 + 1S 3 + 0S 4 = 20 0X 1 + 0X 2 + 0X 3 + 4X 4 + 0S 1 + 0S 2 + 0S 3 + 1S 4 = 16

De esta manera podemos apreciar una matriz identidad (n = 4), formado por las variables de holgura las cuales solo tienen coeficiente 1 en su respectivo recurso, por el ejemplo la variable de holgura "S1" solo tiene coeficiente 1 en la restricción correspondiente a el recurso 1.

La función objetivo no sufre variaciones:

Z MAX = 20000X 1 + 20000X 2 + 20000X 3 + 20000X 4

PASO 3: DEFINIR LA SOLUCIÓN BÁSICA INICIAL

El

Método

Simplex

parte

de

una

solución

básica

inicial

para

realizar

todas

sus

iteraciones, esta solución básica inicial se forma con las variables de coeficiente diferente de cero

(0) en la matriz identidad.

1S 1 = 24 1S 2 = 20 1S 3 = 20 1S 4 = 16

PASO 4: DEFINIR LA TABLA SIMPLEX INICIAL

2 X + 2 X + 1 X + 0 X + 0S + 1 S

Imagen2. Tabla para definir la solución en el método simplex sacada del programa Excel.

  • Solución: (segundo término)= En esta fila se consigna el segundo término de la solución, es decir las variables, lo más adecuado es que estas se consignen de manera ordenada, tal cual como se escribieron en la definición de restricciones.

  • Cj = La fila "Cj" hace referencia al coeficiente que tiene cada una de las variables de la fila "solución" en la función objetivo.

  • Variable Solución = En esta columna se consigna la solución básica inicial, y a partir de esta en cada iteración se van incluyendo las variables que formarán parte de la solución final.

  • Cb = En esta fila se consigna el valor que tiene la variable que se encuentra a su derecha "Variable solución" en la función objetivo.

  • Zj = En esta fila se consigna la contribución total, es decir la suma de los productos entre término y Cb.

  • Cj - Zj = En esta fila se realiza la diferencia entre la fila Cj y la fila Zj, su significado es un "Shadow price", es decir, la utilidad que se deja de recibir por cada unidad de la variable correspondiente que no forme parte de la solución.

Solución inicial:

 Solución : (segundo término)= En esta fila se consigna el segundo término de la solución,

Imagen3. Llenado de tabla en Excel, según todas las variables y valores que le corresponden a las restricciones y la función objetivo.

PASO 5: REALIZAR LAS ITERACIONES NECESARIAS

Este es el paso definitivo en la resolución por medio del Método Simplex, consiste en realizar intentos mientras el modelo va de un vértice del poliedro objetivo a otro.

El procedimiento a seguir es el siguiente:

  • 1. Evaluar que variable entrará y cual saldrá de la solución óptima:

PASO 5: REALIZAR LAS ITERACIONES NECESARIAS Este es el paso definitivo en la resolución por medio

Imagen4. Concepto de cómo se llegaría a la solución máxima o mínima del problema.

PASO 5: REALIZAR LAS ITERACIONES NECESARIAS Este es el paso definitivo en la resolución por medio

Imagen5. Evaluando que variables entran y salen de la solución óptima.

Para definir nuestra variable de Entrada, debemos buscar el valor mayor positivo que se encuentre en la columna X1, X2 y X3. En nuestro caso podemos observar que el mayor número positivo es el 4 y se encuentra ubicado en la fila S4 y columna X4. En conclusión nuestra variable de entrada será el número 4.

NOTA: Si algún valor que este dentro de estas celdas es negativo, debemos llevarlo a valor absoluto y si es mayor a los demás valores, será nuestra variable de entrada.

Entonces nuestra columna pivote será la columna de X4.

Entonces nuestra columna pivote será la columna de X4. Imagen6. Columna pivote. Luego debemos definir nuestra

Imagen6. Columna pivote. Luego debemos definir nuestra variable de Salida. Debemos dividir cada uno de las igualdades con las respectivas variables que les corresponde, es decir:

Entonces nuestra columna pivote será la columna de X4. Imagen6. Columna pivote. Luego debemos definir nuestra

Imagen7. Selección de los valores de las igualdades en cada una de las ecuaciones y sus variables correspondientes.

Como ya se explicó anteriormente debemos dividir cada uno de los valores de las igualdades con los su respectivo valor de la variable, es decir, en el caso de la fila S1 tenemos como valor de igualdad 24 y su valor de variable correspondiente que se encuentra en la columna de X4 tiene un valor de 2, sin más rodeos se divide 24 entre 2 (24/2) y nos da como resultado 12. A si sucesivamente hacemos con las celdas restantes.

Imagen8. Cálculo y selección de la variable de salida. Para la selección de la variable de

Imagen8. Cálculo y selección de la variable de salida.

Para la selección de la variable de salida es elegir el valor menor de todos. En nuestro caso sería el 4. Por lo tanto podemos escoger nuestra fila pivote.

Imagen8. Cálculo y selección de la variable de salida. Para la selección de la variable de

Imagen9. Fila pivote.

  • 2. Para empezar a realizar las iteraciones debemos transformar el valor de salida que tiene como magnitud 4 a 1. Para realizar dicha trasformación simplemente lo dividimos entre el mismo, es decir 4/4. Así mismo si modificamos el valor de salida automáticamente se debe modificar toda la fila pivote, cada uno de sus valores se divide entre 4.

Imagen8. Cálculo y selección de la variable de salida. Para la selección de la variable de

Imagen10. Modificación de la fila pivote.

Luego que se modificó la fila pivote, debemos modificar la columna pivote. Todas las

celdas que están por encima del valor de salida debemos transformarlas en cero (0). Para eso debemos realizar una operación matemática sencilla en Excel. Por ejemplo: para la fila S1 su valor de celda en la columna pivote es de 2, para poder convertir ese 2 en 0, simplemente en Excel realizamos la operación =2-1*2. El valor 2 es la correspondiente a la columna pivote de la fila S1, el valor 1 es el valor de la variable de salida que modificamos anteriormente y lo multiplicamos por el mismo valor 2 para así darnos como resultado cero (0). Lo hemos restado ya que todos los valores son positivos, si de alguna manera alguno es negativo simplemente en vez de restar se suma. No solo debemos modificar esa celda, sino toda la fila S1. Sencillamente con realizar la operación matemática en la celda que nos debe dar cero para la columna pivote que explicamos anteriormente, en Excel solo arrastramos y seleccionamos todas las celdas de la fila en este caso S1 y automáticamente el programa realiza los cálculos sin ningún problema.

Luego que se modificó la fila pivote, debemos modificar la columna pivote. Todas las celdas que

Imagen11. Modificación de la fila S1.

Se repite este procedimiento

con

correspondientes en el resto de las celdas.

las

dos

filas restantes, ahora se

harán los cálculos

Luego que se modificó la fila pivote, debemos modificar la columna pivote. Todas las celdas que

Imagen12. Modificación de todas las filas, incluyendo la columna pivote.

3.

Se realiza el llenado completo de las celdas con sus respectivas modificaciones.

3. Se realiza el llenado completo de las celdas con sus respectivas modificaciones. Imagen13. Llenado completo

Imagen13. Llenado completo de la primera iteración.

De esta manera se culmina la primera iteración, este paso se repetirá cuantas veces sea necesario y solo se dará por terminado el método según los siguientes criterios.

3. Se realiza el llenado completo de las celdas con sus respectivas modificaciones. Imagen13. Llenado completo

Imagen14. Criterio para determinar la solución óptima.

No solamente este criterio es válido sino también todas las variables de la función objetivo que para nuestro casi es X1, X2, X3 y X4; sus valores en cada uno de sus celdas deben tener una variable de salida con valor a 1, y las demás celdas con valores a cero (0). Así mismo nuestra segunda iteración será como columna pivote la variable X2 y realizamos los pasos explicados anteriormente.

Imagen15. Segunda iteración. Todavía no se cumple el criterio y la columna X1 y X3 todavía

Imagen15. Segunda iteración.

Todavía no se cumple el criterio y la columna X1 y X3 todavía no tiene como valor 1 la variable de salida y las demás celdas con valores a cero (0), debemos realizar otra iteración para eso la siguiente será como columna pivote X1 y se realiza los pasos anteriores.

Imagen15. Segunda iteración. Todavía no se cumple el criterio y la columna X1 y X3 todavía

Imagen16. Tercera iteración.

Podemos observar que no se cumple el criterio y la columna X3 todavía no tiene como valor 1 la variable de salida y las demás celdas con valores a cero (0), debemos realizar otra iteración para eso la siguiente será como columna pivote X3 y se realiza los pasos anteriores.

Imagen17. Cuarta iteración. En esta última iteración podemos observar que se cumple con la consigna Cj

Imagen17. Cuarta iteración.

En esta última iteración podemos observar que se cumple con la consigna Cj - Zj <= 0, para ejercicios cuya función objetivo sea "Maximizar" y tenemos que las variables de la función objetivo tienen su respectiva variable de salida con valor a 1 y las demás celdas con valores a cero (0), por ende hemos llegado a la respuesta óptima.

X1 = 3 X2 = 4 X3 = 6 X4 = 4

Con una utilidad de:

$ 340000.

Conclusión.

Como ya lo hemos mencionado, como tomador de decisiones, no sólo se debe de bastar con obtener la solución óptima, si no también es necesario conocer que tan sensible es el problema de Programación Lineal a los cambios en el entorno.

Dentro de la Programación Lineal existen dos tipos de análisis de sensibilidad que se deben hacer una vez obtenida nuestra solución óptima, los cuales son los siguientes:

Análisis de sensibilidad en los coeficientes de la función objetivo.

Análisis de sensibilidad en los recursos o valores del lado derecho.

Este resultado es la clave del método simplex algebraico y general para resolver cualquier modelo de la programación lineal. Una propiedad del método simplex, es que resuelve la programación lineal en iteraciones. Cada iteración desplaza la solución de un nuevo punto de

esquina que tiene potencial de mejorar el valor de la función objetivo. Es un método en la cual sus cálculos son tediosos y voluminosos, lo que hace que la computadora sea una herramienta esencial para resolver problemas de programación lineal.

El método Simplex es un método secuencial de optimización, es un procedimiento iterativo que permite ir mejorando la solución a cada paso. El proceso concluye cuando no es posible seguir mejorando más dicha solución.

Deberá tenerse en cuenta que este método sólo trabaja para restricciones que tengan un tipo de desigualdad "=" y coeficientes independientes mayores o iguales a 0, y habrá que estandarizar las mismas para el algoritmo.

Bibliografía.

  • Investigación de operaciones. Escrito por Hamdy A. Tah. Séptima Edición. Editorial PEARSON EDUCACION, México, 2004.

  • El método simplex. Simplex Primal. Yesid Ariza Osorio. Asesoramiento Empresarial y Gestión Capacitación y Entrenamiento. Diapositiva descargada de Slide Share.

  • Tutoriales Método Simplex Usando Excel. Visto por Youtube.