a tabu search approach for solving a difficult forest harvesting machine location problem andrés...
TRANSCRIPT
A tabu search approach for solving a difficult forest harvesting machine
location problem
Andrés Diaz Legües, Jacques A. Ferland, Celso C. Ribeiro, Jorge R . Vera, Andrés Weintraub.
2004
Santiago Basso
Descripción del problema
• Elección del tipo de maquinaria y su ubicación para la recolección de árboles.
• Diseño de la red de caminos conectando la antigua red con los las futuras ubicaciones de maquinas.
• Buscando maximizar la ganancia.• Enfoque previo: P.E.
Tipos de maquinas
• Tractores • Torres
Formulación y Modelo Matemático del Problema
• Partición en parcelas o unidades (10mx10m) del área de trabajo según:
M: unidades destinadas a la tala.
N: unidades representando intersecciones (existentes o potenciales) de caminos de la red.
Tk: posible ubicación de la maquina del tipo k
S: salidas (S N)
T = Uk Tk
1 si unidad j M puede ser recolectada desde
P kij = la i Tk usando maquina tipo k
0 c.c
O j: Volumen de madera de la unidad j M
G=(N,A) A NxN grafo representando la red de caminos. (ejes existentes o potenciales)
Kqr: flujo máximo de transporte de madera por eje (q,r) A.(ambas direcciones).
Variables de decisión
• Maquinas:
1 si maquina del tipo k es instalada en i Tk
Xki =
0 c.c.
• Caminos:
1 si eje (q,r) A es construido
Zqr =
0 c.c.
Función objetivo• Max iT Yi - iT k C1ki Xik -
iT jM k C2kij Wkij - (q,r)A C3qr Zqr- (q,r)A C4qr fqr
: ingreso por unidad de volumen recolectada.
• Yi: Volumen de madera recolectado en iT. • C1ki: Costo (fijo) de instalación de maquina del tipo k en parc. i
• Xik = 1 si maquina del tipo k es instalada en i Tk, 0 c.c..
• C2kij: Costo de recolección (por unidad de volumen) la parcela j desde la ubicación i usando maquina del tipo k.
• Wkij: volumen recolectado en parcela j desde ubicación i usando maquina tipo k.
Función objetivo
• Max iT Yi - iT k C1ki Xik -
iT jM k C2kij Wkij - (q,r)A C3qr Zqr-
(q,r)A C4qr fqr
• C3qr: Costo de construcción del camino/eje (q,r) (si ya existe, es nulo) .• Zqr = 1 si eje (q,r) A es construido, 0 c.c..
• C4qr: Costo (por unidad) de transporte por eje (q,r).• fqr: volumen transportado por eje (q,r).
Restricciones
k Xik 1 i T
• Wkij Xki Oj j M, iTk, kK
ik Pkij Wkij Oj j M
• Yi= jk Pkij Wkij i T
• fqr + frq Kqr Zqr (q,r) A• -Yr r T
(q,r)A fqr - (r,t)A frt = 0 r N-(TUS)
gr r S
(gr: flujo por salida r)
Restricciones
• Xik = 0 o 1 i T
• Zik = 0 o 1 (q,r) A
• Yi 0 i T
• Wkij 0 j M, i Tk, k K
• fqr 0 (q,r) A
Tabu Search para el sub-problema de Ubicación de maquinas
• Solución inicial: Se ordenan de mayor a menor según la ganancia (ingreso-costos) de cada
posible ubicación de cada maquina, eligiéndose la mejor sin tener intersección con las ya elegidas.
• Vecinos: N(x) = { x’: x’= x m , m M } M = {1-opt U 2-opt }
• Tamaño lista tabu (L.T.): p’: [0.8 p] p ’ p (tamaño variante)
• Criterio de parada: Cantidad max de iteraciones.
Tabu Search para el sub-problema de Ubicación de maquinas
• Reducción de vecinos:
2-opt*: maquinas con intersección del área de alcance.
Partición de Vecinos en clases de equivalencia.
Evaluación de vecinos
• Construcción a priori de un árbol generador mínimo uniendo las posibles ubicaciones para las maquinas, obteniendo una red de caminos.
Intensificación de la búsqueda
• Luego de varias iteraciones, se intensifica la búsqueda reduciendo el numero de clases de equivalencias. C´ = [C/4] + 1
Diversificación de la búsqueda
• Solo si la intensificación falla. Se relaja la lista tabu, permitiendose elegir aquellos vecinos que han estado prohibidos por mayor cantidad de itereaciones.
Como elegir la solución parcial en cada iteración
Usando solo un subcjto B(x) V(x) B(x): mejores soluciones en la vecindad de x.
• Grasp: se elige al azar una solución en B(x).
• Proporcionalmente: a cada solución de B(x) se le da un valor de probabilidad, en relación a su valor en la función objetivo.
Como elegir la solución parcial en cada iteración
Usando todas las posibles soluciones.
• Golosa: si F(x’)>F(x) x x’
• Simulated Annealing: si F(x’)>F(x) x x
si F(x’)<=F(x) exp (F(x’)-F(x)/Temp) > r x x r(0,1) Temp = 7 * 0.997 en c.i.
Mejorar solución final
• Path relinking.
• Elección de red de caminos definitiva:
Construcción a partir del árbol generador un árbol de Steiner.
Resultados y Conclusiones
Problema 1 2
Área (hectáreas) 210 500
Numero de parcelas 21000 50000
Ubicaciones para torres 90 216
Ubicaciones para tractores 150 398
Salidas 5 11
Intersecciones entre caminos 330 978
Caminos existentes 36 102
Resultados y Conclusiones
Numero de clases Función Objetivo (US$) Tiempo (seg.)1 6259137 1478,22
20 6260059 335,1140 6259990 228,8160 6259090 228,6180 6260358 210,70
100 6260390 178,82120 6257405 172,67
• Problema 2, = 50
Resultados y Conclusiones
• Problema 2, = 18, = 50
VarianteFunción Objetivo
Tiempo (seg.)
Función Objetivo
Tiempo (seg.)
Grasp 1513035,69 159,19 6256638,49 154,38
Grasp + PR 1516412,68 190,90 6258888,25 204,25
Prop. 1514180,13 157,17 6256888,84 156,59
Prop + PR 1515122,15 190,01 6256646,91 192,23
Golosa 1517256,30 289,96 6259044,81 270,86
Golosa + PR 1518095,28 374,10 6260428,37 314,14
S.A. 1517694,42 309,65 6260342,61 335,44
S.A. + PR 1516613,50 361,06 6259373,80 375,15
Resultados y ConclusionesCPLEX 8.1 Tabu Search
Funcion Objetivo 467522,31 501321,38Problema Cota Superior 559349,56
1 Diferencia 12,43%Tiempo (minutos) 600,00 1,09
Problema Funcion Objetivo 1488866,70 1515081,532 Cota Superior 1680473,60
Diferencia 12,87%Tiempo (minutos) 600,00 3,72
= 18
Resultados y Conclusiones
= 50
CPLEX 8.1 Tabu SearchFunción Objetivo 2040319,79 2041777,38
Problema Cota Superior 2102811,931 Diferencia 3,06%
Tiempo (minutos) 600,00 1,04Función Objetivo 6222050,04 6259090,23
Problema Cota Superior 6420475,282 Diferencia 3,19%
Tiempo (minutos) 520,07 3,81
Fin