Está en la página 1de 6

PROGRAMACIÓN LINEAL MÉTODO SIMPLEX

FUNDAMENTOS DEL MÉTODO SIMPLEX

El método Simplex es un procedimiento general para resolver problemas de programación lineal.


Desarrollado por George Dantzig en 1947, se usa actualmente de manera rutinaria para resolver
problemas grandes en computadoras. También se usan extensiones y variaciones del método
Simplex para realizar análisis post-óptimo (que incluye el análisis de sensibilidad) sobre el modelo.
Básicamente, el método Simplex es un procedimiento algebraico iterativo que resuelve sistemas
de ecuaciones lineales, sin embargo, sus conceptos fundamentales son geométricos, por lo que la
comprensión de dicha base geométrica nos proporciona una fuerte intuición sobre cómo opera el
algoritmo y por qué es tan eficiente.

El algoritmo comienza las iteraciones en una SBF inicial (vértice o


punto extremo), y se desplaza de una a otra SBF hasta llegar al
óptimo. Se debe observar que el procedimiento no es capaz de
cortar camino y avanzar a través del espacio de la RF, sino que
siempre se mueve (o avanza) entre puntos extremos (SBF)
adyacentes.
Se dice que dos SBF son adyacentes si se diferencian solamente en
una variable básica que lo es para una y para la otra no.

La forma algebraica del método Simplex, puede ser la mejor para entender la lógica que
fundamenta el algoritmo. Sin embargo, no es la más conveniente para realizar los cálculos
necesarios. Por esto es más útil usar la forma tabular, ya que en ésta se registra sólo la
información esencial: 1) los coeficientes de las variables, 2)las constantes del lado derecho de las
ecuaciones, 3) la variable básica que aparece en cada ecuación.
Veremos a continuación cómo se construye dicha tabla, analizando algebraicamente la esencia del
algoritmo.

Álgebra III 1
PROGRAMACIÓN LINEAL MÉTODO SIMPLEX

Dado un problema de PL en formato estándar de la forma:


Maximizar Z= c. x donde 𝑨𝒎 𝒙(𝒏+𝒎) , 𝑿(𝒏+𝒎) 𝒙𝟏 , 𝒃𝒎𝒙𝟏
Sujeto a A.x = b
X≥0
Supongamos que se tiene una SBF inicial x asociada con la base B. Entonces el problema
puede escribirse como sigue:
Maximizar 𝑍 = 𝑐𝐵 . 𝑥𝐵 + 𝑐𝑁 . 𝑥𝑁 Maximizar 𝑍
𝑥𝐵
Sujeto a [𝐵, 𝑁]. [𝑥 ] = 𝑏 Sujeto a 𝑍 − 𝑐𝐵 . 𝑥𝐵 − 𝑐𝑁 . 𝑥𝑁 = 0 (1)
𝑁
𝑥𝐵
[𝑥 ] ≥ 0 𝐵. 𝑥𝐵 + 𝑁. 𝑥𝑁 = b (2)
𝑁

𝑥𝐵 ≥ 0, 𝑥𝑁 ≥ 0
Si pre-multiplicando (2) por 𝐵 −1 (recordar que B es una base y por lo tanto tiene inversa)
llegamos a: 𝑥𝐵 + 𝐵 −1 𝑁. 𝑥𝑁 = 𝐵 −1 . 𝑏 (𝟑)

CRITERIO DE FACTIBILIDAD:
Despejando de esta última expresión: Limita el valor que la XN puede
tomar al entrar en la base para
𝑥𝐵 = 𝐵 −1 𝑏 − 𝐵 −1 𝑁. 𝑥𝑁 ≥ 0
que siga siendo SBF
y reemplazando en (1), queda:
𝑍 − 𝑐𝐵 . (𝐵 −1 𝑏 − 𝐵 −1 𝑁𝑥𝑁 ) − 𝑐𝑁 . 𝑥𝑁 = 0
Reordenando los términos de esta última ecuación:
𝑍 − (𝑐𝑁 − 𝑐𝐵 𝐵 −1 𝑁)𝑥𝑁 = 𝑐𝐵 𝐵 −1 𝑏 (𝟒)
Como 𝒙𝑵 = 𝟎, 𝒙𝑩 = 𝑩−𝟏 𝒃, 𝒁 = 𝒄𝑩 𝑩−𝟏 𝒃
Si se piensa en Z como una variable básica más y en (4) como una restricción adicional, se
puede reescribir el problema de la forma siguiente:
CRITERIO DE OPTIMALIDAD: Indica la XN que entra a la
base aportando mayor aumento por unidad en Z

Maximizar Z
Sujeto a 𝑍 + 0 𝑥𝐵 − (𝑐𝑁 − 𝑐𝐵 𝐵 −1 𝑁)𝑥𝑁 = 𝑐𝐵 𝐵 −1 𝑏
𝑥𝐵 + 𝐵 −1 𝑁. 𝑥𝑁 = 𝐵 −1 . 𝑏
𝑥𝐵 ≥ 0, 𝑥𝑁 ≥ 0

Álgebra III 2
PROGRAMACIÓN LINEAL MÉTODO SIMPLEX

De esta forma podemos tabular el problema, volcando la información de los coeficientes


del sistema como se muestra a continuación:

Z XB XN LD
Renglón 0 Z 1 0 −(𝑐𝑁 − 𝑐𝐵 𝐵 −1 𝑁) 𝑐𝐵 𝐵 −1 𝑏
Renglones XB 0mx1 Imxm 𝐵 −1 𝑁mxn 𝐵 −1 𝑏
1am

SÍNTESIS DEL ALGORITMO SIMPLEX:

Casos especiales ( los veremos con ejemplos en la práctica)


1. Empate para la variable básica entrante.
2. Empate para la variable básica que sale (degeneración).
3. Cuando no hay variable básica que sale (Z no acotada).
4. Cuando existen coeficientes nulos correspondientes a variables no básicas en el
“renglón 0” (Solución óptima múltiple).

Álgebra III 3
PROGRAMACIÓN LINEAL MÉTODO SIMPLEX

La figura que sigue, muestra la solución óptima,


obtenida con el método gráfico.

Álgebra III 4
PROGRAMACIÓN LINEAL MÉTODO SIMPLEX

Resolvamos el mismo problema usando el algoritmo Simplex

Álgebra III 5
PROGRAMACIÓN LINEAL MÉTODO SIMPLEX

Álgebra III 6

También podría gustarte