Anda di halaman 1dari 18

Mtodo Simplex

El Mtodo Simplex publicado por George Dantzig en 1947 consiste en un algoritmo iterativo que secuencialmente a travs de iteraciones se va aproximando al ptimo del problema de Programacin Lineal en caso de existir esta ltima. La primera implementacin computacional del Mtodo Simplex es el ano 1952 para un problema de 71 variables y 48 ecuaciones. Su resolucin tarda 18 horas. Luego, en 1956, un cdigo llamado RSLP1, implementado en un IBM con 4Kb en RAM, admite la resolucin de modelos con 255 restricciones. El Mtodo Simplex hace uso de la propiedad de que la solucin ptima de un problema de Programacin Lineal se encuentra en un vrtice o frontera del dominio de puntos factibles (esto ltimo en casos muy especiales), por lo cual, la bsqueda secuencial del algoritmo se basa en la evaluacin progresiva de estos vrtices hasta encontrar el ptimo. Cabe destacar que para aplicar el Mtodo Simplex a un modelo lineal, este debe estar en un formato especial conocido como formato estndar el cual definiremos a continuacin. FORMA ESTNDAR DE UN MODELO DE PROGRAMACIN LINEAL Consideremos un modelo de Programacin Lineal en su forma estandar, que denotaremos en lo que sigue por:

Min sa

c1x1 + c2x2 + ... + cnxn a11x1 + a12x2 + ... + a1nxn = b1 a21x1 + a22x2 + ... + a2nxn = b2 ... ... ...

am1x1 + am2x2 + ... + amnxn = bm xi >= 0, i = 1, 2, ..., n y m <= n

Matricialmente escrito como: Min s.a x >= 0 No existe prdida de generalidad en asumir que un modelo de PL viene dado en su forma estndar:

Ax

cTx =

EJEMPLO P) Max sa

9u + 2v + 5z 4u + 3v + 6z <= 50

u + 2v - 3z >= 8 2u - 4v + z = 5 u,v >= 0 z e IR

1. Siempre es posible llevar un problema de maximizacin a uno de minimizacin. Si f(x) es la funcin objetivo a maximizar y x* es la solucin ptima f(x*) >= f(x), para todo x factible. -f(x*) <= - f(x), para todo x factible. En consecuencia: x* es tambin mnimo de -f(x) 2. Cada restriccin del tipo <= puede ser llevada a una ecuacin de igualdad usando una (nueva) variable de holgura no negativa, con coeficiente nulo en la funcin objetivo. 3. Cada restriccin del tipo >= puede ser llevada a una ecuacin de igualdad usando una (nueva) variable de exceso no negativa, con coeficiente nulo en la funcin objetivo. 4. Siempre es posible escribir una variable libre de signo como la diferencia de dos variables no negativas. Considerando la siguiente notacin: u = x1, v = x2, z = x3 - x4, s1 = x5 (holgura), s2 = x6 (exceso), el problema P) puede ser escrito en forma equivalente como:

Min sa:

- 9x1 - 2x2 - 5x3 + 5x4 + 0x5 + 0x6 4x1 + 3x2 + 6x3 - 6x4 + x5 = 50 x1 + 2x2 - 3x3 + 3x4 2x1 - 4x2 + x3 - x4 xi >= 0, i=1,2,3,4,5,6. - x6 = 8 = 5

EJEMPLO: Resolver el siguiente problema de Programacin Lineal utilizando el Mtodo Simplex:


Max 40*X1 + 60*X2 s.a. 2*X1 + 1*X2 <= 70 1*X1 + 1*X2 <= 40 1*X1 + 3*X2 <= 90 X1 >= 0 X2 >= 0 Para poder aplicar el Mtodo Simplex, es necesario llevar el modelo a su formato estndar, para lo cual definimos X3, X4, X5 >= 0 como las respectivas variables de holgura para la restriccin 1, 2 y 3. De esta forma queda definida la tabla inicial del mtodo de la siguiente forma:

X1 2 1 1 -40

X2 1 1 3 -60

X3 1 0 0 0

X4 0 1 0 0

X5 0 0 1 0 70 40 90 0

En esta situacin, las variables de holgura definen una solucin bsica factible inicial, condicin necesaria para la aplicacin del mtodo. Luego, se verifican los costos reducidos de las variables no bsicas (X1 y X2 en la tabla inicial) y se escoge como variable que entra a la base aquella con el costo reducido "ms negativo". En este caso, X2. Luego, para escoger que variable bsica deja la base debemos buscar el mnimo cuociente entre el lado derecho y los coeficientes asociados a la variable entrante en cada fila (para aquellos coeficientes > 0 marcados en rojo en la tabla anterior). El mnimo se alcanza en Min {70/1, 40/1, 90/3} = 30 asociado a la tercera fila, el cual corresponde a la variable bsica actual X5, en consecuencia, X5 deja la base. En la posicin que se alcanza el mnimo cuociente lo llamaremos "Pivote" (marcado con rojo) el cual nos servir para realizar las respectivas operaciones filas, logrando la siguiente tabla al cabo de una iteracin: X1 5/3 2/3 1/3 -20 X2 0 0 1 0 X3 1 0 0 0 X4 0 1 0 0 X5 -1/3 -1/3 1/3 20 40 10 30 1800

El valor de la funcin objetivo luego de una iteracin ha pasado de 0 a 1.800. Se recomienda al lector hacer una representacin grfica del problema y notar como l as soluciones factibles del mtodo corresponden a vrtices del dominio de puntos factibles. La actual tabla no corresponde a la solucin ptima del problema P) debido a que existe una variable no bsica con costo reducido negativo, por tanto X1 entra a la base. Posteriormente, mediante el criterio del mnimo cuociente calculamos la variable que debe dejar la base: Min {40/(5/3), 10/(2/3), 30/(1/3)} = 15, asociado a la fila 2 (variable bsica actual X4), por tanto X4 deja la base. Obtenido lo anterior se aplica una iteracin del mtodo: X1 0 1 0 X2 0 0 1 X3 1 0 0 X4 -5/2 3/2 -1/2 X5 1/2 -1/2 1/2 15 15 25

30

10

2100

Finalmente se alcanza la solucin ptima del problema P) y se verifica que los costos reducidos asociados a las variables no bsicas (X4 y X5 son mayores o iguals que cero). Notse que la existencia de un costo reducido igual a cero para una variable no bsica en esta etapa define un problema con "infinitas soluciones". La solucin alcanzada es X1* = 15, X2* = 25 con V(P*) = 2.100. Adicionalmente, los costos reducidos asociados a las variables no bsicas definen el precio sombra asociado a las restricciones 1, 2 y 3, respectivamente, lo cual es equivalente a la obtencin del precio sombra mediante el mtodo grfico. Dejaremos para una posterior presentacin, la forma de calcular el intervalo de variacin para el lado derecho que permite la validez del precio sombra, utilizando la tabla final del Mtodo Simplex. MTODO SIMPLEX DE 2 FASES Esta estrategia se utiliza cuando no es inmediata una solucin bsica factible inicial en las variables originales del modelo. FASE 1: Se considera un problema auxiliar que resulta de agregar tantas variables auxiliares a las restricciones del problema, de modo de obtener una solucin bsica factible. Resolver por Simplex un problema que considera como funcin objetivo la suma de las variables auxiliares. Si el valor ptimo es cero, seguir a la Fase II, en caso contrario, no existe solucin factible. FASE 2: Resolver por Simplex el problema original a partir de la solucin bsica factible inicial hallada en la Fase I.

P)

Max sa

2X1 + X2 10X1 + 10X2 <= 9 10X1 + 5X2 >= 1 X1, X2 >= 0

Se debe agregar X3 como variable de holgura de la restriccin 1, X4 como variable de exceso de la restriccin 2 y X5 variable auxiliar para poder comenzar la Fase 1. (Ntese que solo agregando X3 como variable de holgura a la restriccin 1 y X4 como variable de exceso a las segunda restriccin no se obtiene una solucin bsica factible inicial, en particular X4<0).

F1) sa

Min ...............10X1 + 10X2 + X3 = 9 10X1 + 5X2 - X4 + X5 = 1 X1, X2, X3, X4, X5 >= 0

X5

La tabla inicial asociada a la Fase I queda en consecuencia definida de la siguiente forma:

X1 10 10 0

X2 10 5 0

X3 1 0 0

X4 0 -1 0

X5 0 1 1 9 1 0

Luego, se debe hacer 0 el costo reducido de X5, obteniendo la siguiente tabla inicial para hacer el uso de Simplex: X1 10 10 -10 X2 10 5 -5 X3 1 0 0 X4 0 -1 1 X5 0 1 0 9 1 -1

Se escoge X1 como variable que entra a la base al tener el costo reducido ms negativo. Posteriormente, mediante el criterio del mnimo cuociente se selecciona la variable que sale de la base: Min {9/10; 1/10} = 1/10, X5 sale de la base: X1 0 1 0 X2 5 1/2 0 X3 1 0 0 X4 1 -1/10 0 X5 -1 1/10 1 8 1/10 0

Se obtiene la solucin ptima de la Fase I, con valor ptimo cero. Luego iniciamos la Fase II del mtodo tomando X1 y X3 como variables bsicas iniciales. FASE 2: Resolver por Simplex el problema original a partir de la solucin bsica factible inicial hallada en la Fase I. X1 0 1 -2 X2 5 1/2 -1 X3 1 0 0 X4 1 -1/10 0 8 1/10 0

Hacemos cero los costos reducidos de las variables bsicas: X1 0 1 0 X2 5 1/2 0 X3 1 0 0 X4 1 -1/10 -1/5 8 1/10 1/5

X4 entra a la base. Por el criterio del mnimo cuociente, el pivote se encuentra en la fila 1, por tanto X3 sale de la base:

X1 0 1 0

X2 5 1 1

X3 1 1/10 1/5 X2=0

X4 1 0 0 8 9/10 9/5

Donde la solucin ptima es: X1=9/10

Con valor ptimo V(P) = 9/5.

MTODO SIMPLEX

El Mtodo Simplex es un mtodo analtico de solucin de problemas de programacin lineal capaz de resolver modelos ms complejos que los resueltos mediante el mtodo grfico sin restriccin en el nmero de variables.

El Mtodo Simplex es un mtodo iterativo que permite ir mejorando la solucin en cada paso. La razn matemtica de esta mejora radica en que el mtodo consiste en caminar del vrtice de un poliedro a un vrtice vecino de manera que aumente o disminuya (segn el contexto de la funcin objetivo, sea maximizar o minimizar), dado que el nmero de vrtices que presenta un poliedro solucin es finito siempre se hallar solucin.

Este famossimo mtodo fue creado en el ao 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.

QUE ES UNA MATRIZ IDENTIDAD?


Una matriz puede definirse como una ordenacin rectangular de elementos, (o listado finito de elementos), los cuales pueden ser nmeros reales o complejos, dispuestos en forma de filas y de columnas.

La matriz idntica o identidad es una matriz cuadrada (que posee el mismo nmero tanto de columnas como de filas) de orden n que tiene todos los elementos diagonales iguales a uno (1) y todos los dems componentes iguales a cero (0), se denomina matriz idntica o identidad de orden n, y se denota por:

La importancia de la teora de matrices en el Mtodo Simplex es fundamental, dado que el algoritmo se basa en dicha teora para la resolucin de sus problemas.

OBSERVACIONES IMPORTANTES AL UTILIZAR MTODO SIMPLEX


VARIABLES DE HOLGURA Y EXCESO

El Mtodo Simplex trabaja basndose en ecuaciones y las restricciones iniciales que se modelan mediante programacin lineal no lo son, para ello hay que convertir estas inecuaciones en ecuaciones utilizando unas variables denominadas de holgura y exceso relacionadas con el recurso al cual hace referencia la restriccin y que en el tabulado final representa el "Slack or surplus" al que hacen referencia los famosos programas de resolucin de investigacin de operaciones, estas variables adquieren un gran valor en el anlisis de sensibilidad y juegan un rol fundamental en la creacin de la matriz identidad base del Simplex.

Estas variables suelen estar representadas por la letra "S", se suman si la restriccin es de signo "<= " y se restan si la restriccin es de signo ">=".

Por ejemplo:

Bryan Antonio Salazar Lpez

Bryan Antonio Salazar Lpez VARIABLE ARTIFICIAL / MTODO DE LA "M"

Una variable artificial es un truco matemtico para convertir inecuaciones ">=" en ecuaciones, o cuando aparecen igualdades en el problema original, la caracterstica principal de estas variables es que no deben formar parte de la solucin, dado que no representan recursos. El objetivo fundamental de estas variables es la formacin de la matriz identidad.

Estas variables se representa por la letra "A", siempre se suman a las restricciones, su coeficiente es M (por esto se le denomina Mtodo de la M grande, donde M significa un nmero demasiado grande muy poco atractivo para la funcin objetivo), y el signo en la funcin objetivo va en contra del sentido de la misma, es decir, en problemas de Maximizacin su signo es menos (-) y en problemas de Minimizacin su signo es (+), repetimos con el objetivo de que su valor en la solucin sea cero (0).

MTODO SIMPLEX PASO A PASO


EL PROBLEMA

La empresa el SAMN Ltda. Dedicada a la fabricacin de muebles, ha ampliado su produccin en dos lneas ms. 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 fbrica es maximizar las utilidades.

Problema planteado por Hctor Angulo - Ingeniero Industrial PASO 1: MODELACIN MEDIANTE PROGRAMACIN LINEAL

Las variables:

X1 = Cantidad de mesas a producir (unidades)

X2 = Cantidad de sillas a producir (unidades) X3 = Cantidad de camas a producir (unidades) X4 = Cantidad de bibliotecas a producir (unidades)

Las restricciones: 2X1 + 1X2 + 1X3 + 2X4 <= 24 2X1 + 2X2 + 1X3 <= 20 2X3 + 2X4 <= 20 4X4 <= 16

La funcin Objetivo: ZMAX = 20000X1 + 20000X2 + 20000X3 + 20000X4


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 "<=".

2X1 + 1X2 + 1X3 + 2X4 + 1S1 + 0S2 + 0S3 + 0S4 = 24 2X1 + 2X2 + 1X3 + 0X4 + 0S1 + 1S2 + 0S3 + 0S4 = 20 0X1 + 0X2 + 2X3 + 2X4 + 0S1 + 0S2 + 1S3 + 0S4 = 20 0X1 + 0X2 + 0X3 + 4X4 + 0S1 + 0S2 + 0S3 + 1S4 = 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 restriccin correspondiente a el recurso 1.

La funcin objetivo no sufre variaciones:

ZMAX = 20000X1 + 20000X2 + 20000X3 + 20000X4


PASO 3: DEFINIR LA SOLUCIN BSICA INICIAL

El Mtodo Simplex parte de una solucin bsica inicial para realizar todas sus iteraciones, esta solucin bsica inicial se forma con las variables de coeficiente diferente de cero (0) en la matriz identidad. 1S1 = 24 1S2 = 20 1S3 = 20 1S4 = 16
PASO 4: DEFINIR LA TABLA SIMPLEX INICIAL

Bryan Antonio Salazar Lpez

Solucin: (segundo trmino)= En esta fila se consigna el segundo trmino de la solucin, es decir las variables, lo ms adecuado es que estas se consignen de manera ordenada, tal cual como se escribieron en la definicin de restricciones. Cj = La fila "Cj" hace referencia al coeficiente que tiene cada una de las variables de la fila "solucin" en la funcin objetivo. Variable Solucin = En esta columna se consigna la solucin bsica inicial, y a partir de esta en cada iteracin se van incluyendo las variables que formarn parte de la solucin final. Cb = En esta fila se consigna el valor que tiene la variable que se encuentra a su derecha "Variable solucin" en la funcin objetivo. Zj = En esta fila se consigna la contribucin total, es decir la suma de los productos entre trmino 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 solucin.

Solucin inicial:

Bryan Antonio Salazar Lpez PASO 5: REALIZAR LAS ITERACIONES NECESARIAS

Este es el paso definitivo en la resolucin por medio del Mtodo Simplex, consiste en realizar intentos mientras el modelo va de un vrtice del poliedro objetivo a otro.

El procedimiento a seguir es el siguiente:

1. Evaluar que variable entrar y cual saldr de la solucin ptima:

Maximizar Variable que entra La ms positiva de los Cj - Zj Siendo b los valores bajo la celda solucin y a el valor correspondiente a la interseccin entre b y la variable que entra. La menos positiva de los b/a.

Minimizar La ms negativa de los Cj - Zj Siendo b los valores bajo la celda solucin y a el valor correspondiente a la interseccin entre b y la variable que entra. La ms positiva de los b/a.

Variable que sale

Bryan Antonio Salazar Lpez

2. El hecho de que una variable distinta forme parte de las variables solucin implica una serie de cambios en el tabulado Simplex, cambios que se explicarn a continuacin.

- Lo primero es no olvidar el valor del "a" correspondiente a la variables a entrar, en este caso el "a = 4".

Bryan Antonio Salazar Lpez

- Lo siguiente es comenzar a rellenar el resto de la tabla, fila x fila.

Bryan Antonio Salazar Lpez

- Se repite este procedimiento con las dos filas restantes, ahora se harn los clculos correspondientes en el resto de las celdas.

Bryan Antonio Salazar Lpez

De esta manera se culmina la primera iteracin, este paso se repetir cuantas veces sea necesario y solo se dar por terminado el mtodo segn los siguientes criterios.
Maximizar Solucin ptima Cuando todos los Cj - Zj sean <= 0 Minimizar Cuando todos los Cj - Zj sean >= 0

- Continuamos con las iteraciones para lo cual tenemos que repetir los pasos anteriores.

Bryan Antonio Salazar Lpez

En esta ltima iteracin podemos observar que se cumple con la consigna Cj - Zj <= 0, para ejercicios cuya funcin objetivo sea "Maximizar", por ende hemos llegado a la respuesta ptima.

X1 = 3 X2 = 4 X3 = 6 X4 = 4 Con una utilidad de: $ 340000 Sin embargo una vez finalizado el Mtodo Simplex se debe observar una matriz identidad en el rectngulo determinado por las variables de decisin, el hecho de que en este caso no se muestre la matriz identidad significa que existe una solucin ptima alterna.

Bryan Antonio Salazar Lpez

La manera de llegar a la otra solucin consiste en alterar el orden en que cada una de las variables entro a la solucin bsica, recordemos que el proceso fue decidido al azar debido a la igualdad en el Cj - Zj del tabulado inicial. Aqu les presentamos una de las maneras de llegar a la otra solucin.

Bryan Antonio Salazar Lpez

Podemos observar como existe una solucin ptima alternativa en la cual la combinacin de variables es distinta y existe un menor consumo de recursos, dado que el hecho de que se encuentre la variable "S1" en la solucin ptima con un coeficiente de "3" significa que se presenta una holgura de 3 unidades del recurso (pieza rectangular de 8 pines).

X1 = 0 (Cantidad de mesas a producir = 0) X2 = 7 (Cantidad de sillas a producir = 7) X3 = 6 (Cantidad de camas a producir = 6)

X4 = 4 (Cantidad de bibliotecas a producir = 4) S1 = 3 (Cantidad de piezas rectangulares de 8 pines sin utilizar =3) Con una utilidad de: $ 340000

PROBLEMAS DE MINIMIZACIN CON EL MTODO SIMPLEX


Para resolver problemas de minimizacin mediante el algoritmo simplex existen dos procedimientos que se emplean con regularidad.

- El primero, que a mi juicio es el ms recomendable se basa en un artificio aplicable al algoritmo fundamentado en la lgica matemtica que dicta que "para cualquier funcin f(x), todo punto que minimice a f(x) maximizar tambin a - f(x)". Por lo tanto el procedimiento a aplicar es multiplicar por el factor negativo (-1) a toda la funcin objetivo.

a continuacin se resuelve el algoritmo como un problema de maximizacin. - El segundo procedimiento, el cual pretende conservar la minimizacin consiste en aplicar los criterios de decisin que hemos esbozado con anterioridad, en los casos de la variable que entra, que sale y el caso en el que la solucin ptima es encontrada. Aqu recordamos los procedimientos segn el criterio dado el caso "minimizar".
Minimizar Variable que entra La ms negativa de los (Cj - Zj) Siendo "b" los valores bajo la celda solucin y "a" el valor correspondiente a la interseccin entre "b" y la variable que entra. La ms positiva de los "b/a". Cuando todos los (Cj - Zj) sean >= 0.

Variable que sale

Solucin ptima

http://ingenierosindustriales.jimdo.com/herramientas-para-el-ingenieroindustrial/investigaci%C3%B3n-de-operaciones/m%C3%A9todo-simplex/

Anda mungkin juga menyukai