Está en la página 1de 36

II.4. El Mtodo Simplex.

En lo que sigue consideremos el siguiente


problema de programacin lineal en su forma
estndar.

Min c
1
x
1
+ c
2
x
2
+ ... + c
n
x
n
sa a
11
x
1
+ a
12
x
2
+ ... + a
1n
x
n
= b
1
a
21
x
1
+ a
22
x
2
+ ... + a
2n
x
n
= b
2
... ... ...
a
m1
x
1
+ a
m2
x
2
+ ... + a
mn
x
n
= b
m

x
i
> 0, i = 1, 2, ..., n y m s n
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

Matricialmente escrito como:

Min c
T
x

sa Ax = b

x > 0

No existe prdida de la generalidad al suponer que
un problema viene dado en la forma estndar. En
efecto, si tuvisemos el siguiente problema:
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

P) Max 9u + 2v + 5z

sa 4u + 3v + 6z s 50

u + 2v + 3z > 8
2u 4v + z = 5
u,v > 0
z e IR

Es posible reformular de manera equivalente el
problema anterior usando que:
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

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) , x factible

- f(x
*
) s - f(x) , x factible

x
*
es tambin mnimo de

- f(x)
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

2) Cada restriccin del tipo s puede ser llevada a
una ecuacin de igualdad usando una (nueva)
variable de holgura no negativa, con un coeficiente
nulo en la funcin objetivo.

3) De igual modo, cada restriccin del tipo > puede
ser llevada a una ecuacin de igualdad usando una
variable de exceso no negativa.

4) Siempre es posible escribir una variable libre de
signo como la diferencia de dos variables no
negativas.
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

En resumen el problema P) puede ser escrito de
manera equivalente como:

Min - 9x
1
- 2x
2
- 5x
3
+ 5x
4
+ 0x
5
+ 0x
6

sa: 4x
1
+ 3x
2
+ 6x
3
- 6x
4
+ x
5
=50
x
1
+ 2x
2
- 3x
3
+ 3x
4
- x
6
= 8
2x
1
- 4x
2
+ x
3
- x
4
= 5

x
i
>

0, i=1,2,3,4,5,6.


II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

Con u = x
1

v = x
2

z = x
3
- x
4

s
1
= x
5 (HOLGURA)

s
2
= x
6 (EXCESO)

La bsqueda de la solucin ptima se restringe a
encontrar un vrtice ptimo y cada vrtice del
conjunto de las restricciones del problema, llamado
regin de puntos factibles, corresponde a una
solucin bsica factible del sistema Ax = b.
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

Esta solucin bsica factible, corresponde a su vez
a aquellas soluciones que resultan de resolver el
sistema para exactamente m variables, fijando las
restantes n-m en cero, llamadas respectivamente
variables bsicas y no-bsicas, que adems deben
satisfacer condiciones de no-negatividad.
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

Teorema Fundamental de la Programacin Lineal:
Si un problema tiene solucin ptima, tiene una
solucin bsica factible ptima.

Dada una matriz B de m x m invertible, esta induce
una particin de las variables y parmetros del
modelo como lo muestra la siguiente diapositiva.
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.


B D
A =
m
n
m
n-m
B : es llamada una matriz de base
m n
m
D
B
m n
m
D
B
n
2
1
c
c
c
x
x
x
x
x
x

(
(
(
(

=
(
(
(
(

=
(
(
(
(

=
x
B
:variables bsicas.
x
D
:variables no bsicas.
c
B
:costos bsicos.
c
D
:costos no bsicos.
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

Criterio de Optimalidad:
G
e
s
t
i

n

d
e

I
n
v
e
s
t
i
g
a
c
i

n

d
e

O
p
e
r
a
c
i
o
n
e
s

D B
1
T
D
T
D
1
T
B
D
T
D B
1
1 T
B
D
D
D B
T
B
T
x x D B c c b B c
x c x D B b B c
x c x c x c

+ =
+ =
+ =
valor actual
de la
funcin obj.
vector de
costos
reducidos.
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

La ecuacin que define cada uno de los costos
reducidos es:

Donde j es el ndice de variable no-bsica y A
j
la
respectiva columna en A de esa variable.
La actual solucin bsica factible es ptima ssi
r
j
> j, existe una variable no bsica x
p
con costo
reducido negativo, que entra a la nueva base.
j
1 T
B j j
A B c c r

=
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

Para decidir quin deja la base, es necesario
calcular el mayor valor que puede tomar la variable
entrante que garantiza la factibilidad de la nueva
solucin bsica, con:



y se debe calcular:

(
(
(
(

=
(
(
(
(

=

p m
p 2
p 1
j
1
0 m
0 2
0 1
1
y
y
y
A B
x
x
y
b B
base la deja x 0 y /
y
y
Min
y
y
k ip
ip
0 i
kp
0 k

)
`

> =
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

Ejemplo.
Resolver el siguiente problema de P.L.

Max 40x + 60y
sa: 2x + y s 70
x + y s 40
x + 3y s 90
x,y > 0
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

Se deben agregar 3 variables de holgura ( x
1
, x
2
,
x
3
var.bsicas), y llevar a forma estndar (x
4
= x y
x
5
= y).
Min -40x
4
60x
5
sa: x
1
+ 2x
4
+ x
5
= 70
x
2
+ x
4
+ x
5
= 40
x
3
+ x
4
+ 3x
5
= 90
x
i
> 0, i = 1, 2, 3, 4, 5
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

Tabla inicial:
x
1
x
2
x
3
x
4
x
5
1 0 0 2 1 70
0 1 0 1 1 40
0 0 1 1 3 90
0 0 0 -40 -60 0
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

Usamos como variable entrante a la base x
5
(pues
r
5
<0).




Se calcula Min { 70/1, 40/1, 90/3 } = 30, por lo tanto
sale x
3
.
x
1
x
2
x
3
x
4
x
5
1 0 0 2 1 70
0 1 0 1 1 40
0 0 1 1 3 90
0 0 0 -40 -60 0
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

Actualizando, queda la siguiente tabla (no ptima),
donde la variable entrante a la base es x
4
(pues
r
4
<0).




Se calcula Min { 40/(5/3), 10/(2/3), 30/(1/3) } = 15,
por lo tanto x
2
deja la base actual.
x
1
x
2
x
3
x
4
x
5
1 0 -1/3 5/3 0 40
0 1 -1/3 2/3 0 10
0 0 1/3 1/3 1 30
0 0 20 -20 0 1800
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

Actualizando, queda la siguiente tabla final:




Como todos los costos reducidos son mayores o
iguales que cero nos encontramos en la solucin
ptima.
x
1
x
2
x
3
x
4
x
5
1 -5/2 0 0 15
0 -1/3 -1/2 1 0 15
0 1/3 0 1 25
0 20 10 0 0 2100
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.





z* = - 40 x 15 - 60 x 25 = - 2100

En la formulacin inicial, tenemos como solucin
ptima x
*
=15, y
*
=25, con valor ptimo 2.100.
(

=
(

=
(
(
(

=
(
(
(

=
0
0
x
x
x
25
15
15
x
x
x
x
3
2
D
5
4
1
B
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

Resumen del Mtodo Simplex:

Paso 0 : Escribir el problema de programacin
lineal en su forma estndar.
Paso 1 : Escoger una solucin bsica factible
inicial.
Paso 2 : Escoger una variable no - bsica con
costo reducido negativo que determina la variable
entrante y seguir al paso tres. Sin embargo, si todos
los costos reducidos son mayores que cero , parar,
ya que la actual solucin es la ptima.
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

Paso 3 : Calcular el criterio de factibilidad que
determina que variable deja la base. Si todos los
cuocientes son negativos: problema no - acotado,
parar.
Paso 4 :Actualizar la tabla de modo de despejar el
valor de las nuevas variables bsicas, los costos
reducidos y el valor de la funcin objetivo. Volver al
Paso 2.
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

No siempre es fcil obtener una solucin bsica
factible inicial, en las variables originales del
modelo. Para conseguir esto existen varios
procedimientos como son:

Mtodo Simplex de dos fases.
Mtodo de la M grande.
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

Mtodo Simplex de dos Fases.

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
nuevo problema que considera como funcin
objetivo la suma de las variables auxiliares. Si el
valor ptimo es cero ir a la Fase 2. En caso
contrario, no existe solucin factible.
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

Mtodo Simplex de dos Fases.

Fase 2: Resolver por Simplex el problema original a
partir de la solucin bsica factible hallada en la
Fase1.

Ejemplo: Max 2x
1
+ x
2
sa: 10x
1
+ 10x
2
s 9
10x
1
+ 5x
2
> 1
x
1
,x
2
> 0
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

Mtodo Simplex de dos Fases.

Se debe agregar una variable de holgura (x
3
) y una
variable de exceso (x
4
), y llevarlo a su forma
estndar.
Min -2x
1
- x
2
sa: 10x
1
+ 10x
2
+x
3
=

9
10x
1
+ 5x
2
- x
4
= 1
x
1
,x
2
, x
3
, x
4
> 0
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

Mtodo Simplex de dos Fases.

Aplicamos Simplex de dos Fases :
Fase 1: Min x
5
sa: 10x
1
+ 10x
2
+x
3
=

9
10x
1
+ 5x
2
- x
4
+ x
5
= 1
x
1
,x
2
, x
3
, x
4
, x
5
> 0
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

Mtodo Simplex de dos Fases.

Quedando la siguiente tabla:





donde:
x
1
x
2
x
3
x
4
x
5
10 10 1 0 0 9
10 5 0 -1 1 1
0 0 0 0 1 0
(
(
(

=
(
(
(

=
(

=
(

=
0
0
0
x
x
x
x
1
9
x
x
x
4
2
1
D
5
3
B
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

Mtodo Simplex de dos Fases.

Luego se hace cero el costo reducido de la variable
x
5
de la tabla anterior, y queda la siguiente tabla
inicial.
x
1
x
2
x
3
x
4
x
5
10 10 1 0 0 9
10 5 0 -1 1 1
-10 -5 0 1 0 -1
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

Mtodo Simplex de dos Fases.

La variable entrante a la base es x
1
( pues r
1
< 0).






Calculamos Min { 9/10, 1/10}= 1/10, por lo tanto
sale x
5
.

x
1
x
2
x
3
x
4
x
5
10 10 1 0 0 9
10 5 0 -1 1 1
-10 -5 0 1 0 -1
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

Mtodo Simplex de dos Fases.

Obtenindose la siguiente tabla final:
x
1
x
2
x
3
x
4
x
5
0 5 1 1 -1 8
1 0 -1/10 1/10 1/10
0 0 0 0 1 0
(
(
(

=
(
(
(

=
(

=
(

=
0
0
0
x
x
x
x
8
10 / 1
x
x
x
5
4
2
D
3
1
B
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

Mtodo Simplex de dos Fases.

Donde, al anterior, corresponde a la solucin
ptima del problema en la Fase 1, con valor ptimo
0. De aqu entonces tomamos x
1
y x
3
como
variables bsicas.

Fase 2:
x
1
x
2
x
3
x
4
0 5 1 1 8
1 0 -1/10 1/10
-2 -1 0 0 0
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

Mtodo Simplex de dos Fases.

En la tabla hacemos 0 los costos reducidos de
variables bsicas




Luego la variable entrante a la base es x
4
(pues
r
4
<0). Y calculando Min { 8/1, (-1/10)/(1/10) } = 8, se
tiene que sale x
3
.
x
1
x
2
x
3
x
4
0 5 1 1 8
1 0 -1/10 1/10
0 0 0 -1/5 1/5
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

Mtodo Simplex de dos Fases.

Quedando:


donde la solucin ptima del problema resulta ser:
x
1
x
2
x
3
x
4
0 5 1 1 8
1 1 0 1/10 9/10
0 1 1/5 0 9/5
(

=
(

=
(

=
(

=
0
0
x
x
x
8
10 / 9
x
x
x
3
2
D
4
1
B
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

Mtodo Simplex de dos Fases.

Algunos casos especiales

1) Problema Infactible. Esta situacin se detecta
cuando el valor ptimo del problema de la Fase 1
da mayor que cero.
2) Mltiples soluciones ptimas. Esta situacin
se detecta cuando existen costos reducidos iguales
a cero en una o ms de las variables bsicas
ptimas.
II. Modelos de Programacin Matemtica
Programacin Lineal
II.4. El Mtodo Simplex.

Mtodo Simplex de dos Fases.

3) Problema no acotado. Esta situacin se detecta
cuando al realizar el clculo de la variable que deja
la base, todos los elementos y
kj
de la columna j en
la tabla, son negativos para j el ndice de una
variable no bsica con costo reducido negativo.
II. Modelos de Programacin Matemtica
Programacin Lineal