Вы находитесь на странице: 1из 50

PROGRAMACION LINEAL

ENTERA
Luis Medina Aquino
PROGRAMACION LINEAL
ENTERA
• En muchos modelos algunas o todas
las variables de decisión deben ser
enteras.
• Estos modelos son conocidos como
modelos de programación lineal
entera (PLE).
PROGRAMACION LINEAL
ENTERA
• Clasificación:

Tipos de Variables de
Modelo
Decisión
Completamente entero
Todas son enteras
(PLE)
Algunas, pero no todas son
Mixto (PLM)
enteras
Binaria (PLB) Todas son binarias (0 ó 1)
PROGRAMACION LINEAL
ENTERA
PROBLEMA:
Boxcar es una nueva cadena de restaurantes de
comida rápida (fast-food) que está planificando
expandirse en Washington DC. Aún cuando la
comida es de alta calidad, la principal atracción de
esta cadena de restaurantes es su diseño. En el
centro de la ciudad el interior del local se construyó
de tal forma de parecerse al interior de un container,
mientras que en los suburbios los restaurantes se
construyeron al interior de verdaderos containers.
PROGRAMACION LINEAL
ENTERA
La compañía dispone de US$2.7 millones para su
expansión. Cada restaurant en los suburbios
requiere US$200,000 en inversión, y cada local en el
centro requiere de US$600,000. Se proyecta que
luego de los gastos, la ganancia neta semanal en
los locales de los suburbios (que estarán abiertos
las 24 horas) será en promedio US$1200. Los
restaurantes del centro abrirán sólo 12 horas al día,
pero debido a una gran cantidad de clientes durante
las horas de trabajo las proyecciones indican que la
ganancia neta semanal será de US$2000.
PROGRAMACION LINEAL
ENTERA
La compañía desea abrir al menos 2 restaurantes en el
centro. Boxcar actualmente tiene 19 administradores.
Cada local en los suburbios requerirá tres
administradores para su funcionamiento las 24 horas, y
se cree que con sólo un administrador en el centro por
restaurante sería suficiente. Boxcar desea saber
cuántos restaurantes podría abrir para maximizar su
ganancia neta semanal.
PROGRAMACION LINEAL
ENTERA
RESUMIENDO:
Boxcar debe decidir cuántos restaurantes debe abrir
en los suburbios y en el centro de Washington DC.
Desean maximizar su ganancia total semanal
promedio.
La inversión total no puede exceder US$2.7 millones
Se deben abrir al menos 2 restaurantes en el centro
Sólo se cuenta con 19 administradores.
PROGRAMACION LINEAL
ENTERA
FORMULACION:

Maximizar Z = 1200 X1 + 2000 X2


s.a.
200000 X1 + 600000 X2 <= 2700000
X2 >= 2
3 X1 + X2 <= 19
X1, X2 >= 0, enteros
PROGRAMACION LINEAL
ENTERA
La solución real del problema es:
X1 = 87/16 = 5.4375, X2 = 43/16 = 2.6875,
Z = US$ 11,900
¿La solución entera podrá ser solo redondear
simplemente los valores de la solución real?
Posibles resultados del redondeo:
1. Los puntos pueden ser no-factibles
2. Los puntos pueden ser factibles pero no-óptimos
3. Los puntos pueden ser factibles y óptimos
PROGRAMACION LINEAL
ENTERA
Solución real del problema:
X1 = 5.4375, X2 = 2.6875, Z = US$ 11,900
Posibles redondeos:
Maximizar Z = 1200 X1 + 2000 X2
¿Es
X1 X2 factible? Z s.a.
6 3 NO --- 200000 X1 + 600000 X2 <= 2700000
6 2 NO --- X2 >= 2
5 3 NO --- 3 X1 + X2 <= 19
5 2 SI 10000 X1, X2 >= 0, enteros
PROGRAMACION LINEAL
ENTERA
• La solución entera del problema es: X1 = 4, X2 = 3,
Z = US$ 10.800
• Nota: Imponer restricción de enteros agrega dos
restricciones al problema: X1 entero y X2 entero. Así
es que tal como vimos antes el valor de la función
objetivo NO puede mejorar. En un problema de
maximización esto significa que el valor de la
función objetivo disminuirá o en el mejor de los
casos será el mismo que el valor óptimo del
problema de programación lineal en el dominio de
los reales.
PROGRAMACION LINEAL
ENTERA
VARIABLES BINARIAS
Se denominan variables binarias aquellas que están
restringidas a dos valores únicamente, por lo
general estos valores son cero y uno.
Si Y < 1
Y>0
Y es entera
Entonces Y es una variable binaria {0,1}
APLICACIONES DE
VARIABLES BINARIAS
DECISIONES DICOTOMICAS
Cuando se tienen solo 2 elecciones, la decisión se puede
representar por variables de decisión restringidas exclusi-
vamente a 2 valores.
Yi = 1, si la decisión i es sí
 0, si la decisión i es no
Ejemplos: ¿Debe emprenderse este proyecto i?
¿Debe hacerse esta inversión en particular?
¿Debe realizarse esta instalación en este sitio en particular?
APLICACIONES DE
VARIABLES BINARIAS
ALTERNATIVAS MUTUAMENTE
EXCLUYENTES.
Si se tiene un conjunto de alternativas de decisión, pero
sólo una decisión en el grupo puede ser si, se requiere de
este tipo de restricciones.
 Yi = 1 Exactamente una decisión en el grupo debe ser si.
 Yi  1 Cuando mucho una decisión en el grupo puede ser
si.
En donde la suma se toma únicamente sobre las variables
del grupo
APLICACIONES DE
VARIABLES BINARIAS
DECISIONES CONTINGENTES.
Se dice que una decisión es contingente cuando
depende de decisiones anteriores, en otras
palabras:
La decisión K es contingente con la decisión J
si se permite que K sea Si únicamente cuando J
es Si.
Esto sucede cuando la decisión K comprende una
acción consecuente que se volvería irrelevante o
imposible si la decisión J es no.
APLICACIONES DE
VARIABLES BINARIAS
DECISIONES CONTINGENTES.
En forma de restricción, escribiríamos:
Yk < Yj
Si Yj = 1 Permite elegir libremente a Yk , o sea que
puede tomar el valor de cero o de uno según
convenga a la función objetivo. Mientras que Yj = 0
fuerza a que Yk = 0
Matemáticamente se escribiría:
Yk - Yj < 0
APLICACIONES DE
VARIABLES BINARIAS
RESTRICCIONES ALTERNATIVAS:
En ocasiones puede elegirse entre dos restricciones,
de manera que debe cumplirse una "o bien" la otra.
Ejemplo: 3 X1 + 2 X2 < 20, o bien, X1 + 3 X2 < 15
En un modelo de Programación Lineal TODAS las
restricciones deben cumplirse para que éste tenga
solución factible, esto se debe a que la presencia de
restricciones del tipo "o bien" crea un espacio de
soluciones no convexo.
APLICACIONES DE
VARIABLES BINARIAS
RESTRICCIONES ALTERNATIVAS:
Lo anterior se puede evitar incorporando al modelo
variables binarias y definiendo a M como un
número suficientemente grande el cual, al sumarlo
a cualquiera de las restricciones, automáticamente
estaríamos eliminando esa restricción porque sería
redundante.
APLICACIONES DE
VARIABLES BINARIAS
RESTRICCIONES ALTERNATIVAS:
En el ejemplo:
3 X1 + 2 X2 < 20, o bien,
X1 + 3 X2 < 15
Podemos hacer redundante cualquiera de las dos al
agregarle M
3 X1 + 2 X2 < 20 + M
X1 + 3 X2 < 15
o bien
3 X1 + 2 X2 < 20
X2 + 3 X2 < 15 + M
APLICACIONES DE
VARIABLES BINARIAS
RESTRICCIONES ALTERNATIVAS:
Como no sabemos cual de las dos alternativas
anteriores sea la mas conveniente, introducimos la
variable binaria Y, y dejamos que el proceso de
solución asigne el valor mas conveniente para esta
variable, y al hacerlo seleccione automáticamente
la mejor alternativa.
Y = 0, si se elimina la


{
primera restricción.
1, si se elimina la segunda
restricción.
APLICACIONES DE
VARIABLES BINARIAS
RESTRICCIONES ALTERNATIVAS:
3X1 + 2X2 < 20 + M (1-Y)  redundante para
Y = 0, y activa para Y=1.
X1 + 3X2 < 15 + M (Y )  activa para Y = 0, y
redundante para Y=1.
Reordenando los términos (todas las variables del
lado izq.) quedaría:
3X1 + 2X2 + MY < 20 + M
X1 + 3X2 - MY < 15
Y es binario {0,1}
APLICACIONES DE
VARIABLES BINARIAS
RESTRICCIONES DE APORTACIONES
Suponga que se tienen las siguientes restricciones:
a) Si se compra el producto j, se deben adquirir
por lo menos 20 unidades.
b) No se pueden adquirir más de 100 unidades del
producto j.
Sea Xj = unidades que se adquieren del producto j
Un intento por representar las restricciones de a) y
b) podría ser:
20 < Xj < 100
APLICACIONES DE
VARIABLES BINARIAS
RESTRICCIONES DE APORTACIONES
Sin embargo, esta restricción no representa las
condiciones ya que obliga a que la variable Xj tome
valores entre 20 y 100, y no considera la condición
Si...
Si definimos una variable binaria Yj para
representar la decisión respecto a comprar o no
comprar el artículo j, tendremos:
Yj = 1, Indica que Si se compra el artículo j
Yj = 0, Indica que No se compra el artículo j.
APLICACIONES DE
VARIABLES BINARIAS
RESTRICCIONES DE APORTACIONES
Podríamos expresar las condiciones a) y b) de la
siguiente manera:
Xj < 100Yj
Xj > 20Yj
Si Yj = 0, obliga a que Xj sea 0, mientras que si
Yj = 1 permite que la variable Xj tome valores entre
20 y 100.
APLICACIONES DE
VARIABLES BINARIAS
Ejemplo 1:
Cierta compañía industrial ha decidido expandirse
construyendo una nueva fábrica ya sea en Lima o en
Arequipa. Está considerando también la construcción de
un nuevo almacén en aquella ciudad que se seleccione
para la nueva fabrica. La información sobre cada
alternativa se muestran en la siguiente tabla. El capital
disponible para inversión es $ 35, 000, 000.
El objetivo es encontrar la combinación de alternativas
que maximice el valor presente neto.
APLICACIONES DE
VARIABLES BINARIAS
Valor presente Capital requerido
neto inversión
Fabrica en Lima 7 millones 20 millones
Fabrica en
5 millones 15 millones
Arequipa
Almacén en Lima 4 millones 12 millones
Almacén en
3 millones 10 millones
Arequipa
APLICACIONES DE
VARIABLES BINARIAS
Planteamiento con variables binarias
Variable Valor
Numero de Pregunta de Cap. Req. de
de Presente
Decisión Sí o No inversión (mills )
Decisión Neto
¿Se construye la
1 Y1 7 20
fabrica en Lima ?
¿Se construye la
2 Y2 5 15
fábrica en Arequipa?
¿Se construye el
3 Y3 4 12
almacén en Lima?
¿Se construye el
4 Y4 3 10
almacén en Arequipa ?
APLICACIONES DE
VARIABLES BINARIAS
Sea:
Yi = 1, si la decisión i es Si donde i = 1,2,3,4
{ 0, si la decisión i es No
Las primeras dos decisiones representan alternativas
mutuamente excluyentes.
Y1 + Y2 = 1
Las decisiones 3 y 4 son contingentes en relación con las
decisiones 1 y 2.
Y3 - Y1 ≤ 0
Y4 - Y2 ≤ 0
APLICACIONES DE
VARIABLES BINARIAS
Ejemplo 2:
Cierta compañía fabricante de pinturas tiene disponibles
tres procesos diferentes estandarizados para producir
pinturas blancas para casas. Cada proceso tiene unos
costos fijos y un costo de proceso por galón. La capacidad
de cada proceso es como sigue:
Capacidad
Proceso Costo Costo
máxima diaria
Número fijo ($ / galón )
( galones )
1 $ 100 5 2000
2 200 4 3000
3 300 3 4000
APLICACIONES DE
VARIABLES BINARIAS
La compañía espera una demanda diaria de 3500
galones. El problema es mostrar qué procesos usar y qué
capacidades con el fin de satisfacer su demanda diaria
con un costo total mínimo.
Las variables Y1, Y2, Y3 son variables binarias (0,1)

APLICACIONES DE
VARIABLES BINARIAS
Formulación del modelo
Variables de decisión.
Sea
Y1 =  1, Si el proceso 1 es usado
 0, Si el proceso 1 no es usado
Y2 =  1, Si el proceso 2 es usado
 0, Si el proceso 2 no es usado
Y3 =  1, Si el proceso 3 es usado
 0, Si el proceso 3 no es usado
Las variables Y1, Y2, Y3 son variables binarias {0,1}
APLICACIONES DE
VARIABLES BINARIAS
Variables de decisión.
Sea
X1 = Cantidad de galones que se produce en el proceso 1
X2 = Cantidad de galones que se produce en el proceso 2
X3 = Cantidad de galones que se produce en el proceso 3
APLICACIONES DE
VARIABLES BINARIAS
Función objetivo. El objetivo es escoger los procesos y
los niveles de producción para satisfacer la demanda
diaria minimizando el costo total.
Sea Z una variable que denota el costo total.
Entonces
Z = 5X1 + 4X2 + 3X3 + 100Y1 + 200Y2 + 300Y3
Costo total variable Costo total fijo
de producción
APLICACIONES DE
VARIABLES BINARIAS
Restricciones. Tenemos dos tipos de restricciones
sobre las variables de desición. Para satisfacer la
demanda diaria:
X1 + X2 + X3 = 3500
Para no sobrepasar el límite de capacidad:
Proceso 1: X1 ≤ 2000
Proceso 2 :X2 ≤ 3000
Proceso 3 :X3 ≤4000
Observe que si usamos cualquier proceso a un nivel
positivo, tenemos que garantizar que se ha incurrido
tanto en los costos fijos como en los costos variables de
producción.
APLICACIONES DE
VARIABLES BINARIAS
Esto es, por ejemplo, si X1 > 0 (usamos el proceso 1)
entonces Y1 = 1 ( tenemos que seleccionar el proceso 1).
Esto lleva a las siguientes relaciones entre las variables
continuas Xj y las variables entera Yj.
Para proceso 1:
Si X1 = 0, entonces Y1 = 0
Si X1 > 0, entonces Y1 = 1
Si Y1 = 0, entonces X1 = 0.
APLICACIONES DE
VARIABLES BINARIAS
Para proceso 2 :
Si X2 = 0, entonces Y2 = 0
Si X2 > 0, entonces Y2 = 1
Si Y2 = 0, entonces X2 = 0.
Para proceso 3 :
Si X3 = 0, entonces Y3 = 0
Si X3 > 0, entonces Y3 = 1.
Si Y3 = 0, entonces X3 = 0.
APLICACIONES DE
VARIABLES BINARIAS
Cada conjunto de tres restricciones dadas antes,
simultáneamente con la correspondiente restricción de
capacidad, pueden ser combinadas en una sola
restricción.
Para el primer conjunto de tres restricciones (proceso 1)
consideremos la desigualdad
X1 ≤ 2000Y1
Observe que la desigualdad también incluye la restricción
de capacidad para proceso 1.
APLICACIONES DE
VARIABLES BINARIAS
Recuerde que Y1 tiene que ser 0 ó 1. Así, si Y1 = 0 en
2000Y1 ≥ X1, entonces 2000Y1 = 0, lo cual implica que
X1 = 0. Si X1 = 0, entonces Y1 = 0, ya que estamos
minimizando el costo total Z. Si X1 > 0, entonces
2000Y1 > 0 puede ocurrir solamente si Y1 = 1. De
manera similar se expresaría la dependencia entre las
variables asociadas a los otros dos procesos.
APLICACIONES DE
VARIABLES BINARIAS
El modelo completo quedaría:.
PROBLEMA DE PROGRAMACION ENTERA
Minimizar Z = 5X1 + 4X2 + 3X3 + 100Y1 + 200Y2 + 300Y3
Sujeto a:
X1 + X2 + X3 = 3500
X1 ≤ 2000Y1
X2 ≤ 3000Y2
X3 ≤ 4000Y3
Yi es binaria para i = 1, 2, 3
Xi ≥ 0 para i = 1, 2, 3
APLICACIONES DE
VARIABLES BINARIAS
EJEMPLO 3.- Problema de presupuesto de capital
Cierta compañía tiene la oportunidad de invertir el
próximo año en cinco proyectos diferentes, P1, P2, P3, P4
y P5, cada uno con un beneficio neto estimado y un costo
esperado de inversión que se muestra en la tabla .
Proyecto Beneficio neto esperado Costo esperado
número ( 000 s ) ( miles)
1 $ 100 $ 60
2 80 40
3 70 20
4 60 40
5 90 50
APLICACIONES DE
VARIABLES BINARIAS
Ya que de los diferentes requerimientos de cada proyecto
(mano de obra, equipo, etc.), los costos varían de
proyecto a proyecto. Además las obligaciones de
requerimientos de flujo de caja hacen que la Cia. no
pueda invertir en todos los cinco proyectos.
La Cia. estima que tendrá una disponibilidad de caja en
la cantidad de $150000 para el próximo año.
APLICACIONES DE
VARIABLES BINARIAS
a) ¿En cuales proyectos podría invertir la Cia. el
próximo año?
Variables de decisión
Yj = 1, si el proyecto j es seleccionado (j = 1, 2, 3, 4, 5).
0, si el proyecto j no es seleccionado
Y1, Y2, Y3, Y4 y Y5 Son variables binarias
APLICACIONES DE
VARIABLES BINARIAS
Función objetivo
La meta de la Cia. es seleccionar los proyectos
que maximicen la utilidad total esperada.
Sea Z = utilidad total esperada, entonces la
función objetivo es
Maximizar Z = 100Y1 + 80Y2 + 70Y3 + 60Y4 + 90Y5
APLICACIONES DE
VARIABLES BINARIAS
Restricciones sobre las variables de decisión.
Cantidad disponible para inversión:
60Y1 + 40Y2 + 20Y3 + 40Y4 + 50Y5 ≤ 150
APLICACIONES DE
VARIABLES BINARIAS
b) Suponga que la gerencia ha decidido que
exactamente un proyecto debe ser seleccionado
del conjunto de proyectos P1, P3 y P5. Pero, los
proyectos P2 y P4 pueden ser seleccionados
sujetos a la restricción de presupuesto. ¿Cuál
restricción (o restricciones) necesita ser
agregada al modelo original?
APLICACIONES DE
VARIABLES BINARIAS
Solución.- Ya que uno de P1, P3, ó P5 y solo
uno, puede ser seleccionado, exactamente una
de las tres variables Y1, Y3 o Y5 puede tomar el
valor de uno.
Y1 + Y3 + Y5 = 1. Restricción a ser agregada
APLICACIONES DE
VARIABLES BINARIAS
c) Suponga que la Cia. ha decidido que no más
de uno de los dos proyectos, P2 y P4, puede ser
seleccionado. ¿Cuál restricción adicional
necesita ser agregada al modelo original?
Y2 + Y4 ≤ 1. Restricción a ser agregada
APLICACIONES DE
VARIABLES BINARIAS
d) Suponga que la Cia. ha decidido que si P3 es
seleccionado, entonces P4 tiene que ser
seleccionada. ¿Cuál restricción adicional
necesita ser agregada al modelo original?
Solución
Y3 ≤ Y4. Restricción a ser agregada
APLICACIONES DE
VARIABLES BINARIAS
RESUMEN DEL MODELO DE PROGRAMACION
ENTERA
Maximizar Z = 100Y1 + 80Y2 + 70Y3 + 60 Y4 + 90Y5
Sujeto a
60Y1 + 40Y2 + 20Y3 + 40Y4 + 50Y5  150
Y1 + Y3 + Y5 = 1 Proyecto Beneficio neto esperado Costo esperado

Y2 + Y4  1 número ( 000 ) s ( miles)

Y3 - Y4  0 1 $ 100 $ 60
Yi es binaria para 2 80 40
i = 1, 2, 3, 4, 5. 3 70 20
4 60 40
5 90 50
GRACIAS

Ing. Luis
Medina