You are on page 1of 8

Universidad Andrs Bello

Departamento de Ciencias de la Ingeniera



Mtodos de Optimizacin:
Ejercicios de Programacin Lineal Entera

Problema 1. Estudie si las siguientes afirmaciones son verdaderas o falsas:

1.- Para resolver problemas lineales enteros, la idea de B&B es ir agregando restricciones que
eliminan las soluciones fraccionales (o continuas) y resolver la relajacin lineal.

Respuesta. Verdadero. La idea del mtodo de B&B es en un primer paso, resolver la relajacin
lineal del problema original, y posteriormente, si la solucin es fraccional, agregar restricciones que
obliguen a las variables a tomar valores enteros. En cada nodo de B&B se resuelve una relajacin
lineal.

2.- Un problema de programacin lineal entera es un conjunto convexo.

Respuesta. Falso. Basta con tomar un problema de 2 variables, y mostrar en un grfico que el
conjunto de soluciones factibles en un problema entero es un conjunto de puntos en particular. El
dominio claramente no es convexo, ya que al tomar un par de puntos y unirlos con una recta (dada
la definicin de convexidad), la recta no contiene soluciones enteras vlidas.

3.- El valor de la mejor solucin entera disponible en cada iteracin se llama incumbente.

Respuesta. Verdadero. Al encontrar una solucin entera, se debe verificar que esta solucin entera
es mejor que la encontrada anteriormente. En el caso que sea mejor, la mejor solucin se denomina
incumbente.

4.- Un plano cortante es una restriccin redundante para la formulacin entera pero que corta
soluciones fraccionarias de la relajacin lineal.

Respuesta. Verdadero. Un plano cortante corta soluciones fraccionarias y se aproxima a la
solucin entera. A esto tambin se le denomina desigualdad vlida. En el dibujo se muestra un
plano cortante:



5.- Un problema de programacin lineal ms restringido es ms ptimo

Respuesta. Falso. Cada vez que se resuelve un problema ms restringido, la regin de soluciones
factibles se hace ms pequea (esto sin considerar restricciones redundantes) y, por ende, el
problema restringido es menos ptimo.
6.- Si un problema de Programacin Entera es infactible, entonces la relajacin lineal no
puede ser factible.

Respuesta: La relajacin lineal puede ser factible y no contener ningn punto con
coordenadas enteras, tomen por ejemplo la regin:

2
( , ) : 0 1;0, 25 0, 75; , enteros f x y x y x y que es vaca, pero que en el relajado
es perfectamente factible.

Problema 2. Don Zippy, un humilde y emprendedor microempresario, est planeando
adquirir la franquicia de la prestigiosa cadena de comida rpida estadounidense
McChrono. Don Zippy tiene todo listo: la negociacin est en una etapa avanzada, por lo
que desea desde ya saber cuntas unidades de cada una de sus hamburguesas va a producir.

La franquicia le da derecho a producir 2 de las hamburguesas de McChrono: McChrono
Salvaje y McChrono Extra Queso. Cada unidad de McChrono Salvaje requiere de 3
hamburguesas para su preparacin, mientras que una unidad de McChrono Extra Queso
requiere solo una. Asimismo, una unidad de McChrono Salvaje necesita de 2 lminas de
queso, mientras que una de McChrono Extra Queso requiere de 5 lminas. Don Zippy
considera que los dems ingredientes son despreciables para su clculo, y cuenta con un
total de 200 hamburguesas y 300 lminas de queso.

Solucin.

Variables de Decisin:
X = Cantidad de hamburguesas McChrono Salvaje
Y = Cantidad de hamburguesas McChrono Extra Queso

Funcin Objetivo:
Max Z = 1000X + 1500Y

Restricciones:

Carne: 3X + Y < 200
Queso: 2X + 5Y < 300
X,Y > 0, enteros

Grficamente:


Primero se resuelve el problema relajado, que es la interseccin de las dos restricciones, as
se obtiene: X = 53,8 e Y = 38,6 Luego se procede a la ramificacin, comenzando con el
incumbente z=-. La resolucin se muestra en el rbol siguiente, es importante aclarar que
cada nodo contiene adems de la restriccin que se especifica en el mismo, las restricciones
de toda la rama superior a l.

La solucin entera es X = 54, Y = 38 y Z = 111000.

Observaciones:
1.- En el nodo amarillo se dejo de ramificar pues en l, el valor de Z es igual que el
incumbente.
2.- En los dems nodos se dejo de ramificar por haber llegado a una solucin entera.
2.- Se puede comenzar a ramificar por la variable Y, y se debe llegar al mismo resultado.

Problema 3. La empresa Mxima S.A., luego del fracaso de Pulschuper para encontrar a la
famosa maleante Carmen SanDego, decidi despedirla, motivo por el cual Pulschuper debe
abandonar la oficina y no volver nunca ms. El problema es que solo llevo una mochila
pequea con capacidad de 2lt. y en su estante tiene su notebook, una foto de su hija, su
polern favorito y un lpiz. Si los utensilios utilizan una capacidad de 1.2, 0.6, 0.8 y 0.3
respectivamente y tienen utilidades de 8, 10, 5 y 1 respectivamente, utilice el algoritmo
Branch & Bound para ayudar a Pulschuper a decidir que utensilios llevarse a su casa.

Respuesta

Este es el problema de la mochila, en su versin binaria:

Variables de Decisin:

1
x = 1 si lleva notebook, 0 si no.
2
x = 1 si lleva foto, 0 si no.
3
x = 1 si lleva polern, 0 si no.
4
x = 1 si lleva lpiz, 0 si no.

Modelo:
1 2 3 4
8 10 5 1 Max Z x x x x
s.a.
1 2 3 4
1, 2 0, 6 0,8 0, 3 2 x x x x

1 2 3 4
, , , 0,1 x x x x

Entonces, para encontrar la solucin del problema relajado, no es posible graficar el
problema. El truco es obtener primero las mejores razones de beneficio y volumen:

a.- Para notebook: 8/1,2 = 6,67
b.- Para foto: 10/0,6 = 16,67
c.- Para polern: 5/0,8 = 6,25
d.- Para lpiz: 1/0,3 = 3,33

La solucin del problema relajado consiste en llevar los artculos que tengan mejor razn
hasta completar la capacidad, por lo tanto la solucin ptima del problema relajado es:

1 2 3 4 0
1, 1, 0, 25, 0, 19, 25 x x x x Z

La ramificacin sera la siguiente:


Problema 4.

a) En qu casos se puede detener la ramificacin en un nodo durante la aplicacin del
algoritmo Branch & Bound (B&B)? Mencione 3 casos con justificacin.

b) Suponga que al resolver un problema de programacin entera, en la primera
ramificacin del algoritmo de B&B en una de las ramas le da un ptimo con
coordenadas enteras. Puede afirmar que es el ptimo del problema general? Por
qu?

Respuesta
a)
El nodo gener un problema infactible.
La solucin del problema en ese nodo es entera.
La solucin del problema en ese nodo es fraccionaria pero es peor que alguna
entera que ya ha sido obtenida (el valor de la incumbente).

b) No se puede afirmar que sea el ptimo del problema general pues se pueden
presentar varias situaciones:
Si en la otra rama tambin da una solucin entera, el ptimo del problema general es
el de la rama con mejor valor en la funcin objetivo.
Si en la otra rama la solucin no es entera y el valor de la funcin objetivo es peor
que el de la rama con solucin entera, entonces la rama con solucin entera es el
ptimo pues ramificar la otra rama slo empeorar el valor de la funcin objetivo.
Si en la otra rama la solucin no es entera pero el valor de la funcin objetivo es
mejor que el de la rama con solucin entera, entonces se debe ramificar la rama y no
se puede afirmar que sea el ptimo del problema general.

Problema 5. Se tiene el siguiente problema de transporte generalizado con la siguiente
formulacin, donde
ij
x
: Cantidad de flujo a enviar desde el oferente i al demandante j.

Suponga que ha resuelto un problema entero original y
tambin la relajacin lineal para ver el salto de integralidad"
(CASO1). Adicionalmente ha realizado dos casos de
generacin de cortes en los cuales ha agregado los cortes a la
relajacin lineal, y posteriormente ha resuelto con Branch
and Bound para ver si disminuye el nmero de nodos
generados, y tambin ver el valor relajado lineal
correspondiente. Estos dos casos los llamaremos CASO2 y
CASO3. No importa aqu qu tipo especfico de corte est
usando, digamos que a partir de los resultados relajados
usted aplica una idea que se le ha ocurrido para generar cortes. La siguiente tabla muestra
los resultados obtenidos.






Problema Relajacin Lineal Valor ptimo entero Nmero de nodos de
B&B
CASO 1 532,11 585 185
CASO 2 575,20 585 132
CASO 3 579,20 593 232

Le parecen razonables estos resultados? Interprete y Discuta.

Respuesta:

Se debe fundamentar principalmente lo siguiente:

Al agregar cortes, el valor de la relajacin lineal mejora.

Existe una disminucin de nodos de branch-and-bound al aplicar cortes a la
solucin relajada del CASO1 al CASO2. Esto se explica debido a que la generacin
de cortes ayuda a acercarse a la solucin ptima entera, con lo que CPLEX tiende
a utilizar menos nodos de branch-and-bound.

Lo que debe notarse principalmente es que en el CASO3, el valor ptimo entero
cambia (aumenta). Esto significa que el corte agregado en el CASO3 est
incorrecto, ya que est cortando la solucin ptima del problema. Grficamente:



Problema 6. El siguiente diagrama muestra el rbol desarrollo por el algoritmo de Branch
and Bound para un problema entero de maximizacin dado, el nmero en cada nodo indica
el orden en que fueron generados durante la bsqueda, siendo el nodo 1 la relajacin lineal
del problema entero original. Adems en cada nodo se indica el valor ptimo del
subproblema lineal correspondiente. Los nodos 4 y 7 presentan soluciones enteras.



a) Si el proceso se detiene aqu, cul debiera ser el valor del incumbente (mejor valor
entero) para este problema? Cunto es garantizadamente el error en la estimacin
de la funcin objetivo?

b) Se ramifica ahora el nodo 3 dando origen a los nodos 8 y 9. El nodo 8 es infactible y
el nodo 9 tiene una solucin con valor igual a 94. Qu se debe hacer? Qu puede
decir sobre el valor ptimo entero buscado?

Respuesta:

a) El incumbente es la mejor solucin entera disponible hasta el momento. Dado que
estamos maximizando, ese corresponde al valor del nodo 7, que es 95.
La mejor cota relajada corresponde al valor 112, por lo que 112 > z*, donde z* es el
valor ptimo que buscamos. El mejor valor entero obtenido es 95, entonces, la
solucin ptima estar entre 95<z*<112. Si bien, no conoceramos el valor ptimo
verdadero, ya tenemos un intervalo en el que estamos seguros que est contenido, y
con una estimacin cuyo error es del orden del 15%.

b) Cuando se considera el nodo 9, con valor 94, entonces la rama que sale de este nodo
puede ser podada, ya que 94 es menor a 95 (valor del nodo 7) y cualquier solucin
entera que pueda generarse en esa rama, no va a ser mejor que la actual que tiene
valor 95. Por su parte, el nodo 8 debe ser podado inmediatamente por su
infactibilidad. Por lo tanto, la solucin ptima segn esta ramificacin es la del
nodo 7, con valor 95.

Problema 7. Considere un problema de Programacin Entera de la forma:





Suponga que el valor ptimo de la relajacin lineal es 12.324.657. Suponga que ha aplicado
* min
s.a.
0,
T
z c x
Ax b
x entero

el algoritmo de Ramificacin y Acotamiento (Branch and Bound), generando hasta ahora


378 nodos, todos con soluciones fraccionarias. Ahora ramifica y genera un nuevo nodo,
obteniendo una solucin con valores enteros y cuya funcin objetivo vale 11.134.629. Esta
es la primera solucin entera que obtiene.

a) De un rango de error para el valor ptimo z*, en estos momentos. Justifique con
precisin.

Respuesta: Dado que la relajacin lineal da una cota superior (estamos
maximizando) y la solucin entera es factible (no podemos asegurar nada ms),
tenemos que 11.134.629 * 12324657 z

b) Suponga que ahora genera otro nuevo nodo de ramificacin y se obtiene una nueva
solucin entera con valor 11.200.173. Qu hace? Justifique con precisin.

Respuesta: Esta solucin entera tiene mejor valor que la anterior, as que nos
quedamos con esta como incumbente.

c) Ahora genera otro nodo ms, obteniendo una solucin fraccionaria, donde la
variable de ndice 35 vale x
35
= 0,34, y donde el valor de funcin objetivo de esa
solucin es 11.146.987. Qu hace ahora? Explique con precisin

Respuesta: No es necesario ramificar ya que cualquier solucin entera que pueda
surgir por esta rama tendr un valor de funcin objetivo menor a 11.146.987 y ya
tenemos una solucin entera mejor que eso, con valor de incumbente igual a
11.200.173. Por lo tanto, ese nodo se poda".

You might also like