4.3 INTERPRETACI´ON ECON´OMICA DE LA DUALIDAD El

Anuncio
4.3 INTERPRETACIÓN ECONÓMICA DE LA DUALIDAD
El problema de programación lineal se puede considerar como modelo de asignación
de recursos, en el que el objetivo es maximizar los ingresos o las utilidades, sujetos a
recursos limitados. Si se aprecia el problema desde este punto de vista, el problema dual
asociado ofrece interpretaciones económicas interesantes del modelo de programación
lineal de asignación de recursos.
Para formalizar la descripción se considerará la siguiente representación de los problemas generales primal y dual, en donde el primal asume el papel de un modelo de
asignación de recursos:
Primal
Maximizar z =
sujeta a
Pn
j=1
Dual
Pn
j=1 cj xj
Minimizar w =
sujeta a
aij xj ≤ bi , 1 = 1, 2, . . . , m
xj ≥ 0, j = 1, 2, . . . , n
Pm
i=1
Pm
i=1 bi yi
aij yi ≥ cj , 1 = 1, 2, . . . , n
yi ≥ 0, i = 1, 2, . . . , m
Desde el punto de vista de modelo de asignación de recursos, el problema primal
tiene n actividades económicas y m recursos. El coeficiente cj del primal representa la
utilidad por unidad de actividad j. El recurso i, cuya disponibilidad máxima es bi , se
consume con la tasa de aij unidades por unidad de actividad j.
4.3.1 Interpretación económica de variables duales
En la sección 4.2.5 se indicó que para dos soluciones factibles primal y dual cualquiera,
los valores de las funciones objetivo, cuando son finitos, deben satisfacer la siguiente
desigualdad:
z=
n
X
cj xj ≤
j=1
m
X
bi yi = w
i=1
La igualdad estricta, z = w, es válida cuando las soluciones primal y dual son óptimas
ambas.
Examinemos primero la condición óptima z = w. Como el problema primal rep1
resenta un modelo de asignación de recursos, se puede imaginar que z representa la
utilidad monetaria. Como bi representa la cantidad disponible de unidades del recurso
i, la ecuación z = w se puede expresar en forma dimensional como sigue:
P
$ = i (unidades del recurso i) × ($ por unidad del recurso i)
Eso quiere decir que las variables duales yi representan el valor por unidad del recurso
i. (En la sección 2.3.3 se obtuvo esta misma interpretación, por vı́a gráfica, sin usar la
dualidad.) En las publicaciones, las variables yi se conocen con el nombre abstracto de
precios duales. Otros nombres (que de igual manera no sugieren nada) son precios
sombra y multiplicadores sı́mplex. Con la misma lógica, la desigualdad z < w
asociada con dos soluciones asociadas, primal y dual, se interpreta como sigue:
(Utilidad) < (Valor de los recursos)
Según esta relación, siempre que los ingresos totales por todas las actividades sean
menores que el valor de los recursos, las soluciones primal y dual correspondientes no
son óptimas. La optimalidad (retorno máximo) sólo se alcanza cuando se han explotado
los recursos por completo, lo que sólo puede suceder cuando los datos (valor de los recursos) son iguales a los resultados ($ de utilidad). En términos económicos se dice que
el sistema permanece inestable (no óptimo) cuando los datos (valor de los recursos) son
mayores que el resultado (retorno o ingreso). La estabilidad sólo se obtiene cuando las
dos cantidades son iguales.
Ejemplo 4.3-1
El modelo de Reddy Mikks (ejemplo 2.1-1) y su dual son los siguientes:
Primal de Ready Mikks
Maximizar z = 5x1 + 4x2
sujeta a
6x1 + 4x2 ≤ 24 (recurso 1, M 1)
x1 + 2x2 ≤ 6 (recurso 2, M 2)
−x1 + x2 ≤ 1 (recurso 3)
x2 ≤ 2 (recurso 4)
xk ≥ 0, ∀ k
Solución óptima:
x1 = 3, x2 = 1.5, z = 21
Dual de Ready Mikks
Minimizar w = 24x1 + 6y2 + y3 + 2y4
sujeta a
6y1 + y2 − y3 ≥ 5
4y1 + 2y2 + y3 + y4 ≥ 4
yk ≥ 0, ∀k
Solución óptima:
y1 = 0.75, y2 = 0.5, y3 = y4 = 0, w = 21
2
En resumen, el modelo de Reddy Mikks maneja la producción de dos clases de pintura
(para exteriores y para interiores) usando dos materias primas, M 1 y M 2 (recursos 1
y 2) y sujeta a las condiciones del mercado representadas por las restricciones tercera
y cuarta. El modelo busca determinar las toneladas de pinturas para exteriores y para
interiores que maximicen la utilidad (expresada en miles de dólares).
La solución dual óptima indica que el valor por unidad de la materia prima M1
(recurso 1) es y1 = 0.75 (o sea, $750 por tonelada), y por unidad de materia prima M 2
(recurso 2) es y2 = 0.5 (es decir, $500 por tonelada). En la sección 2.3.3 mostramos
en forma gráfica que esos mismos resultados son válidos para los intervalos (20, 36) y
(4, 6.67), para los recursos 1 y 2, respectivamente (esos intervalos también se deducirán
en forma algebraica en la sección 4.5.1). Ası́, la materia prima M 1 se puede aumentar
desde su consumo actual de 24 toneladas, hasta un máximo de 36 toneladas, con un
aumento correspondiente en la utilidad de 12 × $750 = $9000. De igual forma, el lı́mite
para la materia prima M 2 puede aumentarse desde 6 toneladas hasta un máximo de
6.67 toneladas, con un aumento correspondiente en la utilidad de 0.67 × $500 = $335.
Se pueden mostrar interpretaciones parecidas si bajan las cantidades de materia prima
respecto a los niveles actuales, pero dentro de los intervalos de aplicabilidad indicados.
La explicación no quiere decir que los recursos mencionados no se puedan cambiar a
valores fuera de los intervalos citados. Sólo indica que la utilidad por unidad, para cada
recurso, sólo se aplica dentro de los márgenes especificados.
Para los recursos 3 y 4, que representan los requerimientos del mercado, los precios
duales (ambos valores duales óptimos) son cero, lo que indica que sus recursos asociados
son abundantes. De aquı́ que su valor por unidad es cero.
4.3.2 Interpretación económica de restricciones duales
Se pueden interpretar las restricciones duales, usando la fórmula 2 de la sección 4.2.4,
que indica que en cualquier iteración primal
(Coeficiente objetivo de xj ) =
Pm
i=1
aij yi − cj
De nuevo se aplicará el análisis dimensional para interpretar esta ecuación. La utilidad
cj por unidad de actividad
Pm j está en $ por unidad. En consecuencia, para tener consistencia, la cantidad i=1 aij yi también
P debe estar en $ por unidad. Además, como
cj representa una utilidad, la cantidad m
i=1 aij yi , que aparece en la ecuación con signo
contrario, debe representar un costo. Al mismo tiempo, como aij es la cantidad del
3
recurso i que usa la actividad j, las variables duales yi deben representar
costo imPal
m
putado por unidad de recurso i y se puede considerar que la cantidad i=1 aij yi es el
costo imputado de todos los recursos necesarios para producir una unidad de actividad j.
La condición de optimalidad de maximización del método sı́mplex indica que un aumento en la cantidad de una actividad, j noP
usada (no básica) puede mejorar la utilidad
sólo en caso de que su coeficiente objetivo ( m
i=1 aij yi − cj ) sea negativo. En función de
la interpretación anterior, esta condición establece que


Costo imputado de
 recursos por unidad  < Utilidad por unidad
de actividad j
de actividad j
Ası́, la condición de optimalidad de maximización indica que es económicamente
bueno aumentar una actividad a un valor positivo si su utilidad unitaria es mayor que
su costo imputado unitario.
Para que el lector se familiarice con la notación normal que se usa en las publicaciones presentaremos la definición que representa el costo imputado de los recursos
usados, por unidad de actividad j. La notación (zj − cj ) es el coeficiente objetivo de
xj en la tabla sı́mplex y se llama con frecuencia costo reducido de la actividad j. En
realidad, en algunos libros se usa (zj −cj ) para calcular en forma directa el coeficiente de
la ecuación objetivo (en lugar de usar operaciones de fila de Gauss-Jordan). El uso de
(zj − cj ) en los cálculos sı́mplex es, en realidad, una parte del método sı́mplex revisado
que describiremos más adelante.
Ejemplo 4.3-2
TOYCO arma tres juguetes: trenes, camiones y coches, con tres operaciones. Los
lı́mites diarios de tiempo disponible para las tres operaciones son 430,460 y 420 minutos,
respectivamente, y las utilidades por tren, camión y coche de juguete son $3, $2 y $5,
respectivamente. Los tiempos de armado por tren, en las tres operaciones son 1, 3 y 1
minutos, respectivamente. Los tiempos respectivos por camión y por coche son (2, 0, 4)
y (1, 2, 0) minutos (un tiempo de cero indica que no se usa la operación).
Si x1 , x2 y x3 representan la cantidad diaria de unidades armadas de trenes, camiones
y coches, y si el modelo de programación lineal correspondiente, y su dual son los
siguientes:
4
Primal de TOYCO
Dual de TOYCO
Maximizar z = 3x1 + 2x2 + 5x3
sujeta a
x1 + 2x2 + x3 ≤ 430 (operación 1)
3x1 + 2x3 ≤ 460 (operación 2)
x1 + 4x2 ≤ 420 (operación 3)
xk ≥ 0, ∀ k
Solución óptima:
x1 = 0, x2 = 100, x3 = 230, z = $1350
Minimizar z = 430y1 + 460y2 + 420y3
sujeta a
y1 + 3y2 + y3 ≥ 3
2y1 + 4y3 ≥ 2
y1 + 2y2 ≥ 5
yk ≥ 0, ∀ k
Solución óptima:
y1 = 1, y2 = 2, y3 = 0, w = $1350
La solución primal óptima indica producir camiones de juguete x2 = 100 y coches
de juguete x3 = 230, pero no armar trenes x1 = 0, porque no son rentables.
Suponga que la competencia obliga a TOYCO a producir también trenes de juguete.
¿Cómo se puede hacer la producción? Si se considera el problema desde el punto de
vista de la interpretación de z1 − c1 para x1 , los trenes de juguete tienen atractivo
económico sólo si z1 < c1 Ası́, TOYCO puede aumentar la utilidad por unidad de c1
aumentando el precio unitario de venta, o disminuyendo el costo imputado z1 de los
recursos usados z1 (= y1 + 3y2 + y3 ). Podrı́a no ser posible aumentar la utilidad por
unidad, porque TOYCO desea permanecer competitivo en el mercado. Es más plausible
una disminución en z1 , porque implica hacer mejoras en las operaciones de ensamble, que
principalmente reduzcan su uso unitario de tiempos disponibles para las operaciones.
Si r1 , r2 y r3 representan las proporciones con las que se reducen los tiempos unitarios
de las tres operaciones, el problema requiere determinar r1 , r2 y r3 de tal modo que el
nuevo costo imputado z1 de las tres operaciones sea menor que la utilidad unitaria c1 ;
esto es,
1(1 − r1 )y1 + 3(1 − r2 )y2 + 1(1 − r3 )y3 < 3
Para los valores dados de y1 = 1, y2 = 2 y y3 = 0, esta desigualdad se reduce a
(¡compruébelo!)
r1 + 6r2 > 4
Ası́, todos los valores de r1 y r2 entre 0 y 1 que satisfagan r1 + 6r2 > 4 deben hacer
que los trenes de juguete sean rentables. Sin embargo podrá ser que no se pueda alcanzar este objetivo, porque requiere reducciones en los tiempos de las operaciones 1 y 2,
5
que no parecen prácticas. Por ejemplo, aun reducciones hasta de 50% en esos tiempos
(esto es, r1 = r2 = 0.5) no satisfacen la condición dada.
4.4 OTROS ALGORITMOS SÍMPLEX PARA PROGRAMACIÓN LINEAL
En el algoritmo sı́mplex que presentamos primero, el problema se inicia en una
solución básica factible. Las iteraciones sucesivas siguen siendo básicas y factibles, pero
avanzan hacia la optimalidad, hasta llegar al óptimo en la última iteración. A veces se
llama método sı́mplex primal a este algoritmo.
Ahora introduciremos dos algoritmos más: el sı́mplex dual y el sı́mplex generalizado. En el sı́mplex dual, la programación lineal se inicia en una solución básica que
es (mejor que la) óptima, pero no es factible, y las iteraciones sucesivas siguen siendo
básica y (mejores que la) óptima, a medida que se acercan a la factibilidad. En la última
iteración se encuentra la solución factible (óptima). En el método sı́mplex generalizado
se combinan los métodos sı́mplex primal y dual en un solo algoritmo. Maneja problemas
que comienzan siendo no óptimos y no factibles a la vez. En este algoritmo se asocian las
iteraciones sucesivas con soluciones básicas (factibles o no factibles). En la iteración final
la solución es óptima y factible al mismo tiempo (suponiendo, claro está, que exista una).
Se pueden aplicar los tres algoritmos, el primal, el dual y el generalizado con eficacia
en los cálculos del análisis de sensibilidad, lo que se indicará en la sección 4.5.
4.4.1 Método dual sı́mplex
Como en el método sı́mplex (primal), la base el método sı́mplex dual es que cada
iteración siempre esté asociada a una solución básica. Las condiciones de optimalidad
y factibilidad se establecen para preservar la optimalidad de las soluciones básicas y al
mismo tiempo mover las iteraciones de la solución hacia la factibilidad.
Condición dual de factibilidad. La variable de salida xr es la variable básica que
tiene el valor más negativo (los empates se rompen en forma arbitraria). Si todas las
variables básicas son no negativas, termina el algoritmo.
Condición dual de optimalidad. La variable de entrada se determina entre las
variables no básicas, como la que corresponde a
6
zj − cj αrj , αrj < 0
no básica xj
mı́n
donde zj − cj es el coeficiente objetivo de la fila z en la tabla, y αrj es el coeficiente negativo de restricción de la tabla, asociado con la fila de la variable de salida
xr , y con la columna de la variable xj no básica. Los empates se rompen arbitrariamente.
Observe que la condición de optimalidad dual garantiza que se mantendrá la optimalidad en todas las iteraciones.
Para el inicio de una programación lineal que sea óptima y no factible a la vez, se
deben satisfacer dos requisitos:
1. La función objetivo debe satisfacer la condición de optimalidad del método sı́mplex
regular.
2. Todas las restricciones deben ser del tipo (≤).
Por la segunda condición se requiere convertir toda (≥) a (≤), sólo multiplicando
ambos lados de la desigualdad (≥) por −1. Si en la programación lineal hay restricciones
(=) se puede reemplazar la ecuación con dos desigualdades. Por ejemplo,
x1 + x2 = 2,
equivale a
x1 + x2 ≤ 1, x1 + x2 ≥ 1,
o bien
x1 + x2 ≤ 1, −x1 − x2 ≤ −1,
Después de convertir todas las restricciones en (≤), la programación lineal tendrá
una solución de inicio no factible si, y sólo si al menos uno de los lados derechos de las
desigualdades es estrictamente negativo. En caso contrario, si z es óptima y ninguno
de los lados derechos es negativo no habrá necesidad de aplicar el método sı́mplex dual,
porque la solución de inicio ya es óptima y factible.
7
Ejemplo 4.4-1
Maximizar z
3x1 + x2
4x1 + 3x2
x1 + x2
xk
=
≥
≥
≤
≥
3x1 + 2x2
3 (1)
6 (2)
3 (3)
0, ∀ k
En este ejemplo se multiplican por −1 las dos primeras desigualdades para convertirlas a restricciones (≤). Ası́, la tabla de inicio es:
Básica x1 x2 x3 x4 x5 Solución
z
−3 −2 0 0 0
0
x3
−3 −1 1 0 0
−3
x4
−4 −3 0 1 0
−6
x5
1
1 0 0 1
3
La tabla comienza óptima (todas las zj − cj ≤ 0 en la fila z) y la solución básica de
inicio es no factible (x3 = −3, x4 = −6, x5 = 3).
Según la condición dual de factibilidad, x4 (= −6) es la variable de salida. La tabla
siguiente muestra cómo se usa la condición dual de optimalidad para determinar la
variable de entrada.
Variable
x1
x2
x3
x4
x5
Fila de z (zj − cj )
−3 −2
Fila de x4 , α4j
−4 −3
zj −cj 3
2
Razón, α4j , α4j < 0
4
3
0
0
0
1
0
0
−
−
−
Las razones indican que x2 es la variable de entrada. Observe que una variable xj
es candidata para entrar a la solución básica sólo que su αij sea estrictamente negativa.
Eso quiere decir que no se deben tener en cuenta las variables x3 , x4 y x5 .
La siguiente tabla se obtiene con las conocidas operaciones de fila.
8
Básica
z
x1 x2 x3
x4 x5 Solución
−1/3 0 0 −2/3 0
4
x3
x2
x5
Razón
−5/3
4/3
−1/3
1/5
0
1
0
−
1 −1/3
0 −1/3
0
1/3
−
2
0
0
1
−
−1
2
1
Esta tabla muestra que sale x3 y entra x1 , y ası́ se obtiene la siguiente tabla:
Básica x1 x2
x3
x4 x5 Solución
z
0 0 −1/5 −3/5 0
21/5
x1
x2
x5
1
0
0
0 −3/5
1/5
1
4/5 −3/5
0 −1/5
2/5
0
0
1
3/5
6/5
6/5
Esta última tabla es factible (y óptima) por lo que se termina el algoritmo. La solución
correspondiente es x1 = 3/5, x2 = 6/5 y z = 21/5.
Para reforzar la comprensión del método sı́mplex dual por parte del lector, la figura
4.2 muestra en forma gráfica la trayectoria seguida por el algoritmo para resolver el ejemplo 4.4-1. Se inicia en el punto extremo A (que es no factible y mejor que el óptimo),
pasa a B (que todavı́a es no factible y mejor que el óptimo) y por último se vuelve
factible en C. En este punto termina el proceso, con C como solución óptima factible.
9
10
Descargar