50 0 293KB
Principios del Método Simplex El método simplex requiere el P.P.L en forma canónica y en forma estándar. Los pasos generales son: 1. Comienza con una solución básica inicial en forma canónica. 2. Mejorar la solución inicial si es factible encontrando otra solución factible con un mejor valor de la función objetivo (elimina las soluciones básicas posibles que tienen un peor valor de la función objetivo). 3. Continúa la búsqueda de otras soluciones posibles que mejoran la función objetivo. Cuando no es factible encontrar soluciones mejores la búsqueda termina. Ejemplo. Max Z = 5X1 + 2X2 + 3X3 - X4 + X5 Sujeto a: X1 + 2X2 + 2X3 + X4 3X1 + 4X2 + X3
=8
(1)
+ X5 = 7
(2)
X1 >= 0 , X2 >= 0 , X3 >=0 , X4 >= 0 , X5 >= 0 El P.P.L está en forma estándar y canónica X4 y X5 son variables básicas. Solución básica X1 = X2 = X3 = 0 , X4 = 8 , X5 = 7. Z = 5*(0) + 2*(0) + 3*(0) - 1*(8) + 1*(7) = -1 Mejorando la Solución Básica Factible. Dada la solución básica inicial como: X1 = X2 = X3 = 0, X4 = 8, X5 = 7 con Z = -1, el método simplex chequea si es factible encontrar una mejor solución con un valor mayor de Z. a) Primero se examina si la presente es óptima. b) Si no es. El simplex examina una: Solución básica factible Adyacente con un mayor valor de Z.
1
Definición. Una Solución básica factible Adyacente difiere de la solución básica factible actual en una variable básica. Obtención de una solución básica factible adyacente. 1. Definir una variable básica como no básica. 2. Definir una variable no básica en reemplazo de la básica saliente. Lo anterior debe mejorar Z. Observe que: 1. Variables básicas asumen valores positivos y las no básicas cero. 2. Una no básica se convierte en básica aumentando su valor de cero a una cantidad positiva. Además, para ver cuál no básica produce un mejor incremento en Z se aumentará cada no básica en una unidad. Consideremos que X1 aumenta de 0 1 en las ecuaciones: X1 + 2X2 + 2X3 + X4 = 8
(3)
3X1 + 4X2 + X3 + X5 = 7
(4)
X2 y X3 siguen en cero, luego las ecuaciones serán: X1 + X4 3X1
=8
(5)
+ X5 = 7
(6)
Si X1 aumenta en 1 X4 será 7, y X5 será 4 , luego la nueva solución será : X1 = 1, X2 = X3 = 0 , X4 = 7, X5 = 4. y Z = 5*(1) + 2*(0) + 3*(0) - 1*(7) + 1*(4) = 2 Luego el cambio en Z por unidad de aumento en X1 es: 2 - (-1) = 3. Esto se denomina el beneficio relativo de X1. 2
Como el beneficio de X1 es positivo la función objetivo puede ser mejorada aumentando X1 y la solución básica inicial no es óptima. Así se trata de aumentar X1 tanto como sea factible. Si X1 aumenta, X4 y X5 disminuyen de la ecuación: X1 + X4 = 8 Se ve que X1 no puede aumentar más de 8, y en 3X1 + X5 = 7 aumentar más de 7/3.
X1
no
puede
Luego el máximo incremento de X1 es el Min(8/1, 7/3) = 7/3. A veces una variable no básica tiene valores negativos o ceros. En esas restricciones la básica no disminuye o será no negativa con el aumento de la no básica y así las variables básicas no limitan el aumento de la no básica. Una unidad de aumento en X1 aumenta en tres unidades el valor de Z. Como X1 puede ser aumentado a 7/3 el aumento en la función objetivo será 3*(7/3) = 7. También si X1 aumenta a 7/3 la variable básica X5 se hace cero. La nueva solución será: X1 = 7/3 , X2 = 0 , X3 = 0 , X4 = 17/3 , X5 = 0 , Z = 6. El nuevo sistema canónico corresponde a una solución mejorada y la operación pivote es: X1 + 2X2 + 2X3 + X4 3X1 + 4X2 + X3
=8
(7)
+ X5 = 7
(8)
(Sistema inicial)
Xi >= 0, i = 1...5 1. X3 y X4 deben quedar canónicas. 2. Dividir (8) por 3. 3. Multiplicar (8) por –1/3 y sumar a (7) para eliminar X1.
2 5 1 17 X2 + X3 + X4 - X5 = 3 3 3 3 X1 +
4 1 X2 + X3 3 3
+
1 7 X5 = 3 3 3
El método chequea si la solución es óptima calculando los beneficios relativos de todas las no básicas. Si alguna de ellas es positiva se encuentra una nueva solución básica con Z mejorado. Se repite el proceso hasta que todos los beneficios relativos no básicos sean negativos o cero. Y esta será la solución al P.P. L.
Condición de Optimalidad . En un problema de maximización una solución máxima factible es óptima si los beneficios relativos de todas sus variables no básicas son todas negativas o cero. Beneficio relativo Es el incremento en la función objetivo por unidad de incremento de la variable no básica.
Resumen del Método Simplex Paso 1.
Comienza con una solución básica inicial en forma canónica.
Paso 2.
Chequear si la solución básica factible es óptima. Se calculan los beneficios relativos de las variables no básicas. Si los coeficientes son negativos o cero, la solución es óptima. De otro modo ir al paso 3.
Paso 3.
Seleccione una variable no básica para ser básica. Una regla general es seleccionar aquella con mayor beneficio relativo.
Paso 4.
Determinar la variable básica que será reemplazada. Para ello se examina cada restricción para determinar cuánto se puede aumentar la variable no básica. Para las restricciones con coeficiente no negativos de la variable no básica el límite es la razón del valor de la constante del lado derecho de la ecuación por el coeficiente de la variable no básica. Se elige la restricción con menor valor de esta razón. Para las otras restricciones el límite se define . Esta regla se conoce como regla de la razón mínima.
Paso 5.
Encuentre el nuevo sistema canónico y la solución básica factible mediante la operación pivote. Volver al paso 2.
4
Método Simplex en Forma de Tableau. Para el ejemplo anterior: Max Z = 5X1 + 2X2 + 3X3 - X4 + X5; Sistema Estándar Canónico Sujeto a: X1 + 2X2 + 2X3 + X4 3X1 + 4X2 + X3
=8
+ X5 = 7
Xi >= 0 , i=1...5 CJ
5
2
3
-1
1
CB
XB
X1
X2
X3
X4
X5
bJ
-1
X4
1
2
2
1
0
8
1
X5
3
4
1
0
1
7
XB ;
se refiere a las variables básicas. (x4,x5)
bJ ;
se refiere a los valores de las variables básicas. (8,7)
CJ ;
Coeficiente de XJ en la función objetivo. (5,2,3,-1,1)
CB ;
Coeficiente de XB en la función objetivo. (-1,1)
de la tabla : X4 = 8, X5 = 7 y X1 = X2 = X3 = 0
8 Z C B * b 1 1 * 8 7 1 7
Z = CX
; donde X = (XB,XNB)
Entonces : Z = CB XB El beneficio relativo es :
= CB b
C J C J C B * AJ 5
CJ
= lo que gana Z si entra XJ y toma el valor 1. La mejora en Z (Z) si XJ cambia de 0 a 1 .
C B * AJ = es el número de unidades que debe decrementarse la variable básica al aumentar X J 1 , luego C B * AJ es el decremento producido en Z. en el ejemplo:
1 C1 C1 C B * A1 5 1 1 * 3 3 2 C 2 C 2 C B * A2 2 1 1 * 0 4 2 C 3 C 3 C B * A3 3 1 1 * 1 C J = 0, para las variables básicas. Agregando los beneficios relativos el "Tableau" será: CJ
5
2
3
-1
1
XB
X1
X2
X3
X4
X5
bJ
bJ /a J3
-1
X4
1
2
2
1
0
8
8/2=4
1
X5
3
4
1
0
1
7
7/1=7
C
3
0
4
0
0
Z=-1
CB
Variable N.B X3 Provoca el mejor impacto ( Máx ) Por lo tanto, entra X3 y sale X4. La variable no básica X3 es aumentada a un máximo de 4. En ese mismo momento sucede que X4 se hace cero y se transforma en no básica. X3 y X5 serán básicas. 6
El nuevo sistema canónico se obtiene: 1. Dividiendo la fila del pivote en 2, para hacer el coeficiente de X3 unitario. 2. Multiplicando la fila del pivote (-1/2) y sumando a la segunda fila para eliminar X3. El nuevo "Tableau" será: CJ
5
2
3
-1
1
CB
XB
X1
X2
X3
X4
X5
bJ
bJ /a J1
3
X3
½
1
1
1/2
0
4
8
1
X5
5/2
3
0
-1/2
1
3
6/5
C
1
-4
0
-2
0
Z=15
Como C1 1 0 esta tabla no es óptima. Entra X1 y sale X5. Una nueva operación pivote genera el siguiente "Tableau" . CJ
5
2
3
-1
1
CB
XB
X1
X2
X3
X4
X5
bJ
3
X3
0
2/5
1
3/5
-1/5
17/5
5
X1
1
6/5
0
-1/5
2/5
6/5
C
0
-26/5
0
-9/5
-2/5
Z=81/5
Todos los C 0 no es factible mejorar la solución básica. Estamos frente a la Solución Óptima .
7
Resumen de pasos. 1. Expresar el problema en forma estándar. 2. Comenzar con una solución factible básica inicial en forma canónica y plantear el Tableau inicial. 3. Usar producto interno para encontrar los beneficios relativos ( C J ). 4. Si todos los C J son no positivos la solución actual es óptima. De otro modo seleccionar la no básica para que entre a la base. 5. Aplicar regla de la razon mínima para determinar la variable que deja la base. 6. Ejecutar operación pivote para obtener la nueva tabla. 7. Calcular beneficios relativos. Retorne al paso 4.
Ejemplo. Resolver por el método simplex el siguiente problema: Max Z = 3X1 + 2X2 -X1 + 2X2 = 0, X2 >= 0, X3 >= 0, X4 >= 4, X5 >= 0 Se tiene una solución en forma canónica con variables X3, X4, X5 como variables básicas.
8
La tabla inicial será : CJ
3
2
0
0
0 X5
CB
XB
X1
X2
X3
X4
0
X3
-1
2
1
0
0
4
0
X4
3
2
0
1
0
14
0
X5
1
-1
0
0
1
3
3
2
0
0
0
Z=0
C
bJ
La variable no básica X1 entra a la base. Las razones son ( , 14/3 , 3/1). X1 reemplaza a X5 en la base. Aplicando la operación pivote resulta : CJ
3
2
0
0
0
CB
Base
X1
X2
X3
X4
X5
bJ
0
X3
0
1
1
0
1
7
7
0
X4
0
5
0
1
-3
5
1
3
X1
1
-1
0
0
1
3
0
5
0
0
-3
Z=9
bJ / a J2
C
9
X2
1 2
3
4 D
-X1+2X2=4
3
3X1+2X2=14
E 2 3X1+2X2=Z=9
X1-X2=3
3
1
C 3X1+2X2=Z=3
2 A1
1
2
3
B
4
X1
5
Figura 7.
1) -X1 + 2X2 = 4 X1
X2
0
2
3
3.5
X1
X2
4
1
2
4
X1
X2
3
0
4
1
2) 3X1 + 2X2 = 14
3) X1 - X2 = 3
10
4) 3X1 + 2X2 = Z = 3 X1
X2
1
0
0
1.5
X1
X2
3
0
0
4.5
5) 3X1 + 2X2 = Z = 9
La solución de la primera tabla corresponde al punto de esquina 1. El C indica que X1 o X2 pueden ser básicas y aumenta Z. Si decidimos aumentar X1, no se puede aumentar mas de 3 unidades que corresponde al punto B esto es la regla de la razón mínima del método simplex. El "Tableau 2" es el punto B. X2 entra a la base y reemplaza a X4. El último Tableau será: CJ
3
2
0
0
0
Base
X1
X2
X3
X4
X5
bJ
0
X3
0
0
1
-1/5
8/5
6
2
X2
0
1
0
1/5
-3/5
1
3
X1
1
0
0
1/5
2/5
4
C
0
0
0
-1
0
CB
El Tableau 3 corresponde al punto de esquina C.
Z=14
El "Tableau" es óptimo
X1 = 4; X2 = 1; X3 = 6; X4 = 0; X5 = 0 y Z = 14. 11
Optimo Alternativo. La variable no básica X5 tiene beneficio relativo cero. Cualquier aumento en X5 no producirá cambio en Z, pero también será óptimo. Si se ingresa X5 el nuevo "Tableau" será:
CJ
3
2
0
0
0
CB
Base
X1
X2
X3
X4
X5
bJ
0
X5
0
0
5/8
-1/8
1
15/4
2
X2
0
1
3/8
1/8
0
13/4
3
X1
1
0
-1/4
1/4
0
5/2 Z=14
C
0
0
0
-1
0
El óptimo alternativo será: X1 = 5/2; X2 = 13/4; X3 = 0; X4 = 0 y X5 = 15/4 y es el punto de esquina D. (fig. 7)
Optimo Único. Todas las variables no básicas tienen valor negativo para sus beneficios relativos.
12
Problemas de Minimización. En los problemas de minimización las variables no básicas con C negativos se toman en cuenta. En el óptimo todos los C son mayores o iguales a cero. El paso 4 se cambia por : Si todos los C J 0 la solución actual es óptima.
Paso 4'.
De otro modo elegir la no básica con el menor valor de C J .
Un método alternativo para los problemas de minimización: Ejemplo. Min Z = 40X1 + 36X2 X1
= 0, X2 >= 0 Cambia a : Max Z' = -40X1 - 36X2 X1
= 0, X2 >= 0 Min Z = - Max Z'
Problemas Computacionales. Empate en la selección de las variables no básicas Si existe C J que son iguales para las variables no básicas seleccione cualquiera de ellos para ingresar a la base.
13
Empate en la regla de razón mínima y degeneración Si dos o más restricciones generan la misma razón implica que dos variables básicas podrían dejar la base y ser hecha cero. Esto conduce a complicaciones que reducen la eficiencia del Método Simplex. Considere el siguiente "Tableau ": CJ
0
0
0
2
0
3/2
CB
Base
X1
X2
X3
X4
X5
X6
bJ
bJ/aJ4
0
X1
1
0
0
1
-1
0
2
2
0
X2
0
1
0
2
0
1
4
2
0
X3
0
0
1
1
1
1
3
3
C
0
0
0
2
0
3/2
Z=0
X4 entra y elegimos arbitrariamente que X1 sale de la base. La nueva solución será :
-
CJ
0
0
0
2
0
3/2
CB
Base
X1
X2
X3
X4
X5
X6
bJ
bJ/aJ5
2
X4
1
0
0
1
-1
0
2
0
X2
-2
1
0
0
2
1
0
0
0
X3
1
0
1
0
2
1
1
1
C
-2
0
0
0
2
3/2
Z=4
La solución es: X1 = 0; X2 = 0; X3 = 1; X4 = 2; X5 = 0; X6 =0 y Z = 14. 14
La variable básica X2 ha tomado valor cero, y se genera una solución factible básica degenerada. Si todas las variables básicas son positivas, se dirá que es solución factible básica no degenerada. El empate es la principal causa de esta situación. -
X5 debe entrar a la base.
-
X2 sale de la base, pero Z no será aumentado (X5 toma valor cero).
El próximo "Tableau" será : CJ
0
0
0
2
0
3/2
CB
Base
X1
X2
X3
X4
X5
X6
bJ
2
X4
0
1/2
0
1
0
1/2
2
0
X5
-1
1/2
0
0
1
1/2
0
0
X3
1
-1
1
0
0
0
1
C
0
-1
0
0
0
1/2
Z=4
-
Z no cambió pero la solución puede aún ser mejorada. Surge la duda si es factible que Z sea no aumentada y el presente "Tableau" será óptimo. Tal supuesto es erróneo.
-
En este problema el óptimo será Z = 5.
15
Soluciones no acotadas. Otra complicación puede ocurrir cuando la regla de la razón mínima no permite determinar que variable sale de la base. Esto ocurre si todos los coeficientes de la variable que entra son negativos. Esto significa que no se pueden formar razones finitas. Ejemplo : Max Z = 2X1 + 3X2 S.a. X1 -3X1
- X2 + X3 + X2 + X4 Xi >= 0, con i = 1...4
=2 =4
CJ
2
3
0
0
CB
X6
X1
X2
X3
X4
bJ
0
X3
1
-1
1
0
2
0
X4
-3
1
0
1
4
C
2
3
0
0
Z=0
CJ
2
3
0
0
CB
X6
X1
X2
X3
X4
bJ
0
X3
-2
0
1
1
6
3
X2
-3
1
0
1
4
11
0
0
-3
Z=12
C
X1 entra, pero no se puede determinar cuál sale.
16