Está en la página 1de 28

1

Problema de Ruteo Vehicular


(Vehicle Routing Problem VRP)

Consiste en
disear las rutas
que impliquen el
menor costo de
distribucin,

desde un
depsito central
(fbrica) hasta
un conjunto de
lugares o
clientes
geogrficamente
dispersos,

mediante una
flota de
camiones,
atendiendo
ciertas
restricciones.

Distribucin en una fbrica de motocicletas


El problema de distribucin estudiado se formula como una
combinacin de dos variaciones del VRP. A este problema
combinado se lo conoce como SD/MF-VRP y ya ha sido
estudiado en un contexto mono-objetivo [Belfiore y Yoshizaki].

MFVRP
Mixed Fleet
Vehicle Routing
Problem o
Problema de
Ruteo con Flota
Heterognea

SDVRP
Split Delivery
Vehicle Routing
Problem o
Problema de Ruteo
con Entregas
Parciales

Particularidades del Problema estudiado


Se propone resolver por primera vez una variante del
SD/MF-VRP considerando la optimizacin simultnea de
varias funciones objetivo.

El problema es modelado para el caso concreto de una


fbrica de motocicletas en Paraguay.

Para resolver el SD/MF-VRP multiobjetivos se propone una


variante de la Optimizacin por Colonias de Hormigas o Ant
Colony Optimization (ACO).

Particularidades del Problema estudiado


Este trabajo propone resolver el SD/MF-VRP
considerando simultneamente cuatro objetivos:
1. el nmero de vehculos,

2. el tiempo total de viaje,

3. el tiempo total de entrega, y

4. la demanda insatisfecha.

Modelo Matemtico
Sea,
S = {s0, s1,, s58}

el conjunto de locales de la empresa, donde


s0 representa el depsito

Q = {Q1, Q2, Q5}

conjunto de capacidades totales de cada uno


de los 5 vehculos de la empresa, donde Qk
es la capacidad del vehculo k

Z = {zkij}

indica si el vehculo k puede transitar de si a


sj (en cuyo caso zkij = 1) o no puede hacerlo,
(en cuyo caso zkij = 0)

dij

la distancia recorrida entre la sucursal si y sj.


Se considera dij = dji

Modelo Matemtico
Sea,
tij

el tiempo de viaje desde la sucursal si hasta


la sucursal sj. En este trabajo se asume que
tij = tji

qi

la demanda de la sucursal si para 1 i 58,


dado que se asume q0 = 0

C (k, i, j)

el costo de usar el vehculo k para ir de si a sj

una solucin del problema, cuyos elementos


son las matrices A y B; = [A; B]

Modelo Matemtico
El problema se plantea en un contexto multiobjetivo
como:

Minimizar el vector
F() = [F1(), F2(), F3(), F4()]T
donde F1(), F2(), F3() y F4() representan las 4
funciones objetivo, y representa una solucin del
problema.

Funciones Objetivo
58 58

Costo total

F1 (y) = x kijC(k,i, j)
i=0 j=0 k=1
58 58

Tiempo total de viaje

F2 (y) = x kijt ij
i=0 j=0 k=1
58 58

Distancia total recorrida

F3 (y) = x kijd ij
i=0 j=0 k=1

Demanda insatisfecha

58

58

i=1

i=1

F4 (y) = q i - yB (k,i)

Restricciones

La capacidad de un vehculo no puede ser sobrepasada

Restriccin 158

(k,i)y ik Q K " k {1,...,5}

i=0

donde

1 si el vehculo k atiende a la sucursal i


y ik =
0 en caso contrario

10

Restricciones
Restriccin 2
Los vehculos solo pueden transitar por caminos que le son
permitidos

xkij = 1 slo si zkij = 1


donde,

1 si el vehculo k va desde si a s j en una solucin y


x kij =

0 en caso contrario

11

Ejemplo de Solucin = [A, B]

yA (k,i) =

k=4

s3

s 45

s 20

s8

s37

s4

s50

s 29

s15

s 25

s33

0 yB (k,i) =

25 15 0 0
37 0 0 0
10 5 8 12
12 14 11 0
35 0 0 0

S0

S29
12+14+11

S15
14+11

S25
11

0
0
0
0
0

12

Colonia de Hormigas
Comportamiento de las hormigas reales en busca de
alimento

a.

b.

c.

13

Optimizacin por Colonia de Hormigas (ACO)


Dos tipos de informacin guan el movimiento de la hormiga

Visibilidad (ij)
Mide la preferencia
heurstica de moverse
desde el nodo i hasta el
nodo j

Rastros de
feromona (ij )
Mide la
deseabilidad
aprendida del
movimiento de i a j.
Imita a la feromona
real que depositan
las hormigas
naturales.

14

Generalizacin del MOACS para varios objetivos


Este trabajo se inspira en un enfoque anterior [Barn
y Schaerer, 2003] para resolver el TSP bi-objetivo:
el MOACS (Multi-objective Ant Colony System)

El MOACS utiliza una nica


colonia de hormigas con
visibilidades adaptativas por
cada objetivo, logrando
minimizar simultneamente
todas las funciones objetivo.

15

Caractersticas Especiales de la Solucin


Propuesta
Optimiza tantas
funciones objetivo
como sean necesarias

Permite vehculos
heterogneos con
restricciones
diferenciadas

Se propone un
tratamiento
adaptativo para las
visibilidades que se
necesiten utilizar

Aumento de
feromonas escogido
por el operador, por
ejemplo, solo
asociado al costo

16

Procedimiento del Algoritmo Implementado


1: Leer parmetros de entrada
2: Conjunto_Pareto = vacio
3: Inicializar la matriz de feromonas
4: Desde w =1 hasta Nmero_de_Generaciones
5:
Desde h = 1 hasta Nmero_de_Hormigas
6:
Construir solucin w,h
7:
Calcular funciones objetivo F(w,h)
8:
Fin Desde h
9:
Encontrar soluciones no-dominadas
10:
Actualizar Conjunto_Pareto
11
Actualizar Matriz de Feromonas
12: Fin Desde w
13: Imprimir Conjunto_Pareto de soluciones

17

Parmetros de Entrada
G (V, A)

c, t y d

D = {dij}

Grafo: Conjunto de vrtices o sucursales


unidos por aristas
influencia relativa de los rastros de feromona

influencia relativa entre las visibilidades

tasa de evaporacin
matriz de dimensiones 59x59 que contiene
distancias entre las sucursales y entre el
depsito y las sucursales

18

Parmetros de Entrada
T = {tij}

matriz de dimensiones 59x59 que contiene


tiempos promedio de viaje entre las
sucursales y entre el depsito y las
sucursales

R = {rij}

matriz de dimensiones 59x59 que contiene


restricciones de viajar de si a sj

qi

Costo_veh

Costos_Conocidos

demanda de cada sucursal si


costo/km de cada vehculo propio
costos conocidos de recorridos frecuentes
que realizan los vehculos tercerizados

19

Salida del Algoritmo


Conjunto Pareto de
Soluciones

Frente Pareto

(1)= [A(1), B(1)]

F ((1)) = [F1((1)), F2((1)), F3((1)), F4((1))]

(2)= [A(2), B(2)]

F ((2)) = [F1((2)), F2((2)), F3((2)), F4((2))]

(3)= [A(3), B(3)]


.
.
.

F ((3)) = [F1((3)), F2((3)), F3((3)), F4((3))]


.
.
.

()= [A(), B()]

F (()) = [F1(()), F2(()), F3(()), F4(())]

20

Ejemplo de Salida del Algoritmo Propuesto

A(1)

0
s
35
s55

0
0

yA(2) =

s15

s55

s19

0 0
0 0

0 0
11 20
0 0 y
= 4 23
B(1)

0 0
0 0
0 0
0 0

0 0 0 0 0

s35 s55 s15 0 0

s15 s19 0 0 0 yB(2) =

0 0 0 0 0

0 0 0 0 0

0
6
0
0
0

0
0
0
0
0

0
0
0
0
0

0 0 0 0 0

11 10 16 0 0
4 23 0 0 0

0 0 0 0 0
0 0 0 0 0

F1((1)) = 300.000 Gs
F2((1)) = 6,4 hs
F3((1)) = 420 km
F4((1)) = 0 motos

F1((2)) = 350.000 Gs
F2((2)) = 6,2 hs
F3((2)) = 425 km
F4((2)) = 0 motos

21

Pruebas Experimentales
Se realizaron en base al historial de pedidos y
entregas de la empresa,
con el objetivo de comparar las soluciones del
mtodo propuesto, con respecto a los viajes
efectivamente realizados por la empresa.

Estas comparaciones se hacen en base a las


cuatro funciones objetivo propuestas.

22

23

Ingreso de Datos al Programa

24

Salida de Datos del Programa

25

Resultados Experimentales
Primera prueba experimental
Costo

Tiempo

Distancia

Das de
distribucin

Distribucin de la
empresa

18.895.464 Gs

94,63 hs

6.240 km

5 das

Distribucin con
el mtodo
propuesto

18.235.432 Gs

102,35 hs

6.582 km

3 das

660.032 Gs

- 7,72 hs

- 342 km

2 das

Diferencia

26

Resultados Experimentales
Segunda Prueba Experimental
Costo

Tiempo

Distancia

Das de
distribucin

Distribucin de la
empresa

16.620.080 Gs

83,7 hs

5.451km

3 das

Distribucin
mtodo
propuesto

15.960.975 Gs

81,04 hs

5.361km

2 das

659.105 Gs

2,66 hs

90 km

1 da

Diferencia

27

Resultados Experimentales
Tercera Prueba Experimental
Costo

Tiempo

Distancia

Das de
distribucin

Distribucin de la
empresa

43.995.970 Gs

228 hs

14.636 km

6 das

Distribucin
mtodo
propuesto

40.563.989 Gs

209,95 hs

13.492 km

4 das

Diferencia

3.431.981 Gs

18,05 hs

1.144 km

2 das

28

Conclusiones Generales
El mtodo propuesto obtiene soluciones factibles,
generalmente mejores que las obtenidas empricamente por
la empresa.

El mtodo propuesto logra optimizar la utilizacin de la flota


de vehculos disponibles de la empresa.

El mtodo sugerido automatiza la planificacin de la


distribucin.

También podría gustarte