24-10-2017
Problemas de Programación Entera Investigación de Operaciones
MASETTO GOMEZ RODOLFO MORALES SANDOVAL OMAR ANTONIO PICHARDO CASAS JULIO CESAR
Problemas de Programación Entera
Una compañía planea abrir unas bodegas en cuatro ciudades; Nueva York, Los Ángeles, Chicago y Atlanta. Desde cada bodega se pueden embarcar 100 unidades por semana. El costo fijo por semana por mantener en operación cada bodega es de 400 dólares para Nueva York, 500 dólares para Los Ángeles, 300 dólares para Chicago y 150 dólares para Atlanta. La región 1 del país requiere 80 unidades por semana, la región 2 demanda 70 unidades por semana y la región 3 necesita 40 unidades por semana. Los costos (sin olvidar los costos de producción y embarque) por enviar una unidad desde una planta a una región se señalan en la tabla 1. Se desea cumplir con las demandas semanales a un costo mínimo, precedente y a las restricciones siguientes: 1. Si se abre la bodega de Nueva York, entonces se debe abrir la bodega de Los Ángeles. 2. Es posible abrir a lo más dos bodegas. 3. Se tiene que abrir la bodega de Atlanta o la de Los Ángeles. Formule un PE que se pueda usar para minimizar los costos semanales de cumplir con las demandas.
Tabla 1 (dólares).
Desde
Región 1
Región 2
Región 3
Nueva York
20
40
50
Los Ángeles
48
15
26
Chicago
26
35
18
Atlanta
24
50
35
Primero debemos plantear nuestras variables: Sean: 1. 2. 3. 4.
Nueva York Los Ángeles Chicago Atlanta : ó . : . = {0,1} = 1,2,3,4. & = 1,2,3.
Problemas de Programación Entera Ahora planteamos nuestro problema de Programación Entera: = + + + + + + + + + + + + + + +
s.a: + + + ≤ 2 = + = 1 + + ≤ 100 + + ≤ 100 + + ≤ 100 + + ≤ 100 + + + = 80 + + + = 70 + + + = 40 &
= 1,2,3,4 ; = 1,2,3
Resolviendo con la herramienta Solver de Excel obtenemos los siguientes resultados:
Variable ∗ , , , , , , , , ,
Valor
4750 70 30 80 10 1 1 0
Interpretando los resultados tenemos que la bodega de Los Ángeles y Atlanta deben abrirse, enviando de Atlanta a la región uno y a la región tres, 80 y 10 unidades por semana respectivamente, y de Los Ángeles a la región dos y tres ,70 y 30 unidades por semana respectivamente. Teniendo un costo mínimo ∗ = 4750 dólares.
Problemas de Programación Entera
La firma financiera Boris Milkem posee seis bienes. El precio de venta esperado (en millones de dólares) por cada bien se presenta en la tabla 2. Si el bien 1 se vende en el año 2, la firma recibe 20 millones de dólares. Para conservar un flujo de efectivo regular, Milkem debe vender por lo menos 20 millones de dólares en el año 1, por lo menos 35 millones de dólares en el año 2 y por lo menos 30 millones de dólares en el año 3. Prepare un PE que Milkem pueda usar para determinar cómo maximizar el rendimiento total de los bienes vendidos durante los tres años siguientes. Al poner en marcha este modelo, ¿Cómo se podría aplicar el concepto de horizonte de planeación rodante?
Tabla 2 (millones de dólares).
Bien
Vendido en Año 1
Año 2
Año 3
1
15
20
24
2
16
18
21
3 4
22 10
30 20
36 30
5
17
19
22
6
19
25
29
Primero debemos plantear nuestras variables: : ñ . = {0,1} = 1,2,3,4,5,6. & = 1,2,3.
Ahora planteamos nuestro problema de Programación Entera. = + + + + + + + + + + + + + + + + +
s.a: 15 + 16 + 22 + 10 + 17 + 19 ≥ 20 20 + 18 + 30 + 20 + 19 + 25 ≥ 35 24 + 21 + 36 + 30 + 22 + 29 ≥ 30 + + = 1 + + = 1
Problemas de Programación Entera + + = 1 + + = 1 + + = 1 + + = 1
= 1,2,3,4,5,6 ; = 1,2,3
Resolviendo con la herramienta Solver de Excel obtenemos los siguientes resultados:
Variable ∗ , , , , , , , , , , ,
Valor
144 1 1 1 1 1 1 0
Interpretando los resultados tenemos que el bien uno se debe vender en el año 2, el bien dos en el año 1, el bien tres en el año 3, el bien cuatro en el año 3, el bien cinco en el año 1 y el bien seis en el año 2, con una ∗ = 144 millones de dólares, la cual es el máximo rendimiento total de los bienes y conservando un flujo de efectivo regular, las cuales fueron nuestras restricciones.
Una planta de generación de energía eléctrica tiene tres calderas. Si una caldera dada está en operación es posible utilizarla para generar una cierta cantidad de vapor (en toneladas) entre el mínimo y el máximo dado en la tabla 3. Se proporciona también el costo de producción de una tonelada de vapor en cada caldera. El vapor proveniente de las calderas se usa para generar energía eléctrica en las tres turbinas. Si operan, cada turbina procesa una cantidad de vapor (en toneladas) entre el mínimo y el máximo que se da en la tabla 4. Se proporciona, asimismo, el costo por procesar una tonelada de vapor y la energía producida por cada turbina. Plantee un PE con el que se pueda minimizar el costo de producir 8000 kwh de energía eléctrica.
Problemas de Programación Entera Tabla 3 (en toneladas).
Caldera
Vapor mínimo
Vapor máximo
Costo/tonelada (dólares)
1 2 3
500 300 400
1000 900 800
10 8 6
Tabla 4 (en toneladas).
Turbina
Mínimo
Máximo
Kwh por tonelada de vapor
Costo de proceso por (dólares)
1 2 3
300 500 600
600 800 900
4 5 6
2 3 4
Primero debemos plantear nuestras variables: : : : á ó. = {0, 1} : á ó. = {0, 1} = 1,2,3. & = 1,2,3.
Ahora planteamos nuestro problema de Programación Entera: = + + + + + .: 500 ≤ ≤ 1000 300 ≤ ≤ 900 400 ≤ ≤ 800 300 ≤ ≤ 600 500 ≤ ≤ 800 600 ≤ ≤ 900 + + = + + 4 + 5 + 6 = 8000
Problemas de Programación Entera , & ,
, = 1 ,2, 3
Resolviendo con la herramienta Solver de Excel obtenemos los siguientes resultados:
Variable ∗ , , ,
Valor
2840 1000 420 520 900 1 1 1 1 0
Interpretando los resultados tenemos que en la caldera 1 se produce una cantidad de vapor de 1000 toneladas, mientras que en la 3 se producen 420. En la turbina 2 se procesan 520 toneladas de vapor, mientras que en la 3 se procesan 900. En la caldera 2 y en la turbina 1 no se realiza producción ni procesamiento de vapor. Con los resultados anteriores, tenemos que el valor óptimo ∗ que minimiza el costo total de producir 8000 Khw de energía eléctrica es de 2840 dólares.
Una compañía de Ohio, Clevcinn, está constituida por tres subsidiarias. Cada una de ellas tiene su respectiva nómina promedio, fondo de reserva para desempleo y nómina estimada que se da en la tabla 5. (Todos los valores están en millones de dólares.) Cualquier empleador en el estado de Ohio cuya relación nómina de reserva/nómina promedio es menor a 1 debe pagar 20% de su nómina estimada en primas de seguro por desempleo o 10% si la relación es por lo menos de 1. Clevcinn puede unir sus subsidiarias y considerarlas como empleadores separados. Por ejemplo, si la subsidiaria 2 y la 3 se unen, deben pagar entonces 20% de su nómina combinada en primas de seguro por desempleo. Formule un PE con el que se pueda determinar qué subsidiarias deben unirse.
Tabla 5 (en millones de dólares).
Subsidiaria
Nómina promedio
Reserva
Nómina estimada
1 2 3
300 600 800
400 510 600
350 400 500
Problemas de Programación Entera Para plantear el problema primeramente definimos las variables sobre las que se va a trabajar. : . = {0, 1} = 1,2,3. & = 1,2,3.
Además, notamos que cuando = significa no unir esa subsidiaria con otra, considerarla por separado, por otra parte = y tenemos otro caso especial que implica unir las 3 subsidiarias. Entonces para obtener la función objetivo que llamaremos debemos considerar cada unión posible a partir de los datos de la tabla para obtener lo que se debe pagar de la nómina estimada en cada caso. = 0.1 ∗ 350 + 0.2 ∗ 400 + 0.2 ∗ 500 + 0.1 ∗ 750 + 0.2 ∗ 850 + 0.2 ∗ 900 + 0.2 ∗ 1250 = 35 + 80 + 100 + 75 + 170 + 180 + 250
Otro detalle que considerar es cuando se combina alguna subsidiaria se imposibilitan las demás uniones, lo cual formulara nuestras restricciones. Por lo tanto, el problema de Programación Entera queda como sigue: = + + + + + + .: + + + = 1 + + + = 1 + + + = 1 &
, = 1,2,3
Resolviendo con la herramienta Solver de Excel obtenemos los siguientes resultados:
Variable ∗ , , , ,
Valor
175 1 1 0
Al interpretar el resultado obtenido observamos que se deben unir la subsidiaria 1 con la 2 y la 3 se debe de tomar por separado ya que esto nos otorga el pago mínimo para la compañía que es de ∗ = 175.
Problemas de Programación Entera
Huntco elabora salsa de tomate con 5 plantas distintas. La capacidad (en toneladas) de cada planta se encuentra en la tabla 6. La salsa de tomate se almacena en una de 3 bodegas. El costo por tonelada (en cientos de dólares) por producir salsa de tomate en cada planta y embarcarla a cada bodega se proporciona en la tabla 7. Huntco tiene 4 cliente. El costo de embarcar una tonelada de salsa después de cada bodega hasta el lugar del cliente es como se indica en la tabla 8. Cada cliente debe recibir la cantidad (en toneladas) de salsa que se presentan en la tabla 9.
Tabla 6 (en toneladas).
Toneladas
1
2
Planta 3
300
200
300
4
5
200
400
Tabla 7 (en cientos de dólares).
Desde
Bodega 1
Hasta Bodega 2
Planta 1 Planta 2 Planta 3 Planta 4 Planta 5
8 7 8 5 7
10 5 6 6 6
Bodega 3
12 7 5 7 5
Tabla 8 (en cientos de dólares).
Hasta Desde
Cliente 1
Cliente 2
Cliente 3
Cliente 4
Bodega 1 Bodega 2 Bodega 3
40 70 80
80 70 30
90 60 50
50 80 60
Tabla 9 (en toneladas).
Cliente Demanda
1
2
3
4
200
300
150
250
Problemas de Programación Entera a) Formule un problema de transporte balanceado cuya solución indique la manera de minimizar
el costo de cumplir con las demandas de los clientes. b) Modifique este problema si estas son demandas anuales y hay un costo anual fijo por la operación de cada planta y bodega. Estos costos (en miles) se dan en la tabla 10.
Tabla 10 (en miles de dólares).
Instalación
Costo fijo anual (en miles de dólares)
Planta 1 Planta 2 Planta 3 Planta 4 Planta 5 Bodega 1 Bodega 2 Bodega 3
35 45 40 42 40 30 40 30
Ya que contamos con herramientas lo suficientemente poderosas para resolver el problema con un planteamiento más simplificado se omitirá el balancear el problema por ser algo innecesario al ser capaces de obtener una respuesta optima más precisa de una manera más eficiente. Ahora bien, procedemos a identificar nuestras variables de interés. : . : . = 1,2,3,4,5. ; = 1,2,3. & = 1,2,3,4. = + + + + + + + + + + + + + + + + + + + + + + + + + .: + + ≤ 300 + + ≤ 200 + + ≤ 300 + + ≤ 200 + + ≤ 400 + + = 200
Problemas de Programación Entera + + = 300 + + = 150 + + = 250 + + + + = + + + + + + + = + + + + + + + = + + +
= 1,2,3,4,5 ; = 1,2,3 ; = 1,2,3,4
Resolvemos mediante el Solver de Excel obteniendo los siguientes resultados:
Variable ∗ , , , , , , , , , , , , , , , , ,
Valor
42,000 300 200 250 150 200 250 300 150 0 0
A partir de lo cual hallamos las rutas de transporte de mercancías optimas, de la planta 3 a la bodega 3 se deben enviar 300 toneladas, de la planta 4 a la bodega 1 enviar 200 toneladas, de la planta 5 a la bodega 1 otras 250 toneladas y de la planta 5 a la bodega 3 enviar 150 toneladas. De las bodegas a los clientes lo mejor es de la bodega 1 a los clientes 1 y 4 la cantidad demandada, y de la bodega 3 a los clientes 2 y 3 la cantidad demandada. Lo cual nos da un costo mínimo de ∗ = 42,000 cientos de dólares. Para el inciso b) se deben agregar unas restricciones y variables binarias para ajustar los costos de uso de planta y de bodega. : . = {0, 1} : . = {0, 1} = 1,2,3,4,5. & = 1,2,3.
Problemas de Programación Entera = + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + .: + + ≤ 300 + + ≤ 200 + + ≤ 300 + + ≤ 200 + + ≤ 400 + + = 200 + + = 300 + + = 150 + + = 250 + + + + = + + + + + + + = + + + + + + + = + + + + + + ≤ 900 + + + ≤ 900 + + + ≤ 900 &
= 1,2,3,4,5 ; = 1,2,3 ; = 1,2,3,4
Resolvemos mediante el Solver de Excel obteniendo los siguientes resultados:
Variable ∗
Valor
43,820 300 200 250 150 200 250
Problemas de Programación Entera , , , , , , , , , , , , , , , , , , ,
300 150 1 1 1 1 1 0 0 0
De lo cual rápidamente notamos que la respuesta son las mismas rutas que en el inciso anterior, escribiendo la interpretación en este caso tenemos: Las rutas de transporte de mercancías optimas, de la planta 3 a la bodega 3 se deben enviar 300 toneladas, de la planta 4 a la bodega 1 enviar 200 toneladas, de la planta 5 a la bodega 1 otras 250 toneladas y de la planta 5 a la bodega 3 enviar 150 toneladas. De las bodegas a los clientes lo mejor es de la bodega 1 a los clientes 1 y 4 la cantidad demandada, y de la bodega 3 a los clientes 2 y 3 la cantidad demandada. Así necesitamos activas las plantas 3, 4 y 5 además de utilizar las bodegas 1 y 3. Lo cual nos produce un costo mínimo de ∗ = 43,820 cientos de dólares.