Enrutamiento de flotas con el VPR Solver: Tiempo de Windows



Cada vez más empresas necesitan incorporar horarios de citas o ventanas de tiempo en sus soluciones de enrutamiento. La garantía de 30 minutos ya no es solo para pizza. Discutiremos los aspectos básicos de las ventanas de tiempo en el solucionador de VRP y cómo priorizar su importancia.

Los básicos

Las ventanas de tiempo son una forma de indicar cuándo debe llegar la ruta / el controlador a la ubicación de esa orden. VRP Solver es compatible con dos ventanas de tiempo por pedido. Si la hora de inicio para una ventana de tiempo se deja nula, corresponderá con comenzar en la hora de inicio más temprana de la ruta más antigua. De forma similar, si el tiempo de finalización de una ventana de tiempo se deja en blanco, se corresponderá con la última finalización de la última ruta.

A menos que se use el sistema Rest Request, los campos de la ventana de tiempo se configuran para aceptar solo la hora o la hora y la fecha. Si es solo el momento, se supone que está en la fecha predeterminada. Si usa tanto la fecha como la hora, asegúrese de usar tanto la fecha como la hora en todos los campos de tiempo en Órdenes, Depósitos, Rutas y Breaks. El sistema de solicitud de descanso requiere que todos los tiempos estén en milisegundos desde época (que es el 1 de enero de 1970). Por lo tanto, tendrá intrínsecamente fecha y hora.

.

Nota: Las ventanas de tiempo no incluyen cuándo deben hacerse los controladores en esa ubicación, listos para ir a la siguiente ubicación. Es solo cuando deben llegar a la ubicación. Si necesita modelarlo para que el controlador salga dentro de un cierto tiempo, entonces, para su tiempo, restar el tiempo de servicio del valor de TimeWindowEnd. Esto permite que, si el controlador se mostrara justo al final de esta ventana de tiempo modificada, se completen con el tiempo del servicio y salgan al final del período de tiempo original.

Tiempo duro vs. tiempo suave Windows

Las ventanas de tiempo difícil significan que la ruta/controlador debe aparecer durante el marco de tiempo designado de las ventanas de tiempo. Una ventana de tiempo suave, por otro lado, permite que la ruta/el controlador aparezca tarde, pero la violación se penaliza en el solucionador, por lo que los tiempos de violación se reducen al mínimo. Para indicar que la ventana de tiempo es difícil, establezca el MaxViolationTime correspondiente a cero. Dejar este valor como nulo lo convierte en una ventana de tiempo suave. Dar un valor positivo para MaxViolationTime lo convierte en una ventana de tiempo suave dentro de una ventana de tiempo difícil. Esto significa que la ruta / controlador puede llegar tarde a esa ubicación, incurriendo en la penalización de violación, pero solo hasta el MaxViolationTime. En ese punto, es una restricción de tiempo difícil.

Time window fields in the orders attribute table

Priorizar las infracciones de la ventana de tiempo o el costo total

Al configurar un problema con ventanas de tiempo programadas, tiene la opción de identificar la prioridad que desea colocar minimizando el tiempo de violación de la ventana de tiempo frente a minimizar el costo total de las rutas (que incluye el tiempo total y la distancia total para todas las rutas). Estas dos prioridades generalmente están trabajando una contra la otra. Minimizar o eliminar violaciones de ventanas de tiempo usualmente requiere costos más altos porque. Esto se debe a que el recorrido más corto entre todas las paradas probablemente no satisfaga las ventanas de tiempo. Para indicar la preferencia por el problema de VRP, utilice el parámetro Importancia de violación de la ventana de tiempo. Hay tres opciones para este parámetro: Bajo, Medio y Alto.


  • Bajo: Prioriza la reducción al mínimo del costo total durante las violaciones de la ventana de tiempo
  • Medio: Intenta encontrar un equilibrio entre las violaciones de la ventana de tiempo y el costo agregado
  • Alto: Minimiza las infracciones de la ventana de tiempo a expensas del costo adicional




Hora Geo-Local o UTC



Cuando se usa la IU en ArcMap para capas VRP o las herramientas GP en ArcMap o ArcGIS Pro, es natural escribir los campos de tiempo usando la hora local para esa ubicación (Geo-Local). Sin embargo, al cambiar al método de solicitud de descanso, esos tiempos deben convertirse a milisegundos desde época. Esta forma de representar el tiempo de UNIX tiene una fuerte convención de tiempo de referencia basado en UTC. Por lo tanto, la mayoría de los métodos de conversión convierten esos tiempos utilizando UTC en lugar de Geo-Local.

El VRP Solver permite cierta flexibilidad para especificar el tiempo. Permite la opción de tener esa entrada como hora Geo Local y UTC. Por lo tanto, debe especificar qué formato se está utilizando. Esto se hace con el parámetro time_zone_usage_for_time_fields con las dos opciones de parámetros de GEO_LOCAL o UTC. La configuración de este parámetro solo está disponible en las herramientas GP o en la solicitud de reposo, y está predeterminada en Geo-Local. Al utilizar las capas VRP en ArcMap, no hay forma de cambiarlo a UTC.

Solve VRP GP Tool Time Zone Usage for Time Fields field

Involucrarse

Al usar ventanas de tiempo suave y se necesita una violación, ¿preferiría ver una orden con una infracción más grande o varias órdenes con violaciones menores? Haga clic aquí para responder.

¿Cuántas ventanas de tiempo quiere modelar? Haga clic aquí para responder.

ACERCA DE HEEPER MOE

Un ingeniero de producto en el equipo de Network Analyst. Heather trabaja principalmente con el solucionador de VRP.
¿Necesita más información? ¡Escríbanos!

Un ejecutivo de SIGSA está esperando atenderle.

Comentarios

Entradas más populares de este blog

Crime Analysis: Herramientas de análisis de delitos sólo con ArcGIS Pro