algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal
DESCRIPTION
Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal. Santiago Balseiro Irene Loiseau Juan Ramonet. Hoja de Ruta. i. Introducción al Problema Algoritmos Interfaz Gráfica Análisis del Caso Real. VRP. Problema de Ruteo de Vehículos (VRP):. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/1.jpg)
Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con
dependencia temporal
Santiago Balseiro Irene LoiseauJuan Ramonet
![Page 2: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/2.jpg)
Hoja de Ruta
Introducción al
Problema
Algoritmos
Interfaz Gráfica
Análisis del Caso Real
![Page 3: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/3.jpg)
VRP
Académico
Económico
Interés
Problema de Ruteo de Vehículos (VRP):“Consiste en el servicio en un período de tiempo preestablecido de un conjunto de clientes mediante una flota de vehículos localizados en un depósito”
![Page 4: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/4.jpg)
VRP
• Grafo completo – G = (V, A)
• Clientes– di demanda
• Vehículos– C capacidad
• Arcos– cij costo
Clientes
Depósito
Clientes
Depósito
Clientes
Depósito
Clientes
Depósito
Clientes
Depósito
Clientes
Depósito
![Page 5: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/5.jpg)
TDVRPTW
• Problema de Ruteo de Vehículos con Ventanas de Tiempo y Dependencia Temporal
• Ventanas de Tiempo: [ai, bi]
• Tiempos de Servicio: si
• Objetivo jerárquico– minimizar 1ero: cantidad de vehículos empleados
2do: tiempo (o distancia)
![Page 6: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/6.jpg)
TDVRPTW
Dependencia temporal
¿Es lo mismo ir al centro de la ciudad por la mañana que por la tarde?
![Page 7: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/7.jpg)
TDVRPTW
• TDVRPTW es NP-Hard
• Encontramos muy pocos trabajos sobre este problema
Malandraki (1989)Ichoua, Gendreau, Potvin, 2003Fleischman, Gietz, Gnutzmann, 2004Donati,Montemanni,Casagrande,Rizzolli, Gambardella,
2003
![Page 8: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/8.jpg)
Proponemos acá un algoritmo basado en la metaheurística de Colonia de Hormigas reforzada por un conjunto de operadores de inserción y búsqueda local.
![Page 9: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/9.jpg)
TDVRPTW
Modelo para representar la dependencia temporal
• Dividimos el horizonte de tiempo en periodos.• Fijamos para cada arco una velocidad por
periodo
Malandraki propuso una representación para el tiempo del viajes en el cual no se respetaba la condición de que un vehículo que salía después que otro llegara después.
![Page 10: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/10.jpg)
TDVRPTW
Ichoua et al. propusieron una nueva representación del tiempo de viaje
![Page 11: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/11.jpg)
Formulación propuesta por Malandraki
• Variables de decisión– xij
m será 1 si algún vehículo recorre el arco (i,j) en el intervalo de tiempo m
– ti tiempo de partida del vehículo del nodo i
– wi carga total entregada por el vehículo al llegar al nodo i.
(1)
1m
ijm Mi j
x j N
1m
ij Om Mi j
x j D
(2)
(2')
min
o E
mij i
i D m M i Dj i
B x t
Un vehículo debe llegar a cada cliente
sujeto a:
![Page 12: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/12.jpg)
1 , ,mi m ijt T B x i j A m M
1 , ,mi m ijt T x i j A m M
i i i i ia s t b s i V
1 ,mi i j ij
m M
w d w B x i j A
i Ek iw C i D
(4)
(5)
(6)
(7)
(8)
(9)
1 , ,m mi j ij j ijt s c t B x i j A m M
Selección del período según el instante de partida del cliente
Restricciones de las ventanas de tiempo
Cálculo de la carga de los vehículos
Restricciones de capacidad
1m
ijm Mj i
x i N
1m
ij Em Mj i
x i D
(3)
(3')
Un vehículo debe partir de cada cliente
Cálculo de los tiempos parciales
![Page 13: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/13.jpg)
Nueva Formulación
• Variables de decisión– xij será 1 si algún vehículo recorre el arco (i,j)
– pim en el intervalo de tiempo m
– ti tiempo de partida del vehículo del nodo i
– wi carga total entregada por el vehículo al llegar al nodo i.
(1)
1ij
i j
x j N
1ij O
i j
x j D
(2)
(2')
min
o E
ij ii D i Dj i
B x t
Un vehículo debe llegar a cada cliente
sujeto a:
![Page 14: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/14.jpg)
1 ,mi m it T B p i V m M
1 ,mi m it T p i V m M
i i i i ia s t b s i V
1 ,i i j ijw d w B x i j A
i Ek iw C i D
(4)
(5)
(6)
(7)
(8)
(9)
2 , ,m m mi j ij j ij it s c t B x p i j A m M
Selección del período según el instante de partida del cliente
Restricciones de ventanas de tiempo
Cálculo de la carga de los vehículos
Restricciones de capacidad
1ij
j i
x i N
1ij E
j i
x i D
(3)
(3')
Un vehículo debe partir de cada cliente
Cálculo de los tiempos parciales
1mi
m M
p i V
(10)
![Page 15: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/15.jpg)
Se testeó la formulación en problemas muy pequeños
![Page 16: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/16.jpg)
Colonia de Hormigas
![Page 17: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/17.jpg)
Ant Colony System para el VRP
• Hormigas agentes computacionales
Paso 1 Paso 4 Paso 8 Fin iteración
Hor
mig
a 1
Hor
mig
a 2
• k hormigas en paralelo k nuevas soluciones por iteración
![Page 18: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/18.jpg)
Ant Colony System
¿Cómo escogen al próximo cliente?
si
0 en otro caso
ij iji
il ilij l Ni
j Np
• Vecinos que cumplen restricciones– Capacidad– Horarios de Entrega
• Cada arco (i, j) tiene asociado:– τij feromona
– ηij visibilidad
• Calculan las probabilidades pij para cada destino j:
j1
i 5
2
j3
3
j2
![Page 19: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/19.jpg)
Ant Colony System
• Actualización global, después de que todas las hormigas construyeron sus soluciones– Depositar feromona según la mejor
solución
• Actualización local– La feromona se evapora cada vez que una
hormiga recorre un arco 01ij ij
1 , bsij ij bs i j
C
![Page 20: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/20.jpg)
Ant Colony System
![Page 21: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/21.jpg)
Multiple Ant Colony System
Objetivo jerárquicominimizar: 1ero: cantidad de vehículos
empleados2do: tiempo (o distancia)
![Page 22: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/22.jpg)
Multiple Ant Colony System
Pos-Inserción
Hormigas: Etapa Constructiva
Actualización Global con ψACS-VEI
Colonia: ACS-VEI
Búsqueda Local
Pos-Inserción
Hormigas: Etapa Constructiva
Actualización Global con ψACS-TIME
Colonia: ACS-TIME
Mejora solución?
Si
No
Factible?
Si
No
Mejora solución?
Si
No
Factible?
No
Reiniciar ambas colonias con un vehículo menos
Si
Remplaza aψACS-TIME
Remplaza a ψACS-VEI
Activación Activación
Actualización Global con ψACS-TIME
![Page 23: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/23.jpg)
El algoritmo se inicia con una solución factible obtenida mediante 3 heurísticas:
• Solomon II• Sequential nearest neighbor• Parallel sequential neighbor
Para qué se usa esta solución inicial?
![Page 24: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/24.jpg)
Heurísticas de Mejora• Vecindarios se exploran exhaustivamente• Buscar mejoras en el funcional• Clasificación
– de una ruta– de dos rutas o multiruta
Relocate1
Exchange1
![Page 25: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/25.jpg)
Heurísticas de Mejora
Or-opt
4-opt*
2-opt
![Page 26: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/26.jpg)
Heurísticas de Mejora
2-opt*
CROSS Exchange
Exchange2
Relocate2
![Page 27: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/27.jpg)
Heurísticas de Mejora
¿Porqué tantos operadores?– ¿Son redundantes? Si!
Estrategia: aplicar primeros los de vecindario reducido y luego aquellos de vecindario extendido
01
23
01
23
![Page 28: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/28.jpg)
Heurísticas de Inserción
• Las hormigas generan soluciones con clientes sin servir.
• 1era solución: Inserción directa
Si falla, no se pueden acomodar más clientes?
NO!
![Page 29: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/29.jpg)
Heurísticas de Inserción
• 2da solución: Búsqueda Local + Inserción– Mismos operadores que heurística de mejora– Distinto objetivo
Si falla, no se pueden acomodar más clientes?
NO!
1
2
a
b
1
2
a
b
![Page 30: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/30.jpg)
Heurísticas de Inserción
• Métrica MDL (minimun delay)– Cuantificar cuán difícil es insertar un
cliente.– 3 causas que impiden servir un cliente
• Capacidad• Ventanas de tiempo del cliente• Ventanas de tiempo de un cliente posterior
– Evaluar numéricamente la penalidad por violar las restricciones
![Page 31: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/31.jpg)
Heurísticas de Inserción
• 3ra solución: Búsqueda Local + Inserción + MDL
![Page 32: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/32.jpg)
Resultados
• Instancias de Solomon, 1984– 56 problemas– comparación con los mejores resultados disponibles
GrupoMejor Resultado MACS-TDVRPTW
GapVehículos
Distancia
Vehículos
Distancia
C1 10.0 828.4 10.0 828.4 0.0%
C2 3.0 589.9 3.0 589.9 0.0%
R1 11.9 1209.9 11.9 1210.6 0.1%
R2 2.7 951.7 2.7 952.5 0.1%
RC1 11.5 1384.2 11.5 1384.4 0.0%
RC2 3.3 1119.2 3.3 1119.4 0.0%
– En 44 problemas encuentra la mejor solución– Diferencia promedio de 0.03%
![Page 33: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/33.jpg)
Interfaz Gráfica
• Visualización 3D • Información de las
soluciones • Edición interactiva • Configuración del
algoritmo • Integración a un
módulo GIS
• Visualización 3D • Información de las
soluciones • Edición interactiva • Configuración del
algoritmo • Integración a un
módulo GIS
![Page 34: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/34.jpg)
Presentación
• Proyecto– Relocalización del
depósito
• Etapas– Recolección de datos– Validación– Elección de las
alternativas– Evaluación KENDALLKENDALL
Ubicación de los clientes
![Page 35: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/35.jpg)
HIALEAH$0.69 / ft2mes
DORAL$0.77 / ft2mes
MIRAMAR$0.79 / ft2mes
KENDALL$0.65 / ft2mes
Alternativas
![Page 36: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/36.jpg)
Evaluación
Procedimiento
Ordenes de Pedido
Software de Ruteo
RutasKilómetros
Horas
Gastos Simulados
Alternativas
![Page 37: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/37.jpg)
Evaluación
Miramar
Doral
Hialeah
Kendall
0 20,000 40,000 60,000 80,000
Distancia [km]
Miramar
Doral
Hialeah
Kendall
0 1,000 2,000 3,000 4,000 5,000
Tiempo [hs]
Miramar
Doral
Hialeah
Kendall
0 100 200 300 400 500
Rutas
![Page 38: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/38.jpg)
Evaluación
ActualKendall
Alquiler Depósito 63,360$ 66,240$ 5% 73,920$ 17% 75,840$ 20%
Costos Transporte Combustible 16,506$ 12,528$ -24% 13,158$ -20% 12,016$ -27%
Mantenimiento 5,463$ 4,147$ -24% 4,355$ -20% 3,977$ -27%
Gomas 1,626$ 1,234$ -24% 1,297$ -20% 1,184$ -27%
Salario Chóferes 60,699$ 54,827$ -10% 55,211$ -9% 54,858$ -10%
Total 147,655$ 138,977$ -6% 147,941$ 0% 147,876$ 0%
Alternativa AHialeah
Alternativa BDoral
Alternativa CMiramar
Gomas1%
Mantenimiento4%
Combustible11%
Transporte16%
Alquiler Depósito
43%
Salario Chóferes
41%
![Page 39: Algoritmo de colonia de hormigas para el problema de ruteo de vehículos con dependencia temporal](https://reader030.vdocuments.co/reader030/viewer/2022033016/56813a42550346895da231c9/html5/thumbnails/39.jpg)
Fin