UNIVERSIDAD SAN PEDRO Ingeniería Mecánica y Eléctrica INVESTIGACION DE OPERACIONES
MÉTODO SIMPLEX PENAL O DE LA GRAN M Y EL METODO DE DOS FASES
Solución Básica Factible Factible Inicial y las Variables Variables Artificiales Recuerde que el algoritmo simplex requiere una solución factible básica inicial. En todos los problemas que se han resuelto hasta ahora se determinó la solución básica inicial a partir de las variables de holgura, como si fueran variables básicas. Pero muchos problemas no tienen una solución inicial en forma canónica. Si hay restricciones de igualdad, mayor o igual o segundos miembros no positivos (=, ≥, ≤0), el único problema adicional que se plantea es identificar la solución básica factible inicial . En este caso, no hay garantía de que exista una solución factible. Por tanto, se requiere un procedimiento sistemático y eficiente para generar dicha solución básica inicial y factible, si existe. Una de las ventajas del método simplex es que el propio método sirve para generar su propia solución básica factible inicial, siempre que exista alguna. Si esta no existe, el simplex nos indica que el problema no tiene solución. Cuando en un modelo tenemos restricciones de igualdad, no hay variable de holgura para esta restricción que nos permita obtener la solución factible inicial. Podríamos pensar en sustituir la restricción de igualdad por otras dos, una con ≤y otra con≥. Esta alternativa no es muy recomendable porque aumenta el número de restricciones del problema. Es preferible la técnica de la variable artificial, que consiste en añadir al lado izquierdo de la restricción una variable ficticia, que llamaremos variable artificial y y cuyo único cometido es ser la variable básica de esa restricción en la solución básica inicial. En el caso de restricciones del tipo ≥, la variable de holgura entra restando y si multiplicamos por (-1) la ecuación, nos encontraríamos con el segundo miembro negativo y por tanto con una solución inicial no factible. Por tanto, en este caso también añadimos una variable artificial . En definitiva, cuando tenemos problemas con restricciones de = o ≥, se añade una variable artificial por cada una de las restricciones de este tipo. Este nuevo problema se denomina problema ampliado. ampliado . A partir de las variables artificiales obtenemos una solución básica inicial, que no es factible para el problema original por que las variables artificiales no tienen significado en el mismo. Por tanto, lo primero que hay que hacer es encontrar una solución básica factible inicial para nuestro problema real, eliminando de la base todas las variables artificiales. A partir de esta nueva solución básica continuaremos buscando la solución óptima.
Método Penalización y Dos Fases
1
Docente: Mg. Ing. J. Paredes C.
UNIVERSIDAD SAN PEDRO Ingeniería Mecánica y Eléctrica INVESTIGACION DE OPERACIONES Como se demostró en los problemas de Reddy Mikks y de la Wyndor Glass Co, los programas lineales en los que todas las restricciones son ( ≤) con lados derechos no negativos ofrecen una cómoda solución factible básica de inicio con todas las holguras. Los modelos donde intervienen restricciones del tipo (=) o ( ≥) no poseen esta propiedad. El procedimiento para iniciar programas lineales “de mal comportamiento” con restricciones (=) y ( ≥) es permitir que variables artificiales desempeñen el trabajo de holguras en la primera iteración, para después, en alguna iteración posterior, desecharlas en forma legítima. Existen dos técnicas que nos permiten encontrar la solución básica factible inicial: - El método de la M - El método de las dos fases
El Método Simplex Penal o de Gran la M Como su nombre lo indica, consiste en penalizar la inclusión de las variables artificiales en la función objetivo con un coeficiente ‘M’ muy grande que para el caso de maximizar es ‘- M’ y para el caso de minimizar es ‘+ M’. La primera solución básica del simplex en tal caso, debe de incluir a todas las variables artificiales que fueron necesarias en el arreglo del modelo de programación lineal por resolver El método M comienza con la programación lineal en forma de ecuación. Una ecuación i que no tenga una holgura (o una variable que pueda hacer el papel de una holgura) se aumenta con una variable artificial A i, para formar una solución de inicio parecida a la solución básica con todas las holguras. Sin embargo, como las variables artificiales son ajenas al modelo de programación lineal, se usa un mecanismo de retroalimentación en el que el proceso de optimización trata en forma automática de hacer que esas variables nunca hubieran existido en primer lugar. El resultado deseado se obtiene penalizando las variables artificiales en la función objetivo. Dado M, un valor positivo suficientemente grande (Matemáticamente, M → ∞), el coeficiente objetivo de una variable artificial representa una penalización adecuada si: -M, en problemas de maximización Coeficiente objetivo de la variable artificial = M, en problemas de minimización Al usar esta penalización, el proceso de optimización forzara en forma automática a las variables artificiales para que sean cero (siempre que el problema tenga una solución factible).
Caso de Estudio No 1: Minimizar Z = 4X1 + X2 Sujeta a: 3X1 + X2 = 3 4X1 + 3X2≥ 6 X1 + 2X2≤ 4 X1, X2≥ 0 Si se usan X3 como excedente en la segunda restricción y X 4 como una holgura en la tercera restricción, la forma del problema en ecuación es Minimizar Z = 4X1 + X2 Sujeta a: 3X1 + X2 =3 4X1 + 3X2 – X3 =6 X1 + 2X2 + X4 =4 X1, X2, X3, X4≥ 0
Método Penalización y Dos Fases
2
Docente: Mg. Ing. J. Paredes C.
UNIVERSIDAD SAN PEDRO Ingeniería Mecánica y Eléctrica INVESTIGACION DE OPERACIONES La primera y segunda ecuaciones no tiene variables que puedan desempeñar el papel de holguras, pero la tercera si, por que tiene la holgura X 4. Así, se agregan las variables artificiales A 1 y A2 en las dos primeras ecuaciones y se penalizan en la función objetivo con MA 1 + MA2. La programación lineal que resulta es Minimizar Z = 4X1 + X2 + MA1 + MA2 Sujeta a: 3X1 + X2 + A1 =3 4X1 + 3X2 – X3 + A2 =6 X1 + 2X2 + + X4 =4 X1, X2, X3, X4, A1, A2≥ 0 Igualando Z = 0, tenemos: Z – 4X1 - X2 – MA1 – MA2 = 0 En el nuevo modelo se pueden usar ahora A 1, A2, X4 como solución básica de inicio, como se ve en la siguiente tabla (por comodidad se eliminó la columna Z, porque no cambia en todas las iteraciones) Básica Z A1 A2 X4
X1 -4 3 4 1
X2 -1 1 3 2
X3 0 0 -1 0
A1 -M 1 0 0
A2 -M 0 1 0
X4 0 0 0 1
Solución 0 3 6 4
Antes de proseguir con los cálculos del método simplex se necesita hacer que el renglón Z sea consistente con el resto de la tabla. En forma específica, en la tabla X1 = X2 = X3 = 0, lo cual produce la solución básica de inicio A1 = 3, A2 = 6, X4 = 4. Esta solución indica que el valor de Z debe ser M x 3 + M x 6= 9M, en lugar de 0 como se ve en el lado derecho del renglón de Z. Esta inconsistencia se debe a que A 1 y A2 tienen coeficientes distintos de cero (-M, -M) en el renglón de Z (compárelo con la solución de inicio con todas las variables de holgura del ejemplo de Reddy Mikks, donde los coeficientes de las holguras en el renglón de Z son cero) Esta inconsistencia se puede eliminar sustituyendo a A 1 y A2 en el renglón de z usando las ecuaciones adecuadas de restricción para eliminarlas. En particular, observe los elementos marcados (=1) en el renglón A1 y en el de A2. Si se multiplica cada renglón A1 y A2 por M y se agrega la suma al renglón Z, A1 y A2 saldrán del renglón objetivo, esto es Nuevo renglón Z = Renglón anterior Z + (M x Renglón A 1 + M x Renglón A2) Entonces, la tabla modificada es la siguiente: Básica Z A1 A2 X4
X1 -4+7M 3 4 1
X2 -1+4M 1 3 2
X3 -M 0 -1 0
A1 0 1 0 0
A2 0 0 1 0
X4 0 0 0 1
Solución 9M 3 6 4
Observe que la nueva Z = 9M, lo que ahora es consistente con los valores de la solución básica factible de inicio A1 = 3, A2 = 6 y X4 = 4. La última tabla queda lista para aplicarle el método simplex, con las condiciones de optimalidad y factibilidad. Como se está minimizando la función objetivo, la variable X1, que es la que tiene el coeficiente más positivo en el renglón Z (=-4+7M) entra a la solución: La razón mínima de la condición de factibilidad especifica que A 1 es la variable que sale. Una vez determinadas las variables de entrada y de salida, la nueva tabla se puede calcular con las operaciones familiares de Gauss-Jordán. Observe que el nuevo renglón de Z se determina multiplicando el nuevo renglón pivote por – (-4+7M) y sumando el resultado al renglón actual de Z.
Método Penalización y Dos Fases
3
Docente: Mg. Ing. J. Paredes C.
UNIVERSIDAD SAN PEDRO Ingeniería Mecánica y Eléctrica INVESTIGACION DE OPERACIONES Básica Z X1 A2 X4
X1 0 1 0 0
X2 (5M+1)/3 1/3 5/3 5/3
X3 -M 0 -1 0
A1 (4-7M)/3 1/3 -4/3 -1/3
A2 0 0 1 0
X4 0 0 0 1
Solución 4+2M 1 2 3
Esta última tabla muestra que X 2 y A2 son las variables de entrada y de salida, respectivamente. Multiplicamos a la fila pivote por (3/5) para convertirlo la celda pivote en 1. Básica Z X1 X2 X4
X1 0 1 0 0
X2 0 0 1 0
X3 1/5 1/5 -3/5 1
A1 -M+8/5 3/5 -4/5 1
A2 -M-1/5 -1/5 3/5 -1
X4 0 0 0 1
Solución 18/5 3/5 6/5(-1/3)(-5/3) 1
A la fila pivote multiplicar por (-1/3) y (-5/3) para operaciones elementales de Gauss-Jordán
X3 es la variable de entrada y X 4 la de salida, aplicando las operaciones elementales de Gauss-Jordán, tenemos la siguiente tabla. Básica Z X1 X2 X3
X1 0 1 0 0
X2 0 0 1 0
X3 0 0 0 1
A1 -M+7/5 2/5 -1/5 1
A2 -M 0 0 -1
X4 -1/5 -1/5 3/5 1
Solución 17/5 2/5 9/5 1(3/5)(-1/5)
Con los datos de la tabla anterior hemos llegado al óptimo, porque ya no existe coeficiente alguno de la función objetivo que sea positivo, los valores óptimos son:
9
7
5
5
5
X1 = , X2 = , Z =
.
Observe que las variables artificiales A 1 y A 2 salen de la solución básica en las iteraciones primera y segunda, resultando consistentes con el concepto de penalizar las variables artificiales en la función objetivo. Acerca del método M se pueden hacer dos observaciones: 1. El uso de la penalización M podrá no forzar la variable artificial hasta el nivel cero en la iteración simplex final, si el problema de programación lineal no tiene una solución factible (es decir, si las restricciones no son consistentes). En este caso, la iteración simplex final incluirá cuando menos una variable artificial a un nivel positivo. 2. La aplicación de la técnica M implica, teóricamente, que M → ∞. Sin embargo, al usar la computadora M debe ser finito, pero suficientemente grande. ¿Qué tan grande es “suficientemente grande” es una pregunta abierta. En forma específica, M debe ser lo bastante grande como para funcionar como penalización. Al mismo tiempo no debe ser tan grande como para perjudicar la exactitud de los cálculos simplex, al manipular una mezcla de números muy grandes y muy pequeños.
Método de dos Fases Debido al impacto potencial adverso del error de redondeo sobre la exactitud del método M, donde se manipula en forma simultánea coeficientes grandes y pequeños, el método de dos fases reduce el problema eliminando por completo la constante M. como su nombre indica, el método resuelve la programación en dos fases: la fase I trata de determinar una solución básica factible de inicio y, se invoca la fase II para resolver el problema original.
Fase I: El problema se pone en forma de ecuación y se agregan a las restricciones las variables artificiales necesarias (exactamente como el método M) para asegurar una solución básica de inicio: A continuación se determina una solución básica de las ecuaciones resultantes, que minimícela suma de las variables artificiales. Si el valor mínimo de la suma es positivo, el problema de programación lineal no tiene solución factible, y
Método Penalización y Dos Fases
4
Docente: Mg. Ing. J. Paredes C.
UNIVERSIDAD SAN PEDRO Ingeniería Mecánica y Eléctrica INVESTIGACION DE OPERACIONES termina el proceso (recuerde que una variable artificial positiva significa que no se satisface una restricción original). En caso contrario, se prosigue a la fase II.
Fase II: Se usa la solución factible de la fase I como solución básica factible de inicio para el problema original . Usaremos el mismo problema que en el ejemplo N o 1:
Fase I Minimizar r = A1 + A2 3X1 + X2 + A1 =3 4X1 + 3X2 – X3 + A2 =6 X1 + 2X2 + X4 = 4 X1, X2, X3, X4, A1, A2≥ 0 Igualando r = 0, tenemos: r – A1 – A2 = 0 La tabla asociada es la siguiente: Básica r A1 A2 X4
X1 0 3 4 1
X2 0 1 3 2
X3 0 0 -1 0
A1 -1 1 0 0
A2 -1 0 1 0
X4 0 0 0 1
Solución 0 3 6 4
Como en el método M, se elimina A 1 y A2 por sustitución en el renglón de r, usando los siguientes cálculos: Nuevo renglón r = Renglón r anterior + (1 x Renglón A1 + 1 x Renglón A2) El nuevo renglón r se usa para resolver la fase I del problema, con lo que se obtiene la siguiente tabla optima: Básica r X1 X2 X4
X1 0 1 0 0
X2 0 0 1 0
X3 0 1/5 -3/5 1
A1 -1 3/5 -4/5 1
A2 -1 -1/5 3/5 -1
X4 0 0 0 1
Solución 0 3/5 6/5 1 3
6
5
5
Como mínimo de r = 0, la fase I produce la solución básica factible X 1 = , X 2 =
y X4 = 1. Llegados a este
punto, las variables artificiales ya cumplieron su misión y se pueden eli minar de la tabla las columnas, por completo, y pasar a la fase II
Fase II: Después de eliminar las columnas artificiales, el problema original se escribe así: Minimizar Z = 4X1 + X2 Sujeta a
X1 + X3 5
=
3
X2 - X3
=
5
3 5 6 5
X3 + X4 = 1 X1, X2, X3, X4 ≥ 0 En esencia la fase I es un procedimiento que transforma las ecuaciones originales de restricción en tal forma que se obtiene una solución factible básica de inicio para el problema. La tabla asociada con la fase II del problema es, por consiguiente: Básica Z X1
X1 -4 1
X2 -1 0
Método Penalización y Dos Fases
X3 0 1/5
X4 0 0
Solución 0 3/5
5
Docente: Mg. Ing. J. Paredes C.
UNIVERSIDAD SAN PEDRO Ingeniería Mecánica y Eléctrica INVESTIGACION DE OPERACIONES X2 X4
0 0
1 0
-3/5 1
0 1
6/5 1
De nuevo, como las variables básicas X 1 y X2 tiene coeficientes no cero en el renglón de Z, deben sustituirse y eliminarse con los siguientes cálculos: Nuevo renglón Z = Renglón Z anterior + (4 x Renglón X 1 + 1 x Renglón X 2) La tabla inicial de la fase II resulta entonces Básica Z X1 X2 X4
X1 0 1 0 0
X2 0 0 1 0
X3 1/5 1/5 -3/5 1
X4 0 0 0 1
Solución 18/5 3/5 6/5 1
Como se está minimizando, X 3 debe entrar a la solución. Con la aplicación del método simplex se obtendrá el óptimo en una iteración más. La salida de las columnas de las variables artificiales al terminar la fase I solo se hace cuando todas ellas sean no básicas. Sin embargo, es posible que las variables artificiales sigan siendo básicas pero a nivel cero al final de la fase I. En ese caso, esas variables forman, por necesidad, parte de la solución básica de inicio para la fase II. En consecuencia, se deben modificar los cálculos en la fase II para asegurar que una variable artificial nunca se haga positiva durante las iteraciones de la fase II. Las reglas para garantizar que una variable artificial que es cero al final de la fase I nunca se vuelva positiva durante la fase II, son las siguientes: 1. Si en la columna pivote el coeficiente de restricción correspondiente a la variable básica artificial es positivo, definirá al elemento pivote en forma automática (por que corresponde a la razón mínima de cero) y, como se busca, la variable artificial se vuelve no básica en la siguiente iteración. 2. Si el elemento de la columna pivote es cero, la siguiente iteración dejara la variable artificial inalterada, en el nivel cero. 3. Si el elemento de la columna pivote es negativo, la razón mínima no se asociara con la variable artificial básica (cero). En este caso, si la razón mínima resultante resulta ser positiva, la variable artificial asumirá un valor positivo en la siguiente iteración (¿se da usted cuenta por qué?) y se necesitara evitar que eso suceda. Para hacerlo, se obliga a la variable artificial a salir de la solución de cualquier modo. Si se observa que la variable artificial está en el nivel cero, la eliminación de la solución básica no afectara la factibilidad de las variables básicas restantes. Resumiendo, la regla de la fase II indica obligar a la variable artificial a salir de la solución básica en cualquier momento en que su coeficiente de restricción en la columna pivote sea positivo o negativo. De hecho, esta regla se puede aplicar al final de la fase I, para eliminar las variables artificiales cero de la solución básica, antes de siquiera comenzar con la fase II.
Caso de Estudio No 2: Bevco elabora una bebida carbonatada sabor naranja que se llama Orange mediante la combinación de agua carbonatada de naranja y jugo de naranja. Cada onza de jugo de naranja contiene 0.25 onzas de azúcar y 3 mg de vitamina C. Bevco gasta 2 centavos por producir 1 onza de agua carbonatada de naranja y 3 centavos por elaborar 1 onza de jugo de naranja. El departamento de mercadotecnia de Bevco decidió que la botella de 10 onzas de Orange debe contener por lo menos 20 mg de vitamina C y cuando mucho 4 onzas de azúcar. Utilice la programación lineal para determinar cómo Bevco puede cumplir los requisitos del departamento de mercadotecnia a un costo mínimo.
Solución Sea X1 = cantidad de onzas de agua carbonatada de naranja en una botella de Orange X2 = cantidad de onzas de jugo de naranja en una botella de Orange
Método Penalización y Dos Fases
6
Docente: Mg. Ing. J. Paredes C.
UNIVERSIDAD SAN PEDRO Ingeniería Mecánica y Eléctrica INVESTIGACION DE OPERACIONES Entonces, el PL apropiado es Minimizar Z = 2X1 + 3X2 Sujeto a
X1 + X2≤ 4 4
(restricción del azúcar)
X1 + 3X2≥ 20 (restricción de la vitamina C) X1 + X2 = 10 (10 onzas en una botella de Orange) X1, X2≥ 0
Descripción del Método de la Gran M (según Wayne L. Wiston: Investigación de Operaciones) Paso 1: Modifique las restricciones de tal manera que el segundo miembro o lado derecho de cada una sea no negativo. Para lograrlo, cada restricción con un segundo miembro negativo se multiplica por -1. Recuerde que si usted multiplica una desigualdad por un número negativo, se invierte la dirección de la desigualdad. Por ejemplo, este método transformaría la desigualdad X 1 + X 2 ≥ -1 en – X 1 – X 2 ≤ 1. También transformaría X1 – X1 ≤ - 2 en – X1 + X2 ≥ 2 Identifique cada restricción que es ahora (después del paso 1) una restricción = o ≥. En el paso 3 se suma una variable artificial a cada una de estas restricciones. Paso 1’:
Paso 2: Convierta cada restricción de desigualdad en la forma estándar. Eso quiere decir que si la restricción i es una restricción ≤ se suma una variable de holgura S i, y si la restricción i es una restricción ≥, se resta una variable de excedente E i.
Paso 3: Si (después de haber terminado el paso 1) la restricción i es una restricción ≥ o =, sume una variable artificial Ai. También sume la restricción de signo A i ≥ 0.
Paso 4: Sea M un numero positivo muy grande. Si el PL es un problema de minimización, sume (por cada variable artificial) MAi a la función objetivo. Si el PL es un problema de maximización, sume (por cada variable artificial) -MAi a la función objetivo.
Paso 5: Como cada variable artificial está en la base de inicio, todas las variables artificiales se tiene que eliminar del renglón 0 antes de empezar el simplex. De esta manera se asegura que se empieza con una forma canoníca. Al elegir la variable entrante, recuerde que M es un número positivo muy grande. Por ejemplo, 4M – 2 es más positivo que 3M + 900, y -6M-5 es más negativo que -5M – 40. Ahora se resuelve el problema transformando por el simplex. Si todas las variables artificiales son iguales a cero en la solución óptima, entonces se ha encontrado la solución óptima del problema original. Si algunas de variables artificiales son positivas en la solución óptima, entonces el problema original no es factible. Cuando una variable artificial deja la base, se podría suprimir su columna desde arreglos futuros porque el objetivo de una variable artificial es solo lograr una solución factible básica inicial. Una vez que la variable artificial abandona la base, ya no se necesita. A pesar de este hecho se conservan a menudo las variables artificiales en todos los arreglos.
Solución del problema planteado Paso 1: Como ninguna de las restricciones tiene un lado derecho negativo, no se tiene que multiplicar restricción alguna por -1. Paso 1’:
Las restricciones 2 y 3 requieren de variables artificiales.
Paso 2: Sume una variable de holgura S 1 al renglón 1 y reste una variable de excedente E 2 del renglón 2. El resultado es Minimizar Z = 2X1 + 3X2 Sujeto a
Método Penalización y Dos Fases
7
Docente: Mg. Ing. J. Paredes C.
UNIVERSIDAD SAN PEDRO Ingeniería Mecánica y Eléctrica INVESTIGACION DE OPERACIONES
Renglón 1:
Renglón 2: Renglón 3:
X1 + X2 + S1 = 4 4
X1 + 3X2 – E2 = 20 X1 + X2 = 10
Paso 3: Sume una variable artificial A2 al renglón 2 y una variable artificial A 3 al renglón 3. El resultado es Minimizar Z = 2X1 + 3X2 Sujeto a
Renglón 1:
Renglón 2: Renglón 3:
X1 + X2 + S1
=4
4
X1 + 3X2 – E2 +A2 = 20 X1 + X2 + A3 = 10
A partir de este arreglo se observa que la SFB inicial es S 1 = 4, A2 = 20 y A3 = 10
Paso 4: Como se está resolviendo un problema de minimización, se suma MA 2 + MA3 a la función objetivo (si se estuviera trabajando con un problema de maximización, se sumaría – MA2 – M A3). Lo anterior hace a A2 y A3 muy poco atractivas, además de que el hecho de minimizar Z ocasiona que A 2 y A3 sean cero. La función objetivo es ahora Minimizar Z = 2X1 + 3X2 +MA2 + MA3
Paso 5: El renglón 0 es entonces Z -2X1 – 3X2 – MA2 – MA2 = 0 Como A2 y A 3 están en la SFB de inicio (que es la razón de haberlas introducido) se tienen que eliminar del renglón 0. Para eliminar A2 y A3 del renglón 0, simplemente se reemplaza el renglón 0 por renglón 0+M (renglón 2) + M (renglón 3). Así se obtiene Renglón 0: Z M (renglón 2): M (renglón 3):
-2X1 – 3X2 – MA2 MX1 + 3MX2 - ME2 MX1 + MX2
– MA3 + MA2 + MA3
=0 = 20M = 10M
Nuevo renglón 0: Z + (2M -2) X 1 + (4M – 3)X2 – ME2 = 30M Al combinar el nuevo renglón 0 con los renglones 1 a 3 se obtiene el arreglo inicial de la tabla siguiente Arreglo inicial de Bevco Variable básica Z S1 A2 A3
Z
X1
X2
S1
E2
A2
A3
Solución
Cociente
1 0 0 0
2M-2
4M-3
½
¼
1 1
3 1
0 1 0 0
-M 0 -1 0
0 0 1 0
0 0 0 1
30M 4 20 10
16 20/3* 10
Se está trabajando con un problema de minimización, así que la variable con el coeficiente más positivo en el renglón 0 debe entrar a la base. Como 4M – 3 > 2M – 2, la variable X 2 debe entrar a la base. La prueba del cociente indica que X 2 debe entrar a la base en el renglón 2, lo cual significa que la variable A 2 debe dejar la base. La parte más difícil de hacer en el pivoteo es eliminar X 2 del renglón 0. Primero se reemplaza el renglón
2 por (renglón 2). Por lo tanto, el nuevo renglón 2 es 3
3
3
3
3
X1 + X2 - E2 + A2 =
Primera iteración para Bevco
Método Penalización y Dos Fases
8
Docente: Mg. Ing. J. Paredes C.
UNIVERSIDAD SAN PEDRO Ingeniería Mecánica y Eléctrica INVESTIGACION DE OPERACIONES Variable básica Z S1 X2 A3
Z
X1
X2
S1
E2
A2
A3
Solución
Cociente
1 0 0 0
(2M-3)/3 5/12 1/3 2/3
0 0 1 0
0 1 0 0
(M-3)/3 1/12 -1/3 1/3
(3-4M)/3 -1/12 1/3 -1/3
0 0 0 1
(60+10M)/3 7/3 20/3 10/3
28/5 20 5
Enseguida se puede eliminar X 2 del renglón 0 sumando – (4M-3) (nuevo renglón 2) al renglón 0, o bien, (3 4M) (nuevo renglón 2) + renglón 0. Ahora, (3 - 4M)(Nuevo renglón 2) =
(3−4) 3
(3−4)
(3−4)
(3−4)
6
6
3
X1 + (3-4M)X2 –
E2 +
A2 =
Renglón 0: Z + (2M - 2)X 1 + (4M - 3)X2 – ME2 = 30M Nuevo Renglón 0: Z +
(−3) 3
+
(−3) 3
+
(3−4) 3
=
6+ 3
Después de efectuar algunas OER para eliminar X 2 del renglón 1 y del renglón 3 se obtiene el tablero anterior. Como
−3 3
>
−3 3
, se introduce X1 a la base. La prueba de del cociente indica que X 1 debe entrar a la base en
el tercer renglón del tablero actual. Luego A3 dejara la base, y el siguiente tablero tendrá A 2 = A3 = 0. Para 3
introducir X1 a la base en el renglón 3 primeros se reemplaza el renglón 3 por (renglón 3). Por lo tanto, el
nuevo renglón 3 será X1 +
-
+
3
= 5
Para eliminar X1 del renglón 0, se reemplaza el renglón 0 por renglón 0 + (3 - 2M) (Nuevo renglón 3)/3 Renglón 0: Z +
(M−3) 3
+
(M−3)E 3
(3−M)(nuevo renglon 3)
(3 −M)
3
3
Nuevo renglón 0: Z -
:
+
+
+
3
(3−M)E
(−)
(3−4M)A
6
+
+
=
3
(M −3)A
(3−)
(6−M)
6
+
(3−M)A
=
(5−M) 3
= 25
El nuevo renglón 1 y el nuevo renglón 2 se calculan como siempre, lo cual origina el tablero siguiente: Variable básica Z S1 X2 X1
Z
X1
X2
S1
E2
A2
A3
Solución
1 0 0 0
0 0
0 0
0 1
-1/2 -1/8
(1-2M)/2 1/8
(3-2M)/2 -5/8
25
0
1
0
-1/2
½
-1/2
5
1
0
0
½
-1/2
3/2
5
¼
Como todas las variables en el renglón 0 tienen coeficientes no positivos, este es un tablero optimo; todas las variables artificiales son iguales a cero en este tablero, por lo que se ha encontrado la solución óptima del
problema de Bevco: Z = 25, X 1 = X 2 = 5, S1 = , E 2 = 0. Esto significa que Bevco puede mantener el costo de 4
producir una botella de 10 onzas de Orange a 25 centavos mediante la combinación de 5 onzas de agua carbonatada de naranja, y 5 onzas de jugo de naranja. Obsérvese que la columna de A 2 podría ser suprimida después de que A 2 deja la base (al concluir el primer pivoteo), y que la columna de A 3 se podría eliminar después de que A 3 deja la base (cuando concluye el segundo pivoteo)
Descripción del Método Simplex de Dos Fases (según Wayne L. Wiston: Investigación de Operaciones) Con los siguientes pasos se explica el método simplex de dos fases. Note que los pasos 1 a 3 de este método son idénticos a los pasos 1 a 3 del método de la gran M.
Método Penalización y Dos Fases
9
Docente: Mg. Ing. J. Paredes C.
UNIVERSIDAD SAN PEDRO Ingeniería Mecánica y Eléctrica INVESTIGACION DE OPERACIONES
Paso 1: Modifique las restricciones de tal manera que el segundo miembro o lado derecho de cada una sea no negativo. Para lograrlo, cada restricción con un segundo miembro negativo se multiplica por -1. Paso 1’: Identifique cada restricción que es ahora (después del paso 1) una restricción = o ≥. En el paso 3 se suma una variable artificial a cada una de estas restricciones.
Paso 2: Convierta cada restricción de desigualdad en la forma estándar. Eso quiere decir que si la restricción i es una restricción ≤ se suma una variable de holgura S i, y si la restricción i es una restricción ≥, se resta una variable de excedente E i.
Paso 3: Si (después de haber terminado el paso 1) la restricción i es una restricción ≥ o =, sume una variable artificial Ai. También sume la restricción de signo A i ≥ 0.
Paso 4: Por ahora ignore la función objetivo del PL original. Mientras, resuelva un PL cuya función objetivo es min w’ = (suma de todas las variables artificiales). A esta parte se le denomina PL de la fase I. El hecho de resolver el PL de la fase I forzara a las variables artificiales a ser cero. Como cada Ai ≥ 0, al resolver el PL de la fase I dará como resultado uno de los tres casos siguientes: Caso 1: El valor óptimo de w’ es mayor que cero. En este caso, el PL original no tiene solución factible. Caso 2: El valor w’ es igual a cero y ninguna variable artificial está en la base optima de la fase I. En este caso, se suprimen todas las columnas del arreglo óptimo de la fase I que corresponden a las variables artificiales. Luego se combinan la función objetivo original y las restricciones del arreglo óptimo de la fase I. así se obtiene el PL de la fase II. La solución óptima para el PL de la fase II es la solución óptima del PL original. Caso 3: El valor óptimo de w’ es igual a cero y por lo menos una variable artificial está en la base óptima de la fase I. En este caso se puede encontrar la solución óptima del PL original si al final de la fase I se eliminan, del arreglo óptimo de la fase I, todas las variables artificiales no básicas y cualquier variable del problema original que tenga coeficiente negativo en el renglón 0 del arreglo óptimo de la fase 1. Recuerde que el problema de Bevco era Minimizar Z = 2X1 + 3X2 Sujeto a
X1 + X2≤ 4 4
X1 + 3X2≥ 20 X1 + X2 = 10 X1, X2≥ 0
Solución: Al igual que en el método de la Gran M, por medio de los pasos 1 a 3, se transforman las restricciones en Minimizar Z = 2X1 + 3X2 Sujeto a
X1 + X2 + S1 4
=4
X1 + 3X2 – E2 +A2 = 20 X1 + X2 + A3 = 10 El paso 4 genera el siguiente PL de la fase I: Minimizar w’ = A2 + A3
X1 + X2 + S1
=4
4
X1 + 3X2 – E2 +A2 = 20 X1 + X2 + A3 = 10 Este conjunto de ecuaciones proporciona una SFB de inicio para la fase I (S 1 = 4, A2 = 20, A3 = 10) Obsérvese que el renglón cero de este tablero (w’ – A2 – A3 = 0) contiene las variables básicas A 2 y A3. Como en el método de la gran M, A 2 y A3 se deben eliminar del renglón 0 antes de poder resolver la fase I. Se suman simplemente el renglón 2 y el renglón 3 al renglón 0 para eliminar A 2 y A3 del renglón 0: Renglón 0:
w’
Método Penalización y Dos Fases
-A2 - A3 = 0 10
Docente: Mg. Ing. J. Paredes C.
UNIVERSIDAD SAN PEDRO Ingeniería Mecánica y Eléctrica INVESTIGACION DE OPERACIONES Renglón 2: X1 + 3X2 – E2 + A2 Renglón 3: X1 + X2 + A3 Nuevo renglón 0: w’ + 2X1 + 4X2 – E2 = 30
= 20 = 10
Al combinar el nuevo renglón 0 con las restricciones de la fase I se obtiene el tablero inicial de la fase I, de la tabla siguiente: Variable W’ X1 X2 básica W’ 1 2 4 S1 0 ½ ¼ A2 0 1 3 A3 0 1 1 Tablero inicial de la fase I para Bevco
S1
E2
A2
A3
Solución
Cociente
0 1 0 0
-1 0 -1 0
0 0 1 0
0 0 0 1
30 4 20 10
16 20/3* 10
Como el problema de la fase I es siempre de minimización (incluso si el PL original es un problema de maximización), se introduce X 2 a la base. La prueba del cociente indica que X 2 debe entrar a la base en el renglón 2, y salir A2. Después de efectuar las OER pertinentes se llega al tablero siguiente. Variable W’ X1 X2 S1 E2 A2 básica W’ 1 2/3 0 0 1/3 -4/3 S1 0 5/12 1 1/12 -1/12 0 A2 0 1/3 1 0 -1/3 1/3 A3 0 2/3 0 0 1/3 -1/3 Tablero de la fase I para Bevco después de una iteración
Como 5 < 20 y 5 <
8 5
A3
Solución
Cociente
0 0 0 1
10/3 3/7 20/3 10/3
28/5 20 5
, X1 entra a la base en el renglón 3. Por lo tanto, A 3 saldrá de la base. Como A 2 y A 3
serán no básicas después de que el pivoteo actual se termine, se sabe ya que el tablero siguiente será óptimo para la fase I. una mirada al tablero en la tabla siguiente con firma este hecho. Variable W’ X1 X2 S1 básica W’ 1 0 0 0 S1 0 0 1 0 A2 0 0 1 0 A3 0 1 0 0 Tablero óptimo de la fase I pa ra Bevco
E2
A2
A3
Solución
0 -1/8 -1/2 1/2
-1 1/8
-1 -5/8 -1/2 3/2
0
½ -1/2
¼ 5 5
Como w’ = 0, concluyó la fase I, se encontró la solución factible básica S 1 = , X2 = 5, X1 = 5. Ninguna 4
variable artificial está en la base de la fase I. por consiguiente, el problema es un ejemplo del caso 2. Ahora se suprimen las columnas de la variable artificial A 2 y A3 (ya no se les necesita), y se reintroduce la función objetivo original. Minimizar z = 2X1 + 3X2
o bien,
z – 2X1 – 3X2 = 0
Puesto que X 1 y X2 están ambas en la base optima de la fase I, deben ser eliminadas del renglón 0 de la fase II. Se suma 3(renglón 2) + 2(renglón 3) del tablero óptimo de la fase I al renglón 0. Renglón 0 de la fase II: z – 2X1 – 3X2 + Renglón 2:
3X2 - E2
+ Renglón 3: = Nuevo renglón 0:
= 0 3
2X1 z
+ E2
= 15 = 10
- E2 = 25
Se empieza entonces la fase II con el conjunto de ecuaciones siguiente:
Método Penalización y Dos Fases
11
Docente: Mg. Ing. J. Paredes C.
UNIVERSIDAD SAN PEDRO Ingeniería Mecánica y Eléctrica INVESTIGACION DE OPERACIONES
Minimizar z - E2
= 25
S1 - E2
=
8
X2 - E2 X1
+
4
=5
E2
=5
Este conjunto es óptimo. Por consiguiente, en este problema, la fase II no requiere pivoteos para llegar a la solución óptima. Si el renglón 0, de la fase II no indica un tablero óptimo, entonces se prosigue simplemente con el simplex hasta que se obtenga un renglón 0. En resumen, el tablero óptimo de la fase II indica que la solución óptima para el problema de Bevco es z = 25, X 1 = 5, X2 = 5, S1 =
4
y E2 =0, ésta va de acuerdo,
naturalmente, con la solución óptima que se determinó por medio del método de la gran M.
Conjunto de Ejercicios No 4: Método de la gran M y de las Dos Fases 1.
= 2X1 + X2 + 3X3
Minimizar Z Sujeto a:
3X1 + X2 + 2X3 X1 - 2X2 + 3X3 2X1 + 3X2 - X3 X1 + X2 + 2X3
2.
≤ ≥ ≤ =
10 6 9 7
Minimizar Z = 2000X1 + 500X2 Sujeto a:
2X1 + 3X2 ≥ 36 3X1 + 6X2 ≥ 60 X1, X2 ≥ 0 3.
Maximizar Z = 6X1 + 4X2 + 4X3 Sujeto a:
3X1 + 6X2 + X3 ≤ 20 2X1 + X2 + 2X3 = 15 X1, X2, X3 ≥ 0 4.
Minimizar Z = 20X1 + 30X2 +16X3 Sujeto a:
2.5X1 + 3X2 + X3 ≥ 3 X1 + 3X2 + 2X3 ≥ 4 X1, X2, X3 ≥ 0 5.
5
Minimizar Z = X
X
Sujeto a: 3 3 5
X
X X
5
X ≤
7
X = 6 X ≥ 6
X1, X2 ≥ 0 Método Penalización y Dos Fases
12
Docente: Mg. Ing. J. Paredes C.
UNIVERSIDAD SAN PEDRO Ingeniería Mecánica y Eléctrica INVESTIGACION DE OPERACIONES 6.
Minimizar z = X1 + 2X2 Sujeto a: -3X1 + 2X2 ≤ 6 X1 + X2 ≤
10 2
-x1 + 3X2 ≥ 6 X1, X2≥ 0 7.
Minimizar Z = 5X1 – 6X2 – 7X2 Sujeto a X1 + 5X2 – 3X3 ≥ 15 5X1 - 6X2 + 10X3 ≤ 20 X1 + X2 + X3 = 5 X1, X2, X3 ≥ 0
8.
Minimizar Z = 10X1 + 15X2 Sujeto a X1 + 2X2 ≥ 4 5X1 + 3X2 ≥ 3 X1, X2 ≥ 0
Método Penalización y Dos Fases
13
Docente: Mg. Ing. J. Paredes C.