sol_ej_form

Anuncio
Ejercicios de formulación de problemas
Programación Matemática
LADE
Curso 07/08 - 12/3/08
1. Una compañı́a petrolera produce un tipo de gasolina a partir de petróleo. Puede comprar
cuatro tipos de petróleo y dispone de los siguientes datos:
Crudo
1
2
3
4
A
0.8
0.3
0.7
0.4
B
0.1
0.3
0.1
0.5
C
0.1
0.4
0.2
0.1
Precio/litro
43
31
47
37
A, B y C denotan los elementos a partir de los cuales se puede producir cada tipo de crudo.
La tabla muestra los porcentajes de cada elemento en cada crudo producido.
Las exigencias del mercado imponen que el crudo de base para la obtención de gasolina
debe tener al menos el 60 % del elemento A y no más del 30 % de C.
Obtén el crudo base mezclando de los cuatro tipos de forma tal que el coste sea mı́nimo.
Solución. Las variables del problema se escogen como las cantidades xi de cada tipo de
petróleo que la compañı́a desea adquirir y que definirán el crudo base para la producción
de gasolina. Dichas cantidades se miden en tantos por uno (por ejemplo).
La función objetivo será el coste (por unidad) de la mezcla a utilizar, y las restricciones
serán las condiciones sobre la composición de la mezcla respecto de los componentes A y
C (que en la formulación más abajo se presenta medida en tanto por ciento). Por último,
nos hace falta indicar que al estar las variables medidas como tantos por uno, deben sumar
uno.
El problema resultante tiene la forma:
minimizar
sujeto a
43x1 + 31x2 + 47x3 + 37x4
80x1 + 30x2 + 70x3 + 40x4 ≥ 60
10x1 + 40x2 + 20x3 + 10x4 ≤ 30
x1 + x2 + x3 + x4 = 1
x1 , x2 , x3 , x4 ≥ 0.
2. Una compañı́a de transporte dispone de 10 camiones con capacidad de 40000 libras y
de 5 camiones con capacidad de 30000 libras. Los camiones grandes tienen un coste de
transporte de 30 céntimos/milla, y los pequeños de 25 céntimos/milla. En una semana la
compañı́a debe transportar 400000 libras en un recorrido de 800 millas. La posibilidad de
otros compromisos recomienda que por cada dos camiones pequeños mantenidos en reserva
debe quedarse por lo menos uno de los grandes.
¿Cuál es el número de camiones de ambas clases que debe movilizarse para ese transporte
de forma óptima y teniendo en cuenta las restricciones?
1
Solución. Las variables en este caso corresponden a los números de camiones a emplear
de cada tipo, x1 y x2 .
La función objetivo es el coste total de los camiones asignados, multiplicando el coste por
recorrido (coste por milla multiplicado por las 800 millas) por las variables.
Las restricciones vienen dadas por los números máximos de camiones disponibles de cada
tipo, la necesidad de transportar una carga y los números de camiones mantenidos en
reserva.
El modelo resultante es
minimizar
sujeto a
30 × 800x1 + 25 × 800x2
x1 ≤ 10
x2 ≤ 5
40000x1 + 30000x2 ≥ 400000
2(10 − x1 ) ≥ 5 − x2
x1 , x2 ≥ 0 , enteras.
3. Se pide que formules el siguiente problema de programación lineal: Tienes 2200 euros
disponibles para invertirlos durante los próximos cinco años. Al inicio de cada año puedes
invertir parte del dinero en depósitos a un año o a dos años. Los depósitos a un año pagan
un interés del 5 %, mientras que los depósitos a dos años pagan un 11 % al final de los dos
años. Además, al inicio del segundo año es posible invertir dinero en obligaciones a tres
años de la empresa X., que tienen un rendimiento (total) del 17 %. Plantea el problema
lineal correspondiente a conseguir que al cabo de los cinco años tu capital sea lo mayor
posible.
Solución. Para plantear el problema seleccionamos como variables las cantidades a invertir
en cada activo (depósitos u obligaciones), xti , donde t indica el año al que corresponde la
inversión e i denota el vencimiento de la inversión. Tendremos un total de 10 variables,
x11 , x12 , x21 , x22 , x23 , x31 , . . . , x51 .
Para facilitar la formulación, añadiremos también variables xt0 , que denoten la posible
cantidad de dinero no invertida al inicio de cada año, aunque estas variables no son estrictamente necesarias.
La función objetivo a minimizar será el capital total disponible al final del quinto año, o
al comienzo del sexto, que podemos denotar por x60 para simplificar el planteamiento.
mı́n x60 .
Las restricciones del problema serán:
Las cantidades disponibles para invertir al inicio de cada periodo (resultado de las
inversiones realizadas en periodos anteriores) deben ser iguales a las inversiones en el
periodo (incluyendo el posible dinero no invertido):
2200 = x10 + x11 + x21
x10 + 1, 05x11 = x20 + x21 + x22 + x23
x20 + 1, 05x21 + 1, 11x12 = x30 + x31 + x32
x30 + 1, 05x31 + 1, 11x22 = x40 + x41 + x42
x40 + 1, 05x41 + 1, 11x32 + 1, 17x23 = x50 + x51
x50 + 1, 05x51 + 1, 11x42 = x60
En las expresiones anteriores, los lados izquierdos son las cantidades de dinero disponibles, y los lados derechos las inversiones al comienzo de cada año.
2
No negatividad de las inversiones:
xti ≥ 0.
En la formulación anterior se podrı́an haber eliminado las variables xt0 , que no son más
que variables de holgura asociadas a restricciones de desigualdad.
4. Plantea el siguiente problema entero:
Una empresa fabrica un determinado producto en m centros diferentes, para satisfacer la
demanda de n clientes. La demanda de cada cliente es Dj . Si una de las fábricas está funcionando, eso supone un coste fijo de Ki y un coste por unidad fabricada de hi ; en este
caso, debe producir al menos Mi > 0 unidades de producto. El coste por unidad de enviar
una unidad del producto de la fábrica i al cliente j es gij .
Cada fábrica pertenece a una de k regiones. En cada región deben tenerse al menos lk
fábricas abiertas.
Solución. Las variables del problema serán las cantidades fabricadas del producto en cada
una de las fábricas para satisfacer la demanda de cada cliente, xij . Además, necesitaremos
variables auxiliares que nos indiquen si cada una de las fábricas está abierta o no. Sea zi
una variable 0 − 1, que toma el valor cero si la fábrica no está produciendo, y el valor uno
si produce algo.
La función objetivo del problema corresponderá a la minimización de los costes de producción, dados por
X
X X
X
gij xij +
hi
xij +
Ki zi .
i,j
i
j
i
Para introducir las restricciones debemos empezar por definir unos conjuntos auxiliares.
A los ı́ndices i ∈ {1, . . . , m} correspondientes a las fábricas pertenecientes a la región
k los agruparemos en el conjunto Ck . Las restricciones corresponderán a las siguientes
condiciones sobre la solución:
Satisfacción de la demanda:
X
xij ≥ Dj
j = 1, . . . , n.
i
Producción mı́nima en cada fábrica:
X
xij ≥ Mi zi
i = 1, . . . , m.
j
Número mı́nimo de fábricas abiertas en cada región:
X
zi ≥ lk ∀k.
i∈Ck
Relaciones entre xij y zi :
X
xij ≤ N zi
i = 1, ..., m,
j
donde N es una constante suficientemente grande, por ejemplo N =
No negatividad:
xij ≥ 0,
3
zi ∈ {0, 1} .
P
j
Dj .
Estas restricciones completan la formulación del problema.
5. Tu empresa suministra láminas de acero que obtiene del corte de dichas láminas a partir
de bobinas de acero de 200 cm de ancho y de 20 m de largo. La demanda en metros de los
diferentes anchos que fabrica la empresa es la siguiente:
Ancho (cm)
Demanda (m)
30
1500
35
1000
50
3000
70
1000
El equipo de corte de que se dispone se puede ajustar para realizar uno de cuatro tipos
de cortes en una bobina. cada bobina solo puede cortarse de una manera. Dichos tipos de
cortes generan los anchos que se indican en la tabla siguiente:
A
B
C
D
35
30
50
30
35
30
50
30
50
70
50
50
70
70
50
70
Como resultado de los cortes se desaprovechan partes del material en las bobinas. En
particular, existen dos tipos de material no aprovechado: material de los laterales de las
bobinas (en los cortes de tipo A y D) y material del final de la bobina. El coste del material
desaprovechado es de 1.5 euros por cm de ancho y metro de largo para el correspondiente
al final de la bobina y de 1 euro por cm de ancho y metro de largo para el correspondiente
a un lateral.
Se pide que plantees un problema de optimización para determinar el número de bobinas
a cortar con cada tipo de corte de manera que se satisfaga la demanda con coste mı́nimo.
Solución. Escogeremos como variables los números de bobinas sobre los que realizar cada
uno de los tipos de cortes, que denotaremos como xA , xB , xC y xD respectivamente.
La función objetivo corresponderá al coste del material no utilizado. Para plantearla introduciremos variables adicionales que midan la longitud de material que queda sin utilizar
de cada uno de los anchos, que denotaremos como s30 , s35 , s50 y s70 . La función objetivo
tendrá la forma
mı́n 1,5(30s30 + 35s35 + 50s50 + 70s70 ) + (200xA + 400xD )
Las restricciones corresponderán a la satisfacción de la demanda, de manera que la producción exceda o iguale a dicha demanda. Para tener en cuenta los sobrantes de material,
introducimos las variables si , y convertimos las restricciones en restricciones de igualdad
(el exceso sobre la demanda son los sobrantes).
El problema resultante tendrá la forma siguiente:
minimizar
1,5(30s30 + 35s35 + 50s50 + 70s70 )
+ (200xA + 400xD )
sujeto a
40xB + 40xD − s30 = 1500
40xA − s35 = 1000
20xA + 80xC + 20xD − s50 = 3000
20xA + 40xB + 20xD − s70 = 1000
xi , sj ≥ 0
xi enteras.
4
Descargar