程序代写代做代考 chain discrete mathematics Fortran flex AI algorithm scheme Microsoft Word – VRP Part I.doc

Microsoft Word – VRP Part I.doc

Vehicle Routing Problem with Time Windows, Part I: Route Construction and

Local Search Algorithms

OLLI BRÄYSY

SINTEF Applied Mathematics, Department of Optimization, P.O. Box 124 Blindern, N-0314 Oslo,

Norway, email Olli.Braysy@sintef.no

MICHEL GENDREAU

Département d´informatique et de recherche opérationelle and Centre de recherche sur les transports,

Université de Montréal, Case postale 6128, Succursale ”Centre-ville”, Montréal, Canada H3C 3J7,

email michelg@crt.umontreal.ca

This paper presents a survey of the research on the Vehicle Routing Problem with Time

Windows (VRPTW). The VRPTW can be described as the problem of designing least cost

routes from one depot to a set of geographically scattered points. The routes must be

designed in such a way that each point is visited only once by exactly one vehicle within a

given time interval, all routes start and end at the depot, and the total demands of all points

on one particular route must not exceed the capacity of the vehicle. Both traditional

heuristic route construction methods and recent local search algorithms are examined. The

basic features of each method are described, and experimental results for Solomon’s

benchmark test problems are presented and analyzed. Moreover, we discuss how heuristic

methods should be evaluated and propose using the concept of Pareto optimality in the

comparison of different heuristic approaches. The metaheuristic methods are described in

the second part of this article.

Transportation is an important domain of human activity. It supports and makes possible most other

social and economic activities. Whenever we use a telephone, shop at a food store, read our mail or fly

for business or pleasure, we are the beneficiaries of some system that has routed messages, goods or

people from one place to another. Freight transportation, in particular, is one of today’s most important

activities. Let us mention that the annual cost of excess travel in the United States has been estimated at

some USD 45 billion (King and Mast, 1997) and the turnover of transportation of goods in Europe is

2

some USD 168 billion per year. In the United Kingdom, France and Denmark, for example,

transportation represents some 15%, 9% and 15% of national expenditures respectively (Crainic and

Laporte 1997; Larsen 1999). It is estimated that distribution costs account for almost half of the total

logistics costs and in some industries, such as in the food and drink business, distribution costs can

account for up to 70% of the value added costs of goods (De Backer et al. 1997; Golden and Wasil

1987). Halse (1992) reports that in 1989, 76.5% of all the transportation of goods was done by

vehicles, which also underlines the importance of routing and scheduling problems.

The Vehicle Routing Problem with Time Windows (VRPTW) is an important problem occurring in

many distribution systems. The VRPTW can be defined as follows. Let G = (V, E) be a connected

digraph consisting of a set of n + 1 nodes, each of which can be serviced only within a specified time

interval or time window, and a set E of arcs with non-negative weights dij and with associated travel

times, tij. The travel time tij includes a service time at node i, and a vehicle is permitted to arrive before

the opening of the time window, and wait at no cost until service becomes possible, but it is not

permitted to arrive after the latest time window. Node 0 represents the depot. Each node i, apart from

the depot, imposes a service requirement qi that can be a delivery from, or a pickup for the depot. In

most of the surveyed papers the objective is to find the minimum number of tours, K*, for a set of

identical vehicles such that each node is reached within its time window and the accumulated service

up to any node does not exceed a positive number Q (vehicle capacity). A secondary objective is often

either to minimize the total distance traveled or the duration of the routes. All problem parameters,

such as customer demands and time windows, are assumed to be known with certainty. Moreover, each

customer must be served by exactly one vehicle, thus prohibiting split service and multiple visits. The

tours correspond to feasible routes starting and ending at the depot. Some of the most useful

applications of the VRPTW include bank deliveries, postal deliveries, industrial refuse collection,

national franchise restaurant services, school bus routing, security patrol services and JIT (just in time)

manufacturing.

The VRPTW has been the subject of intensive research efforts for both heuristic and exact

optimization approaches. Early surveys of solution techniques for the VRPTW can be found in Golden

and Assad (1986), Desrochers et al. (1988), Golden and Assad (1988), and Solomon and Desrosiers

(1988). Desrosiers et al. (1995) and Cordeau et al. (2001) mostly focus on exact techniques. Further

details on these exact methods can be found in Larsen (1999) and Cook and Rich (1999). Because of

the high complexity level of the VRPTW and its wide applicability to real-life situations, solution

3

techniques capable of producing high-quality solutions in limited time, i.e., heuristics, are of prime

importance. Over the last few years, many authors have proposed new heuristic approaches, mostly

metaheuristics, for tackling the VRPTW. To our knowledge, these have not been comprehensively

surveyed and compared. The purpose of this two-part survey is to fill this gap. In the first part, we

examine traditional heuristic approaches, that is, route construction and route improvement (local

search) methods. These are of interest by themselves since they can provide good solutions with a low

computational effort, but also because they are a major component of all metaheuristics for the

VRPTW. Metaheuristics are discussed in the second part of this survey.

The remainder of this paper is organized as follows. Section 1 is devoted to a discussion of how

heuristics are to be evaluated. Route construction techniques are reviewed in section 2 and route

improvement (local search) methods in section 3. Finally, section 4 concludes the paper.

1. EVALUATION OF HEURISTICS
EVALUATION OF ANY heuristic method is subject to the comparison of a number of criteria that

relate to various aspects of algorithm performance. Examples of such criteria are running time, quality

of solution, ease of implementation, robustness and flexibility (Barr et al., 1995; Cordeau et al., 2002).

Since heuristic methods are ultimately designed to solve real world problems, flexibility is an

important consideration. An algorithm should be able to easily handle changes in the model, the

constraints and the objective function. As for robustness, should not overly be sensitive to differences

in problem characteristics: a robust heuristic should not perform poorly on any instance. Moreover, an

algorithm should be able to produce good solutions every time it is applied to a given instance. This is

to be highlighted since any heuristics are non-deterministic, and contain some random components

such as randomly chosen parameter values. The output of separate executions of these non-

deterministic methods on the same problem is in practice never the same. This makes it difficult to

analyze and compare results. Using only the best results of a non-deterministic heuristic, as is often

done in the literature, may create a false picture of its real performance. We thus consider average

results based on multiple executions on each problem an important basis for the comparison of non-

deterministic methods. Furthermore, it would also be important to report the worst case performance.

Extensive discussions on these subjects can be found in Cordeau et al. (2002).

The time a heuristic takes to produce good quality solutions can be crucial when choosing between

different techniques. Similarly the quality of the final solution, as measured by the objective function,

4

is important. How close the solution is to the optimal solution is a standard measure of quality or, if the

heuristic is designed to simply produce feasible solutions, then the ability of the heuristic to provide

such solutions is important.

There is generally a trade-off between run time and solution quality – the longer a heuristic is run the

better the quality of the final solution. A compromise is needed so that good quality solutions are

produced in a reasonable amount of time. Basically this trade-off between run time and solution quality

can be viewed in terms of a multiobjective optimization in which the two objectives are balanced.

Performance measures for heuristics can be plotted in two-dimensional space, with the first dimension

corresponding to run time and the second to solution quality. In that space, points such that there exist

no other points with better values on both dimensions are said to be Pareto optimal; they define

effective compromises between the objectives. This is illustrated in Figure 10 of section 3, where

points Antes et al. (1995), Russell (1995) and Bräysy (2001a) are the Pareto optimal ones. The choice

between different heuristic approaches yielding Pareto optimal results depends on the preferences of

the decision-maker and the situation at hand.

By far the most common method of evaluating the solution quality of a heuristic algorithm is

empirical analysis. In general, empirical analysis involves testing the heuristic across a wide range of

problem instances to get an idea of overall performance. To arrive at conclusions that have meaning in

a statistical sense, experimental design should ideally be used on different levels of the various

algorithm parameters and the results compared by appropriate techniques.

In the actual comparison of heuristics, one often faces a number of difficulties. The most obvious

difficulty is making the competition fair. Differences between machines first come to mind. In this

paper, we address this issue by adjusting reported running times by the factors given by Dongarra

(1998). Even more difficult issues to address are differences in coding skill, tuning and effort invested

(Hooker, 1995).

Other difficulties faced especially in the VRPTW context are that often only the best results obtained

during the whole computational study are reported. Moreover, in some cases the authors do not report

the number of runs or CPU time required to get the reported results. In these cases it is impossible to

conclude anything about the efficiency of the methods, or compare these methods with other

approaches. The only adequate basis for comparison of these methods would be optimal solutions,

since if enough time is available, it is always preferable to solve the problems to optimality using exact

methods. To be able to reach proper conclusions, in addition to the number of runs and time

5

consumption, one should answer questions such as what are the limits of the given algorithm, i.e., how

good are the best results that can be obtained using the particular approach, and how good a solution

can be obtained in a given amount of time. One should, in other words, report results obtained using

different computation times, and observe how much time is needed to obtain results of a given quality.

Moreover, in our opinion, figures describing the relationship between solution quality and computation

time would greatly facilitate the analysis. Taillard (2001) discusses extensively this issue and proposes

reporting an absolute computational effort, such as the number of iterations instead of computating

times, and using probability diagrams based on repeated Mann-Whitney statistical tests. Obviously,

such an approach is not possible when one relies on previously published results as we do here.

In the VRPTW context, the most common way to compare heuristics is the results obtained for

Solomon’s (1987) 56 benchmark problems. These problems have a hundred customers, a central depot,

capacity constraints, time windows on the time of delivery, and a total route time constraint. The C1

and C2 classes have customers located in clusters and in the R1 and R2 classes the customers are at

random positions. The RC1 and RC2 classes contain a mix of both random and clustered customers.

Each class contains between 8 and 12 individual problem instances and all problems in any one class

have the same customer locations, and the same vehicle capacities; only the time windows differ. In

terms of time window density (the percentage of customers with time windows), the problems have

25%, 50%, 75%, and 100% time windows. The C1, R1 and RC1 problems have a short scheduling

horizon, and require 9 to 19 vehicles. Short horizon problems have vehicles that have small capacities

and short route times, and cannot service many customers at one time. Classes C2, R2 and RC2 are

more representative of “long-haul” delivery with longer scheduling horizons and fewer (2−4) vehicles.

Both travel time and distance are given by the Euclidean distance between points.

The results are usually ranked according to a hierarchical objective function, where the number of

vehicles is considered as the primary objective, and for the same number of vehicles, the secondary

objective is often either total traveled distance or total duration of routes. Therefore a solution requiring

fewer routes is always considered better than a solution with more routes, regardless of the total

traveled distance. According to Bräysy (2001b) these two objectives are very often conflicting,

meaning that the reduction in number of vehicles often causes increase in total traveled distance. Thus,

a better solution in terms of total distance can be obtained by increasing the number of routes. Some

other papers report similar findings, see for example Caseau et al. (1999).

6

2. ROUTE CONSTRUCTION HEURISTICS
ROUTE CONSTRUCTION heuristics select nodes (or arcs) sequentially until a feasible solution has

been created. Nodes are chosen based on some cost minimization criterion, often subject to the

restriction that the selection does not create a violation of vehicle capacity or time window constraints.

Sequential methods construct one route at a time, while parallel methods build several routes

simultaneously.

Solomon (1986) proposes a so-called route-first cluster-second scheme using a Giant-Tour Heuristic.

First the customers are scheduled into one giant tour and then this tour is divided into a number of

smaller routes. The initial giant tour could, for example, be generated as a traveling salesman tour

without considering the capacity and time constraints. No computational results are given in the paper

for the heuristic.

Solomon (1987) describes several heuristics for the VRPTW. One of the methods is an extension to

the savings heuristic of Clarke and Wright (1964). The savings method, originally developed for the

classical VRP, is probably the best-known route construction heuristic. It begins with a solution in

which every customer is supplied individually by a separate route. Combining the two routes serving

respectively customers i and j results in a cost savings of .00 ijjiij dddS −+= Clarke and Wright

(1964) select the arc (i, j) linking customers i and j with maximum Sij subject to the requirement that

the combined route is feasible. With this convention, the route combinination operation is applied

iteratively. In combining routes, one can simultaneously form partial routes for all vehicles or

sequentially add customers to a given route until the vehicle is fully loaded. To account for both the

spatial and temporal closeness of customers, Solomon sets a limit to the waiting time of the route. The

savings method is illustrated in Figure 1.

Figure 1. The savings heuristic. In the left part, customers i and j are served by separate routes; in the

right part, the routes are combined by inserting customer j after i.

I i I j I i I j

7

The second heuristic, a time oriented nearest-neighbor, starts every route by finding an unrouted

customer closest to the depot. At every subsequent iteration, the heuristic searches for the customer

closest to the last customer added into the route and adds it at the end of the route. A new route is

started any time the search fails to find a feasible insertion place, unless there are no more unrouted

customers left. The metric used to measure the closeness of any pair of customers attempts to account

for both geographical and temporal closeness of customers.

The most successful of the three proposed sequential insertion heuristics is called I1. A route is first

initialized with a “seed” customer and the remaining unrouted customers are added into this route until

it is full with respect to the scheduling horizon and/or capacity constraint. If unrouted customers

remain, the initializations and insertion procedures are then repeated until all customers are serviced.

The seed customers are selected by finding either the geographically farthest unrouted customer in

relation to the depot or the unrouted customer with the lowest allowed starting time for service. After

initializing the current route with a seed customer, the method uses two subsequently defined criteria

),,(1 juic and ),,(2 juic to select customer u for insertion between adjacent customers i and j in the

current partial route. Let (i0, i1, i2, …, im) be the current route with i0 and im representing the depot. For

each unrouted customer u, we first compute its best feasible insertion cost on the route as

Next, the best customer u* to be inserted in the route is the one for which

Client u* is then inserted into the route between i(u*) and j(u*). When no more customers with feasible

insertions can be found, the method starts a new route, unless it has already routed all customers. More

precisely ),,(1 juic is calculated as

(5) ,),,(
(4) ,0),,(

,0 ,0 ,1 e wher
(3) ),,,(),,(),,(

12

,11

2121

1221111

jju

ijujiu

bbjuic
dddjuic

juicjuicjuic

−=

≥−+=
≥≥=+

+=

μμ
αααα
αα

{ } (2) feasible is route and unrouted is |))(,),(( max))(,),(( 2***2 uujuuicujuuic
u

=

(1) , ),,( min))(,),(( 11,…,11 ρρρ iuicujuuic m −==

8

and diu, duj and dij are distances between customers i and u, u and j and i and j respectively. Parameter μ

controls the savings in distance and bju denotes the new time for service to begin at customer j, given

that u is inserted on the route and bj is the beginning of service before insertion. The criterion

),,(2 juic is calculated as follows

Parameter λ is used to define how much the best insertion place for an unrouted customer depends on

its distance from the depot and on the other hand how much the best place depends on the extra

distance and extra time required to visit the customer by the current vehicle. The second type of the

proposed insertion heuristics (I2) aims to select customers whose insertion costs minimize a measure of

total route distance and time and the third approach (I3) accounts for the urgency of servicing a

customer.

Dullaert (2000a and 2000b) argues that Solomon’s time insertion criterion ),,(12 juic underestimates

the additional time needed to insert a new customer u between the depot and the first customer in the

partially constructed route. This can cause the insertion criterion to select suboptimal insertion places

for unrouted customers. Thus, a route with a relatively small number of customers can have a larger

schedule time than necessary. The author introduces new time insertion criteria to solve the problem

and concludes that the new criteria offer significant cost savings starting from more than 50%. These

cost savings, however, decrease as the number of customers per route increases.

The time oriented sweep heuristic of Solomon (1987) is based on the idea of decomposing the

problem into a clustering stage and a scheduling stage. In the first phase, customers are assigned to

vehicles as in the original sweep heuristic (Gillett and Miller 1974). Here a “center of gravity” is

computed and the customers are partitioned according to their polar angle. In the second phase

customers assigned to a vehicle are scheduled using an insertion heuristic of type I1.

Potvin and Rousseau (1993) introduce a parallel version of Solomon’s insertion heuristic I1, where

the set of m routes is initialized at once. The authors use Solomon’s sequential insertion heuristic to

determine the initial number of routes and the set of seed customers. The selection of the next customer

to be inserted is based on a generalized regret measure over all routes. A large regret measure means

that there is a large gap between the best insertion place for a customer and its best insertion places in

the other routes.

(6) .0 ),,,(),,( 102 ≥−= λλ juicdjuic u

9

Foisy and Potvin (1993) implemented the above-described parallel version of Solomon’s insertion

heuristic on parallel hardware consisting of 2–6 Sun 3 workstation transputers. The parallelism is

exploited in the calculation of insertion cost for each customer. The selection of the best customer for

insertion is then run only on half of the available processors. To reduce the unequal workload among

the processors, unrouted customers are reassigned among the processors so as to reduce the average

processor’s idle time. The authors conclude that the overall reduction in computation time is linear with

the number of processors for the distributed part of the heuristic algorithm.

Ioannou et al. (2001) use the generic sequential insertion framework proposed by Solomon (1987) to

solve a number of theoretical benchmark problems and an industrial example from the food industry.

The proposed approach is based on new criteria for customer selection and insertion that are motivated

by the minimization function of the greedy look-ahead solution approach of Atkinson (1994). The

basic idea behind the criteria is that a customer u selected for insertion into a route should minimize the

impact of the insertion on the customers already on the route under construction, on all non-routed

customers, and on the time window of customer u himself.

Balakrishnan (1993) describes three heuristics for the vehicle routing problem with soft time

windows (VRPSTW). The heuristics are based on nearest-neighbor and Clarke-Wright savings rules

and they differ only in the way used to determine the first customer on a route and in the criteria used

to identify the next customer for insertion. The motivation behind VRPSTW is that by allowing limited

time window violations for some customers, it may be possible to obtain significant reductions in the

number of vehicles required and/or the total distance or time of all routes. Among the soft time window

problem instances, dial-a-ride problems play a central role.

Bramel and Simchi-Levi (1996) propose an asymptotically optimal heuristic based on the idea of

solving the capacitated location problem with time windows (CLPTW). In CLPTW, the objective is to

select a subset of possible sites, to locate one vehicle to each site and to assign customers to the

vehicles. In the VRPTW context, this selection of locations for vehicles refers to selecting a set of seed

customers that initialize the routes. The authors use a Lagrangian relaxation based technique to solve

the CLPTW and the other customers are inserted in greedy order into simple tours by favoring

customers that least increase the distance traveled. The authors conclude that their heuristic provides a

better solution than Solomon’s heuristic for 25 of the 56 problems using reasonable running times.

Table 1 compares some of the described route construction algorithms. The first column to the left

indicates the authors. Columns R1, R2, C1, C2, RC1 and RC2 present the average number of vehicles

10

and average total distance with respect to the six problem groups of Solomon (1987). Finally, the

rightmost column indicates the cumulative number of vehicles and cumulative total distance over all 56

test problems. In the lower part of the Table, we report information regarding the computer used,

number of runs and average time consumption in minutes as reported by the authors. We could not

include all the algorithms described in the Table due to lack of information (not all authors report

results properly or use Solomon’s problem set). In Table 1, the number of vehicles is the primary

minimization objective and the secondary objective is the total duration of routes in Solomon (1987)

and Potvin and Rousseau (1993), and the total distance in Ioannou et al. (2001). Thus, in some cases

there may be a slight over-estimation of the total distance values of Solomon (1987) and Potvin and

Rousseau (1993). The methods by Solomon (1987) and Potvin and Rousseau (1993) are coded in

Fortran and Ioannou et al. (2001) does not report the used programming language. Finally, since we

used rounded distance measures reported by other authors to calculate the Cumulative Total Distance

(CTD), we rounded the values to integers in Tables 1 and 2.

It seems that Ioannou et al. (2001) produce the best results, though at the cost of higher computation

times. As for the other two methods, Solomon (1987) seems to be better than Potvin and Rousseau

(1993) in clustered problem groups C1 and C2, while the opposite is true for the other problem groups.

These heuristics are very fast and there are no significant differences in the computational burden, if

one takes into account the differences in the hardware used. Compared to local search approaches,

these construction heuristics are considerably faster, as one can see from Figure 10. However, these

simple procedures lack in solution quality compared to more sophisticated approaches.

TABLE 1

Route construction heuristics. For all algorithms the average results for Solomon’s benchmarks are

described. The notations CNV and CTD in the rightmost column indicate the cumulative number of

vehicles and cumulative total distance over all 56 test problems.

Author R1 R2 C1 C2 RC1 RC2 CNV/CTD
(1) Solomon (1987) 13.58

1436.7
3.27

1402.4
10.00
951.9

3.13
692.7

13.50
1596.5

3.88
1682.1

453
73004

(2) Potvin et al. (1993) 13.33
1509.04

3.09
1386.67

10.67
1343.69

3.38
797.59

13.38
1723.72

3.63
1651.05

453
78834

(3) Ioannou et al. (2001) 12.67
1370

3.09
1310

10.00
865

3.13
662

12.50
1512

3.50
1483

429
67891

(1) DEC 10, 1 run, 0.6 min., (2) IBM PC, 1 run, 19.6 min., (3) Intel Pentium 133 MHz, 1 run, 4.0 min.

11

3. SOLUTION IMPROVEMENT METHODS
CLASSICAL LOCAL SEARCH methods form a general class of approximate heuristics based on the

concept of iteratively improving the solution to a problem by exploring neighboring ones. In order to

design a local search algorithm, one typically needs to specify the following choices: How an initial

feasible solution is generated, what move-generation mechanism to use, the acceptance criterion and

the stopping test. The move-generation mechanism creates the neighboring solutions by changing one

attribute or a combination of attributes of a given solution. Here attribute could refer for example to

arcs connecting a pair of customers. Once a neighboring solution is identified, it is compared against

the current solution. If the neighboring solution is better, it replaces the current solution, and the search

continues. Two acceptance strategies are common in the VRPTW context, namely first-accept (FA)

and best-accept (BA). The first-accept strategy selects the first neighbor that satisfies the pre-defined

acceptance criterion. The best-accept strategy examines all neighbors satisfying the criteria and selects

the best among them.

The local optimum produced by any local search procedure can be very far from the optimal solution.

Local search methods perform a myopic search since they only accept sequentially solutions that

produce reductions in the objective function value. Thus the outcome depends heavily on initial

solutions and the neighborhood generation mechanism used. Most iterative improvement methods that

have been applied to vehicle routing and scheduling problems are edge-exchange algorithms.

The edge-exchange neighborhoods for a single route are set of tours that can be obtained from an

initial tour by replacing a set of k of its edges by another set of k edges. Such replacements are called k-

exchanges, and a tour that cannot be improved by a k-exchange is said to be k-optimal. Verifying k-

optimality requires )( knO time. 2-exchange or 2-opt is illustrated in Figure 2. It tries to improve the

tour by replacing two of its edges by two other edges and iterates until no further improvement is

possible.

Russell (1977) reports early work on the VRPTW for a k-optimal improvement heuristic. The so-

called M-Tour approach was effective in solving an actual problem with a few time constrained

customers. A solution for a 163-customer problem with 15% time constrained customers was generated

in less than 90 seconds of IBM 370/168 CPU time.

Efficient implementations for speeding up the screening of infeasible solutions and the evaluation of

the objective function are reported in Savelsbergh (1986), Solomon and Desrosiers (1988), Solomon,

12

Baker and Schaffer (1988), Savelsbergh (1990) and Savelsbergh (1992). The techniques used involve

preprocessing, tailored updating mechanisms and lexicographic search strategies.

Figure. 2. 2-opt exchange operator. The edges (i, i+1) and (j, j+1) are replaced by edges (i, j) and (i+1,

j+1), thus reversing the direction of customers between i+1 and j.

Baker and Schaffer (1986) report on a computational study of route improvement procedures, which

are applied to heuristically generated initial solutions. Time-oriented nearest neighbor and three

different cheapest insertion algorithms with differing cost functions are used for solution construction

purposes. The cost functions consider one or more of the following components: distance, increase in

arrival time and waiting time. The improvement methods considered are extensions to the VRPTW of

the 2-opt and 3-opt edge exchange procedures of Lin (1965). Both intra-route and inter-route

exchanges are tested. The authors conclude that the best overall solutions are usually obtained from the

best starting solutions and that generally the cheapest insertion procedures outperformed the nearest

neighbor ones. The authors also conclude that only less than 10% of the solution improvements involve

the reversal of the orientation of a sequence of two or more customers.

Van Landeghem (1988) presents a bi-criteria heuristic based on the savings method of Clarke and

Wright (1964). More precisely, the author proposes combining the original savings measure in terms of

travel time with so-called “loss of flexibility”. The flexibility is defined as the difference between

customer time window length and route time window length after combining. Route time window

refers to the difference between time slots inside which a vehicle can start servicing the first and last

customers on the route. In the end, the results are improved using simple customer reinsertions. A

closely related operator is the Or-opt introduced by Or (1976) for the traveling salesman problem. The

basic idea is to relocate a chain of l consecutive vertices (customers). This is achieved by replacing

three edges in the original tour by three new ones without modifying the orientation of the route as

illustrated in Figure 3.

A jA i

Ij+1

A jA i

Ij+1

13

Figure 3. The Or-opt operator. Customers i and i+1 are relocated to be served between two customers j
and j+1 instead of customers i-1 and i+2. This is performed by replacing 3 edges (i-1, i), (i+1, i+2) and

(j, j+1) by the edges (i-1, i+2), (j, i) and (i+1, j+1), preserving the orientation of the route.

Koskosidis et al. (1992) describe an extension of the cluster-first, route-second algorithm of Fisher and

Jaikumar (1981) for the variant of the VRP with soft time window constraints, where the time windows

can be violated at a cost. The problem is decomposed heuristically into a capacitated clustering

problem, and a series of traveling salesman problems with soft time windows. The clustering problem

is solved with a greedy heuristic procedure that assigns customers to selected seeds according to a

regret function representing the penalty of not assigning the customer to its closest seed. Then an

attempt is made to find new seed customers with lower clustering cost, and perform local exchanges

between all customer pairs belonging to different clusters. For the routing part, the authors propose a

combination of a total enumeration algorithm, a reduced gradient scheduling algorithm, and the branch

exchange heuristic of Lin and Kernighan (1973). The iterative master-slave solution procedure

approximates linearly the clustering costs and improves the approximation successively through the

actual routing costs obtained. Numerical results based on randomly generated and benchmark problem

sets indicate that the algorithm outperforms Solomon’s insertion heuristic and 2-opt and 3-opt

improvement heuristics of Baker and Schaffer (1986), though at the cost of a clearly higher

computational effort.

Potvin and Rousseau (1995) compare different edge exchange heuristics for VRPTW (2-opt, 3-opt

and Or-opt) and introduce a new 2-opt* exchange heuristic. The basic idea in 2-opt* is to combine two

routes so that the last customers of a given route are introduced after the first customers of another

route, thus preserving the orientation of the routes. The operator is illustrated in Figure 4, where the

edges (i, i+1) and (j, j+1) are replaced by (i, j+1) and (j, i+1), i.e., the end portions of two routes are

exchanged. As a special case, it can combine two routes into one if edge (i, i+1) is the first one on its

A j
A i

I -1i

A j

A i

Ij+1

Ii-1

A i+1
A i+1

14

route and edge (j, j+1) the last one on its route or vice versa. A hybrid approach based on Or-opt and 2-

opt* exchanges is found to be particularly powerful. This approach oscillates between the two

neighborhoods by changing the operator each time local minimum is found. The authors test also an

implementation where the two operators are merged together. The initial solutions are created with

Solomon’s I1 heuristic.

Figure 4. 2-opt* operator. The customers served after customer i on the upper route are reinserted to be

served after customer j on the lower route and customers after j on the lower route are moved to be

served on the upper route after customer i. This is performed by replacing edges (i, i+1) and (j, j+1)

with edges (i, j+1) and (j, i+1).

Prosser and Shaw (1996) compare intra-route 2-opt by Lin (1965) and inter-route operators relocate,

exchange and cross, originally proposed by Savelsbergh (1992) for the classical VRP. The 2-opt works

by reversing part of a single route (see Figure 1). The relocate operator simply moves a customer visit

from one route to another. It is illustrated in Figure 5.

Figure 5. Relocate operator. The edges (i-1, i), (i, i+1) and (j, j+1) are replaced by (i-1, i+1), (j, i) and

(i, j+1), i.e., customer i from the origin route is placed into the destination route.

A j

Ij+1

A j

A i Ij+1A i

A j

A i

Ij+1

i-1

A j

A i

Ij+1

i-1

15

The exchange heuristic swaps two visits in different routes. This is pictured in Figure 6. Finally, cross

is similar to 2-opt* proposed by Potvin and Rousseau (1995) for VRPTW. Initially, a virtual vehicle,

which performs the visits not carried out by the real vehicles, exists. This virtual vehicle is different

from the real ones in two respects. First, the virtual vehicle can make an unlimited number of customer

visits. Second, the cost incurred by the virtual vehicle when it performs a customer visit is typically

higher than that incurred by a real vehicle.

Figure 6. The exchange operator. The edges (i-1, i), (i, i+1), (j-1, j) and (j, j+1) are replaced by (i-1, j),

(j, i+1), (j-1, i) and (i, j+1), i.e., two customers from different routes are simultaneously placed into the

other routes.

De Backer et al. (1997) report research similar to Prosser and Shaw (1996) in the Constraint

Programming (CP) context. CP is a paradigm for representing and solving a wide variety of problems.

Tackling combinatorial problems generally involves manipulating variables which can take a finite

number of values. In CP, a domain is associated with every variable. The domain is created by using

constraints on variables that restrict the possible combinations of values for the variables. Looking

locally at a particular constraint, the CP algorithm attempts to remove from the domain of each variable

involved in that constraint values that cannot be part of any solution. This reduction of a variable’s

domain triggers the examination of all constraints involving this variable, which in turn may reduce

other domains. This recursive process stops when either no new domain reduction has taken place or a

domain becomes empty. In constraint programming, the computation is driven by constraints, thus

giving them an active role. The problems are then solved using often complete search techniques such

as depth-first search and branch and bound. For more details on Constraint Programming, see, for

example, Jaffar and Lassez (1986) and Jaffar and Maher (1994).

A j

Ij+1 Ij+1

A i

A j
A i

i-1

j-1 j-1

16

Other frequently applied neighborhood operators are the λ-interchange of Osman (1993), the

CROSS-exchange of Taillard et al. (1997), the GENI-exchange of Gendreau et al. (1992) and ejection

chains (Glover, 1991 and 1992). The λ-exchange generation mechanism can be described as follows.

Given a solution for the problem represented by a set of routes },…,,…,,…,{ 1 kqp rrrrS = , a λ-

interchange between a pair of routes (rp, rq) is a replacement of a subset of customers prS ⊆1 of size |S1|

≤ λ by another subset qrS ⊆2 of size |S2| ≤ λ to get two new routes 21
‘ )( SSrr pp ∪−= ,

12
‘ )( SSrr qq ∪−= and a new neighboring solution },…,,…,,…,{´


1 kqp rrrrS = . The neighborhood Nλ(S)

of a given solution S is the set of all neighbors S´ generated in this way for a given value of λ.

In CROSS-exchanges, the basic idea is to first remove two edges (i-1, i), and (k, k+1) from a first

route while two edges (j-1, j) and (l, l+1) are removed from a second route. Then the segments i–k and

j–l, which may contain an arbitrary number of customers, are swapped by introducing the new edges (i-

1, j), (l, k+1), (j-1, i) and (k, l+1) as illustrated in Figure 7.

Figure 7. CROSS-exchange. Segments (i, k) on the upper route and (j, l) on the lower route are

simultaneously reinserted into the lower and upper routes, respectively. This is performed by replacing

edges (i-1, i), (k, k+1), (j-1, j) and (l, l+1) by edges (i-1, j), (l, k+1), (j-1, i) and (k, l+1). Note that the

orientation of both routes is preserved.

Ejection chains (Glover 1991 and 1992) are based on the notion of generating compound sequences

of moves, leading from one solution to another, by linked steps in which changes in selected elements

cause other elements to be ejected from their current state, position or value assignment. In the VRP

context, moves refer to the removal of a customer from its route and its reinsertion in another route.

The goal is to “make room” for a new customer in a route by first removing another customer from the

same route. In each phase within the ejection chain, one customer remains unrouted. The removal and

A j

Il+1

A i

i-1

j-1

A j

A i

i-1

I k

I l

Il+1

I l

I k

17

insertion procedures are repeated until one can insert a customer to another route without the need to

remove (eject) any customer. The GENI operator is an extension of the relocate neighborhood in which

a customer can also be inserted between the two customer nodes on the destination route that are

nearest to it, even if these customer nodes are not consecutive. The operator is illustrated in Figure 8.

Figure 8. The GENI-exchange operator. Customer i on the upper route is inserted into the lower route

between the customers j and k closest to it by adding the edges (j, i) and (i, k). Since j and k are not

consecutive, one has to reorder the lower route. Here the feasible tour is obtained by deleting edges (j,

j+1) and (k-1, k) and by relocating the path {j+1,…, k-1}.

Thompson and Psaraftis (1993) propose a method based on the concept of cyclic k-transfers that

involves transferring simultaneously k demands from route jI to route )( jI δ for each j and fixed integer

k. The set of routes }{ rI , r=1,…,m 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. A general methodology developed by Thompson and Orlin (1989)

is used for searching cyclic transfer neighborhoods. They transform the search for negative cost cyclic

transfers into a search for negative cost cycles in an auxiliary graph. Savelsbergh’s 2-opt (1986)

procedure is used to maintain local optimality of the routes at all times and the initial solutions are

constructed using the I1 heuristic of Solomon. The 3-cyclic 2-transfer operator is illustrated in Figure

9.

A j

Ij+1

A i

I -1i

A j

Ij+1

A i

I -1i

I k

k-1

i +1k I k k+1

I -1k

18

Figure 9. The cyclic transfer operator. The basic idea is to transfer simultaneously the customers

denoted by white circles in 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.

Antes and Derigs (1995) propose a parallel construction approach that constructs and improves

several tours simultaneously. The approach is based on the concept of negotiation between customers

and tours. First, each unrouted customer requests a service cost from every tour and sends a proposal to

the tour that offered the lowest price, and second, each tour selects the most efficient proposal. The

prices are calculated according to Solomon’s evaluation measures for insertion (heuristic I1). Once a

feasible solution is constructed, the number of tours is reduced by one and the problem is resolved. The

authors propose also a post-optimization approach, where some of the most inefficient customers are

first removed from the tours and then reinserted using the negotiation procedure described above.

Russell (1995) embeds global tour improvement procedures within the tour construction process. The

construction procedure used is similar to that in Potvin and Rousseau (1993). N seed points

representing fictious customers are first selected using the seed point generation procedure of Fisher

and Jaikumar (1981), originally proposed for the classical VRP. The basic idea is to use vehicle

capacity information to create sectors and decide the distance of the seeds from the depot within each

sector. Three ordering rules are used to select next customer for insertion, namely earliest time

window, farthest distance from depot and width of the time window augmented by distance from the

depot. The local search method employs a scheme developed by Christofides and Beasley (1984). In

this scheme, a move is performed by deleting and reinserting four customer points close to each other.

For each customer, the best two routes are first determined according to the insertion cost of Solomon

(1987), since it would be computationally intractable to evaluate all route assignments. This

I a
I b

I c

I d

I e
I f

I g

I h
Ii

Ij

2

3
Ik

IlIm
InIo

Ip 4
1

IlIm

Ik
InIo

IpI e

I d

I c

I aI b
I g

I h
Ii

IjI f
1

2

3

4

19

interchange procedure is applied after every k customers have been routed. This approach is compared

to the k-opt multiple tour branch exchange heuristic of Russell (1977). The author concludes that the

hybrid approach of embedding improvement into the construction procedure is superior compared to

the traditional two-phase approach, i.e., route construction followed by solution improvement.

Thangiah et al. (1995) examine the vehicle routing problems with time deadlines (VRPTD), i.e.,

without earliest time window. They create two heuristics based on principles of time-oriented sweep

and cheapest insertion procedures for solving the VRPTD, followed by λ-interchanges of Osman

(1993). The authors conclude that the two proposed heuristics perform well for problems in which the

customers are tightly clustered or have long deadlines.

Hamacher and Moll (1996) describe a heuristic for real life VRP’s with narrow time windows in the

context of delivery of groceries to restaurants. The algorithm is divided into two parts. In the clustering

step, the customers are partitioned into regionally bounded sets using the structure of the Minimal

Spanning Tree (MST). The MST is divided into subtrees, where nodes of each subtree represent the

customers belonging to one tour. Several weight functions based on the number of customers, distance,

total demand and time window types are used to determine whether a subtree leads to a cluster. Then

customers within these sets are routed using a simple cheapest insertion algorithm followed by a local

improvement phase, which cuts out pieces of the tour and inserts them back at another feasible location

within the same tour. If a feasible solution is not found, the remaining unrouted customers are

scheduled manually.

Shaw (1997) describes a Large Neighborhood Search (LNS) based upon rescheduling selected

customer visits using Constraint Programming techniques. LNS is analogous to the shuffling technique

used in job-shop scheduling (see, for example, Applegate and Cook, 1991), which is itself inspired

from the shifting bottleneck procedure of Adams et al. (1988). The search operates by choosing in a

randomized fashion a set of customer visits. The selected customers are removed from the schedule,

and then reinserted at optimal cost. To create opportunity for interchange of customer visits between

routes, the removed visits are chosen so that they are related. Here the term related refers to customers

that are geographically close to each other, served by the same vehicle, have similar demand for goods

and similar starting times for service. A branch and bound method coupled with Constraint

Programming is then used to reschedule removed visits. In the initial solution, each customer is served

by a separate vehicle. Due to high computational requirements, this approach can be applied only to

problems where the number of customers per route is relatively low.

20

Shaw (1998) uses an LNS approach similar to Shaw’s (1997) above for solving vehicle routing

problems. The basic difference is the usage of constraint based Limited Discrepancy Search (LDS) in

the reinsertion of customers within the branch and bound procedure. For more details about LDS, see

Harwey and Ginsberg (1995). The number of visits to be removed is increased during the search each

time a number of consecutive attempted moves have not resulted in an improvement of the cost. LDS is

used to explore the search tree in order of an increasing number of discrepancies, a discrepancy being a

branch against the best insertion places. For instance, a single discrepancy would consist in inserting a

customer at its second cheapest position.

Schrimpf et al. (2000) introduce also a methodology similar to LNS that the authors name “ruin and

recreate”. Three strategies are first used to remove a set of customers from a solution. The removed

customers are then reinserted in random order using a greedy cheapest insertion heuristic. The removal

procedure removes customers randomly, based on the distance to a randomly selected key customer,

and a set of succeeding customers on the same route with the key customer. To minimize the number of

routes, a fixed penalty is set for routes exceeding the desired minimum number. During the search,

solutions that worsen the objective function value are also accepted if the worsening is within a

threshold.

Caseau and Laburthe (1999) describe a heuristic specifically designed for large routing problems.

The authors introduce an LDS variation to the parallel cheapest insertion heuristic that branches

between the best and second best alternative routes for each customer if the differences in insertion

costs are small. During solution construction, three moves are considered after each insertion, namely

2-opt*, reinsertion of a chain of consecutive customers from a route r into another route r´, as well as a

simple customer transfer move. When no feasible insertion place can be found, three different types of

moves are considered to make room for the unrouted customer. The first move, swap, removes a chain

of consecutive customers from r and inserts it into another route r´. The second move, relocate,

removes a vertex from r, and inserts it into another route r´, which may recursively require that another

vertex is removed from r´, etc., followed by reoptimization of each route concerned by the move. The

last move, flush and relocate, first removes from r all nodes that can be directly relocated into another

route, before trying to insert customer ci. In cases where the number of customers on a route is less than

30, the order of the customers within the route is optimized using the exact constraint-based branch-

and-bound algorithm by Caseau and Laburthe (1997). Otherwise, in case of longer routes, 3-opt is used

21

to modify routes after each insertion. The authors also try to restrict the customers included in each

route to a particular geometric zone.

Hong and Park (1999) propose a two-phase heuristic algorithm that consists of a parallel insertion

method for clustering and a sequential linear goal programming procedure for routing. The primary

criterion for the algorithm is the minimization of the total traveled distance instead of the number of

vehicles and the second criterion is the minimization of the total customer waiting time. The seed

customers are selected by identifying customers that cannot be served on the same route due to time or

vehicle constraints. The remaining customers are inserted into these initialized tours so that the increase

in route distance and waiting time is minimal. Similar to Potvin and Rousseau (1993), customers with a

small number of feasible insertion locations and a large difference between the best and next best

insertion places are considered for clustering first (regret measure). At the end of the clustering stage,

groups are reformed using Or-opt and 2-opt improvement procedures. In the routing stage, the goal-

programming model is decomposed into two linear programming subproblems, where either total

distance or waiting time is minimized first. The authors report slightly better results than Potvin and

Rousseau (1993), though using longer computation time.

Cordone and Wolfer-Calvo (2001) propose a deterministic heuristic based on classical k-opt

exchanges combined with a procedure to reduce the number of routes. The special feature of the

algorithm is that it alternates between minimization of total distance and of total route duration to

escape from local minima. The algorithm builds a set of initial solutions using Solomon’s insertion

heuristic I1, applies a local search procedure (exchanges 2 or 3 arcs) to each of them, and chooses the

best one. The route reduction procedure tries to insert each customer of one route at a time into another

route. If simple insertion fails, a simple ejection chain (Glover, 1991 and 1992) is tried, where a

customer cj is first removed from the target route rn and inserted into some other route rm, before

inserting the current customer ci into rn. The authors use special implementation techniques to reduce

the computation time. The first technique is based on so-called macronodes. The macronode is a

collapse of whatever sequence of nodes into a single one easier to handle (see Cordone and Wolfler-

Calvo, 1997). The other techniques are exploring the k-neighborhood in lexicographic order (for details

see Savelsbergh 1986) and keeping in memory the best exchange for each route, each pair and each

triplet of routes.

Bräysy (2001a) describes several local search heuristics using a new three-phase approach for the

VRPTW. In the first phase, several initial solutions are created using the route construction heuristics

22

with different combinations of parameter values. In the second phase, an effort is put to reduce the

number of routes using a new ejection chain-based approach (Glover, 1991 and 1992) that considers

also reordering of the routes. In the third phase, Or-opt exchanges are used to minimize total traveled

distance. The first construction heuristics borrows its basic ideas from the studies of Solomon (1987)

and Russell (1995). Routes are built one at a time in sequential fashion and after k customers have been

inserted into the route, the route is reordered using Or-opt exchanges. In addition, new seed selection

schemes are introduced. The second heuristic draws its basic concepts from the Savings heuristic of

Clarke and Wright (1964). Here a parallel version of the Savings heuristic is implemented, and the

original measure of savings is modified to consider also changes in waiting times. Moreover, the

customers in the combined route are reordered before evaluating the saving incurred by uniting the two

routes.

Table 2 summarizes some of the results obtained by described local search algorithms. We could not

include all the algorithms described in the table due to lack of information (not all authors report results

properly or use Solomon’s problem set). In Table 2, most of the algorithms are deterministic in nature.

The only stochastic approaches are that of Russell (1995), Shaw (1997 and 1998) and Schrimpf et al.

(2000). Russell (1995) and Cordone and Wolfler-Calvo (2001) implemented their algorithm in Fortran,

and Potvin and Rousseau (1995), Antes and Derigs (1995), Shaw (1998) and Caseau and Laburthe

(1999) used C. Thompson and Psaraftis (1993), Prosser and Shaw (1996), Shaw (1997) and Schrimpf

et al. (2000) do not report the software used. The number of vehicles is considered as a primary

optimization criterion by all authors except Prosser and Shaw (1996) where only the total distance of

the routes is minimized. The secondary objective is total distance in most papers. Thompson and

Psaraftis (1993), Potvin and Rousseau (1995) and Russell (1995) optimize the total duration of routes;

that may cause an over-estimation of the total distance values, and should be taken into account in the

comparison.

According to Table 2, the methods of Schrimpf et al. (2000) and Bräysy (2001a) are the best ones

with respect to solution quality. The difference in the cumulative number of vehicles is about 14%

compared to the worst method by Prosser and Shaw (1996). The reason for this can be found in the

optimization criteria used: in Prosser and Shaw (1996), only the total distance of the routes is

considered. Schrimpf et al. (2000) dominates all other methods for four problem groups. For the easy

clustered problem group C1, Shaw (1997), Shaw (1998) and Caseau and Laburthe (1999) yield equally

good output, and in RC2 Bräysy (2001a) performs best. It is difficult to conclude anything regarding

23

the computational effort, as many of the authors do not report the CPU time or the number of runs

required to get the reported results. Given the information available, the methods of Russell (1995),

Caseau and Laburthe (1999) and Bräysy (2001a) appear to be the most efficient ones. It should also be

noted that, due to poor performance, Shaw (1997) and Shaw (1998) do not report the results for the

problem groups R2, C2 and RC2. These two procedures are thus not comparable with other approaches

in terms of robustness.

TABLE 2

Local search algorithms. For each method two average results for Solomon’s benchmarks are

presented. The rightmost CNV and CTD indicate the cumulative number of vehicles and cumulative

total distance over all test problems.

Author R1 R2 C1 C2 RC1 RC2 CNV/CTD
(1) Thompson et al. (1993) 13.00

1356.92
3.18

1276.00
10.00

916.67
3.00

644.63
13.00

1514.29
3.71

1634.43
438

68916
(2) Potvin et al. (1995) 13.33

1381.9
3.27

1293.4
10.00
902.9

3.13
653.2

13.25
1545.3

3.88
1595.1

448
69285

(3) Russell (1995) 12.66
1317

2.91
1167

10.00
930

3.00
681

12.38
1523

3.38
1398

424
65827

(4) Antes et al. (1995) 12.83
1386.46

3.09
1366.48

10.00
955.39

3.00
717.31

12.50
1545.92

3.38
1598.06

429
71158

(5) Prosser et al. (1996) 13.50
1242.40

4.09
977.12

10.00
843.84

3.13
607.58

13.50
1408.76

5.13
1111.37

471
58273

(6) Shaw (1997) 12.31
1205.06

____ 10.00
828.38

____ 12.00
1360.40

____ ____

(7) Shaw (1998) 12.33
1201.79

____ 10.00
828.38

____ 11.95
1364.17

____ ____

(8) Caseau et al. (1999) 12.42
1233.34

3.09
990.99

10.00
828.38

3.00
596.63

12.00
1403.74

3.38
1220.99

420
58927

(9) Schrimpf et al. (2000) 12.08
1211.53

2.82
949.27

10.00
828.38

3.00
589.86

11.88
1361.76

3.38
1097.63

412
56830

(10) Cordone et al. (2001) 12.50
1241.89

2.91
995.39

10.00
834.05

3.00
591.78

12.38
1408.87

3.38
1139.70

422
58481

(11) Bräysy (2001a) 12.17
1253.24

2.82
1039.56

10.00
832.88

3.00
593.49

11.88
1408.44

3.25
1244.96

412
59945

(1) PC/AT 12 MHz, 4 runs, 1.8 min., (2) Sparc workstation, −, 3.0 min., (3) PC/486/DX2 66 MHz, 3 runs, 1.4 min.,
(4) RS6000/530, 4 runs, 3.6 min., (5) −,−,− , (6) DEC Alpha, 3 runs, 2 hours, (7) Sun Ultra Sparc 143 MHz, 6 runs,
1 hour, (8) Pentium 300 MHz, 1 run, 5 min., (9) RS 6000, −, 30 min., (10) Pentium 166 MHz, 1 run, 15.7 min.,
(11) Pentium 200 MHz, 1 run, 4.6 min.,

24

The efficiency of the described methods is illustrated in Figure 10. We included in Figure 10 only

approaches where a sufficient amount of information is provided by the authors. At least the computer,

number of computational runs as well as the time consumption and number of vehicles must be

reported. From Figure 10, one can see that difference in time consumption between Solomon (1987),

Potvin and Rousseau (1993), Thompson and Psaraftis (1993) and Antes and Derigs (1995) is quite

small. Therefore only Antes and Derigs (1995), Russell (1995) and Bräysy (2001a) can be considered

as Pareto optimal in terms of solution quality and time consumption. There is no clear rule to determine

which Pareto optimal approach is the best. The choice depends on the preferences of the decision

maker. The methods by Antes and Derigs (1995) and Russell (1995) are a lot faster than the one in

Bräysy (2001a), but they fall behind in solution quality.

Figure 10. The efficiency of the described methods. The notation CNV refers to the cumulative

number of vehicles required to solve all 56 test problems. Note that the time consumption of each

method is normalized to Sun Sparc 10 using Dongarra’s (1998) factors to facilitate the analysis.

4. CONCLUSIONS
THE VEHICLE ROUTING problem with time windows is one of the classical research areas in

operations research with considerable economic significance. The NP-hardness of the VRPTW requires

heuristic solution strategies for most real-life instances. The research on approximation methods has,

Solomon (1987) and
Potvin et al. (1993)

Thompson et
al.(1993)

Russell (1995)

Antes et al. (1995)

Cordone et al. (2001)

Caseau et al. (1999)

Ioannou et al. (2001)

Bräysy (2001a)

405
410
415
420
425
430
435
440
445
450
455
460

0 5 10 15 20 25 30

Time in minutes

C
N

V

25

over the years, produced a wide variety of heuristic approaches for the VRPTW. In this paper, methods

based on classical solution construction and improvement techniques were comprehensively reviewed.

VRPTW heuristics are usually measured against two criteria: solution quality in terms of objective

function value and speed. In our opinion, simplicity of implementation, flexibility and robustness are

also essential attributes of good heuristics. By flexibility we mean the ability to accommodate the

various side constraints encountered in a majority of real-life applications. As for robustness, an

algorithm should still able to produce results under difficult circumstances such as when a problem

instance is pathological. These issues, as well as the question of how to evaluate heuristics, are

discussed in Section 1.

Recent composite heuristics were found to perform best in terms of solution quality, the most

efficient being those of Russell (1995) and Bräysy (2001a). These methods provide better results than

earlier simple heuristics, while being still quite fast. As heuristics need to be especially effective for

very large-scale problems, we expect work on these to intensify.

ACKNOWLEDGEMENTS

THIS WORK WAS partially supported by the Emil Aaltonen Foundation, the Canadian Natural

Science and Engineering Research Council, Liikesivistysrahasto and Volvo Foundations and TOP

project funded by the Research Council of Norway. This support is gratefully acknowledged. We

would also like to thank Dr. Geir Hasle (SINTEF Applied Mathematics, Norway) for his valuable

comments.

REFERENCES
Adams, J., E. Balas and D. Zawack (1988), “The Shifting Bottleneck Procedure for Job Shop Scheduling”, Management

Science 34, 391−401.

Antes, J. and U. Derigs (1995), “A New Parallel Tour Construction Algorithm for the Vehicle Routing Problem with Time

Windows”, Working Paper, Department of Economics and Computer Science, University of Köln, Germany.

Applegate, D and W. Cook (1991), “A Computational Study of the Job-Shop Scheduling Problem”, ORSA Journal On

Computing 3, 149−156.

Atkinson, J. B. (1994), “A Greedy Look-Ahead Heuristic for Combinatorial Optimisation: An Application to Vehicle

Scheduling with Time Windows”, Journal of the Operational Research Society 45, 673−684.

Baker, E.K. and J.R. Schaffer (1986), “Solution Improvement Heuristics for the Vehicle Routing and Scheduling Problem

with Time Window Constraints”, American Journal of Mathematical and Management Sciences 6, 261−300.

26

Balakrishnan, N. (1993), “Simple Heuristics for the Vehicle Routeing Problem with Soft Time Windows”, Journal of the

Operational Research Society 44, 279−287.

Barr, R. S., B.L. Golden, J.P. Kelly, M.G.C. Resende and W.R. Stewart (1995), “Designing and Reporting on

Computational Experiments with Heuristic Methods”, Journal of Heuristics 1, 9−32.

Bramel, J. and D. Simchi-Levi (1996), “Probabilistic Analyses and Practical Algorithms for the Vehicle Routing Problem

with Time Windows”, Operations Research 44, 501−509.

Bräysy, O. (2001a), “Fast Local Searches for the Vehicle Routing Problem with Time Windows”, To Appear in INFOR.

Bräysy, O. (2001b), Local Search and Variable Neighborhood Search Algorithms for the Vehicle Routing Problem with

Time Windows, Doctoral Dissertation, University of Vaasa, Finland.

Caseau, Y. and F. Laburthe (1997), “Solving Small TSPs with Constraints”, in Proceedings of the 14th International

Conference on Logic Programming, L. Naish (ed), 316−330, MIT Press, Cambridge.

Caseau, Y. and F. Laburthe (1999), “Heuristics for Large Constrained Vehicle Routing Problems”, Journal of Heuristics 5,

281−303.

Christofides, N. and J. Beasley (1984), “The Period Routing Problem”, Networks 14, 237−246.

Clarke, G. and J.W. Wright (1964), “Scheduling of Vehicles from a Central Depot to a Number of Delivery Points”,

Operations Research 12, 568−581.

Cook, W. and J.L. Rich (1999), “A Parallel Cutting-Plane Algorithm for the Vehicle Routing Problems with Time

Windows”, Technical Report TR99-04, Department of Computational and Applied Mathematics, Rice University,

Houston.

Cordeau, J.F., G. Desaulniers, J. Desrosiers, M. M. Solomon and F. Soumis (2001), “The VRP with Time Windows”, in

The Vehicle Routing Problem, SIAM Monographs on Discrete Mathematics and Applications, P. Toth and D. Vigo

(eds), 157−194, SIAM, Philadelphia.

Cordeau, J.-F., M. Gendreau, G. Laporte, J.-Y. Potvin and F. Semet (2002), “A Guide to Vehicle Routing Heuristics”,

Journal of the Operational Research Society 53, 512−522.

Cordone, R. and R. Wolfler-Calvo (1997), “A Note on Time Windows Constraints in Routing Problems”, Internal Report,

Department of Electronics and Information, Polytechnic of Milan, Milan, Italy.

Cordone, R. and R. Wolfler-Calvo (2001), “A Heuristic for the Vehicle Routing Problem with Time Windows”, Journal of

Heuristics 7, 107−129.

Crainic, T. G. and G. Laporte (1997), “Planning Models for Freight Transportation”, European Journal of Operational

Research 97, 409−438.

De Backer B., V. Furnon, P. Prosser, P. Kilby and P. Shaw (1997), “Local Search in Constraint Programming: Application

to the Vehicle Routing Problem”, in Proceedings of CP-97 Workshop on Industrial Constraint-Directed Scheduling, 1–

15, Schloss Hagenberg, Austria.

Desrochers, M., J.K. Lenstra, M.W.P. Savelsbergh and F. Soumis (1988), “Vehicle Routing with Time Windows:

Optimization and Approximation”, in Vehicle Routing: Methods and Studies, B. Golden and A. Assad (eds), 65–84,

Elsevier Science Publishers, Amsterdam.

27

Desrosiers, J, Y. Dumas, M.M. Solomon and F. Soumis (1995), “Time Constrained Routing and Scheduling”, in Handbooks

in Operations Research and Management Science 8: Network Routing, M.O. Ball, T.L. Magnanti, C.L. Monma, G.L.

Nemhauser (eds), 35–139, Elsevier Science Publishers, Amsterdam.

Dongarra, J. (1998), “Performance of Various Computers Using Standard Linear Equations Software”, Report CS-89-85,

Department of Computer Science, University of Tennessee, U.S.A.

Dullaert, W. (2000a), “Impact of Relative Route Length on the Choice of Time Insertion Criteria for Insertion Heuristics for

the Vehicle Routing Problem with Time Windows”, in Proceedings of the Rome Jubilee 2000 Conference Improving

Knowledge and Tools for Transportation and Logistics, B. Maurizio (ed.), 153−156, Faculty of Engineering, University

of Rome, Italy.

Dullaert, W. (2000b), “A Sequential Insertion Heuristic for the Vehicle Routing Problem with Time Windows with

Relatively Few Customers Per Route”, Research paper, Faculty of Applied Economics UFSIA-RUCA; 2000:014,

Antwerpen, Belgium.

Fisher, M. and R. Jaikumar (1981), “A Generalized Assignment Heuristic for Vehicle Routing”, Networks 11, 109−124.

Foisy, C. and J.-Y. Potvin. (1993), “Implementing an Insertion Heuristic for Vehicle Routing on Parallel Hardware.

Computers and Operations Research 20, 737−745.

Gendreau, M., A. Hertz and G. Laporte (1992), ”A New Insertion and Postoptimization Procedures for the Traveling

Salesman Problem”, Operations Research 40, 1086−1093.

Gillett, B. and L.R. Miller (1974), “A Heuristic Algorithm for the Vehicle Dispatch Problem”, Operations Research 22,

340−349.

Glover, F. (1991), ”Multilevel Tabu Search and Embedded Search Neighborhoods for the Traveling Salesman Problem”,

Working Paper, College of Business & Administration, University of Colorado, Boulder.

Glover, F. (1992), ”New Ejection Chain and Alternating Path Methods for Traveling Salesman Problems”, in Computer

Science and Operations Research: New Developments in Their Interfaces, O. Balci, R. Sharda, and S. Zenios (eds),

449−509, Pergamon Press, Oxford.

Golden, B.L. and A.A. Assad (1986), “Perspectives on Vehicle Routing: Exciting New Developments”, Operations

Research 34, 803−809.

Golden, B.L. and E.A. Wasil (1987), “Computerized Vehicle Routing in the Soft Drink Industry”, Operations Research 35,

6−17.

Golden, B.L. and A.A. Assad (1988), Vehicle Routing: Methods and Studies, Elsevier Science Publishers, Amsterdam.

Halse, K. (1992), Modeling and Solving Complex Vehicle Routing Problems, Ph. D. thesis, Institute of Mathematical

Modelling, Technical University of Denmark, Lyngby, Denmark.

Hamacher, A. and C. Moll (1996), “A New Heuristic for Vehicle Routing with Narrow Time Windows”, in Operations

Research Proceedings 1996, Selected papers of the symposium (SOR`96), Braunschweig, Germany, September 3-6th, U.

Derigs, W. Gaul, R H. Möhring and K.-P. Schuster (eds), 301−306, Springer Verlag, New York.

Harwey, W. and M. Ginsberg (1995), “Limited Discrepancy Search”, in Proceedings of the 14th IJCAI, T. Dean (ed),

607−615, Morgan Kaufmann, San Francisco.

28

Hong, S.-C. and Y.-B. Park (1999), “A Heuristic for Bi-objective Vehicle Routing with Time Window Constraints”,

International Journal of Production Economics 62, 249−258.

Hooker, J. N. (1995), “Testing Heuristics: We Have It All Wrong”, Journal of Heuristics 1, 33−42.

Ioannou, G., M. Kritikos and G. Prastacos (2001), “A Greedy Look-Ahead Heuristic for the Vehicle Routing Problem with

Time Windows”, Journal of the Operational Research Society 52, 523−537.

Jaffar, J. and J.-L. Lassez (1986), “Constraint Logic Programming”, Technical report 86/73, Department of Computer

Science, Monash University, Australia.

Jaffar, J. and M.J. Maher (1994), “Constraint Logic Programming: A Survey”, Journal of Logic Programming 19/20,

503−581.

King, G.F. and C.F. Mast (1997), “Excess Travel: Causes, Extent and Consequences”, Transportation Research Record

1111, 126−134.

Kohl, N. (1995), Exact Methods for Time Constrained Routing and Related Scheduling Problems, Ph.D. thesis, Institute of

Mathematical Modelling, Technical University of Denmark, Lyngby, Denmark.

Kohl, N., J. Desrosiers, O.B.G. Madsen, M.M. Solomon and F. Soumis (1999), “2-path Cuts for the Vehicle Routing

Problem with Time Windows”, Transportation Science 33, 101−116.

Koskosidis, Y.A., W.B. Powell and M.M. Solomon (1992), “An Optimization-Based Heuristic for Vehicle Routing and

Scheduling with Soft Time Window Constraints”, Transportation Science 26, 69−85.

Larsen, J. (1999), Parallelization of the Vehicle Routing Problem with Time Windows, Ph.D. thesis, Institute of

Mathematical Modelling, Technical University of Denmark, Lyngby, Denmark.

Lin, S. (1965), “Computer Solutions of the Traveling Salesman Problem”, Bell System Technical Journal 44, 2245−2269.

Lin, S. and B. Kernighan (1973), “An Effective Heuristic Algorithm for the Traveling Salesman Problem”, Operations

Research 21, 498−516.

Or, I. (1976), Traveling Salesman-Type Combinatorial Problems and their Relation to the Logistics of Regional Blood

Banking, Ph.D. thesis, Northwestern University, Evanston, Illinois.

Osman, I.H. (1993), ”Metastrategy Simulated Annealing and Tabu Search Algorithms for the Vehicle Routing Problems”,

Annals of Operations Research 41, 421−452.

Potvin, J.-Y. and J.-M. Rousseau (1993), “A Parallel Route Building Algorithm for the Vehicle Routing and Scheduling

Problem with Time Windows”, European Journal of Operational Research 66, 331−340.

Potvin, J.-Y. and J.-M. Rousseau (1995), “An Exchange Heuristic for Routeing Problems with Time Windows”, Journal of

the Operational Research Society 46, 1433−1446.

Prosser, P. and P. Shaw (1996), “Study of Greedy Search with Multiple Improvement Heuristics for Vehicle Routing

Problems”, Working Paper, University of Strathclyde, Glasgow, Scotland.

Russell, R. (1977), “An Effective Heuristic for the M-tour Traveling Salesman Problem with Some Side Conditions”,

Operations Research 25, 517−524.

Russell, R.A. (1995), “Hybrid Heuristics for the Vehicle Routing Problem with Time Windows”, Transportation Science

29, 156−166.

29

Savelsbergh, M.W.P. (1986), “Local Search in Routing Problems with Time Windows”, Annals of Operations Research 4,

285−305.

Savelsbergh, M.W.P. (1990), “An Efficient Implementation of Local Search Algorithms for Constrained Routing

Problems”, European Journal of Operational Research 47, 75−85.

Savelsbergh, M.W.P. (1992), “The Vehicle Routing Problem with Time Windows: Minimizing Route Duration”, Journal

on Computing 4, 146−154.

Schrimpf, G., J. Schneider, H. Stamm-Wilbrandt and G. Dueck (2000), “Record Breaking Optimization Results Using the

Ruin and Recreate Principle”, Journal of Computational Physics 159, 139−171.

Shaw, P. (1997), “A New Local Search Algorithm Providing High Quality Solutions to Vehicle Routing Problems”,

Working Paper, Department of Computer Science, University of Strathclyde, Glasgow, Scotland.

Shaw, P. (1998), “Using Constraint Programming and Local Search Methods to Solve Vehicle Routing Problems”, in

Principles and Practice of Constraint Programming – CP98, Lecture Notes in Computer Science, M. Maher and J.-F.

Puget (eds), 417−431, Springer-Verlag, New York.

Solomon, M.M. (1986), “On the Worst-Case Performance of Some Heuristics for the Vehicle Routing and Scheduling

Problem with Time Window Constraints”, Networks 16, 161−174.

Solomon, M.M. (1987), “Algorithms for the Vehicle Routing and Scheduling Problems with Time Window Constraints”,

Operations Research 35, 254−265.

Solomon, M.M., E.K. Baker and J.R. Schaffer (1988), “Vehicle Routing and Scheduling Problems with Time Window

Constraints: Efficient Implementations of Solution Improvement Procedures”, in Vehicle Routing: Methods and Studies,

B. Golden and A. Assad (eds), 85–106, Elsevier Science Publishers, Amsterdam.

Solomon, M.M. and J. Desrosiers (1988), “Time Window Constrained Routing and Scheduling Problems”, Transportation

Science 22, 1−13.

Taillard, E., P. Badeau, M. Gendreau, F. Guertin and J.-Y. Potvin (1997), “A Tabu Search Heuristic for the Vehicle Routing

Problem with Soft Time Windows”, Transportation Science 31, 170−186.

Taillard, È. D. (2001), “Comparison of Non-Deterministic Iterative Methods”, Presented at MIC’2001, 4th Metaheuristics

International Conference, July 16th-20th, Porto, Portugal.

Thangiah, S.R., I.H. Osman, R. Vinayagamoorthy and T. Sun (1995), ”Algorithms for the Vehicle Routing Problems with

Time Deadlines”, American Journal of Mathematical and Management Sciences 13, 323−355.

Thompson, P. M. and J. B. Orlin (1989), “Theory of Cyclic Transfers”, Working Paper, Operations Research Center, MIT,

Cambridge.

Thompson, P. M. and H.N. Psaraftis (1993), “Cyclic Transfer Algorithms for Multivehicle Routing and Scheduling

Problems”, Operations Research 41, 935−946.

Van Landeghem, H.R.G. (1988), “A Bi-criteria Heuristic for the Vehicle Routing Problem with Time Windows”, European

Journal of Operations Research 36, 217−226.