You are on page 1of 25

1

PROGRAMACION ENTERA

Un problema de Programacin Entera es un problema de programacin lineal en el cual algunas de las variables, o
todas, tienen que ser nmeros enteros no negativos. El objetivo de la Programacin Lineal Entera es encontrar el
valor de la funcin que
Max (Min) z = c1x1 + c2x2 + + cnxn
Denominada funcin objetivo.
La funcin objetivo se encuentra sujeta a una serie de restricciones:
a
11
x
1
+ a
12
x
2
+ + a
1n
x
n
(, , =) b
1

a
21
x
1
+ a
22
x
2
+ + a
2n
x
n
(, , =) b
2

.
a
m1
x
1
+ a
m2
x
2
+ + a
mn
x
n
(, , =) b
m

x
j
0 (j=1, 2, ...., n)
x
j
entero

Cuando se nos presente la resolucin de un Problema de Programacin Entera, lo resolvemos como un problema
de Programacin Lineal. Si sus soluciones son enteras, sta es la solucin para el problema de programacin lineal
entera.
En cualquier problema se verifica que la solucin ptima
z
op
(PL) z
op
(PLE)
sta relacin se cumple siempre porque cualquier solucin factible para un problema de PLE es tambin una
solucin factible para la su relajacin lineal (PL).
Definicin 4.1. El problema de programacin lineal que se obtiene al omitir todas las restricciones enteras
variables 0-1 se llama relajacin de programacin lineal para la programacin entera.
Definicin 4.2. Criterio de optimalidad en un problema de PLE: Una solucin entera factible x
F
es ptima
para el problema de PLE si es solucin ptima de una relajacin lineal. En tal caso se cumple que z
op
(PL) = z
op

(PLE)=z
F

Un problema de programacin entera en el cual solamente algunas de las variables tienen que ser nmeros
enteros, se llama un problema de programacin entera mixta. Por ejemplo

Un problema de programacin entera en el cual todas las variables toman valores 0 1, se denomina problema
de programacin entera 0-1 (programacin lineal binaria).
La relajacin de programacin lineal para la programacin mixta del ejemplo anterior es:

Por lo tanto, la relajacin programacin lineal es una versin menos restringida, o ms relajada, de la
programacin entera.

Esto significa que la regin factible para cualquier programacin entera tiene que estar incluida en la regin factible
de la relajacin programacin lineal correspondiente.

ALGORITMOS DE PROGRAMACIN ENTERA
2



Mtodo Grfico
Es idntico al mtodo grfico de programacin lineal continua, solo que aqu, se seleccionan solo las soluciones
enteras dentro del rea de soluciones factibles.

Mtodo de Bifurcacin y Acotacin (Branch And Bound)
Es una estrategia sistemtica, que reduce mucho el nmero de combinaciones que se deben examinar.
Algoritmo
1. Encontrar la solucin mediante el Mtodo Simplex. Si la solucin no es entera, pase al segundo punto.
2. Comienza con la solucin ptima del simplex en donde se ignoran las restricciones de variables enteras.
3. Se selecciona una variable con valor no cero y se crean dos ramas mutuamente excluyentes, esto da lugar a dos
(2) nuevos problemas de Programacin Lineal; que se deben resolver.
4. Si ninguna solucin es entera, con la rama de mayor valor de Z, se crean nuevas ramas y se resuelven nuevos
problemas por programacin lineal (Mtodo Simplex).
5. Se repite el punto 4), Hasta encontrar la solucin entera ptima.

Mtodo de los planos cortantes de Gomory
ste mtodo sirve para solucionar problemas de ms de dos (2) variables.
Algoritmo
1. Encontrar la solucin, empleando el mtodo simplex.
2. Si la solucin es entera, entonces estamos en el ptimo.
3. Si no es entera, introducir una restriccin nueva para la variable no entera, que tenga la mayor parte fraccional
(Quebrar empates arbitrariamente) y resolver el nuevo problema mediante el mtodo dual simplex.

Nueva restriccin a partir de la restriccin actual que tenga la variable cuyo valor en su parte fraccional sea mayor.
a. Escriba cada constante como la suma de: Un nmero entero de cualquier signo y una fraccin no negativa,
menor que uno (1).
3

b. Cambiar la ecuacin trasladando los coeficientes enteros al lado derecho.

Mtodo Aditivo de Egon Balas para problemas binarios (0,1)
No confundir ste mtodo para solucionar problemas de asignaciones, aqu el problema de programacin lineal tiene
la forma general y lo diferente es que las variables solo pueden tomar valores binarios (0,1). La filosofa del mtodo
se basa en pensar que si se tiene una funcin objetiva minimizando y todos sus trminos son positivos, entonces,
entre menos variables tomen el valor de uno (1), la funcin objetiva ser mnima.

Algoritmo
1. La funcin objetivo se minimiza, en caso de maximizacin, use la regla de equivalencia: Maximizar (Z) =
Minimizar (-Z).
2. Se requiere que Cj 0 , j . En caso de que Cj < 0, entonces Xj se sustituye por:
X
J
= 1 -

, es decir

es el complemento.

Ejemplo: Min Z = 3X
1
2X
2
X
2
= 1 -

2
; Remplazando Z = 3X
1
2(1-

2
)

Min Z = 3X
1
+ 2

2
2 , que para el caso: Min Z = 3X
1
+ 2

2

Nota: El cambio de variable, tambin se debe aplicar a todas las restricciones.
Para apreciar la utilidad del mtodo, resolveremos el siguiente ejemplo, primero, contemplando todas las
posibles soluciones y a continuacin aplicando el mtodo aditivo de Egon Balas, que reduce el nmero de
soluciones posibles a contemplar.

Mtodo de Bifurcacin y Acotacin (Branch And Bound)
Algoritmo de ramificacin y acotamiento
El primer algoritmo de ramificacin y acotamiento fue desarrollado en 1960 por A. Land y G. Doig para el problema
general de PLE combinada o pura. Ms adelante, en 1965, E. Balas desarroll el algoritmo aditivo para resolver
PLEs con variables binarias puras (cero o uno)5. Los clculos del algoritmo aditivo eran tan simples (principalmente
sumas y restas) que en un inicio fue aclamado como un posible gran avance en la solucin de la PLE. Por desgracia,
no produjo las ventajas computacionales deseadas.
Adems, se demostr que el algoritmo, que inicialmente no pareca estar relacionado con la tcnica de ramificacin y
acotamiento, era simplemente un caso especial del algoritmo general de Land y Doig.
Esta seccin presenta slo el algoritmo de ramificacin y acotamiento de Land-Doig. Se utiliza un ejemplo numrico
para proporcionar los detalles.

Ejemplo N
o
1:
Maximizar Z = 5X
1
+ 4X
2

Sujeto a
X
1
+ X
2
5
10X
1
+ 6X
2
45
X
1
, X
2
enteras no negativas

Los puntos de cuadrcula en la figura 1 definen el espacio de soluciones de PLE. El problema PL1 continuo asociado
en el nodo 1 (rea sombreada) se define a partir de la PLE eliminando las restricciones enteras. La solucin ptima
de PL1 es x
1
= 3.75, x
2
= 1.25 y z = 23.75.
Como la solucin ptima de PL1 no satisface las restricciones enteras, el espacio de soluciones se subdivide de una
manera sistemtica que finalmente localiza el ptimo de la PLE. En primer lugar, el algoritmo de ramificacin y
acotamiento selecciona una variable entera cuyo valor ptimo en PL1 no es entero. En este ejemplo, tanto x
1
como x
2

califican. Seleccionando x
1
(= 3.75) arbitrariamente, la regin 3 x
1
4 del espacio de soluciones de PL1 contiene
valores no enteros de x
1
, y por lo tanto puede ser eliminada. Esto equivale a reemplazar el PL1 original con dos
problemas de PL nuevos.

Espacio de PL2 = Espacio de PL1 + (x
1
3)
Espacio de PL3 = Espacio de PL1 + (x
1
4)
La figura 2 ilustra los espacios de PL2 y PL3. Los dos espacios combinados contienen los mismos puntos enteros factibles que la
PLE original, es decir, que no se pierde informacin cuando PL1 se reemplaza con PL2 y PL3.

4


Figura 1 Espacio de soluciones de la PLE (puntos de cuadrcula) y del PL1 (rea sombreada) del x1 ejemplo 1 (PL1)

Si de una forma inteligente imponemos restricciones secuenciales que excluyan las regiones libres de enteros (por
ejemplo 3 x
1
4 en PL1), estaremos reduciendo el espacio de soluciones continuo de PL1 a varios subproblemas
de programacin lineal cuyos puntos extremos ptimos satisfacen las restricciones enteras. El mejor de estos
subproblemas es la solucin ptima de PLE.
Las nuevas restricciones, x
1
3 y x
1
4, son mutuamente excluyentes, de modo que el PL2 y el PL3 en los nodos 2
y 3 deben tratarse como programaciones lineales distintas, como se muestra en la figura 3. Esta dicotomizacin da
lugar al concepto de ramificacin en el algoritmo de ramificacin y acotamiento. Es este caso, x
1
se llama variable
de ramificacin.



Figura 2 Espacios de soluciones de PL2 y PL3 para el problema 1
5


La PLE ptima queda o en PL2 o en PL3. Por consiguiente, ambos subproblemas deben ser examinados.
Arbitrariamente examinamos primero PL2 (asociada con x
1
3):

Maximizar Z = 5X
1
+ 4X
2

Sujeto a
X
1
+ X
2
5
10X
1
+ 6X
2
45
X
1
3
X
1
, X
2
0

La solucin de PL2 es x
1
=3, x
2
=2 y z = 23. La solucin de PL2 satisface los requerimientos enteros para x
1
y x
2
. De
ah que se dice que PL2 debe ser sondeado a fondo, lo que significa que ya no puede dar una solucin de
programacin lineal entera mejor y ya no se requiere ninguna otra ramificacin que provenga del nodo 2.

En este momento no podemos decir que la solucin entera obtenida con PL2 sea ptima para el problema original,
porque PL3 puede producir una mejor solucin entera. Todo lo que podemos decir es que z = 23 es una cota inferior
del valor objetivo ptimo (mximo) de la PLE original. Esto significa que cualquier subproblema no examinado que
no puede producir un mejor valor objetivo que la cota inferior, debe ser desechado como no promisorio. Si un
Subproblema no examinado produce una mejor solucin entera, entonces el lmite inferior debe ser actualizado como
corresponde.
Dada la cota inferior z = 23, examinamos PL3 (el nico subproblema restante no examinado en este momento).
Debido al ptimo z = 23.75 en el PL1 y a qu sucede que todos los coeficientes de la funcin objetivo son enteros, es
imposible que PL3 pueda producir una mejor solucin entera (con z = 23). En consecuencia, desechamos PL3 y
concluimos que fue sondeado a fondo.
El algoritmo de ramificacin y acotamiento ya est completo porque PL2 y PL3 se examinaron y sondearon a fondo,
el primero para producir una solucin entera y el segundo porque no produjo una mejor solucin entera. Por lo tanto
concluimos que la solucin de programacin lineal ptima es la asociada con la cota inferior, o sea, x
1
= 3, x
2
= 2 y z
=23.
Considerando el algoritmo resultan dos preguntas:
1. En PL1, podramos haber seleccionado x
2
como la variable de ramificacin en lugar de x
1
?
2. Cuando seleccionamos el siguiente subproblema a ser examinado, podramos haber solucionado primero PL3 en
lugar de PL2?
La respuesta a ambas preguntas es s pero los clculos subsiguientes pueden diferir dramticamente.
La figura 4 demuestra este punto. Supongamos que examinamos primero PL3 (en lugar de PL2 como lo hicimos en
la figura 3). La solucin es x
1
= 4, x
2
=0 .83 y z = 23.33 (comprubelo!).
Como x
2
(=0.83) no es entera, PL3 se examina ms a fondo creando los subproblemas PL4 y PL5 por medio de las
ramas x
2
0 y x
2
1, respectivamente. Esto significa que

Espacio de PL4 = Espacio de PL3 + (x 0)
= Espacio PL1 + (x
1
4) + (x
2
0)
Espacio de PL5 = Espacio de PL3 + (x
2
1)
= Espacio de PL1 + (x
1
4) 1 (x
2
1)

Ahora tenemos tres subproblemas desconectados que se deben examinar: PL2, PL4 y PL5. Supongamos que
arbitrariamente examinamos primero PL5. No tiene ninguna solucin factible, y por consiguiente se sonde a fondo.

6


Figura 3 Utilizacin de la variable de ramificacin x
1
para crear PL2 y PL3 para el ejemplo 1

A continuacin, examinamos PL4. La solucin ptima es x
1
= 4.5, x
2
=0 y z = 22.5. El valor no entero de x
1
conduce
a las ramificaciones x
1
4 y x
1
5 y la creacin de los subproblemas PL6 y PL7 a partir del PL4

Espacio de PL6 = Espacio de PL1 + (x
1
4) + (x
2
0) + (x
1
4)

Espacio de PL7 = Espacio de PL1 + (x
1
4) + (x
2
0) + (x
1
5)

Ahora, los subproblemas PL2, PL6 y PL7 permanecen sin ser examinados. Si seleccionamos PL7 para examinarlo, el
problema est sondeado a fondo porque no tiene ninguna solucin factible.
A continuacin, seleccionamos PL6. El problema da por resultado la primera solucin entera (x
1
= 4, x
2
= 0, z = 20),
y, por lo tanto, proporciona la primera cota inferior (=20) del valor objetivo ptimo de la PLE. Slo falta examinar el
subproblema PL2, y da una mejor solucin entera (x
1
= 3, x
2
= 2, z = 23). De este modo, la cota inferior se actualiza
de z = 20 a z = 23.A estas alturas, todos los subproblemas han sido sondeados (examinados) a fondo, y la solucin
ptima es la asociada con la cota inferior ms actualizada, es decir, x
1
= 3, x
2
= 2 y z = 23.

La secuencia de solucin para obtener la solucin en la figura 4 (PL1 PL3 PL5 PL4 PL7 PL6 PL2) es
un escenario del peor caso que, sin embargo, muy bien puede ocurrir en la prctica. En la figura 3, tuvimos suerte de
tropezarnos con una buena cota inferior en el primer subproblema (PL2), y que a su vez nos permitiera examinar a
fondo PL3 sin necesidad de ningn examen adicional. En esencia, completamos el procedimiento resolviendo un
total de dos subproblemas PL. En la figura 4 la historia es diferente, resolvimos siete subproblemas
PL para completar el algoritmo de ramificacin y acotamiento.
7


Figura 4 rbol de ramificacin y acotamiento alternativo para el problema 1

Ejemplo N
o
2: Una mueblera fabrica mesas y sillas. Una mesa requiere de 1 hora de mano de obra y 9 pies
cuadrados de madera, una silla requiere de 1 hora de mano de obra y 5 pies cuadrados de madera.
Actualmente, la mueblera dispone de 6 horas de mano de obra y 45 pies cuadrados de madera. Cada mesa genera
una utilidad de US$8, cada silla representa una utilidad de US$5. Formule y resuelva un PL para maximizar el
beneficio de la mueblera.
Consideremos:
x
1
= nmero de mesas fabricadas
x
2
= nmero de sillas fabricadas

Como x
1
y x
2
deben ser enteras, el LP que resuelve el problema queda:

Max z = 8x
1
+ 5x
2

s.a.:
x
1
+ x
2
6
9x
1
+ 5x
2
45
x
1
, x
2
0; x
1
, x
2
son enteros

En primer lugar se resuelve la relajacin del IP, llamaremos a este problema el Subproblema 1:
8


La resolucin grfica del Subproblema 1 se muestra en la Figura 3.2. En este caso, la solucin ptima corresponde al
punto x
1
=

= 3.75 y x
2
=

= 2.25, con valor de la funcin objetivo z =


Como se mencion anteriormente, la solucin del LP no puede ser mejor a la del LP relajado, por lo que z =

es
una Cota Superior para la funcin objetivo.

Figura 6: Regin Factible del Subproblema 1

El prximo paso es seleccionar una particin de la regin factible de la relajacin de forma de intentar obtener la
solucin ptima del LP. Para ello, arbitrariamente se escoge una variable que no satisfaga las condiciones del LP, es
decir, una variable fraccionaria que debera ser entera, por ejemplo x
1
. Cmo se busca un valor entero para x
1

interesa que x
1
3 o bien que x
1
4, ya que no puede haber una solucin factible entera en el intervalo 3 < x
1
< 4,
en otras palabras se buscan soluciones en los valores enteros ms cercanos al valor fraccionario obtenido. De acuerdo
a ello, ramificaremos la variable x
1
definiendo los siguientes subproblemas:
Subproblema 2: Subproblema 1 + restriccin: x
1
3
Subproblema 3: Subproblema 1 + restriccin: x
1
4

Ntese que ambos subproblemas excluyen el valor x
1
=

, es decir, la solucin ptima de los subproblemas no puede


ser igual al de la relajacin. Por otro lado, como se est resolviendo un problema ms restrictivo que la relajacin
original el valor de la funcin objetivo no puede ser mejor.

La ramificacin de las variables se ordena en un rbol de ramificacin como se muestra en la Figura 7. La regin
factible del subproblema 2 se muestra en la Figura 8. Los puntos extremos de la regin factible: D, E, F y G son los
candidatos a ptimos, evaluando se obtiene: z
D
= 0, z
E
= 24, z
F
= 39 y z
G
= 30, por lo que la mejor solucin
corresponde al punto F (x
1
= 3; x
2
= 3), con valor de la funcin objetivo: z = 39. En este caso, la solucin obtenida
satisface las condiciones de enteridad, por lo que es posible definir como cota superior z = 39.
9


Figura 7: rbol de ramificacin subproblemas 2 y 3

Figura 8: Regin Factible del subproblema 2

Si bien la solucin obtenida del subproblema 2 satisface todas las condiciones del problema, debemos completar la
ramificacin ya que an hay esperanzas de obtener una solucin menor o igual al valor ptimo del subproblema 1,
pero mejor a la cota superior actual. La regin factible del subproblema 3 se muestra en la figura 9. Los puntos
extremos de la regin factible son: A, B y C, con respectivos valores de la funcin objetivo: z
A
= 40, z
B
= 32 y z
C
=
41. Por lo tanto el ptimo corresponde a:
x
1
= 4 y x
2
=

, valor que no satisface la condicin de enteridad.


10


Figura 9. Regin Factible del subproblema 3

Si bien hasta ahora se dispone de una solucin entera con valor de la funcin objetivo de 39, en el subproblema 3 se
obtuvo como valor optimo: z = 41. Si bien el subproblema 3 no representa una solucin factible para el LP, al
ramificar a partir de este problema se podra esperar un valor de la funcin objetivo que sea menor o igual a 41 pero
que podra ser mejor que 39, por lo que no se puede dar como finalizada las ramificaciones. De acuerdo a ello,
podemos definir dos nuevos subproblemas a partir el subproblema 3. Como la variable x
2
=

no es entera, conviene
buscar valores con las siguientes particiones de la regin factible: x
2
1 y x
2
2. En otras palabras, se deben
resolver los siguientes subproblemas:
Subproblema 4: Subproblema 3 + restriccin: x
2
1
Subproblema 5: Subproblema 3 + restriccin: x
2
2

El rbol de ramificacin con los dos nuevos subproblemas se muestra en la Figura 10. La regin factible para los
subproblemas 4 y 5 se indican en la Figura 11 Para el subproblema 4, los nuevos candidatos a ptimos son los puntos
H e I, con valores de la funcin objetivo: z
H
= 37 y z
I
=

=40.556. Entre los puntos A, B, H e I, el mejor valor se


obtiene para el punto I con x
1
=

y x
2
= 1.
Respecto del subproblema 5 se observa que no existen puntos que satisfagan simultneamente las restricciones del
subproblema 3 y x
2
2, por lo que tiene solucin imposible.
Como la solucin ptima del subproblema 4 es superior a la cota, es necesario volver a ramificar ya que
eventualmente se podra encontrar una solucin que sea menor o igual a z =

, pero mejor que z = 39. En este


caso, la variable no entera es x
1
=

, por lo que conviene definir los siguientes subproblemas:


Subproblema 6: Subproblema 4 + restriccin: x
1
4
Subproblema 7: Subproblema 4 + restriccin: x
1
5

11


Figura 10: rbol de ramificacin subproblemas 4 y 5

Figura 11: Regin Factible del subproblemas 4 y 5

El nuevo rbol de ramificacin se muestra en la Figura 12. Se agregan las nuevas restricciones referentes a x
1
y se
completa la regin factible para los subproblemas 6 y 7 en la Figura 13. En este caso, la regin factible para el
subproblema 6 se reduce al segmento de lnea entre los puntos B y H, con valores para la funcin objetivo de: z
B
=
32 y z
H
= 37, por lo que el ptimo corresponde al punto H. Como en el punto H los valores de las variables son
enteros, se podra pensar que H es un candidato a ptimo. Sin embargo, el valor de la funcin objetivo en H es
inferior a la cota definida previamente, por lo que se descarta. En el subproblema 7, el nico punto que satisface
todas las restricciones es el punto A, con valor de la funcin objetivo z = 40. Como en el subproblema 7 el valor de
las variables es entero (x
1
= 5 y x
2
= 0) y dado que el valor de la funcin objetivo es mejor que la cota actual, 40 se
transforma en la nueva cota. Como el subproblema 6 presenta un valor de la funcin objetivo inferior a la cota, no
tiene sentido seguir ramificando pues se ha alcanzado el ptimo del LP. El rbol de ramificacin completo se
muestra en la Figura 14 donde se identifica la solucin ptima.
12


Figura 12: rbol de ramificacin subproblemas 6 y 7


Figura 13: Regin Factible del subproblemas 6 y 7
13


Figura 14: rbol de ramificacin final

Algoritmo de plano de corte (Algoritmo de Gomory)
Como en el algoritmo de ramificacin y acotamiento, el algoritmo de plano de corte tambin se inicia en la solucin
ptima continua. Se agregan restricciones especiales (llamadas cortes) al espacio de soluciones para que produzcan
un punto extremo ptimo entero. En el ejemplo 2, primero demostramos grficamente cmo se utilizan los cortes
para producir una solucin entera y despus cmo se implementa la idea algebraicamente.


Ejemplo N
o
3
Considere la siguiente PLE.
14


La figura 15 presenta un ejemplo de tales cortes. Inicialmente, comenzamos con la solucin ptima continua de la PL z = 66

, x
1

= 4

, x
2
= 3

. Luego agregamos el corte 1, el cual produce la solucin ptima (continua) de la PL z = 62, x


1
= 4

x
2
=3.
Agregamos posteriormente el corte II, el cual (junto con el corte I y las restricciones originales) produce la solucin ptima entera
de la PL z = 58, x
1
= 4, x
3
= 3.

Figura 15 Ilustracin del uso de cortes en una PLE

Los puntos agregados no eliminan ninguno de los puntos enteros factibles originales, pero deben pasar al menos por
un punto entero factible o no factible. stos son requerimientos bsicos de cualquier corte.
Es puramente accidental que un problema de 2 variables utilizara exactamente 2 cortes para llegar a la solucin
entera ptima. En general, el nmero de cortes, aun cuando es finito, no puede determinarse con base en el tamao
del problema, en el sentido que un problema pequeo puede requerir ms cortes que uno grande.

A continuacin, utilizamos el mismo ejemplo para demostrar cmo se construyen los cortes e implementan
algebraicamente. Dadas las holguras x
3
y x
4
para las restricciones 1 y 2, la tabla de PL ptima se da como


La solucin ptima continua es El corte se
desarrolla de acuerdo con la suposicin de que todas las variables, incluidas las holguras, son enteras.
Observe, adems, que como todos los coeficientes objetivos originales son enteros en este ejemplo, el valor de z
tambin es entero.
La informacin en la tabla ptima puede escribirse explcitamente como

15



Se puede utilizar una ecuacin de restriccin como fila origen para generar un corte, siempre que su lado derecho
sea fraccionario. Asimismo, la ecuacin z puede utilizarse como fila origen en este ejemplo porque sucede que z es
entera. Demostraremos cmo se genera un corte con cada una de estas filas origen, comenzando con la ecuacin z.
Primero, factorizamos todos los coeficientes no enteros de la ecuacin en un valor entero y un componente
fraccionario positivo. Por ejemplo,

La factorizacin de la ecuacin z da por resultado

Si movemos todos los componentes enteros al lado izquierdo y todos los componentes fraccionarios al lado derecho,
obtenemos

Como x3 y x4 son no negativas y todas las fracciones son positivas por construccin, el lado derecho debe satisfacer
la siguiente desigualdad:


Este resultado se justifica porque un valor entero menor que una fraccin positiva necesariamente debe ser 0.
La ltima desigualdad es el corte deseado, y representa una condicin necesaria (pero no suficiente) para obtener
una solucin entera. Tambin se conoce como corte fraccionario porque todos sus coeficientes son fracciones.

Como x
3
= x
4
= 0 en la tabla de PL continua ptima dada antes, la solucin continua actual viola el corte (porque da
como resultado). Por lo tanto si agregamos este corte a la tabla ptima, el punto extremo ptimo resultante mueve la
solucin hacia la satisfaccin de las restricciones enteras.
Antes de demostrar cmo se implementa un corte en la tabla ptima, demostraremos cmo tambin se pueden
construir los cortes a partir de las ecuaciones de restriccin. Considere la fila x
1
:
16


Cualquiera de los tres cortes antes dados puede usarse en la primera iteracin del algoritmo de plano de corte. No es
necesario generar los tres cortes antes de seleccionar uno.
Seleccionando arbitrariamente el corte generado con la fila x
2
, podemos escribirlo en forma de ecuacin como


La tabla es ptima pero no factible. Aplicamos el mtodo simplex dual para recuperar la factiblidad, lo cual da por
resultado

La ltima solucin sigue siendo no entera en x
1
y x
3
, y arbitrariamente seleccionamos x
1
como la siguiente fila
origen, es decir,
17


El corte asociado es

Agregando el corte II a la tabla ptima previa, obtenemos

El mtodo simplex dual da la siguiente tabla:

La solucin ptima (x
1
= 4, x
2
= 3, z = 58) es totalmente entera. No es accidental que todos los coeficientes de la
ltima tabla sean tambin enteros, una consecuencia de utilizar el corte fraccionario.

Comentarios. Es importante sealar que el corte fraccionario asume que todas las variables, incluidas las de holgura
y supervit son enteras. Esto significa que el corte tiene que ver slo con problemas enteros puros. La importancia de
esta suposicin se ilustra con un ejemplo.
Considere la restriccin

Desde el punto de vista de resolver la PLE asociada, la restriccin se trata como una ecuacin utilizando la holgura
no negativa s
1
, es decir,

La aplicacin del corte fraccionario asume que la restriccin tiene una solucin entera factible en x
1
, x
2
y s
1
. Sin
embargo, la ecuacin dada tendr una solucin entera factible en x
1
y x
2
slo si s
1
es no entera. Esto significa que el
algoritmo de plano de corte concluir, gracias a la aplicaciones del simplex dual, que el problema no tiene una
solucin factible (entera), aun cuando las variables de inters, x
1
y x
2
pueden asumir valores enteros factibles.
Hay dos formas de remediar esta situacin.
1. Multiplique la restriccin por una constante apropiada para eliminar todas las fracciones.
Por ejemplo, multiplicando la restriccin anterior por 6, obtenemos

18

Cualquier solucin entera de x
1
y x
2
da automticamente por resultado la holgura entera.
Sin embargo, en algunos casos este tipo de conversin puede producir coeficientes enteros excesivamente grandes, y
esto a su vez puede conducir a errores de redondeo de clculo en la computadora.
2. Use un corte especial llamado corte combinado, el cual permite que slo un subconjunto de variables asuma
valores enteros, con todas las dems variables (incluidas las de holgura y supervit) permaneciendo continuas. Los
detalles de este corte no se presentarn en este captulo (vea Taha, 1975, pgs. 198-202).

Ejemplo N
o
4:
Max z = 8x
1
+ 5x
2

s.a.:
x
1
+ x
2
6
9x
1
+ 5x
2
45
x
1
, x
2
0; x
1
, x
2
son enteros

Bsica
Variable de decisin Variable de holgura Solucin
x
1
x
2
x
3
x
4

z -8 -5
0 0
0
x
3
1 1
1
0 6
x
4
9 5 0
1
45
Bsica
Variable de decisin Variable de holgura Solucin Razn
x
1
x
2
x
3
x
4

z -8 -5
0 0
0
x
3
1 1
1
0 6 6
x
4
9 5 0
1
45 5

Bsica
Variable de decisin Variable de holgura Solucin Razn
x
1
x
2
x
3
x
4

z 0 -5/9
0 8/9
40
x
3
0 4/9
1
-1/9 1 9/4
x
1
1 5/9 0
1/9
5 9

Bsica
Variable de decisin Variable de holgura Solucin Razn
x
1
x
2
x
3
x
4

z 0 0 5/4 3/4 165/4
x
2
0 1 9/4 -1/4 9/4 81/16
x
1
1 0 -5/4 1/4 15/4 9



19

La informacin en la tabla ptima puede escribirse explcitamente como
Z +

= 40


Utilizamos x
1
para generar un plano de corte
La factorizacin de la ecuacin x
1
da por resultado


Si movemos todos los componentes enteros al lado izquierdo y todos los componentes fraccionarios al lado derecho,
obtenemos
x
1
2x
3
3 = -


Por consiguiente, el corte asociado es
-

0
Podemos escribirlo en forma de ecuacin como
-


Esta restriccin se agrega a la tabla ptima de PL como sigue:

Bsica
Variable de decisin Variable de holgura Solucin
x
1
x
2
x
3
x
4
s
1

z 0 0 5/4 3/4 0 165/4
x
2
0 1 9/4 -1/4 0 9/4
x
1
1 0 -5/4 1/4 0 15/4
s
1
0 0 -3/4 -1/4 1 -3/4
La tabla es ptima pero no factible. Aplicamos el mtodo simplex dual para recuperar la factibilidad, lo cual da por
resultado
Bsica
Variable de decisin Variable de holgura Solucin
x
1
x
2
x
3
x
4
s
1

z 0 0 5/4 3/4 0 165/4
x
2
0 1 9/4 -1/4 0 9/4
x
1
1 0 -5/4 1/4 0 15/4
s
1
0 0 -3/4 -1/4 1 -3/4
Razn -5/3 -3

La variable que entra a la base es aquella que tiene el coeficiente (Cj Zj)/

menor si minimizamos y
mayor si maximizamos
Max = {(

) (

)} = {-5/3, -3} = -5/3


Bsica
Variable de decisin Variable de holgura Solucin
x
1
x
2
x
3
x
4
s
1

z 0 0 0 1/3 5/3 40
x
2
0 1 0 -1 3 0
x
1
1 0 0 2/3 -5/3 5
x
3
0 0 1 1/3 -4/3 1

El tablero actual es factible y ptimo, donde x
1
= 5, x
2
= 0, z = 40

20



Problema N
o
5:
1. Planteamiento:
Maximizar Z = 6X
1
+ 14X
2
6X
3

Sujeto a:
14X
1
+ 2X
2
+ 6X
3
18
10X
1
+ 10X
2
- 4X
3
26
X
1
, X
2
, X
3
0 y Enteros

2. Igualar la F.O. a cero.

Z - 6X
1
- 14X
2
+ 6X
3


3. Convertir las desigualdades en igualdades

14X
1
+ 2X
2
+ 6X
3
+ X
4
= 18
10X
1
+ 10X
2
- 4X
3
+ X
5
26

4. Escribir la tabla simplex

Basicas Variables de decision Variables de holg. Solucion
X
1
X
2
X
3
X
4
X
5

Z -6 -14 6 0 0 0
X
4
14 2 6 1 0 18
X
5
10 10 -4 0 1 26

5. Encontrar la variable que entra en la base y la variable que sale
Basicas Variables de decision Variables de holg. Solucion Razon
X
1
X
2
X
3
X
4
X
5

Z -6 -14 6 0 0 0
X
4
14 2 6 1 0 18 18/2=9
X
5
10 10 -4 0 1 26 26/10=2.6

6. Encontrar los coeficientes de la nueva tabla

Basicas Variables de decision Variables de holg.
Solucion
Razon
X
1
X
2
X
3
X
4
X
5

Z 8 0 2/5 0 7/5 182/5
X
4
12 0 34/5 1 -1/5 64/5 18/2=9
X
2
1 1 -2/5 0 1/10 13/5 26/10=2.6

21





Como x
2
=

= 2.6 no es entero, se debe generar un corte, entonces, elegimos la segunda fila, de x


2
, para generar un
plano de corte.
La factorizacin de la ecuacin x
2
da por resultado
x
1
+

x
2
+ (-1 +

)x
3
+ (0 +

)x
5
= (2 +

)
Si movemos todos los componentes enteros al lado izquierdo y todos los componentes fraccionarios al lado derecho,
obtenemos


Por consiguiente, el corte asociado es
-

0
Podemos escribirlo en forma de ecuacin como
-


Esta restriccin se agrega a la tabla ptima de PL como sigue:

Basicas Variables de decision Variables de holgura
Solucion Razon
X
1
X
2
X
3
X
4
X
5
S
1

Z 8 0 2/5 0 7/5 0 182/5
X
4
12 0 34/5 1 -1/5 0 64/5 18/2=9
X
2
1 1 -2/5 0 1/10 0 13/5 26/10=2.6
S
1
0 0 -3/5 0 -1/10 1 -3/5

La variable que sale de la base es S
1

La variable que entra a la base es Max {

} = {

} =

, que corresponde a la variable X


3


22

Basicas Variables de decision Variables de holg.
Solucion Razon
X
1
X
2
X
3
X
4
X
5
S
1

Z 8 0 0 0 4/3 2/3 36
X
4
12 0 0 1 -4/3 34/3 6
X
2
1 1 0 0 1/6 -2/3 3
X
3
0 0 1 0 1/6 -5/3 1

Solucin final entera
X
1
= 0
X
2
= 3
X
3
= 1
Z = 36

Ejemplo N
o
6
Max z = 4x
1
+ 5x
2
+ x
3

Sujeto a:
3x
1
+ 2x
2

x
1
+ 4x
2
11
3x
1
+ 3x
2
+ x
3
13
x
1
, x
2
, x
3
0 y enteros

Tablero inicial simplex
Base x
1
x
2
x
3
x
4
x
5
x
6
Solucin
z -4 -5 1 0 0 0 0
x
4
3 2 0 1 0 0 10
x
5
1 4 0 0 1 0 11
x
6
3 3 1 0 0 1 13

Tablero ptimo
Base x
1
x
2
x
3
x
4
x
5
x
6
Solucin
z
0 0 0 2/10 4/10 1 194/10
x
1

1 0 0 4/10 -2/10 0 18/10=1+8/10
x
2

0 1 0 -1/10 3/10 0 23/10=2+3/10
x
3

0 0 1 -9/10 -3/10 1 7/10




23


La fila de x
1
tiene la mayor fraccin, por tanto de esta fila descomponemos para sacar el primer plano de corte:

x
1
+ (0+4/10)x
4
+ (-1+8/10)x
5
= 1 + 8/10
Pasamos la parte entera a la izquierda y la parte fraccionaria a la derecha, tenemos:
x
1
x
5
-1 =


Por consiguiente, el corte asociado es

0
Podemos escribirlo en forma de ecuacin como



Esta restriccin se agrega a la tabla ptima de PL como sigue:
Base x
1
x
2
x
3
x
4
x
5
x
6
s
1
Solucin
z
0 0 0 2/10 4/10 1 0 194/10
x
1

1 0 0 4/10 -2/10 0 0 18/10=1+8/10
x
2

0 1 0 -1/10 3/10 0 0 23/10=2+3/10
x
3

0 0 1 -9/10 -3/10 1 0 7/10
s
1

0 0 0 -4/10 -8/10 0 1 -8/10

Utilizando el Dual Simplex para determinar la variable que sale y la que entra en la solucin:
La variable que sale de la base es S
1

La variable que entra a la base es Max {

} = {

}, (empate) entra (arbitrariamente) X


4
en
solucin
Resolviendo el tablero tenemos:

Base x
1
x
2
x
3
x
4
x
5
x
6
s
1
Solucin
z
0 0 0 0 0 1 19
x
1

1 0 0 0 -1 0 1 1
x
2

0 1 0 0 0 -1/4 25/10=2+5/10
x
3

0 0 1 0 3/2 1 -9/4 25/10=2+5/10
x
4

0 0 0 1 2 0 -10/4 2
Como son iguales sus partes fraccionales, se elige la ecuacin que corresponda a la variable bsica con la mayor
contribucin en la funcin objetivo (la ecuacin 2 de x
2
)
Ecuacin del corte:


Agregando una variable de holgura tenemos:



Base x
1
x
2
x
3
x
4
x
5
x
6
s
1
s
2
Solucin
z
0 0 0 0 0 1 0 19
x
1

1 0 0 0 -1 0 1 0 1
x
2

0 1 0 0 0 -1/4 0 25/10=2+5/10
x
3

0 0 1 0 3/2 1 -9/4 0 25/10=2+5/10
x
4

0 0 0 1 2 0 -10/4 0 2
s
2

0 0 0 0 -1/2 0 -3/4 1 -1/2
Utilizando el Dual Simplex para determinar la variable que sale y la que entra en la solucin:
La variable que sale de la base es S
2

La variable que entra a la base es Max {

} = {

}, entra x
5
en solucin
Resolviendo el tablero tenemos:

24


Base x
1
x
2
x
3
x
4
x
5
x
6
s
1
s
2
Solucin
z
0 0 0 0 0 1 1 19
x
1

1 0 0 0 0 0 5/2 -2 2
x
2

0 1 0 0 0 0 -1 1 2
x
3

0 0 1 0 0 1 -18/4 3 1
x
4

0 0 0 1 0 0 0 0 0
s
2

0 0 0 0 1 0 3/2 -2 1
Solucin optima
Programacin lineal Programacin entera
x
1
= 1.8 x
1
= 2
x
2
= 2.3 x
2
= 2
x
3
= 0.7 x
3
= 1
z = 19.4 x
4
= 0
x
5
= 1
z = 19
Comprobacin con DS-POM




Si el sistema de ecuaciones fuera
Max z = 4x
1
+ 5x
2
+ x
3

Sujeto a:
3x
1
+ 2x
2

x
1
+ 4x
2
11
3x
1
+ 3x
2
+ x
3
13
x
1
+ 2x
2
(Corresponde al 1 corte)
5x
1
+ 14x
2
(Corresponde al 2 corte)
x
1
, x
2
, x
3
0 y enteros

La solucin ptima seria
x
1
= 2
x
2
= 2
x
3
= 1
x
4
= 0
x
5
= 1
z = 19
25

Problemas Propuestos: Desarrolle los problemas que a continuacion se detallan, aplicando la tecnica de
ramificacion y acotamiento y el algoritmo de Gomory:
1. Max z = 7x
1
+ 10x
2

Sujeto a:
-x
1
+ 3x
2
6
7x
1
+ x
2
35
x
1
, x
2
0 y enteros

Rpta: x
1
= 4, x
2
= 3, z = 58

2. Max z = 5x
1
+ 3x
2

3x
1
+ 5x
2
15
5x
1
+ 2x
2
10
x
1
, x
2
0 y enteros

La solucion relajada optima es
Bsica
Variable de decisin Variable de holgura Solucin
x
1
x
2
x
3
x
4

z 0 0 5/19 16/19 235/19
x
2
0 1 5/19 -3/19 45/19
x
1
1 0 -2/19 5/19 20/19
A partir de este tablero, continue con el algoritmo de Gomory, para encontrar la solucion entera.

3. Max z = 3x
1
+ 6x
2

6x
1
+ 7x
2
40
3x
1
+ x
2
11
x
1
, x
2
0 y enteros

4. Max z = 4x
1
+ 3x
2

2x
1
+ 3x
2
6
-3x
1
+ 2x
2
3
2x
1
+ x
2
4
x
1
, x
2
0 y enteros
Rpta: x
1
= 1, x
2
= 2, z = 10

5. Max z = x
1
+ 5x
2

11x
1
+ 6x
2
66
5x
1
+ 50x
2
225
x
1
, x
2
0 y enteros

6. Max z = x
1
+ 2x
2

3x
1
+ x
2
15
3x
1
+ 7x
2
42
x
1
, x
2
0 y enteros

You might also like