# A Heuristic for Solving the Swap-Body VRP

## Presentation on theme: "A Heuristic for Solving the Swap-Body VRP"— Presentation transcript:

A Heuristic for Solving the Swap-Body VRP
Oliver Lum, Xingyin Wang, Ping Chen, Bruce Golden, Edward Wasil

Swap-Body VRP Models scenario in which the vehicles have detachable components, and certain customers may be visited by only the smallest vehicle possible (due to space constraints) Single depot Maximum route duration Truck Q = swap-body capacity Train Figure 1: Truck, semi-trailer, and swap-body Figure 2: Valid vehicle combinations (truck and train)

Related Problems All single-objective
Gerdessen Lin et al. Lin et al. Derigs et al. Chao Scheuerer Lin et al. Caramia and Guerriero Villegas et al. Yu et al. Derigs et al. Semet Drexl Drexl All single-objective Closest variant is the Truck and Trailer Routing Problem (TTRP) No dedicated swap locations Generally load transfer is allowed No vehicle fixed cost

Swap-Body VRP Cost Vehicle Cost: Cost of renting the vehicle for use
Time: An hourly wage associated with driver cost Distance: A cost / kilometer for use of the vehicle which is greater for a larger vehicle (gas costs) Cust. Swap Location Service Time Swap Action Times

Swap-Body VRP Swap Actions / Subtours
At a designated Swap Location, there are four possible actions, each with an associated performance time: Swap Location Figure 3: Park Park: The entering train parks its trailing swap-body, leaving it at the swap location for pickup at a later time Swap Location Figure 4: Pickup

Swap-Body VRP Swap Actions / Subtours
At a designated Swap Location, there are four possible actions, each with an associated performance time: Swap Location Figure 3: Park Pickup: The entering truck reattaches to the previously parked swap-body, picking it up to continue the tour Swap Location Figure 4: Pickup

Swap-Body VRP Swap Actions / Subtours
Swap Location Figure 5: Swap Swap: The incoming truck changes the position of its swap-bodies, and then leaves, still a truck, with a different quantity of goods, (joining two consecutive subtours) Swap Location Figure 6: Exchange

Swap-Body VRP Swap Actions / Subtours
Swap Location Figure 5: Swap Exchange: The incoming train changes the position of its swap-bodies, parks its trailing swap-body, and leaves a truck Swap Location Figure 6: Exchange

Swap-Body VRP Swap Actions / Subtours
Cust. A swap-body belongs to its vehicle, and cannot be abandoned. Therefore, it must eventually return to pick up a dropped off swap- body. Cust. Cust. Swap Location Cust.

Swap-Body VRP Swap Actions / Subtours
Cust. A swap-body belongs to its vehicle, and cannot be abandoned. Therefore, it must eventually return to pickup a dropped off swap-body Cust. Cust. Swap Location Cust.

Swap-Body VRP Swap Actions / Subtours
Cust. A swap-body belongs to its vehicle, and cannot be abandoned. Therefore, it must eventually return to pick up a dropped off swap- body Cust. Cust. Swap Location Cust.

Swap-Body VRP Swap Actions / Subtours
A train may choose to serve a customer from a swap-body (or partially from both), but there is no load transfer allowed 10 10 5 Cust. Demand: 5

Swap-Body VRP Swap Actions / Subtours
A train may choose to serve a customer from a swap-body (or partially from both), but there is no load transfer allowed 10 10 8 7 Cust. Demand: 5

Swap-Body VRP Swap Actions / Subtours
A train may choose to serve a customer from a swap-body (or partially from both), but there is no load transfer allowed 5 3 Swap Location Subtour Demand: 7

Swap-Body VRP Swap Actions / Subtours
A simple procedure for determining the feasibility of a route’s subtours: Check whether any one subtour exceeds demand, (Q), or the sum of the entire route’s demand exceeds 2Q If both are not violated, use a simple dynamic programming approach to construct the closest possible solution to the partition problem (where the elements of the set correspond to the demands of the subtours). If this produces two partitions with sums P1 and P2 , then check P1 < Q and P2 < Q Subtour demands: {2, 5, 6, 3, 2}, Q = 10 10 5 6 2 3 2 Swap-Body 1 Swap-Body 2

Swap-Body VRP Swap Actions / Subtours
After a route is determined, its optimal orientation can be found by solving the main tour orientation separately from the subtour Because an exchange is the most costly operation, we minimize the number of exchanges, which means minimizing the number of transitions in a binary representation of the subtour swap-body string: Suppose the string was {1,1,0,0,1} This corresponds to {exchange, no action, exchange, no action, exchange} First rule: serve first subtour from swap-body 1 (can always flip and maintain feasibility) Idea: exchange swap-bodies that serve subtours to get consecutive subtours on the same swap-body

Swap-Body VRP Example

Heuristic Idea: try to repurpose and reuse existing code as much as possible, (in this case, COIN-OR’s VRPH Code from Chris Groër) Flexible for drop-in solver, (i.e., any capacitated vehicle routing problem solver may be used for initialization) When compared to heuristics specifically designed for the SB-VRP and/or exact solvers, solution quality can help quantify the ‘difficulty’ of the variant (the gap is a proxy for the difference in structure) Cuts down development time

Heuristic: Two Stages We approach the problem using a two-stage heuristic: In the first stage, we ignore subtours entirely, and model as many elements of the problem as a traditional VRP, (homogeneous fleet, with service times), that allows us to use any VRP solver to obtain a feasible initial solution. In the second stage, we apply improvement procedures, some of which are designed to introduce subtours into the solution, and some of which are slightly modified versions of VRP local search operators. Stage 1 Stage 2

Heuristic: Stage 1 (Asymmetric) VRP Model
If there are truck-only customers, fleet only contains trucks Service time added to the depot to reflect the vehicle cost Weights in the graph are according to time (since a max route duration exists) Used codes in the VRPH library, with minor modifications to solve the VRP model

Heuristic: Stage 2 2-Swap 2-Opt Improvement Procedures
2-Swap between main tours. 2-Opt on a main tour. Distance-constrained evacuation. Distance-constrained exchange. Truck-only customer migration. Perturbation: Exchange several random strings of nodes between main tours. 2-Swap 2-Opt

Heuristic: Stage 2 Distance-constrained evacuation
Improvement Procedures 2-Swap between main tours. 2-Opt on a main tour. Distance-constrained evacuation. Distance-constrained exchange. Truck-only customer migration. Perturbation: Exchange several random strings of nodes between main tours. Distance-constrained evacuation

Heuristic: Stage 2 Distance-constrained exchange
Improvement Procedures 2-Swap between main tours. 2-Opt on a main tour. Distance-constrained evacuation. Distance-constrained exchange. Truck-only customer migration. Perturbation: Exchange several random strings of nodes between main tours. Distance-constrained exchange

Heuristic: Stage 2 Truck-only customer migration
Improvement Procedures 2-Swap between main tours. 2-Opt on a main tour. Distance-constrained evacuation. Distance-constrained exchange. Truck-only customer migration. Perturbation: Exchange several random strings of nodes between main tours. Truck-only customer migration

Test Instances VeRoLog 2014 Solver Challenge Platform 27 teams
Common set of test data 9 public instances 3 small, 3 medium, and 3 large instances For each size, the three instances were identical, except for the restrictions on which vehicle types could visit the customers In one instance, all customers could be reached by all vehicle types In one instance, all customers could only be reached by trucks In one instance, some customers could be reached by trains, and some could not 3 hidden instances Teams provided only with their performance on these instances Platform Algorithm written in C++ Core i7 2.8 GHz (2009), 8 GB RAM PC

Computational Results
Instance nSL nC VRPH Improvement Small 20 57 5452,99 4959 Small (Trailer) 4930,06 4868,67 Small (Truck) 5357,03 5356,36 Medium 41 206 8735,81 8293,06 Medium (Trailer) 8434,87 8330,78 Medium (Truck) 8698,13 8614,46 Large 99 548 22851,1 21463,2 Large (Trailer) 21160,5 21020,3 Large (Truck) 22593,4 22468,7 New NA 26712,4 New (Trailer) 26658,1 New (Truck) NA = Not Available nSL = number of swap locations nC = number of customers

Conclusions Solving the SB-VRP as VRP gives good performance (outperformed initial clustering approach, and two-stage approach to subtour formation) VRPH leverages existing solvers, but the subtour structure seems suboptimal Parts of the swap-body VRP can be simplified (e.g., subtour feasibility, separate fixed vehicle costs and time costs). Most difficult aspect is understanding the interaction between subtours and neighboring routes

References Caramia, M., Guerriero, F., A heuristic approach for the truck and trailer routing problem. Journal of the Operational Research Society 61(7), 1168 – 1180. Chao, I., A tabu search method for the truck and trailer routing problem. Computers & Operations Research 29(1), 33 – 51 Derigs, U., Pullmann, M., Vogel, U., Truck and trailer routing- problems, heuristics and computational experience. Computers & Oper- ations Research 40(2), 536 – 546. Drexl, M., Branch-and-price and heuristic column generation for the generalized truck-and- trailer routing problem. Revista De Metodos Cuan- titativos Para La Economia Y La Empresa 12, 5–38. Drexl, M., On some generalized routing problems. Ph.D thesis, RWTH Aachen University, Germany. Drexl, M., Branch-and-cut algorithms for the vehicle routing problem with trailers and transshipments. Networks 63(1), 119 – 133. Gerdessen, J. C., Vehicle routing problem with trailers. European Journal of Operational Research 93(1), 135 – 147. .

References Groër, C., VRPH. Hansen, P., Mladenovic, N., Variable neighborhood search: Principles and applications. European Journal of Operational Research 130(3), 449 – 467. Lin, S. W., Yu, V. F., Chou, S. Y., Solving the truck and trailer routing problem based on a simulated annealing heuristic. Computers & Operations Research 36(5), 1683 – References Lin, S. W., Yu, V. F., Chou, S. Y., A note on the truck and trailer routing problem. Expert Systems with Applications 37(1), 899 – 903. Lin, S. W., Yu, V. F., Lu, C. C., A simulated annealing heuristic for the truck and trailer routing problem with time windows. Expert Systems with Applications 38(12), – Scheuerer, S., A tabu search heuristic for the truck and trailer routing problem. Computers & Operations Research 33(4), 894 – 909. Semet, F., A two-phase algorithm for the partial accessibility con- strained vehicle routing problem. Annals of Operations Research 61(1), 45–65.

References VeRoLog, /verolog-solver-challenge VeRoLog, /VSC %20Problem.pdf. Villegas, J. G., Prins, C., Prodhon, C., Medaglia, A. L., Velasco, N., A GRASP with evolutionary path relinking for the truck and trailer routing problem. Computers & Operations Research 38(9), 1319 – 1334. Villegas, J. G., Prins, C., Prodhon, C., Medaglia, A. L., Velasco, N., A matheuristic for the truck and trailer routing problem. European Journal of Operational Research 230(2), 231 – 244. Yu, V., Lin, T., Lu, C., An ant colony system for solving the truck and trailer routing problem. Journal of the Chinese Institute of Transportation 23(2), 199 – 218.