Método Simplex
Método Simplex
Método Simplex
MATEMÁTICA
MÉTODO SIMPLEX
JULIO CÉSAR LONDOÑO ORTEGA
Email: [email protected]
Método Simplex
Método Simplex
Es un método que puede resolver cualquier problema de programación lineal. Además
de la solución óptima, el método Simplex entrega el análisis de sensibilidad.
El método Simplex busca la solución óptima en los extremos de la región factible, cada
extremo se denomina solución básica y se identifica algebraicamente como un sistema
de ecuaciones simultaneas.
Una solución básica se obtiene igualando a cero las variables necesarias con el fin de
igualar el número de variables y el número total de ecuaciones para que la solución sea
única y luego se resuelve el sistema con las variables restantes.
El método Simplex, parte de una solución inicial y luego se traslada sistemáticamente a
otra solución básica que mejore el valor de la función objetivo.
Forma estándar de un modelo de
programación lineal
x 3 = x 3+ - x 3-
Forma Matricial:
Función objetivo
Optimizar Z = C1X1+ C2X2+………+ CnXn
Sujeto a:
a11x1 + a12x2 + … + a1nxn = b1
a21x1 + a22x2 +… + a2nxn = b2
. . .
. . .
. . .
am1x1 + am2x2 + … + amnxn = bm
Algoritmo Simplex
O equivalente a:
C B X B C BYX R C BX B (III)
Z C B X B C BYX R (IV)
Restando (I – IV)
Z Z (C BY C R )X R (V)
𝑪𝐵 𝒀 = 𝑪𝐵 𝒀𝑚+1 ⋮ 𝒀𝑚+2 ⋮ … ⋮ 𝒀𝑛
= 𝑪𝐵 𝒀𝑚+1 ⋮ 𝑪𝐵 𝒀𝑚+2 ⋮ … ⋮𝑪𝐵 𝒀𝑛
C R Cm 1 Cm 2 Cn
Los términos CBY j son los productos escalares entre el vector CB y las
columnas de la matriz Y, y se le denomina Zj. Así, la ecuación V puede
transformarse a:
Z Z (C BY C R )X R (V)
Z Z ( Z j C j )X j (VI)
j
Z Z ( Z k Ck ) X k (VII)
Z Z ( Z k Ck ) X k (VII)
X B YX R X B (III)
X1 y1.m1 y i.m 2 y ik y i.m 1 X m 1
X1 X y y 2.m 2 y 2k y i.m 1 X m 2
X 2 2.m1
2
Xk
X m
X m y m.m1 y m.m 2 y mk y i.m 1 X n
Donde se ha identificado a la variable Xk futura para entrar a la base
Cuando se efectúa el producto YXR, solo se mantendrán los términos que multiplican a Xk,
debido a que las demás variables no básicas valen cero.
X1 X1 y1k X k
X X y X
2 2 2k k
Se generan a continuación las siguientes ecuaciones:
X m X m y mk X k
X 1 y1k X k 0
X y X 0
2 2k k
Garantizando que la solución básica sea factible, entonces:
X m ymk X k 0
Xs
Por lo tanto: X k min ; ysk 0
ysk
Porqué ysk debe ser mayor que cero?
La variable que sale de la base toma el valor de cero, entonces,
X s X s yik X k 0
Donde Xs es la variable a salir de la base así:
Xs
Xk ; yik 0
yik
Xs
; ysk 0
ysk
Este cálculo se realiza únicamente con los términos de la columna k, correspondiente a la
variable que va a entrar a la base.
Criterio de parada
Revisar la aplicación del método Simplex en forma matricial, sección 3.3 notas de clase de Vidal,
página 100
Aplicación del Método Simplex Matricial
Maximizar Z 5X 1 3X 2
Considere el modelo: Sujeto a :
3X 1 5X 2 15
5X 1 2X 2 10
X1, X 2 0
Maximizar Z 5X 1 3X 2 0S1 0S 2
Sujeto a :
Forma estándar
3X 1 5X 2 S1 15
5X 1 2X 2 S 2 10
X 1 , X 2 , S1 , S 2 0
Aplicación del Método Simplex Matricial
Maximizar Z 5X 1 3X 2 0S1 0S 2
Sujeto a :
3X 1 5X 2 S1 15
5X 1 2X 2 S 2 10
X 1 , X 2 , S1 , S 2 0
Solución inicial factible: X1=0, X2=0, S1=15, S2=10:
C B 00 C R 53
10 35
B R
01 52
15 S1 X1
b XB XR
10 S2 X2
Maximizar Z 5X 1 3X 2 0S1 0S 2
1 Sujeto a :
1 1 0 15 15 X B Es la solucion
X B B b 3X 1 5X 2 S1 15
0 1 10 10 factible inicial 5X 1 2X 2 S 2 10
X 1 , X 2 , S1 , S 2 0
15
Z C BX B 0 0 0* 15 0* 10 0
10
Primer Cambio de Base: Criterio de entrada: (Zj −Cj) sea el “más negativo”.
Z1 C BY 1 0 0 3 5 0
T
1 1 03 5 3 5
Y B R
Z 2 C BY 2 0 0 5 2 0
T
0 15 2 5 2
Z1 C1 0 5 5
Entra X1 Z 2 C2 0 3 3
Maximizar Z 5X 1 3X 2 0S1 0S 2
Sujeto a :
Criterio de Salida 3X 1 5X 2 S1 15
5X 1 2X 2 S 2 10
S1 15 3 5 X 1 X 1 , X 2 , S1 , S 2 0
XB
Xs S 2 10 5 2 X 2
X k min ; ysk 0
15 10
ysk min , min5, 2 2
3 5
Sale de la base S2
Segundo Cambio de Base: Las nuevas condiciones son
13 05
C B 05 C R 03 B R
0 5 12
15 S1 S2
b XB XR
10 X1 X2
Maximizar Z 5X 1 3X 2 0S1 0S 2
Sujeto a :
3X 1 5X 2 S1 15
5X 1 2X 2 S 2 10
X 1 , X 2 , S1 , S 2 0
1
1 - 3
1 1 3 15 5 15 9
X B B b
0 5 10 0 1 10 2
5 1 - 3 0 5 3 19
5 5 5
Y B 1R
9
Z C B X B 0 5 0* 9 5* 2 10 0 1 12 1 2
5 5 5
2
T
Z1 C BY 1 0 5 3 1 1
5 5
T
Z 2 C BY 2 0 5 19 2 2
5 5
Entra X2
Z1 C1 1 0 1
Z 2 C2 2 3 1
Maximizar Z 5X 1 3X 2 0S1 0S 2
Sujeto a :
9 5 5 S2
3 19
Criterio de Salida S1 3X 1 5X 2 S1 15
XB 5X 1 2X 2 S 2 10
X1 2 1 2 X2 X 1 , X 2 , S1 , S 2 0
5 5
45 45
min , 5
19 19
Sale de la base S1
53 01
C B 35 C R 00 B R
2 5 10
15 X2 S2
b XB XR
10 X1 S1
Maximizar Z 5X 1 3X 2 0S1 0S 2
1 5 - 3 15 45 Sujeto a :
5 3 15 19 19 19
X B B 1b 3X 1 5X 2 S1 15
2 5 10 - 2 5 10 20 5X 1 2X 2 S 2 10
19 19 19 X 1 , X 2 , S1 , S 2 0
Z C B X B 235 12.37
19
-3 0 1 3 5
5
19 19 9 19
Y B 1R
-2 5 1 0 5 -2
19 19 19 19
T
Z1 C BY 1 3 5 3 5 16
19 19 19
T
Z 2 C BY 2 3 5 5 -2 5
19 19 19
Z1 C1 16 0 16
19 19 Se cumple el criterio
de parada
Z 2 C2 5 0 5
19 19
Cj → 5 3 0 0
Variables Cociente
CB XB X1 X2 S1 S2
Básicas
S1 0 15 3 5 1 0 5
S a l e ←S2 0 10 5 2 0 1 2
zj 0 0 0 0 0
z j - cj -5 -3 0 0
Entra
X1 5 2 1 2/5 0 1/5 5
zj 10 5 2 0 1
z j - cj 0 -1 0 1
Entra
X1 5 1 1/19 1 0 - 2/19 5/19
zj 5 3 5/19 16/19
Z máximo 12 7/19
z j - cj 0 0 5/19 16/19
Maximizar Z 2 X 1 3 X 2
Sujeto a : X1 2 X 2 4
USO DE VARIABLES ARTIFICIALES
X1 X 2 3
X1 , X 2 0
Maximizar Z 2 X 1 3 X 2
Sujeto a : X 1 2 X 2 S1 4
MODELO EN FORMA ESTÁNDAR
X1 X 2 3
X 1 , X 2 , S1 0
Maximizar Z 2 X 1 3 X 2
Sujeto a : X 1 2 X 2 S1 4
X1 X 2 A 3
X 1 , X 2 , S1 0 A variable artificial
Para resolver el problema original la variable artificial debe ser igual a cero
en la solución óptima, lo cual se logra la mayoría de las veces sacándola
de la base.
Esto se logra, penalizándola en la función objetivo con un valor muy grande
positivo (si se está minimizando) o muy pequeño negativo (si se está
maximizando).
El Método de la Gran M
Maximizar Z 2 X 1 3 X 2 MA
Sujeto a : X 1 2 X 2 S1 4
X1 X 2 A 3
X 1 , X 2 , S1 0 A variable artificial
Sujeto a:
R-2: X1 + X2 ≤ 200
Lógicas (X1 , X2 ) ≥ 0
Considere el siguiente problema:
𝑀𝑖𝑛𝑖𝑚𝑖𝑧𝑎𝑟 𝑍 = 2𝑋1 + 𝑥2
Sujeto a:
𝑥2 ≥ 10
2𝑥1 +5𝑥2 ≥ 60
𝑥1 + 𝑥2 ≥ 18
3𝑥1 + 𝑥2 ≥ 44
𝑥1 𝑦 𝑥2 ≥ 0