Resumen: En este trabajo se realiza una revisión bibliográfica del estado del arte del problema de ruteo de vehículos con entregas y recogidas (VRPPD: Vehicle routing problem with pickups and deliveries). Se presenta una clasificación de las diferentes variantes del problema, y de los trabajos e investigaciones realizados sobre el tema según sus autores, los modelos utilizados y los métodos de solución usados. También se analizan las tendencias futuras en modelamiento y técnicas de solución. El VRPPD es un problema del tipo MILP (programación lineal entera mixta) que involucra cantidades enteras y continuas, y que resulta ser NP-Hard en problemas con un número mediano o grande de clientes. En la búsqueda se hace énfasis en las variantes del problema que involucran variables asociadas al medio ambiente, y en particular con la reducción del impacto de gases de efecto invernadero. La revisión observa lo publicado hasta el año 2016.
Palabras clave:Entregas y recogidasEntregas y recogidas, heurísticas heurísticas, metaheurísticas metaheurísticas, modelamiento modelamiento, ruteo de vehículos y técnicas de solución exactas ruteo de vehículos y técnicas de solución exactas.
Abstract: This paper presents a literature review of the state of the art vehicle routing problem with deliveries and collections (VRPPD: Vehicle Routing Problem with pickups and deliveries). Is performed a classification of the different variants of the problem, and the work and conducted research on the subject according to its authors, according to the models and the solution methods used. Also are analyzed future trends in modeling and solution techniques. The VRPPD is a problem of type MILP (Mixed Integer Linear Programming) involving whole and continuous quantities, and that turns out to be NP-Hard problems with a medium or large number of customers. The research does emphasis on variants of the problem involving variables associated with the environment, and in particular reducing the impact of greenhouse gases. The review notes that published until 2016.
Keywords: Deliveries and pickups, heuristics, metaheuristics, modeling, Vehicle Routing Problem and exact solution Methods.
Artículos
Revisión del estado del arte del problema de ruteo de vehículos con recogida y entrega (VRPPD)
Review of state of the art vehicle routing problem with pickup and delivery (VRPPD)
Recepción: 01 Diciembre 2015
Aprobación: 01 Junio 2016
El problema de ruteo de vehículos con recogidas y entregas (VRPPD) es considerado como una extensión del problema clásico de ruteo de vehículos (VRP). El problema VRPSPD fue tratado por primera vez por [1] en 1989, quien reconoce la posibilidad de entregas y recogidas simultáneas en el mismo nodo. El objetivo del problema es encontrar una serie de rutas para un conjunto de vehículos con costo mínimo para suministrar servicio a unos clientes de la manera más adecuada posible, que cumpla la restricción de que los vehículos tengan suficiente capacidad de transporte para los productos (o personas) que deben ser recogidos y/o entregados a cada cliente (nodo). Se debe partir de un depósito y llegar al mismo depósito. Se pretende hallar la solución óptima o soluciones subóptimas de buena calidad. Según [2], este es un problema de optimización combinatorial y la mayoría de sus versiones son de la clase NP- Hard, es decir que la solución no se puede encontrar en tiempo polinomial. Ver [3].
Existe una amplia información en la literatura especializada y una importante evolución del VRPPD y sus variantes, como se observa en [1], [3]-[28] y en el libro escrito por Paolo Toth y Daniele Vigo en 2014.
A lo largo del periodo de revisión (hasta 2016) se encuentran publicaciones con clasificaciones desde diferentes perspectivas: [20] trata el problema de ruteo de vehículos con entregas y recogidas, con ventanas de tiempo y contaminación y lo resuelve aplicando programación lineal entera mixta; [21] trabaja el problema con enrutamiento de petróleo con entregas y recogidas fraccionadas y utiliza el algoritmo de generación de columnas para su solución; [29] presenta como método de solución la programación lineal fraccional; [26] abordó recientemente el problema con restricciones bidimensionales de carga y aplicó para su solución un algoritmo de búsqueda local y heurística de embalaje de dos dimensiones para la generación de estructuras de carga factible.
Este artículo está organizado de la siguiente manera: introducción, metodología, clasificación y estadísticas de las variantes del problema VRPPD y sus métodos de solución, definición del problema, líneas de investigación, conclusiones y tendencias futuras.
En este trabajo se aplicó el procedimiento que se muestra en la figura 1:
Para el paso 1 se consideró una muestra de 58 artículos del VRPD publicados hasta 2016 en las bases de datos internacionales. En dichas fuentes se seleccionaron los estudios y trabajos más relevantes para obtener información específica del estado del arte del problema. Los pasos 2 y 3 se presentan a continuación:
La taxonomía del VRPPD según sus variantes puede tener diferentes enfoques. En un primer enfoque en este trabajo se asume la propuesta de [4], que trata de un esquema basado en tres campos: estructura, visitas y vehículos, como se aprecia en la figura 2:
La estructura tiene tres subgrupos de problemas: muchos a muchos: "many to many", donde cualquier vértice puede utilizarse como fuente o como destino. Un ejemplo de este caso es el problema de intercambio: "Swapping problema"; uno-a muchos-a uno: "one-to-many-to-one", por ejemplo, en la industria embotelladora, la distribución de bebidas y recolección de envases vacíos, y uno a uno: "one to one", donde cada producto se considera una solicitud que proviene de un origen y tiene un destino definido. Esta situación se observa en las operaciones de mensajería y el servicio de transporte puerta a puerta.
En las visitas se presenta información sobre la operación de recogida (P) y entrega (D): PD cuando las operaciones se combinan; P-D cuando las operaciones se pueden hacer conjuntamente o por separado y P/D cuando cada cliente tiene una entrega o un envío requerido pero no ambos. La parte final del esquema está constituida por el número de vehículos utilizados en la solución del problema: puede ser uno o múltiples vehículos.
Entre 1999 y 2016 se desarrollaron muchas variantes del problema VRPPD, en las que se consideraron dos situaciones: ambiente estático, [4], que se presenta cuando todos los datos de entrada del problema son conocidos antes de la construcción o diseño de las rutas y el horizonte de planeación es limitado, y ambiente dinámico, [5], [30],donde algunos datos de entrada se conocen o se actualizan durante el periodo en el que se efectúan las operaciones de entrega y recogida de los productos. El horizonte de planeación en este escenario es ilimitado. La mayoría de los problemas de entrega y recogida se han centrado en el escenario estático y pocos autores han trabajado la parte dinámica del problema.
Otro enfoque del problema de ruteo de vehículos con entregas y recogidas selectivas incluye ventanas de tiempo (VRPDSPTW) y su objetivo es minimizar la diferencia entre los costos de enrutamiento y los ingresos asociados con las recogidas. En este escenario se encuentran cinco variantes del problema, descritas por [6], como puede observarse en la figura 3:
Se encontró que hay autores, como [7], que pretenden mejorar la investigación del VRPDP con ventanas de tiempo para una industrial embotelladora. En el trabajo de [8] se encuentra un modelo matemático para el VRPSPD con ventanas de tiempo que penaliza los retrasos. Se aplica un algorimo genético.
Para un manejo adecuado de las siglas, a continuación se relacionan las abreviaturas utilizadas en este artículo para los métodos de solución:
Métodos exactos ME: búsqueda directa de árbol: BDA, que contiene un algoritmo branch and cut: BC, branch and Price: BP [31], o branch and cut and Price: BCP; programación lineal: LP [32]; generación de columnas: CG; programación lineal entera mixta: MILP; programación dinámica: DP [33]; algoritmo basado en la versión multicorte en forma de L: ABLSMV, y programación lineal fraccionada: LFP.
Heurísticas: Heurística constructiva: HC; enrutamiento dinámico: ED; partición de recorrido: SR [34]; heurística para depósito simple y múltiple: DSM; trayectoria más corta: SP; heurística con ventanas de tiempo y tiempos de espera: HTWWT; heurística del vecino más cercano: NNH; heurística de búsqueda variable del vecino más cercano: VHSCN; heurística general para VRPPD GHVRPPD; heurística para recogidas y entregas selectivas del VRPPPD PDSH; algoritmo NPFDS [35]; política dinámica del vecino más cercano: DNN; métodos heurísticos: HM; heurística de barrido: SH [36]; algoritmo de fraccionamiento para entrega y recogida: SADP; heurística hibrida: HH; heurística de diseño de experimentos con entregas y recogidas fraccionadas: HDEDPS [37], y heurística constructiva multifase: CHM.
Metaheurísticas M: búsqueda local variable: VNS; búsqueda tabú reactiva: RTS [38]; búsqueda tabú: TS; recocido simulado mejorado: ISA; metaheuristica hibrida: HM [39]; procedimientos de memoria adaptativa: APM [40]; algoritmo de colonia de hormigas: AC; algoritmo diferencial evolutivo: DEA; algoritmo de búsqueda local: LSA [41]; algoritmo genético, GA; algoritmo genético híbrido: HGA; algoritmo de coevolución: CA [42] - [44]; recocido simulado: SA; algoritmo memético: MA [46]; algoritmo hibrido: HA [47]; algoritmo evolutivo QEA: EQEAA, y búsqueda local iterativa: LSI.
Métodos híbridos MH: búsqueda local y búsqueda tabú: LS y TS [49]; procedimiento de inserción más barato y búsqueda tabú: CIP y TS [50]; programación lineal entera y heurística constructiva: ILP y CH; algoritmos exactos y métodos heurísticos: EA y HME; algoritmos GENVNS, búsqueda tabú con lista de candidatos y PR (encadenamiento de trayectorias) GENVNS-TS-CL-PR [51]; algoritmo genético y búsqueda tabú: GA y TS; programación entera mixta con trayectoria más corta: MILP-SP [48]; búsqueda adaptativa de vecindad y heurística de inserción: MILP- SAN-HI; programación entera mixta algoritmo genético y algoritmo modificado del ahorro: GA y MAS; heurística de búsqueda por vecindad variable: VHS, perturbación P y heurística del ahorro: AS VHS-P-AS; algoritmo de búsqueda local para 2L-SPD 2DP y heurística de embalaje de dos dimensiones para la generación de estructuras de carga factible: GSLF 2DPGSLF; variable de vecindad descendente: VND, procedimiento generador de un conjunto inicial de soluciones: PGSIS, y fase de perturbación y refinamiento: PR VND-PGSIS-PR; procedimiento de entradas múltiples basado es esquemas fijos de optimización: MEPBFOS [58], y algoritmo genético: GA MEPBFOS-GA; programación lineal entera y mixta: MILP, búsqueda tabú: TS y algoritmo de branch and cut: BC: MILP-TS-BC; programación lineal entera mixta: MILP y gran búsqueda local adaptativa: GLAS MILP-GLAS.
Las abreviaturas utilizadas en este artículo para las variantes del problema son:
VRP con entregas y recogidas simultanéas con múltiples vehículos: m-VRPSPD; VRP con entregas, recogidas selectivas y ventanas de tiempo: VRPSPDTW;VRP con entregas y recogidas aplicando ventanas de tiempo: TWPDP; sistemas de entregas y recogidas: PDP; VRP de vehículos simples y múltiples con entregas y recogidas simultáneas: VRPSPDSM; VRPPD con ventanas de tiempo y tiempos de espera: TWWTVRPPD; VRPPD con un solo vehículo y entregas y recogidas selectivas s-:VRPPPD; VRP con múltiples vehículos con fraccionamiento de carga para entregas y recogidas: m-VRPPDSL; VRPPD con entregas y recogidas aplicando ventanas de tiempo: TWVRPFPD; VRPPD aplicando rutas de transporte: VRPPDSR; VRP con entregas y recogidas, ventanas de tiempo y contaminación: TWPDPRP; problema de enrutamiento de inventario multiproducto con opción de transbordo y enfoque verde: IRP; VRP con entregas y recogidas y problema de transbordo: PDPT; enrutamiento de petróleo y problemas de programación con recogidas y entregas fraccionadas: GPDP; VRP con entregas y recogidas sincronizadas: SPDP; VRP con entregas y recogidas con cargas completa FTPDP; VRP con entrega y recogida, ventanas de tiempo y múltiples pilas de productos: PDPTWMS; VRP con programación estocástica de dos etapas: MFRSPSD; VRP con recogidas y entregas con traslados: VRPPDPS; VRP para recoger inventario de plantas de capacidad limitada de almacenamiento: VRPPB; VRP capacitados con múltiples recogidas, entregas simples y ventanas de tiempo: CVRPMPDTW; VRP con entregas y recogidas simultáneas con tiempo límite: VRPSPDT; VRP con entregas y recogidas simultáneas y restricciones bidimensionales de carga: VRP2LSPD; Problema del agente viajero para entregas y recogidas multiproducto: m-PDTSP; Problema de ubicación de ruta de muchos a muchos con clientes de recogida y entrega: VRPM-CPD; problemas de ruteo multivehículo con entregas y recogidas y restricciones LIFO VRPPDPLT; VRP con recogidas y entregas, ventanas de tiempo, beneficios y solicitud de reservas: PDPTWPR; VRP con entregas y recogidas, demandas aleatorias y pedidos predefinidos del cliente: DRDPCO; VRP con carga completa en varios puntos de entrega y uno de recogida: FTVRP y VRPPD con cliente predefinido: VRPPDPC.
En la tabla 1 se pueden apreciar estas clasificaciones.
A continuación se presentan algunas estadisticas obtenidas de la tabla 1 sobre los 53 artículos evaluados en el periodo:
Con respecto a las variantes del problema: la variante más utilizada es VRPSPD, con 19 articulos, seguido de PDP, con 15, luego VRP con ventanas de tiempo, con 13, VRPPD, con 12. VRPSPDT fue propuesta por 6 investigadores. Algunas como IRP y VRP2L-2PD solo aparecen en la revisión una vez.
En relación con el método de solución: La composición porcentual de la aplicación de los metodos de solución sobre los 53 articulos es: Métodos exactos ME representan el 34 %, que corresponde a 18 artículos; Heurísticas constructivas (HC), 17 %, con 9 artículos; Metaheuristicas (M), 28 %, con 15 artículos, y Métodos hibrídos (MH), 21 %, con 11 artículos.
En los métodos exactos, la búsqueda directa de árbol es la más utilizada. Solo hubo un artículo que empleó la programación lineal fraccionada.
En las heurísticas constructivas se nota heterogeneidad en su uso. Hubo 9 artículos con 9 técnicas diferentes.
En cuanto a las metaheurísticas, el método más empleado es CA.
En los métodos híbridos se aprecia el uso de métodos exactos con metaheurísticas, como en [12] y [52], y metaheuristicas con heuristicas constructivas, como en [53], para citar algunas combinaciones.
Con respecto a los modelos matematicos se citan como ejemplo el empleo de dos índices los trabajos de [10], [19], [22], [23], [25]-[27], [29], [52]; con tres índices: [18], [20], [21], [24], [28], [53], [57] y con 4 el trabajo de [58].
Como puede observarse en la tabla 1, existe una buena cantidad de variantes del VRPPD. Por lo tanto, se decidió considerar en este artículo el modelo matemático básico del VRPSPD, propuesto por [54] y aplicado por [9]. El objetivo de la solución es encontrar el conjunto óptimo de rutas que garanticen el cumplimiento de las restricciones que se muestran enseguida:
Las rutas que se definan deben comenzar y finalizar en el depósito; se deben satisfacer los requerimientos de todos los clientes al 100 % del nivel de servicio; cada cliente puede ser visitado solo una vez en la ruta óptima, y en cada uno de los clientes o nodos de la ruta el total de la carga transportada por los vehículos no debe exceder su capacidad.
El modelo matemático es:
A = conjunto de arcos que consisten en los pares (i, j) e (j, i) para cada borde {i, j} ε Ek.
G = (Vk, Ek) = grafo completo con vértices V= {0, 1, 2,….., n}, donde el vértice 0 representa el depósito y el resto corresponde a los clientes. Cada borde {i, j} ε Ek tiene un costo no negativo y cada cliente i ε V’=V-{0}= {1, 2,3…..., n}.
di = cantidad de mercancía o producto que se debe entregar al cliente i.
pi = cantidad de mercancía o producto que se debe recoger al cliente i.
cij = matriz de costos de viaje o distancias, i, j ε V.
C = {1, 2,…..., m} = conjunto de m vehículos homogéneos con capacidad Q.
Ek = subconjunto de Vk*Vk, que comprende todos los arcos posibles.
Variables de decisión:
Dij = cantidad de productos o mercancía pendiente por entregar, que es transportada en el arco (i, j).
Pij = cantidad de productos o mercancía recogida, que es transportada en el arco (i, j).
Q = capacidad de los vehículos homogéneos.
La función objetivo, las restricciones y su descripción se presentan enseguida:
La función objetivo (1) minimiza la suma de los costos de viaje o las distancias recorridas en la ruta seleccionada. Con la restricción (2) existe garantía para que cada cliente pueda ser visitado solamente una vez en la ruta seleccionada. La restricción (3) hace que cada vehículo salga de cada nodo o cliente una sola vez en la ruta. Con la restricción (4) se asegura que cada vehículo se emplea una vez como máximo. Las expresiones (5), (6) y (7) son restricciones que garantizan la conservación del flujo de los productos entregados y recogidos en las rutas establecidas. La naturaleza de las variables de decisión y las condiciones de no negatividad se presentan en las restricciones (8), (9) y (10). Si se pretende obtener una desigualdad más fuerte para la no negatividad de la restricción (8), esta se puede sustituir por la desigualdad (11), como lo sustenta Gouveia en su trabajo publicado, cuya característica es el empleo de límites más estrechos. Siguiendo la misma estrategia anterior de utilizar desigualdades más fuertes para Pij, se pueden sustituir las restricciones (9) por (12) y (7) por (13). Con la desigualdad (14) se logra que cada borde o arista no adyacente al depósito es recorrida como máximo una vez.
En un sentido estricto, prácticamente cada una de las variantes del problema VRPPD puede constituirse como una línea de investigación. A continuación se relacionan ciertas líneas de investigación tomadas de algunos trabajos recientes presentados entre 2013 y 2016:
Nuevo modelo para el VRPPD con vehículos heterogéneos y capacidad configurable [17]; optimización discreta con enjambre de particulas para el VRPSPD [55]; propuesta de una heuristica eficiente para el m-VRPPD con cargas fraccionadas [45]; integración de las redes comerciales y residenciales para recogidas y entregas [56]; enfoque de optimización robusta para el VRPPD en condiciones de incertidumbre y efectos de contaminación [20]; problema de enrutamiento de inventario multiproducto, multiperiodo con opción de transbordo y enfoque verde [18]; nuevo modelo de programación entera mixta para el VRPPD con transbordo [19]; desarrollo de un modelo para el VRP con multiples recogidas y un único envío [53]; problema de recogida de inventario de producción en varias plantas con capacidad limitada de almacenamiento [29]; enrutamiento en instalaciones móviles y problema de programación con demanda estocástica [57]; VRPPD con múltiples vehiculos y restricciones LIFO [52]; VRP con entregas y recogidas sincronizadas [22]; enrutamiento de petróleo y problema de programación con recogidas y entregas fraccionadas [21]; VRPPD con restricciones bidimensionales de carga [26]; propuestas de modelos y algoritmos para el VRPPD con ventanas de tiempo y múltiples pilas de productos [25]; un enfoque heurístico híbrido para el problema del agente viajero con entregas y recogidas multiproducto [27]; VRPPD con ventanas de tiempo, beneficios y solicitud de reservas [28].
Estas lineas de investigación pueden hacerse extensivas a vehículos homogéneos y heterogéneos, con un único depósito y multidepósito, incorporando variables de efecto ambiental.
Una primera versión del VRPSPD que data de 1989 fue propuesta por [1] y hasta la fecha se ha conocido su creciente evolución con el diseño de una gran cantidad de variantes del problema, que ha permitido ampliar esta área de investigación.
Este artículo muestra una clasificación del VRPPD según algunas de sus variantes y métodos de solución aplicados. A medida que aumenta la complejidad del problema crece el interés de los investigadores por aplicar metaheurísticas o métodos híbridos en su solución.
Se pudo observar en el periodo analizado que la investigación en esta área converge a las variantes del VRPPD, incluyendo ventanas de tiempo, múltiples depósitos y vehículos, cargas fraccionadas y con transbordo. Además, en los últimos años se les ha dado importancia a los aspectos ambientales o verdes. Como caso especial se encontró un trabajo que sugirió la aplicación de la programación lineal fraccional para resolver el VRP para recoger inventario en plantas con capacidad limitada de almacenamiento.
En su gran mayoría los artículos revisados hacen referencia a situaciones reales, que hace que la aplicación de las técnicas de solución se torne más interesante.
Los nuevos modelos propuestos para el VRPPD deben permitir nuevos análisis de sensibilidad para evaluar la capacidad, los resultados del modelo utilizado y los impactos ambientales de los parámetros utilizados.
La tendencia de la heurística para el VRPPD ha permitido el desarrollo de nuevos algoritmos con un buen nivel de desempeño que por lo general requieren importantes tiempos de cómputo en sus procesos.
Nuestro aporte en este trabajo es motivar a los investigadores para que sigan diseñando y proponiendo nuevas variantes y métodos de solución para el apasionante VRPPD.
El 22 de abril de 2016, 175 países firmaron en la ONU el acuerdo para combatir el calentamiento global en el que se desestimula el uso de energías fósiles, que son altamente contaminantes como combustible. Por lo tanto, los nuevos modelos o variantes del VRPPD obligatoriamente deben incluir nuevas fuentes de energía con variables ambientales o verdes.
Correspondencia: Pedro Pablo Ballesteros Silva, 3137328871, Cra. 27# 10-02 Los Álamos.