Figura 1: Esquema de las tablas simplex de inicio y general

RELACIONES PRIMAL-DUAL Los cambios que se hacen en el modelo original de programaci´on lineal afectan a los elementos de la tabla o´ptima actual (el q...
16 downloads 0 Views 174KB Size
RELACIONES PRIMAL-DUAL Los cambios que se hacen en el modelo original de programaci´on lineal afectan a los elementos de la tabla o´ptima actual (el que se tenga en el momento), que a su vez puede afectar la optimalidad y/o la factibilidad de la soluci´on actual. Por esta raz´on estudiaremos c´omo se re-calculan los elementos de la tabla s´ımplex o´ptima para reflejar los nuevos cambios. Planteamiento de la tabla s´ımplex

Figura 1: Esquema de las tablas simplex de inicio y general. La figura 1 es una representaci´on esquem´atica de las tablas s´ımplex de inicio y general. En la tabla de inicio, los coeficientes de las restricciones abajo de las variables de inicio forman una matriz identidad: todos los elementos de la diagonal principal iguales a 1 y fuera de la diagonal principal iguales a cero. Con este arreglo, las dem´as iteraciones de la tabla s´ımplex, generadas con las operaciones de fila de Gauss-Jordan modificar´an los elementos de la matriz identidad para producir la llamada matriz in-

1

versa. Como veremos en el resto de este cap´ıtulo, la matriz inversa es la clave del c´alculo de todos los elementos de la tabla s´ımplex asociada. Soluci´ on dual ´ optima Las soluciones primal y dual se relacionan en forma tan estrecha que la soluci´on o´ptima del problema primal produce en forma directa (con unos pocos de c´alculos adicionales) la soluci´on o´ptima del dual. En esta secci´on se describen dos m´etodos para calcular este resultado. M´ etodo 1

Ã

Valores o´ptimos de las variables duales

!





à ! Vector fila de los coeficientes Inversa primal   objetivos originales de las = × o´ptima variables b´asicas o´ptimas primales

Los elementos del vector fila de los coeficientes objetivos del primal original deben aparecer en el mismo orden que aparecen las variables b´asicas en la columna B´ asica de la tabla s´ımplex. M´ etodo 2 La soluci´on dual o´ptima se puede determinar resolviendo las siguientes ecuaciones: Ã

Coeficiente z-primal o´ptimo de cualquier variables xj

!

=

Ã

Lado izquierdo de la j-´esima restricci´on dual

! Ã

×

Lado derecho de la j-´esima restricci´on dual

Observe con cuidado que, como el dual del problema dual es en s´ı mismo el problema primal (compru´ebelo), los m´etodos presentados se pueden aplicar en forma sim´etrica para determinar la soluci´on o´ptima del primal a partir de la del dual. Esto podr´ıa implicar ventajas de c´omputo si la cantidad de variables en el primal fuera bastante menor que la cantidad de restricciones. Ya que la cantidad de c´alculos s´ımplex depende mucho de la cantidad de restricciones, en este caso es m´as eficiente resolver el dual, a partir del cual se pueda determinar entonces la soluci´on del primal. Ejemplo 4.2-1 Se tiene la siguiente programaci´on lineal:

2

!

Maximizar z = 5x1 + 12x2 + 4x3 sujeta a x1 + 2x2 + x3 ≤ 10 2x1 − x2 + 3x3 = 8 xk ≥ 0, ∀ k. Para preparar el problema para su soluci´on con m´etodo s´ımplex se agrega una holgura x4 en la primera restricci´on, y una R artificial en la segunda. Los problemas primal y dual asociado resultantes se definen as´ı: Primal Maximizar z = 5x1 + 12x2 + 4x3 − M R sujeta a x1 + 2x2 + x3 + x4 = 10 2x1 − x2 + 3x3 + R = 8 x1 , x2 , x3 , R ≥ 0

Primal en forma de ecuaci´on Minimizar w = 10y1 + 8y2 sujeta a y1 + 2y2 ≥ 5 2y1 − y2 ≥ 12 y1 + 3y2 ≥ 4 y1 ≥ 0 y2 ≥ −M (⇒ y2 no restringida)

La tabla 1 muestra la tabla primal o´ptima. La matriz inversa o´ptima, que se se˜ nala bajo las variables de inicio x4 y R es

Inversa o´ptima =

Cuadro 1: B´asica x1 z 0 x2 0 x1 1

Ã

2/5 −1/5 1/5 2/5

!

Tabla o´ptima del primal, ejemplo 4.2-1 x2 x3 x4 R Soluci´on 0 3/5 29/5 −2/5 + M 274/5 1 −1/5 2/5 −1/5 12/5 1/5 2/5 26/5 0 7/5

Ahora indicaremos c´omo se determinan los valores duales o´ptimos usando los dos m´etodos que se citaron al iniciar esta secci´on. M´ etodo 1. Primero se observa que las variables primales o´ptimas aparecen en la tabla en orden de la fila, primero x2 y despu´es x1 . Eso quiere decir que los elementos de 3

los coeficientes originales del objetivo para las dos variables deben aparecer en el mismo orden, que es: ³

Coeficiente objetivo originales

´

=

³

Coeficiente de x2 , Coeficiente de x1

As´ı, los valores duales o´ptimos se calculan como sigue:

(y1 , y2 ) =

Ã

Coeficientes objetivo originales x2 , x1

= (12, 5) ×

Ã

2/5 −1/5 1/5 2/5

!

´

=

³

12, 5

× (Inversa o´ptima)

!

= (29/5, −2/5)

M´ etodo 2. Como el problema dual tiene dos variables se necesitan dos ecuaciones para llegar a la soluci´on. Tomaremos las restricciones duales asociadas con las variables primales de inicio, x4 y R. Como se ve en la definici´on de dual, las restricciones duales asociadas con las variables primales de inicio son: Variable de inicio x4 : Variable de inicio R :

y1 ≥ 0 y2 ≥ −M

Tambi´en, de acuerdo con la tabla o´ptima (tabla 1),

Coeficiente z de x4 = 29/5 Coeficiente z de R = −2/5 + M Entonces, de acuerdo con el m´etodo 2, 29/5 = y1 − 0 ⇒ y1 = 29/5 −2/5 + M = y2 − (−M ) ⇒ y2 = −2/5

4

´

N´otese que en cada ecuaci´on interviene exactamente una variable, y por tanto la ´ soluci´on dual est´a disponible de inmediato. Este es siempre el caso de las restricciones duales asociadas con las variables de inicio. En realidad, las restricciones duales asociadas con dos variables primales cualesquiera se podr´ıan usar exactamente igual, para obtener la soluci´on dual. Por ejemplo, en la tabla o´ptima, las variables primales x1 , y x3 producir´an las siguientes ecuaciones respectivas (¡verif´ıquelo!):

y1 + 2y2 − 5 = 0 y1 + 3y2 − 4 = 3/5

La soluci´on de estas dos ecuaciones produce los mismos valores duales o´ptimos, y1 = 29/5 y y2 = −2/5. Sin embargo, obs´ervese que las ecuaciones que se obtienen no son tan sencillas como las asociadas con x4 y R (conv´enzase usted mismo: dos variables cualesquiera de x1 , x2 , x3 , x4 y R producir´an la misma soluci´on). C´ alculos con la tabla s´ımplex En esta secci´on se indica c´omo se puede generar toda la tabla s´ımplex en cualquier iteraci´on, a partir de los datos originales del problema y la inversa asociada con la iteraci´on. Usando la distribuci´on de la tabla s´ımplex previamente expuesta, se puede dividir los c´alculos en dos tipos: 1. 2.

Columnas de restricci´on (lados izquierdo y derecho). fila objetivo z.

C´ alculos de columnas de restricci´ on. En cualquier iteraci´on s´ımplex, una columna del lado izquierdo o derecho se calcula como sigue: Ã

Columna de restricci´on en la iteraci´on i

!

=

Ã

Inversa en la iteraci´on i

! Ã

×

Columna original de restricci´on

!

(F´ omula 1)

C´ alculos de fila objetivo z. En cualquier iteraci´on s´ımplex, el coeficiente de xj en la funci´on objetivo se calcula como sigue:

5







 



Coeficiente de la Lado izquierdo de Lado derecho de       on  =  la restricci´on dual − la restricci´on dual   variable xj en la ecuaci´ primal de z correspondiente correspondiente

(F´ omula 2)

N´otese que la f´ormula 2 es igual a la que se us´o en el m´etodo 2, que acabamos de ver, para determinar la soluci´on dual o´ptima. Ejemplo 4.2-2

Se usar´a la programaci´on lineal del ejemplo 4.2-1 para ilustrar la aplicaci´on de las f´ormulas 1 y 2. De acuerdo con la tabla o´ptima de la tabla 1,

Inversa o´ptima =

Ã

!

2/5 −1/5 1/5 2/5

El uso de la f´ormula 1 se ilustra calculando todas las columnas de lado izquierdo y lado derecho de la tabla o´ptima:

Ã

Columna de x1 en iteraci´on o´ptima

!

=

Ã

Inversa en la iteraci´on o´ptima

=

Ã

2/5 −1/5 1/5 2/5

=

Ã

0 1

!

×

!

Ã

×

1 2

Ã

Columna de x1 original

!

!

De manera parecida se calculan las siguientes columnas de restricci´on:

Ã

Columna de x2 en iteraci´on o´ptima

!

Ã

Columna de x3 en iteraci´on o´ptima

!

=

Ã

2/5 −1/5 1/5 2/5

!

=

Ã

2/5 −1/5 1/5 2/5

!

6

×

Ã

2 −1

×

Ã

1 3

!

!

=

=

Ã

Ã

1 0

!

−1/5 7/5

!

!

Ã

Columna de x4 en iteraci´on o´ptima

!

Ã

Columna de R en iteraci´on o´ptima

!





=

Ã

2/5 −1/5 1/5 2/5

!

=

Ã

2/5 −1/5 1/5 2/5

!

×

Ã

1 0

!

×

Ã

0 1

!

=

Ã

2/5 1/5

!

=

Ã

−1/5 2/5

!

! Ã ! Ã ! Ã ! Ã Columna de lado 2/5 −1/5 10 12/5 x2   = × =  derecho en la  = 1/5 2/5 8 26/5 x1 iteraci´on o´ptima

A continuaci´on se demostrar´a c´omo se hacen los c´alculos de la fila objetivo, con la f´ormu la 2. Los valores o´ptimos de las variables duales y1 , y2 ) = (29/5, −2/5), se calcularon en el ejemplo 4.2-1, con dos m´etodos distintos. Estos valores se usan en la f´ormula 2 para determinar los coeficientes asociados de z como sigue: Coeficiente Coeficiente Coeficiente Coeficiente Coeficiente

x1 x2 x3 x4 R

en z en z en z en z en z

= = = = =

y1 + 2y2 − 5 2y1 − y2 − 12 y1 + 3y2 − 4 y1 − 0 y2 − (−M )

= = = = =

29/5 + 2 × (−2/5) − 5 2 × 29/5 − (−2/5) − 12 29/5 + 3 × (2/5) − 4 29/5 − 0 −2/5 − (−M )

= = = = =

0 0 3/5 29/5 −2/5 + M

Es importante observar que los c´alculos con las f´ormulas 1 y 2 se pueden aplicar en cualquier iteraci´on, sea de los problemas primales o duales. Todo lo que se necesita es la inversa asociada con la iteraci´on primal o dual, y los datos de la programaci´on lineal original. Valor objetivo primal y dual En los problemas primal-dual, si uno es de maximizaci´on el otro debe ser de minimizaci´on. Desde este punto de vista, los valores objetivo en los dos problemas se relacionan de la siguiente manera: Para cualquier par de soluciones primales y duales factibles, Ã

Valor objetivo en el problema de Maximizaci´ on

!



7

Ã

Valor objetivo en el problema de Minimizaci´ on

!

En el o´ptimo, la relaci´on es v´alida estrictamente como ecuaci´on. Obs´ervese que la relaci´on no especifica cu´al problema es primal y cu´al es dual. En este caso s´olo importa el sentido de la optimizaci´on (maximizaci´on o minimizaci´on). Ejemplo 4.2-3 En el ejemplo 4.2-1, (x1 = 0, x2 = 0, x3 = 8/3) y (y1 = 6, y2 = 0) son soluciones factibles primal y dual. Los valores asociados de las funciones objetivo son z = 10 32 y w = 60. Tambi´en, la soluci´on o´ptima de los dos problemas, que es (x1 = 26/5, x2 = 12/5, x3 = 0) y (y1 = 29/5, y2 = −2/5) producen z = w = 54,8. Ambos c´alculos demuestran la relaci´on mencionada. La relaci´on indica que para todas las soluciones primales y duales factibles, el valor objetivo en el problema de minimizaci´on establece siempre una cota superior del valor objetivo en el problema de maximizaci´on. Dado que las iteraciones sucesivas del problema de maximizaci´on obtienen valores crecientes de z, y las del problema de minimizaci´on obtienen valores decrecientes de w, al final, en el curso de las iteraciones, se llegar´a a un punto de equilibrio donde los valores objetivo de maximizaci´on y de minimizaci´on deben ser iguales; esto es, z = w.

8