Documente Academic
Documente Profesional
Documente Cultură
UNIDAD I
METODO SIMPLEX
ASESOR: IIA BRENDA YERANIA ORTEGA FLORES
MATERIA: INVESTIGACION DE IPERACIONES
ALUMNO: ISRAEL RIVAS ALVAREZ
1
Ing. Israel Rivas Alvarez
El algoritmo Simplex.
Es un procedimiento iterativo que permite ir mejorando la solucin a cada paso. El
proceso concluye cuando no es posible seguir mejorando ms dicha solucin. Partiendo
del valor de la funcin objetivo en un vrtice cualquiera, el mtodo consiste en buscar
sucesivamente otro vrtice que mejore al anterior. La bsqueda se hace siempre a
travs de los lados del polgono(o de las aristas del poliedro, si el nmero de variables
es mayor). Cmo el nmero de vrtices y de aristas) es finito, siempre se podr
encontrar la solucin.
El mtodo del simplex se basa en la siguiente propiedad: si la funcin objetivo, f, no
toma su valor mximo en el vrtice A, entonces hay una arista que parte de A, a lo largo
de la cual f aumenta.
El mtodo del simplex se utiliza, sobre todo, para resolver problemas de programacin
lineal en los que intervienen tres o ms variables.
El lgebra matricial y el proceso de eliminacin de Gauss-Jordan para resolver un
sistema de ecuaciones lineales constituyen la base del mtodo simplex.
El algoritmo Simplex inicia en el origen y se desplaza por los bordes del rea de
soluciones factibles evaluando cada esquina de esta, hasta encontrar la solucin
ptima.
Este algoritmo inicia situndose en el punto central del rea de soluciones factibles,
desde donde evala cada esquina de esta, hasta encontrar la solucin ptima.
2
Ing. Israel Rivas Alvarez
Mtodo de la Gran M
Mtodo de las 2 Fases
1
Obtener la
forma SIMPLEX ESTNDAR del
modelo de programacin lineal
2
Colocar la forma SIMPLEX
ESTNDAR del modelo en la
TABLA SIMPLEX
3
Aplicar el
ALGORITMO SIMPLEX
2. La TABLA SIMPLEX.
Rengln Cj
C1
Sn
Cn
Recursos
R1
.
S1
Coeficiente
Variables
Bsicas
Rn
Rengln Zj
Valor de Z
Rengln Cj - Zj
Nota: Este formato de la tabla SIMPLEX, puede variar de un libro a otro y de un software a otro; ya que
cada autor utiliza el formato que ms se le facilita.
3. Algoritmo SIMPLEX.
a) Calcular el rengln Zj, multiplicando los coeficientes de las variables bsicas por los
coeficientes de cada variable de las restricciones y sumando algebraicamente por
columna.
b) Calcular el rengln Cj-Zj, restando cada valor del rengln Cj al valor del rengln Zj
de su columna respectiva.
c) Determinar cual es la variable que entra a la solucin:
Maximizacin
Minimizacin
4
Ing. Israel Rivas Alvarez
d) Determinar cul es la variable que sale de la solucin; la cual ser la que tenga la
razn mnima con denominador estrictamente positivo (condicin de factibilidad).
e) Calcular los nuevos valores que tendr el rengln pivote (rengln nuevo),
dividiendo cada nmero del rengln entre el nmero pivote.
f) Calcular los nuevos valores para los renglones restantes, mediante la siguiente
frmula:
Nmeros
del rengln
nuevo
Nmeros
del rengln
antiguo
Nmeros del
rengln nuevo
obtenido en el
paso 5
g) Regresar al inciso a.
El algoritmo Simplex termina cuando:
Problemas de Maximizacin: En el rengln Cj - Zj todos los valores son ceros o
negativos.
Problemas de Minimizacin: En el rengln Cj - Zj todos los valores son ceros o
positivos.
5
Ing. Israel Rivas Alvarez
Se introduce una variable de holgura por cada una de las restricciones, para
convertirlas en igualdades, resultando el sistema de ecuaciones lineales:
2x + y + h = 18
2x + 3y + s = 42
3x +y + d = 24
2. Igualar la funcin objetivo a cero: - 3x - 2y + Z = 0
Mtodos alternativos.
Para solucionar modelos lineales que contengan restricciones del tipo = o , se
utilizan los mtodos descritos a continuacin.
Fase 1:
Fase 2:
Ejemplo:
7
Ing. Israel Rivas Alvarez
Dos productos se elaboran al pasar en forma sucesiva por tres mquinas, el tiempo por
mquina asignado a los dos productos est limitado a 600 horas por mes, el tiempo de
produccin y la ganancia por unidad de cada producto son:
PRODUCTO
MAQUINA 2
MAQUINA 3
GANANCIA
10
5
6
20
8
15
$ 2.00
$ 3.00
1
2
600
600
600
0
10x1 + 5x2
6x1 + 20x2
8x1 + 15x2
x1, x2
= 600
= 600
= 600
0
Var. Bas.
Coef.
X1
X2
S1
S2
S3
Recursos
S2
X2
X1
0
3
2
Zj
Cj - Zj
0
0
1
2
0
0
1
0
3
0
0.636
-0.073
0.136
0.053
-0.053
1
0
0
0
0
-1.55
0.091
-0.045
0.183
-0.183
54.55
10.91
54.55
141.82
Cules son los costos de oportunidad para los coeficientes de la funcin objetivo?
Caso 1
DEGENERACION
Caso 2
50
X1
0
0
1
50
0
40
X2
1
0
0
40
0
0
S1
8/25
-8/25
-5/25
70/25
-70/25
0
S2
0
1
0
0
0
0
S3
-3/25
3/25
5/25
130/25
-130/25
Recursos
20
0
25
2,050
SOLUCIONES MULTIPLES
Ocurre cuando en la solucin final ptima el valor para una o mas variables no
bsicas es igual a cero en el ltimo rengln de la tabla ( Cj - Zj ).
Solucin ptima mltiple ( problema de maximizacin )
Cj
Var. Bas. Coefic.FO
X2
50
S2
0
X1
30
Zj
Cj - Zj
Caso 3
30
X1
0
0
1
30
0
50
X2
1
0
0
50
0
0
S1
8/25
-8/25
-5/25
10
-1
SOLUCION NO ACOTADA
9
0
S2
0
1
0
0
0
0
S3
-3/25
3/25
5/25
0
0
Recursos
12
8
30
1,500
Se produce en alguna iteracin del algoritmo sin haber llegado a la solucin final
ptima, cuando la condicin de factibilidad para determinar la variable que sale no
se cumple.
Caso 4
20
X1
1
0
20
0
10
X2
0
1
0
10
0
S1
-1
0
-20
20
0
S2
0
1
0
0
-M
R1
1
0
20
-M-20
Recursos
2
5
40
SOLUCION NO FACTIBLE
50
40
-M
Var.Bas. Coefic.FO
X1
X2
S1
S2
S3
S4
R1
Recursos
X2
40
8/25
-3/25
12
S2
-8/25
3/25
X1
50
-5/25
5/25
30
R1
-M
-3/25
-2/25
-1
Zj
50
40
70+3M/25
130+2M/25
-M
1980-8M
Cj - Zj
-70-3M/25
-130-2M/25
-M
10
Ing. Israel Rivas Alvarez
Ejercicio:
Primera Fase:
Se reemplaza la funcin objetivo del programa lineal a solucionar por la minimizacin de
la suma de las variables artificiales encontradas en la normalizacin del modelo y se
resuelve. Si en la minimizacin Z = 0 entonces se puede proceder a la Segunda Fase, de
lo contrario el problema no es factible, por lo tanto, no tiene solucin.
Segunda Fase:
Se inicia con base en el tablero final de la Primera Fase, se retoma la funcin objetivo
del programa, haciendo todas las variables artificiales iguales a cero y eliminndolas
de las restricciones.
Ejemplo:
Min Z = 2X1 + X2 + 3X3
Sujeto a:
3X1 + X2 + 2X3
X1 - 2X2 + 3X3
2X1 + 3X2 - X3
X1 + X2 + 2X3
10
6
9
7
Min Z = A1 + A2
Sujeto a:
3X1 +X2 + 2X3 + S1
X1 -2X2+ 3X3 - S2 + A1
2X1+3X2- X3
+ S3
X1+ X2+ 2X3
+ A2
C.N.N (Condicin de No Negatividad)
=
=
=
=
10
6
9
7
12
Ing. Israel Rivas Alvarez
FASE 1
En la siguiente figura encontramos la tabla simplex clsica. En la primera fila los nombres de las variables
de decisin, y justo abajo de ellas, los coeficientes de estas variables en la funcin objetivo. Cmo en la
primera fase minimizamos la suma de las variables artificiales, por eso slo encontramos un valor de 1
abajo de A1 (variable artificial 1) y de A2 (variable artificial 2). En la segunda columna encontramos las
variables que estan en la base al inicio. Como es costumbre, para escogerlas preferimos si slo hay
variables de decisin y de holgura, escogemos la de holgura para estar en la base (aqui las llamamos S) y
si hay de decision, de holgura y artificiales, preferimos la artificial. Por eso, las variables que se escogen
para la base son: S1, A1, S3, A2.
A la izquierda de esta columna, como es usual, se coloca los
coeficientes en la funcin objetivo, de las variables que estan en la base.
Luego vienen los coeficientes de las restricciones, y debajo del ttulo RHS (Right Hand Side), o "lado
derecho" de la restriccin, colocamos las disponibilidades o requerimientos. En otros libros de texto a
esta columna tambien la llaman Bi, lo importante es que usted entienda que todos los diferentes formatos
de tablas, realmente son lo mismo, lo nico que cambia es el orden, la forma de llamar a las columnas,
etc.
Bueno, sin dar tantas vueltas: En la primera iteracin se calcula Z y C - Z, y por lo tanto la variable que
entra, como estamos minimizando, entra la ms negativa: X3 y entra la que mas restringe: A1. Eso hace
que la celda pivote este en el valor 3, que lo coloqu con verde en todas las figuras. Y se aplica
eliminacin gaussiana: Se divide toda esa fila por tres, y luego con la fila convertida, elimino por encima y
por debajo de la celda pivote multiplicando por el valor opuesto al que quiero eliminar la fila pivote y
sumandosela componente a componente a la fila que deseo eliminar. Bueno, en estos momentos del
partido, creo que usted ya debe saber bien como hacer la eliminacin gaussiana (Y si no, coloquelo en los
comentarios abajo, para ampliar la explicacin!) .
13
Ing. Israel Rivas Alvarez
El valor de la funcin objetivo, en cada itereacin la he colocado en azul claro, para que vaya viendo el
progreso: 13 -> 3 -> 0.
Al terminar en cero, el semaforo nos da luz verde para seguir con la siguiente fase.
FASE 2
En la FASE 2, fijese que cambiamos la fila de la funcin objetivo y dejamos la del programa original, pero
como en la fase 1 nos aseguramos de eliminar las variables artificiales, en la fase 2, nos podemos dar el
lujo y el gusto de eliminarlas. Tambin, como es lgico, las borramos de las restricciones. Ahora , sin
estorbos, sin constantes M, o variables artificiales que nos retracen el paso, por que vamos de prisa,
realizamos la iteracin,. y para el colmo de nuestra suerte, en slo una iteracin acabamos.
Encontramos el valor de Z. He escogido el mismo programa para resolverlo por la Gran M que por el
mtodo de las dos fases. Comprelo a ver cul le gusta ms... a mi me gustaba ms el mtodo de la
Gran M, pero ahora me esta gustando ms el mtodo de las Dos Fases... aunque la verdad, en la
prctica, en la vida real, nunca he resuelto a mano un programa lineal, si no que siempre he usado un
software... mi jefe no me paga ms, por ms iteraciones que calcul, si no por que le entregue una
respuesta rpida y exacta de lo que se necesita: Si. Lo s. A veces, la vida es triste :)
14
Ing. Israel Rivas Alvarez
15
Ing. Israel Rivas Alvarez