Está en la página 1de 13

Estado del Arte del Problema de Ruteo de Vehı́culos (VRP)

Nicolas Barajas
Universidad Nacional de Colombia
Facultad de Ingenieria
Maestrı́a en Ingenierı́a de Sistemas y Computación
wnbarajasm@unal.edu.co

RESUMEN Primero se hará una descripción de la problemática plan-


Este artı́culo presenta un estado del arte del conocido pro- teando el VRP de una nueva manera basada en teorı́a de
blema de ruteo de vehı́culos más conocido como VRP por conjuntos y funciones, en la problemática también se des-
las siglas en ingles de Vehicle Routing Problem, se descri- cribirá la complejidad del VRP. Luego se hará una breve
ben brevemente las diferentes variaciones que el problema descripción de cada una de las variaciones del VRP. En se-
presenta, aunque no se hace énfasis en cada una de éstas. guida se describirán las técnicas de solución nombrando al-
El artı́culo se centra más en las técnicas que existen y que gunas generalidades de las técnicas clásicas y luego haciendo
son usadas en la actualidad para resolver esta clase de pro- énfasis en las técnicas más usadas en la actualidad para re-
blemas. El problema es planteado de una nueva manera solver este tipo de problemas, las cuales son: Computación
simplificada mediante teorı́a de conjuntos y funciones, esto Evolutiva, Método de Colonia de Hormigas, Búsqueda Tabú
permitirá tener un entendimiento más claro del problema y y Recocido Simulado. Después se mencionarán algunas de
puede ser útil para futuros estudios. Se tratan detallada- las aplicaciones que tiene el VRP y enseguida se tratarán
mente las siguientes técnicas metaheurı́sticas: Computación las perspectivas de desarrollo. Finalmente, se presentarán
Evolutiva, Método de Colonia de Hormigas, Búsqueda Tabú algunas conclusiones que se obtienen de la construcción de
y Recocido Simulado; y se mencionan algunas caracterı́sticas este estado del arte.
de otras técnicas usadas tales como: Branch and Bound,
Branch and Cut y otras heurı́sticas dirigidas exclusivamente 2. PROBLEMÁTICA
a resolver el VRP. En el final del artı́culo se muestran algu- La necesidad de transportar determinadas cosas de un lugar
nas de las aplicaciones del VRP y se nombran las perspec- a otro, hace que existan empresas que se dediquen a pres-
tivas de desarrollo mostrando conclusiones obtenidas de la tar servicios de transporte a la comunidad, teniendo éstas
elaboración del estado del arte. que tener un importante proceso logı́stico en cuanto a pro-
gramación y designación de las diferentes rutas a realizar
para prestar el servicio. El VRP y sus variaciones represen-
Palabras Clave tan de cierta manera los problemas de la vida real de estas
Optimización combinatoria, VRP, TSP, , Heurı́stica, Me- empresas mencionadas.
taheurı́stica
El VRP básico consiste en establecer las rutas para una flota
de vehı́culos que deben salir de un depósito y recorrer deter-
1. INTRODUCCIÓN minados puntos (clientes) una sola vez y regresar al depósito,
El VRP es uno de los problemas más conocidos en optimi-
de manera que se minimice la distancia total recorrida por
zación combinatoria, la forma del problema no nos permite
todos los vehı́culos (Ver Figura 1).
llegar a una solución óptima con el uso de una cantidad
razonable de recursos, como se verá en la problemática. De-
bido a esto se usan ciertas técnicas que permiten hallar una
solución confiable, cercana a la óptima y en tiempos razona-
bles. En este artı́culo se revisarán las técnicas más usadas y
que por consiguiente dan mejores resultados. Unas técnicas
pueden ser pertinentes más que otras debido al tipo de VRP
que se plantee, o a las entradas del problema.

Figura 1: VRP Básico


2.1 Planteamiento del problema Sujeto a:
El planteamiento del problema se hará mediante teorı́a de m
\
conjuntos y funciones. Se establece entonces que existen n ran(Fi ) = ∅ (1)
i=1
clientes y un depósito representados por un conjunto P : !
m
[
p1 ..pn − ran(Fi ) =∅ (2)
P = {p0 , p1 , p2 , .., pn } i=1
U (vi )
en donde p0 es el punto que representa el depósito y los
X
Q(i) > D(Fi (j)) para todo i = 1, 2, .., m (3)
demás puntos representan a cada uno de los n clientes. Se j=1

tiene en cuenta la relación R:


 
U (vi )−1
X
TL >  T (Fi (j), Fi (j + 1)) + T (p0 , Fi (1)) (4)
R⊂P ×P j=1

+T (Fi (U (vi )), 0) para todo i = 1, 2, .., m


en donde (pi , pj ) ∈ R implica que hay una conexión entre el
punto pi y el punto pj . Existen m vehı́culos representados
Nótese que en (1) se establece que no pueden haber clientes
por el conjunto V :
asignados a más de un vehı́culo, en (2) se establece que no
V = {v1 , v2 , .., vm } queden clientes sin ser atendidos, la restricción (3) deter-
mina que la demanda de los clientes asignados a un vehı́culo
en donde m puede ser constante o variable no mayor que no exceda la capacidad de éste y en (4) se determina que
n, cada vehı́culo tiene una capacidad asociada representada cada vehı́culo no se tarde más de un tiempo lı́mite T L ha-
por la función Q: ciendo el recorrido. Como se nombraba anteriormente hay
VRPs en donde no se tiene en cuenta un T L y/o se tiene
Q : V → N+ capacidad infinita para cada vehı́culo, dependiendo de estos
dos aspectos las restricciones (3) y/o (4) serán tenidas en
esta capacidad es generalmente igual para cada vehı́culo, en
cuenta.
algunas ocasiones la capacidad podrı́a ser infinita. Existe
un costo asociado representado por la función C:
2.2 Complejidad del problema
C : R → R+ El VRP ya está bien establecido como un problema combi-
natorio, en varias fuentes que tratan el tema de optimización
en donde C(pi , pj ) es el costo de ir de un punto pi a un punto combinatoria en general, estudian el VRP como uno de los
pj y C(pi , pj ) = C(pj , pi ). Cada cliente tiene una demanda problemas más comunes en este tipo de optimización, en [26]
asociada representada por la función D: es nombrado como un ejemplo de optimización combinatoria
el Problema del Agente Viajero más conocido como TSP por
D : p1 ..pn → N+ sus siglas en ingles de Traveling Salesman Problem, que está
relacionado estrechamente con el VRP y serı́a equivalente a
Finalmente en algunos casos se presentan situaciones en tener un VRP con un solo vehı́culo de capacidad suficiente y
donde la ruta de cada vehı́culo no puede exceder un lı́mite si lı́mite de tiempo para realizar la tarea. En [14] en donde
de tiempo T L, entonces se tiene en cuenta un tiempo repre- se muestran diferentes técnicas heurı́sticas basadas en siste-
sentado por la función T : mas naturales para la solución de problemas combinatorios,
se presenta como ejemplo el TSP como uno de los proble-
T : R → R+ mas más conocidos en optimización combinatoria y lo usan
como ejemplo explicativo para varias de las técnicas que se
en donde T (pi , pj ) es el tiempo que un vehı́culo se tarda desarrollan en el artı́culo. En [2] en donde se muestran dos
en ir de un punto pi a un punto pj . Se tienen en cuenta métodos para tratar problemas de optimización combina-
las variables de número de clientes que visita cada vehı́culo toria multiobjetivo los cuales están motivados por la bio-
representadas por U : logı́a, el TSP es nombrado como ejemplo de este tipo de
optimización. En [19] en donde se hace una anotación de
U : V → 1..n la literatura existente para cada uno de los problemas más
conocidos en optimización combinatoria es revisado el TSP
Se representan las rutas de cada vehı́culo mediante las fun-
como unos de los problemas más ampliamente estudiados
ciones Fi , i = 1, 2, .., m:
junto con el VRP. En la Figura 2 se ubica el VRP en el
Fi : 1..U (vi ) → p1 ..pn contexto de problema de optimización. Sabiendo entonces
la condición de problema combinatorio del VRP, en el cual
en donde Fi es la función que representa la ruta del vehiculo hay que revisar todas las posibles soluciones para escoger
vi y Fi (j) representa el j-ésimo punto que recorre el vehı́culo la óptima, en el caso especial TSP del VRP, se tiene que
vi , esta función a diferencia de las anteriores es inyectiva ya para n clientes existen (n−1)!
2
posibles soluciones, teniendo
que cada cliente solo puede ser visitado una vez. Se plantea por ejemplo para n = 15 un total de 43.589.145.600 posi-
entonces el problema de optimización de la siguiente manera: bles soluciones, siendo este un ejemplo con un n pequeño,
un problema en el que se necesitarı́an demasiados recursos
Minimizar: para hallar una solución óptima. Entonces esta clase de pro-

U (vi )−1
  blemas no se resuelven de manera óptima ya que, a medida
m
X

X
C(Fi (j), Fi (j + 1)) + C(p0 , Fi (1)) + C(Fi (U (vi )), p0 )
que n va siendo más grande, esto puede llegar a ser imposi-
i=1 j=1 ble. De esta manera algunos de los problemas combinatorios
3.3 Otras Variaciones
3.3.1 VRP con múltiples depósitos (MDVRP)
En este problema existen varios depósitos y cada cliente está
asignado a uno éstos, teniendo cada depósito una flota de
vehı́culos disponibles, los vehı́culos deben partir del respec-
tivo depósito visitando clientes asociados a éste y llegando
de nuevo al mismo depósito.

Figura 2: VRP Básico


3.3.2 VRP con entregas y devoluciones (VRPPD)
El VRPPD consiste en que determinados clientes pueden no
tener una demanda definida sino que en lugar de eso tienen
son solucionados con heurı́sticas las cuales dan una buena algún tipo de cantidad de mercancı́a para devolución. En el
solución subóptima con un consumo moderado de recursos. caso de transporte de personas se puede plantear de manera
En la siguiente sección se mostrarán las técnicas más usadas que hay puntos en los que se recogen personas y hay puntos
en la actualidad para solucionar el VRP. en los que se dejan personas. De esta manera la demanda
asociada a cada punto podrı́a ser positiva o negativa.

3. VARIACIONES DEL VRP 3.3.3 VRP periódico (PVRP)


Las variaciones más comunes del VRP son el VRP con ca-
En esta variación del VRP los vehı́culos no deben visitar to-
pacidades (CVRP) y el VRP con ventanas de tiempo (VR-
dos los clientes el mismo dı́a por lo que los vehı́culos pueden
PTW), para las cuales se hará el planteamiento matemático
visitar solo algunos de los clientes asignados y luego regresar
en esta sección. También se hará una breve descripción de
al depósito para visitar los demás clientes otro dı́a. En este
algunas de las otras variaciones que presenta el VRP. Hay
problema se tiene en cuenta que se debe asignar un dı́a para
que tener en cuenta que para plantear determinado pro-
visitar determinado cliente.
blema podrı́a ser necesario extender el VRP a alguna va-
riación no estudiada en el pasado tal como lo hacen en [27].
4. TÉCNICAS DE SOLUCIÓN
Las técnicas en las que se enfatizará este artı́culo son técnicas
3.1 CVRP metaheurı́sticas usadas en general para toda clase de proble-
Este problema consiste en un VRP con la cualidad de que mas combinatorios, siendo éstas las técnicas más usadas en
cada uno de los vehı́culos de la flota tiene la misma capaci- la actualidad para solucionar VRPs ya que son las que per-
dad. Esto quiere decir que se tendrá en cuenta la restricción miten obtener mejores resultados. En [9] se presenta un
(3) planteada en 2.1 y se tendrá en cuenta que: estado del arte en metaheurı́sticas en optimización combi-
Q(vi ) = Q(vj ) para todo i, j = 1, 2, .., m natoria, en donde se estudian las técnicas desarrolladas en
este artı́culo, de la misma manera se hace en [7] en donde
se introduce el aspecto estocástico en la optimización com-
3.2 VRPTW binatoria.
El VRPTW consiste en que cada cliente tiene asociado un
intervalo de tiempo en el cual puede ser visitado. Para lo La mayorı́a de estas técnicas se basan en procesos donde
cual se define la hora más temprana en la que puede ser una solución factible inicial es requerida, esta solución ini-
atendido cada cliente mediante la función EH: cial en el caso de la técnica de algoritmos genéticos puede ser
aleatoria, pero en otras de las técnicas se requiere que esta
EH : P → R+ solución sea estructurada, existen diversos métodos para es-
y la hora más tardı́a en la que puede ser atendido cada tablecer estas soluciones en el caso del VRP, entre éstas se
cliente mediante LH: encuentra el algoritmo de Greedy para el caso del TSP, que
consiste en ordenar de menor a mayor las distancias entre to-
LH : P → R+ dos los nodos e ir asignándolas o rechazándolas en ese orden
siempre y cuando se cumplan los criterios de la ruta.
Teniendo en cuenta también una hora de partida para cada
vehı́culo representada por la función HV : En el gráfico mostrado en la Figura 3 se muestra una clasi-
+ ficación de las técnicas que se estudiarán en este artı́culo. Y
HV : V → R
Entonces, para el VRPTW se tiene en cuenta la restricción
(4) mostrada en 2.1 junto con las siguientes restricciones:
k−1
X
Fi (k) = pj ⇔ HV (vi )+T (p0 , Fi (1)) T (Fi (z), Fi (z+1)) > EH(pj )
z=1

k−1
X
Fi (k) = pj ⇔ HV (vi )+T (p0 , Fi (1)) T (Fi (z), Fi (z+1)) < LH(pj )
z=1

para todo k = 1, 2, .., U (i) , i = 1, 2, .., m , j = 1, 2, .., n Figura 3: Clasificación Técnicas de Solución al VRP
en la Figura 4 se hace un planteamiento cronológico, mos-
trando el año en el que fue planteada la técnica para proble-
mas de optimización combinatoria en general, contrastando
con el año en que la técnica fue implementada para resolver
VRPs.

Figura 5: Solución Factible Inicial TSP

En la Figura 6 se muestra el árbol del ejemplo planteado


anteriormente en donde los cuadros grises muestran como
queda el árbol después de fabricarlo cortando las ramas en
donde la distancia superaba el valor de 99,92. Se nota que

Figura 4: Cronológico Técnicas de Solución al VRP

En la primera parte de ésta sección se describirán breve-


mente algunas de las técnicas usadas en el pasado para so-
lucionar el VRP. Enseguida se mostrará en que consiste cada
una de estas técnicas metaheurı́sticas y como se aplican al
VRP, nombrando algunos trabajos y avances realizados.

4.1 Técnicas Clásicas


4.1.1 Branch and Bound y Branch and Cut
Branch and Bound Figura 6: Branch and Bound TSP
La técnica de Branch and Bound consiste en ir construyendo
un árbol con todas las posibles soluciones pero en el mo- en este ejemplo con un n bastante pequeño tan solo se corta-
mento que una rama ya no sea la mejor, se deja de construir ron dos ramas casi al final de éstas. Ahorrando en realidad
el árbol por esa rama, para ahorrar recursos computacio- muy pocos recursos, teniendo en cuenta también que se uti-
nales, de esta manera se puede llegar a la solución óptima lizaron recursos para hallar la solución factible inicial. Para
sin necesidad de explorar todas y cada una de las posibles tamaños más grandes de n con esta técnica se obtiene el
soluciones. resultado óptimo con un uso menor de recursos que el nece-
sitado para explorar todas y cada una de las soluciones. Sin
Para el caso del VRP se debe tener una solución factible embargo esta técnica no es muy utilizada ya que aún sigue
inicial con una distancia total recorrida asociada y ası́ reali- gastando bastantes recursos y tiene limitaciones en cuanto
zar el árbol cortando las ramas que superen esta distancia. al tamaño de n.
Supóngase un caso del TSP en el cual hay 5 puntos y la
matriz de costos asociada es la siguiente: Branch and Cut
Branch and Cut es una técnica derivada de Branch and
0 1 2 3 4 Bound en donde se tratan los problemas combinatorios sin
0 0,00 8,67 17,19 32,25 15,15 tener en cuenta la restricción de soluciones enteras, esto lo
1 8,67 0,00 13,74 25,62 17,55 hace mediante el método simplex tradicional. Cuando una
2 17,19 13,74 0,00 35,81 30,81 solución óptima es encontrada, se utiliza un algoritmo de
plano de corte para encontrar restricciones que satisfagan
3 32,25 25,62 35,81 0,00 26,19
los puntos enteros factibles que fueron violados en la so-
4 15,15 17,55 30,81 26,19 0,00
lución que fue hallada sin tener en cuenta las restricciones de
variables enteras. Si se hallan desigualdades, éstas son agre-
En donde se establece una solución factible inicial como la gadas al problema de programación lineal esperando que la
mostrada en la Figura 5. Con una distancia total asociada solución sea menos decimal (más cercana a valores enteros).
de 99,92. Y como se observa, una solución: De esta manera se repite el proceso hasta que se encuentre
una solución con valores enteros o hasta que no se encuentren
F1 = {1 7→ p4 , 2 7→ p3 , 3 7→ p2 , 4 7→ p1 } más planos de corte. En [8] se utiliza este método para tra-
tar problemas de TSP y CVRP, aquı́ se estudian tres clases
de desigualdades (nombradas anteriormente) que permitan
un mejor desarrollo del algoritmo. En [1] los autores plan- 4. k = k + 1
tean la técnica para resolver el VRP en donde se encuentra
5. Para el k-ésimo δij ordenado determinar si existen dos
un diagrama de flujo donde se describe el proceso a seguir
rutas Fq y Fp tal que Fp (1) = pi y Fq (U (vq )) = pj . Si
para aplicar la técnica.
existen unirlas en una.
Si bien las técnicas de Branch and Bound y Branch and Cut 6. Si k = ((n2 − n)/2) finalizar, de lo contrario pasar a 4.
no son muy utilizadas en la actualidad, en estudios pasa-
dos se hicieron publicaciones bien fundamentadas en donde
Y en el algoritmo secuencial se siguen los siguientes pasos:
aplican estas técnicas para la resolución del VRP que pue-
den llegar a servir para desarrollos futuros. En [38] se es-
tudian estas dos técnicas (junto con otras), mediante tres 1. Aplicar Algoritmo 3
problemas clásicos de optimización combinatoria entre los
que se encuentra el TSP. En [29] se trata el VRP con las 2. Ordenar en orden Descendente cada δij
dos técnicas, en donde se muestra la aplicación en general a 3. Escoger una ruta Fq que no haya sido escogida. Si no
problemas combinatorios y después se describe un ”solver” existe, terminar el proceso.
para el VRP usando la librerı́a SYMPHONY que es usada
4. Determinar cual es el primer δij ordenado con el cual
para implementar algoritmos en paralelo.
exista otra ruta Fp tal que Fp (1) = pi y Fq (U (vq )) = pj
o tal que Fp (U (vp )) = pi y Fq (1) = pj . Si existe, unir
4.1.2 Heurı́sticas especı́ficas para el VRP las rutas y repetir este paso, de lo contrario ir al paso
Con el actual desarrollo de las metaheurı́sticas, los prime- 4.
ros métodos heurı́sticos, que se desarrollaron para resolver
el VRP, han quedado atrás en cuanto a procesos de investi-
gación para el mejoramiento de éstos. Sin embargo el hecho La aplicación de este algoritmo busca minimizar la distan-
de que sean heurı́sticas orientadas exclusivamente a resolver cia recorrida para satisfacer la demanda y al mismo tiempo
el VRP hace que sean usadas en algunas situaciones de la busca minimizar el número de vehı́culos usados. En esta
vida real. Este hecho también hace que sean combinadas técnica no se han hecho muchos nuevos desarrollos, sin em-
junto con otras técnicas modernas, tal y lo hacen en [3], en bargo puede llegar a ser usada en aplicaciones de la vida real
donde utilizan bases de los algoritmos de barrido junto con obteniendo resultados rápidos y prácticos.
Algoritmos Genéticos para tratar el VRP. A continuación se
hará una breve descripción de algunas de estas heurı́sticas. Algoritmos de Dos Fases
Los algoritmos de dos fases consisten en, agrupar los clientes
Algoritmo de Ahorro de Clarke and Wright por zonas adecuadamente escogidas que van a ser atendidas
Esta técnica es usada cuando el número de vehı́culos m es cada una por un vehı́culo, y luego aplicar algún otro pro-
variable. Cuando las rutas de dos vehı́culos F1 y F2 se pue- cedimiento para resolver cada zona por separado fijando la
den unir de manera factible en una sola ruta Fk : ruta de cada vehı́culo. Dentro de los algoritmos de dos fases
se encuentran los siguientes:
Fk (i) = F1 (i) para todo i = 1, 2, .., U (v1 )
y Fk (i + (U (v2 )) = F1 (i) para todo i = 1, 2, .., U (v2 ) Algoritmo de Barrido
Fue desarrollado por los Autores Gillett and Miller [20].Esta
se establece una distancia de ahorro δij :
clase de algoritmos son muy comunes y aún son muy usados
δij = C(F1 (U (v1 )), p0 ) + C(p0 , F2 (1)) − C(F1 (U (v1 ), F2 (1)) incluso en combinación con otras técnicas modernas, el pro-
ceso en un algoritmo de barrido consiste crear las zonas me-
Teniendo en cuenta esto, se pueden aplicar dos tipos de al-
diante rayos que tienen como centro el depósito y donde los
goritmos, el secuencial y el paralelo, en ambos algoritmos el
ángulos que hay entre éstos, definen las zonas. Por ejemplo
primer paso es el proceso mostrado en el Algoritmo 3.
se pueden definir cuatro zonas con rayos que tengan ángulos
entre sı́ de 40o , 100o , 150o y 70o respectivamente, de esta
Algoritmo 1 Paso 1 Clarke and Wright manera se puede definir un proceso como el siguiente para
for i = 1 to n − 1 do crear las zonas:
for j = i + 1 to n do
δij = C(F1 (U (v1 )), p0 ) + C(p0 , F2 (1)) − C(F1 (U (v1 ), F2 (v1 ))
1. Fijar el rayo con ángulo 0o
end for
end for 2. Escoger un vehı́culo k no usado
for k = 1 to n do
3. Crear otro rayo aumentando el ángulo y a medida que
Fk (1) = k
la zona vaya abarcando clientes verificar si se cumplen
end for
las restricciones (3) y (4) de tiempo y capacidad para
cada vehı́culo, cuando el ángulo no se pueda aumentar
El algoritmo paralelo consiste en lo siguiente: debido a esto, asignar los clientes de la zona al vehı́culo
k escogido. Si faltan clientes por atender ir al paso 2.

1. Aplicar Algoritmo 3 4. Optimizar cada zona por separado resolviendo TSP


para cada vehı́culo.
2. Ordenar en orden Descendente cada δij
3. k = 0
Algoritmo de Pétalo
Este es un algoritmo derivado del Algoritmo de Barrido,
en el cual se generan varias rutas denominadas pétalos (Ver
[32]) y después se hace una selección final planteando el pro-
blema de la siguiente manera:

Minimizar:
X
dk Xk
k∈S

Sujeto a:
X
aik Xk = 1 para i = 1, 2, ..., n
k∈S

donde S es el grupo de rutas, Xk es la variable binaria que


define si la ruta k pertenece al conjunto solución, aik es la
variable binaria que define si el punto i pertenece a la ruta Figura 7: Algoritmo Genético Básico
k y dk es el costo del pétalo k.

En [31] se presenta una nueva heurı́stica basada en métodos La representación de los individuos (soluciones) se hace me-
de barrido para solucionar un VRP, los autores trabajan diante cadenas de genes llamadas cromosomas en donde se
también el concepto de pétalos, para la generación de las define claramente la solución, un aspecto muy importante
zonas. en algoritmos genéticos es definir como se van a representar
las soluciones en estos cromosomas ya que esto es lo que va
4.2 Computación Evolutiva a permitir un proceso de evaluación mas sencillo y también
La computación evolutiva es una rama de la inteligencia ar- permitirá conseguir mejores resultados. A continuación se
tificial que se usa principalmente para resolver problemas describen brevemente cada uno de los pasos mostrados en
de optimización. Esta técnica está basada en la evolución la Figura 7, sin embargo éstos solo son ciertas nociones li-
de los seres vivos. Ası́ como en la evolución las especies se mitadas, para un mejor entendimiento es necesario referirse
crean, se dan unas soluciones factibles iniciales. De igual a un texto guı́a en algoritmos genéticos tal como [30] o [22],
manera como en la evolución, los individuos se tienen que o a fuentes en donde el tema sea tratado junto con otros
adaptar a un ambiente cambiante y solo sobreviven los me- métodos de optimización tal como lo hacen en [21], en donde
jores o los que evolucionan para reproducirse y seguir con los algoritmos genéticos son estudiados como una gran parte
el ciclo de vida, en la computación se escogen las mejores de las metaheurı́sticas.
soluciones y se mezclan de manera que se tomen las bue-
nas caracterı́sticas de cada una (de igual manera que en la Población Inicial: En este paso se crean un número deter-
evolución la reproducción mantiene el código genético de los minado de individuos aleatoriamente o también se pueden
padres), de manera que se crean posibles mejores solucio- crear de una manera estructurada con la que se va a obtener
nes. En [33] se presenta una visión general en computación una mejor población inicial. En muchos de los problemas en
evolutiva. los que se usan algoritmos genéticos se usa un tamaño de po-
blación de 100 individuos, sin embargo esta cantidad puede
En la computación evolutiva existen tres técnicas que se ser diferente.
basan en lo anterior pero que son independientes entre sı́:
Evaluación de los Individuos: Aquı́ es donde se mide
el Fitness que es lo que representa que tan buenos son los
• Algoritmos Genéticos individuos que hay en la población. En este paso es impor-
• Programación Evolutiva tante que la función de evaluación tenga en cuenta todos los
aspectos que harı́an bueno o malo a un individuo.
• Estrategias Evolutivas
Selección de Padres: En el proceso reproductivo de cierta
población generalmente los mejores individuos son los que se
Para dar solución al VRP la técnica más usada son los Al- cruzan, para esta parte del algoritmo genético existen diver-
goritmos Genéticos, que será la técnica en la que se hará sas técnicas para seleccionar los padres, entre las que están:
énfasis en esta sección el método elitista, en el cual se escogen los mejores indivi-
duos; el método de ruleta, en donde los mejores individuos
4.2.1 Algoritmos Genéticos tienen una mayor probabilidad de ser escogidos; y muchas
El proceso de un algoritmo genético básico es el que se mues- más técnicas que permiten tener un mejor comportamiento
tra en la Figura 7. El proceso en el que cada vez que se ite- del modelo teniendo en cuenta el problema a solucionar.
ran los pasos: Evaluación - Selección - Operadores Genéticos
es llamado una generación y se itera creando nuevas gene- Operadores Genéticos: Después del proceso de selección,
raciones hasta que el criterio de terminación es cumplido. se aplican generalmente dos operadores genéticos los cuales
son: cruce y mutación. El cruce nos va a permitir crear Algoritmo 2 Mutación
posibles mejores nuevos individuos que sean producto de i = random[1, n]
los buenos padres seleccionados en el paso anterior, se de- j = random[1, n]
fine una probabilidad de cruce para establecer si en cierta aux = F1 (i)
generación se realiza el cruce. La mutación es aplicada ge- F1 (i) = F1 (j)
neralmente a cada individuo después del cruce, también se F1 (j) = aux
define una probabilidad de mutación.

Criterio de Terminación: El criterio de terminación ge- Para una mutación en el Hijo 1 en el segundo y quinto gen
neralmente es un número dado de iteraciones (generaciones), del cromosoma se obtiene los siguiente:
o en algunos casos cierto valor de Fitness que alcance algún
individuo.
Hijo 1 sin mutuación: 1 4 6 8 7 5 2 3
4.2.2 Algoritmos Genéticos y VRP Hijo 1 con mutuación: 1 7 6 8 4 5 2 3
En el VRP una de las representaciones más utilizada es en
la que el cromosoma está definido por los clientes y el orden
en el que van a ser visitados, es decir el cromosoma será Existen otros tipos de operadores que se usan en esta clase
equivalente a F1 para un único vehı́culo en el caso especı́fico de problemas, uno de éstos es el de inversión que consiste en
TSP del VRP. Con n = 8 (Planteándolo como un VRP, ya cambiar el orden de una parte escogida al azar del cromo-
que en realidad serı́a un TSP con n = 9) se tiene la siguiente soma (Ver Algoritmo 2).
representación:
Algoritmo 3 Inversión
4 1 6 8 2 3 5 7 a = random[1, n]
b = random[1, n]
if a > b then
en donde el cliente 4 es el primero en ser visitado, el cliente 1
es el segundo y ası́ sucesivamente, notando que no puede ha- aux = a
ber clientes repetidos en el cromosoma. Con esta represen- a=b
tación la medición del Fitness simplemente podrı́a consistir b = aux
en calcular el negativo del costo de recorrer la distancia total end if
asociada a cada individuo, que para el caso anterior serı́a: for i = a to a + (int((b − a + 1)/2) − 1) do
F itness = −(C(p0 , p4 ) + C(p4 , p1 ) + C(p1 , p6 ) + C(p6 , p8 ) aux = F1 (i)
+C(p8 , p2 ) + C(p2 , p3 ) + C(p3 , p5 ) + C(p5 , p7 ) + C(p7 , p0 )) F1 (i) = F1 (a + b − i)
F1 (a + b − i)) = aux
teniendo mayor Fitness un menor costo asociado. Se pueden end for
realizar cruce y mutación de la siguiente manera:

Padre 1: 1 4 6 8 2 3 5 7 El único criterio de terminación en este planteamiento es el


Padre 2: 7 5 2 4 3 6 1 8 número de generaciones que se desarrollarán, ya que no se
sabe que nivel de Fitness es lo suficientemente bueno como
para detener el proceso. Teniendo la misma idea de que
El cruce que se realiza para TSP y VRP es un cruce ordenado
un gen representa un cliente visitado, se puede adaptar este
ya que no se pueden repetir valores en el cromosoma según
planteamiento para el VRP en general. En [28] se trabaja
lo indica la restricción (1). En [22] se describe este tipo
de esta manera definiendo que cierta parte del cromosoma
de cruce. De esta manera para los individuos anteriores
corresponde a determinado vehı́culo y de igual manera el
realizando un cruce con punto de cruce en el cuarto gen, se
orden en que se encuentran los genes para cada vehı́culo es
procede de la siguiente manera: Para el Hijo 1 se dejan los
el orden en que los clientes van a ser visitados.
primeros cuatro genes del Padre 1 y los demás espacios del
cromosoma se llenan tomando en orden todos los valores de
Esta no es la única forma de representación para esta clase
los genes del cromosoma del Padre 2 mientras no se repitan:
de problemas. Otra forma muy utilizada y que obtiene muy
buenos resultados sobre todo para el VRP, es en la cual
Hijo 1: 1 4 6 8 7 5 2 3 cada gen representa el vehı́culo que va a ser asignado a cada
Padre 2: 7 5 2 4 3 6 1 8 cliente:

De igual manera para el Hijo 2: 2 2 3 1 1 3 3 1

Hijo 2: 7 5 2 4 1 6 8 3
en donde el vehı́culo 1 visitarı́a los clientes 4, 5 y 8; el
Padre 1: 1 4 6 8 2 3 5 7
vehı́culo 2 los clientes 1 y 2 y el vehı́culo 4 clientes 3, 6
y 7. El inconveniente en este tipo de representación es sa-
El operador de mutación consiste en intercambiar un par de ber en que orden serán recorridos los clientes asignados a
genes en el individuo, estos genes son escogidos aleatoria- cada vehı́culo, en [3] proponen resolver el TSP para cada
mente (Ver Algoritmo 1). vehı́culo, teniendo en cuenta los clientes asignados.
En [12] se hace una comparación entre tres clases de repre-
sentaciones para el TSP múltiple que consiste en un TSP
con varios agentes viajeros; aquı́ se tratan representaciones
basadas en las dos nombradas anteriormente. La primera
representación al igual que en [28] consiste en conformar el
cromosoma por los clientes y el orden en que van a ser visita-
dos, dividiendo el cromosoma en partes que le corresponden
a cada vehı́culo. La segunda representación consiste en que
cada gen representa el vehı́culo que va a ser asignado a cada
cliente y el orden está dado por otra parte del cromosoma
que indica el orden de las ciudades. Finalmente los autores
proponen una representación con la que se van a obtener
mejores resultados, en la cual la primera parte del cromo-
soma va a ser igual que en la primera representación y una
segunda parte del cromosoma indicará cuantos clientes van
a ser asignados a cada vehı́culo, obteniendo de esta manera
las rutas asociadas a cada vehı́culo.
Figura 8: Colonia de Hormigas
Como se puede notar hay diversas formas de representación
y pueden haber muchas más, en [13] los cromosomas están
representados por puntajes dados a cada cliente, de esta mización combinatoria. A continuación se mostrará como
manera el cliente con menor puntuación va a ser el primero es posible plantear el VRP con esta metodologı́a.
en ser recorrido, y el operador de cruce no va a tener que ser
ordenado, ya que si se llegan a repetir puntajes, éstos serán
removidos aleatoriamente.
4.3.2 ACO y VRP
En la implementación de la ACO al VRP cada vehı́culo
va a ser representado por una hormiga que va partir del
4.3 Colonia de Hormigas depósito y va a ir visitando clientes hasta que su capacidad
4.3.1 Generalidades de la técnica esté completa o hasta que no haya más clientes por visitar.
La Optimización Colonia de Hormigas (ACO), es un método Las hormigas (vehı́culos) van a realizar el procedimiento una
de optimización que está basado en el comportamiento de después de otra hasta que todos los clientes hayan sido visi-
las hormigas en cuanto a la forma en que éstas buscan su tados. La probabilidad de que Fk (q) = pi y Fk (q + 1) = pj
alimento. Es un hecho que las hormigas encuentran los ca- para cierto vehı́culo vk va a estar dada por la siguiente for-
minos más cortos entre el hormiguero y las fuentes de ali- mula:
mento aunque no puedan utilizar la visión como una forma
(τpi pj )(ηpi pj )β
para hacerlo debido a su casi completa falta de este sentido. Pp i pj = P (3)
β
Las hormigas empiezan a buscar su alimento moviéndose / k (τpi pu )(ηpi pu )
pu ∈M
aleatoriamente y en este proceso van expulsando una sus- si pj ∈
/ Mk , 0 en otro caso
tancia llamada feromona la cual puede ser muy susceptible
de olor para las otras hormigas, de esta manera las hormi- en donde τpi pj es la cantidad de feromona en el arco que une
gas que encuentren primero el alimento van a regresar más al punto pi con el punto pj , ηpi pj es el inverso de la distancia
rápido al hormiguero y van a dejar en el camino una concen- que hay entre el punto pi y el punto pj , el parámetro β indica
tración mayor de feromona la cual va a ser seguida por las la importancia que se le da a la distancia S entre los puntos
demás hormigas dejando la búsqueda aleatoria, de esta ma- con respecto al nivel de feromona y Mk = m i=1 ran(Fi )
nera todas las hormigas empiezan a seguir el mejor camino
hacia la fuente de alimentación. En la Figura 8 se muestra Un aspecto tenido en cuenta en ACO es el hecho de que
un esquema de lo mencionado anteriormente, en donde las el nivel de feromona se va evaporando, ya que una ruta se
hormigas van siguiendo el camino con mayor nivel de fero- puede volver muy predominante haciendo caer la solución a
monas, hasta que el camino más largo deja de ser tomado. óptimos locales, para la actualización del nivel de feromona
De esta manera para la implementación de un modelo de se maneja la siguiente relación:
optimización basado en lo anterior, se crea un modelo artifi- τ p i pj = (1 − α)τpi pj + (α)τ0 (3)
cial de colonia de hormigas en donde se definen parámetros
tales como niveles de feromona, tendencia de las hormigas a en donde α es un parámetro que controla la velocidad de
seguir a un nodo más cercano o a un nodo donde la arista evaporación de la feromona y τ0 es el nivel de feromona
tiene un mayor nivel de feromona, entre otros. Para una inicial para todos los arcos.
comprensión más detallada de los modelos de colonias de
hormigas en [18], [17] y [16] se dan buenas bases del método De esta manera se pueden diseñar algoritmos definiendo
de ACO y sus diferentes enfoques. parámetros tales como número de iteraciones y nivel de fe-
romona inicial, entre otros, que permitan obtener una buena
En general la ACO es utilizada para resolver problemas de solución para los diferentes tipos de VRPs. En [6] se nota
cubrimiento de nodos y hallar distancias más cortas, es por la similitud (en cuanto a resultados) que esta técnica tiene
eso que esta metaheurı́stica es muy apropiada para tratar con respecto a las otras técnicas estudiadas en este artı́culo.
el VRP. En [7] al igual que en [9] la ACO es tratada como Los autores diseñan experimentos y muestran la significan-
una de las principales metaheurı́sticas en procesos de opti- cia que los resultados de éstos tienen en la solución de VRPs,
mostrando que para pequeños tamaños de VRP los resulta-
dos están difiriendo entre el 1% con respecto a una solución
óptima conocida.

En [27] se implementa ACO para solucionar VRPs en los


que se tienen un nuevo aspecto que se basa en el dinamismo
que se presenta en las situaciones de la vida real. El VRP la
mayorı́a de veces es tratado con un enfoque estático, aquı́,
a medida que se describe este enfoque estático se van incor-
porando los cambios para plantearlo de manera dinámica.
La dinámica consiste en que nuevas órdenes van saliendo a
lo largo de la jornada de trabajo que ya está planeada y la
esta jornada se modifica de acuerdo a estos cambios.

4.4 Búsqueda Tabú


4.4.1 Generalidades de Búsqueda Tabú
La Búsqueda Tabú es una técnica iterativa de búsqueda local
que trata de evitar que las soluciones caigan en óptimos
locales. Para esto utiliza unas estructuras de memoria de
Figura 9: Búsqueda Tabú
corto y largo plazo. En esta técnica en una iteración se
pretende pasar de una solución a la mejor solución vecina
sin importar si ésta es mejor o peor que la solución actual. El 4.4.2 Búsqueda Tabú y VRP
criterio de terminación al igual que en Algoritmos Genéticos
Para la selección de la vecindad se utilizan estrategias que se
puede ser un cierto número máximo de iteraciones o una
pueden comparar con los operadores genéticos en la técnica
valor de la función a optimizar.
de Algoritmos Genéticos, la vecindad de una solución puede
estar dada por la aplicación de cualquiera de los operadores
El uso de las memorias consiste en almacenar en una lista
genéticos usados en VRP (Ver Algoritmos 1 y 2 en la sección
tabú soluciones que ya han sido visitadas o almacenar atri-
4.2.2) excepto el de cruce, ya que en Búsqueda Tabú no se
butos de soluciones ya exploradas. De esta manera la so-
manejan individuos.
lución actual va a pasar o no a otra solución dependiendo
de los datos almacenados en la memoria. La memoria puede
De esta manera se deben fijar criterios orientados a solu-
ser explı́cita o atributiva, la memoria explı́cita guarda los da-
cionar el VRP de una manera adecuada, usando métodos
tos de la solución en su totalidad, la atributiva guarda los
buenos y rápidos para generar una solución inicial, mane-
aspectos que son representativos de la solución. Esta lista
jando la vecindad de una forma apropiada al igual que el
tabú puede ser variable dentro de las iteraciones. Las memo-
uso de las memorias, entre otros.
rias se pueden clasificar en memorias de corto y largo plazo.
La memoria de corto plazo consiste en almacenar los últimos
En [11] se presenta un estado del arte de la aplicación de
movimientos realizados, lo cual permite hacer una mejor ex-
búsqueda tabú para resolver el VRPTW mediante la com-
plotación de la zona en la que se está buscando. La memoria
paración de los diferentes avances realizados por diversos
de largo plazo consiste en guardar los atributos de un con-
autores y se concluye la importancia de esta técnica para la
junto de soluciones para identificar regiones de búsqueda, y
resolución de esta clase de problemas.
asi generar una mejor exploración. Existen unos niveles de
aspiración que consisten en suavizar la prohibición de pasar
En [25] se plantea un VRPTW y se agrega una nueva va-
a una solución que este en la lista tabú, de esta manera se
riación que consiste en un número limitado de vehı́culos y se
evita que por ejemplo el uso de la memoria atributiva lleve
nota que bajo esta nueva restricción deben quedar clientes no
a un proceso cı́clico.
visitados y/o ventanas de tiempo relajadas. Se muestra una
aproximación propia de búsqueda tabú y mediante resulta-
Teniendo en cuenta lo anterior se puede generar un algoritmo
dos computacionales se demuestra que el modelo también da
teniendo en cuenta el siguiente proceso básico mostrado en
buenos resultados para el VRPTW sin la nueva variación.
la Figura 9,
En [4] los autores plantean un nuevo algoritmo de búsqueda
en donde se deben fijar varios aspectos tales como: forma
tabú para resolver un problema de ruteo de una empresa
de seleccionar la solución inicial y de seleccionar el entorno,
especı́fica. Uno de los resultados importantes que se dan
el tamaño de la lista tabú y los criterios que deben ser al-
en el estudio es el hecho de que éste brinde de una manera
macenados en ésta, entre otros. En [9] se estudia esta me-
eficiente y rápida soluciones a un problema de una empresa
taheurı́stica como una de las técnicas más usadas al igual
en donde se tiene que realizar el procedimiento varias veces
que en [7] en donde se agrega el aspecto estocástico. En
por semana.
[24] la técnica de búsqueda tabú es tratada como una de las
técnicas modernas en esta clase de optimización y es compa-
rada con otras técnicas clásicas aplicadas al VRP, los autores
muestran la importancia que esta clase de metaheurı́stica va
teniendo a medida que se quieren solucionar más amplios te-
niendo todos los aspectos de la vida real.
4.5 Recocido Simulado tura final, y con seguimiento básico del proceso se cons-
truyen diferentes algoritmos y metodologı́as para solucionar
4.5.1 Generalidades de la técnica diferentes clases de problemas.
Esta técnica esta basada en el proceso fı́sico de tratamiento
térmico de los metales denominado recocido, en donde un
La utilización de esta técnica tiene como objetivo explorar
metal es llevado a altas temperaturas alcanzando altos ni-
ampliamente las regiones de búsqueda en el comienzo del
veles energéticos llegando al punto de fusión y luego es en-
proceso iterativo y a medida que este va transcurriendo pre-
friado gradualmente, en un proceso por fases en donde el
tende favorecer la explotación en estas regiones. Para un
sólido puede alcanzar el equilibrio térmico para cada fase,
entendimiento más profundo de esta técnica es recomenda-
hasta volver de nuevo al estado sólido obteniendo un estado
ble referirse a un libro de texto tal como [21].
de energı́a mı́nimo que es definido previamente. De esta
manera se puede construir el modelo de optimización com-
Esta técnica al igual que las anteriores es considerada una
parando las posibles soluciones con los estados del sistema
de las principales metaheurı́sticas usadas en problemas de
fı́sico y el costo de la solución con la energı́a del estado,
optimización combinatoria. En [14] es estudiada como una
teniendo en cuenta que el proceso de recocido debe tener
de las principales heurı́sticas usadas para resolver proble-
una configuración en el recocido simulado se debe tener una
mas combinatorios, al igual que las anteriores técnicas en
solución factible; la solución óptima en el problema de opti-
[9] y en [7], esta técnica se considera una de las principales
mización está relacionada con la configuración que se debe
metaheurı́sticas modernas en optimización combinatoria.
tener para alcanzar el mı́nimo de energı́a nombrado ante-
riormente, y finalmente el manejo de la temperatura en el
proceso de recocido se compara con un parámetro dado en 4.5.2 Recocido Simulado y VRP
el modelo de optimización. Para la aplicación de la técnica al VRP es importante esta-
blecer de que manera va a ser perturbada la solución, para
El proceso de recocido simulado al igual que el de otras esto se pueden utilizar métodos como los usados en Algo-
metaheurı́sticas es iterativo y cada iteración corresponde a ritmos Genéticos para hacer mutación y en Búsqueda Tabú
una fase de enfriamiento, en cada iteración se realiza una para la escogencia de la vecindad (Ver Algoritmos 1 y 2 en
perturbación de la solución, el reemplazo que produce esta la sección 4.2.2.
perturbación se hará si es mejor que la solución actual o si
cumple cierta regla de aceptación que es probabilı́stica y está En [36] se emplea esta técnica para resolver un VRP en
en función de la temperatura. En la Figura 10 se muestra donde la función a minimizar es independiente de la dis-
el proceso básico que se sigue en un algoritmo de recocido tancia y tan solo depende de la capacidad y del tipo de
simulado. vehı́culos disponibles. En [37] se trabaja un CVRP en el
cual la demanda de un cliente puede ser satisfecha por va-
rios vehı́culos, por lo cual un cliente pude ser visitado varias
veces.

5. APLICACIONES
El VRP es aplicable a cualquier sistema en donde se requie-
ran trasladar objetos de ciertos lugares a otros y se presente
una estructura que consista en una flota de vehı́culos que de-
ben visitar determinados clientes partiendo de un depósito
dado. Dependiendo de la situación presentada en la vida
real el VRP puede tener muchas variaciones como la mos-
tradas en la sección 3, y de esta manera puede ser aplicado
a muchas más situaciones de la vida real.

De acuerdo a esto, la aplicabilidad del VRP depende de la


variabilidad que se le pueda dar a éste, manteniendo la esen-
cia del problema. En el aspecto logı́stico de la mayorı́a de
Figura 10: Recocido Simulado las empresas, el transporte de bienes es uno de los aspectos
más importantes ya que en éste se pueden ahorrar(o des-
perdiciar) una gran cantidad de recursos que pueden ser de
La regla de aceptación consiste en que existe una probabili- gran importancia para las empresas, por lo cual este pro-
dad, de que la solución perturbada se convierta en la actual, blema tiene una gran importancia dentro del proceso de la
y está dada por la siguiente fórmula: cadena de abastecimiento. A continuación se mencionarán

∆(S)
− TC

algunos pocos casos de los muchos existentes, en donde se
p= e (4) requiere planificar y programar ruteo de vehı́culos:
en donde ∆(S) es la diferencia entre la solución perturbada
y la solución actual, T es la temperatura y C es la constante
• Empresas de producción de bienes en donde manejen
de Boltzman.
directamente la logı́stica de transporte.
Con la definición de los diferentes parámetros tales como, • Empresas que se dediquen al transporte de bienes de
temperatura inicial, velocidad de enfriamiento y tempera- empresas productoras.
• Empresas de mensajerı́a. se muestra la aplicación del algoritmo de Búsqueda Local
Genética (GLS) aplicado a VRPs, notando el aporte de la
• Empresas de manejo de desechos.
recombinación de operadores la cual da soluciones de mejor
• Entidades de educación que manejen directamente el calidad y de menor tiempo de ejecución que los métodos tra-
transporte de sus alumnos. dicionales. En [4], en donde se trata la técnica de búsqueda
• Empresas de transporte de personas. tabú aplicada al VRP, se hace una nueva propuesta que ra-
dica en la creación de una nueva forma de generar vecinda-
• Empresas de transporte de valores. rios que considera los patrones de dispersión de los puntos
• Vendedores puerta a puerta. a visitar.

El mejor funcionamiento de las técnicas puede depender del


En [35] en donde se muestran las técnicas metaheurı́sticas grado de intensificación y diversificación que éstas le per-
existentes para resolver una de las variaciones más comunes mitan al algoritmo lo cual permite explorar de una manera
del VRP que es el CVRP, los autores mencionan la impor- adecuada todo el campo de soluciones y a su misma vez ex-
tancia de analizar este problema dentro del ámbito de la plotar determinadas zonas especı́ficas de forma exitosa. En
ingenierı́a de alimentos y la importancia de la logı́stica de [9] los autores dedican una sección completa a estos dos as-
transporte en este contorno, nombrando varias aplicaciones pectos para optimización combinatoria en general. Entonces
especı́ficas del VRP en este campo. la forma de aplicar las técnicas y la definición de parámetros
para permitir una correcta intensificación y diversificación
En [34] se aplica el desarrollo de un algoritmo basado en es un aspecto en donde se debe prestar importante atención
computación evolutiva a una empresa de logı́stica en donde para estudios futuros.
se requieren mover contenedores llenos o vacı́os mediante
el uso de un número limitado de camiones y traileres, y el Aunque en las técnicas clásicas mostradas en este artı́culo no
problema el consiste en encontrar la programación de las se tienden a realizar avances, la combinación de algunas de
rutas minimizando la distancia total recorrida y el número éstas con técnicas modernas permiten dar buenas soluciones,
de camiones utilizados. tal como los algoritmos de barrido que tienden a ser muy
utilizados de esta manera, teniendo en cuenta que algunas
En [4] se implementa un algoritmo de búsqueda tabú para re- metaheurı́sticas consideran tratar el problema en dos fases.
solver un problema de una empresa real ubicada en Turquı́a En [15] se combina la técnica de algoritmos de ahorro con
que se dedica al transporte de electrodomésticos, el pro- ACO y se muestra que los resultados son competitivos con
blema planteado consiste en programar el transporte de los los obtenidos por otras metaheurı́sticas.
bienes, de un depósito central a los diferentes distribuidores.
7. CONCLUSIONES
Si bien el VRP es aplicable a una gran variedad de problemas Se presentó un estado del arte del VRP teniendo en cuenta
de determinación de rutas de transporte, en [5], en donde las técnicas más usadas actualmente, sin enfatizar en las di-
se estudia el caso del TSP múltiple, se muestran aplicacio- ferentes variaciones que presenta el problema, pero teniendo
nes de éste a otros campos totalmente diferentes. Aunque en cuenta que este aspecto está presente. Las técnicas en
el TSP múltiple difiere en varios aspectos del VRP, las in- las que se enfatizó son las metaheurı́sticas más usadas en
vestigaciones que se dirijan a la resolución del VRP pueden la actualidad en problemas de optimización combinatoria y
tener grandes aportes en estas aplicaciones. por lo tanto en VRPs. En el artı́culo no se explican minu-
ciosamente cada una de las técnicas, por lo que no es un
6. PERSPECTIVAS DE DESARROLLO artı́culo para estudiar determinada técnica, pero se da una
En la actualidad las investigaciones que tratan el VRP y los buena idea de cada una de éstas y la forma como se pueden
problemas combinatorios en general, tienden a dirigirse ha- aplicar al VRP.
cia el campo de las metaheurı́sticas, ya que éstas son las que
pueden llegar a dar mejores resultados y en tiempos bastante Se estructuró un buen compendio del VRP indicando los
razonables. Entonces los trabajos tienden hacia el desarrollo últimos avances, permitiendo al lector ubicarse en el tema
de avances que permitan mejorar el funcionamiento de estas de ruteo de vehı́culos.
técnicas y esto es algo que tiene bastante campo de trabajo
ya que en estas metaheurı́sticas se deben definir una gran La nueva formulación del VRP propuesta permitió un en-
cantidad de parámetros para lo cual no hay un método defi- tendimiento más práctico del problema y de las técnicas
nido en el cual se garantice el óptimo funcionamiento de las mostradas. La formulación del problema tradicional solo
técnicas. permitı́a entender el problema pero no se relacionaba con
la aplicación de algunas de las técnicas, por ejemplo, en Al-
En cada una de las metaheurı́sticas tratadas en este artı́culo goritmos Genéticos, la representación de los cromosomas en
la definición de parámetros es un paso muy importante en la mayorı́a de los casos no se relaciona con el manejo de
todo el proceso. Las metodologı́as para encontrar soluciones variables Xij que definen si el arco del punto i al punto j
vecinas para el VRP es el aspecto en donde se centran las es recorrido o no. La nueva formulación permitió relacionar
últimas investigaciones, ya que esto es lo que va a definir el las diferentes variables y condiciones con todas las técnicas
buen funcionamiento de la técnica. Además en Algoritmos estudiadas.
Genéticos la búsqueda de nuevas representaciones es algo im-
portante al igual que la definición de un operador de cruce En muchos de los estudios realizados se hacen comparacio-
adecuado que cumpla con las restricciones del VRP. En [23] nes entre diferentes técnicas o entre avances especı́ficos de
cada técnica, tal como en [35] en donde se comparan los [12] A. E. Carter and C. T. Ragsdale. A new approach to
desempeños computacionales para algunas metaheurı́sticas solving the multiple traveling salesperson problem
existentes para resolver el CVRP, o como en [10] en donde using genetic algorithms. European Journal of
se examinan los enfoques desarrollados de implementación Operational Research, 175(1):246–257, Nov. 2006.
algoritmos genéticos VRPTW. Sin embargo también se con-
cluye que en cuanto a las técnicas más usadas y exitosas [13] S. Chatterjee, C. Carrera, and L. A. Lynch. Genetic
no existe un mejor técnica que supere a la otra o un de- algorithms and traveling salesman problems. European
terminado avance que sea mejor para todos los casos, sino Journal of Operational Research, 93(3):490–510, Sept.
que dependiendo del problema presentado en la vida real 1996.
se debe escoger la técnica más adecuada definiendo los dife- [14] A. Colorni, M. Dorigo, F. Maffioli, V. Maniezzo,
rentes parámetros para resolver el problema de una manera G. Righini, and M. Trubian. Heuristics from nature
apropiada. for hard combinatorial optimization problems.
International Transactions in Operational Research,
8. REFERENCES 3(1):1–21, Jan. 1996.
[1] N. Achuthan, L. Caccetta, and S. Hill. On the vehicle [15] K. Doerner, M. Gronalt, R. F. Hartl, M. Reimann,
routing problem. Nonlinear Anal Theory Methods C. Strauss, and M. Stummer. Savingsants for the
Appl, 30(7):4277–4288, 1997. vehicle routing problem. In Proceedings of the
Applications of Evolutionary Computing on
[2] E. Ahmed and M. Elettreby. On combinatorial EvoWorkshops 2002, pages 11–20, London, UK, 2002.
optimization motivated by biology. Applied Springer-Verlag.
Mathematics and Computation, 172(1):40–48, Jan.
2006. [16] M. Dorigo, M. Birattari, and T. Stützle. Ant colony
optimization. artificial ants as a computational
[3] B. M. Baker and M. A. Ayechew. A genetic algorithm intelligence technique. ieee computational intelligence
for the vehicle routing problem. Computers and magazine, vol. 1, no. 4, pp. 28-39. Technical report,
Operations Research, 30(5):787–800, Apr. 2003. IRIDIA, 2006.

[4] G. Barbarosoglu and D. Ozgur. A tabu search [17] M. Dorigo, G. D. Caro, and L. M. Gambardella. Ant
algorithm for the vehicle routing problem. Computers algorithms for discrete optimization. Artif. Life,
and Operations Research, 26(3):255–270, Mar. 1999. 5(2):137–172, 1999.
[18] M. Dorigo and G. Di Caro. The ant colony
[5] T. Bektas. The multiple traveling salesman problem: optimization meta-heuristic. In D. Corne, M. Dorigo,
an overview of formulations and solution procedures. and F. Glover, editors, New Ideas in Optimization,
Omega, 34(3):209–219, June 2006. pages 11–32. McGraw-Hill, London, 1999.
[6] J. Bell and P. McMullen. Ant colony optimization [19] M. Ehrgott and X. Gandibleux. An annotated
techniques for the vehicle routing problem. Advanced bibliography of multiobjective combinatorial
Engineering Informatics, 18(1):41–48, 2004. optimization. Technical Report 62/2000, Universitat
Kaiserslautern, Kaiserslautern, Germany, 2000.
[7] L. Bianchi, M. Dorigo, L. M. Gambardella, and W. J.
Gutjahr. Metaheuristics in stochastic combinatorial [20] M. L. Gillett, B.E. A heuristic algorithm for the
optimization: a survey. Technical report, Dalle Molle vehicle-dispatch problem. Operations Research,
Institute for Artificial Intelligence, 2006. 22:340–349, 1974.
[21] F. Glover. Handbook of Metaheuristics. Kluwer
[8] U. Blasum and W. Hochstättler. Application of the Academic Publishers, 2002.
branch and cut method to the vehicle routing
problem. Technical report, Zentrum für Angewandte [22] D. E. Goldberg. Genetic Algorithms in Search,
Informatik Köln, 2002. Optimization and Machine Learning. Addison-Wesley
Longman Publishing Co., Inc., Boston, MA, USA,
[9] C. Blum and A. Roli. Metaheuristics in combinatorial 1989.
optimization: Overview and conceptual comparison.
ACM Computing Surveys, 35(3):268–308, 2003. [23] A. Jaszkiewicz and P. Kominek. Genetic local search
with distance preserving recombination operator for a
[10] O. Braysy and M. Gendreau. Genetic algorithms for vehicle routing problem. European Journal of
the vehicle routing problem with time windows. Operational Research, 151(2):352–364, 2003.
Technical report, Internal Report STF42 A01021, [24] G. Laporte, M. Gendreau, J.-Y. Potvin, and F. Semet.
SINTEF Applied Mathematics, Department of Classical and modern heuristics for the vehicle routing
Optimization, Oslo, Norway, 2001. problem. International Transactions in Operational
Research, 7(4-5):285–300, Sept. 2000.
[11] O. Braysy and M. Gendreau. Tabu search heuristics
for the vehicle routing problem with time windows. [25] H. Lau, M. Sim, and K. Teo. Vehicle routing problem
Technical report, Internal Report STF42 A01022, with time windows and a limited number of vehicles.
SINTEF Applied Mathematics, Department of European Journal of Operational Research,
Optimization, Oslo, Norway., 2001. 148(3):559–569, 2003.
[26] E. S. Lawler. Combinatorial Optimization: Networks
and Matroids. Courier Dover Publications, 2001.
[27] R. Montemanni, L. Gambardella, A. Rizzoli, and
A. Donati. Ant colony system for a dynamic vehicle
routing problem. Journal of Combinatorial
Optimization, 10(4):327–343, 2005.
[28] F. B. Pereira, J. Tavares, P. Machado, and E. Costa.
Gvr: a new genetic representation for the vehicle
routing problem. In 13th Irish Conference on Artificial
Intelligence and Cognitive Science (AICS 2002), pages
95–102, 2002.
[29] T. Ralphs. Parallel branch and cut for capacitated
vehicle routing. Parallel Computing, 29(5
SPEC.):607–629, 2003.
[30] C. R. Reeves. Genetic Algorithms - Principles and
Perspectives : A Guide to GA Theory. Kluwer
Academic Publishers, 2002.
[31] J. Renaud and F. F. Boctor. A sweep-based algorithm
for the fleet size and mix vehicle routing problem.
European Journal of Operational Research,
140(3):618–628, Aug. 2002.
[32] D. M. Ryan, C. Hjorring, and F. Glover. Extensions of
the petal method for vehicle routeing. J Oper Res Soc,
44(3):289–296, 1993.
[33] J. E. Smith and A. E. Eiben. Introduction to
Evolutionary Computing. 2003.
[34] K. Tan, Y. Chew, and L. Lee. A hybrid multi-objective
evolutionary algorithm for solving truck and trailer
vehicle routing problems. European Journal of
Operational Research, 172(3):855–885, 2006.
[35] C. Tarantilis, G. Ioannou, and G. Prastacos.
Advanced vehicle routing algorithms for complex
operations management problems. Journal of Food
Engineering, 70(3):455–471, 2005.
[36] R. Tavakkoli, N. Safaei, and Y. Gholipour. A hybrid
simulated annealing for capacitated vehicle routing
problems with the independent route length. Applied
Mathematics and Computation, 176(2):445–454, May
2006.
[37] R. Tavakkoli, N. Safaei, M. Kah, and M. Rabbani. A
new capacitated vehicle routing problem with split
service for minimizing fleet cost by simulated
annealing. Journal of the Franklin Institute, In Press,
Corrected Proof:–, 2005.
[38] P. Toth. Optimization engineering techniques for the
exact solution of np-hard combinatorial optimization
problems. European Journal of Operational Research,
125(2):222–238, Sept. 2000.

También podría gustarte