Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SIO 2015, 13º Simposio Argentino de Investigación Operativa. Técnicas metaheurı́sticas basadas en file systems distribuidos para problemas de ruteo de vehı́culos que involucran grandes volúmenes de datos Ricardo Di Pasquale1 1 2 Javier Marenco2 Universidad Católica Argentina, Argentina rdipasquale@uca.edu.ar Instituto de Ciencias, Universidad Nacional de General Sarmiento, Argentina jmarenco@dc.uba.ar En este trabajo estamos interesados en la resolución de problemas de optimización combinatoria que involucran grandes volúmenes de datos de entrada. En particular, trabajamos en una variante del problema clásico de ruteo de vehı́culos con ventanas de tiempo (VRPTW) sobre datos reales de tránsito, con el objetivo de obtener soluciones robustas. La caracterı́stica más importante de esta variante del VRPTW es que contamos con una cantidad extremadamente grande de datos de entrada referidos a velocidades de desplazamiento de los vehı́culos por cada punto de la ciudad a lo largo del tiempo, y en este contexto no es aceptable simplificar estos datos para obtener una matriz de tiempos de viaje aproximados. Los datos de entrada de este problema incluyen un grafo dirigido G = (V, A) que representa el mapa de la ciudad, un vértice especial d ∈ V que representa el depósito de origen de los vehı́culos, vértices v1 , . . . , vk ∈ V que representan a los clientes a visitar, y una cantidad c ∈ Z+ que especifica la cantidad máxima de clientes que puede visitar cada vehı́culo. Se particiona el intervalo [0, 24] – que representa las 24 horas del dı́a– en intervalos I1 , . . . , It y, para cada arco e ∈ A y cada intervalo j ∈ {1, . . . , t}, se tiene el tiempo de viaje tej ∈ R+ de atravesar el arco e en el intervalo Ij del dı́a. Estos datos se obtienen a partir de valores reales de flujo vehicular. Finalmente, tenemos una ventana de tiempo (ev , lv ) ∈ [0, 24]2 y un tiempo de servicio qv ∈ R+ para cada cliente v ∈ V que determinan en qué momento del dı́a puede ser visitado y cuánto tiempo se tarda en despachar la visita, respectivamente. El problema consiste en hallar una ruta para cada vehı́culo que comience y termine en el depósito d y que pase por no más de c clientes, de modo tal que cada cliente sea visitado dentro de su ventana de tiempo por la ruta de exactamente un vehı́culo y que el tiempo total de viaje sea mı́nimo. Para evaluar el tiempo de viaje de una ruta, se toma en cuenta el horario de salida de los vehı́culos y los tiempos estimados de viaje de cada arco en cada momento del dı́a. Un desafı́o importante que presenta este problema está dado por el almacenamiento de los datos de entrada. Dependiendo de la discretización seleccionada, los datos de algunas instancias sobre la Ciudad de Buenos Aires pueden requerir 44 JAIIO - SIO 2015 - ISSN: 2451-7569 2 SIO 2015, 13º Simposio Argentino de Investigación Operativa. de varias decenas de GB de almacenamiento. Esto plantea restricciones a la tecnologı́a a usar en la implementación de los algoritmos, dado que no es factible ubicar estos datos en memoria RAM y es muy lento recurrir al disco para consultarlos cada vez que se debe evaluar la función objetivo de una solución. Para atacar estos problemas, presentamos una plataforma basada en el file system distribuido HDFS de Apache Hadoop y la tecnologı́a Apache Spark, que permite manejar estos volúmenes de datos de manera adecuada. Sobre esta plataforma, implementamos un framework que da soporte a la ejecución de algoritmos genéticos distribuidos. En particular, desarrollamos un algoritmo genético para este problema por medio de operaciones Spark sobre estructuras RDD (resilient distributed data), distribuyendo ası́ la carga de trabajo sobre varias computadoras. Presentamos experimentos computacionales que muestran que este enfoque es adecuado incluso para el problema clásico de ruteo de vehı́culos, y mostramos resultados sobre la variante del VRPTW considerada en este trabajo. Finalmente, presentamos algunas consideraciones sobre cómo se podrı́a usar este enfoque para trabajar directamente con datos obtenidos desde dispositivos GPS (que implican volúmenes de almacenamiento mayores que los mencionados arriba) en lugar de considerar los datos consolidados de tiempo de viaje por arco y momento del dı́a. 44 JAIIO - SIO 2015 - ISSN: 2451-7569 3