Professional Documents
Culture Documents
pr ctico. Para o a cada modelo lineal se puede escribir el modelo dual asociado. Veremos que resolviendo uno de los modelos se obtiene la soluci n de ambos; en la tabla optima o del modelo resuelto aparece tambi n la soluci n optima del dual asociado. Algue o nas razones por las que conviene tener en cuenta la dualidad son las siguientes: 1. Teniendo en cuenta que el n mero de iteraciones del algoritmo simplex u depende m s del n mero de restricciones del modelo que del n mero de a u u variables, y dado que resolviendo un modelo lineal se obtiene tambi n la e soluci n del dual asociado, se puede elegir el modelo que conviene resolver o para obtener la soluci n de ambos. o 2. La dualidad permite hacer la interpretaci n econ mica del problema lineal. o o Veremos que la soluci n del problema dual da informaci n acerca de la o o soluci n del primal. o 3. Teniendo en cuenta las propiedades de la dualidad se construye un nuevo algoritmo, el simplex dual, que es m s ecaz que el simplex para calcular a la soluci n optima de algunos modelos lineales. Adem s, este nuevo algoo a ritmo se aplica en el an lisis de sensibilidad y la programaci n entera que a o se presentan en temas posteriores.
ww w.
at
em
at
ic a
1.c
om
max z = x1 3x2 + x3 sujeto a x1 x2 x3 2 x1 + 2x2 x3 3 x1 x2 + 2x3 1 x1 + x2 2x3 1 x1 , x2 , x3 0 2 Denici n 3.1.2 (Forma sim trica de minimizaci n) Un modelo lineal est eso e o a crito en forma sim trica de minimizaci n si e o el objetivo es minimizar, todas las restricciones son del tipo ,
ww
w.
at
em
at
ic
a1
.c om
todas las variables son no negativas. Ejemplo. Considerar el modelo lineal max z = x1 x2 sujeto a 3x1 + 2x2 1 x1 2x2 3 x1 , x2 0 la forma sim trica de minimizaci n es e o min (z) = x1 + x2 sujeto a 3x1 2x2 1 x1 2x2 3 x1 , x2 0
at em
at ic a1
.c
om
ww w.
Ejemplo. Dado el modelo lineal max z = 2x1 x2 + 3x3 sujeto a x1 x2 + x3 2 3x1 x2 + 2x3 1 x1 , x2 , x3 0 el dual asociado es min G = 2y1 + y2 sujeto a y1 + 3y2 2 y1 y2 1 y1 + 2y2 3 y1 , y2 0
ic a1
.c
om
Dado un modelo lineal primal y su correspondiente dual la relaci n que existe o entre las componentes de ambos modelos es la siguiente Si la matriz A del modelo primal es de tama o m n, el modelo primal n tiene m restricciones y n variables. La matriz del problema dual es AT y, por tanto, el modelo dual tiene n restricciones y m variables. El vector b es el vector de recursos del problema primal y es el vector de costes del problema dual. El vector c es el vector de costes del problema primal y es el vector de recursos del problema dual. El n mero de restricciones del primal es igual al n mero de variables del u u dual. El n mero de variables del primal es igual al n mero de restricciones del u u dual.
ww w.
at
em
at
at em
at
ic
a1
.c om
Demostraci n. En primer lugar escribimos el modelo primal en forma o sim trica de maximizaci n e o max z = cT x sujeto a Ax b x0 Por medio de la relaci n primal-dual dada en la secci n 3.1.1 obtenemos el o o dual min G = bT y sujeto a AT y cT y0 min G = bT y sujeto a A T y cT y0
ww w.
at
em
at ic
a1
.c
2 Caso 2. Si las restricciones del problema primal son del tipo =, entonces las variables del dual no tienen restricci n de signo. Es decir, dado el modelo o max z = cT x sujeto a Ax = b x0 el dual asociado es min G = bT y sujeto a AT y c y : no restringido
Demostraci n. Escribimos el modelo en forma sim trica de maximizaci n o e o max z = cT x sujeto a Ax b Ax b x0 El modelo dual asociado es min G = (bT , bT ) sujeto a (AT , AT )
om
u v u v
ic a
1.c
donde u y v son vectores de m componentes. El modelo dual se puede escribir min G = bT (u v) sujeto a AT (u v) c u, v 0 Haciendo el cambio de variable y = u v , se tiene min G = bT y sujeto a AT y c y : no rest.
ww w.
at e
u, v 0
at
Ejemplo. Dado el modelo primal max z = x1 4x2 x3 sujeto a x1 + x2 x3 4 2x1 + 3x2 5x3 2 2x1 x2 + 2x3 = 6 x1 0, x2 0, x3 : no rest. utilizando las relaciones de la Tabla 3.1 el modelo dual es min G = 4y1 + 2y2 + 6y3 sujeto a y1 + 2y2 + 2y3 1 y1 + 3y2 y3 4 y1 5y2 + 2y3 = 1 y1 0, y2 0, y3 : no rest.
em
at
ic a
1.c
om
w.
at
Demostraci n. Considerar el problema dual o min G = bT y sujeto a AT y c y0 Para calcular el dual de este problema lo escribimos en forma sim trica de maxie mizaci n o max (G) = bT y sujeto a AT y c y0 Utilizando la relaci n primal-dual, el dual de este problema es o min (z) = cT x sujeto a Ax b x0 que escrito en forma equivalente es el modelo primal max z = cT x sujeto a Ax b x0 2 De este teorema se puede concluir que si el objetivo primal es minimizar como ocurre en la forma dual sim trica, entonces el objetivo dual es maximizar. Tee niendo en cuenta este resultado, para calcular el dual de un modelo cuyo objetivo es minimizar las relaciones de la Tabla 3.1 se leen de derecha a izquierda.
ww w.
at
em at
ic a
1.c
om
Ejemplo. Dado el modelo lineal min z = x1 4x2 x3 sujeto a x1 + x2 x3 4 2x1 + 3x2 5x3 2 2x1 x2 + 2x3 = 6 x1 0, x2 0, x3 : no restringida por medio de la Tabla 3.1 calculamos el dual max G = 4y1 + 2y2 + 6y3 sujeto a y1 + 2y2 + 2y3 1 y1 + 3y2 y3 4 y1 5y2 + 2y3 = 1 y1 0, y2 0, y3 : no restringida
em
at
ic
a1
.c
om
Teorema 3.2.2 (Dualidad d bil) Sean x e y soluciones factibles para los problee mas primal y dual respectivamente. Entonces, se verica z = cT x bT y = G. Demostraci n. o Por ser x soluci n factible primal, entonces se cumple Ax b, x 0. o Por ser y soluci n factible dual, entonces se cumple AT y c, y 0. o Premultiplicando por yT la desigualdad Ax b y por xT la desigualdad AT y c se tiene yT Ax yT b = bT y, xT AT y xT c = cT x. Dado que xT AT y = yT Ax , entonces se verica z = cT x yT Ax bT y = G. 2
ww w.
at
Del teorema anterior se puede concluir que el valor m ximo del objetivo pria mal es una cota inferior del valor mnimo del objetivo dual. Y, recprocamente, el valor mnimo del objetivo dual es una cota superior del valor m ximo del objetivo a primal. Los siguientes resultados son consecuencia del teorema anterior. Corolario 3.2.1 Si las soluciones factibles x e y verican cT x = bT y , entonces x e y son soluciones optimas para el primal y el dual respectivamente. Demostraci n. El teorema de dualidad d bil asegura que para cualquier par de o e soluciones x e y se verica cT x bT y. Si tomamos la soluci n dual y se verica cT x bT y . Dado que cT x = bT y , o para cualquier soluci n x del problema primal se tiene o cT x cT x , de donde se deduce que x es soluci n optima del problema primal. o De la misma forma bT y = cT x bT y.
ww w.
Corolario 3.2.2 Si el problema primal es factible y no acotado, el dual es infactible. Demostraci n. Teniendo en cuenta que cualquier par de soluciones x e y verio can cT x bT y , si el objetivo primal no est acotado, no existe una soluci n a o y para el dual que sea una cota superior para el problema primal. Por tanto el problema dual no tiene soluci n. o De forma similar se deduce el siguiente resultado. Corolario 3.2.3 Si el problema dual es factible y no acotado, el primal es infactible.
at
em
at
ic a
1.c
om
Si el problema primal es infactible, el dual puede ser infactible o no acotado. Y si el problema dual es infactible el primal puede se infactible o no acotado. Ejemplo. Si consideramos los siguientes problemas primal y dual se puede observar que en este ejemplo se cumple el resultado del Corolario 3.2.2. En este caso el problema primal es no acotado y el problema dual es infactible.
ww
w.
x2
at
Resolviendo gr camente podemos ver que el problema primal es no acotado a y el dual no tiene soluci n. o
em
2x1 + x2 = 2
at
max
ic a
1.c
om
x1 2x1 + x2 = 4
y2
y1
2y1 + 2y2 = 3
y1 + y2 = 2 2
at
em at
x1 + x2 2 2x1 x2 3 x1 + 3x2 5 x1 , x2 0
ic
Teorema 3.2.3 (Principio fundamental de la dualidad.) Si existe una soluci n o optima x del problema primal, entonces existe una soluci n optima y del proo blema dual. De la misma forma, si existe una soluci n y optima del problema o dual, entonces existe una soluci n x optima del problema primal. En ambos o casos z = cT x = bT y = G .
a1
Cualquier par de soluciones verica z G. Por ejemplo, xT = (1, 1) es soluci n factible para el primal porque cumple las resticciones; por otra parte, o yT = (1, 1, 1) es soluci n factible para el dual. Se verica z = 5 10 = G. o Las soluciones optimas para estos problemas son xT = 1 3 , 2 2 e yT = 3 1 , 0, 2 2
11 2
.c om
. 2
= G .
Por otra parte, las soluciones optimas para el primal y el dual, x e y , son vectores que no tienen componentes negativas. Por tanto, si premultiplicamos las desigualdades anteriores por yT y por xT , respectivamente, se tienen las desigualdades xT (AT y c) 0, yT (b Ax ) 0.
La tesis del teorema de holgura complementaria asegura que la suma de los dos primeros miembros de las desigualdades anteriores es cero y, teniendo en cuenta que los dos sumandos son mayores o iguales que cero, podemos concluir que los dos sumandos deben ser cero simult neamente, es decir a xT (AT y c) = 0, yT (b Ax ) = 0.
ww
w.
M at
b Ax 0, AT y c 0.
em
at
ic
Dadas soluciones optimas x e y del primal y del dual, respectivamente, las restricciones de ambos problemas se pueden escribir de la siguiente forma:
a1
.c om
En las dos ecuaciones anteriores se tiene el producto de dos factores no negativos igualado a cero; si uno de los factores no es cero debe ser cero el otro. As, se pueden extraer las siguientes conclusiones que permiten calcular la soluci n de o un problema conocida la del otro. 1. Si una variable primal es estrictamente positiva, la correspondiente restricci n o dual se verica con igualdad, no requiere variable de holgura positiva. Es decir, x > 0 AT y c = 0. 2. Si una restricci n primal no se verica con igualdad, la correspondiente o variable dual toma el valor cero. Es decir, Ax < b y = 0. 3. Si una variable dual es estrictamente positiva, la correspondiente restricci n o primal se verica con igualdad. Es decir,
4. Si una restricci n dual no se verica con igualdad, la correspondiente variao ble primal tomar el valor cero. Es decir, a
ww w.
AT y > c x = 0.
Ejemplo. Dado el problema lineal max z = 3x1 + x2 2x3 sujeto a x1 + 2x2 + x3 5 2x1 x2 + 3x3 4 x1 , x2 , x3 0 cuya soluci n optima es xT = ( 13 , 6 , 0), calcularemos la soluci n dual utio o 5 5 lizando el teorema de holgura complementaria.
at
em
y > 0 Ax b = 0.
at
ic
a1
.c om
El problema dual correspondiente es min G = 5y1 + 4y2 sujeto a y1 + 2y2 3 2y1 y2 1 y1 + 3y2 2 y1 , y2 0 Restando variables de holgura min G = 5y1 + 4y2 + 0y3 + 0y4 + 0y5 sujeto a y1 + 2y2 y3 2y1 y2 y1 + 3y2 y4
om
=3 =1 y5 = 2
ww
w.
Utilizando las conclusiones del teorema de holgura complementaria, calculamos la soluci n optima del problema dual. o
at
em
>0 >0
+2
13 5
6 5 6 5
=5 =4
Sustituyendo en el sistema de restricciones duales los valores cero para las variables de holgura y3 e y4 , se tiene el sistema
y1 + 2y2 = 3 2y1 y2 = 1 y1 + 3y2 y5 = 2
at
y1 , y2 , y3 , y4 , y5 0
ic a
1.c
Entonces,
La ultima desigualdad se puede escribir en forma traspuesta AT (cT B1 )T c. B El sistema anterior es el sistema de restricciones del dual. Por tanto, el vector y = (cT B1 )T es soluci n para el dual. o B Para comprobar si es factible calculamos los indicadores asociados a los vectores de I, cT B1 I cT . B I Dado que las variables del vector xh son de holgura, cI = 0 y se tiene cT B1 I = cT B1 0T . B B Por tanto, las componentes del vector y = (cT B1 )T son no negativas. B
ww
w.
zj = cT yj = cT B1 aj . B B
cT B1 A cT . B
at
em
Si B es la base optima para el primal y xB la soluci n factible b sica optima, o a entonces zj cj 0 para todo vector aj de la matriz A.
at
ic a1
.c o
Comprobaremos que y es optima comprobando que los objetivos primal y dual coinciden. z = cT xB = cT B1 b = bT (cT B1 )T = bT y = G . B B B Por ser los objetivos iguales, se deduce que y = (cT B1 )T es soluci n optima o B para el dual. 2
zj cj = cT B1 aj cj . B
M at
cT B1 I cT = cT B1 cT . B I B I
em
at ic
a1
x1
x2
x3 x4 x5 2 1 3 0 1 0 0 0 0 5 1 4
3 1 a4 a5 1 2
2 1
x5 1 1 5
2 5
9
6 5 13 5
1 1 5 0
7 5
Soluci n optima del primal: o 13 6 , x2 = , x3 = 0, z = 9. 5 5 Para calcular la soluci n optima dual en la tabla se observa que la primera o base est formada por variables de holgura. En la tabla optima, las columnas a 1 correspondientes a x4 y x5 proporcionan B y la soluci n optima del dual est o a asociada a los indicadores de dichas variables, (z4 c4 , z5 c5 ) = cT B1 I cT = (1, 1) cT . B I I Teniendo en cuenta que cT = (c4 , c5 ) = (0, 0), I yT = cT B1 = (1, 1) B es soluci n optima del problema dual. El valor de la funci n objetivo dual es o o G = 9. 2 Ejemplo. Considerar el modelo lineal min z = x1 + 2x2 sujeto a 4x1 + 3x2 12 x1 + 3x2 6 2x1 + x2 4 x1 , x2 0
ww w.
at e
at
ic a
1.c
x = 1
om
Para iniciar el algoritmo simplex son necesarias, adem s de las variables de hola gura, 2 variables articiales, w1 y w2 . max (z) = x1 2x2 + 0x3 + 0x4 + 0x5 Mw1 Mw2 sujeto a 4x1 + 3x2 +x3 x1 + 3x2 2x1 + x2 x4 x5 +w1 +w2 = 12 =6 =4
x4
M
x5
.c
w1
0
w2
0 10M
3M + 1 4M + 2 0 M M
at em
aw1 aw2
5M + 3
1 2
1 3
3 1
0
ww
0
w.
at
ic
a3
a1
0
om
0 0 1
M
4 3M
0 1 0
2 3
0 0 1
12 6 4
1 0
2 3
1 3
M
1 0 3M +
0 2M 4
0 2 M
a3 a2 aw2
3
1 3 5 3
0 1 0
0
1 0 0
0
1 1 3
1 3
3 5
0 0 1
1 5
1
1 3 1 3
0 0 1
M
1 5
6 2 2
22 5
12 5 8 5 6 5
9 5 1 5
0 0 2 1
3 5
a3 a2 a1
0 0 1
0 1 0
1 0 0
2 5
9 5 1 5
2 5
2 5
9 5 1 5
3 5
2 5
1 5
3 5
1 5
Para calcular la soluci n optima del dual vemos que en la primera tabla las columo nas correspondientes a las variables x3 , w1 y w2 forman la matriz identidad. En la tabla optima las columnas correspondientes a las mismas variables proporcio 1 nan B y la soluci n optima del dual esta asociada a los indicadores de dichas o variables. 1 3 (z3 c3 , zw1 cw1 , zw2 cw2 ) = cT B1 I cT = (0, M , M ). B I 5 5 Teniendo en cuenta que cT = (c3 , cw1 , cw2 ) = (0, M, M), I 3 1 yT = cT B1 cT + cT = (0, M , M ) + (0, M, M). B I I 5 5 En principio podramos decir que la soluci n optima dual es o 3 1 yT = (0, , ). 5 5 Sin embargo, es necesario comprobar si el signo de las variables es correcto. Si calculamos el problema dual asociado al ejemplo, podemos ver que y2 e y3 deben ser no negativas. En este caso los valores obtenidos de la tabla para dichas variables son negativos. Esto es debido a que la la de indicadores de la tabla optima est inuenciada por los cambios que se han hecho en la funci n objetivo a o para aplicar el algoritmo. En este ejemplo el objetivo inicial es minimizar y lo hemos adecuado a maximizar, por eso los signos obtenidos no son los correctos. Por tanto, la soluci n optima del dual es o 3 1 22 y1 = 0, y2 = , y3 = , G = . 5 5 5 2 La incorrecci n en el signo de los valores de la tabla para ser asignados a o las variables duales aparece tambi n cuando se cambia el sentido de alguna rese tricci n primal antes de aplicar el algoritmo. Estos cambios se pueden explicar o observando las relaciones primal-dual de la Tabla 3.1 de la p gina 87. Lo que a se puede concluir es que el valor absoluto de las componentes del vector cT B1 B coincide con el valor absoluto de las variables duales optimas.
ww w.
at
em
at
ic
a1
.c
om
o no conveniente cambiar el nivel de recursos en el modelo. Esta informaci n la o proporcionan los precios sombra que denimos a continuaci n. o
T T T T T G = y (b + b) = y b + y b = G + y b = z + y b.
Se puede concluir que un cambio en el vector b que mantenga la factibilidad primal produce los siguientes cambios en la soluci n del problema: o las componentes de la soluci n optima dual se mantienen, o las componentes de la soluci n primal cambian en la cantidad B1 b, o los valores objetivo primal y dual cambian en la cantidad yT b. La conclusi n es que si se incrementa el vector de recursos y se verica que o 1 xB = B (b + b) 0 , entonces xB es la nueva soluci n optima para el proo blema primal e y sigue siendo soluci n optima para el dual. El valor optimo de o T ambos objetivos se incrementa en la cantidad y b.
ww
El valor de la funci n objetivo primal y dual cambian en funci n del increo o mento en el vector de recursos.
w.
at
em
at
zj cj = cT B1 aj cj . B
ic
a1 .c
Para poder interpretar el signicado de cada variable dual supongamos que bi = 1 y el resto es cero, entonces el incremento del objetivo es 0 . . . yT b = (y1 , . . . , yi , . . . , ym ) 1 = yi . . . . 0 Es decir, si s lo se incrementa el recurso i en una unidad y la factibilidad prio mal no se pierde, entonces la cantidad en la que se incrementa la funci n objetivo o es el valor optimo de la correspondiente variable dual, yi .
Denici n 3.5.1 (Precio sombra) La variable dual optima yi se llama precio o sombra del recurso i, i = 1, . . . , m, si haciendo un cambio unitario en el recurso i y manteniendo el resto de recursos, no se pierde la factibilidad primal.
La misma interpretaci n para el recurso b2 . Supongamos en este caso que o b2 = 4 es sustituido por b2 + b2 = 3. Calculamos 2 1 7 5 5 = 5 . xB = B1 (b + b) = 5 1 2 11 3 5 5 5
ww
w.
M at
Ejemplo. Consideremos el ejemplo de la p gina 100. Veamos si los valores a de la soluci n dual optima, y1 = 1 e y2 = 1, son los precios sombra de los o respectivos recursos b1 y b2 .
em
at
ic
a1
.c om
La factibilidad primal no se pierde porque xB 0. Podemos decir que y2 es el precio sombra del recurso b2 . El nuevo valor optimo de la funci n o objetivo es z = z y2 = 9 1 = 8.
En este caso el valor optimo de la funci n objetivo disminuye el precio o sombra y2 porque el incremento del recurso segundo es negativo. 2 Ejemplo. Para el ejemplo de la p gina 101 la soluci n optima del problema a o dual es 1 3 y1 = 0 , y2 = , y3 = . 5 5 Supongamos que el recurso primero aumenta en una unidad, de b1 = 12 a b1 + b1 = 13 . Calculamos 2 9 17 1 5 5 13 5 8 1 2 1 xB = B (b + b) = 0 5 6 = 5 0. 5 6 3 0 1 4 5 5 5
Como la factibilidad primal se mantiene, se puede decir que la variable y1 es el precio sombra del recurso 1. Observamos, sin embargo, que el valor de la funci n o objetivo no cambia porque el precio sombra es y1 = 0. Es decir,
ww w.
at
em
z = z + y1 =
El precio sombra del recurso primero igual a cero coincide con el hecho de que la primera restricci n del problema primal se verica con desigualdad. Si comproo bamos la restricci n 4x1 + 3x2 12 para los valores optimos x = 6 , x = 8 , o 1 2 5 5 4 6 8 + 3 < 12. 5 5
Esto signica que hay recurso primero en exceso y, por tanto, aumentar la cantidad del primer recurso no tiene ninguna inuencia en el valor optimo. En este caso se puede considerar la posibilidad de disminuir la cantidad de dicho recurso. 2
at ic
22 22 +0= . 5 5
a1
.c
om
3.5.2 Coste econ mico de las variables primales e interpretaci n o o del m todo simplex e
Una manera sencilla de entender el coste econ mico de las variables primales es o a trav s de un ejemplo. e En una empresa se fabrican 4 productos: 1, 2, 3 y 4. En la producci n se o utilizan 3 recursos: A, B y C. En la Tabla se da la cantidad de recurso necesario por unidad de producto, la disponibilidad de cada recurso y el benecio unitario. Productos Recurso A B C Benecio 1 2 2 5 4 2 3 4 Disponibilidad Recurso 300 500 250
om
3 1.5 4 4 1 3 3 2 6 1 2
max z = 4x1 + 3x2 + 6x3 + 2x4 sujeto a 2x1 + 3x2 + 1.5x3 + 4x4 300 2x1 + 4x2 + 3x3 + x4 500 5x1 + x2 + 2x3 + 2x4 250 x1 , x2 , x3 , x4 0 Supongamos ahora que una empresa competidora quiere comprar los recursos b1 = 300, b2 = 500 y b3 = 250. El objetivo de la segunda empresa es obtener los recursos a mnimo coste; si el precio unitario que paga por los recursos A, B y C es y1 , y2 e y3 , respectivamente, el objetivo ser a min G = 300y1 + 500y2 + 250y3 .
ww
w.
Sean xj , j = 1, 2, 3, 4, las unidades del producto j que se producen. Podemos plantear el siguiente modelo lineal para este problema de producci n. o
at e
at ic
a1 .c
Podemos suponer que la primera empresa no vender los recursos por un precio a (coste econ mico) inferior al que consigue por su uso en la producci n (benecio). o o Para una unidad del producto 1, la primera empresa utiliza 2 unidades de A, 2 unidades de B y 5 de C y el benecio por la producci n es 4. Si vende estas o unidades a la segunda empresa ganar 2y1 + 2y2 + 5y3 , ese es el coste econ mico a o de la actividad 1. Por tanto, la empresa s lo estara dispuesta a ceder los recursos o si el coste econ mico de llevar a cabo la actividad es superior al benecio. Es o decir, si se verica la siguiente restricci n que es la primera del modelo dual. o 2y1 + 2y2 + 5y3 4. Haciendo la misma interpretaci n para los otros tres productos se tiene el siguiente o modelo dual: min G = 300y1 + 500y2 + 250y3 sujeto a 2y1 + 2y2 + 5y3 4 3y1 + 4y2 + y3 3 1.5y1 + 3y2 + 2y3 6 4y1 + y2 + 2y3 2 y1 , y2 , y3 0 En el algoritmo simplex, una variable no b sica xj puede pasar a ser b sica a a en una iteraci n posterior si su indicador zj cj es negativo. La raz n de esta o o condici n es que el indicador de la variable xj es la restricci n j del problema o o dual y, cuando es negativo, lo que ocurre es que el coste econ mico de la actividad o es menor que el benecio y eso signica que es rentable su producci n. Esto se o ve en las siguiente f rmula: o
m
ww w.
zj cj = cT B1 aj cj = yT aj cj = B
i=1
at
em at
ic
a1
.c om
aij yi cj .
Si zj cj < 0, entonces
m
aij yi < cj .
i=1
Es decir, el coste econ mico de la actividad j es menor que el benecio cj asociao do a la producci n de dicha actividad. o
El objetivo es maximizar. Se elige como primera base la matriz B = I formada por variables de holgura. Paso 1. Construir la primera tabla en la que zj cj 0 para todo vector aj de la matriz A. Paso 2. Con respecto a la factibilidad primal, se pueden dar dos casos. Si xBi 0, i = 1, . . . , m, entonces la soluci n es optima. Parar. o Si existe xBi < 0, entonces la soluci n se puede mejorar. Ir al Paso 3. o Paso 3. Cambio de base. Sale de la base el vector ar que verica la condici n o xBr = min{xBi /xBi < 0}.
i
La la r es la la pivote.
ww
w.
at
em
at
ic a
1.c
om
Entra en la base el vector ak que verica la condici n o zk ck = max j yrk zj cj /yrj < 0 . yrj
La columna k es la columna pivote. yrk es el pivote. Si no existe yrj , j = 1, . . . , n, negativo, entonces el problema es infactible. Parar. Paso 4. Calcular una nueva tabla con las mismas operaciones elementales denidas en el algoritmo simplex. Ir al Paso 2.
Ejemplo. Sea el modelo lineal min z = 3x1 + 2x2 sujeto a x1 + 2x2 3 2x1 + x2 2 x1 + 4x2 7 x1 , x2 0 Para resolverlo utilizando el algoritmo simplex dual escribimos el modelo en forma sim trica de maximizaci n e o max (z) = 3x1 2x2 sujeto a x1 2x2 3 2x1 x2 2 x1 4x2 7 x1 , x2 0 Sumamos una variable de holgura en cada restricci n para escribirlas con igualo dad.
ww w.
M at
em at
ic
a1
.c o
max (z) = 3x1 2x2 + 0x3 + 0x4 + 0x5 sujeto a x1 2x2 + x3 = 3 2x1 x2 + x4 = 2 x1 4x2 + x5 = 7 x1 , x2 , x3 , x4 , x5 0 Paso 1. Construir la primera tabla. x1 3 a3 1 a4 2 x2 x3 x4 x5 2 2 1 4 0 1 0 0 0 0
.c om
1 0 2 1 2 1 4
0 3 0 2 1 7
1 0
Paso 2. En esta tabla todos los indicadores zj cj son no negativos, es decir, hay factibilidad dual y es posible aplicar el algoritmo simplex dual. No hay factibilidad primal y, por tanto, la soluci n se puede mejorar. o 3 xB = 2 0. 7 Paso 3. Cambio de base. xB3 = min{3, 2, 7} = 7. Sale de la base el vector a5 . La la 3 es la la pivote. zk ck = max yik 3 2 , 1 4 1 z2 c2 = = . 2 y22
ww w.
at
em at
a5 1
ic
a1
Paso 4. Calcular la nueva tabla. El pivote es 4, el multiplicador para la primera la es 1 , el multiplicador para la la segunda es 1 y el multiplicador 2 4 para la la de indicadores 1 . 2 Haciendo operaciones elementales por las se tiene la siguiente tabla: x1
5 2 1 0 a3 2
x2 x3 x4 0 0 0 1 0 1 0 0 0 0 1 0
x5
1 2 1 2
7 2 2
1 2
0 a4 2 a2
9 4 1 4
1 4
1 4
1 4
7 4
0 a5 9 2 a2 2
ww
w.
0 a3 4
at
em
at
x1
x2 x3
a1
0
.c
x4 2
om
Volviendo al Paso 2 vemos que no hay factibilidad primal y hay que hacer una nueva iteraci n. Sale de la base el vector a4 y entra el vector a5 . La nueva tabla o es x5 0 4 0 1 0 1 1 2
0 0 1
Volviendo al Paso 2 vemos que en esta tabla hay factibilidad primal y, por tanto, es optima. La soluci n optima es o x = 0, x = 2 y el valor objetivo optimo z = 4. 1 2 2
ic
1 2 0 4 0 1
que pueda ser aplicado para resolver cualquier modelo lineal es el m todo de la e restricci n articial. o Cuando no hay factibilidad dual en la tabla inicial, se trata de a adir una resn tricci n articial al modelo que se pretende resolver. Esta restricci n articial no o o deber modicar la regi n de factibilidad del problema. Se a ade con el unico a o n objetivo de obtener factibilidad dual en la tabla y, a partir de ah, poder continuar con el algoritmo simplex dual. La restricci n articial que se a ade es o n xj M,
jN
donde N es el conjunto de variables para las que zj cj es negativo en la primera tabla y M es un valor positivo muy grande de manera que la restricci n o a adida no modique la regi n de soluciones. n o Ejemplo. Dado el modelo lineal max z = x1 + 6x2 sujeto a x1 + 2x2 20 1 1 x1 + x2 2 2 x1 , x2 0 Escribimos el modelo en forma sim trica de maximizaci n y sumamos una e o variable de holgura en cada restricci n. o max z = x1 + 6x2 + 0x3 + 0x4 sujeto a x1 + 2x2 + x3 = 20 1 1 x1 x2 + x4 = 2 2 x1 , x2 , x3 , x4 0 Elegimos la matriz B = I = (a3 a4 ) y se construye la primera tabla x1 1 a3 a4 1 1 x2 6 2 1 2 x3 0 1 0 x4 0 0 0 20
ww w.
at
em
at ic
a1
.c
om
1 1 2
El problema es que en esta tabla no hay factibilidad dual como requiere el algoritmo simplex dual. Para poder tener una tabla asociada a este problema y con factibilidad dual a adimos al problema una restricci n articial, en este caso n o x1 + x2 M. Sumando una variable de holgura a la restricci n articial se tiene el siguiente o modelo: max z = x1 + 6x2 + 0x3 + 0x4 + 0x5 sujeto a x1 + 2x2 + x3 = 20 1 1 x1 x2 + x4 = 2 2 x1 + x2 + x5 = M x1 , x2 , x3 , x4 , x5 0
x1 1 0 0 0 a3 a4 a5 1 1 1
x2
at em
x3 0 1 0 0
at ic a1
x4 0 0 1 0
Podemos elegir la matriz B = I = (a3 a4 a5 ) y construir la primera tabla asociada al modelo con restricci n articial o
.c
ww w.
6 2
om
x5 0 0 0 20 6 2 1 2
1 2 1
0 1 2 1 M
En el algoritmo simplex dual con restricci n articial se detalla el primer camo bio de base para obtener una tabla con factibilidad dual. 2
un problema cuya regi n de soluciones es la que aparece sombreada en la gr ca. o a Si la restricci n articial es x1 + x2 M, con M sucientemente grande, la o restricci n articial no afecta a la regi n de soluciones (ver gr ca). o o a x2 opt x1 + x2 = M
(x , x ) 1 2
x1
Si, por el contrario, el valor de M no es sucientemente grande, vemos en la siguiente gr ca que se pierden puntos de la regi n; los puntos de la zona a o sombreada que no son de la rayada ya no pertenecen a la regi n de soluciones del o problema cuando se a ade la restricci n articial x1 + x2 M (ver gr ca). n o a x2 x1 + x2 = M opt
ww w.
M at
em at
ic
(x , x ) 1 2 x1
a1
.c o
Por ultimo, en el caso en que un problema tenga una regi n no acotada, al o a adir una restricci n articial, por muy grande que sea el valor de M, la regi n n o o de soluciones pierde puntos. Esto se puede ver en la siguiente gr ca. a x2
opt x1 + x2 = M
x1
om
ww w.
Como conclusi n de los dos casos anteriores podemos decir que cuando la o variable de holgura de la restricci n articial no est en la base optima puede ser o a por dos razones: M no es sucientemente grande o la soluci n es no acotada. o
at em
at ic a1
.c
Sale el vector de holgura de la restricci n articial. o Hacer operaciones elementales para conseguir factibilidad dual. Ir al Paso 3. Paso 3. Factibilidad primal. No hay restricci n articial. o Si xBi 0, i = 1, . . . , m, entonces soluci n optima. Parar. o Si para alg n i = 1, . . . , m, xBi < 0, entonces la soluci n se u o puede mejorar. Ir al Paso 4. Si hay restricci n articial. o Si xBi 0, i = 1, . . . , m y la variable de holgura de la restricci n o articial est en la base con valor positivo, entonces soluci n a o optima. Parar. Si xBi 0, i = 1, . . . , m y la variable de holgura de la restricci n o articial no est en la base o siendo b sica vale cero, soluci n no a a o acotada. Parar. Si existe xBi < 0 para alg n i = 1, . . . , m, entonces la soluci n u o se puede mejorar. Ir al Paso 4.
ww w.
Sale de la base el vector ar que verica xBr = min{xBi /xBi < 0}.
i
La la r es la la pivote. Entra en la base el vector ak que verica zk ck = max j yrk zj cj /yrj < 0 . yrj
La columna k es la columna pivote. El elemento yrk es el pivote. Si no existe en la la r ning n elemento yrj negativo, entonces problema u infactible. Parar Paso 5. Calcular una nueva tabla haciendo operaciones elementales. Ir al Paso 3.
at
em
at ic
a1
.c o
x5 0 0 0 20 6 2 1 2
at ic a1
x3 0 1 0 0 x4 0 x5
0 1 2 1 M
Se hace el siguiente cambio de base para obtener factibilidad dual. Entra en la base el vector asociado al indicador negativo m s peque o, a2 , y sale de la base el a n vector de holgura de la restricci n articial, a5 . Haciendo opraciones elementales o se tiene la siguiente tabla: x1 5 0 0 6 a3 a4 a2 1 1 2 1 x2 0 0 0 1
ww w.
M at
em
6M 2M + 20
1 M 2
0 2 1 0
1 2
1 2
Se observa que en la tabla hay factibilidad dual y se puede continuar con los pasos del algoritmo. Sale de la base el vector a3 y entra el vector a5 y con las operaciones elementales habituales se obtiene la siguiente tabla:
x1 2 0 0 6 a5 a4 a2
1 2
x2 0
x3 3
x4 0 0 1 0
x5 0 60
1 0 2
1 M 10 0 0
9 2
3 4
1 2
0 1
1 4 1 2
10
En esta tabla hay factibilidad primal y la variable de holgura de la restricci n o articial es b sica; la soluci n optima es x1 = 0 , x2 = 10 , z = 60. a o 2 Problema con soluci n no acotada. Considerar el modelo lineal o
En primer lugar se escribe el modelo en forma sim trica de maximizaci n. Sumando e o variables de holgura y a adiendo la restricci n articial x2 M se tiene el pron o blema
at
em
at
ic
a1
.c om
x1
x2
x3 0 1 0 0 0 1 0 0 0
x4 0 0 1 0 0 0
x5 0 0 0 1 5 2 0 4 2 3 M 5M 2M 4 2 1
4 5 0 a3 0 a4 0 a5 2 2 1 0 4 0 a3 0 a4 5 a2 2 -1 0 0 0 a3 4 a1 5 a2 0 1 0 1 1 0 0 0 1 0 0 0 1
1 1 M 3 0 4 1 1 4
om
M M 12 4M + 2 M +3 M
1 2
at ic
0
a1
0 1
1 1
La ultima tabla tiene factibilidad primal y dual y, por tanto, es optima. Sin em bargo, la variable de holgura de la restricci n articial, x5 , no est en la tabla o a optima. Entonces, el problema primal es no acotado y el dual infactible. 2 Problema infactible. Considerar el modelo lineal max z = 2x1 + x2 sujeto a x1 + x2 2 3x1 + x2 3 x1 , x2 0 A adiendo variables de holgura y la restricci n articial x1 + x2 M se tiene el n o problema
ww w.
at
em
.c
max z = 2x1 + x2 + 0x3 + 0x4 + 0x5 sujeto a x1 + x2 +x3 3x1 x2 x1 + x2 +x4 +x5 =2 = 3 =M
x1 , x2 , x3 , x4 , x5 0 x1 2 0 a3 0 a4 0 a5 1 3 1 0 0 a3 0 a4 2 a1 0 0 1 0 0 a3 1 a2 2 a1 0 0 1 0 0 a5 1 a2 2 a1 0 0 1 x2 1 1 1 1 1 0
ww
x3 0 1 0 0 0 1 0 0 0 1
x4 0 0 1 0
x5 0 0 0
om
0 2 3 M 2M M + 2 0 1 3
ic a at
0 1 0
1 4
at e
w.
1.c
1 2
3 3M 3 1
5 4 5 M 4
1 0 0 1 0 0
M 1 4
3 4
1
3 4 1 4
M + 2
3 M 4 1 M 4
0 1 4 0
5 4 1 4 1 4
3 4 3 4 7 4
3 4 1 4
0 1 0 0
0 1 1 0
3 4 1 4
0 1 4
1 4
M 2
9 4
1 4
El problema es infactible.
ww w.
M at e m at ic a1
.c om