Este documento resume el tema de la programación lineal II y la teoría de la dualidad. Explica cómo, dado un problema de programación lineal primal, se puede definir un problema dual asociado maximizando o minimizando funciones relacionadas. También presenta teoremas clave sobre las relaciones entre problemas primales y duales, y muestra ejemplos ilustrativos de su aplicación.
Modelos lineales y formatos. Manipulacion de ecuaciones
Ocwpl dualidad
1. Programaci´n Lineal II. Teor´ de la
o ıa
dualidad
P.M. Mateo y David Lahoz
27 de mayo de 2009
Este tema contin´a el desarrollo iniciado en el tema 1. En el se define
u
el problema dual asociado a un problema de programaci´n lineal (proble-
o
ma primal), mostrando ejemplos de problemas en los que al modificar los
planteamientos aparece un nuevo problema de programaci´n lineal que re-
o
sulta ser el problema dual del problema planteado inicialmente. Tras esto, se
desarrollan todos los teoremas habituales sobre las relaciones existentes entre
un problema primal y su dual desembocando en el enunciado y demostraci´n o
del teorema fundamental de la dualidad y el teorema de la holgura comple-
mentaria. A continuaci´n se muestra la utilidad de alguno de estos resultados
o
por medio de una serie de ejemplos y se contin´a dedicando un peque˜o epi-
u n
grafe a la interpretaci´n del valor de las variables del problema dual en el
o
optimo, mostrando como se establecen los precios sombra de los recursos de
´
un problema de programaci´n lineal. Finalmente se presenta el desarrollo del
o
algoritmo del simplex dual.
1
2. Prog. Lineal Dualidad A. Post-optimal Prog. Entera
´
Indice
1. Introducci´n
o 3
2. El problema dual 4
3. Teoremas relativos a problemas primales y sus duales asociados 9
4. Interpretaci´n econ´mica de las variables duales en el ´ptimo
o o o 18
5. Algoritmo del simplex dual 20
5.1. Determinaci´n de la variable que abandona la base . . . . . . . . . . . . 22
o
5.2. Determinaci´n de la variable que entra la base . . . . . . . . . . . . . . . 22
o
2
3. Prog. Lineal Dualidad A. Post-optimal Prog. Entera
1. Introducci´n
o
La teor´ de la dualidad nos va a permitir, entre otras cosas, relacionar cada problema
ıa
de programaci´n lineal con otro denominado problema dual y obtener relaciones sobre
o
el tipo de soluciones de ambos problemas, tambi´n nos va a proporcionar herramientas
e
alternativas a las ya conocidas para comprobar la optimalidad de soluciones, as´ como
ı
condiciones que pueden utilizarse para el desarrollo de nuevos algoritmos de resoluci´n,
o
etc.
A continuaci´n vamos a enunciar y plantear un problema de producci´n en t´rminos
o o e
de programaci´n lineal y posteriormente plantearemos una nueva situaci´n en la que,
o o
de una forma natural, surge el planteamiento del problema dual asociado al problema
primal (original) planteado.
Una empresa internacional produce y vende estos dos tipos de supercomputadores: el
4MX500Mhz y el NMX800Mhz. En la elaboraci´n de ambos tipos de equipos hay que
o
destacar dos procesos, el de ensamblado final y el de empaquetado, procesos P1 y P2 . Esta
empresa dispone mensualmente de 2000 horas dedicadas al proceso de ensamblado y 1000
horas dedicadas al proceso de empaquetado, adem´s saben que los tiempos requeridos
a
para realizar dichas operaciones para cada uno de los tipos de supercomputadores son
los que se muestran en la tabla siguiente:
Horas
Horas requeridas mensuales
Proceso 4MX500Mhz NMX800Mhz disponibles
P1 6 4 2000
P2 2 4 1000
El beneficio neto obtenido tras la venta de un supercomputador de tipo 4MX500Mhz es
de 400 u.m. y tras la venta de una unidad de NMX800Mhz es de 600 u.m.. Con esta
informaci´n planteamos y resolvemos inicialmente un problema que permita determinar
o
el n´mero de unidades de cada tipo de ordenador con objeto de maximizar el beneficio
u
total.
Definimos las variables x1 y x2 como el n´mero de ordenadores elaborados de tipo
u
4MX500mhz y NMX800Mhz respectivamente, con estas variables el problema queda:
m´x Z
a = 400x1 + 600x2
s. a:
6x1 + 4x2 ≤ 2000
2x1 + 4x2 ≤ 1000
x1 ≥ 0, x2 ≥ 0
3
4. Prog. Lineal Dualidad A. Post-optimal Prog. Entera
La soluci´n optima de dicho problema es elaborar 250 unidades del tipo 4MX500Mhz
o ´
y 125 unidades del tipo NMX800Mhz con un beneficio de 175000 u.m.
Ahora cambiamos el enfoque sobre el problema planteado, nuestro prop´sito va a ser
o
determinar los precios a los cuales esta empresa deber´ valorar sus recursos (horas de
ıa
trabajo de los dos procesos) de tal manera que puedan determinar el m´ınimo valor total
al cual estar´ dispuesta a arrendar o vender los recursos.
ıa
Sean y1 e y2 , la renta percibida por hora de los procesos P1 y P2 respectivamente.
La renta total obtenida ser´ pues, 2000y1 + 1000y2 . Se desea como objetivo encontrar
a
el m´ınimo valor de 2000y1 + 1000y2 de modo que la empresa pueda, de una manera
inteligente, analizar algunas propuestas de alquiler o compra de todos los recursos como
un paquete total.
Se consideran las condiciones siguientes, los precios pagados por el alquiler ser´n no
a
negativos, es decir y1 ≥ 0, y2 ≥ 0. Adem´s los precios y1 e y2 deben ser competitivos
a
con las alternativas disponibles, es decir, el beneficio que la empresa debe obtener por
los recursos necesarios para elaborar un supercomputador al menos deben ser iguales
a los que obtendr´ al utilizar dichos recursos en la elaboraci´n del computador, es
ıa o
decir, para el 4MX500Mhz tendremos 6y1 + 2y2 ≥ 400 y para el NMX800Mhz queda
4y1 + 4y2 ≥ 600. Con esto garantiza la obtenci´n de precios con los que al menos iguala
o
el beneficio obtenido al producir ´l mismo los equipos. El problema planteado queda:
e
m´ Z
ın = 2000y1 + 1000y2
s. a:
6y1 + 2y2 ≥ 400
4y1 + 4y2 ≥ 600
y1 ≥ 0, y2 ≥ 0
La resoluci´n de este problema proporciona un valor de 25 para cada unidad del primer
o
recurso y un valor de 125 para cada unidad del segundo, con un beneficio de 175000, igual
al obtenido en el planteamiento del primer problema. Este nuevo problema es problema
dual del problema planteado originalmente.
2. El problema dual
Como ya hemos comentado, asociado a un problema de programaci´n lineal aparece
o
otro problema de programaci´n lineal denominado problema dual (asociado al primero),
o
en general nos referiremos al primero como problema primal y lo denotaremos mediante
[P], y al segundo como problema dual y lo denotaremos con [D].
4
5. Prog. Lineal Dualidad A. Post-optimal Prog. Entera
Definicion 1. Un problema de programaci´n lineal se dice que est´ en forma sim´trica
´ o a e
si todas las variables est´n restringidas a ser no negativas y todas las restricciones son
a
de tipo “≤“ en el caso de m´ximo y de tipo “≥” en el caso de m´nimo, es decir, toman
a ı
la forma:
m´x
a Z = cx m´ ın Z = cx
s. a: Ax ≤ b s. a: Ax ≥ b
x≥0 x≥0
Definicion 2. Dado un problema de programaci´n lineal en forma sim´trica de m´ximo
´ o e a
m´x
a Z = cx
[P ] s. a: Ax ≤ b
x ≥ 0,
entonces su problema dual asociado es
m´ın G =by
[D] s. a: Ay≥c
y ≥ 0,
donde y es un vector de m componentes, (tantas como restricciones en el problema
primal).
En general puede definirse el problema dual de uno dado, para cualquier problema de
programaci´n lineal, y posteriormente extender la definici´n al resto de problemas de
o o
programaci´n lineal. La elecci´n del problema de programaci´n lineal en forma sim´trica
o o o e
de m´ximo como problema de referencia ha sido unicamente por comodidad en algunos
a ´
de los desarrollos posteriores.
En la siguiente proposici´n se muestra como quedan los problemas duales de algunos
o
problemas de programaci´n lineal:
o
Proposicion 1. Se cumplen las siguientes reglas para la construcci´n de problemas
´ o
duales:
i) El problema
m´ın Z = cx m´x
a G =by
[P ] s. a: Ax ≥ b se dualiza en [D] s. a: Ay≤c
x≥0 y ≥ 0.
En consecuencia el problema dual del problema dual es el problema primal.
ii) El problema
m´x
a Z = cx m´ın G =by
[P ] s. a: Ax ≥ b se dualiza en [D] s. a: Ay≥c
x≥0 y ≤ 0.
5
6. Prog. Lineal Dualidad A. Post-optimal Prog. Entera
iii) El problema
m´x
a Z = cx m´ın G =by
[P ] s. a: Ax ≤ b se dualiza en [D] s. a: Ay≤c
x≤0 y ≥ 0.
iv) El problema
m´x
a Z = cx m´ın G =by
[P ] s. a: Ax = b se dualiza en [D] s. a: Ay≥c
x≥0 y no restringidas en signo.
v) El problema
m´x
a Z = cx m´ın G =by
[P ] s. a: Ax ≤ b se dualiza en [D] s. a: Ay=c
x no restringidas en signo y ≥ 0.
vi) Etc. . . .
Demostraci´n. Vamos a demostrar dos de los casos, el resto se realizar´ de una forma
o ıa
similar, la idea es transformar el problema en un problema para el cual conozcamos su
dual.
i) Vamos a transformar el problema i) para que sea un problema de m´ximo con a
restricciones de tipo ‘≤’ y con variables no negativas, para ello basta con cambiar
de signo la funci´n objetivo y con multiplicar por −1 cada una de las restricciones
o
del problema, es decir,
m´ın Z = cx m´x
a (−Z) = −cx
s. a: Ax ≥ b ⇐⇒ s. a: −Ax ≤ −b
x≥0 x≥0
Este problema ya se ajusta a la definici´n sobre dualidad dada inicialmente, y su
o
dual es
m´ın G = −b y
s. a: −A y ≥ −c
y≥0
que de una manera directa queda
m´x
a G =by
s. a: Ay≤c
y≥0
6
7. Prog. Lineal Dualidad A. Post-optimal Prog. Entera
iv) Para acomodar este caso a la definici´n vamos a transformar las restricciones de
o
igualdad en desigualdades de tipo ‘≤’, en primer ponemos Ax = b como Ax ≤ b
y Ax ≥ b, o equivalentemente, Ax ≤ b y −Ax ≤ −b. As´ el problema queda
ı
m´x
a Z = cx m´x
a Z = cx
s. a: Ax ≤ b A b
⇐⇒ s. a: x≤
−Ax ≤ −b −A −b
x ≥ 0, x ≥ 0,
este problema ya est´ en forma sim´trica, y podemos escribir su problema dual
a e
que queda
m´ın G = (b , −b )y
s. a: (A , −A )y ≥ c
y ≥ 0,
donde y es un vector de 2m componentes, las correspondientes a las filas de A
(yi , i = 1, . . . , m) y las correspondientes a la parte de −A, (yi , i = m + 1, . . . , 2m).
A continuaci´n vamos a realizar un cambio de formato a este problema hasta que
o
nos conduzca a la formulaci´n planteada en el enunciado de la proposici´n.
o o
Si nos fijamos en una variable yi (1 ≤ i ≤ m) y en la correspondiente en la parte
de −A, es decir la yj con j = i + m sus coeficientes son, bi para yi y bj = −bi para
yj , por tanto en la funci´n objetivo podr´
o ıamos agruparlas poniendo bi (yi − yi+m ).
An´logamente si nos fijamos en la parte de las restricciones, una variable yi y la
a
yi+m tienen, en una restricci´n j cualquiera, coeficientes aij y −aij respectivamente,
o
por lo que tambi´n podremos poner aij (yi −yi+m ). En vista de estos hechos podemos
e
definir una variable vi = yi − yi+m que por construcci´n ser´ no restringida en
o ıa
signo con la que, sustituy´ndola en el problema anterior, obtendr´
e ıamos
m´ın G =bv
s. a: Av≥c
v no restringida,
donde v es un m-vector de variables no restringidas en signo, con lo que se de-
muestra el apartado de la proposici´n.
o
De la proposici´n anterior se pueden extraer las siguientes ideas:
o
7
8. Prog. Lineal Dualidad A. Post-optimal Prog. Entera
1. Si el problema primal es de m´ximo el dual es de m´
a ınimo y, rec´
ıprocamente, si el
problema primal es de m´ ınimo su dual es de m´ximo.
a
2. La matriz de coeficientes del problema dual es la traspuesta de la matriz de coefi-
cientes del problema original.
3. El vector de costos del problema dual es el vector de recursos del problema primal
(original).
4. El vector de recursos del problema dual es el vector de costos del problema primal.
5. Cada restricci´n del problema primal da lugar a una variable en el problema dual
o
y, cada variable en el primal da lugar a una restricci´n del problema dual.
o
Tras estos comentarios proporcionamos una tabla resumen en la que se pueden obtener
todas las reglas de dualizaci´n, tanto para problemas de m´ximo como de m´
o a ınimo,
restricciones de igualdad, desigualdad, etc.
Primal Dual
(Dual) (Primal)
m´x
a m´
ın
Restricci´n “≤”
o Variable “≥ 0”
Restricci´n “=”
o Variable no restringida
Restricci´n “≥”
o Variable “≤ 0”
Variable “≥ 0” Restricci´n “≥”
o
Variable no restringida Restricci´n “=”
o
Variable “≤ 0” Restricci´n “≤”
o
Si el problema primal es de m´ximo se lee de izquierda a derecha y, en caso contrario,
a
problema primal de m´ınimo, de derecha a izquierda.
Veamos algunos ejemplos de dualizaci´n:
o
8
9. Prog. Lineal Dualidad A. Post-optimal Prog. Entera
m´x Z
a = 3x1 + 2x2 + 4x3 m´ G
ın = 7y1 + 8y2
s. a: x1 + 2x2 − x3 ≤ 7 s. a: y1 + y2 ≥ 3
[P ] x1 + x2 + x3 ≤ 8 [D] 2y1 + y2 ≥ 2
x1 ≥ 0, x2 ≥ 0, x3 ≤ 0 −y1 + y2 ≤ 4
y1 ≥ 0, y2 ≥ 0
m´ Z
ın = 3x1 + 7x2 + x3 m´x G
a = 7y1 + 8y2 + 5y3
s. a: x1 + 2x2 + x3 ≤ 7 s. a: y1 + 2y2 + 3y3 ≥ 3
[P ] 2x1 + 3x2 − x3 ≥ 8 [D] 2y1 + 3y2 + y3 = 7
3x1 + x2 + 2x3 = 5 y1 − y2 + 2y3 ≤ 1
x1 ≤ 0, x2 no restringida, y1 ≤ 0, y2 ≥ 0,
x3 ≥ 0 y3 no restringida
3. Teoremas relativos a problemas primales y sus
duales asociados
Mientras no se indique lo contrario vamos a trabajar con los siguientes problema
primal y dual:
m´x Z = cx
a m´ G = b y
ın
[P ] Ax ≤ b [D] Ay≥c
x≥0 y≥0
¯ ¯
Teorema 1 (De la dualidad d´bil). Si x e y son soluciones factibles de un par de
e
problemas primal y dual [P] y [D], respectivamente, entonces se verifica
Z(¯ ) = c¯ ≤ b y = G(¯ )
x x ¯ y
Es decir, para cualquier par de soluciones factibles de un problema primal y su dual el
valor de la funci´n objetivo del problema de m´ximo es menor o igual que el valor de la
o a
funci´n objetivo del problema de m´nimo.
o ı
¯ ¯
Demostraci´n. Por ser x e y factibles se tiene que
o
A¯ ≤ b
x Ay≥c
¯
y
x≥0
¯ y≥0
¯
9
10. Prog. Lineal Dualidad A. Post-optimal Prog. Entera
¯ ¯
Multiplicando a izquierda la primera expresi´n por y y la segunda por x , y trasponiendo
o
´sta ultima obtenemos
e ´
y A¯ ≤ y b
¯ x ¯ y A¯ ≥ c¯
¯ x x
Observando lo anterior:
c¯ ≤ y A¯ ≤ y b = b y
x ¯ x ¯ ¯
Corolario 1. El valor de la funci´n objetivo del problema primal de m´ximo para
o a
cualquier soluci´n factible es una cota inferior del m´nimo valor de la funci´n objetivo
o ı o
del dual, y reciprocamente, el valor de la funci´n objetivo del problema dual de m´nimo
o ı
para cualquier soluci´n factible dual es una cota superior del m´ximo valor de la funci´n
o a o
objetivo del primal.
Corolario 2. Si el problema primal es factible y su soluci´n es no acotada, (Z → ∞),
o
entonces el problema dual no tiene soluci´n. An´logamente, si el problema dual es factible
o a
pero con soluci´n no acotada, (G → −∞), entonces el problema primal no tiene soluci´n
o o
factible.
Teorema 2 (Criterio de Optimalidad). Si existen soluciones factibles para los prob-
lemas primal y dual [P] y [D] tales que los valores correspondientes de las funciones
objetivo coinciden, entonces dichas soluciones factibles son ´ptimas para sus respectivos
o
problemas.
Demostraci´n. Sean x∗ e y∗ factibles para los problemas [P] y [D] respectivamente, y
o
tal que cx = b y∗ . Sea x cualquier soluci´n factible del problema primal [P], por el
∗
o
teorema 1 se tiene que
cx ≤ b y∗ = cx∗
y por lo tanto x∗ es una soluci´n ´ptima del problema primal [P]. Un argumento an´logo
o o a
prueba la optimalidad de y∗ para el problema dual [D].
Consideremos ahora el problema primal en forma est´ndar y su dual asociado.
a
m´ın Z = cx m´x
a G = by
[P ] s a: Ax = b [D] s a: Ay≤c
x≥0 y no restringida
Teorema 3. Sea x∗ una SFB ´ptima de [P] y sea B la matriz asociada a su base,
o
entonces π = cB B −1 es una soluci´n ´ptima del problema dual [D].
o o
10
11. Prog. Lineal Dualidad A. Post-optimal Prog. Entera
Demostraci´n. Como x∗ es una SFB optima entonces x∗ = B −1 b ≥ 0 y cj −cB B −1 Aj ≥
o ´ B
−1
0 ∀j, ahora bien, cj − cB B Aj = cj − πAj ≥ 0 ∀j que en forma matricial y operando
toma la forma A π ≤ c y por tanto π es una soluci´n factible del problema dual [D].
o
Adem´sa
G = b π = πb = cB B −1 b = cB x∗ = Z ∗
B
y por el teorema 2, la soluci´n π es una soluci´n ´ptima de [D].
o o o
Corolario 3. Si el problema primal tiene soluci´n ´ptima finita entonces el problema
o o
dual tambi´n, y rec´procamente, si el problema dual tiene soluci´n ´ptima finita entonces
e ı o o
el primal tambi´n.
e
Corolario 4. Si el problema primal es no factible entonces su dual o no tiene soluci´n o
o tiene soluci´n no acotada, y rec´procamente, si el dual es no factible entonces el primal
o ı
o es no factible o tiene soluci´n no acotada.
o
Demostraci´n. Veamos el primer caso (problema primal no factible), el segundo es an´lo-
o a
go. Si el problema dual es no factible el corolario se verifica, veamos que en caso con-
trario se ha de cumplir obligatoriamente que el problema dual tiene soluci´n no acotada.
o
Supongamos que no fuera as´ es decir, que el problema dual es factible y tiene solu-
ı,
ci´n optima (finita), entonces por el teorema anterior dada la soluci´n otima del dual
o ´ o ´
podr´ ıamos construir una soluci´n factible (y optima) del primal, con lo que obtenemos
o ´
una contradicci´n ya que el problema primal es no factible, por tanto el problema dual
o
si es factible debe tener soluci´n no acotada.
o
Observaciones: Si se ha utilizado el algoritmo del simplex para la resoluci´n de un prob-
o
lema de programaci´n lineal entonces el valor ´ptimo de las variables del problema dual
o o
se encuentra en las Zj correspondientes a las variables de la primera base. Basta para
ello con notar que la primera base tiene matriz B asociada igual a la identidad y por
tanto se verifica:
1 0 ... 0
0 1 ... 0
π = cB B −1 . . . . .=
. .
. . . .
.
0 0 . . 1
.
1 0 0
0 1 0
= cB B −1 . , cB B −1 . , . . . , cB B −1 . = (Zj1 , Zj2 , . . . , Zjm )
.
. .
. .
.
0 0 1
y por tanto
(π1 , π2 , . . . , πm ) = (Zj1 , Zj2 , . . . , Zjm )
Como resumen de todos los elementos anteriores enunciamos el resultado conocido
como teorema fundamental de la dualidad
11
12. Prog. Lineal Dualidad A. Post-optimal Prog. Entera
Teorema 4 (Teorema fundamental de la dualidad). Dado un problema primal y su dual
s´lo una de las siguientes afirmaciones es cierta:
o
P tiene soluci´n ´ptima (finita) ⇐⇒ [D] tiene soluci´n ´ptima (finita).
o o o o
P es no factible =⇒ [D] es no factible o [D] tiene soluci´n no acotada.
o
D es no factible =⇒ [P] es no factible o [P] tiene soluci´n no acotada.
o
P tiene soluci´n no acotada =⇒ [D] es no factible.
o
D tiene soluci´n no acotada =⇒ [P] es no factible.
o
Para finalizar el apartado vamos a enunciar y demostrar el teorema de la holgura
complementaria, para ello en primer lugar volveremos a considerar como problemas
primal y dual los problemas en forma sim´trica de m´ximo y m´
e a ınimo respectivamente.
o ¯ ¯
Observaci´n: Dados x e y soluciones factibles para el problema sim´trico de m´ximo y
e a
su dual respectivamente, entonces
(¯ A − c)¯ + y (b − A¯ ) = y u + v x = y b − c¯ ,
y x ¯ x ¯¯ ¯¯ ¯ x
donde u son las variables de holgura del problema primal y v son las variables de holgura
del problema dual.
Para ver la veracidad de las igualdades anteriores basta con las siguientes considera-
¯ ¯
ciones. Dadas x e y se a˜aden holguras en las restricciones de sus problemas respectivos
n
con lo que:
x ¯
A¯ + u = b Ay−v =c
¯ ¯
x, u ≥ 0
¯ ¯ y, v ≥ 0.
¯ ¯
¯ ¯
Despejando u y v y sustituy´ndolo se obtiene la primera parte de la observaci´n:
e o
(¯ A − c)¯ + y (b − A¯ ) = y u + v x
y x ¯ x ¯¯ ¯¯
¯ ¯
Para continuar multiplicamos a izquierda por y y por x tal y como se muestra:
¯ x ¯¯ ¯
y A¯ + y u = y b
xAy−xv =xc
¯ ¯ ¯¯ ¯
12
13. Prog. Lineal Dualidad A. Post-optimal Prog. Entera
Finalmente trasponiendo la segunda expresi´n y rest´ndolas se obtiene:
o a
y u + v x = y b − c¯
¯¯ ¯¯ ¯ x
Juntando las expresiones anteriores obtenemos la expresi´n indicada inicialmente, es
o
decir,
(¯ A − c)¯ + y (b − A¯ ) = y u + v x = y b − c¯ ,
y x ¯ x ¯¯ ¯¯ ¯ x
Esta expresi´n nos permite demostrar de una manera directa el siguiente e importante
o
resultado
¯ ¯
Teorema 5 (de la Holgura Complementaria). Dadas x e y soluciones factibles de los
e a ¯ ¯
problemas sim´trico de m´ximo y su dual, entonces x e y son soluciones ´ptimas para
o
sus problemas respectivos si y s´lo si se verifica
o
(¯ A − c)¯ + y (b − A¯ ) = 0
y x ¯ x
Demostraci´n. Teniendo en cuenta la expresi´n obtenida
o o
(¯ A − c)¯ + y (b − A¯ ) = y u + v x = y b − c¯ ,
y x ¯ x ¯¯ ¯¯ ¯ x
¯ ¯
tenemos que, si x e y son soluciones optimas entonces el valor de la funci´n objetivo
´ o
para cada uno de estos dos puntos coincide y en consecuencia la ultima parte de la
´
expresi´n anterior es cero y por la cadena de igualdades la primera de ellas que es la que
o
corresponde a la del enunciado. Si por el contrario se verifica la expresi´n del enunciado,
o
entonces por la cadena de igualdades la expresi´n final es cero, por tanto el valor de la
o
funci´n objetivo coincide y ambas soluciones son optimas para sus problemas respectivos
o ´
(teorema 2)
Nota: las condiciones
(¯ A − c)¯ + y (b − A¯ ) = 0
y x ¯ x
se nombrar´n como Condiciones de la Holgura Complementaria (CHC).
a
Para finalizar el desarrollo te´rico del apartado y antes de ver algunos ejemplos de
o
aplicaci´n de los resultados desarrollados vamos a realizar una nueva transformaci´n de
o o
las condiciones del teorema que permiten un manejo m´s sencillo.
a
¯ ¯
Teniendo en cuenta que si las dos soluciones factibles entonces tanto x como y y las
¯ ¯
holguras u y v son no negativas y teniendo en cuenta que
0 = (¯ A − c)¯ + y (b − A¯ ) = y u + v x
y x ¯ x ¯¯ ¯¯
13
14. Prog. Lineal Dualidad A. Post-optimal Prog. Entera
se obtiene
¯¯
yu=0 y ¯¯
v x = 0,
por la misma raz´n tenemos que si expresamos estos productos escalares componente a
o
componente, entonces cada uno de los productos est´ formado por elementos no negativos
a
y su suma es nula por lo que podemos asegurar que
xj vj = 0 ∀j = 1, . . . , n
¯ ¯
yi ui = 0 ∀i = 1, . . . , m
¯¯
Con las CHC expresadas de esta forma podemos reenunciar el teorema de la forma
siguiente
¯ ¯
Teorema 6 (de la Holgura Complementaria). Dado x e y soluciones factibles de los
e a ¯ ¯
problemas sim´trico de m´ximo y su dual, entonces x e y son soluciones ´ptimas para
o
sus problemas respectivos si y s´lo si se verifica
o
xj vj = 0 ∀j = 1, . . . , n
¯ ¯
yi ui = 0 ∀i = 1, . . . , m,
¯¯
¯ ¯
donde u son las holguras de las restricciones del problema primal y v las holguras cor-
respondientes al problema dual.
Observando esta ultima forma de las CHC estas se pueden expresar de la forma sigu-
´
iente:
Si una variable primal, xj , es distinta de cero, entonces la correspondiente restric-
ci´n del dual se verifica con igualdad en el optimo, vj = 0.
o ´
Si una restricci´n primal es una desigualdad estricta en el optimo, ui > 0, entonces
o ´
la variable dual asociada, yi , debe tomar valor nulo.
Si una variable dual yi , es distinta de cero, entonces la correspondiente restricci´n
o
del primal se verifica con igualdad en el ´ptimo, ui = 0.
o
Si una restricci´n dual es una desigualdad estricta en el optimo, vj > 0, entonces
o ´
la variable primal asociada, xj , debe tomar valor nulo.
Finalizamos mostrando la utilizaci´n de las condiciones de la holgura complementaria
o
para la determinaci´n de la optimalidad o no de soluciones.
o
Ejemplos:
14
15. Prog. Lineal Dualidad A. Post-optimal Prog. Entera
Dado el siguiente PPL
m´ Z = 100x1 + 360x2 + 240x3
ın
s. a: 1000x1 + 4000x2 + 2000x3 ≥ 2000
200x1 + 900x2 + 500x3 ≥ 3000
x1 ≥ 0, x2 ≥ 0, x3 ≥ 0,
demostrar que x = (0, 30 , 0) e y = (0, 2 ) son soluciones ´ptimas de dicho problema y
9 5
o
de su dual.
En primer lugar plantearemos el problema dual y comprobaremos que ambas son
soluciones factibles (ya que este es el primer requerimiento del THC).
m´x G = 2000y1 + 3000y2
a
s. a: 1000y1 + 200y2 ≤ 100
4000y1 + 900y2 ≤ 360
2000y1 + 500y2 ≤ 240
y1 ≥ 0, y2 ≥ 0.
Al evaluar ambas soluciones obtenemos los siguiente valores
(x, u) = (x1 , x2 , x3 , u1 , u2 ) = (0, 30 , 0, 3400 , 0)
9 3
2
(y, v) = (y1 , y2 , v1 , v2 , v3 ) = (0, 5 , 20, 0, 40),
como todas las holguras toman valor no negativo, ambas soluciones son factibles. A
continuaci´n comprobamos si se cumplen las CHC, es decir: xj vj = 0 ∀j e yi ui = 0 ∀i.
o
x1 v1 = 0 × 20 = 0
x2 v2 = 30 × 0 = 0
9
x3 v3 = 0 × 40 = 0
y1 u1 = 0 × 3400 = 0
3
y2 u2 = 2 ×0=0
5
En consecuencia se verifican las condiciones del THC y ambas soluciones son optimas
´
para sus problemas respectivos.
Sea ahora el siguiente PPL
m´ Z
ın = 12x1 + 10x2 + 4x3
s. a: 4x1 + 4x2 + x3 ≥ 5
2x1 + x2 + x3 ≥ 3
x1 ≥ 0, x2 ≥ 0, x3 ≥ 0.
15
16. Prog. Lineal Dualidad A. Post-optimal Prog. Entera
¿Es ´ptima la soluci´n (x1 , x2 , x3 , u1 , u2 ) = (1, 0, 1, 0, 0)?
o o
Vamos a aplicar el THC para determinar si esta soluci´n factible es ´ptima o no.
o o
Si fuera soluci´n optima por el teorema fundamental de la dualidad su dual tambi´n
o ´ e
tendr´ soluci´n optima, y por el THC ´sta deber´ ser soluci´n de las CHC. Por tanto
ıa o ´ e ıa o
dada esta soluci´n imponemos el cumplimiento de las CHC con la soluci´n factible dada.
o o
Si su resoluci´n proporciona alguna soluci´n dual factible, entonces a la soluci´n inicial
o o o
y a la obtenida se les puede aplicar el THC y concluir que ambas son optimas para sus
´
problemas respectivos.
Si en la resoluci´n del sistema resultante obtenemos que no existe ninguna soluci´n o
o o
que las unicas soluciones duales existentes no son factibles, entonces podremos concluir
´
que la soluci´n primal inicial no es optima (en caso contrario deber´ existir una soluci´n
o ´ ıa o
factible que junto con ella las verificara).
Veamos como quedan estos desarrollos con nuestro ejemplo:
Escribimos el problema dual e imponemos las CHC:
m´x Z
a = 5y1 + 3y2
s .a: 4y1 + 2y2 ≤ 12
4y1 + y2 ≤ 10
y1 + y2 ≤ 4
y1 ≥ 0, y2 ≥ 0
x1 v1 = 0 = 1(12 − 4y1 − 2y2 ) =⇒ 12 − 4y1 − 2y2 = 0
x2 v2 = 0 = 0(10 − 4y1 − y2 ) #
x3 v3 = 0 = 1(4 − y1 − y2 ) =⇒ 4 − y1 − y2 = 0
y1 u1 = 0 = y1 0 #
y2 u2 = 0 = y2 0 #
El sistema resultante de imponer las CHC es
4y1 + 2y2 = 12
y1 + y2 = 4,
cuya resoluci´n proporciona una unica soluci´n
o ´ o
y1 = y2 = 2
Que sustituy´ndola en el problema dual proporciona (v1 , v2 , v3 ) = (0, 0, 0) por lo tanto
e
es factible y podemos aplicarle junto a la soluci´n del problema primal inicial el THC y
o
concluir que ambas soluciones son ´ptimas para sus problemas respectivos.
o
16
17. Prog. Lineal Dualidad A. Post-optimal Prog. Entera
Veamos un ultimo ejemplo para concluir el apartado. Sea el PPL:
´
m´ Z = 85x1 + 40x2
ın
s. a: 2x1 + x2 ≥ 8
6x1 + x2 ≥ 12
x1 + 3x2 ≥ 19
x1 ≥ 0, x2 ≥ 0, x3 ≥ 0
Comprobar si es ´ptima la soluci´n x = (0, 12). Calculamos el valor de las holguras
o o
del problema primal u = (4, 0, 17), planteamos el problema dual e imponemos las CHC,
m´x G = 8y1 + 12y2 + 19y3
a
s. a: 2y1 + 6y2 + y3 ≤ 85
y1 + y2 + 3y3 ≤ 40
y1 ≥ 0, y2 ≥ 0, y3 ≥ 0
x1 v 1 = 0 = 0 × v1 #
x2 v 2 = 0 = 12 × v2 =⇒ v2 = 40 − y1 − y2 − 3y3 = 0
y1 u1 = 0 = y1 × 4 =⇒ y1 = 0
y2 u2 = 0 = y2 × 0 #
y3 u3 = 0 = y3 × 17 =⇒ y3 = 0
Sustituyendo y1 e y3 en la expresi´n 40 − y1 − y2 − 3y3 = 0 obtenemos y2 = 40, por
o
tanto y = (0, 40, 0) es la unica soluci´n que junto a la inicial verifica las CHC. Como la
´ o
soluci´n encontrada no es factible, ya que, v1 = −155, podemos concluir que la soluci´n
o o
x = (0, 12) no es optima.
´
Sobre este mismo ejemplo comprobar si la soluci´n x = (1, 6) es optima.
o ´
Calculando el valor de las holguras primales u = (0, 0, 0), las CHC toman la forma
siguiente:
x1 v1 = 1(85 − 2y1 − 6y2 − y3 ) = 0 =⇒ 2y1 + 6y2 + y3 = 85
x2 v2 = 6(40 − y1 − y2 − 3y3 ) = 0 =⇒ y1 + y2 + 3y3 = 40
y1 u1 = y1 0 = 0 #
y2 u1 = y2 0 = 0 #
y3 u1 = y3 0 = 0 #
Tras imponer su cumplimiento obtenemos que debe verificarse que
2y1 + 6y2 + y3 = 85
y1 + y2 + 3y3 = 40
17
18. Prog. Lineal Dualidad A. Post-optimal Prog. Entera
Si existe alguna soluci´n de dicho sistema que sea factible dual, junto con la soluci´n
o o
primal factible proporcionada x = (1, 6), estar´n en condiciones de aplicar el THC y
a
concluir que ambas soluciones son ´ptimas para sus problemas respectivos.
o
Vamos a buscar soluciones del sistema anterior. Tomando y2 como un par´metro que
a
inicialmente restringimos unicamente a y2 ≥ 0 obtenemos
´
y1 = 43 − 17 y2
5
y2 = y2 ≥ 0
y3 = −1 + 4 y2
5
Puede comprobarse sin dificultad que y1 , y2 e y3 definidas en los t´rminos anteriores
e
verifican las restricciones del problema dual, unicamente quedar´ por garantizar la no
´ a
negatividad de y1 e y3 , para lo cual deber´ cumplirse que
a
43 − 17 y2 ≥ 0 =⇒ y2 ≤ 215
5 17
−1 + 4 y2 ≥ 0 =⇒ y2 ≥ 4
5
5
Por tanto cualquier soluci´n de la forma
o
y1 = 43 − 17 y2
5
y2
y3 = −1 + 4 y2
5
con y2 ∈ [ 4 , 215 ] es factible dual y por lo tanto la soluci´n inicial proporcionada y
5
17
o
cualquiera de las soluciones duales obtenidas son, por el THC, soluciones ´ptimas de sus
o
problemas respectivos.
En este ejemplo nos hemos encontrado con que la soluci´n optima del problema primal
o ´
era degenerada, s´lo 2 variables toman valor no nulo, y en consecuencia en el problema
o
dual existe soluci´n m´ltiple.
o u
4. Interpretaci´n econ´mica de las variables duales en
o o
el ´ptimo
o
Por el teorema fundamental de la dualidad los valores ´ptimos de las funciones obje-
o
¯
tivo de un problema primal [P] y su dual [D] son iguales, si x es una SFB ´ptima no
o
18
19. Prog. Lineal Dualidad A. Post-optimal Prog. Entera
degenerada de [P] e y es la soluci´n optima de [D] (calculada como y = π = cB B −1 )
¯ o ´ ¯
podremos escribir:
Z(¯ ) = c1 x1 + c1 x2 + . . . + c1 xn = y1 b1 + y2 b2 + . . . + ym bm = G(¯ )
x ¯ ¯ ¯ ¯ ¯ ¯ y
Supongamos ahora que modificamos el recurso, por ejemplo, b1 en una cantidad ∆b1
“peque˜a”, de manera que la soluci´n primal se siga manteniendo factible, y en conse-
n o
cuencia ´ptima (observese que c − cB B −1 A no var´ Es decir, de manera tal que
o ıa).
∆b1
0
B −1 (b + . ) ≥ 0
.
.
0
Consideremos ahora los problemas [P1] y [D1], donde [P1] es el problema primal en el
que se ha cambiado b por b + ( ∆b1 0 . . . 0 ) y [D1] es su dual. La soluci´n optima
o ´
˜ ¯
de [P1], x, tiene la mismas variables b´sicas que x (por la elecci´n de ∆b1 ) y el valor que
a o
−1
a o ˜
toma la parte b´sica de dicha soluci´n es xB = B [b + ( ∆b1 0 . . . 0 ) ], por otro
lado la soluci´n de [D1] es y = π = cB B −1 , observad que como las variables b´sicas de
o ˜ a
˜ ˜ ¯
x no han cambiado entonces B sigue siendo la misma que antes y y = y, teniendo en
cuenta estos hechos tenemos que:
Z(˜ ) = c1 x1 + c1 x2 + . . . + c1 xn = y1 (b1 + ∆b1 ) + y2 b2 + . . . + ym bm =
x ˜ ˜ ˜ ˜ ˜ ˜
= (¯1 b1 + y2 b2 + . . . + ym bm ) + y1 ∆b1 = G(¯ ) + y1 ∆b1 = Z(¯ ) + y1 ∆b1
y ¯ ¯ ¯ y ¯ x ¯
es decir
Z(˜ ) = Z(¯ ) + y1 ∆b1
x x ¯
De esta expresi´n se desprende que el valor optimo de la variable dual y1 asociada a la
o ´ ¯
primera restricci´n del problema primal representa la cantidad en la que se modifica el
o
valor de la funci´n objetivo de [P] por cada unidad adicional de recurso 1 (siempre que
o
la modificaci´n mantenga la base optima). Esto puede hacerse en general para cualquier
o ´
recurso bi del problema primal. Teniendo en cuenta esto, si nos situamos, por ejemplo, en
un problema primal de m´ximo con restricciones de tipo ≤, lo resolvemos y calculamos
a
la soluci´n del problema dual, entonces los valores ´ptimos de las variables duales (que
o o
son ≥ 0) representan la variaci´n unitaria de la funci´n objetivo del primal por cada
o o
unidad adicional del recurso correspondiente que pudieramos conseguir. Esto nos permite
tambi´n interpretar dichos valores como la mayor cantidad que estar´
e ıamos dispuestos a
pagar por una unidad adicional de recurso.
19
20. Prog. Lineal Dualidad A. Post-optimal Prog. Entera
Veamos un ejemplo en el que se pone de manifiesto las ideas anteriores. Supongamos
que hemos resuelto el siguiente PPL,
m´x Z = 5x1 + 10x2
a
s. a: 2x1 + x2 ≤ 500
2x1 + 5x2 ≤ 1000
2x1 + 3x2 ≤ 900
x1 ≥ 0, x2 ≥ 0
Obteniendo la siguiente tabla optima:
´
x1 x2 x3 x4 x5
5
x1 1 0 8
-1
8
0 187.5
x2 0 1 -1
4
1
4
0 125
x5 0 0 -1
2
-1
2
1 150
0 0 -5
8
- 15
8
0
con un valor de la funci´n objetivo de 2187.5, y con π = cB B −1 = ( 5 , 15 , 0)
o 8 8
Realizamos una modificaci´n “peque˜a” del segundo recurso ˜2 = b2 + 250, con esta
o n b
modificaci´n la tabla quedar´
o a
x1 x2 x3 x4 x 5
5
x1 1 0 8
-1
8
0 156.25
x2 0 1 -1
4
1
4
0 187.5
x5 0 0 -1
2
1
-2 1 25
0 0 -5
8
- 15
8
0
con un valor de la funci´n objetivo de 2656,25 = 2187,5 + (250) × ( 15 ), es decir se ha
o 8
incrementado en el valor de la variable dual segunda ( 15 ) por el n´mero de unidades
8
u
incrementadas 250. Sin embargo, si la modificaci´n alcanza el valor de 325, es decir,
o
˜2 = b2 + 325, la soluci´n del problema es x1 = 925 , x2 = 875 y x3 = 50 con un valor de
b o 8 4
la funci´n objetivo de 2765,625 = 2187,5 + 325 × 15 . En consecuencia dicho cambio no
o 8
es “peque˜o”. Sobre las apreciaciones de cambios peque˜os o grandes hablaremos en el
n n
tema dedicado a an´lisis post-´ptimo.
a o
5. Algoritmo del simplex dual
En este apartado vamos a desarrollar un algoritmo de tipo simplex, con elementos
similares a los del tema 2, denominado algoritmo simplex dual.
20
21. Prog. Lineal Dualidad A. Post-optimal Prog. Entera
En primer lugar seleccionamos los problemas sobre los que vamos a trabajar que ser´n:
a
m´x Z
a = cx m´ G
ın = by
s.a: Ax = b s.a: Ay≥c
[P 1] x≥0 [D1] y no restringida
m´ Z
ın = cx m´x G
a = by
s.a: Ax = b s.a: Ay≤c
[P 2] x≥0 [D2] y no restringida
Definicion 3. Diremos que una base del problema primal (no necesariamente factible)
´
es una base factible dual si y s´lo si
o
[1] : c − cB B −1 A ≤ 0 Primal de M´ximo
a
[2] : c − cB B −1 A ≥ 0 Primal de M´nimo
ı
Se puede apreciar que dicha definici´n es equivalente a decir que una base es factible
o
−1
dual si cB B constituye una soluci´n factible para el problema dual. Por ejemplo en
o
el caso [1], si llamamos y = cB B tenemos que c − cB B −1 A = c − y A ≤ 0 que
−1
es equivalente a la expresi´n que define las restricciones de [D1]. Alternativamente, la
o
definici´n de base factible dual s´lo implica que la correspondiente base primal verifica
o o
las condiciones de optimalidad. Si diera la casualidad que adem´s fuera factible entonces
a
dicha soluci´n ser´ una soluci´n ´ptima.
o ıa o o
El algoritmo que se va a presentar va a trabajar con soluciones b´sicas factibles duales
a
que por medio de operaciones apropiadas finalizar´n (si es posible) en una soluci´n que
a o
adem´s ser´ factible primal. Mientras el simplex trabaja con soluciones que no cumpl´
a a ıan
el criterio de optimalidad y poco a poco se mejoraban hasta conseguir la optimalidad,
en el simplex dual se trabaja con soluciones no factibles en las que poco a poco se
“mejorar´” la factibilidad hasta alcanzarla (realmente lo que se ir´ mejorando ser´ las
a a a
−1
soluciones del dual y = cB B ).
El algoritmo del simplex dual va a utilizar herramientas an´logas a las utilizadas en
a
el simplex. Los pasos son los siguientes:
Construcci´n de una soluci´n b´sica primal que sea b´sica factible dual.
o o a a
Si una soluci´n es factible primal entonces dicha soluci´n ser´ optima.
o o a´
En caso de que la soluci´n no sea factible primal, entonces habr´ que construir
o a
una soluci´n b´sica primal que sea b´sica factible dual y que sea adyacente a la
o a a
anterior, para lo cual deberemos determinar que variable sale de la base actual,
que variable entra en la nueva base y deberemos realizar la operaci´n de cambio
o
de base.
21
22. Prog. Lineal Dualidad A. Post-optimal Prog. Entera
El algoritmo va a utilizar las mismas tablas que las que ya se utilizar´n en el caso del
o
simplex.
Para obtener una idea intuitiva del algoritmo podemos tratar de ver que estamos
resolviendo el problema dual del problema planteado por medio de una tabla correspon-
diente al primal. Con lo que el valor de los costos marginales de las variables del primal
est´n directamente relacionados con el valor de las variables duales (ya vimos algo de
a
esto anteriormente), y el valor de las variables del problema primal estar´ directamente
a
relacionado con los costos marginales de las variables duales.
Las notas correspondientes a la construcci´n de una soluci´n b´sica primal que sea
o o a
b´sica factible dual se proporcionar´n posteriormente por medio de ejemplos. Comen-
a a
zamos suponiendo que ya tenemos una soluci´n b´sica factible dual que no es factible
o a
primal, por tanto tendr´ algunas variables b´sicas con valor negativo, y que vamos a
a a
construir una soluci´n b´sica factible dual adyacente.
o a
5.1. Determinaci´n de la variable que abandona la base
o
Si no hay factibilidad primal, xB = B −1 b ≥ 0, y existir´ alguna variable b´sica
a a
tomando valor estrictamente negativo. Se selecciona para abandonar la base la variable
b´sica xr tal que:
a
¯r = m´ {¯i | ¯i < 0}
b ın b b
1≤i≤m
(criterio relacionado con seleccionar la variable dual con el mejor costo marginal)
5.2. Determinaci´n de la variable que entra la base
o
Con objeto de conseguir que la factibilidad se mejore y de que no se pierda la factibil-
idad dual de la base se seleccionar´ para entrar en la base una variable xk cuyo elemento
a
pivote sea negativo, con lo que dicha variable entrar´ con valor positivo y adem´s dicha
a a
variable cumplir´:
a
ck − zk cj − zj
= m´ın | yrj < 0
yrk 1≤j≤n yrj
La utilizaci´n del m´dulo permite definir un unico criterio tanto para el caso de proble-
o o ´
mas de m´ximo como de m´
a ınimo.
22
23. Prog. Lineal Dualidad A. Post-optimal Prog. Entera
En el caso de no existir ninguna variable no b´sica con valor estrictamente negativo en
a
la fila de la variable que sale el problema que estamos tratando de resolver es no factible
(ejercicio).
Para demostrar la convergencia del algoritmo hay que demostrar que de una tabla a
otra se produce una mejora en el valor de la funci´n objetivo del problema dual, tomando
o
−1
como soluci´n y = cB B (siempre y cuando no exista degeneraci´n dual, es decir, que
o o
la variable que entra no tenga costo marginal nulo). Bajo esta consideraci´n siempre
o
se toman soluciones duales distintas y en consecuencia, ya que su n´mero es finito, el
u
algoritmo debe finalizar (ejercicio).
S´lo resta del algoritmo la cuesti´n correspondiente a la construcci´n de soluciones
o o o
b´sicas factibles duales. Hay una situaci´n en la que dicha construcci´n es trivial, y s´lo
a o o o
utilizaremos el algoritmo simplex dual para la resoluci´n de problemas en este caso. Si
o
el problema no se ajusta a esta situaci´n entonces existen m´todos para la construcci´n
o e o
de la soluci´n ba´ica factible dual, pero no vamos a entrar en ellos. Llegado el caso
o s
aplicar´ıamos el m´todo simplex con variable artificial estudiado en el tema 2.
e
La situaci´n considerada ser´ cuando tengamos un PPL de m´nimo con costos cj no
o a ı
negativos y en donde todas las restricciones son de desigualdad (existiendo al menos una
restricci´n de tipo “≥”). Entonces podemos multiplicar las restricciones de tipo ≥ por
o
−1 e introducir variables de holgura en la primera base. Debido a que esta primera base
est´ formada por holguras los costos marginales coinciden con los originales y por tanto
a
son mayores o iguales que cero y dicha soluci´n es una soluci´n b´sica que es b´sica
o o a a
factible dual.
Para finalizar el tema presentamos la resoluci´n de algunos problemas por medio del
o
algoritmo simplex dual.
Resolver el siguiente PPL:
m´ Z = x2
ın
s. a: 2x1 + x2 ≤ 6
x2 ≤ 4
−x1 + x2 ≥ 2
x≥0
Transformamos el problema, multiplicando la tercera restricci´n por −1 e introducien-
o
23
24. Prog. Lineal Dualidad A. Post-optimal Prog. Entera
do holguras x3 , x4 y x5 , resultando:
m´ Z = x2
ın
s. a: 2x1 + x2 + x3 = 6
x2 + x4 = 4
x1 − x2 + x5 = −2
x≥0
con este problema la tabla inicial queda:
x1 x2 x3 x4 x5
x3 2 1 1 0 0 6
x4 0 1 0 1 0 4
x5 1 -1 0 0 1 -2
0 1 0 0 0
Esta tabla consituye una soluci´n b´sica factible dual. Sale la variable b´sica con valor
o a a
negativo mayor en valor absoluto, que es x5 . Entra la variable no b´sica con coeficiente
a
estrictamente negativo que hace m´ ınimo el m´dulo de los cocientes cjy−zj , es decir, la
o 3j
unica existente x2 , finalmente se pivota haciendo un 1 en la posici´n de cruce (an´logo
´ o a
al algoritmo del simplex). La tabla resultante es:
x1 x2 x3 x4 x5
x3 3 0 1 0 1 4
x4 1 0 0 1 1 2
x2 -1 1 0 0 -1 2
1 0 0 0 1
La tabla obtenida es optima ya que es factible primal. La soluci´n es x1 = 0, x2 = 2 con
´ o
un valor de la funci´n objetivo de 2.
o
m´ Z = 31x1 + 11x2 + 12x3
ın
s. a: x1 + x2 + 2x3 ≥ 21
2x1 + x2 + x3 ≥ 12
2x2 + 2x3 ≤ 16
x≥0
Cambiamos de direcci´n las dos primeras restricciones e introducimos holguras en
o
todas.
24
25. Prog. Lineal Dualidad A. Post-optimal Prog. Entera
x1 x2 x3 x4 x5 x6
x4 -1 -1 -2 1 0 0 -21
x5 -2 -1 -1 0 1 0 -12
x6 0 2 2 0 0 1 16
31 11 12 0 0 0
Sale la variable b´sica con valor negativo m´s grande en valor absoluto, x4 , y entra la
a a
variable con la que se alcanza el siguiente m´
ınimo
ck − zk cj − zj 12 31 11 12
= m´ın |y1j < 0 | | = m´
ın{| |, | |, | |},
y1k 1≤j≤n y1j −2 −1 −1 −2
es decir x3 .
x1 x2 x3 x4 x5 x6
1 1
x3 2 2
1 -1
2
0 0 21
2
x5 -3
2
-1
2
0 -1
2
1 0 3
-2
x6 -1 1 0 1 0 1 -5
25 5 0 6 0 0
Sale x6 y entra x1 .
x1 x2 x3 x4 x5 x6
1
x3 0 1 1 0 0 2
8
x5 0 -2 0 -2 1 -3
2
6
x1 1 -1 0 -1 0 -1 5
0 30 0 31 0 25
La soluci´n es factible primal y por tanto optima, siendo x1 = 5, x2 = 0 y x3 = 8.
o ´
Por ultimo resolvamos el siguiente problema,
´
m´ Z = x1 + x2 + x3
ın
s. a: 3x1 + 2x2 ≤ 3
2x1 + 3x2 − x3 ≥ 5
x3 ≤ 2
x≥0
25
26. Prog. Lineal Dualidad A. Post-optimal Prog. Entera
La tabla inicial es
x1 x2 x3 x4 x5 x6
x4 3 2 0 1 0 0 3
x5 -2 -3 1 0 1 0 -5
x6 0 0 1 0 0 1 2
1 1 1 0 0 0
Sale x5 y entra x2 .
x1 x2 x3 x4 x5 x6
5 2 2
x4 3
0 3
1 3
0 -1
3
2
x2 3
1 -1
3
0 -1
3
0 5
3
x6 0 0 1 0 0 1 2
1 4 1
3
0 3
0 3
0
Ahora debe salir x4 , pero no existe variable candidata a entrar en la base, por tanto el
problema es no factible. Puede observarse que la posible mejor situaci´n ser´ x3 = 0
o ıa
ıamos que 3x1 + 2x2 ≤ 3 y 2x1 + 3x2 ≥ 5 que son incompatibles.
con lo que obtendr´
26