Documente Academic
Documente Profesional
Documente Cultură
Optimizaci
on de
modelos discretos
Introducci
on
Notas sobre la resoluci
on
Algunos modelos b
asicos
Modelizaci
on con variables binarias
An
alisis econ
omico de la soluci
on
Tema 3. Optimizaci
on de modelos discretos
Los modelos de programaci
on entera son una extensi
on de los modelos
lineales en los que algunas variables toman valores enteros.
Con frecuencia las variables enteras s
olo toman valores en 0-1, ya que
este tipo de variables permiten representar condiciones l
ogicas.
Este tipo de modelos permite representar sistemas mucho m
as complejos.
A cambio, la resoluci
on de los mismos se complica excesivamente. No se
puede utilizar la suavidad de las funciones para inferir el comportamiento
de las mismas cerca del
optimo.
Problemas con unas solas decenas de variables pueden ser casi imposibles
de resolver.
Programaci
on Lineal Entera
mn ctx
Ax b
x0
xi entera para i I {1, . . . , n}
X Si I = {1, . . . , n} Programaci
on Lineal Entera Pura.
X Si I 6= {1, . . . , n} Programaci
on Lineal Entera Mixta.
X Si xi {0, 1}, i I Programaci
on Binaria o 01.
El redondeo: ejemplo
Consid
eremos el siguiente problema de programaci
on lineal entera
z = mnx1 11x2
3x1 + 20x2 70
10x1 + 10x2 205
x1, x2 0 y enteras
La regi
on factible de la relajaci
on lineal del modelo es:
( 340
, 263
)
23
46
Soluci
on
optima sin considerar las condiciones de integralidad:
x1 = 14,7826, x2 = 5,7174 y
z = 48,19
6- Opt. Lineal Entera
El redondeo: ejemplo
( 340
, 263
)
23
46
(14, 6)(15, 6)
(14, 5)(15, 5)
Posibles redondeos:
x1 = 14 y x2 = 6: no verifica la primera restricci
on.
x1 = 14 y x2 = 5: es factible y z = 41.
x1 = 15 y x2 = 6: no verifica ninguna restricci
on.
x1 = 15 y x2 = 5: es factible y z = 40.
7- Opt. Lineal Entera
El redondeo: ejemplo
( 340
, 263
)
23
46
(14, 6)(15, 6)
(10, 5)
(14, 5)(15, 5)
La soluci
on
optima es x1 = 10 y x2 = 5, con y z = 45
Resoluci
on
Los m
etodos m
as extendidos son:
2. M
etodos de Planos de Corte: se introducen nuevas restricciones al
problema relajado, hasta lograr que la soluci
on
optima del nuevo
problema sea entera.
Se eliminan algunas soluciones continuas sin eliminar ninguna soluci
on entera.
3.3 Modelos b
asicos
Problema de la mochila
Problema de la mochila
Se dispone de n objetos para llenar una mochila.
El objeto j tiene un peso pj y tiene una utilidad (valor) cj .
La mochila admite un peso m
aximo de b.
El problema consiste en decidir qu
e objetos se introducen en la mochila
de forma que se maximice la utilidad de los objetos seleccionados.
Variables:
xj =
si el objeto j es seleccionado,
en otro caso.
j = 1, . . . , n
Problema de la mochila
Restricciones:
n
X
pj xj b
j=1
Condici
on de variables binarias: xj {0, 1}
Funci
on objetivo: m
ax
n
X
j = 1, . . . , n
cj xj
j=1
Se pueden considerar variantes en las que se incluya tambi
en el volumen, etc., o la
posibilidad de que haya m
as de una unidad de cada objeto.
En este
ultimo caso, las variables seran xj igual al n
umero de unidades del objeto j
seleccionadas.
Tipo
1
2
3
4
5
Peso
5
8
3
2
7
Volumen
1
8
6
5
4
Valor
4
7
6
5
4
En el citado cami
on s
olo se admite un peso m
aximo de 112 y un volumen
m
aximo de 109.
Cu
antos productos de cada tipo debe llevar para maximizar el valor de
la carga?
3.3 Modelos b
asicos
Problema de transporte
Problema de transporte
El problema cl
asico del transporte nace de situaciones en las que se
debe determinar un esquema
optimo de transporte, desde unos orgenes
a unos destinos, que debe satisfacer los siguientes requisitos:
Problema de transporte
Se disponen de m fabricas y n almacenes.
La f
abrica i produce un total de ai unidades de un cierto producto.
El almac
en j requiere un total de bj unidades.
El coste de transportar una unidad de la f
abrica i al almac
en j es cij .
El objetivo es determinar qu
e cantidad de producto se transporta de
cada f
abrica a cada almac
en de manera que los costes de transporte
sean mnimos.
Cada f
abrica sirve toda su oferta:
n
X
xij = ai ,
i = 1, . . . , m.
j=1
Cada almac
en satisface su demanda:
m
X
xij = bj ,
j = 1, . . . , n.
i=1
Condici
on de no negatividad (variables enteras): xij 0 y enteras
i = 1, . . . , m, j = 1, . . . , n.
Objetivo:
mn
m X
n
X
i=1 j=1
cij xij ,
C1
C2
C3
A1
65
70
15
A2
50
65
5
A3
110
80
240
A4
145
105
55
A5
90
115
30
3.3 Modelos b
asicos
Problema de asignaci
on
Problema de asignaci
on
El modelo de asignaci
on permite asignar eficientemente un conjunto de
personas a un conjunto de trabajos, m
aquinas a tareas, coches de polica
a sectores de una ciudad, vendedores a zonas, etc.
El objetivo es minimizar los costes, tiempos de desplazamiento, o maximizar la efectividad.
Es un modelo muy frecuente como submodelo en otros m
as complejos.
Problema de asignaci
on. Ejemplo
Juan es el jefe de un bufete de j
ovenes abogados y est
a interesado en la
utilizaci
on m
as efectiva de sus recursos de personal buscando la forma
de hacer las mejores asignaciones de abogado-cliente.
El 1 de Marzo le llegan 4 nuevos clientes.
Revisando a su personal encuentra que 4 abogados: Ana, Bruno, Carmen
y Domingo.
Todos pueden ser asignados a los casos.
Cada uno de ellos s
olo se puede hacer cargo de un caso.
Problema de asignaci
on. Ejemplo (cont.)
Para decidir la mejor asignaci
on Juan tiene en cuenta una tasa de efectividad (de 1 a 9) construida sobre actuaciones anteriores de dichos
abogados, ya que no todos son igual de buenos (especialistas) en todo
tipo de procesos:
Abogado
ana (1)
bruno (2)
carmen (3)
domingo (4)
Problema de asignaci
on. Ejemplo (cont.)
Para determinar la asignaci
on m
as efectiva Juan debe resolver el siguiente problema de asignaci
on
m
ax 6x11 + 2x12 + 8x13 + 5x14 + 9x21 + 3x22 + 5x33 + 8x44+
4x31 + 8x32 + 3x33 + 4x34 + 6x41 + 7x42 + 6x43 + 4x44
s.a.
4
X
i=1
4
X
xij = 1,
j = 1, . . . , 4,
xij = 1,
i = 1, . . . , 4,
j=1
i = 1, . . . , 4, j = 1, . . . , 4.
1,
0,
3.3 Modelos b
asicos
Problema de Asignaci
on Generalizada
Problema de Asignaci
on Generalizada. Ejemplo
Es una generalizaci
on del modelo anterior. Cada abogado puede hacerse
cargo de m
as de un cliente simult
aneamente, siempre y cuando no supere
su capacidad
Un sistema de procesamiento compartido tiene 3 ordenadores diferentes
(Oj , j = 1, 2, 3) y tiene que procesar 6 tareas (Ti i = 1, . . . , 6)
Todas las tareas se pueden realizar en cualquier ordenador, pero no
pueden fraccionarse (se deben completar en el ordenador en que se
inician)
Los tiempos de procesamiento de cada tarea i en cada ordenador j, tij ,
vara seg
un el ordenador
El tiempo disponible de cada ordenador para ejecutar las tareas est
a limitado
26- Opt. Lineal Entera
Problema de Asignaci
on Generalizada. Ejemplo
Tarea
T1
T2
T3
T4
T5
T6
T. disp. (Cj )
Ordenador
O1 O2 O3
18 16 12
14 21 19
23 27 33
16 24 23
17 24 24
25 28 30
47 41 46
A qu
e ordenador debemos mandar cada tarea si queremos minimizar el
tiempo total de procesamiento?
Variables
xij =
1,
0,
i = 1, . . . , 6, j = 1, 2, 3.
27- Opt. Lineal Entera
Problema de Asignaci
on Generalizada. Ejemplo
Funci
on objetivo
T = 18x11 + 16x12 + 12x13 + 14x21 + 21x22 + 19x23+
+ 23x31 + 27x32 + 33x33 + 16x41 + 24x42 + 23x43+
+ 17x51 + 24x52 + 24x53 + 25x61 + 28x62 + 30x63
Restricciones
X Cada tarea se procesa en un s
olo ordenador:
3
X
xij = 1,
i = 1, . . . , 6.
j=1
X Limitaci
on de tiempo disponible en cada ordenador:
18x11 + 14x21 + 23x31 + 16x41 + 17x51 + 25x61 47
16x12 + 21x22 + 27x32 + 24x42 + 24x52 + 28x62 41
12x13 + 19x23 + 33x33 + 23x43 + 24x53 + 30x63 46
28- Opt. Lineal Entera
Problema de Asignaci
on Generalizada. Ejemplo
T = mn
6 X
3
X
tij xij
i=1 j=1
3
X
xij = 1,
6
X
tij xij Cj ,
i = 1, . . . , 6
j=1
j = 1, 2, 3
i=1
xij {0, 1}
C
omo cambiaras el modelo para que el tiempo de procesamiento total fuese el tiempo que tardan en completarse todas las tareas que se
procesan en paralelo en los 3 ordenadores?
Problema de Asignaci
on Generalizada. Ejemplo
Funci
on objetivo
n
T = m
ax 18x11 + 14x21 + 23x31 + 16x41 + 17x51 + 25x61,
16x12 + 21x22 + 27x32 + 24x42 + 24x52 + 28x62,
12x13 + 19x23 + 33x33 + 23x43 + 24x53 + 30x63
T = mn m
ax
6
X
6
X
6
X
ti1xi1,
ti2xi2,
ti3xi3 ,
i=1
i=1
i=1
3
X
xij = 1,
6
X
tij xij Cj ,
i = 1, . . . , 6
j=1
i=1
xij {0, 1}
30- Opt. Lineal Entera
j = 1, 2, 3
Problema de Asignaci
on Generalizada. Ejemplo
T = mn z
6
X
ti1xi1 z
6
X
ti2xi2 z
6
X
ti3xi3 z
3
X
xij = 1,
6
X
tij xij Cj ,
i=1
i=1
i=1
i = 1, . . . , 6
j=1
i=1
xij {0, 1}
31- Opt. Lineal Entera
j = 1, 2, 3
3.3 Modelos b
asicos
Problema de Cubrimiento y Partici
on
1
2
3
4
5
6
1
0
23
14
18
10
32
2
23
0
24
13
22
11
3
14
24
0
60
19
20
4
18
13
60
0
55
17
5
10
22
19
55
0
12
6
32
11
20
17
12
0
Coste
100
120
90
60
80
95
Determinar la ubicaci
on de las estaciones que minimiza el n
umero de
estaciones de ambulancias.
1
0
Restricciones
La poblaci
on 1 debe ser atendida por una estaci
on a menos de 15
minutos en alguna de las poblaciones a menos de 15 minutos de
la 1 debe haber una estaci
on:
x1 + x3 + x5 1
El resto de poblaciones debe ser tambi
en atendida en menos de 15
minutos:
x2 + x4 + x6 > 1
x1 + x3 > 1
x2 + x4 > 1
x1 + x5 + x6 > 1
x2 + x5 + x6 > 1
Condici
on de variables binarias: xij {0, 1}, i = 1, . . . , n.
35- Opt. Lineal Entera
Soluci
on
optima: Ubicar estaciones de ambulancias en las poblaciones
1 y 2, con un coste de 220
aij =
si la poblaci
on i puede ser atendida desde
una estaci
on de ambulancias ubicada en j,
en otro caso.
Restricciones de cubrimiento:
Ax 1
i, j = 1, . . . , 6.
3.4. Modelizaci
on con variables binarias
Modelizaci
on de condiciones l
ogicas
Modelizaci
on de condiciones l
ogicas
El uso de variables binarias permite modelizar condiciones l
ogicas que
permiten obtener modelos muy complejos:
Implicaciones: si se hace una actividad, se deben hacer otras o se
deben impedir otras.
Costes fijos: la realizaci
on de una actividad conlleva un gasto fijo,
independientemente del nivel de actividad.
Variables semicontinuas: si se realiza una actividad, se hace a un
nivel mnimo.
Funciones no lineales: aproximaci
on por funciones lineales a trozos.
Etc.
Coste fijo
Pr
actica sobre el Problema de Localizaci
on de plantas con Costes Fijos
y Capacidades
Variables semicontinuas
En ocasiones, la decisi
on de realizar una actividad est
a condicionada a
hacer un mnimo.
Diferencias dependiendo de la naturaleza de la actividad: continua o
discreta.
Economas de escala
Cuando se producen economas de escalas (precios unitarios descendentes seg
un aumenta la cantidad comprada), la programaci
on lineal no
resulta adecuada.
Una alternativa es la inclusi
on de variables 01.