Cap 5 - Libro Moran

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 22

CAPÍTULO 5

DUALIDAD EN PROGRAMACIÓN LINEAL

5.1 INTRODUCCIÓN
Retomemos el problema de la dieta, planteado en el Capítulo 4, que consiste en minimizar
el costo total de la mezcla de n alimentos naturales de manera de satisfacer m
requerimientos nutricionales especificados para la mezcla (supondremos por simplicidad que
todos los requerimientos son mínimos, sin cota superior).
Indicando con:
xj = cantidad del alimento natural j a utilizar por unidad de mezcla [Kg. de alimento j / Kg.
de mezcla].
cj = costo unitario del alimento natural j [$ / Kg. de alimento j].
aij = cantidad de nutriente i proporcionada por una unidad de alimento natural j [Kg.
nutriente i / Kg. de alimento natural j].
bi = requerimiento de nutriente i por unidad de producto final [Kg. de nutriente i / Kg. de
mezcla].
el problema puede ser planteado en la siguiente forma
n
min. s = ∑ c j x j
j =1

n
∑ aij x j ≥ bi , i = 1,2,,m ( 5-1)
 j =1
 xj ≥ 0 , j = 1,2,,n

Supongamos ahora que una firma química fabrica los nutrientes puros en forma sintética.
Tratará de convencer a la otra de que use los nutrientes sintéticos (más algún excipiente en
cantidad suficiente para lograr el volumen necesario, elemento que no será tenido en cuenta
aquí) en lugar de mezclar productos alimenticios naturales. Entonces el problema que enfrenta
esta empresa es el de determinar los precios unitarios ui para los nutrientes de tal forma de
maximizar la ganancia y al mismo tiempo que sean competitivos con los componentes
naturales. Para ser competitivo, el costo de una unidad del componente natural j hecho con
nutrientes puros sintéticos no debe ser mayor que cj, que es el precio en el mercado de ese
componente. Así, dado que aij es la cantidad de nutriente puro i que requiere una unidad del
componente j, resulta que debe ser
m

∑a u ≤c ij i j , j = 1, 2,  , n ( 5-2)
i =1

Ahora bien, para aportar bi unidades de nutriente i se deben vender bi unidades del
mismo, ya que es puro, y por lo tanto la contribución para la compañía será

P. Lineal 71
m
∑ bu i i
( 5-3)
i =1

la que se deberá maximizar. Finalmente, como los ui son precios, deberán ser no negativos.
Luego el problema se puede expresar como
m
max. z = ∑ bi u i
i =1

 m

∑ aij u i ≤ c j , j = 1,2,,n ( 5-4)


 i =1
 ui ≥ 0 , i = 1,2,,m

La relación entre ambos problemas es evidente y tiene gran importancia para el análisis
económico. Decimos que un problema es el dual del otro.
En lo que sigue analizaremos la relación entre ambos problemas y veremos que la
resolución de uno de ellos suministra información total sobre las soluciones del otro.

5.2 PROBLEMAS DUALES EN FORMA CANÓNICA


Definición. Dado un PL en la forma canónica, que llamaremos problema primal,
max. z = c T x
 Ax ≤ b ( 5-5)
Kp
 x≥0
se llama problema dual, en forma canónica, del anterior a

min. s = b T u
 AT u ≥ c ( 5-6)
Kd 
 u≥0
De la definición es fácil ver que:
1. Un problema es de maximización y el otro de minimización.
2. El problema de maximización tiene restricciones de ≤ y el de minimización de ≥.
3. Los términos independientes en un problema son los coeficientes de la función objetivo en
el otro.
4. A cada restricción en un problema corresponde una variable en el otro.
5. En ambos problemas las variables son no negativas.

Ejemplo 5-1
Dado el problema primal:

72 P. Lineal
max. z = 5 x1 + 6 x 2
 x1 + 9 x2 ≤ 60 ←  → u1
 
2 x1 + 3x2 ≤ 45 ←  → u 2 

5 x1 − 2 x2 ≤ 20 ←  → u 3 Var. duales asociadas
 x2 ≤ 30 ←  → u 4 
 
 x1 , x 2 ≥0
el problema dual resulta:
min. s = 60u1 + 45u 2 + 20u 3 + 30u 4
 u1 + 2u 2 + 5u 3 + 0u 4 ≥ 5 ←  → x1
 
9u1 + 3u 2 − 2u 3 + u4 ≥ 6 ←  → x 2 Var. primales asociadas
 
 u1 , u 2 , u 3 , u 4 ≥0

Cabe notar que en este caso el dual tiene menos restricciones, lo que es una ventaja
computacional.
Propiedad 5-1. (propiedad involutiva). El dual del dual es el primal.
En efecto, sea el siguiente PL y su dual

max. z = c T x min.s = b T u
 Ax ≤ b  AT u ≥ c ( 5-7)
Kp Kd 
 x≥0  u≥0
El dual se puede escribir en forma equivalente

max. − s = (−b) T u
(− A) T u ≤ −c ( 5-8)

 u≥0
y su dual, por definición, es
min. − z = (−c) T x
(− A) x ≥ −b ( 5-9)

 x≥0
que es lo mismo que
max. z = c T x
 Ax ≤ b ( 5-10)

 x≥0
es decir, el primal. ■
Esta propiedad nos dice que cualquiera de los dos programas puede ser tomado como
primal y entonces el otro es el dual. Es decir el programa primal es el que aparece
originalmente al plantear el problema, puede ser de maximización o minimización. Sin

P. Lineal 73
embargo, en lo que sigue, cuando hablemos de problema primal nos estaremos refiriendo al
problema canónico de maximización y el dual será el de minimización.
Teorema 5-1. (teorema del dual, forma canónica). Si el programa primal tiene solución
óptima finita x*, entonces el dual también tiene solución óptima finita y ambos óptimos son
iguales: z* = s*. Además las soluciones óptimas del dual son los costos marginales u* de los
recursos del primal. Si el programa primal no tiene solución óptima finita, entonces el dual no
tiene soluciones factibles.
Demostración. Retomemos las condiciones necesarias y suficientes de óptimo (caso de
problema de maximización)
 Ax * + w = b
 T *
 A u −v = c

 wT u* = 0 ( 5-11)

 vT x* = 0
 x * , u* , v , w ≥ 0

De la segunda y quinta de estas condiciones vemos inmediatamente que u* es solución


factible del dual y que v puede ser interpretado como el vector de las variables de holgura del
dual. Demostraremos que u* es óptima del dual.
Observemos en primer lugar que si el primal tiene solución el dual también la tiene. En
efecto, sean Kp y Kd los conjuntos de las soluciones posibles del primal y dual
respectivamente. Si Kp ≠ ∅ entonces Kd ≠ ∅ pues al menos existe la solución u*.
Transponiendo las restricciones del dual
cT ≤ uT A , u ∈ Kd ( 5-12)
y postmultiplicando por una solución x del primal tenemos
cT x ≤ u T ,
Ax ≤ u T b = b T u , u ∈ Kd , x ∈ Kp ( 5-13)
≤b

En el óptimo del primal será, tomando u = u*


c T x * ≤ (u*T A) x * = u*T ( Ax * ) ≤ b T u* ( 5-14)
Analicemos el segundo miembro. De la segunda ecuación de ( 5-11) tenemos

AT u* = v + c ( 5-15)
Transponiendo, reemplazando en el segundo miembro de ( 5-14) y teniendo en cuenta la
cuarta ecuación de ( 5-11) resulta
(u *T A) x * = (v T + c T ) x * = v T x * + c T x * = c T x * ( 5-16)
luego los dos primeros miembros de ( 5-14) son idénticos.
Analicemos ahora el tercer miembro. De la primera ecuación de ( 5-11) obtenemos

Ax * = b − w ( 5-17)
Reemplazando en el tercer miembro de ( 5-14) y teniendo en cuenta la tercera ecuación de (
5-11) resulta

74 P. Lineal
u *T ( Ax * ) = u*T (b − w) = u*T b − u*T w = u*T b = b T u* ( 5-18)
y los dos últimos miembros son idénticos.
Concluimos entonces que

z * = cT x * = b T u* ( 5-19)
Es decir, los multiplicadores simplex del primal en el óptimo son soluciones posibles del
dual y dan el mismo valor de la función económica que el óptimo del primal. Para demostrar
que esta solución es óptima del dual observemos que de ( 5-13) para x* resulta
cT x* ≤ b T u , u ∈ Kd , x* ∈ K p ( 5-20)

y comparando con ( 5-19) vemos que u* es óptima para el dual

s* = b T u * ( 5-21)
*
Finalmente, si z es no acotada entonces el dual no tiene soluciones factibles. En efecto
supongamos que u es una solución factible del dual, luego por ( 5-13) resultaría bTu una
cota superior para z* lo que es claramente imposible si z* es no acotada. Concluimos así que
el dual no tiene soluciones factibles. La recíproca no es necesariamente cierta, si el programa
dual no tiene soluciones factibles puede implicar que el primal tampoco las tenga. ■
Corolario 5-1. (propiedad dual débil). La función objetivo del problema de
maximización es siempre menor o igual que la función objetivo del problema de
minimización para todo par de soluciones factibles de ambos problemas.
Demostración. Obvia por ( 5-13). ■
Cualquier solución factible del problema de maximización es una cota inferior para el
óptimo de la función objetivo del problema de minimización, y cualquier solución factible del
problema de minimización es una cota superior para el óptimo de la función objetivo del
problema de maximización.
Corolario 5-2. (propiedad dual fuerte). Si x* y u* son soluciones factibles del primal y
del dual respectivamente y además c T x * = b T u* , entonces las soluciones son óptimas de sus
respectivos problemas.
Demostración. En efecto, por la propiedad dual débil es
cT x* ≤ b T u , ∀ u ∈ Kd , x* ∈ K p ( 5-22)

y como
c T x * = b T u* ≤ b T u ( 5-23)
*
resulta que u es óptima.
Análogamente,
c T x ≤ b T u* , ∀x ∈ K p , u* ∈ Kd ( 5-24)

y como
cT x ≤ b T u* = cT x * ( 5-25)
*
resulta que x es óptima. ■

P. Lineal 75
5.2.1 Significado económico del dual
Recordando que los costos marginales del primal (soluciones del dual) son los precios que
para un programa óptimo dado tienen los insumos, vemos que el dual significa: “Minimizar el
valor total imputado a los recursos disponibles (los bi), de manera tal que estos valores
aplicados a los recursos utilizados en cada producto (los aij) resulten mayores o iguales que
una contribución marginal prefijada para cada producto (los cj).” Estos precios miden las
productividades marginales de los recursos disponibles.
Desde un punto de vista estrictamente económico la dualidad muestra que, así como un
programa de producción óptimo define los precios de los recursos escasos, un conjunto de
precios elegidos convenientemente implica necesariamente un programa de producción
óptimo. Esto reafirma el concepto económico de que un sistema de precios puede servir de
guía para la producción en condiciones tecnológicas adecuadas. Las características
fundamentales de los precios que corresponden a una asignación óptima de los recursos son:
a) Son no negativos.
b) Si los recursos empleados en cada actividad efectivamente realizada se valorizan a esos
precios, la contribución marginal de la actividad será imputada completamente a los
recursos absorbidos.
c) Si los recursos empleados en cada actividad se valorizan a esos precios no existirá
actividad cuya contribución marginal sea mayor que el valor de los recursos que consume.
Vemos que los costos marginales constituyen un sistema de costos internos o precios
internos para los recursos de la empresa, tales que:
i) Permiten a la empresa seleccionar cuáles actividades desarrollar considerando sólo la
contribución marginal de las mismas, esto es, las que tienen contribución marginal igual a
su costo marginal; y
ii) Asignan la contribución marginal total de la empresa al valor marginal total de sus recursos,
pues en el óptimo son iguales.
Por ejemplo, podríamos evaluar rápidamente si conviene agregar un nuevo producto o no.
Supongamos que, ante un plan de producción óptimo ya encontrado, surge la posibilidad de
agregar un nuevo producto, es decir agregar una actividad que no forma parte del plan óptimo
actual. Supongamos que conocemos para ella los coeficientes tecnológicos y su contribución
marginal, podemos calcular entonces el costo marginal de los recursos necesarios para producir
una unidad. Si este costo es mayor que la contribución marginal, evidentemente no conviene; los
recursos son utilizados más eficientemente haciendo las otras actividades. Si es menor conviene
(si es igual es indiferente), lo cual significa que hay una reasignación de recursos más eficiente
que implica hacer menos de las otras actividades para hacer la nueva. (¡Cuidado!, aquí estamos
evaluando el costo marginal de una unidad de una actividad que no forma parte de la solución
óptima del plan actual y, por lo tanto, el costo marginal puede ser menor que la contribución
marginal). Si es conveniente agregar la actividad se deberá hallar la nueva solución óptima (lo
que implica que los costos marginales de los recursos disponibles pueden cambiar), de la que
esta actividad formará parte, y entonces se cumplirá que su contribución marginal será igual a su
costo marginal. Este problema será retomado en Análisis Postóptimo.
La dualidad muestra que el problema de la asignación de recursos y el de la valorización de
esos recursos son esencialmente la misma cosa. En efecto, supongamos que quisiéramos
obtener los costos marginales de los recursos directamente, sin resolver el problema de
decisión sobre la producción (sin obtener el plan de producción óptimo). Podemos plantear el

76 P. Lineal
problema de la siguiente manera. De acuerdo a la condiciones de Kuhn-Tucker los costos
marginales unitarios de las actividades deben ser mayores o iguales que sus contribuciones
marginales, pues en caso contrario se podría mejorar la contribución total de la empresa con
otros niveles de las actividades (otra solución óptima primal) y, además, los costos marginales
de los recursos son no negativos (porque corresponden a un problema primal canónico). Es
decir que debe ser:
m
 ∑ aij ui ≥ c j , j = 1, 2,  , n
 i =1 ( 5-26)
 ui ≥ 0
Imaginemos ahora que la empresa no posee ningún recurso y por lo tanto debería
adquirirlos. Puesto que, para un plan óptimo, los costos marginales indican el precio adicional
que la empresa podría llegar a pagar por cada unidad de los recursos, evidentemente tratará
que el precio total de los mismos sea mínimo. Es decir:
m
min. s = ∑ bi u i ( 5-27)
i =1

sujeta a las restricciones anteriores. Ahora bien, como la empresa en realidad tiene sus
recursos, estos valores son interpretados como los costos de equilibrio de contratar recursos
adicionales, es decir los incrementos de precios más allá de los cuales no es conveniente la
incorporación de recursos. Resulta así directamente el problema de optimización de los
valores de los recursos, su dual es el de optimización de la producción.
Un PL canónico de maximización, típicamente representa el punto de vista del responsable
de producción que desea determinar la asignación de los recursos que maximice la
contribución marginal total, determinando la cantidad a fabricar de cada producto.
Un PL canónico de minimización, típicamente representa el punto de vista del economista
que trata de encontrar el plan de producción que optimice la asignación de los recursos de tal
forma que cada producto sea producido en cantidad tal que el costo marginal de los recursos
utilizados en producirlo no sea menor que la contribución marginal del producto.
El problema primal resuelve el problema de determinar las cantidades óptimas a producir,
que es un problema de decisiones de tipo táctico. Su dual enfoca más bien problemas de tipo
estratégico, como la conveniencia o no de agregar un nuevo producto o de realizar inversiones
de capital, por ejemplo. El Análisis Postóptimo utiliza información del problema dual para
encarar este tipo de problemas.

5.2.2 Interpretación de los coeficientes vj


Ya sabemos que vj = zj − cj, j = 1, 2, … , n (vj = −( zj − cj) para problemas de
minimización), donde n incluye las variables originales y las de holgura primales, luego en
las condiciones

AT u − v = c ( 5-28)
dado que en este caso la matriz A contiene los vectores de las variables de holgura
(submatriz identidad) y el vector c contiene los coeficientes de esas variables (subvector
nulo), resulta que v es el vector de las variables de holgura de las restricciones duales
incluídas las condiciones de no negatividad, consideradas como restricciones. Es decir, las

P. Lineal 77
variables de holgura duales vj se corresponden con las variables xj primales incluídas las de
holgura primales.
La interpretación de los vj es entonces la siguiente:
Para j correspondientes a las variables originales del primal, los vj son los valores de las
variables de holgura duales.
Para j correspondientes a las variables de holgura del primal, los vj son los valores de las
holgura en las condiciones de no negatividad duales y que son, obviamente, los valores de las
propias variables duales.
Por lo tanto podemos concluir que los valores vj, j = 1, 2, … , n, de la tabla de óptimo de
un PL en la forma estándar, constituyen la solución completa del problema dual en forma
estándar.
Propiedad 5-2. (holguras complementarias). Sean x* y u* soluciones factibles del
primal y del dual respectivamente. Entonces son soluciones óptimas de sus respectivos
problemas si, y sólo si,

(bT − x*T AT )u * = 0
( 5-29)
(u *T A − cT ) x* = 0
En efecto, de las dos primeras ecuaciones de ( 5-11), que son condiciones necesarias y
suficientes, se obtiene

wT = bT − x*T AT
( 5-30)
vT = u *T A − cT
y reemplazando en las dos últimas de ( 5-11) resulta la tesis. ■
Estas ecuaciones se conocen con el nombre de condiciones de holguras complementarias,
porque si una variable en un problema es positiva, la correspondiente restricción en el otro
debe ser activa (holgura nula); y si una restricción es no activa en un problema (holgura no
nula), la correspondiente variable en el otro debe ser nula.
Por ejemplo, si en un programa primal un recurso tiene holgura no nula (restricción no
activa), su costo marginal (variable correspondiente dual) es cero. Si una actividad primal
tiene nivel positivo, su correspondiente restricción dual es activa (su costo marginal es igual a
su contribución marginal).

Ejemplo 5-2
Sea el siguiente PL
max. z = x1 + 3 x 2 + 2 x3
2 x1 + x2 ≤4

 3 x1 + x3 ≤5
 xj ≥0

y agregando las variables holgura

78 P. Lineal
max. z = x1 + 3 x 2 + 2 x3 + 0 x 4 + 0 x5
2 x1 + x2 + x4 =4

 3 x1 + x3 + x5 =5
 xj ≥0

Si resolvemos el problema tomando como base inicial la formada por los vectores de las
variables de holgura, la tabla de óptimo es

1 3 2 0 0 xi yij xi /yij
x1 x2 x3 x4 x5 yij >0
3 x2 2 1 0 1 0 4
2 x3 3 0 1 0 1 5
zj 12 3 2 3 2 z = 22
zj − cj 11 0 0 3 2

Solución óptima primal:


x1* = 0 x2* = 4 x3* = 5 x4* = 0 x5* = 0 z* = 22
Solución óptima dual:
u1* = (z4 − c4 ) + c4 = 3 + 0 = 3
u2* = (z5 − c5 ) + c5 = 2 + 0 = 2
en correspondencia con los vectores de la base identidad inicial.
Las variables de holgura duales son (en correspondencia con las variables primales
originales):
u3* = v1 = z1 − c1 = 11
u4* = v2 = z2 − c2 = 0
u5* = v3 = z3 − c3 = 0
Si resolvemos el mismo problema utilizando como base inicial los vectores A2 y A3 en
lugar de los de las variables de holgura, la tabla de óptimo es

1 3 2 0 0 xi yij xi /yij
x1 x2 x3 x4 x5 yij >0
3 x2 2 1 0 1 0 4
2 x3 3 0 1 0 1 5
zj 12 3 2 3 2 z = 22
zj − cj 11 0 0 3 2

Solución óptima primal (por supuesto la misma):


x1* = 0 x2* = 4 x3* = 5 x4* = 0 x5* = 0 z* = 22
Pero las soluciones duales se encuentran ahora como
u1* = (z2 − c2 ) + c2 = 0 + 3 = 3

P. Lineal 79
u2* = (z3 − c3 ) + c3 = 0 + 2 = 2
en correspondencia con los vectores de la base identidad inicial.
Las variables de holgura duales son (en correspondencia con las variables primales
originales):
u3* = v1 = z1 − c1 = 11
u4* = v2 = z2 − c2 = 0
u5* = v3 = z3 − c3 = 0
Consideremos ahora directamente el dual:
min.  s = 4u1 + 5u 2
2u1 + 3u 2 ≥1
 u ≥3
 1

 u2 ≥2
 ui ≥0

Agregando las variables de holgura y ficticias


min. s = 4u1 + 5u 2 + 0u 3 + 0u 4 + 0u 5 + Mu 6 + Mu 7 + Mu 8
2u1 + 3u 2 − u3 + u6 =1
 u − u4 + u7 =3
 1

 u2 − u5 + u8 =2
 ui ≥0

y resolviéndolo, la tabla de óptimo es

4 5 0 0 0 M M M ui yij ui /yij
u1 u2 u3 u4 u5 u6 u7 u8 yij >0
4 u1 1 0 0 -1 0 0 1 0 3
0 u3 0 0 1 -2 -3 -1 2 3 11
5 u2 0 1 0 0 -1 0 0 1 2
zj 4 5 0 -4 -5 0 4 5 s = 22
zj − cj 0 0 0 -4 -5 -M 4-M 5-M

Solución óptima dual:


u1* = 3 u2* = 2 u3* = 11 u4 * = 0 u5 * = 0 s* = 22
Solución óptima primal:
x1* = (z6 − c6 ) + c6 = − M + M = 0
x2* = (z7 − c7 ) + c7 = 4 − M + M = 4
x3* = (z8 − c8 ) + c8 = 5 − M + M = 5
en correspondencia con los vectores de la base identidad inicial.

80 P. Lineal
Las variables de holgura del primal son (en correspondencia con las variables duales
originales):
x4* = v1 = − (z1 − c1 ) = 0
x5* = v2 = − (z2 − c2 ) = 0

Ejemplo 5-3
Sea el siguiente PL
min. s = 6 x1 + 3 x 2 + 2 x3
 x1 + x2 ≥4

2 x1 + x3 ≥5
 xj ≥0

Agregando variables de holgura
min. s = 6 x1 + 3 x 2 + 2 x3 + 0 x 4 + 0 x5
 x1 + x2 − x4 =4

2 x1 + x3 − x5 =5
 xj ≥0

y resolviéndolo utilizando como base inicial los vectores A2 y A3, la tabla de óptimo es

6 3 2 0 0 xi yij xi /yij
x1 x2 x3 x4 x5 yij >0
3 x2 0 1 -1/2 -1 1/2 3/2
6 x1 1 0 1/2 0 -1/2 5/2
zj 6 3 3/2 -3 -3/2 s = 39/2
zj − cj 0 0 -1/2 -3 -3/2

Solución óptima primal:


x1* = 5/2 x2* = 3/2 x3* = 0 x4* = 0 x5* = 0 z* = 39/2
Solución óptima dual:
u1* = (z2 − c2 ) + c2 = 0 + 3 = 3
u2* = (z3 − c3 ) + c3 = − 1/2 + 2 = 3/2
en correspondencia con los vectores de la base identidad inicial.
Las variables de holgura duales son (en correspondencia con las variables primales
originales):
u3* = v1 = − (z1 − c1 ) = 0
u4* = v2 = − (z2 − c2 ) = 0
u5* = v3 = − (z3 − c3 ) = 1/2
El dual de este PL es

P. Lineal 81
max. z = 4u1 + 5u 2
u1 + 2u 2 ≤6
u ≤3
 1

 u2 ≤2
 ui ≥0

y agregando las variables de holgura


max. z = 4u1 + 5u 2 + 0u 3 + 0u 4 + 0u 5
u1 + 2u 2 + u3 =6
u + u4 =3
 1

 u2 + u5 =2
 ui ≥0

para el óptimo resulta

4 5 0 0 0 ui yij ui /yij
u1 U2 u3 u4 u5 yij >0
4 u1 1 0 0 1 0 3
0 u5 0 0 -1/2 1/2 1 1/2
5 u2 0 1 1/2 -1/2 0 3/2
zj 4 5 5/2 3/2 0 z = 39/2
zj − cj 0 0 5/2 3/2 0

Solución óptima dual:


u1* = 3 u2* = 3/2 u3* = 0 u4 * = 0 u5* = 1/2 z* = 39/2
Solución óptima primal:
x1* = (z3 − c3 ) + c3 = 5/2 + 0 = 5/2
x2* = (z4 − c4 ) + c4 = 3/2 + 0 = 3/2
x3* = (z5 − c5 ) + c5 = 0 + 0 = 0
en correspondencia con los vectores de la base identidad inicial.
Las variables de holgura del primal son (en correspondencia con las duales originales):
x4* = v1 = z1 − c1 = 0
x5* = v2 = z2 − c2 = 0

5.3 PROBLEMAS DUALES CON RESTRICCIONES TIPO ECUACIONES


Consideremos el siguiente PL con restricciones del tipo ecuaciones
max. z = c T x
 Ax = b ( 5-31)
Kp
 x≥0

82 P. Lineal
Para obtener el dual lo expresaremos en la forma canónica, de la cual conocemos el dual.
En forma equivalente cada ecuación se puede expresar por un par de inecuaciones, una de ≤
y otra de ≥, de manera que las restricciones quedan
 Ax ≤ b  Ax ≤ b  A  b
  
 −  x ≤  −b 
K p  Ax ≥ b ⇒ K p − Ax ≤ −b ⇒ Kp  A ( 5-32)
 x≥0  x≥0  x≥0
 
Luego el problema dual es:

u
min. s = b T( )
− b T   = b T u − b T u ′ = b T (u − u ′) ( 5-33)
 u′
con las restricciones

 T  u
( A − AT )   ≥ c  AT u − AT u′ ≥ c  A T ( u − u ′) ≥ c
  u ′   ( 5-34)
Kd  ⇒ Kd  u≥0 ⇒ Kp  u≥0
  u  
  ≥0  u′ ≥ 0  u′ ≥ 0
  u ′

y poniendo
λ = u − u′ ( 5-35)
que puede resultar positiva, nula o negativa, es decir no restringida en signo, obtenemos

min. s = b T λ
 AT λ ≥ c ( 5-36)
Kd 
 λ no restringida
Si el problema tiene restricciones mixtas (inecuaciones y ecuaciones) el razonamiento
anterior se aplica sólo a las ecuaciones. Entonces el dual se puede obtener directamente a partir
del primal teniendo en cuenta que a cada ecuación le corresponde una variable no restringida.
Inversamente, si una variable primal no está restringida, la correspondiente restricción en el dual
debe ser una ecuación. Cabe destacar que esta condición se debe satisfacer para las restricciones
que son originalmente ecuaciones, y no para las que se transforman en ecuaciones agregando
variables de holgura.

Ejemplo 5-4
Sea el siguiente PL
max. z = 5 x1 + 12 x 2 + 4 x3
 x1 + 2 x2 + x3 ≤5

2 x1 − x2 + 3 x3 =2
 xj ≥0

El problema dual resulta:

P. Lineal 83
min. s = 5u1 + 2u 2
 u1 + 2u2 ≥5
2u − u2 ≥ 12
 1
 u1 + 3u 2 ≥4
 u1 ≥0

 u2 no restringida

5.3.1 Las soluciones del dual en la tabla Simplex


La demostración del teorema del dual se hizo para programas en la forma canónica. Es fácil
ver que es válido para el caso de restricciones tipo ecuaciones. En efecto, sea el par de
programas duales

max. z = c T x min. s = b T λ
 Ax = b  AT λ ≥ c ( 5-37)
Kp Kd 
 x≥0  λ no restringida
entonces se verifica:
Propiedad 5-3. (propiedad dual débil). La función objetivo del problema de
maximización es siempre menor o igual que la función objetivo del problema de
minimización para todo par de soluciones factibles de ambos problemas.
En efecto. Si x∈Kp y λ∈Kd, transponiendo las restricciones duales y postmultiplicando
por x resulta
z = cT x ≤ λ T ,
Ax = λ T b = bT λ = s , λ ∈ Kd , x ∈ Kp ( 5-38)
=b

donde λ es no restringida. ■
De aquí se deduce inmediatamente que si el primal (dual) tiene solución no acotada el dual
(primal) no tiene soluciones factibles. La recíproca no es necesariamente cierta, si un
problema no tiene soluciones factibles puede ser que el otro tampoco las tenga.
Propiedad 5-4. (propiedad dual fuerte). Si x* y λ* son soluciones factibles del primal y
del dual respectivamente y además cT x * = bT λ* , entonces las soluciones son óptimas de sus
respectivos problemas.
En efecto, por la propiedad dual débil es

c T x * ≤ bT λ , ∀λ ∈ K d , x* ∈ K p ( 5-39)

y como
c T x * = b T λ* ≤ b T λ ( 5-40)
resulta que λ* es óptima.
Análogamente,
cT x ≤ bT λ* , ∀x ∈ K p , λ* ∈ K d ( 5-41)

y como
c T x ≤ b T λ* = c T x * ( 5-42)

84 P. Lineal
resulta que x* es óptima. ■
Teorema 5-2. Sea el par de problemas duales

max. z = c T x min. s = b T λ
 Ax = b  AT λ ≥ c ( 5-43)
Kp Kd 
 x≥0  λ no restringida
y sean λ*T = cBT B −1 los multiplicadores simplex en la tabla de óptimo del primal y sea x* la
solución óptima. Entonces λ* es la solución óptima del dual.
En efecto, en el óptimo del primal resulta
zj − cj ≥ 0 ⇒ zj ≥ cj ( 5-44)
donde
z j = cBT B −1 A j j = 1, 2,  , n ( 5-45)

es decir
cBT B −1 A j ≥ c j j = 1, 2,  , n ( 5-46)

y en forma matricial
cBT B −1 A = λ*T A ≥ cT ( 5-47)
de donde, transponiendo, resulta
AT λ* ≥ c ( 5-48)
Luego λ* (no restringida) es solución factible del dual.
Calculemos ahora la función objetivo
s = b T λ* = λ*T b = cBT ,
B −1b = cBT xB* = z * ( 5-49)
x*B

Luego por la propiedad dual fuerte λ* es solución óptima. ■


Los multiplicadores simplex en el óptimo del primal son siempre la solución óptima del
dual, y son los costos marginales de los recursos1, sólo que ahora éstos pueden ser también
negativos. El término “costo marginal” tiene entonces un significado más amplio. Esto es
consistente con el significado económico de las variables duales. Si en un problema de
maximización las restricciones son ecuaciones, los recursos se deben utilizar totalmente (y
los requerimientos satisfacer exactamente), luego un incremento en un recurso (o en un
requerimiento) puede resultar en un incremento, una disminución o en ningún cambio en la
función objetivo.

5.4 OTROS CASOS DE INTERÉS


Utilizando la forma canónica de los problemas duales se pueden analizar otros casos. Por
ejemplo, sea el siguiente PL

1
En caso de solución óptima degenerada los multiplicadores simplex pueden no ser los verdaderos costos
marginales (ver punto 5.5).

P. Lineal 85
max. z = c T x
 Ax ≥ b ( 5-50)
Kp
 x≥0
Llevándolo a la forma canónica su dual es

max. z = c T x min. s = −b T u = b T (−u )


− Ax ≤ −b ⇒  − A T u = A T ( −u ) ≥ c ( 5-51)
Kp Kd 
 x≥0  u≥0

y poniendo λ = −u resulta

min. s = b T λ
 AT λ ≥ c ( 5-52)
Kd 
 λ≤0
Tenemos así que, para un problema de maximización (primal), si las restricciones son de
≤, las variables duales resultan ≥ 0. Si la restricciones son ecuaciones, las variables duales
resultan no restringidas. Si las restricciones son de ≥ las variables duales resultan ≤ 0.
Análogamente, para un problema de minimización (primal) se obtiene que si las restricciones
son de ≤, las variables duales resultan ≤ 0. Si la restricciones son ecuaciones, las variables
duales resultan no restringidas. Si las restricciones son de ≥, las variables duales resultan ≥
0.
Estas conclusiones son consistentes con el significado económico de las variables duales
(costos marginales). Si en un problema de maximización las restricciones son de ≤, aumentar
un recurso hace crecer o al menos no decrecer la contribución marginal total, luego los costos
marginales deben ser ≥ 0. Si las restricciones son de ≥ se trata de requerimientos, por
ejemplo una demanda, y aumentar un requerimiento restringe más el problema, luego la
contribución marginal total sólo puede disminuir o a lo sumo permanecer constante y por lo
tanto los costos marginales deben ser ≤ 0. Si las restricciones son ecuaciones, los recursos se
deben utilizar totalmente (los requerimientos satisfacer exactamente), y aumentar un recurso
(o un requerimiento) puede restringir más, igual o menos el problema y por lo tanto la
contribución marginal total puede aumentar, no cambiar o disminuir, luego los costos
marginales pueden resultar positivos, nulos o negativos.
Análogamente, en un problema de minimización, por ejemplo un costo total, las
restricciones de ≤ son sobre recursos, aumentar un recurso restringe menos el problema y el
costo total sólo puede disminuir o permanecer constante, luego los costos marginales deben
ser ≤ 0. Si las restricciones son de ≥ se trata de requerimientos, por ejemplo los problemas
de dieta, y un incremento en los requerimientos restringe más el problema y el costo total sólo
puede aumentar o permanecer constante, luego los costos marginales deben ser ≥ 0. Si las
restricciones son ecuaciones, los recursos se deben utilizar totalmente (los requerimientos
satisfacer exactamente), y aumentar un recurso (o un requerimiento) puede restringir más,
igual o menos el problema y por lo tanto el costo total puede aumentar, no cambiar o
disminuir, luego los costos marginales pueden resultar positivos, nulos o negativos.
La Tabla 5-1 resume los distintos casos.

86 P. Lineal
Función obj. cTx max. min. max. max. max. min.
PRIMA Restricciones Ax ≤b ≥b =b ≤b ≥b ≤b
Variables x ≥0 ≥0 ≥0 no restr. ≥0 ≥0
Función obj. bTu min. max. min. min. min. max.
DUAL Restricciones ATu ≥c ≤c ≥c =c ≥c ≤c
Variables u ≥0 ≥0 no restr. ≥0 ≤0 ≤0
Tabla 5-1
Observación. Los casos

max. z = c T x min. s = b T u
 Ax ≥ b  AT u ≥ c ( 5-53)
 
 x≥0  u≤0
que aparecen en la tabla, presentados así, pueden tener soluciones no acotadas, lo que implica
que el dual no tiene solución. Sin embargo esto debe interpretarse de la siguiente manera: en
un problema puede haber mezcla de restricciones del tipo ≤, ≥ o =, entonces:
• A un problema de maximización le corresponde uno dual de minimización.
• A restricciones del tipo ≤ le corresponden variables duales ≥ 0
• A restricciones del tipo ≥ le corresponden variables duales ≤ 0
• A restricciones del tipo = le corresponden variables duales no restringidas.
• A variables primales ≥ 0 le corresponden restricciones duales del tipo ≥
• A variables primales no restringidas le corresponden restricciones duales del tipo =
Análogamente para el caso de minimización en el primal.

5.5 COSTOS MARGINALES EN CASO DE SOLUCIONES DEGENERADAS


Si la solución óptima es degenerada, z* como función de bi puede no ser derivable en
algunos puntos. Es decir, una variación en bi puede hacer que la base actual deje de ser
factible y se requiera un cambio de base. En tales casos el multiplicador simplex λi* no es el
verdadero costo marginal. No obstante se pueden demostrar las siguientes propiedades.2
Sea el siguiente par de problemas duales

max. z = c T x min. s = b T λ
 Ax = b  AT λ ≥ c ( 5-54)
Kp Kd 
 x≥0  λ no restringida
y sean

{
B0 = b | b ∈ ℜ m , K p (b) ≠ ∅ } ( 5-55)

C0 = {c | c ∈ℜ n , K d (c) ≠ ∅} ( 5-56)
luego para b ∈ B0 es Kp ≠ ∅ y para c ∈ C0 es Kd ≠ ∅.

2
Las demostraciones no serán hechas aquí.

P. Lineal 87
Entonces:
i) Los conjuntos B0 y C0 son convexos.
ii) Para cada b la función valor óptimo z*(b) = f (b) es convexa y lineal por tramos. Por lo
tanto existen las derivadas parciales por la izquierda y por la derecha de z*(b) para todo
par (b, c) perteneciente al interior de B0 × C0.
iii) Para toda solución óptima λ* se tiene

∂ z* ∂ z*
≤ λ *
≤ i = 1, 2,  , m ( 5-57)
∂ bi + i
∂ bi −

5.6 MÉTODO DUAL DEL SIMPLEX


Sea un PL en la forma canónica y su dual

max. z = c T x min. s = b T u
 Ax ≤ b  AT u ≥ c ( 5-58)
 
 x≥0  u≥0
Supongamos que en el problema primal hemos agregado variables de holgura para obtener
una base inicial identidad.
Sea B una base del primal y sea xB su correspondiente solución básica, no
necesariamente factible, y supongamos que para ella resultan todos los zj − cj ≥ 0, j = 1, 2,
…, n.
Si la solución es factible (xB ≥ 0) es óptima puesto que se cumple la condición de
optimización. Supongamos entonces que la solución no sea factible. Para esta solución
podemos construir una tabla de la forma siguiente (Tabla 5-2).

cT Esta tabla no es la que resultaría de


aplicar el método Simplex en la forma
habitual, pero evidentemente podemos
cB Y B -1 xB
construirla.
zj Sean uT = cB B −1 los multiplicadores
zj − cj Todos ≥ 0 Simplex en esta tabla y calculemos los zj
Tabla 5-2 − cj

z j − c j = c BT B −1 A j − c j = u T A j − c j ≥ 0 , j = 1, 2,  , n ( 5-59)

de donde

uT Aj ≥ c j , j = 1, 2,  , n ( 5-60)

la que se puede escribir en forma matricial


u T A ≥ cT ⇒ AT u ≥ c ( 5-61)

Es decir que los multiplicadores Simplex son solución del dual. La solución también es
factible. En efecto, si xj es la variable de holgura correspondiente a la i-ésima restricción, se

88 P. Lineal
tiene Aj = ei y además cj = 0. Luego, para las columnas correspondientes a las variables de
holgura (base identidad inicial) resulta:

z j − c j = c BT B −1 A j − c j = u T ei = ui ≥ 0 , j ∈IH , i = 1, 2,  , m ( 5-62)

donde IH indica el conjunto de los subíndices de las variables de holgura.


Resulta entonces que si en la tabla todos los zj − cj ≥ 0 se tiene una solución básica no
factible del primal pero también una solución básica factible del dual. ¿Se puede continuar
desde esta tabla para obtener la solución óptima del primal (y por lo tanto la del dual)?. La
respuesta es sí, aplicando el método dual del Simplex, que consiste en comenzar con una
tabla en la que exista factibilidad del dual (zj − cj ≥ 0) y generar nuevas tablas en las que se
mantenga la factibilidad del dual, aunque la solución primal no sea factible, y tales que
mejoren (o al menos no empeoren) la función objetivo. Cuando la solución primal sea factible
se tiene la solución óptima puesto que se cumple que zj − cj ≥ 0, j = 1, 2, …, n.
Observación. Si el problema primal es de minimización con restricciones de ≥ (el dual
será de maximización con restricciones de ≤), agregando variables de holgura se obtiene una
base identidad inicial pero la solución primal no es factible. Si en la tabla todos los zj − cj ≤ 0,
j = 1, 2, …, n, resulta

z j − c j = c BT B −1 A j − c j = u T A j − c j ≤ 0 ⇒ u T A j ≤ c j , j = 1, 2,  , n ( 5-63)

que se puede escribir en forma matricial


u T A ≤ cT ⇒ AT u ≤ c ( 5-64)

Además, dado que para las columnas correspondientes a las variables de holgura se tiene cj
= 0 y Aj = − ei, suponiendo que xj es la variable de holgura correspondiente a la i-ésima
restricción, resulta

z j − c j = cBT B −1 A j − c j = u T ( − ei ) = − ui ≤ 0 ⇒ ui ≥ 0 , j ∈IH , i = 1, 2,  , m ( 5-65)

Es decir que los multiplicadores Simplex constituyen una solución básica factible del dual
si en la tabla todos los zj − cj ≤ 0, j = 1, 2, …, n. Estamos en una situación análoga a la del
problema de maximización y se puede aplicar el algoritmo dual del Simplex. El óptimo se
alcanza cuando la solución primal sea factible.

5.6.1 Algoritmo dual del Simplex


Este algoritmo trabaja sobre las mismas tablas del Simplex (que ahora llamaremos primal
para diferenciarlo) y consiste en lo siguiente:3
1. Convertir todas las restricciones a ≤ y agregar variables de holgura.
2. Comenzar con una tabla para el problema primal en la que todos los zj − cj ≥ 0 (zj − cj ≤ 0
para problemas de minimización).
3. Si xB ≥ 0 la solución es óptima y la última tabla es la final. (Si algún xi = 0, i ∈ IB hay
una solución óptima alternativa que se puede obtener reemplazando esa variable por alguna
otra que no pertenezca a la base).

3
La demostración no será hecha aquí.

P. Lineal 89
Si xB no es factible, seleccionar como vector que sale de la base el que corresponda a la
variable básica
xk = min. {xi } ( 5-66)
i∈I B

4. Determinar el vector que entra en la base calculando

 z − c j 
τ j = min.  j , ykj < 0  ( 5-67)
j∉I B
 ykj 
Sea éste τl. Entonces entra el vector Al.
5. La columna Yl del vector que entra se transforma en un versor con pivote ykl = 1
mediante operaciones elementales sobre la matriz. Estas operaciones incluyen la columna
de la solución básica del primal.
6. Repetir desde 3 hasta que xB ≥ 0, que es la condición de optimización.
Si en 4 todos los ykj ≥ 0, el problema no tiene solución.

Ejemplo 5-5
Sea el siguiente problema
min. s = 2 x1 + x 2
 3 x1 + x2 ≥3
4 x + 3x 2 ≥6
 1

 x1 + 2 x2 ≥3
 xj ≥0

que se puede escribir


min. s = 2 x1 + x 2 + 0h1 + 0h2 + 0h3
 − 3x1 − x2 + h1 = −3
− 4 x − 3x2 + h2 = −6
 1

 − x1 − 2 x2 + h3 = −3
 x j ,hj ≥0

Observemos que como podemos trabajar con soluciones no factibles para el primal, no
hace falta agregar variables ficticias.
La tabla inicial es la siguiente

90 P. Lineal
2 1 0 0 0 xi
x1 x2 h1 h2 h3
0 h1 -3 -1 1 0 0 -3
0 h2 -4 -3 0 1 0 -6
0 h3 -1 -2 0 0 1 -3
zj 0 0 0 0 0
zj − cj -2 -1 0 0 0
τj = | zj − cj)/yij | |-2/-4| |-1/-3| ---- ---- ----
= 1/2 = 1/3

Sale h2 y entra x2 .
Con operaciones elementales llevamos la columna correspondiente a la variable x2 a la
forma de un versor. En estas operaciones se incluye la columna de la solución.
1ª iteración

2 1 0 0 0 xi
x1 x2 h1 h2 h3
0 h1 - 5/3 0 1 - 1/3 0 -1
1 x2 4/3 1 0 - 1/3 0 2
0 h3 5/3 0 0 - 2/3 1 1
zj 4/3 1 0 - 1/3 0
zj − cj - 2/3 0 0 - 1/3 0
τj = | zj − cj)/yij | 2/5 ---- ---- 1 ----

Sale h1 y entra x1.


2ª iteración

2 1 0 0 0 xi
x1 x2 h1 h2 h3
2 x1 1 0 - 3/5 1/5 0 3/5
1 x2 0 1 4/5 - 3/5 0 6/5
0 h3 0 0 1 -1 1 0
zj 2 1 -2/5 -1/5 0
zj − cj 0 0 -2/5 -1/5 0
τj = | zj − cj)/yij |

P. Lineal 91
Como xB ≥ 0 estamos en el óptimo:
x1* = 3 / 5 x2* = 6 / 5 h1* = h2* = h3* = 0 (la solución es degenerada).
s* = 2 × 3 / 5 + 6 / 5 = 12 / 5
Observación. Este método aparece como muy interesante por las evidentes ventajas que
tiene con respecto al de penalización y al de dos fases, pues no requiere variables ficticias y se
necesitan menos iteraciones. Sin embargo debe destacarse que es necesario disponer de una
tabla inicial con todos los zj − cj ≥ 0 (zj − cj ≤ 0 para problemas de minimización), lo que no
es fácil de obtener. El método es útil para el análisis postóptimo donde sí se satisfacen estas
condiciones.

5.7 EJERCICIOS
1 - Resolver los siguientes PL, plantear y resolver los problemas duales e interpretar los
resultados.
a) max. z = 6 x1 + 3 x2 + 2 x3 b) max. z = 5 x1 + 12 x2 + 4 x3
2 x1 + x2 + x3 ≤6  x1 + 2 x2 + x3 ≤5
 x + x2 ≤4 
 1 2 x1 − x2 + 3x3 =2
 
 x1 + x3 ≤5 xj ≥0

 xj ≥0

92 P. Lineal

También podría gustarte