2014
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
evaluaci3n 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 d2e Programacin Lineal en su forma estandar, que denotaremos en lo que sigue por:
Min c1x1 + c2x2 + ... + cnxn
sa 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 cTx
s.a Ax = b
x >= 0
No existe prdida de generalidad en asumir que un modelo de PL viene dado en su forma estndar:
EJEMPLO
P) Max 9u + 2v + 5z8
sa 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 deholgura 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 excesono negativa,
con coeficiente nulo en la funcin objetivo.
4. Siempre es posible escribir una variable2 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 - 9x1 - 2x2 - 5x3 + 5x4 + 0x5 + 0x6
sa: 4x1 + 3x2 + 6x3 - 6x4 + x5 = 50
x1 + 2x2 - 3x3 + 3x4 - x6 = 8
2x1 - 4x2 + x3 - x4 = 5
xi >= 0, i=1,2,3,4,5,6.
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 X2 X3 X4 X5
2 1 1 0 0 70
1 1 0 1 0 40
1 3 0 0 1 90
-40 -60 0 0 0 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 X2 X3 X4 X5
5/3 0 1 0 -1/3 40
2/3 0 0 1 -1/3 10
1/3 1 0 0 1/3 30
-20 0 0 0 20 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 las 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 X2 X3 X4 X5
0 0 1 -5/2 1/2 15
1 0 0 3/2 -1/2 15
0 1 0 -1/2 1/2 25
0 0 0 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 2X1 + X2
sa 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) Min X5
sa ...............10X1 + 10X2 + X3 = 9
10X1 + 5X2 - X4 + X5 = 1
X1, X2, X3, X4, X5 >= 0
La tabla inicial asociada a la Fase I queda en consecuencia definida de la siguiente forma:
X1 X2 X3 X4 X5
10 10 1 0 0 9
10 5 0 -1 1 1
0 0 0 0 1 0
Luego, se debe hacer 0 el costo reducido de X5, obteniendo la siguiente tabla inicial para hacer el uso de Simplex:
X1 X2 X3 X4 X5
10 10 1 0 0 9
10 5 0 -1 1 1
-10 -5 0 1 0 -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 X2 X3 X4 X5
0 5 1 1 -1 8
1 1/2 0 -1/10 1/10 1/10
0 0 0 0 1 0
Se obtiene la solucin ptima de la Fase I, con valor ptimo cero. Luego iniciamos la Fase II del mtodo tomando X1 y X3como 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 X2 X3 X4
0 5 1 1 8
1 1/2 0 -1/10 1/10
-2 -1 0 0 0
Hacemos cero los costos reducidos de las variables bsicas:
X1 X2 X3 X4
0 5 1 1 8
1 1/2 0 -1/10 1/10
0 0 0 -1/5 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 X2 X3 X4
0 5 1 1 8
1 1 1/10 0 9/10
0 1 1/5 0 9/5
Donde la solucin ptima es: X1=9/10 X2=0 Con valor ptimo V(P) = 9/5.
Necesitas Aprobar tu Examen de
Programacin Lineal y no tienes ejercicios
Resueltos?...
Descarga HOY el Libro de Apuntes de Programacin Lineal!
RESUELVA AQUI SUS PROBLEMAS DE PROGRAMACIN LINEAL UTILIZANDO EL MTODO SIMPLEX
La siguiente aplicacin permite resolver modelos de Programacin Lineal utilizando el Mtodo Simplex. Consideremos uno de los ejemplos de
esta seccin para ver su uso. Ntese que no es necesario agregar las restricciones de no negatividad. De aqu se obtiene la solucin ptima,
valor ptimo y cada una de las tablas del Mtodo Simplex. Para una mejor visualizacin de las tablas se recomienda seleccionar el modo
"Fraccin".