Solution Techniques

Multi-Route Improvement Algorithms

Improvement algorithms attempt to upgrade any feasible solution by performing a sequence of edge or vertex exchanges within or between vehicle routes. Multi-route improvement heuristics for the VRP operate on several routes at a time. We can find descriptions of multi-route edge exchanges for the VRP in these three references:

Thompson and Psaraftis

Thompson and Psaraftis (1993) propose a method based on the concept of cyclic k-transfers that involves transferring simultaneously k demands from route r(j) to route r(σ(j)) for each j and fixed integer k. The set of routes r(1..m), with m ≥ 2, constitutes a feasible solution and σ is a cyclic permutation of a subset of {1, …, m}. In particular, when σ has fixed cardinality C, we obtain a C-cyclic k-transfer. By allowing k dummy demands on each route, demand transfers can be performed among permutations rather than cyclic permutations of routes. Due to the complexity of the cyclic transfer neighborhood search, it is performed heuristically. The 3-cyclic 2-transfer operator is illustrated in the figure below.

The 3-cyclic 2-transfer operator
The cyclic transfer operator. The basic idea is to transfer simultaneously the customers denoted by white circles in a cyclical manner between the routes. More precisely, here customers a and c in route 1, f and j in route 2 and o and p in route 4 are simultaneously transferred to routes 2, 4, and 1 respectively, and route 3 remains untouched.

Back to top

Van Breedam's Analysis

We now summarize Van Breedam's analysis. Four operations are considered:

  1. String Cross (SC): Two strings (or chains) of vertices are exchanged by crossing two edges of two different routes.
String cross operation
String Cross (SC).
  1. String Exchange (SE): Two strings of at most k vertices are exchanged between two routes.
String exchange operation
String Exchange (SE).
  1. String Relocation (SR): A string of at most k vertices is moved from one route to another, typically with k = 1 or 2.
String relocation operation
String Relocation (SR).
  1. String Mix (SM): The best move between SE and SR is selected.

To evaluate these moves, Van Breedam considers two local improvement strategies:

  1. First Improvement (FI): Consists of implementing the first move that improves the objective function.
  2. Best Improvement (BI): Evaluates all the possible moves and implements the best one.

Van Breedam then defines a set of parameters that can influence the behavior of the local improvement procedure:

Back to top

Kinderwater and Savelsbergh

In the Kinderwater and Savelsbergh heuristic, tours are not considered in isolation, so paths and customers are exchanged between different tours. The operations that make these changes are:

  1. Customer Relocation: A customer located on one route is moved to another one.
Customer relocation operation
Customer Relocation.
  1. Crossover: Two routes are mixed at one point.
Crossover operation
Crossover.
  1. Customer Exchange: Two customers of two different routes are interchanged between the two routes.
Customer exchange operation
Customer Exchange.

In the following pictures we can see slightly more complex examples:

More complex Kinderwater and Savelsbergh move examples
More complex exchange examples.

Back to top