Está en la página 1de 20

ÁLGEBRA LINEAL

Programación lineal:
Método Simplex
Método simplex

• El Método Simplex es un método analítico de solución de problemas


de programación lineal, puede resolver modelos más complejos que los
resueltos mediante el método gráfico sin restricción en el número de
variables.
• El Método Simplex es un método iterativo que permite ir mejorando la
solución en cada paso.
• Este popular método fue creado en el año 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.
Método simplex

• Posteriormente veremos el método de doble fase.


• Utilizaremos el Método Simplex por ahora para resolver el caso de maximizar
con todas las restricciones menor o igual.
• En el proceso consideraremos lo que son columnas básicas, que son
columnas que empieza en 0 solo tienen una componente que es 1 y todas las
demás componentes valen 0 (solo se consideran para las variables).
• En el primer ejemplo desarrollaremos todo el proceso del Método Simplex.
Ejemplo 1
Resolver:
𝑀á𝑥 𝑧 = 2𝑎 + 3𝑏 − 𝑐
s.a:
2𝑎 − 𝑏 + 𝑐 ≤ 15
3𝑎 + 𝑏 + 𝑐 ≤ 24
2𝑏 + 𝑐 ≤ 16
𝑎, 𝑏, 𝑐 ≥ 0
Solución:
La función objetivo se volverá en una ecuación lineal y las desigualdades las
convertiremos a igualdades añadiendo variables de holgura a cada restricción
(𝑆𝑖 ≥ 0). Por lo tanto tendremos tantas variables de holgura como restricciones.
Ejemplo 1
Obtenemos el sistema de ecuaciones lineales:
𝑧 − 2𝑎 − 3𝑏 + 𝑐 = 0
2𝑎 − 𝑏 + 𝑐 + 𝑆1 = 15
3𝑎 + 𝑏 + 𝑐 + 𝑆2 = 24
2𝑏 + 𝑐 + 𝑆3 = 16
Tomando los coeficientes tenemos las tabla:
z a b c 𝑆1 𝑆2 𝑆3
1 -2 -3 1 0 0 0 0
0 2 -1 1 1 0 0 15
0 3 1 1 0 1 0 24
0 0 2 1 0 0 1 16
Ejemplo 1
En el proceso del simplex no cambia la columna de z por lo cual la tabla se reduce
a:
a b c 𝑆1 𝑆2 𝑆3
-2 -3 1 0 0 0 0
2 -1 1 1 0 0 15
3 1 1 0 1 0 24
0 2 1 0 0 1 16

En forma práctica se cambia de signo a los coeficientes de la función objetivo, los


coeficientes de las restricciones se mantienen igual y las variables de holgura
forman las columnas básicas (tantas como restricciones).
Ejemplo 1
En la primera fila se elige el más negativo sin considerar el último elemento, en
este caso sería el -3.

-2 -3 1 0 0 0 0
2 -1 1 1 0 0 15
3 1 1 0 1 0 24
0 2 1 0 0 1 16

En la columna del más negativo se elige entre los positivos el pivot (1 y 2)


teniendo en cuenta el criterio del cociente:
24 16
𝑀í𝑛 , =8, por lo tanto el pivot es el 2
1 2
Si no existieran positivos el problema no tiene solución.
Ejemplo 1

Luego, la columna del pivot se convierte en columna básica utilizando las


operaciones fila elementales (el pivot se convierte en 1 y todos los demás
elementos de la columna en 0)
-2 0 5/2 0 0 3/2 24
2 0 3/2 1 0 1/2 23
3 0 1/2 0 1 -1/2 16
0 1 1/2 0 0 1/2 8

Se repite el proceso:
Ejemplo 1

-2 0 5/2 0 0 3/2 24
2 0 3/2 1 0 1/2 23
3 0 1/2 0 1 -1/2 16
0 1 1/2 0 0 1/2 8

23 16 16
𝑀í𝑛 , = , por lo tanto el pivot es el 3
2 3 3

Convertimos a columna básica


Ejemplo 1
0 0 17/6 0 2/3 7/6 104/3
0 0 7/6 1 -2/3 5/6 37/3
1 0 1/6 0 1/3 -1/6 16/3
0 1 1/2 0 0 1/2 8
Observemos que ya no hay negativos en la primera fila excepto el último
elemento, cuando ello sucede el método simplex culminó.
Ahora daremos la solución, para ello consideramos:
a) El valor óptimo siempre se encuentra en la parte superior derecha.
b) Si una variable corresponde a una columna no básica su valor es cero.
c) Si una variable corresponde a una columna básica, su valor es el último
elemento de la fila correspondiente al único 1 de la columna básica.
Ejemplo 1

Entonces la solución es:


z=104/3
a= 16/3 (variable básica)
b=8 (variable básica)
c=0 (variable no básica)
También tenemos los valores de las variables de holgura:
𝑆1 =37/3 (variable básica)
𝑆2 =0 (variable no básica)
𝑆3 =0 (variable no básica)
Ejemplo 1

Para comprobar reemplazamos en el problema:


z=2(16/3)+3(8)−0=104/3

2(16/3)-8+0=8/3≤ 15 (le falta 𝑆1 =37/3 para ser igual)


3(16/3)+8+0≤ 24 (ya es igual por eso 𝑆2 =0)
2(8)+0≤ 16 (ya es igual por eso 𝑆3 =0)
Ejemplo 2
Resolver:
𝑀á𝑥 𝐻 = 2𝑥1 + 3𝑥2 + 𝑥3
s.a:
𝑥1 + 2𝑥2 + 𝑥3 ≤ 24
3𝑥1 + 𝑥2 − 𝑥3 ≤ 15
𝑥1 , 𝑥2 , 𝑥3 ≥ 0
Solución:
El sistema de ecuaciones obtenido es:
𝐻 − 2𝑥1 − 3𝑥2 − 𝑥3 = 0
𝑥1 + 2𝑥2 + 𝑥3 + 𝑆1 = 24
3𝑥1 + 𝑥2 − 𝑥3 + 𝑆2 = 15
Ejemplo 2
Entonces la tabla del simplex es:
−2 −3 −1 0 0 0
1 2 1 1 0 24
3 1 −1 0 1 15
El más negativo en la primera fila sin considerar el último elemento es -3, en
dicha columna los candidatos a ser pivot son 2 y 1, utilizamos el criterio del
cociente:
24 15
𝑀í𝑛 , =12, por lo tanto el pivot es el 2
2 1
Convertimos la columna del pivot en columna básica utilizando las operaciones
fila elementales:
-1/2 0 1/2 3/2 0 36
1/2 1 1/2 1/2 0 12
5/2 0 -3/2 -1/2 1 3
Ejemplo 2
El más negativo en la primera fila sin considerar el último elemento es -1/2, en
dicha columna los candidatos a ser pivot son 1/2 y 5/2, utilizamos el criterio del
cociente:
12 3
𝑀í𝑛 , =6/5 , por lo tanto el pivot es el 5/2
1/2 5/2
Convertimos la columna del pivot en columna básica utilizando las operaciones
fila elementales:
0 0 1/5 7/5 1/5 183/5
0 1 4/5 3/5 -1/5 57/5
1 0 -3/5 -1/5 2/5 6/5
Ya no existen negativos en la primera fila (excepto el último elemento) entonces
terminamos el proceso del Simplex, ahora indicaremos la solución:
Ejemplo 2
H=183/5
𝑥1 = 6/5 (variable básica)
𝑥2 =57/5 (variable básica)
𝑥3 =0 (variable no básica)
Los valores de las variables de holgura:
𝑆1 =0 (variable no básica)
𝑆2 =0 (variable no básica)
Nota:
• El método Simplex también se puede utilizar para el caso de minimizar donde
por lo menos un coeficiente de la función objetivo es negativo y todas las
restricciones son menor o igual. Para ello consideramos que 𝑚í𝑛 𝑧 es
equivalente a 𝑚á𝑥 − 𝑧 , por lo tanto los coeficientes de la función objetivo
cambiarían de signo y luego para pasar a la tabla también, por ello al pasar a la
tabla en el caso de minimizar se mantienen los signos de los coeficientes y
valor óptimo obtenido es de −𝑧 .
• En el ejemplo 3 veremos ello y realizaremos el proceso directo.
• En el caso que los coeficientes de la función objetivo sean todos positivos
(minimizar) y todas las restricciones menor o igual, tenemos la solución trivial
que todas las variables de decisión valen 0.
Ejemplo 3
Resolver:
𝑀í𝑛 𝐺 = 𝑝 − 2𝑞 − 𝑟
s.a:
𝑝 + 𝑞 − 2𝑟 ≤ 10
𝑝 − 𝑞 + 𝑟 ≤ 12
3𝑝 + 2𝑞 + 𝑟 ≤ 18
𝑝, 𝑞, 𝑟 ≥ 0
Solución:
Como la función objetivo tiene por lo menos un coeficiente negativo (en este
caso dos coeficientes negativos) entonces podemos aplicar el método Simplex, el
problema de mí𝑛 𝐺 = 𝑝 − 2𝑞 − 𝑟 es equivalente a máx − 𝐺 = −𝑝 + 2𝑞 + 𝑟;
por ello pasando a la tabla mantendrá sus signos originales.
Ejemplo 3
1 -2 -1 0 0 0 0
1 1 -2 1 0 0 10
1 -1 1 0 1 0 12
3 2 1 0 0 1 18
El más negativo en la primera fila sin considerar el último elemento es -2, en
dicha columna los candidatos hacer pivot son 1 y 2, utilizamos el criterio del
cociente:
10 18
𝑀í𝑛 , =9, por lo tanto el pivot es el 2
1 2
Convertimos la columna del pivot en columna básica utilizando las operaciones
fila elementales:
Ejemplo 3
4 0 0 0 0 1 18
-1/2 0 -5/2 1 0 -1/2 1
5/2 0 3/2 0 1 1/2 21
3/2 1 1/2 0 0 1/2 9
Ya no existen negativos en la primera fila (excepto el último elemento) entonces
terminamos el proceso del Simplex, ahora indicaremos la solución:
−𝐺 = 18 ⟹ 𝐺 = −18 (se resolvió máx − 𝐺)
p=0 (variable no básica)
q=9 (variable básica)
r=0 (variable no básica)
𝑆1 =1 (variable básica)
𝑆2 =21 (variable básica)
𝑆3 =0 (variable no básica)

También podría gustarte