Delft University of Technology – Erasmus University Rotterdam University of Twente – Radboud University Nijmegen University of Groningen Context-Aware Logistic Routing and Scheduling Adriaan ter Mors 12 – Jonne Zutt 1 – Cees Witteveen 1 – 1 Algorithmics, Faculty of EEMCS, TU Delft, Netherlands 2 Almende B.V., Rotterdam, Netherlands
ICAPS Context-Aware Routing Given: –set of vehicles (agents) –infrastructure of resources –for each agent, a start and a destination location Find, for each agent, a shortest-time conflict-free path: –limited capacities –head-on conflicts –catching-up conflicts
Complexity of Context-Aware Routing Robot motion planning free movement in the x,y-plane avoid collisions with moving obstacles PSPACE-hard for single agent [Reif:1979] Multi-agent, context-aware only movement along lanes avoid collisions with other agents NP-complete Single-agent, context-aware only movement along lanes avoid collisions with other agents Solvable in polynomial time
ICAPS Contents 1.Introduction: context-aware routing 2.Methods to solve context-aware routing 3.Advances in time window graph routing 4.Experimental results 5.Conclusions and future work
ICAPS Methods for context-aware routing Fixed Path Scheduling –fixed path (or k fixed paths) of resources –determine times at which the resources are visited: velocity planning Time window graph routing –determine both which resources to go visit, and the times to visit them
ICAPS SI:[5,6] [4,7] [5,7]D Example: multiple resource visits J: K:
ICAPS Context-aware routing: naïve approach 1.Associate reservation time windows with nodes in graph 2.Perform typical A* search: –open list of (node, time) pairs –pop element with smallest time value –expand to all neighboring nodes, unless a reservation forbids it [4,8) s d
ICAPS Naïve context-aware routing Problem: nodes may be expanded an exponential number of times [12,14) [0,12) [14,∞) s d a b At most one visit for each free time window
ICAPS Free time window graph Free time window: interval during which number of agents is smaller than capacity of a resource Free time window reachability: adjacency in space and time Time window graph routing: search through graph of free time windows
ICAPS Previous work in TWGR Kim and Tanchoco 1991: Conflict-free shortest-time bidirectional AGV routeing Adapted Dijkstra search algorithm O(n 2 A 4 ) algorithm (n number of infrastructure resources, A number of agents) Inefficiency due to constraint checking in every iteration of the search algorithm: –catching-up conflicts –head-on conflicts
ICAPS Improved time window graph routing A* algorithm that reduces complexity in two ways: 1.Complexity analysis shows limited number of arcs in free time window graph 2.No constraint checking during search: all constraints encoded in free time windows themselves Algorithm complexity: O(F · log(F) + n 2 A) (F number of free time windows, n number of infrastructure resources, A number of agents)
ICAPS Arcs in free time window graph Proposition: # arcs ≤ |F i | + |F j | + 1 riri rjrj time
ICAPS Preventing head-on conflicts time
ICAPS Preventing catching-up conflicts Determine leading and trailing vehicles Derive entry-time and exit-time intervals entry A 1 entry A 2 exit A 1 exit A 2 entryexit
ICAPS Experimental results Airport taxi routing (Amsterdam Airport Schiphol) Comparison of fixed path scheduling and time window graph routing
ICAPS CPU time comparison FPS TWGR Time [ms] Number of prior reservations
ICAPS Plan cost comparison - setup for k = 0 to 3000 –make plan A with TWGR –make plan B with FPS –reserve plan A: add reservations to infrastructure derive new set of free time windows for k = 0 to 3000 –make plan A with TWGR –make plan B with FPS –reserve plan B: add reservations to infrastructure derive new set of free time windows Plan cost: arrival time at destination resource
ICAPS reserve FPS plans reserve TWGR plans Plan cost comparison plan cost number of prior reservations TWGR provides spread of agents over space and time Using FPS repeatedly leads to overuse of key resources FPS TWGR
ICAPS Conclusions and future work Time window graph routing can be fast Time window graph routing provides a good spread of reservations over space and time … but is it robust? Infrastructure topology and robustness Multi-objective routing
ICAPS Questions?
ICAPS Efficiency of agent-by-agent planning
ICAPS Pickup and delivery transport Pickup and Delivery Transportation Problem: freight has to be transported from a source to a destination location respecting specified time intervals on a transport network with limited capacities and speeds. Limited capacities lead to conflicts. Malfunctioning resources (infrastructure and transport resources).
ICAPS Applications AGV container terminals Taxiing of airplanes at an airport Inland shipping
ICAPS Port of Rotterdam (ECT)
ICAPS Research questions What information is necessary to obtain efficient planning methods? What happens when varying workload, number of agents (scalability), incident level (normal to extreme circumstances, robustness)? What is the relation between performance and characteristics of the transport network?
ICAPS Traplas OperationalPlanner PlanningSystem RoutePlanner Communication OPAuction OPScheduling OPGenerator OPLPAstar OPShortestPath
ICAPS Empirical results Revising priorities
ICAPS Empirical results Revising routes
ICAPS Empirical results Revising routes
ICAPS Hard instances for H&N
ICAPS Transport network
ICAPS Conflicts
ICAPS Interface Traplas – TraplasViz # LOC timestamp id name cap dist spd type w h x y rot LOCATION 0 1 R # ARC timestamp id name from to type direction ARC 0 3 EXIT_27_2-EXIT_ BEGIN SETTIMESCALE 0 1 TRNEW 0 0 TR(0) NEWCARG 0 79 O DRV CLAIM PI DELAY UNLOAD RMCARG TRDEL SYNC_TIMER
ICAPS Example: catching-up conflict A1A1 A1A1 A2A2 A2A2 rjrj rkrk distance time AjAj AkAk AmAm