Método Simplex en Programación Lineal

Referencia: Publicación del Método por George Dantzig en 1947. Primera implementación computacional del Método Simplex el año 1952 en un problema de 71 variables y 48 ecuaciones, tarda 18 horas. En 1956, un código llamado RSLP1, implementado en un IBM con 4Kb en RAM, admite la resolución de modelos con 255 restricciones.

Consideremos un modelo de Programación Lineal en su forma estándar, que denotaremos en lo que sigue por:

forma-estandar-extendida

Matricialmente escrito como:

forma-estandar-matricial

No existe pérdida de generalidad en asumir que un modelo de Programación Lineal (PL) viene dado en su forma estándar.

Ejemplo:
ejemplo-pasar-a-forma-estan

  1. Siempre es posible llevar un problema de maximización a uno de minimización. Si f(x) es la función objetivo a maximizar y x* es la solución óptima f(x*)>=f(x), para todo x factible. -f(x*)<=-f(x), para todo x factible. En consecuencia: x* es también mínimo de -f(x)
  2. Cada restricción del tipo <= puede ser llevada a una ecuación de igualdad usando una (nueva) variable de holgura no negativa, con coeficiente nulo en la función objetivo.
  3. Cada restricción del tipo >= puede ser llevada a una ecuación de igualdad usando una (nueva) variable de exceso no negativa, con coeficiente nulo en la función objetivo.
  4. Siempre es posible escribir una variable libre de signo como la diferencia de dos variables no negativas.

Considerando la siguiente notación: u=x1, v=x2, z=x3 – x4, s1=x5 (holgura), s2=x6 (exceso), el problema P) puede ser escrito en forma equivalente como:

ejemplo-forma-estandar-line

Ejemplo:

Resolver el siguiente problema de Programación Lineal utilizando el Método Simplex:

ejemplo-lineal-metodo-simpl

Para poder aplicar el Método Simplex, es necesario llevar el modelo a su formato estándar, para lo cual definimos X3, X4, X5>=0 como las respectivas variables de holgura para la restricción 1, 2 y 3. De esta forma queda definida la tabla inicial del método de la siguiente forma:

tabla-inicial-metodo-simple

En esta situación, las variables de holgura definen una solución básica factible inicial, condición necesaria para la aplicación del método. Luego, se verifican los costos reducidos de las variables no básicas (X1 y X2 en la tabla inicial) y se escoge como variable que entra a la base aquella con el costo reducido más negativo. En este caso, X2.

Luego, para escoger que variable básica deja la base debemos buscar el mínimo cuociente entre el lado derecho y los coeficientes asociados a la variable no básica entrante en cada fila (para aquellos denominadores exclusivamente mayores a cero). El mínimo se alcanza en Min{70/1, 40/1, 90/3}=30 asociado a la tercera fila, el cual corresponde a la variable básica actual X5, en consecuencia, X5 deja la base. En la posición que se alcanza el mínimo cuociente lo llamaremos Pivote (marcado con azul) el cual nos servirá para realizar las respectivas operaciones filas, logrando la siguiente tabla al cabo de una iteración.

primera-iteracion-simplex

El valor de la función objetivo luego de una iteración ha pasado de 0 a 1.800. Se recomienda al lector hacer una representación gráfica del problema y notar como las soluciones factibles del método corresponden a vértices del dominio de puntos factibles.

La actual tabla no corresponde a la solución óptima del problema P) debido a que existe una variable no básica con costo reducido negativo, por tanto X1 entra a la base. Posteriormente, mediante el criterio del mínimo 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 básica actual X4), por tanto X4 deja la base. Obtenido lo anterior se aplica una iteración del método:

tabla-optima-simplex

Finalmente se alcanza la solución óptima del problema P) y se verifica que los costos reducidos asociados a las variables no básicas (X4 y X5 son mayores o igual que cero). Notar que la existencia de un costo reducido igual a cero para una variable no básica en esta etapa definiría un problema con infinitas soluciones óptimas.

La solución alcanzada es X1*=15, X2*=25 con V(P*)=2.100. Adicionalmente, los costos reducidos asociados a las variables no básicas definen el precio sombra asociado a las restricciones 1, 2 y 3, respectivamente, lo cual es equivalente a la obtención del precio sombra mediante el método gráfico. Dejaremos para una posterior presentación, la forma de calcular el intervalo de variación para el lado derecho que permite la validez del precio sombra, utilizando la tabla final del Método Simplex.

Método Simplex de 2 Fases

Esta estrategia se utiliza cuando no es inmediata una solución básica factible inicial en las variables originales del modelo.

FASE I

Se considera un problema auxiliar que resulta de agregar tantas variables auxiliares a las restricciones del problema, de modo de obtener una solución básica factible. Resolver por Simplex un problema que considera como función objetivo la suma de las variables auxiliares. Si el valor óptimo es cero, seguir a la Fase II, en caso contrario, no existe solución factible.

FASE II

Resolver por el Método Simplex el problema original a partir de la solución básica factible inicial hallada en la Fase I.

Ejemplo:

ejemplo-2-fases

Se debe agregar X3 como variable de holgura de la restricción 1, X4 como variable de exceso de la restricción 2 y X5 variable auxiliar para poder comenzar la Fase 1.

problema-fase-1

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

tabla-inicial-fase-1

Luego, se debe hacer 0 el costo reducido de X5, obteniendo la siguiente tabla inicial para hacer el uso del Método Simplex:

inicio-fase-1

Se escoge X1 como variable que entra a la base al tener el costo reducido más negativo. Posteriormente, mediante el criterio del mínimo cuociente se selecciona la variable que sale de la base: Min{9/10; 1/10}=1/10, X5 sale de la base.

tabla-final-fase-1

Una vez obtenida concluida la Fase I, con valor óptimo cero, tomamos X1 y X3 como variables básicas iniciales para la Fase II y eliminado la columna de la variable auxiliar X5.

tabla-inicial-false-2

Hacemos cero los costos reducidos de las variables básicas:

primera-iteracion-fase-2

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

tabla-final-fase-2

Donde la solución óptima es: X1=9/10yX2=0 con valor óptimo V(P)=9/5.

MaloRegularBuenoMuy BuenoExcelente (3 Votos, Promedio: 3,67 de un máximo de 5)
Cargando…

, , , ,

Sin Comentarios aun.

Comparte tus Comentarios!