Está en la página 1de 8

RELACIONES PRIMAL-DUAL

Los cambios que se hacen en el modelo original de programacion lineal afectan a


los elementos de la tabla optima actual (el que se tenga en el momento), que a su vez
puede afectar la optimalidad y/o la factibilidad de la solucion actual. Por esta razon
estudiaremos como se re-calculan los elementos de la tabla smplex optima para reflejar
los nuevos cambios.

Planteamiento de la tabla smplex

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

La figura 1 es una representacion esquematica de las tablas smplex de inicio y ge-


neral. 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 demas
iteraciones de la tabla smplex, generadas con las operaciones de fila de Gauss-Jordan
modificaran los elementos de la matriz identidad para producir la llamada matriz in-

1
versa. Como veremos en el resto de este captulo, la matriz inversa es la clave del calculo
de todos los elementos de la tabla smplex asociada.

Solucion dual optima

Las soluciones primal y dual se relacionan en forma tan estrecha que la solucion
optima del problema primal produce en forma directa (con unos pocos de calculos adi-
cionales) la solucion optima del dual. En esta seccion se describen dos metodos para
calcular este resultado.

Metodo 1


! Vector fila de los coeficientes !
Valores optimos Inversa primal
= objetivos originales de las

de las variables duales optima
variables basicas optimas primales

Los elementos del vector fila de los coeficientes objetivos del primal original deben
aparecer en el mismo orden que aparecen las variables basicas en la columna Basica de
la tabla smplex.

Metodo 2

La solucion dual optima se puede determinar resolviendo las siguientes ecuaciones:

! ! !
Coeficiente z-primal optimo Lado izquierdo de la Lado derecho de la
=
de cualquier variables xj j-esima restriccion dual j-esima restriccion dual

Observe con cuidado que, como el dual del problema dual es en s mismo el problema
primal (compruebelo), los metodos presentados se pueden aplicar en forma simetrica pa-
ra determinar la solucion optima del primal a partir de la del dual. Esto podra implicar
ventajas de computo si la cantidad de variables en el primal fuera bastante menor que
la cantidad de restricciones. Ya que la cantidad de calculos smplex depende mucho de
la cantidad de restricciones, en este caso es mas eficiente resolver el dual, a partir del
cual se pueda determinar entonces la solucion del primal.

Ejemplo 4.2-1

Se tiene la siguiente programacion 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 solucion con metodo smplex se agrega una hol-
gura x4 en la primera restriccion, y una R artificial en la segunda. Los problemas primal
y dual asociado resultantes se definen as:

Primal Primal en forma de ecuacion


Maximizar z = 5x1 + 12x2 + 4x3 M R Minimizar w = 10y1 + 8y2
sujeta a sujeta a
x1 + 2x2 + x3 + x4 = 10 y1 + 2y2 5
2x1 x2 + 3x3 + R = 8 2y1 y2 12
x1 , x2 , x3 , R 0 y1 + 3y2 4
y1 0
y2 M ( y2 no restringida)
La tabla 1 muestra la tabla primal optima. La matriz inversa optima, que se senala
bajo las variables de inicio x4 y R es

!
2/5 1/5
Inversa optima =
1/5 2/5

Cuadro 1: Tabla optima del primal, ejemplo 4.2-1


Basica x1 x2 x3 x4 R Solucion
z 0 0 3/5 29/5 2/5 + M 274/5
x2 0 1 1/5 2/5 1/5 12/5
x1 1 0 7/5 1/5 2/5 26/5

Ahora indicaremos como se determinan los valores duales optimos usando los dos
metodos que se citaron al iniciar esta seccion.

Metodo 1. Primero se observa que las variables primales optimas aparecen en la


tabla en orden de la fila, primero x2 y despues 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 = 12, 5

As, los valores duales optimos se calculan como sigue:

!
Coeficientes objetivo
(y1 , y2 ) = (Inversa optima)
originales x2 , x1
!
2/5 1/5
= (12, 5)
1/5 2/5
= (29/5, 2/5)

Metodo 2. Como el problema dual tiene dos variables se necesitan dos ecuaciones
para llegar a la solucion. Tomaremos las restricciones duales asociadas con las variables
primales de inicio, x4 y R. Como se ve en la definicion de dual, las restricciones duales
asociadas con las variables primales de inicio son:

Variable de inicio x4 : y1 0
Variable de inicio R : y2 M

Tambien, de acuerdo con la tabla optima (tabla 1),

Coeficiente z de x4 = 29/5
Coeficiente z de R = 2/5 + M

Entonces, de acuerdo con el metodo 2,

29/5 = y1 0 y1 = 29/5
2/5 + M = y2 (M ) y2 = 2/5

4
Notese que en cada ecuacion interviene exactamente una variable, y por tanto la
solucion dual esta 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 cualesquie-
ra se podran usar exactamente igual, para obtener la solucion dual. Por ejemplo, en la
tabla optima, las variables primales x1 , y x3 produciran las siguientes ecuaciones res-
pectivas (verifquelo!):

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

La solucion de estas dos ecuaciones produce los mismos valores duales optimos,
y1 = 29/5 y y2 = 2/5. Sin embargo, observese que las ecuaciones que se obtienen no
son tan sencillas como las asociadas con x4 y R (convenzase usted mismo: dos variables
cualesquiera de x1 , x2 , x3 , x4 y R produciran la misma solucion).

Calculos con la tabla smplex

En esta seccion se indica como se puede generar toda la tabla smplex en cualquier
iteracion, a partir de los datos originales del problema y la inversa asociada con la itera-
cion. Usando la distribucion de la tabla smplex previamente expuesta, se puede dividir
los calculos en dos tipos:

1. Columnas de restriccion (lados izquierdo y derecho).


2. fila objetivo z.

Calculos de columnas de restriccion. En cualquier iteracion smplex, una co-


lumna del lado izquierdo o derecho se calcula como sigue:

! ! !
Columna de restriccion Inversa en la Columna original
= (Fomula 1)
en la iteracion i iteracion i de restriccion

Calculos de fila objetivo z. En cualquier iteracion smplex, el coeficiente de xj en


la funcion objetivo se calcula como sigue:

5

Coeficiente de la Lado izquierdo de Lado derecho de
variable xj en la ecuacion = la restriccion dual la restriccion dual (Fomula 2)

primal de z correspondiente correspondiente

Notese que la formula 2 es igual a la que se uso en el metodo 2, que acabamos de


ver, para determinar la solucion dual optima.

Ejemplo 4.2-2

Se usara la programacion lineal del ejemplo 4.2-1 para ilustrar la aplicacion de las
formulas 1 y 2. De acuerdo con la tabla optima de la tabla 1,

!
2/5 1/5
Inversa optima =
1/5 2/5

El uso de la formula 1 se ilustra calculando todas las columnas de lado izquierdo y


lado derecho de la tabla optima:

! ! !
Columna de x1 Inversa en la Columna de
=
en iteracion optima iteracion optima x1 original
! !
2/5 1/5 1
=
1/5 2/5 2
!
0
=
1

De manera parecida se calculan las siguientes columnas de restriccion:

! ! ! !
Columna de x2 2/5 1/5 2 1
= =
en iteracion optima 1/5 2/5 1 0
! ! ! !
Columna de x3 2/5 1/5 1 1/5
= =
en iteracion optima 1/5 2/5 3 7/5

6
! ! ! !
Columna de x4 2/5 1/5 1 2/5
= =
en iteracion optima 1/5 2/5 0 1/5
! ! ! !
Columna de R 2/5 1/5 0 1/5
= =
en iteracion optima 1/5 2/5 1 2/5

Columna de lado ! ! ! !
x2 2/5 1/5 10 12/5
derecho en la = = =

x1 1/5 2/5 8 26/5
iteracion optima

A continuacion se demostrara como se hacen los calculos de la fila objetivo, con la


formu la 2. Los valores optimos de las variables duales y1 , y2 ) = (29/5, 2/5), se calcu-
laron en el ejemplo 4.2-1, con dos metodos distintos. Estos valores se usan en la formula
2 para determinar los coeficientes asociados de z como sigue:

Coeficiente x1 en z = y1 + 2y2 5 = 29/5 + 2 (2/5) 5 = 0


Coeficiente x2 en z = 2y1 y2 12 = 2 29/5 (2/5) 12 = 0
Coeficiente x3 en z = y1 + 3y2 4 = 29/5 + 3 (2/5) 4 = 3/5
Coeficiente x4 en z = y1 0 = 29/5 0 = 29/5
Coeficiente R en z = y2 (M ) = 2/5 (M ) = 2/5 + M

Es importante observar que los calculos con las formulas 1 y 2 se pueden aplicar en
cualquier iteracion, sea de los problemas primales o duales. Todo lo que se necesita es
la inversa asociada con la iteracion primal o dual, y los datos de la programacion lineal
original.

Valor objetivo primal y dual

En los problemas primal-dual, si uno es de maximizacion el otro debe ser de minimi-


zacion. 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 Valor objetivo en el

problema de Maximizacion problema de Minimizacion

7
En el optimo, la relacion es valida estrictamente como ecuacion.

Observese que la relacion no especifica cual problema es primal y cual es dual. En


este caso solo importa el sentido de la optimizacion (maximizacion o minimizacion).

Ejemplo 4.2-3

En el ejemplo 4.2-1, (x1 = 0, x2 = 0, x3 = 8/3) y (y1 = 6, y2 = 0) son soluciones facti-


bles primal y dual. Los valores asociados de las funciones objetivo son z = 10 32 y w = 60.
Tambien, la solucion optima 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 calculos demuestran la rela-
cion mencionada.

La relacion indica que para todas las soluciones primales y duales factibles, el valor
objetivo en el problema de minimizacion establece siempre una cota superior del valor
objetivo en el problema de maximizacion. Dado que las iteraciones sucesivas del proble-
ma de maximizacion obtienen valores crecientes de z, y las del problema de minimizacion
obtienen valores decrecientes de w, al final, en el curso de las iteraciones, se llegara a
un punto de equilibrio donde los valores objetivo de maximizacion y de minimizacion
deben ser iguales; esto es, z = w.

También podría gustarte