Sei sulla pagina 1di 24

624 IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, VOL. 13, NO.

3, JUNE 2009
Arc-Guided Evolutionary Algorithm for the Vehicle
Routing Problem with Time Windows
Panagiotis P. Repoussis, Christos D. Tarantilis, and George Ioannou
AbstractThis paper presents an arc-guided evolutionary
algorithm for solving the vehicle routing problem with time
windows, which is a well-known combinatorial optimization
problem that addresses the service of a set of customers using
a homogeneous eet of capacitated vehicles within xed time
intervals. The objective is to minimize the eet size following
routes of minimum distance. The proposed method evolves a
population of individuals on the basis of an ( +) evolution
strategy; at each generation, a new intermediate population of
individuals is generated, using a discrete arc-based representation
combined with a binary vector of strategy parameters. Each
offspring is produced via mutation out of arcs extracted from
parent individuals. The selection of arcs is dictated by the strategy
parameters and is based on their frequency of appearance and
the diversity of the population. A multiparent recombination
operator enables the self-adaptation of the strategy parameters,
while each offspring is further improved via novel memory-based
trajectory local search algorithms. For the selection of survivors,
a deterministic scheme is followed. Experimental results on
well-known large-scale benchmark datasets of the literature
demonstrate the competitiveness of the proposed method.
Index TermsEvolution strategies, guided local search, tabu
search, vehicle routing, vehicle scheduling.
I. INTRODUCTION
T
HE VEHICLE routing problem with time windows
(VRPTW) is a well-known NP-hard combinatorial opti-
mization problem encountered in several transportation and
logistics systems [1]. It can be used to model a variety of
real-life applications, e.g., bank deliveries [2], commercial
waste collection [3], industrial waste collection [4], bus routing
[5], vendor deliveries for just-in-time manufacturing [6], gro-
cery distribution [7], home delivery, and technical-dispatching
services [8].
The VRPTW can be described as the problem of designing
least cost routes from a depot to a set of customers of
known demand. Customers are assumed to be geographically
dispersed within a distance radius that allows their service
to be performed within a daily planning horizon. The routes
must be designed such that each customer is visited only
once by exactly one vehicle within a given time interval.
The latter models the earliest and the latest times during the
Manuscript received September 13, 2007; revised August 22, 2008; accepted
November 2, 2008. Current version published June 10, 2009. This work
is supported by the General Secretariat of Research and Technology under
Contract EP-1253-01.
The authors are with the Management Science Laboratory, Department of
Management Science and Technology, Athens University of Economics and
Business, Athens, Greece 11362 (e-mail: prepousi@aueb.gr; tarantil@aueb.gr;
ioannou@aueb.gr).
Digital Object Identier 10.1109/TEVC.2008.2011740
day that service can take place. Vehicles must remain at the
customer locations during the service and furthermore there
is a waiting time if a vehicle arrives before the customers
earliest time window bound. Finally, all feasible routes start
and end at the depot, while the accumulated load up to any
customer of a route must not exceed the capacity of the
vehicle.
The VRPTW has multiple objectives. The goal is to deter-
mine the minimum number of vehicle routes and the optimal
sequence of customers visited by each vehicle, such that all
customers are served and all constraints imposed by vehicles
capacities, route duration times, and customers time windows
are satised. Typically, a lexicographic (hierarchical) ordering
of objectives is followed, i.e., the number of vehicle routes is
rst minimized and then, for the same number of vehicles, the
total travel time (or similarly the total travel distance) incurred
by the vehicle routes is minimized.
Due to its wide applicability and high complexity, the
VRPTW has generated substantial research efforts including
both exact and approximate solution approaches. Although
optimal solutions can be obtained using exact methods, the
computational time required to solve large scale problem
instances is still prohibitive. For this reason, the focus of
most researchers is toward the design of approximate methods
capable of producing high-quality solutions within reasonable
computational times. Early survey papers [1] and [9] provide
all necessary pointers and highlight solution methodologies
developed during the previous decade. More recent literature
reviews [10][12] reveal the latest algorithmic developments in
the elds of evolutionary algorithms, construction heuristics,
local search improvement heuristics, and metaheuristics.
This paper presents a solution method for the VRPTW.
The proposed approach follows the basic principles of the
neo-Darwinian model of organic evolution combined with a
memory-based trajectory local search algorithm. The main
effort is to monotonically evolve a population of individuals on
the basis of an (+)-evolution strategy [13]. Initiating from
a population of adequately diversied individuals, at each
generation a new intermediate population of individuals is
produced via mutation, while the survivors from the union of
parents and offspring are selected deterministically to form the
next generation population. The proposed approach utilizes a
discrete arc-based representation of individuals combined with
a binary vector of strategy parameters. The mutation operator
produces one offspring per population individual, while the
strategy parameters determine the corresponding mutation rate.
The idea is rst to ruin part of the parent preserving only
1051-8215/$25.00 2009 IEEE
REPOUSSIS et al.: ARC-GUIDED EVOLUTIONARY ALGORITHM FOR THE VEHICLE ROUTING PROBLEM WITH TIME WINDOWS 625
arcs and sequences of arcs that appear frequently in other
individuals of the population, and then to reinsert the removed
elements heuristically. To this end, a multiparent recombina-
tion operator is applied to the strategy parameters of each
individual. Finally, each offspring is further modied/improved
via a route elimination procedure and a novel memory-based
trajectory local search algorithm. Both algorithms utilize the
basic tabu search (TS) [14] framework to drive the search
process. However, the primary objective of the former is to
reduce the total number of vehicles, while the latter explores
the solution space on the basis of a guided local search (GLS)
[15] algorithm in an effort to reduce the total distance.
The contribution of this paper is vefold. First, a novel arc-
based discrete representation of individuals combined with
binary strategy parameters is proposed for the adaptation
of evolution strategies (ES) to the VRPTW. Second, a new
mutation operator is developed following the ruin-and-recreate
principle. Third, a multiparent recombination operator is pro-
posed that facilitates the self-adaption of mutation rates. Forth,
a sophisticated trajectory local search algorithm is developed
for distance minimization that improves upon the well-known
TS framework. Fifth, a particularly effective route elimina-
tion procedure is suggested. Computational experiments on
the Solomons [16] and the Gehring and Hombergers [17]
benchmark instances are reported. Compared to state-of-the-
art methods, the proposed solution approach produces high-
quality results, especially on large-scale problem instances
where the total number of vehicles is signicantly reduced.
The remainder of the paper is organized as follows: Sec-
tion II provides a comprehensive literature review on recent
solution methods proposed for the VRPTW. Section III devel-
ops the proposed arc-guided evolutionary algorithm and pro-
vides a thorough description of all algorithmic components and
mechanisms. Computational experiments assessing the proof
of concept and the quality of the proposed solution approach,
along with a comparative performance analysis, are presented
in Section IV. Finally, in Section V conclusions are drawn and
pointers for further research are provided.
II. LITERATURE REVIEW
A plethora of successful solution approaches has been pro-
posed for the VRPTW. The majority of these approaches are
hybrid, in the sense that they do not purely follow a particular
solution framework but they rather try to combine search
schemes, components, or other mechanisms, such as inten-
sication and diversication strategies, memory structures,
reactive mechanisms, randomization features, exact compo-
nents, and so on. Another common characteristic is the use
of route elimination procedures as independent algorithmic
components and the utilization of large neighborhoods. Below,
a brief description of recent solution approaches proposed for
the VRPTW is provided.
Brysy et al. [18] developed a two-phase multistart local
search approach, combined with a threshold accepting (TA)
[19] post-optimization procedure. In the rst phase, a cheap-
est insertion heuristic is used for the production of initial
solutions, followed by the so-called injection tree (IT) route
elimination heuristic. Given a subset of promising solutions,
the second phase incorporates a descent local search and
a standard TA implementation, coupled with a generalized
variant of the inter-route CROSS-exchange [20] neighborhood
structure.
Brysy [21] proposed a four-phase deterministic method
utilizing a variable neighborhood descent (VND) solution
framework [22]. Initially, several solutions are produced via a
cheapest insertion heuristic using different parameter settings.
Next, a breadth-rst node ejection chain (EC) [23] route
elimination procedure is applied, coupled with an intelligent
reordering insertion mechanism. In the third phase, a VND
oscillating between four parameterized inter- and intra-route
neighborhood structures is applied. An important feature is the
use of a twin-variable scheme. More specically, in addition to
the neighborhood change scheme, the parameter values used
by the neighborhood structures are also modied after each
successful cycle. Finally, a modied objective function (total
waiting time) is used to escape from local optimum solutions.
Pisinger and Ropke [24] developed an adaptive large neigh-
borhood search (LNS) approach. The latter consists of a
set of large neighborhoods which compete to modify the
current solution. In particular, a predened set of N

and
N
+
operators is chosen to remove and insert customers from
the current solution. At each iteration, the modied solution is
accepted if particular criteria dened by a simulated annealing
(SA) [25] master framework are satised. To this end, an adap-
tive layer controls stochastically the neighborhood selection
(roulette wheel) with a bias toward its past performance. For
diversication, a noise function is used within all operators.
Finally, in terms of eet size minimization, an additional stage
prior to the ordinary LNS is applied.
Bent and van Hentenryck [26] proposed a two-stage hybrid
metaheuristic algorithm. Initially, a SA is applied to minimize
the number of routes, while the second stage focuses on the
distance minimization using a modied LNS approach similar
to Shaw [27]. The main feature of the proposed SA is the
utilization of a customized lexicographic evaluation function.
The rst component of the latter is related to the eet size, the
second favors solutions containing routes with many customers
and routes with few customers over solutions, and the third
accounts for the minimal delay (see for details [28]). The
outer loop of the SA is restarted several times from the best
encountered solution. At each inner loop, although neighbor-
hoods and customers are randomly selected, the associated
sub-neighborhood is exhaustively examined. In the second
stage, the proposed LNS employs a number of modications
including a restart strategy, tighter lower bounds, and increased
number of allowed relocations.
Ibaraki et al. [29] proposed an adaptive multistart local
search (AMLS) approach for the vehicle routing problem with
general time windows (VRPGTW). The term general refers
to the situation where multiple soft time windows are assigned
to each customer, and the resulting penalty function can be
treated as a discontinuous nonnegative piecewise linear non-
convex function. Given the sequence of customers served by
each vehicle, a dynamic programming (DP) procedure is used
to determine the optimal service times such that the total
626 IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, VOL. 13, NO. 3, JUNE 2009
penalty is minimized. The above procedure is incorporated
within local search coupled with a sophisticated data structure.
On the other hand, the proposed AMLS operates on a basis
of a pool of solutions. Initiating from a number of randomly
generated solutions, at each iteration a new initial solution is
generated by combining routes from the solutions maintained
in the pool. The goal is to chose routes with the least possible
duplication of customers among those already selected, con-
sidering also their cost and diversity. Finally, local search is
applied to the provisional solution until a new local optimum
is obtained, while the pool is updated accordingly.
Later, Ibaraki et al. [30] modied the ILS implementation
of [29] in order to deal with convex and piecewise linear
time penalty functions for both small and large-scale vehicle
routing problems with soft time windows (without considering
multiple time windows for each customer). The complexity of
the associated DP algorithm is O(
k
log
k
) for each vehicle k,
while the time to evaluate a solution in various neighborhoods
is O(log
max
) amortized time, which is signicantly reduced
with respect to [29]. The proposed ILS solution approach
utilizes I-Opt, 2-Opt, 2-Opt*, Path Insertion, and I-CROSS-
exchange local moves within a VND framework following
an aspiration plus move strategy. Finally, several speed-up
techniques for the evaluation of neighboring solutions and
mechanisms for the pruning of neighborhoods (using distance
and time oriented neighbor-lists) are reported as well.
Lim and Zhang [31] proposed a two-stage multistart itera-
tive hill-climbing algorithm. Initial solutions are generated via
a squeaky-wheel optimization (SWO) framework [32] using
Solomons [16] I1 insertion heuristic. Next, a route elimination
procedure is applied that uses a data structure called ejection
pool (EP) to hold temporarily unserved customers. At each
iteration an unassign customer from the EP is selected and
inserted into the existing set of routes. The target route and the
insertion position are determined with respect to a weighted
combination of distance and service delay. In particular, the
insertion position is chosen randomly with a bias toward lower
insertion costs. If insertion is not feasible, relevant customers
are kicked out sequentially (starting from those with the largest
kick saving) and added to the EP until the route becomes feasi-
ble. Kick saving considers the distance reduction obtained and
the cost needed for the re-insertion into another route using the
minimal delay property of [28]. Finally, local search is applied.
The latter is equipped with two sequent iterative improvement
heuristics applied interchangeably. The rst performs an intra-
route improvement using 11, 01, 2-Opt, and Or-opt local
moves. When a local optimum is reached, an enumeration-
based E-Opt is applied. E-Opt selects a consecutive segment of
customers and determines the optimum ordering using branch-
and-bound for a predened maximum length of segments.
The second heuristic operates on pairs of routes using 2-Opt*
and CROSS-exchanges. If both heuristics fail to improve the
solution at hand, a generalized ejection chain (GEC) procedure
is applied. GEC allows the removal and insertion of a segment
of consecutive customers, while the search for cost-decreasing
chains is performed using the LNS algorithm of [33]. If GEC
fails to nd a better solution, the best solution found during
the search is perturbed via a TS algorithm. The proposed
TS implementation uses 2-Opt* and CROSS-exchanges, while
at each iteration all feasible non-tabu moves are stored in a
candidate list. The selection from the list is stochastic with a
bias toward cost.
Berger et al. [34] proposed a hybrid genetic algorithm (GA)
that combines constrained simultaneous evolution of two pop-
ulations and partial temporal constraint relaxation to improve
solutions. The rst population evolves to minimize the total
distance, while the second focuses on minimizing constraint
violations trying to obtain feasible solutions for a given num-
ber of routes. The evaluation is based on a weighted sum of
objectives related to constraint violations, number of vehicles,
and total distance. Both populations evolve concurrently each
with their own objective functions. Interaction (migration)
takes place each time a feasible solution is found. The second
population is mutated by reducing the number of available
vehicles by one, while a post-processing procedure aiming
at improving further the new best solution found is applied.
For the selection of parents, the well-known roulette-wheel
scheme is used. The probability of selecting an individual is
proportional to its tness value. Finally, two crossover and
ve mutation operators are considered including the LNS of
[27], -exchanges, exchange of customers served too late,
elimination of the shortest route using the procedure of [35],
and intra-route reordering using I1 [16] insertion heuristic.
Homberger and Gehring [28] developed two (, ) evo-
lution strategies, ES1 and ES2, different with respect to
representation and mutation operators. In the rst, the recom-
bination of individuals and the mutation codes are dispensed,
while one offspring is generated from one parent via mutation.
On the other hand, ES2 follows a more complex evolution
scheme. Three parents are selected and the mutation codes of
the two are recombined and passed on to the third parent, while
the solution vector of the third parent undergoes mutation
controlled by the new mutation code. In both cases, the
mutation direction is a binary parameter used to alternate the
search between minimization of vehicles and distance. The
mutation code used within ES1 indicates the times a randomly
selected local move is applied. The mutation code of ES2
consists of a so-called sequence vector. The elements represent
customer numbers which occur twice. The rst occurrence
indicates a removal and the second an insertion heuristic oper-
ation. In terms of mutation, Or-Opt, 2-Opt*, and 1-interchange
operators are used. A modied Or-Opt is used to reduce the
number of vehicles. For the recombination of mutation codes,
the uniform order-based crossover is considered. Finally, if the
mutation direction is toward route minimization, a different
tness function is utilized. It consists of two indices in a
lexicographic order; the number of customers served by the
smallest vehicle and the sum of minimal delays of these
customers (relative difculty of relocation).
Gehring and Homberger [17] combined ES1 [28] with
a TS algorithm. An (1, )-ES (population of size one) is
used to reduce the number of vehicle routes, followed by
a TS for distance minimization. This two-phase scheme
is parallelized assuming cooperative autonomy (autonomous
sequential search threads cooperate through the exchange of
solutions). Later, [36], [37] considered instead an (, )-ES
REPOUSSIS et al.: ARC-GUIDED EVOLUTIONARY ALGORITHM FOR THE VEHICLE ROUTING PROBLEM WITH TIME WINDOWS 627
with a different tness function. Similar to [28], the proposed
function is based on four criteria, namely total number of
vehicles, number of customers of the smallest route, minimal
delay, and total distance in a lexicographic order. Furthermore,
the property of the so-called caused overload is introduced.
The latter measures the extent to which the target vehicle
is overloaded if the customer with the smallest demand of
the smallest route is inserted to the target route. Finally, a
single-thread implementation can be found in [38] with dif-
ferent move-generation mechanisms, termination conditions,
and tness values.
Mester et al. [39] developed a multiparametric (1 + 1)-
evolution strategy. Initially, ve solutions are generated using
a hybrid savings heuristic. The best solution is then selected to
form the initial population. At each generation a new solution
is generated using a multiparametric RemovalInsertion muta-
tion operator. The latter generates new solution vectors via
removing and re-inserting customers. Three types for remov-
ing customers are used: random rejections from rings created
from two circles centered in depot with random radiuses, one
customer from each route, and purely random removals. For
the re-insertion of customers a cheapest insertion heuristic
is employed. Finally, the resulting solutions are subject to
local search within a parameterized dynamic environment,
called adaptive variable neighborhood (AVN). The latter takes
advantage of the geographical division and topology of the
vehicle routes in order to speed up the search and focuses on
promising regions.
Mester and Brysy [40] proposed a hybrid metaheuristic
approach that combines GLS and ES into an interactive two-
stage procedure. The GLS is used to regulate a composite local
search in the rst stage, as well as the objective function and
the neighborhood of the modied ES of [39] in the second
stage. Initial solutions are produced as in [39] for different
parameter settings, while after a number of iterations 01 and
1-interchange local moves are applied cyclically until no fur-
ther improvement can be obtained. The best solution obtained
is then subject to route elimination using the SA procedure
of [26]. On the other hand, a typical GLS implementation
is followed, using arcs as the feature to penalize. The above-
mentioned local moves are applied cyclically following a best-
accept strategy. Whenever a local optimum is obtained, the
GLS is applied. The neighborhood considered is restricted to
the set of the geographically closest routes to the currently
penalized arc, called penalty variable neighborhood (PVN). If
no further improvement can be obtained, ES stage is triggered.
ES uses the GLS-based biased objective function and iterates
for predened number of iterations. Finally, the ttest parent
solution is used to initiate GLS, while the oscillations between
GLS and ES are repeated for a predened number of iterations.
Russell and Chiang [41] proposed a scatter search (SS)
approach combined with a reactive TS, which is an advance
recovery TS and a set covering procedure. The initial reference
set is composed of solutions produced using a sequential
and a parallel version of I1 heuristic. These solution are
further improved using the reactive TS of [42]. The primal
solution combination method work as follows: Common arcs
among solutions are initially identied and placed into separate
clusters. As such, a number of common arc subsets are
generated for different solution combinations. These arcs are
weighted and those that pass a threshold are placed into an elite
common arc list. A feasibility restoration heuristic is applied
next, to determine the feasible chains or sub-tours among
these arcs. To this end, a parallel construction links unassigned
nodes, while a TS is used to improve the emerging routes. In
addition to the common arc subset generation, a global route
combination set-covering approach is also considered. From
this procedure a unique solution is produced, which is further
improved using an advance recovery TS. Finally, the reference
set is updated. The latter comprises half of the solutions from
the previous reference set, half of the best solutions out of
those currently generated and improved, and the one produced
from the set covering approach.
Le Bouthillier and Crainic [43] presented a parallel coop-
erative method, in which several search threads communicate
through asynchronous exchanges of information using a com-
mon solution warehouse. Communications are initiated only
by individual threads with access to the warehouse, while no
broadcasting takes place. The methods involved in cooperation
(cooperative global search) consist of simple construction
heuristics, two GAs, two TS algorithms of [44] and [45], and
a post-elimination procedure. TS algorithms require a single
solution from the warehouse either for restarting the search
or for diversication, while the improved solutions are sent
back to the warehouse. GAs use the warehouse as population;
parents are selected randomly and a probabilistic mutation is
applied, while two crossover operators are also considered.
When required, a repair procedure restores feasibility by
reordering or rerouting customers. Each offspring is sent back
to the warehouse. Finally, a post-optimization procedure is
applied to each solution sent to the warehouse. The latter
consists of several simple local search improvement heuristics
and an EC route-elimination procedure.
Later, Le Bouthillier et al. [46] extended the approach of
[46] to a guided parallel cooperative search method. The
latter is based on a central memory structure, called data
warehouse, equipped with a mechanism to extract knowledge
from the information exchanged among search threads in order
to guide the search toward promising or unexplored regions
of the solution space. The warehouse contains and sends both
solutions and specic pattern information to each cooperative
thread. A pattern-identication mechanism is used to x or
prohibit specic solution attributes. The latter is based on the
inclusion of arcs in particular solutions. For this purpose, the
warehouse is divided into three subsets according to the quality
of solutions (i.e., elite, average, and bad). An arc with a high
frequency of appearance in a given subset signals that the
search threads have often produced solutions including that
arc. Each pattern contains a set of arcs, while a frequent pattern
contains arcs with high frequency; the opposite is happening
for infrequent patterns. Furthermore, patterns are derived from
specic subpopulations, while the rate of appearance of a
specic in-pattern among them is dened indicating if an in-
pattern is promising or not.
Repoussis et al. [47] proposed a reactive GRASP [48]
combined with a hybrid trajectory local search algorithm.
628 IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, VOL. 13, NO. 3, JUNE 2009
The construction phase utilizes the parallel construction
scheme of [49] enhanced with additional customer selection
criteria. To this end, prior to the local search phase, the
route elimination procedure suggested by [21] is applied. The
local search phase consists of a hybrid variable neighborhood
tabu search algorithm. The proposed implementation uses
TS internally within VNS, performing the local search for
given neighborhood structures. Externally, the VNS controls
the neighborhood change and the shaking mechanisms. Using
this rationale, a systematic exploration of the solution space
is performed by utilizing powerful trajectory local search
and different neighborhood topologies. Finally, a probabilistic
learning mechanism is used for tuning the size of the restricted
candidate list according to the quality and the diversity
of solutions produced at each iteration of the construction
phase.
Prescott-Gagnon et al. [50] proposed a hybrid LNS algo-
rithm that relies on a heuristic branch-and-price method. The
proposed solution framework is divided into two phases. The
rst phase emphases on vehicle reduction and imposes an
upper bound on the number of vehicles that can be used.
This lower bound is lowered whenever a solution covering
all customers is found. The second phase tries to reduce the
total distance. The LNS is equipped with four procedures
for dening the neighborhood to explore. The rst is called
Proximity and is based on a measure of spatio-temporal
proximity among customers [27]. The second, called Route
Portion, ensures that more isolated customers are disconnected
from their routes [51]. The third is called Longest Detour
and selects customers at random with a bias toward those
yielding the largest detours [51]. The fourth selects all cus-
tomers that are currently visited within a given time slice.
Similar to [24], at each iteration one operators is selected
via a roulette-wheel selection scheme biased toward those
that yield the best results in previous iterations. Regard-
ing solution reconstruction, the partially xed solution is
modeled as a set partitioning problem, where each variable
corresponds to a vehicle route. The problem is solved using
a heuristic branch and price, where the column generation
sub-problem can be seen as an elementary shortest path
with resource constraints. The proposed approach uses a TS
algorithm for solving the column generation subproblem. At
each iteration, TS performs a limited number of feasible
moves (insertion or deletion) on each route associated with
a basic variable of the current master problem solution. The
procedure is halted when TS cannot generate any reduced
cost columns and the solution is fractional. The search tree
is explored using a depth-rst strategy, while no backtracking
is allowed.
Ombuki et al. [53] proposed a multiobjective GA using
a Pareto ranking scheme into the tness evaluation process.
These ranks are sequential integer values that represent the
layers of stratication in the population, assuming that each
objective denes independent dimensions in a multiobjective
tness space. Lower ranks are preferable and the individuals
with rank 1 are the best in the current population. Note also
that ranks themselves do not convey the quality of solutions,
nor whether an optimal solution has been discovered. Thus,
each population is guaranteed to have a rank 1 set. At each
generation, parents are selected according to a tournament
selection strategy. Furthermore, an elite retaining model is
used to ensure that the best individual is carried on into
the next generation. For the recombination of parents, a best
cost route crossover (BCRC) is employed, while for the
mutation of individuals a modied inversion operator, called
constrained route reversal mutation, is utilized. Experimental
results are reported for both objectives. Interested readers on
multiobjective vehicle routing problems may refer to [54].
III. ARC-GUIDED EVOLUTIONARY ALGORITHM
A. Motivation and Basic Concept
Evolutionary Algorithms (EAs) represent a large class of
problem-solving methodologies that mimic the process of
natural evolution, including genetic algorithms [52], evolution
strategies [13], and evolutionary programming [55]. The main
aim of EAs is the evolution of a population guided by a set
of operators. A population of individuals evolves by creat-
ing new generations of offspring, on a basis of information
exchange among individuals via an iterative process until
some convergence criteria are met. The better an individual
performs the greater is the chance to live longer and generate
offspring, which in turn inherit the distributed parental genetic
information [56]. Over the course of evolution, this leads to
a penetration of the population with genetic information of
well-tted individuals, while the nondeterministic nature of
reproduction leads to a permanent production of novel genetic
information.
On the basis of the above, a population of individuals that
undergoes an evolution process can keep track of the best
components of the solutions visited during the exploration of
the solution space. Assuming that high-quality solutions share
some common characteristics or particular components with
other medium quality solutions, our main intuition is to simul-
taneously evolve each individual in a sequential cooperative
fashion and create new offspring out of parental components
that appear frequently in all other individuals of the population.
Inspired by earlier works of Tarantilis and Kiranoudis [57]
and Tarantilis [58], the solution components selected to guide
the proposed evolution process are frequently observed arcs.
The approaches proposed in [57] and [58] are population-
based and focus on the exploitation of a collection of memory
structures (see adaptive memory programming [59], [60]). The
rationale is to produce iteratively new provisional solutions out
of sequences of nodes (bones) of routes of previously obtained
solutions.
In this paper, the main effort is to manipulate a population
of individuals for solving the VRPTW by means of ES. The
latter simulate the evolution process directly on the level of
phenotypes and adopt deterministic selection schemes, while
the search is mainly driven by mutation. Typically, a real-
valued coding of the solution vector is used. Each individual
I = ( x, ) consists of an n-dimensional set of object variables
x R
n
and a vector of a so-called strategy parameters
R
+
n
. Mutation is then performed independently on each vector
element x
i
(1 i n) by adding a normally distributed
REPOUSSIS et al.: ARC-GUIDED EVOLUTIONARY ALGORITHM FOR THE VEHICLE ROUTING PROBLEM WITH TIME WINDOWS 629
random value q
i
N(0,
i
) with a mean value of zero and
a standard deviation
i
. Thus, an individual is mutated by
varying each object of the solution vector according to the
following mutation rule [56]:
x

i
= x
i
+ N
i
(0,
i
). (1)
To control the mutation step size
i
of (1), both the real-
valued solution vector and the strategy parameter are incorpo-
rated into the representation and evolve at the same time by
means of recombination and mutation operators. This enables
a learning process which tends to lead to better solutions
and to more suitable values for the strategy parameters that
facilitate the self-adaptation of the mutation rates. However,
the above framework cannot be applied directly to discrete
combinatorial optimization problems such as the VRPTW
and has to be modied in a number of ways with respect
to the representation, the evaluation, the mutation, and the
recombination operators.
B. Adaptation and Proposed Solution Framework
Given an initial population of adequately diversied indi-
viduals, our goal is to monotonically evolve a population of
individuals using a ( + )-ES. Let P(t ) denote a popula-
tion of size at generation t and P

(t ) a population of
offspring. At each generation, the survivors from the union
of parents P(t ) and offspring P

(t ) are selected to form the


next generation population P(t +1) = P

(t ) P(t ). A strictly
generational course of evolution is adopted ( = ), such that
one offspring is produced per population individual.
In the proposed evolution scheme, recombination in terms of
solution vectors is omitted and new offsprings are reproduced
only via mutation. For this purpose, a discrete representation
of individuals is adopted, combined with a binary vector of
strategy parameters. The latter contains encoded information
with respect to the individuals components (arcs in our case)
that will be subject to mutation. As such, the strategy parame-
ters determine for each individual the corresponding mutation
rates and guide the reproduction process. Herein, the strategy
parameters evolve via a multiparent recombination operator,
which is applied once at each generation to each parent
individual in order to enable the broadcasting of promising
correlations among object variables.
At the same time, the proposed mutation operator exploits
the information provided by the strategy parameters and ini-
tiates a new offspring following the ruin-and-recreate princi-
ple. The idea is rst to ruin part of the parent, preserving
only the components dictated by the strategy parameters, and
then reinsert the removed nodes (customers) using a greedy
randomized construction heuristic. The rationale behind the
above-described learning process is, rst, to trace via recom-
bination the promising features and characteristics of the
solutions visited during the search and, second, the offspring
generated to inherit all these components exhibited in parent
individuals via mutation.
In an effort to intensify within regions of the solution space
close to local optimum solutions, each offspring generated
is further improved via novel memory-based trajectory local
search algorithms. Following the paradigm of [26], [31], [36],
[38], [40], [50] for the improvement of individuals, a two-
phase approach is utilized: in the rst, the minimization of
the number of vehicles is prioritized; in the second, the
priority is changed to reducing total distance with a xed
number of vehicles, namely, the minimum number attained
in the rst phase. The methodology adopted for both phases
is similar and utilizes the basic TS framework. In particular,
during the route-elimination phase, a tailored lexicographic
evaluation function is adopted. On the other hand, during
the distance-minimization phase, the exploration of the neigh-
boring space is performed on the basis of a GLS objective
function.
During the above-described evolution process, it is impor-
tant to ensure the evolvability of the population (balance
between quality and genetic diversity). Although mutation
guarantees to some extent that novel genetic information
penetrates within the population, the premature convergence
to a precise local optimum solution must be avoided. In
the literature, various probabilistic and deterministic selection
schemes have been developed. Regarding ES, there are several
degrees of freedom. A selection strategy can be either elitist
or nonelitist, and one may also consider a more exible life
span concept than the extremes of a maximum life span of
one generation and of an unlimited life span. The selection
strategy followed in this paper is pure deterministic, and each
individual is evaluated mainly according to its quality and
distance (total number of different arcs) with respect to the
ttest individual.
Arc-Guided Evolutionary Algorithm
//Parameters: , , v, //
t 0, P(t )Initialization(, )
While maximum allowed CPU do{
For all individuals ( x, ) P(t ) do{
( x,

)Multiparent Recombination(P(t ), x, )}
For all individuals ( x,

) P(t ) do{
( x

, z)Mutation(, x,

)
( x

)Route Elimination( x

, v, z)
( x

)Distance Minimization( x

, v, z, )
P

(t )( x

)}
Evaluation(P

(t ))
P(t +1)Selection
_
P

(t ) P(t )
_
, t t +1}
Return P(t )
C. Initialization
During the initialization, it is important to ensure that
the individuals forming the initial population are adequately
diversied in order to spread the search over different regions
of the solution space [58]. For this purpose, a modied
variant of the probabilistic parallel construction heuristic of
[49] is used. Initially, a solution is constructed iteratively by
adding a new element to the partial incomplete solution. All
elements are ordered in a list, called restricted candidate list
(RCL), composed of the high-quality elements (nodes or
customers) with respect to a greedy function. The probabilistic
component randomly chooses one element from the list, but
not necessarily the top one of the list. Thus, the value of
630 IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, VOL. 13, NO. 3, JUNE 2009
determines the extent of randomization and greediness of
construction. In the proposed implementation, the RCL is
cardinality-based and xed to a predened size.
Initialization(, )
P0
While | P| do{
s
While solution not complete do{
RCL

Build Restricted Candidate List(s)


i Select Customer At Random(RCL

)
ss{i }
Update Greedy Function(s)}
Ps}
Return P
1) Greedy Randomized Construction: Having initialized a
set of routes with randomly selected seed customers, the
parallel construction framework is triggered. Let
i j,u
denote
the insertion cost of an unrouted customer u when inserted
between customers i and j . For every feasible insertion
position of u into a route of a partial solution , the
minimum insertion cost
,u
= min
i, j

i j,u
is found. The
overall minimum insertion cost

,u
corresponds to the
min

,u
and denotes the best feasible insertion position of
u. Subsequently, a penalty (opportunity) cost
u
is calculated
for every unassigned customer u. This penalty can be viewed
as a measure of the cost that would have to be paid later
if the corresponding customer is not assigned to its current
best position. Thus, customers with large penalties are favored
rst for insertion. The penalty for every assigned customer
corresponds to the sum of the differences between
,u
and

,u
for each route , as dened in (2)

u
=

,u

,u
_
. (2)
Whenever a customer u cannot be feasibly inserted into a
route, the insertion cost must be set to a large value , forcing

u
to large values as well. Kontoravdis and Bard [49] propose
an innite value for . An alternative is to associate with
the potential infeasibility of each customer. The latter can
be viewed as the difference between the overall maximum
and minimum insertion cost of u, max

{
,u
}

,u
. As
such, the current penalty
u
is incremented accordingly and
potential infeasibilities are anticipated to the extend possible.
Let i and j be two consecutive customers of a partially built
route , u an unrouted customer, and d
i j
the distance between
customers i and j . The cost
i j,u
, of inserting u between i
and j is a weighted combined result from several sub-metrics
that merge various effects

i j,u
=
1
_

1s
i j,u
+
1c
i j,u
_
+
2

2
i j,u
+
3

3
i j,u
(3)
where
1
,
2
and
3
take random values within the range 0
1, such that
1
+
2
+
3
= 1.
The rst metric
1s
i j,u
refers to the closeness of the earliest
time that service can take place c
u
with the vehicles arrival
time w
uk
at u [61]. A value of
1s
i j,u
close to zero provides
slack for the insertion

1s
i j,u
= w
uk
c
u
. (4)
Similarly,
1c
i j,u
express the compatibility of the time win-
dow of u for a particular insertion position and denes the
time gap between the latest service time b
u
of u and vehicles
k arrival time w
uk
at u [62], where q
i
denote the service time
at customer i

1c
i j,u
= b
u
(w
i k
+q
i
+d
i u
). (5)
The second cost metric
2
i j,u
measures the distance increase
(savings) caused by the insertion of u [16]

2
i j,u
= d
i u
+d
uj
d
i j
. (6)
Finally,
3
i j,u
measures the time delay related to the vehicle
arrival at j , which is expressed as the difference between the
vehicles arrival time prior and after the insertion of u, also
known as push forward [63]

3
i j,u
= (w
uk
+q
u
+d
uj
) (w
i k
+q
i
+d
i j
). (7)
D. Representation of Individuals
Let a complete graph G = (V, A), where V = {0, 1, . . . , n}
is the node set, A = {a
i, j
: 0 i, j n, i = j } is
the arc set and the depot is represented by the node 0. A
solution consists of a set of feasible vehicle routes =
{
1
,
2
, . . .} that correspond to paths in G that start and end
at node 0. can be seen either as a vector of nodes, i.e.,
x = {0, i, j, . . . , 0, u, z, . . .}), where i, j, u, z V and the
sequence of routes is delimited by the depot nodes. Clearly,
the node vector can be directly transformed into a vector of
arcs, i.e., x = {a
0,i
, a
i, j
, . . . , a
0,u
, a
u,z
, . . .} with n +k ranked
discrete coordinates, where k denotes the cardinality of set .
Given the above arc-based representation of individuals, the
vector of strategy parameters has to be dened. Each element
x
i
of the solution vector x is allocated exactly one element
i
of the vector that is used to adjust the mutation rate. Since
the solution vector is composed by discrete elements, a binary
vector {0, 1}
n+k
is used instead. In particular, if the value
of the element
i
is 1, this indicates that the corresponding
element x
i
of the individual will be inherited directly to the
offsprings at the next generation; otherwise it will be subject
to mutation.
E. Multiparent Recombination
The goal of the multiparent recombination operator is
to select and to extract promising solution arcs from each
population individual in a deterministic fashion. Initially, at
each generation the frequency of appearance m
i, j
of each
arc a
i, j
within the population is measured. Subsequently,
a threshold frequency of acceptance T N
+
is dened,
with respect to the size and the current diversity of the
population. The threshold T indicates the least number of
the populations individuals that must include a particular arc.
Thus, the element a
i, j
of a solution vector x is considered
as promising if the corresponding appearance frequency m
i, j
REPOUSSIS et al.: ARC-GUIDED EVOLUTIONARY ALGORITHM FOR THE VEHICLE ROUTING PROBLEM WITH TIME WINDOWS 631
passes the threshold T, or similarly if a
i, j
is exhibited in more
than T population individuals. Thus, the value of a strategy
parameter
i
is set to 1 if m
i, j
of an element x
i
x pass
the threshold; otherwise the value of
i
is set to zero.
Regarding frequency measures, some necessary conditions
must be set rst to capture the nature of the VRPTW. Since the
primary objective is to minimize the total number of vehicles,
individuals are treated according to the associated eet size.
More specically, if an individual s utilizes the same number
of vehicles with respect to the current ttest individual s

of the current population P, then all frequencies m


i, j s
are
incremented by 1; otherwise the frequency m
i, j
of an arc a
i, j s
is updated only if the associated arc appears in both s and s

.
Having calculated the appearance frequency of every arc,
the next step is to determine the corresponding threshold. Let
D
s

s
denote the level of similarity between s and s

, as the total
number of common arcs between them
D
s

s
=

a
i, j
s,s

i j
(8)
where

i j
=
_
1 if a
i, j
is an arc of both individuals s and s

0 otherwise
(9)
additionally, let M
s

P
denote the median position (average
similarity) of all individuals s P {s

} relatively to an
individual s

as [64]
M
s

P
=

sP{s

}
D
s

s
1
. (10)
A reasonable threshold can be found from the ratio between
the average similarity of the population individuals M
s

P
over
the ttest individual s

P and the total number of arcs n +k


contained in s

(or similarly the total number of dimensions


of x
s

, k is the total number of vehicles), multiplied by the


population size
T =
M
s

P
n +k
2. (11)
The adaptive threshold rule (11) shows that the larger the
similarity among individuals, for constant population size and
total number of arcs, the larger is the threshold. Therefore, as
population individuals tend to converge to the ttest individual
encountered during the course of evolution, the threshold will
tend to increase. As described earlier, the values of the thresh-
old at each generation determine the corresponding mutation
rates via the frequencies of appearance of each element of
the solution vectors. Assuming that during the early stages of
the evolution large distances (dissimilarity) among individuals
are observed, the threshold is forced to small values (low
mutation rates) in order to ensure convergence reliability and
velocity. Contrary, during the late stages of evolution where
individuals are getting more and more similar, the threshold
and the corresponding mutation rates gradually increase to
diversify the search.
F. Mutation
The proposed mutation operator initiates an offspring from a
single parent individual following the ruin-and-recreate prin-
ciple. Initially, a selected set of customers is removed from
the current solution. The vector of the strategy parameters
dictate which customers (elements of the solution vector) will
be removed and preserved, respectively. After the removal,
the selected customers are reinserted back to the partially
ruined solution in a probabilistic-heuristic fashion. Clearly, the
actual mutation rate z can be expressed as the total number
of customers mutated-modied (changed positions) during the
reproduction of an offspring.
From the implementation viewpoint, the above-described
mechanism works as follows. Initially, the solution vector is
transformed to the corresponding node-based solution vector.
Next, nodes-customers are removed sequentially such that the
corresponding arcs with strategy parameters equal to zero
are removed from the solution vector. The resulting partial
solutions are then reconstructed by inserting iteratively the
removed customers utilizing a greedy randomized parallel
construction framework. As described in Section III-C.1,
all unassigned customers are ordered in a xed sized list
RCL according to their score with respect to the penalty
function (2). At each iteration of construction, one element
is picked at random from the list and is inserted to the
partial incomplete solution at the corresponding optimal inser-
tion position. The overall parallel construction framework is
repeated until all unassigned customers are served.
G. Route Elimination
Given an initial solution, the proposed route-elimination
procedure intends to reduce the number of vehicles by one. If
the reduction is successful before some terminating conditions
are reached, the procedure is repeated to reduce further the
number of vehicles. The procedure terminates if the total
number of vehicle routes reaches a precalculated lower bound
(see for details [31] and [49]) or until a maximum number of
iterations has been reached. It uses a TS algorithm equipped
with a tailored lexicographic ordering evaluation function
for the exploration of the neighboring space. Following the
paradigm of Bent and Van Hentenryck [26], the proposed
evaluation function consists of four components. Let the travel
cost between a pair of customers i and j expressed as c
i j
, the
evaluation function of a solution = {r
1
, r
2
, . . .} can be seen
as follows:
e () =
_
||, min
r
|r|, mdl(),

(i, j )r
c
i j
_
. (12)
The rst component denotes the total number of vehicles, or
similarly the cardinality of the set ||. The second component
refers to the total number of customers served by the vehicle
route with the smallest cardinality. The third component min-
imizes the minimal delay property mdl() [28]. The latter
favors solutions where customers of the smallest route can be
relocated on other routes with no constraint violations or with
the least possible time window/vehicle capacity violations.
Thus, customers from the smallest route can be relocated
632 IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, VOL. 13, NO. 3, JUNE 2009
more easily over solutions where relocation is difcult. The
last component refers to the minimization of traveling cost.
Although the traveling distance cost is not directly relevant
to the elimination of surplus routes, based on experimental
observations, solutions with relatively low cost vehicle routes
(short inner distances) increase signicantly the possibilities
of route elimination. Furthermore, it seems more efcient to
search the solution space toward minimization of distance cost
in cases where no improvement can be obtained in terms of
minimal delay.
Denition 1 (Minimal Delay): The minimal delay of a
solution , denoted by mdl(), is dened as
mdl() = mdl(r, ) (13)
where r is the route with the smallest cardinality min
r

|r

|
mdl(r, ) =

ur
mdl(u, r, ). (14)
The minimal delay mdl(u, r, ) of a customer u takes into
account both capacity loading mdl
load
(u, r

) and time window


mdl
time
(u, r

) constraint violations with respect to a target


route r

mdl(u, r, ) = min
r

=r
mdl(u, r

) (15)
mdl(u, r

) = max
_
mdl
load
(u, r

), mdl
time
(u, r

)
_
(16)
mdl
load
(u, r

) =
_
q(r

) +q
u
Q if q(r

) +q
u
> Q
0 otherwise
(17)
mdl
time
(u, r

) = min
(i, j )r

i r

{u}
max (w
ir
l
i
, 0)

(18)
where w
ir
and l
i
denote the actual and latest arrival times of
a customer i r

, Q refers to the maximum vehicle capacity;


the demand of a vehicle route r

, denoted by q(r), is the sum


of the demands q
u
of each customer u r

.
The above denition constitutes an extension of the minimal
delay property dened in [26] and [28]. Similar denitions
that take into account vehicle capacity constraint [see (17)],
in addition to that of violating time windows, are also provided
in [31], [36], and [38]. Clearly, whenever the overall minimal
delay mdl(u, r, ) is 0, a customer u r can be feasibly
inserted into a route r

= r with respect to both


constraints.
As mentioned earlier, the evaluation function (12) is utilized
within a TS solution framework. In particular, the solution
space is explored by moving at each iteration from a solution
s to the best admissible solution s

(best-accept strategy) in
a subset
y
(s) of a neighborhood structure y. TS allows
solutions to deteriorate with respect to (12) from one itera-
tion to the next in order to escape from local optima, and
uses the history of the search (short term memory) to avoid
cycling. The short term memory keeps track of recently visited
solutions and forbids moves toward them. For this purpose,
the forward and reversal attributes of recent local moves are
temporarily declared tabu and stored into a tabu list. The
neighborhood
y
(s) is therefore restricted only to non-tabu
solutions. The new solution is then added to the tabu list
and the oldest is removed from the list. The duration v that
the solution attributes remain tabu is called tabu tenure. The
tabu status of a neighboring solution can only be overridden
(aspiration criteria) if it has a higher evaluation compared to
the best solution found during the exploration of the solution
space. The overall procedure iterates until some termination
conditions are met (maximum number of iterations z without
observing any further improvement) and the best encountered
solution s

is returned.
Route Elimination(s, v, z)
counter0, s

s
mLower Bound()
While counterz & |s|>m do{
rmin
r

s
|r

|
ySelect At Random()

y
(s)Build Allowed Set(s, y)
s min
s

y
(s)
{e(s

)}
Update Tabu List(s, v)
If (e(s) < e(s

)) do{
counter0, s

s}
Else countercount er+1
If (mdl(u, r, s)
ur
= 0) do{
sRelocate(u, s)
counter0, s

s}
}
Return s

During the search, if the minimal delay of a customer


equals zero, then the customer is relocated to the best insertion
position in terms of cost and the corresponding solution is
denoted as a new local optimum solution. An advantage
of the above procedure is that the local search deals only
with feasible solutions whether the best solution found upon
termination is suboptimal or optimal in terms of the eet size.
Furthermore, recall that the maximum number of iterations
z corresponds to the actual mutation rate (total number of
mutated customers) observed during the reproduction of the
offspring, as dened in Section III-F. Clearly, the latter can
provide a good indication with respect to the number of
iterations needed to perform an intensication local search
close to the neighboring space of the starting solution (see
for details Section IV-C).
The neighborhood structures y used within the proposed
implementation are based on traditional edge-exchange local
moves (see for details [65]), namely inter- and intra-route
2-Opt, 1-0 Relocate, and 1-1 Exchange. The selection of
neighborhood structures is purely stochastic, while equal
selection probability level is assigned to all structures. An
important feature for the effective evaluation of local moves is
to prune infeasible solutions and avoid to the extend possible
unnecessary feasibility checks. As suggested in [65], one can
reduce the computational complexity of feasibility checks if
sequences of nodes are handled just as single nodes, provided
that time windows and travel times are suitably dened. Here
we keep track at each node of the vehicle departure time. The
latter allows us to consider only insertion positions between
customers i and j that are compatible for a segment of nodes
{e, . . . , l} with respect to the corresponding time windows
and vehicles departure times. For example, the cost and
REPOUSSIS et al.: ARC-GUIDED EVOLUTIONARY ALGORITHM FOR THE VEHICLE ROUTING PROBLEM WITH TIME WINDOWS 633
feasibility of the insertion are computed only if the vehicle
departure time w
i k
at i plus the distance d
i,e
is smaller than
the latest allowed service time b
e
at e, and the deadline b
j
at
j is greater than the allowed earliest start of service c
l
at l.
Finally, it is unnecessary to evaluate the whole neighborhood
at each step, since the effect of such edge exchanges is
limited to the routes they modify, which are at most two
in our case. Thus, once an edge exchange is executed, only
those edge-exchanges involved within the modied routes are
re-evaluated.
H. Distance Minimization
The priority of this phase is to reduce the total distance
traveled with a xed number of vehicles. For this purpose,
a local search algorithm is employed, called reactive guided
tabu search (ReGTS). Given that hybrids aim at exploiting
the strengths of different methods, interaction can take place
either at low level by designing new metaheuristics that
combine various algorithmic principles [66], or at high-level
by developing multiagent architectures [67]. ReGTS utilizes at
the higher level the basic TS solution framework to direct the
local search process, while the exploration of the neighboring
space at the lower level is performed on a basis of a GLS
algorithm.
GLS is a memory-based metaheuristic algorithm developed
in [15]. To apply GLS one needs to dene a set of features for
the candidate solutions. When the search is trapped or settled
in a local optimum solution, GLS selects and penalizes certain
features. The intention is to penalize unfavorable features
(e.g., long arcs) that should not possibly occur in a near-
optimum solution or features that contributed most to the
current state. To this end, GLS associates a cost and a penalty
to each feature and augments the objective (cost) function by
adding penalties to selected features (accumulated penalties).
In the proposed implementation, the set of features selected
to penalize is all possible directed arcs a
i, j
(i = 1, . . . , n,
j = 1, . . . , n, i = j ) that may appear in a vehicle routing
plan with n customers and feature costs given by the arc
distances d
i j
.
Let s denotes a solution and f (s) an objective function that
maps every candidate solution s to a numerical value (distance
traveled); GLS denes a new augmented function h(s) that
replaces f (s) as follows:
h(s) = f (s) +

a
i, j
s
_
p
i, j
I
i, j
(s)
_
(19)
where is a scaling parameter, (i, j ) ranges over all possible
arcs, p
i, j
is the penalty value for each arc (feature) a
i, j
, and
I
i, j
is an indication of whether s exhibits feature a
i, j
I
i, j
(s) =
_
1, if s exhibits feature a
i, j
0, otherwise
(20)
whenever the search reaches a local optimum solution, GLS
tries to fade out the features that matter most through penal-
izing them. The feature that has high cost affects the overall
cost more. However, one should consider the current penalty
value of that feature or similarly the number of times it has
i u
succ
j
pred i
succ
j
u
i u
succ
j
pred i
succ
j
u
(a) Intra-route
i
u
succ
j
pred
i
succ
j
u i
u
succ
j
pred
i
succ
j
u
(b) Inter-route
Fig. 1. Crossover-Opt neighborhood structure.
already been penalized. The more often a feature appears and
is penalized, the less likely it is to be penalized further. To
this end, the utility U
i, j
(s

) of penalizing an arc a
i, j
, under a
local optimum solution s

, is dened as follows:
U
i, j
(s

) =
I
i, j
(s

)d
i, j
1 + p
i, j
. (21)
The higher the cost d
i, j
of an arc a
i, j
, the greater the utility
of penalizing it. On the other hand, the more times a feature
has been penalized, the lower the utility of penalizing it again.
Similarly, if a feature a
i, j
is not exhibited in s

as indicated
by I
i, j
(s

), then the utility of penalizing it is 0. To this end, in


a local optimum solution, the feature with the greatest utility
value will be penalized and its penalty value will increase
by one ( p
i, j
= p
i, j
+1). As stated in [15], by taking cost and
penalty values into consideration when selecting the feature
to penalize, the search can focus on more promising regions
of the search space that exhibit good features (i.e., features
involving lower cost) and prevent the search from directing all
efforts to any particular region.
Apart from the selection of the features and their cost, the
settings of parameter may affect the efciency of the search.
As mentioned in [15], is instance dependent; however,
appropriate values can be found by dividing the cost of the
current local optimum solution f (s

) with the total number


of penalized features present, times a scaling factor that is
relatively instance independent. In this case, parameter can
be dynamically tuned during the search. As shown in (22),
if the current local optimum solution contains a signicant
amount of penalized features, is forced to small values in
order to fade out the effect of the penalties
=
f (s

a
i, j
s

(I
i, j
(s

))
. (22)
ReGTS work as follows. Starting from a solution s and hav-
ing initialized all penalties p
i, j
to 0, the basic TS framework
634 IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, VOL. 13, NO. 3, JUNE 2009
is triggered. First, a neighborhood structure is selected ran-
domly and the set of allowed neighboring solutions
y
(s)
is determined. Let s

denote the best solution in


y
(s) with
respect to the ordinary cost function f (s), and s

denote the
best neighboring solution according to the augmented GLS-
function h(s) for a given . If s

improves the current local


optimum solution s

in terms of cost, it replaces both s and


s

and is recalculated. Otherwise s is replaced by s

. Next,
the short-term memory is updated and the new solution s is
memorized. Finally, if s corresponds to a sublocal optimum
solution, the utilities U
i, j
(s) of all features are recalculated
and the feature with the greatest utility value is selected and
penalized. The overall framework iterates until a maximum
number of iterations z is reached without observing any further
improvement.
ReGTS(s, v, z, )
For every i, j do p
i, j
0
counter0, s

s, s

s, s

s
While counterz do{
y Select At Random()
N
y
(s) Build Allowed Set(s, y, )
s

min
sN
y
(s)
{f (s)}
s

min
sN
y
(s)
{h(s, )}
If
_
f (s

) < f (s

)
_
do{
counter0, s

, ss

, localfalse

_
f (s

)/

a
i, j
s

(I
i, j
(s

))
_
ElseIf
_
h(s

, ) < h(s, )
_
do{
counter 0, ss

}
Else countercounter+1, ss

Update Tabu List(s, v)


If local do{
For every i, j do{
U
i, j
(s) = I
i, j
(s)d
i, j
/
_
1 + p
i, j
_
}
i, j max
a
i, j
s
{U
i, j
(s)}
p
i, j
p
i, j
+1}
localtrue
}
s s

Return s
The use of the GLS penalties within the TS framework
can be seen as soft taboos that guide the search away from
local optimum solutions. These soft taboos are controlled by
a long-term memory structure as penalties built up during
the search. Another point of particular importance is the use
of aspiration conditions. More specically, the tabu status
of a neighboring solution can be overridden if it improves
the current local optimum solution s

or it improves the
current solution s with respect to the GLS augmented objective
function. The advantage of monitoring both the actual and
the augmented objective values guarantees that improved local
optimum solutions are not missed during the search.
The above search scheme is equipped with two neighbor-
hood structures, namely CROSS-exchange [20] and Crossover-
Opt, which operate on both single and pair of routes. At
each iteration, the selection between these neighborhoods is
stochastic with a selection probability level of 0.8 and 0.2,
respectively. The main idea behind CROSS-exchange is the
exchange between two segments of nodes of any length
(or less than a predened length l
cross
). CROSS-exchange
is a special case of the -interchange neighborhood [68]
with signicantly smaller neighborhood size (O(n
4
)) and it
generalizes the 2-Opt*, the Or-Opt, the 01 Relocate, and
the 1-1 Exchange neighborhood structures. In the proposed
implementation, l
cross
is set equal to 4.
On the other hand, the proposed Crossover-Opt edge-
exchange neighborhood is inspired by the crossover plus
2-exchange structure [65] and can be described as follows.
Replace edges (i, i
succ
) of , and ( j
pred
, j ), (u, u
succ
) of

by edges (i, u), ( j, u


succ
) and ( j
pred
, i
succ
), respectively, while
reversing the orientation between j and u [see Intra-route
Fig. 1(a)]. Similarly, replace edges (i, i
succ
), ( j
pred
, j ) and
(u, u
succ
) by edges (i, u
succ
), ( j
pred
, u) and (i
succ
, j ), while
considering the option of either preserving or reversing the
orientation between i
succ
and k [see Inter-route Fig. 1(b)].
As shown in Fig. 1, if the segments {u
succ
, . . . , j
pred
} and
{u, . . . , j } have zero length, Crossover-Opt reduces to the
intra- and inter-route 2-Opt neighborhood structure. Compared
to other structures, Crossover-Opt ensures the exploration of
different regions of the solution space because it incorporates
the reverse orientation of particular route segments, which
is particularly effective in problem instances with wide time
windows.
As described in Section III-G, when handling edge exchange
structures the only necessity is to keep track of the differences
with respect to the edges (arcs) that change state (being deleted
or added) in order to evaluate the objective function of a
neighboring solution. Similarly, in order to work efciently
with the augmented objective function, the only need is to
calculate the difference h in the amount of penalties and
to take into account only the penalties of the features that
change state. The penalties p
i j
of each arc a
i, j
are arranged in
a nonsymmetric penalty matrix p
i j
. Thus, h is given by the
difference between the sum of the penalties over all features
added and the sum of the penalties over all features deleted,
multiplied by . Finally, using the appropriate data structures
once an edge exchange is made, and only those exchanges
involved within the modied routes are re-evaluated.
I. Evaluation and Selection
The proposed evaluation and selection strategy followed in
this paper is purely deterministic. The main effort during the
selection of survivors at each generation is to account attrac-
tiveness in terms of solution quality and level of dissimilarity,
in order to avoid premature convergence and to boost the effect
of route reduction. In particular, three criteria in a hierarchical
order are used to evaluate individuals. The rst is the eet
size, the second is the total traveling cost, and the third is
the total number of different arcs with respect to the ttest
individual.
From the implementation viewpoint, at each generation all
individuals s P(t ) are temporarily placed into P(t +1). Each
offspring s

P(t )

is compared to the corresponding parent s.


If s

performs better than s, then P(t +1) and P

(t ) are updated
accordingly. Next, the best and the worst t individuals s

and
REPOUSSIS et al.: ARC-GUIDED EVOLUTIONARY ALGORITHM FOR THE VEHICLE ROUTING PROBLEM WITH TIME WINDOWS 635
s
w
of P(t +1) are identied and the median similarity M
s

P(t +1)
is calculated. The remaining offspring s

of P

(t ) (if any) are


competing against individuals currently placed into P(t + 1)
with respect to the level of similarity. If s

performs better
than s
r
and its level of similarity D
s

is lower than the current


M
s

P(t +1)
, then s

replaces s
r
. Finally, if the tness value of s

is better than the value of an individual s P(t +1) and the


level of similarity D
s

is lower than the level of similarity D


s

s
,
then s is replaced by s

.
The above-described selection strategy is elitist toward high-
quality individuals and also favors highly evaluated individuals
adequately dissimilar from the ttest individual. The latter
enables the search to spread toward distant and promising
regions of the solution space in the short term and ensures
the evolvability of the population in the long term.
IV. COMPUTATIONAL RESULTS
A. Benchmark Datasets
For the evaluation of the proposed Arc-Guided EA, various
computational experiments are conducted using the bench-
mark data sets proposed by Solomon [16] and Gehring and
Homberger [17]. The data set of Solomon [16] consists of
56 problem instances each categorized into six different sets,
called R1, C1, RC1, R2, C2, RC2. Each set contains between
eight and twelve 100-node problems over a service area
dened on a 100 100 grid. The Cartesian coordinates of
customers in problem sets R1 and R2 are randomly generated
from a uniform distribution. In contrast, sets C1 and C2
have clustered customers. Finally, sets RC1 and RC2 contain
semiclustered customers, i.e., a combination of clustered and
randomly (uniformly) distributed customers. Note that sets
R1, C1, and RC1 have tight time windows, short scheduling
horizons, and a vehicle capacity of 200 units. Contrary, the
problem instances of sets R2, C2, RC2 have longer scheduling
horizons and vehicle capacity ranging from 100 to 1000 units,
thus allowing a larger number of customers to be served
per route. Similar are the characteristics of Gehring and
Homberger [17] dataset. It consists of 300 problem instances
divided into ve groups (i.e., G02, G04, G06, G08 and G10).
The features described above are maintained; however, the set
of customers has a much larger cardinality, i.e., 200, 400, 600,
800, and 1000 customers, respectively. Interested readers may
refer to www.top.sintef.no for an updated list of best known
solutions.
B. Parameters Settings and Termination Conditions
The Arc-Guided EA introduces four parameters, namely
the size of the RCL, the tabu tenure v, the size of the
population , and the GLS scaling parameter . Among them,
only and are relatively sensitive to the characteristics of
the problems considered. Although it is hard to optimize the
value of each parameter for each problem instance, using only
small adjustments one may determine very well performing
settings with modest effort. This is justied by the fact that the
sensitivity of the results with respect to the parameter choices,
within reasonable ranges, is found to be quite small. Below,
suitable value ranges are provided.
Parameter determines the extent of randomization
and greediness during construction (initialization) and re-
construction (mutation) of individuals. Repoussis et al. [47]
conducted a series of experiments (values of vs. average
similarity) using the 100-customer datasets of [16] with a
similar construction heuristic and suggest that values of > 8
can generate adequately distant solutions (expressed in terms
of non-common arcs). Clearly, as moving toward problem
instances with tighter time window constraints, it is hard to
produce distant solutions even for large values of . However,
the average similarity reaches a lower limit as increases [47].
Our observations are similar and a range of values between
8 and 12 is found to suit for both small- and large-scale
problem instances. In section IV-C illustrative examples on
the inuence of parameter are provided.
Two parameters need to be dened considering the route
elimination procedure and the ReGTS; the size of the short
term memory v and the scaling parameter . Regarding v, a
range between 20 and 40 is mostly used by standard TS imple-
mentations of the literature for intensication search. Based on
computational experiments and following the suggestions of
Voudouris and Tsang [15] for the Traveling Salesman Problem,
values within the range 0.05 and 0.35 seem to t well for the
parameter . However, one should note that the effect of both
them with respect to the quality of the solutions produced is
very minor, assuming reasonable settings within the above-
mentioned value ranges.
Critical to the global search capabilities of the proposed
method, at the cost of the expense in computational time, is
the population size . Based on computational experiments,
it seems that the size of the population affects the overall
convergence reliability and velocity. Small values of cannot
handle the amount of information included into the individuals.
On the contrary, large values of can fully exploit the large
diversity of strategy parameters and enhance the performance
of evolution. However, there is a tradeoff in terms of con-
vergence speed and computational time consumption. To this
end, a range between 30 and 60 found to provide a good
compromise for both small and large scale problem instances.
Section IV-C elaborates on the sensitivity of the population
size.
Given the above parameter value ranges, several intuitively
selected combinations were experimentally tested, choosing
the one that yielded the best average output. More specically,
the parameter values used for all comparative results are
= 40, v = 40, = 0.125, and = 10. In order to
identify statistically signicant differences, three simulation
runs are performed for each 100-customer problem instance
with xed parameter settings. The maximum allowed CPU
time consumption for each data set is selected such that a
sufcient number of generations is achieved. The proposed
method was implemented in Visual C++ 6.0 and run on a
Pentium IV 3.0-GHz PC.
C. Empirical Study
Given the above parameter value ranges, it is important to
compare results obtained via different parameter settings, to
636 IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, VOL. 13, NO. 3, JUNE 2009
study the role played by each algorithmic component and to
analyze how the different operators affect the performance of
the proposed method. Such an empirical study will provide an
insight on the behavior of different heuristics and operators.
Toward this end, raising the generality of algorithms across
different problem-solving scenarios is receiving more and
more research attention [69].
1) Parameter : The degrees of freedom throughout the
evolution process are signicantly reduced if the initial popu-
lation contains adequately similar individuals. In the proposed
solution method, the diversity of the population is controlled
via parameter . The latter determines the amount of greedi-
ness and randomization during the initialization and mutation
phases. The larger the effect of randomization, the larger the
diversity and vice versa. However, one should note that as
gets larger, the loss in terms of quality also increases and the
gain regarding diversity is relatively small.
Fig. 2 illustrates the effect of parameter with respect
to the average population traveling distance cost (APTD). In
particular, one simulation run of 100 generations is performed
for different values of assuming a population of 30 indi-
viduals. Fig. 2(a) and (b) shows the APTD at each generation
during the course of evolution regarding problem instances
R111 and RC202, respectively. It can be seen that the extent to
which the APTD is affected with respect to is differentiated.
In Fig. 2(a), the effect tends to be stronger acting on both
convergence quality and speed. In the extreme case of = 5,
a premature convergence to low quality individuals is observed
with an almost constant APTD after the 35th generation.
A very slow convergence speed is also noticed when is
xed to 14, mainly due to the large diversity of the strategy
parameters. On the contrary, an initial steep descend toward
high-quality individuals and a good overall convergence speed
are detected when ranges between 8 and 12. On the other
hand, as illustrated in Fig. 2(b) the effect appears strong only
during the initialization phase (generation 0) and fades out
completely for even smaller and larger values of compared
to the prereferred experimental test.
Given that the selection strategy adopted is elitist in terms
of solution quality, as pictured in Fig. 2. APTD converges
toward the cost of the ttest individual. However, in order
to study the actual convergence properties of the proposed
method, additional algorithmic elements must be taken into
account. As described in Section III-E, the self-adaptation
mechanism of the strategy parameters depends directly on
the median position M
s

P
of the population P with respect
to the ttest individual s

via the threshold T. The latter in


turn determines the mutation rate z. Clearly, the evolution
process actually converges only if M
s

P
(average similarity of
population individuals) is very high and the total number of
customers mutated-modied is very low.
Figs. 3 and 4 describe the effect of parameter with
respect to the threshold, the median position, and the average
mutation rate. In particular, one simulation run is performed
for problem instances RC104 and R202 using different settings
for parameter . Fig. 3(a) and (c) describes the APTD when
is xed to 4 and 10, respectively. The ttest individuals
are obtained during the 65th and the 51th generations with
1.020
1.030
1.040
1.050
1.060
1.070
1.080
1.090
1.100
1.110
1.120
1.130
1.140
1.150
1.160
1.170
a=5
a=8
a=10
a=12
a=14
0
Generation
10 20 30 40 50 60 70 80 90 100
A
P
T
D
(a) Average population traveling distance cost for different values
of - R111
0
Generation
10 20 30 40 50 60 70 80 90 100
1.360
1.460
1.560
1.660
1.760
1.860
1.960
2.060
2.160
2.260
2.360
2.460
2.560
A
P
T
D
a=4
a=8
a=12
a=16
(b) Average population traveling distance cost for different values
of - RC202
Fig. 2. Effect of parameter .
1141.36 and 1135.83 distance travel costs, respectively. The
inferior performance of the former ( = 4) can be explained
as follows. Parameter had a signicant impact during the
early stages of the evolution process. Its small value resulted
in less diversied individuals and rapid increase of the average
similarity without the analogous output in terms of solution
quality [see Fig. 3(d)]. The latter caused also the premature
convergence to low quality solutions. Indeed, the M
s

P
is
adequately high and equals 96.48 at the 28th generation with
a corresponding pick of 99.55 at the 70th generation. On the
other hand, the larger value of provided a better sampling
of the solution space and ensured a reasonable convergence
velocity [see Fig. 3(b)]. In addition, the high average mutation
rate observed during the late stages of evolution indicate that
there is potential for further improvement.
In addition to the above-described effect, small values of
may retain the evolution process for long periods due to
the lack of diversity among the strategy parameters. Fig. 4(a)
and (c) describe the APTD when is xed to 4 and 10,
respectively. In the rst case ( = 4), the ttest individual
(1191.70) is found during the late stages of evolution, while
in the second ( = 10) the ttest individual, with the same
traveling distance cost, is observed much earlier. Additionally,
an almost equal APTD is nally obtained in both cases with
the similar median positions and average mutation rates as
depicted in Fig. 4(b) and (d). The different behavior between
the two experiments can be explained as follows. The small
value of favors intensication and does not allow the
continuous penetration of novel genetic information within the
REPOUSSIS et al.: ARC-GUIDED EVOLUTIONARY ALGORITHM FOR THE VEHICLE ROUTING PROBLEM WITH TIME WINDOWS 637
30 40 50 60 70
1.130
1.150
1.170
1.190
1.210
1.230
1.250
0
Generation
A
P
T
D
10 20
(a) Average population traveling distance cost ( = 10)
Median Position
Threshold
Mutation Rate
0
10
20
30
40
50
60
70
80
90
100
T
h
r
e
s
h
o
l
d
/
M
e
d
i
a
n

P
o
s
i
t
i
o
n
/
M
u
t
a
t
i
o
n

R
a
t
e
30 40 50 60 70 0
Generation
10 20
(b) Threshold, Median Position & Mutation Rate ( = 10)
30 40 50 60 70
1.130
1.150
1.170
1.190
1.210
1.230
1.250
0
Generation
A
P
T
D
10 20
(c) Average population traveling distance cost ( = 4)
Median Position
Threshold
Mutation Rate
0
10
20
30
40
50
60
70
80
90
100
T
h
r
e
s
h
o
l
d
/
M
e
d
i
a
n

P
o
s
i
t
i
o
n
/
M
u
t
a
t
i
o
n

R
a
t
e
30 40 50 60 70 0
Generation
10 20
(d) Threshold, Median Position & Mutation Rate ( = 4)
Fig. 3. Performance analysis over 70 generations with different settings of
for problem instance RC104.
population. The latter also causes the non-smooth uctuations
of the average mutation rate. On the basis of the above, = 10
is found to provide a good compromise among convergence
speed and reliability, diversity, and quality for both small- and
large-scale problem instances.
2) Mutation Rate z: It is very important to control the
amount of time invested on intensication search. The latter is
expressed as the total number of local search (route elimination
and distance improvement) iterations without observing any
further improvement. One option is to introduce a predened
parameter for this purpose. However, an alternative approach
is to associate the total number of local search iterations
with the actual mutation rate z. Recall that z denotes the
total number of customers (pairs of edges) mutated-modied
(changed positions) during the reproduction of offspring. Thus,
1.190
1.210
1.230
1.250
1.270
1.290
1.310
1.330
1.350
A
P
T
D
Generation
30 40 50 60 70 0 10 20
(a) Average population traveling distance cost ( = 10)
Median Position
Threshold
Mutation Rate
0
10
20
30
40
50
60
70
80
90
T
h
r
e
s
h
o
l
d
/
M
e
d
i
a
n

P
o
s
i
t
i
o
n
/
M
u
t
a
t
i
o
n

R
a
t
e
Generation
30 40 50 60 70 0 10 20
(b) Threshold, Median Position & Mutation Rate ( = 10)
1.190
1.210
1.230
1.250
1.270
1.290
1.310
1.330
1.350
Generation
A
P
T
D
30 40 50 60 70 0 10 20
(c) Average population traveling distance cost ( = 4)
Median Position
Threshold
Mutation Rate
0
10
20
30
40
50
60
70
80
90
T
h
r
e
s
h
o
l
d
/
M
e
d
i
a
n

P
o
s
i
t
i
o
n
/
M
u
t
a
t
i
o
n

R
a
t
e
Generation
30 40 50 60 70 0 10 20
(d) Threshold, Median Position & Mutation Rate ( = 4)
Fig. 4. Performance analysis over 70 generations with different settings of
for problem instance R202.
it can provide an accurate measure of the least number of
iterations needed for a local search algorithm that handles edge
exchanges and it can ensure a balance between efciency and
effectiveness in terms of computational time consumption.
As described earlier, the mutation rate depends on the diver-
sity of the strategy parameters. Typically, for most problem
instances during the early stages of evolution, the mutation
rates are high and gradually decrease as population individuals
are getting similar (see also Figs. 3 and 4). Table I shows the
overall minimum, maximum and average mutation rate over
100 generation for each dataset including both small and large
scale problem instances. Based on the results, it seems that the
total number of local search iterations without observing any
further improvement ranges between n/6 and n/4, where n is
the total number of customers.
638 IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, VOL. 13, NO. 3, JUNE 2009
TABLE I
MUTATION RATES OVER 100 GENERATIONS
n 100 200 400 600 800 1000
Data Set Max Min Avg Max Min Avg Max Min Avg Max Min Avg Max Min Avg Max Min Avg
R1 56 8 23.67 107 15 58.23 156 18 91.80 183 22 122.93 212 16 129.60 263 45 142.59
R2 48 6 20.05 78 9 43.90 114 12 76.40 159 22 98.31 234 20 105.04 321 34 134.88
C1 28 0 8.32 64 3 32.39 78 4 41.08 156 2 80.45 224 2 82.31 269 12 101.60
C2 24 2 8.33 72 10 36.67 83 9 39.22 142 11 84.10 189 22 93.00 220 39 123.74
RC1 49 6 22.81 94 18 56.20 133 14 88.63 188 28 111.02 254 28 100.03 310 44 149.80
RC2 31 6 18.50 82 17 41.09 96 16 68.34 139 21 81.55 201 33 102.43 303 26 131.30
TABLE II
AVERAGE RESULTS OF REGTS AND TS ON SOLOMONS [16] DATASETS
Data Best Known AGEA-(ReGTS) AGEA-(TS)
Set MTD MNV MTD MNV MTC %Gap MTD MNV MTC %Gap
R1 1209.89 11.92 1211.90 11.92 10.56 0.17 1213.12 11.92 9.89 0.27
R2 951.91 2.73 953.79 2.73 11.34 0.20 954.60 2.73 10.92 0.28
C1 828.38 10.00 828.38 10.00 1.45 0.00 828.38 10.00 1.04 0.00
C2 589.86 3.00 589.86 3.00 1.01 0.00 589.86 3.00 0.91 0.00
RC1 1384.16 11.50 1385.06 11.50 8.45 0.06 1386.28 11.50 7.98 0.15
RC2 1119.17 3.25 1121.95 3.25 13.89 0.25 1122.96 3.25 12.01 0.34
3) Efciency Analysis of the ReGTS: The proposed ReGTS
utilizes the basic TS and explores the search space via a
GLS algorithm. In order to demonstrate the overall efciency
of such a hybrid approach, computational experiments are
performed using both the proposed ReGTS and a standard
TS implementation with the same settings (i.e., tabu tenure,
termination conditions, etc.) and features (i.e., neighborhood
structures, neighborhood selection mechanisms, etc.). In par-
ticular, the main effort is to investigate the efciency and the
effectiveness of the GLS augmented function compared to the
traditional VRPTW cost function with respect to a short-term
memory trajectory local search framework.
Table II shows the average results obtained on Solomons
[16] 56 problem instances (one simulation run with a pop-
ulation of 30 individuals). The rows of the table correspond
to the classes R1, R2, C1, C2, RC1, and RC2 respectively,
and contain the mean number of vehicles (MNV), the mean
distance traveled (MTD), the mean time consumption (MTC)
in minutes for each problem instance, and the percentage
deviation from the best known MTD (%Gap). The second
column of the tables illustrates the best known average results
of the literature. Finally, the third and the forth columns
correspond to the proposed solution method abbreviated as
AGEA. In the former, the distance minimization component
is performed by the ReGTS, while in the latter, it is replaced
by the aforementioned TS.
On the basis of the above results, the ReGTS performs better
compared to the standard short-term memory TS. Although,
both algorithms share the same complexity and structure,
the larger computational time consumption observed in the
case of ReGTS is expected because of the additional penalty
calculations. However, the difference is quite small (worst case
1.88 min on average for each problem instance) justifying the
effectiveness of the proposed hybridization.
4) Efciency Analysis of the Evolution Mechanism: In order
to assess the proof of concept of the AGEA, computational
experiments are also conducted without invoking the evolu-
tion mechanism. More specically, the values of the strategy
TABLE III
AVERAGE RESULTS OF AGEA AND GRMSLS ON
SOLOMONS [16] DATASETS
Data AGEA GRMSLS
Set MTD MNV MTC MTD MNV MTC %Gap
R1 1211.90 11.92 10.56 1221.58 11.92 21.78 0.80
R2 953.79 2.73 11.34 971.18 2.73 26.10 1.82
C1 828.38 10.00 1.45 828.38 10.00 3.79 0.00
C2 589.86 3.00 1.01 589.86 3.00 4.51 0.00
RC1 1385.06 11.50 8.45 1396.91 11.50 20.36 0.86
RC2 1121.95 3.25 13.89 1159.21 3.25 26.09 3.32
TABLE IV
SENSITIVITY ANALYSIS OF ON SOLOMONS [16] DATASETS
8 15 30 40 50 60
CNV 408 407 405 405 405 405
CTD 57593 57392 57289 57274 57278 57271
CCT 230 403 773 1002 1294 1562
parameters of each individual are xed to 0, without invoking
at each generation the multiparent recombination operator. In
this case, all offspring are reconstructed from scratch during
the application of the mutation operator. To this end, the
AGEA degenerates to a simple greedy randomized multistart
two-phase local search algorithm abbreviated hereafter as
GRMSLS. Clearly, the comparison between the AGEA and
the GRMSLS will indicate the efciency and effectiveness of
the suggested evolution mechanism.
In order for the competition to be fair, the same congura-
tions and settings are used for both approaches. Regarding the
GRMSLS, the termination condition used for the route elimi-
nation and the distance minimization algorithms is two times
the maximum mutation rate obtained from the application of
AGEA (see for Section IV-C.2). Table III shows the mean
results and mean CPU time consumption (i.e., MTD, MNV,
and MTC) obtained from a single simulation run of AGEA and
GRMSLS on Solomons [16] 100-customer problem instances
with a population of 30 individuals. Furthermore, the last
column of the table indicates the percentage deviation (%Gap)
between the mean traveled distance of AGEA and GRMSLS.
Evidently, AGEA outperforms GRMSLS both in terms of
efciency and effectiveness. In particular, it produces higher
or at least equal quality solutions with cost reductions up
to 3.32%. Although, no direct comparisons can be made, it
is also worth to notice the large CPU time consumptions of
GRMSLS. All the above strongly indicate the efciency of the
evolution mechanism and illustrate its effective synergy with
the local search algorithms for route elimination and distance
minimization.
REPOUSSIS et al.: ARC-GUIDED EVOLUTIONARY ALGORITHM FOR THE VEHICLE ROUTING PROBLEM WITH TIME WINDOWS 639
TABLE V
COMPARISON AMONG THE BEST PERFORMING METAHEURISTIC IMPLEMENTATIONS WITH LIMITED COMPUTATIONAL RESOURCES
Class AGEA-A AGEA-B I05 LZ GH02 HG05 BHD MBD LC
R1 11.92 11.92 11.92 11.92 12.00 12.08 12.00 12.00 12.08
1211.43 1210.82 1217.36 1213.61 1217.57 1211.67 1214.69 1208.18 1209.19
R2 2.73 2.73 2.73 2.73 2.73 2.73 2.73 2.73 2.73
954.05 952.67 959.11 961.05 961.20 950.72 960.44 954.09 963.62
C1 10.00 10.00 10.00 10.00 10.00 10.00 10.00 10.00 10.00
828.38 828.38 828.38 828.38 828.63 828.45 828.38 828.38 828.38
C2 3.00 3.00 3.00 3.00 3.00 3.00 3.00 3.00 3.00
589.86 589.86 589.86 589.86 590.33 589.96 589.86 589.86 589.86
RC1 11.50 11.50 11.50 11.50 11.50 11.50 11.50 11.50 11.50
1384.82 1384.30 1391.03 1385.56 1395.13 1395.93 1389.20 1387.12 1389.22
RC2 3.25 3.25 3.25 3.25 3.25 3.25 3.25 3.25 3.25
1121.26 1119.72 1122.79 1121.82 1139.37 1135.09 1124.14 1119.70 1143.70
CNV 405 405 405 406 408 406 406 407
CTD 57216 57444 57368 57641 57422 57422 56812 57412
Machine PIV 3.0G PIII 1G PIV 2.8G P 400M P 400M A 700M PIII 800M P 850M
MFlops/s 1414 200 1317 54 54 136 142 65
Processors 1 1 1 4 1 1 1 5
CPU Time 17.9 75 93.2 15.1 17.5 2.7 43.8 12
Runs 3 1 1 5 5 30 1 1
Est. Speed 1 0.14 0.93 0.04 0.04 0.10 0.10 0.05
Est. Time 53.7 10.6 86.8 11.5 3.3 7.8 4.4 2.8
TABLE VI
COMPARISON AMONG THE BEST PERFORMING METAHEURISTIC IMPLEMENTATIONS WITH LIMITED COMPUTATIONAL RESOURCES
Class PDR BVH PR B LCK BBB RPTI RC HG99 I06
R1 11.92 11.92 11.92 11.92 11.92 11.92 12.00 12.08 11.92 12.08
1210.34 1213.25 1212.39 1222.12 1214.20 1221.10 1220.97 1207.82 1228.06 1212.09
R2 2.73 2.73 2.73 2.73 2.73 2.73 2.73 2.82 2.73 2.73
955.74 966.37 957.72 975.12 954.32 975.43 974.44 965.69 969.95 960.95
C1 10.00 10.00 10.00 10.00 10.00 10.00 10.00 10.00 10.00 10.00
828.38 828.38 828.38 828.38 828.38 828.38 828.38 828.38 828.38 828.38
C2 3.00 3.00 3.00 3.00 3.00 3.00 3.00 3.00 3.00 3.00
589.86 589.86 589.86 589.86 589.86 589.86 589.86 589.86 589.86 589.86
RC1 11.50 11.50 11.50 11.50 11.50 11.50 11.50 11.50 11.63 11.50
1384.16 1384.22 1385.78 1389.58 1385.30 1389.89 1396.68 1385.52 1392.57 1391.46
RC2 3.25 3.25 3.25 3.25 3.25 3.25 3.25 3.25 3.25 3.25
1119.44 1141.24 1123.49 1128.38 1129.43 1159.37 1160.97 1151.75 1144.43 1127.00
CNV 405 405 405 405 405 405 406 408 406 407
CTD 57255 57567 57332 57710 57360 57952 58006 57589 57876 57437
Machine O 2.3G S U 10 PIV 3.0G P 200M P 850M P 400M PIV 1.5G A 2.25G P 200M P 2.8G
MFlops/s n/a 208 1414 24 65 54 326 1385 24 1317
Processors 1 1 1 1 5 1 1 1 1 1
CPU Time 30 120 2.4 82.5 12 17.5 33.3 32.3 13 16.7
Runs 5 5 10 1 1 5 1 1 10 1
Est. Speed 1.2 0.15 1.00 0.02 0.05 0.04 0.23 0.98 0.02 0.93
Est. Time 180 88.3 24.0 1.4 2.8 3.3 7.7 31.6 2.2 15.53
In the literature, it is very common to combine evolutionary
algorithms with local search. This combination is completely
cooperative since it enables the search to intensify within
regions of the solution space close to local optimum solutions
produced during the evolution. In the case of the VRPTW, the
importance of local search is even greater due to the fact that
it is the only mechanism that can minimize the total number
of vehicles. Indeed, minimization of the eet size cannot
be simulated explicitly via the suggest evolution mechanism.
Overall, the role of the local search phase in the proposed
implementation is threefold. First, it intensies the search,
second it speeds up the convergence, and third it minimizes
the eet size.
5) Sensitivity of the Population Size : As mentioned ear-
lier, sensitive to the global search capabilities of the proposed
method is the population size . The size of the population can
affect signicantly the overall performance and the quality of
the solutions produced. Table IV summarizes the cumulative
results obtained with different settings of on Solomons [16]
datasets. It contains the cumulative number of vehicles (CNV),
the cumulative distance traveled (CTD), and the cumulative
computational time (CCT) consumption in minutes from a
single simulation run of AGEA. Clearly, small values of
(less than 15) are certainly not sufcient to handle the
amount of information included into the individuals. On the
contrary, larger values of (greater than 30) can exploit
the larger diversity of the strategy parameters. However, there
is a tradeoff especially in terms of time consumption as
increases, since the amount of time consumed from local
search also increases and the convergence speed reduces. For
Solomons data sets, a population of more than 20 individuals
can provide a good compromise.
640 IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, VOL. 13, NO. 3, JUNE 2009
TABLE VII
DETAILED RESULTS FOR CLASSES R1, C1 AND RC1
R1 %Gap TD NV RC1 %Gap TD NV C1 %Gap TD NV
R101 0.30 1650.80 19.00 RC101 0.00 1696.95 14.00 C101 0.000 828.94 10.00
R102 0.00 1486.12 17.00 RC102 0.00 1554.75 12.00 C102 0.000 828.94 10.00
R103 0.00 1292.68 13.00 RC103 0.06 1262.37 11.00 C103 0.000 828.06 10.00
R104 0.01 1007.31 9.00 RC104 0.03 1135.83 10.00 C104 0.000 824.78 10.00
R105 0.00 1377.11 14.00 RC105 0.00 1629.44 13.00 C105 0.000 828.94 10.00
R106 0.00 1252.03 12.00 RC106 0.00 1424.73 11.00 C106 0.000 828.94 10.00
R107 0.00 1104.66 10.00 RC107 0.01 1230.54 11.00 C107 0.000 828.94 10.00
R108 0.07 961.55 9.00 RC108 0.00 1139.82 10.00 C108 0.000 828.94 10.00
R109 0.00 1194.73 11.00 C109 0.000 828.94 10.00
R110 0.02 1118.84 10.00
R111 0.00 1096.73 10.00
R112 0.52 987.24 9.00
Mean 0.08 1210.82 11.92 Mean 0.02 1384.30 11.50 Mean 0.000 828.38 10.00
TABLE VIII
DETAILED RESULTS FOR CLASSES R2, C2 AND RC2
R2 %Gap TD NV RC2 %Gap TD NV C2 %Gap TD NV
R201 0.00 1252.37 4.00 RC201 0.00 1406.94 4.00 C201 0.000 591.56 3.00
R202 0.00 1191.70 3.00 RC202 0.00 1365.65 3.00 C202 0.000 591.56 3.00
R203 0.30 942.40 3.00 RC203 0.23 1052.01 3.00 C203 0.000 591.17 3.00
R204 0.75 831.69 2.00 RC204 0.01 798.46 3.00 C204 0.000 590.60 3.00
R205 0.00 994.43 3.00 RC205 0.04 1297.65 4.00 C205 0.000 588.88 3.00
R206 0.00 906.14 3.00 RC206 0.00 1146.32 3.00 C206 0.000 588.49 3.00
R207 0.00 890.61 2.00 RC207 0.09 1062.05 3.00 C207 0.000 588.29 3.00
R208 0.07 727.26 2.00 RC208 0.07 828.71 3.00 C208 0.000 588.32 3.00
R209 0.11 910.20 3.00
R210 0.00 939.37 3.00
R211 0.05 893.17 2.00
Mean 0.12 952.67 2.73 Mean 0.05 1119.72 3.25 Mean 0.000 589.86 3.00
Similar are the ndings for the large-scale problem instances
of Gehring and Homberger [17]. A minimum population size
of 30 individuals must be considered. Furthermore, it seems
reasonable to relate with the total number of customers n.
During our experiments, better results are obtained if varies
as a function of n as follows: = 20 + n/10. However, for
problem instances with more than 800 customers, the time
consumption increases rather rapidly. On the basis of the
above, a population size of more than 40 individuals offers
a good tradeoff between solution quality and computational
time. Finally, in an effort to examine the robustness of
AGEA, is xed to 40 during all computational experiments
reported in subsequent sections for both data sets of [16]
and [17].
D. Comparative Analysis on Solomons Datasets
Computational results for the VRPTW are ranked according
to a lexicographic objective function. The primary objective is
to minimize the total number of vehicles and for the same
number of vehicles, the secondary objective is to minimize
the total distance traveled by the vehicles. However, these
two objectives can be either conicting or complementary,
since the reduction of the total number of vehicles may
either increase or reduce respectively the total traveling dis-
tance. Thus, comparisons among different algorithms are
valid only if the above-described hierarchy of objectives is
followed.
In order for the competition among different metaheuris-
tic implementations to be fair and objective, a number of
issues must be considered rst. A measure has to be dened
for comparing computational running times from different
machines. Following the suggestions of other authors, an esti-
mated speed is derived for each machine using the benchmark
factors provided in [70]. Another issue is that most authors
report the best results obtained during multiple executions.
Since most solution approaches are non deterministic, each
execution would provide different results. Thus, in order to
provide an common basis of effectiveness comparison, the
reported computational time is multiplied by the number of
experiments and the number of processors in case of parallel
implementations.
Tables V and VI summarize the results obtained from the
application of AGEA on the benchmark datasets of [16]. The
rst line of both tables list the authors using the following
abbreviations: HG99 for [28], GH02 for [37], HG05 for [38],
BHD for [18], MBD for [39], LC for [43], LCK for [46],
BVH for [26], PDR for [50], I05 for [29], I06 for [30], LZ
for [31], PR for [24], RC for [41], RPTI for [47], and B for
[21]. The tables consist of three parts. The rst part contains
the mean results (MNV and MTD) for each class, while the
second shows the cumulative results (CTD and CNV). The
last part provides information for the machine, the number of
MFlops/s [70], the number of available processors, the number
of independent executions, the average CPU time in minutes
as reported by authors, the estimated speed with respect to
REPOUSSIS et al.: ARC-GUIDED EVOLUTIONARY ALGORITHM FOR THE VEHICLE ROUTING PROBLEM WITH TIME WINDOWS 641
TABLE IX
COMPARISON OF SOLUTION METHODS ON GROUP G02 WITH 200 CUSTOMERS
Class AGEA DPR GH02 HG05 BHD MB05 MBD LC LCK I06 LZ PR B
R1 18.20 18.20 18.20 18.20 18.20 18.20 18.20 18.20 18.20 18.20 18.20 18.20 18.1
3640.11 3615.69 3855.03 3890.06 3718.30 3618.68 3659.10 3676.95 3615.06 3655.24 3639.60 3631.23 3821.43
R2 4.00 4.00 4.00 4.10 4.00 4.00 4.00 4.00 4.00 4.00 4.00 4.00 4.00
2941.99 2937.67 3032.49 3059.78 3014.28 2942.92 2960.50 2986.01 2969.90 2958.56 2950.09 2949.37 3045.29
C1 18.90 18.90 18.90 19.00 18.90 18.80 18.90 18.90 18.90 18.90 18.90 18.90 18.9
2721.90 2718.77 2842.08 2836.66 2749.83 2717.21 2719.00 2743.66 2736.84 2734.42 2726.11 2721.52 2778.8
C2 6.00 6.00 6.00 6.00 6.00 6.00 6.00 6.00 6.00 6.00 6.00 6.00 6.00
1833.36 1831.59 1856.99 1898.44 1842.65 1833.57 1834.10 1836.10 1833.91 1833.37 1834.24 1832.94 1842.43
RC1 18.00 18.00 18.10 18.10 18.00 18.00 18.00 18.00 18.00 18.00 18.00 18.00 18
3224.63 3192.56 3674.91 3734.32 3329.62 3221.34 3276.00 3449.71 3255.97 3275.38 3205.51 3212.28 3508.07
RC2 4.30 4.30 4.40 4.50 4.40 4.40 4.40 4.30 4.30 4.30 4.30 4.30 4.4
2554.33 2559.32 2671.34 2640.94 2585.89 2519.79 2548.70 2613.75 2584.18 2576.12 2574.10 2556.87 2628.36
CNV 694 694 696 699 695 694 695 694 694 694 694 694 694
CTD 169163 168556 179328 180602 172406 168573 169968 173061 169958 170331 169296 169042 176244
Machine PIV 3.0G O 2.3G P 400M P 400M A 700M PIV 2.0G P 800M P 850M P 850M PIV 2.8G PIV 2.8G PIV 3.0G P 200M
Processors 1 1 4 1 1 1 1 5 5 1 1 1 1
CPU Time 90 53 2.1 1.6 2.4 8 54.4 10 10 33.3 93.2 7.7 18
Runs 1 5 3 3 3 1 1 1 1 1 1 10 1
Est. Speed 1.07 1.3 0.04 0.04 0.10 0.61 0.05 0.05 0.05 1 1 1.07 0.02
Est. Time 96.30 344.5 1.0 0.2 0.7 4.9 2.5 2.5 2.5 33.3 93.2 82.7 0.3
a Pentium IV 3.0-GHz PC, and the resulting estimated time.
Finally, the results of AGEA are presented in two columns.
The rst one (AGEA-A), indicates the average results obtained
over three simulation runs, while the second (AGEA-B) shows
the best results among the solutions obtained. Entities in italics
indicate best known or new best results.
As illustrated in Tables V and VI, the AGEA generates
highly competitive results for all classes. Compared to the cur-
rent state of the art, it produces the lowest ever reported CTD
among approaches with the lowest known CNV, i.e., PDR, I,
LZ, BVH, PR, B, LCK, and BBB. In particular, the cumulative
distance is reduced by more than 0.04% and 0.2% compared
to the rst and the second best reported CTD in [50] and
[24], respectively. Regarding mean results, AGEA produces
the second best reported MTD for the classes R1 and R2, ties
the best known MTD for the classes C1 and C2, and generates
the third best MTD for classes RC1 and RC2. In addition, it
generates solutions with the minimum total number of vehicles
and matches the lowest known CNV. The average results
over three independent executions show minor differences,
indicating its robustness. Finally, it is important to highlight
the efciency of the route elimination procedure that managed
to nd the lowest known MNV at each simulation run.
Tables VII and VIII provide the detailed results for each
problem instance of each class. The tables are divided into
three parts each corresponding to a particular class. Each
part contains four columns. The rst column refers to the
name of the problem instance. The second column shows
the percentage deviation (%Gap) from the corresponding best
known solution. The last two columns illustrate the distance
traveling cost (TD) and the total number of vehicles (NV)
produced. The last row of both tables describes the resulting
mean gures, i.e., the mean deviation from the best, the MTD
and the MNV for each class. Overall, the AGEA performs
almost equally well to all classes and obtains the minimum
number of vehicles published for all problem instances, with
a worst case percentage deviation less than 0.75%.
Apart from the efciency, it is also important to examine
the effectiveness of the proposed solution method. The com-
putational effort required by AGEA is reasonable compared to
other methods. In particular, the average computational time
consumption for each problem instance is at least in the same
order of magnitude (see Tables V and VI) with respect to the
best performing approaches. However, one must note that the
estimated times provide only a qualitative indication of the
relative computational burdens for each approach.
E. Comparative Analysis on Gehring and
Hombergers Datasets
Tables IXXIII summarize the results obtained from the
application of AGEA on the benchmark datasets of [17].
The rst line of both tables list the authors using the following
abbreviations: GH02 for [37], HG05 for [38], BHD for [18],
MB05 for [40], MBD for [39], LC for [43], LCK for [46],
PDR for [50], I06 for [30], LZ for [31], PR for [24], and B
for [21]. The tables consist of three parts. The rst part contain
the mean results (MNV and MTD) for each class, while the
second shows the cumulative results (CTD and CNV). The
last part provides information for the machine, the number of
available processors, the number of independent executions,
the average CPU time in minutes as reported by authors, the
estimated speed with respect to a Pentium IV 2.8-GHz PC
and the resulting estimated time. Entities in italics indicate
best known or new best results.
Compared to the best performing solution methods, AGEA
generates competitive results on the large-scale problem
instances. It produces the lowest ever reported CNVs for most
groups. For problem instances with 200 customers the same
CNV is exhibited, while for instances with more than 400
customers the CNV is reduced by 1, 4, 3, and 1 vehicles (for
groups G04, G06, G08, and G10, respectively) in comparison
with the current best known cumulative results reported in
[31]. In terms of mean results, AGEA manages to nd the
642 IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, VOL. 13, NO. 3, JUNE 2009
TABLE X
COMPARISON OF SOLUTION METHODS ON GROUP G04 WITH 400 CUSTOMERS
Class AGEA DPR GH02 HG05 BHD MB05 MBD LC LCK I06 LZ PR B
R1 36.40 36.40 36.40 36.40 36.40 36.30 36.30 36.50 36.40 36.40 36.40 36.40 36.20
8514.11 8420.52 9478.22 9547.86 8692.17 8530.03 8648.20 8839.28 8607.97 8788.54 8489.53 8540.04 9154.50
R2 8.00 8.00 8.00 8.00 8.00 8.00 8.00 8.00 8.00 8.00 8.00 8.00 8.00
6258.82 6213.48 6650.28 6683.53 6382.63 6209.94 6317.70 6437.68 6302.08 6251.54 6271.57 6241.72 6547.87
C1 37.60 37.60 38.00 38.10 37.90 37.90 38.00 37.90 37.90 37.60 37.60 37.60 38.00
7273.90 7182.75 7855.82 7921.19 7230.48 7148.27 7182.60 7447.09 7223.07 7302.50 7229.04 7290.16 7321.68
C2 11.70 11.90 12.00 12.00 12.00 12.00 12.00 12.00 12.00 11.80 11.70 12.00 12.00
3941.70 3874.58 3940.19 4049.71 3894.48 3840.85 3862.70 3940.87 3862.66 3985.21 3942.93 3844.69 3922.71
RC1 36.00 36.00 36.10 36.10 36.00 36.00 36.10 36.00 36.00 36.00 36.00 36.00 36.10
8088.46 7940.65 9294.99 9296.75 8305.55 8066.44 8192.20 8652.01 8267.81 8471.85 8005.25 8069.30 8628.74
RC2 8.40 8.60 8.80 9.20 8.90 8.80 8.90 8.60 8.60 8.60 8.50 8.50 8.70
5516.59 5269.09 5629.43 5609.88 5407.87 5243.06 5258.80 5511.22 5397.54 5328.84 5431.15 5335.09 5633.28
CNV 1381 1385 1392 1397 1391 1389 1390 1390 1389 1384 1382 1385 1390
CTD 395936 389011 428489 431089 399132 390386 394818 408281 396611 401285 393695 393210 412088
Machine PIV 3.0G O 2.3G P 400M P 400M A 700M P 2.0G P 800M P 850M P 850M P 2.8G P 2.8G P 3.0G P 200M
Processors 1 1 4 1 1 1 1 5 5 1 1 1 1
CPU Time 180 89 2.1 5.1 7.9 17 238.5 20 20 66.6 295.9 15.8 98.8
Runs 1 5 3 3 3 1 1 1 1 1 1 5 1
Est. Speed 1.07 1.3 0.04 0.04 0.10 0.61 0.05 0.05 0.05 1 1 1.07 0.02
Est. Time 192.60 578.5 1.0 0.6 2.4 10.3 10.9 4.9 4.9 66.6 295.9 84.8 1.8
TABLE XI
COMPARISON OF SOLUTION METHODS ON GROUP G06 WITH 600 CUSTOMERS
Class AGEA DPR GH02 HG05 BHD MB05 LC LCK I06 LZ PR
R1 54.50 54.50 54.50 54.50 54.50 54.50 54.80 54.80 54.50 54.50 54.50
18781.79 18252.13 21864.47 21605.60 19081.18 18358.68 19869.82 18698.37 19963.56 18381.28 18888.52
R2 11.00 11.00 11.00 11.00 11.00 11.00 11.20 11.20 11.00 11.00 11.00
12804.60 12808.59 13656.15 13682.21 13054.83 12703.52 13093.97 12989.35 12496.54 12847.31 12619.26
C1 57.30 57.40 57.70 57.90 57.80 57.80 57.90 57.70 57.50 57.40 57.50
14236.86 14106.03 14817.25 15086.01 14165.90 14003.09 14205.58 14166.80 14128.87 14103.61 14065.89
C2 17.40 17.50 17.80 18.00 18.00 17.80 17.90 17.90 17.40 17.40 17.50
7729.80 7632.37 7889.96 7897.59 7528.73 7455.83 7743.92 7582.61 7991.70 7725.86 7801.29
RC1 55.00 55.00 55.00 55.20 55.00 55.00 55.20 55.20 55.00 55.00 55.00
16767.72 16266.14 19114.02 19108.14 16994.22 16418.63 17678.13 16643.27 17395.51 16274.17 16594.94
RC2 11.40 11.70 11.90 12.20 12.10 12.10 11.80 11.80 11.60 11.50 11.60
11311.81 10990.85 11670.29 11649.75 11212.36 10677.46 11034.71 10868.94 10743.03 10935.91 10777.12
CNV 2066 2071 2079 2088 2084 2082 2088 2086 2070 2068 2071
CTD 816326 800797 890121 890293 820372 796172 836261 809493 827192 802681 807470
Machine PIV 3.0G O 2.3G P 400M P400M A 700M P 2.0G P 850M P 850M P 2.8G P 2.8G P 3.0G
Processors 1 1 4 1 1 1 5 5 1 1 1
CPU Time 270 105 12.9 10.3 16.2 40 30 30 100 646.9 18.3
Runs 1 5 3 3 3 1 1 1 1 1 5
Est. Speed 1.07 1.3 0.04 0.04 0.10 0.61 0.05 0.05 1 1 1.07
Est. Time 288.90 682.5 6.3 1.3 5.0 24.3 7.4 7.4 100.0 646.9 98.2
best known MNV for all classes (except class G10-RC2) and
improves the best known MNV/MTD of classes G02-RC2,
G04-C2, G04-RC2, G06-C1, G06-RC2, G08-C1, G08-RC2
and G10-C1. Overall, the quality of the solutions produced by
AGEA is in the worst case next to the best solutions generated
in [30], [31] and [50] (see columns I06, LZ and PDR).
The above results demonstrate that the proposed solution
method is both efcient and effective at nding high-quality
solutions with low computational burdens compared to the best
performing approaches. The sensitivity analysis conducted
earlier in Section IV-C demonstrated that AGEA could produce
even better solutions if additional computational time was
assumed (i.e., larger population size). The latter indicates that
the parameter settings used for the computational experiments
offered a good compromise between solution quality and CPU
Time consumption. Finally, given that these results obtained
from a single execution with xed parameter settings over all
problem instances, the robustness of the proposed solution
method is evident. To this end, a fairly consistent and a
good scalable behavior is observed, since AGEA scores almost
equally well to all classes of every group.
Table XIV provides the detailed results obtained for each
problem instance of each class for every group. The table
is divided into ve parts each corresponding to a particular
REPOUSSIS et al.: ARC-GUIDED EVOLUTIONARY ALGORITHM FOR THE VEHICLE ROUTING PROBLEM WITH TIME WINDOWS 643
TABLE XII
COMPARISON OF SOLUTION METHODS ON GROUP G08 WITH 800 CUSTOMERS
Class AGEA DPR GH02 HG05 BHD MB05 LC LCK I06 LZ PR
R1 72.80 72.80 72.80 72.80 72.80 72.80 73.10 72.80 72.80 72.80 72.80
32734.57 31797.42 34653.88 34976.51 32748.06 31918.47 33552.40 32290.48 33275.72 31755.57 32316.79
R2 15.00 15.00 15.00 15.00 15.00 15.00 15.00 15.00 15.00 15.00 15.00
20618.21 20651.81 21672.85 22055.78 21170.15 20295.28 21157.56 20765.88 20209.92 20601.22 20353.51
C1 75.20 75.40 76.10 76.70 76.30 76.20 76.30 76.20 75.70 75.40 75.60
25911.44 25093.38 26936.68 26563.59 25170.88 25132.27 25668.82 25612.47 25487.55 25026.42 25193.13
C2 23.40 23.50 23.70 24.10 24.20 23.70 24.10 24.00 23.40 23.40 23.70
11835.72 11569.39 11847.92 12018.64 11648.92 11352.29 11985.11 11393.80 11860.90 11598.81 11725.46
RC1 72.00 72.00 72.30 72.50 73.00 73.00 72.30 72.30 72.40 72.00 73.00
33795.61 33170.01 40532.35 38070.24 30005.95 30731.07 37722.62 33971.63 34621.63 31267.84 29478.30
RC2 15.50 15.80 16.10 16.20 16.30 15.80 15.80 15.80 15.70 15.60 15.70
17536.54 16852.38 17941.23 17980.04 17686.65 16729.18 17441.60 17202.08 16666.76 16992.79 16761.95
CNV 2739 2745 2760 2773 2776 2765 2766 2761 2750 2742 2758
CTD 1424321 1391344 1535849 1516648 1384306 1361586 1475281 1412363 1421225 1372427 1358291
Machine PIV 3.0G O 2.3G P 400M P 400M A 700M P 2G P 850M P 850M P 2.8G P 2.8G P 3G
Processors 1 1 4 1 1 1 5 5 1 1 1
CPU Time 360 129 23.2 18.2 26.2 145 40 40 133.3 1269.4 22.7
Runs 1 5 3 3 3 1 1 1 1 1 5
Est. Speed 1.07 1.3 0.04 0.04 0.10 0.61 0.05 0.05 1 1 1.07
Est. Time 385.20 838.5 11.4 2.2 8.1 88.1 9.9 9.9 133.3 1269.4 121.9
TABLE XIII
COMPARISON OF SOLUTION METHODS ON GROUP G10 WITH 1000 CUSTOMERS
Class AGEA DPR GH02 HG05 BHD MB05 LC LCK I06 LZ PR
R1 91.90 91.90 91.90 91.90 92.10 92.10 92.20 92.00 91.90 91.90 92.20
51414.26 49702.32 58069.61 57072.15 50025.64 49281.48 55176.95 51847.22 53366.10 48827.23 50751.25
R2 19.00 19.00 19.00 19.00 19.00 19.00 19.20 19.00 19.00 19.00 19.00
30804.79 30495.26 31873.62 32320.68 31458.23 29860.32 30919.77 30441.05 29546.19 30164.60 29780.82
C1 94.20 94.30 95.40 96.10 95.80 95.10 95.30 95.10 94.50 94.40 94.60
43111.60 41783.27 43392.59 43524.95 42086.77 41569.67 43283.92 42403.21 42459.35 41699.32 41877.00
C2 29.30 29.50 29.70 29.90 30.60 29.70 29.90 29.60 29.40 29.30 29.70
16810.22 16657.06 17574.72 17566.99 17035.88 16639.54 17443.50 17164.51 16986.46 16589.74 16840.37
RC1 90.00 90.00 90.10 90.10 90.00 90.00 90.00 90.00 90.00 90.00 90.00
46753.61 45574.11 50950.14 51337.25 46736.92 45396.41 49711.36 46118.08 48275.20 44818.54 46752.15
RC2 18.40 18.50 18.50 18.90 19.00 18.70 18.50 18.50 18.30 18.30 18.30
25588.52 25470.33 27175.98 27059.89 25994.12 25063.51 26001.11 25390.40 24904.08 25064.88 25090.88
CNV 3428 3432 3446 3459 3465 3446 3451 3442 3431 3429 3438
CTD 2144830 2096823 2290367 2288819 2133376 2078110 2225366 2133645 2155374 2071643 2110925
Machine PIV 3.0G O 2.3G P 400M P 400M A 700M P 2G P 850M P 850M P 2.8G P 2.8G P 3G
Processors 1 1 4 1 1 1 5 5 1 1 1
CPU Time 450 162 30.1 30.7 39.6 600 50 50 166.7 1865.4 26.6
Runs 1 5 3 3 3 1 1 1 1 1 5
Est. Speed 1.07 1.3 0.04 0.04 0.10 0.61 0.05 0.05 1 1 1.07
Est. Time 481.50 1053.0 14.8 3.8 12.3 364.5 12.3 12.3 166.7 1865.4 142.8
group. Each group contains six major columns each associated
with a particular class, while the very rst column refers to the
index of the problem instance. Each class contains the lower
bound (LB) in terms of vehicle routes, the distance traveling
cost (TD), and the total number of vehicles (NV). Overall,
several best known solutions are reproduced or improved.
Table XV summarizes the new best solutions found.
Lastly, in order to arrive at some nal conclusions that have
a meaning with respect to real life applications, the resulting
simplicity and exibility must be also considered. Compared
to other metaheuristic implementations, the proposed solution
method introduces a relatively few number of parameters.
Although it incorporates and combines different heuristics
and operators in a rather complex fashion, it has a fairly
simple algorithmic structure and utilizes simple and cost-
effective edge-exchange neighborhood structures. To this end,
the AGEA introduces a general solution framework that can be
adopted to address other vehicle routing problem variants or
similar discrete permutation ow combinatorial optimization
problems.
644 IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, VOL. 13, NO. 3, JUNE 2009
TABLE XIV
DETAILED RESULTS
Set R1 R2 C1 C2 RC1 RC2
LB NV TD LB NV TD LB NV TD LB NV TD LB NV TD LB NV TD
Group G02 - 200 Customers
1 20 20 4798.22 4 4 4507.24 20 20 2704.57 6 6 1931.44 18 18 3622.92 4 6 3114.61
2 18 18 4069.85 4 4 3666.99 18 18 2917.89 6 6 1863.16 18 18 3298.56 4 5 2825.24
3 18 18 3401.40 4 4 2893.29 18 18 2725.21 6 6 1775.08 18 18 3020.50 4 4 2636.69
4 18 18 3092.59 4 4 1981.48 18 18 2648.49 6 6 1717.80 18 18 2878.23 4 4 2050.33
5 18 18 4124.64 4 4 3372.95 18 20 2702.05 6 6 1878.85 18 18 3440.43 4 4 2914.42
6 18 18 3650.74 4 4 2929.70 18 20 2701.04 6 6 1857.35 18 18 3400.64 4 4 2894.46
7 18 18 3168.47 4 4 2455.53 18 20 2701.04 6 6 1849.46 18 18 3208.51 4 4 2573.79
8 18 18 2985.43 4 4 1850.03 18 19 2777.31 6 6 1823.88 18 18 3156.58 4 4 2322.79
9 18 18 3792.76 4 4 3095.27 18 18 2689.79 6 6 1830.05 18 18 3168.57 4 4 2195.37
10 18 18 3316.96 4 4 2667.39 18 18 2651.61 6 6 1806.58 18 18 3051.39 4 4 2015.61
Group G04 - 400 Customers
1 40 40 10415.02 8 8 9297.03 40 40 7152.06 11 12 4127.89 36 36 8723.06 8 11 6954.64
2 36 36 9093.26 8 8 7635.11 36 36 7846.48 11 12 3930.05 36 36 8160.86 8 9 6547.81
3 36 36 7977.91 8 8 6136.55 36 36 7185.11 11 11 4111.18 36 36 7756.43 8 8 5112.19
4 36 36 7405.40 8 8 4392.56 36 36 6901.36 11 11 3918.68 36 36 7429.76 8 8 3715.39
5 36 36 9404.18 8 8 7206.31 36 40 7152.06 11 12 3943.03 36 36 8459.56 8 8 7318.12
6 36 36 8593.35 8 8 6232.67 36 40 7153.45 11 12 3875.94 36 36 8412.05 8 8 5967.86
7 36 36 7711.70 8 8 5207.29 36 39 7541.26 11 12 3894.23 36 36 8230.64 8 8 5510.99
8 36 36 7436.03 8 8 4145.76 36 37 7612.07 11 12 3807.29 36 36 7803.08 8 8 4966.37
9 36 36 8853.22 8 8 6481.17 36 36 7138.36 11 12 3871.81 36 36 7971.21 8 8 4677.67
10 36 36 8250.98 8 8 5853.75 36 36 7056.82 11 11 3936.91 36 36 7937.89 8 8 4394.89
Group G06 - 600 Customers
1 59 59 21472.67 11 11 18344.29 60 60 14095.64 17 18 7774.16 55 55 17972.80 11 14 14304.80
2 54 54 19948.20 11 11 15007.67 56 56 14367.62 17 17 8404.17 55 55 16638.58 11 12 11992.79
3 54 54 17861.10 11 11 11581.47 56 56 13797.56 17 17 7606.40 55 55 15736.60 11 11 10065.57
4 54 54 16290.50 11 11 8616.86 56 56 13730.80 17 17 7083.29 55 55 15084.67 11 11 7635.84
5 54 54 20738.05 11 11 15465.81 56 60 14085.72 17 18 7576.39 55 55 17282.98 11 11 14667.29
6 54 54 18850.02 11 11 12985.75 56 60 14089.66 17 18 7480.56 55 55 17241.55 11 11 12347.57
7 54 54 17451.18 11 11 10732.48 56 57 16012.20 17 18 7530.46 55 55 17021.28 11 11 11376.06
8 54 54 16204.27 11 11 8379.21 56 56 14637.03 17 17 7933.00 55 55 16816.30 11 11 10904.06
9 54 54 20052.14 11 11 14148.38 56 56 13833.13 17 17 8534.60 55 55 17223.03 11 11 10130.03
10 54 54 18949.80 11 11 12784.07 56 56 13719.23 17 17 7374.99 55 55 16659.39 11 11 9694.13
Group G08 - 800 Customers
1 80 80 37430.48 15 15 28668.66 80 80 25184.38 22 24 11664.00 72 72 35950.20 15 19 21411.64
2 72 72 34236.47 15 15 23320.62 72 72 29675.36 22 23 12607.72 72 72 33784.01 15 16 19441.70
3 72 72 30911.64 15 15 18496.31 72 72 24699.80 22 23 12191.48 72 72 31621.54 15 15 15312.23
4 72 72 29019.60 15 15 14112.15 72 72 24071.24 22 23 11676.29 72 72 30335.32 15 15 11552.61
5 72 72 35664.56 15 15 25075.52 72 80 25166.28 22 24 11465.49 72 72 35456.12 15 15 21843.41
6 72 72 32805.10 15 15 21060.20 72 80 25160.85 22 24 11373.05 72 72 35745.20 15 15 19293.99
7 72 72 30664.83 15 15 17656.24 72 78 26126.85 22 24 11381.51 72 72 34253.13 15 15 17940.40
8 72 72 28895.99 15 15 13712.03 72 74 27198.66 22 23 11900.72 72 72 33859.45 15 15 16767.75
9 72 72 34701.60 15 15 22825.91 72 72 25994.21 22 23 12617.65 72 72 33340.68 15 15 16509.55
10 72 72 33015.46 15 15 21254.44 72 72 25836.74 22 23 11479.31 72 72 33610.43 15 15 15292.14
Group G10 - 1000 Customers
1 100 100 54893.46 19 19 44747.02 100 100 42478.95 28 30 16879.24 90 90 48763.57 18 21 31613.91
2 91 91 53205.26 19 19 35679.65 90 90 45296.66 28 29 17305.15 90 90 46821.43 18 19 27475.07
3 91 91 49172.92 19 19 26786.14 90 90 41222.65 28 29 17944.78 90 90 44923.02 18 18 21301.23
4 91 91 45974.47 19 19 19544.96 90 90 40966.23 28 28 16716.23 90 90 43989.21 18 18 17281.72
5 91 91 57001.66 19 19 38115.96 90 100 42469.18 28 30 16581.42 90 90 47822.73 18 18 28759.70
6 91 91 51727.80 19 19 32037.50 90 100 42494.41 28 30 16381.46 90 90 48197.01 18 18 28594.56
7 91 91 48406.86 19 19 24821.51 90 98 43830.76 28 30 16666.67 90 90 47664.69 18 18 27015.12
8 91 91 45071.59 19 19 19015.66 90 94 44554.59 28 29 16473.02 90 90 46063.74 18 18 25383.11
9 91 91 55058.50 19 19 35162.78 90 90 45360.50 28 29 16863.51 90 90 46823.51 18 18 24568.93
10 91 91 53630.08 19 19 32136.70 90 90 42442.10 28 29 16290.74 90 90 46467.14 18 18 23891.85
REPOUSSIS et al.: ARC-GUIDED EVOLUTIONARY ALGORITHM FOR THE VEHICLE ROUTING PROBLEM WITH TIME WINDOWS 645
TABLE XV
NEW BEST SOLUTIONS
Problem Best Known New Best
Instance NV TD Author %Gap NV TD
C2-2-3 6 1775.11 MBD 0.002 6 1775.08
RC1-4-8 36 7836.29 PDR 0.424 36 7803.08
RC2-4-5 9 5923.95 PDR 8 7318.12
C2-4-10 11 3950.49 LZ 0.344 11 3936.91
C1-6-7 58 14851.65 PDR 57 16012.20
RC2-6-5 12 12302.84 I06 11 14667.29
C2-6-9 17 8736.56 LZ 2.312 17 8534.60
C1-8-2 73 25979.67 LZ 72 29675.36
V. CONCLUSION
This paper has presented an arc-guided evolutionary algo-
rithm for solving the well-studied VRPTW. It manipulates a
population of individuals in the basis of an (+)-evolution
strategy, utilizing a discrete arc-based representation combined
with a binary vector of strategy parameters. Following a
strictly generational course of evolution and a deterministic
selection scheme of survivors, offspring are produced via
mutation out of arcs extracted from single parent individuals.
The proposed mutation operator is based on the ruin-and-
recreate principle, while the corresponding mutation rate is
dictated by the strategy parameters. A multiparent recombina-
tion operator is applied to the strategy parameters of each indi-
vidual, based on the appearance frequency of each arc and the
diversity of population. Each resulting offspring is improved
via a two-phase local search procedure tuned for intensication
search. Experimental results on the well-known benchmark
datasets of Solomon [16] and Gehring and Homberger [17]
demonstrated the competitiveness of the proposed approach.
Compared to the current state of the art, it proved to be highly
efcient and effective improving the best reported cumulative
and mean results over most classes with reasonable compu-
tational requirements. Furthermore, it obtained the minimum
published eet size of most problem instances and it matched
or improved several best known solutions using xed parame-
ter settings during all computational experiments. Finally, the
relatively few parameters and the fairly simple structure indi-
cate the applicability of the arc-guided evolutionary algorithm
on real-life vehicle routing and scheduling applications.
A worth-pursuing research direction is the investigation of
different recombination operators. One option is to use the fre-
quency of appearance of each arc to guide the search not only
toward promising but also unexplored regions of the solution
space. Furthermore, one may incorporate pattern-identication
mechanisms [46] in order to x or prohibit particular solution
attributes and constrain the search either for intensication
or for diversication purposes. Finally, alternative selection
schemes may yield a signicant improvement in performance.
REFERENCES
[1] J.-F. Cordeau, G. Desaulniers, J. Desrosiers, M. M. Solomon, and F.
Soumis, The vehicle routing problem with time windows, in The
Vehicle Routing Problem, Philadelphia, PA: SIAM Monographs on
Discrete Mathematics and Applications, 2002, pp. 157193.
[2] V. Lambert, G. Laporte, and F. Louveaux, Designing collection routes
through bank branches, Comput. Oper. Res., vol. 20, no. 7, pp. 783791,
1993.
[3] B.-I. Kim, S. Kim, and S. Sahoo, Waste collection vehicle routing
problem with time windows, Comput. Oper. Res., vol. 33, no. 12,
pp. 36243642, 2006.
[4] B. L. Golden, A. A. Assad, and E. A. Wasil, Routing vehicles in the
real world: Applications in the solid waste, beverage, food, dairy, and
newspaper industries, in The Vehicle Routing Problem, Philadelphia,
PA: SIAM Monographs on Discrete Mathematics and Applications,
2002, pp. 245286.
[5] J. Bracca, J. Bramel, and D. Simchi-Levi, A computerized approach
to the New York city school bus routing problem, IIE Trans., vol. 29,
no. 8, pp. 693702, 1994.
[6] B. S. Vaidyanathan, J. O. Matson, D. M. Miller, and J. E. Matson, A
capacitated vehicle routing problem for just-in-time delivery, IIE Trans.,
vol. 31, no. 11, pp. 10831092, 1999.
[7] M. W. Carter, J. M. Farvolden, G. Laporte, and J. Xu, Solving an
integrated logistics problem arising in grocery distribution, in Proc.
INFOR, vol. 34. 1996, pp. 290306.
[8] D. Weigel, and B. Cao, Applying GIS and OR techniques to solve sears
technician-dispatching and home-delivery problems, Interfaces, vol. 29,
no. 1, pp. 112130, 1999.
[9] J. Desrosiers, Y. Dumas, M. M. Solomon, and F. Soumis, Time
constrained routing and scheduling, in Network Routing (Handbooks
Operations Research and Manage. Sci. Ser. 8). Amsterdam, Netherlands:
Elsevier, 1995, pp. 35139.
[10] O. Brysy, W. Dullaert, and M. Gendreau, Evolutionary algorithms for
the vehicle routing problem with time windows, J. Heuristics, vol. 10,
no. 6, pp. 587611, 2004.
[11] O. Brysy and M. Gendreau, Vehicle routing problem with time win-
dows part I: Route construction and local search algorithms, Transport
Sci., vol. 39, no. 1, pp. 104118, 2005.
[12] O. Brysy and M. Gendreau, Vehicle routing problem with time
windows part II: Metaheuristics, Transport Sci., vol. 39, no. 1, pp. 119
139, 2005.
[13] I. Rechenberg, Evolutionsstrategie. Stuttgart, Germany: Fromman-
Holzboog, 1973.
[14] F. Glover, Future paths for integer programming and links to articial
intelligence, Comput. Oper. Res., vol. 13, no. 5, pp. 533549, 1986.
[15] C. Voudouris and E. Tsang, Guided local search and its application
to the traveling salesman problem, Eur. J. Oper. Res., vol. 113, no. 2,
pp. 469499, 1999.
[16] M. M. Solomon, Algorithms for the vehicle routing and scheduling
problems with time window constraints, Oper. Res., vol. 35, no. 2,
pp. 254265, 1987.
[17] H. Gehring and J. Homberger, A parallel hybrid evolutionary meta-
heuristic for the vehicle routing problem with time windows, in
Proc. EUROGEN 99, Jyvskyl, Finland: University of Jyvskyl,
pp. 5764.
[18] O. Brysy, G. Hasle, and W. Dullaert, A multistart local search
algorithm for the vehicle routing problem with time windows, Eur.
J. Oper. Res., vol. 159, no. 3, pp. 586605, 2004.
[19] G. Dueck and T. Scheurer, Threshold accepting: A general purpose
optimization algorithm appearing superior to simulated annealing, J.
Comput. Phys., vol. 90, no. 1, pp. 161175, 1990.
[20] E. D. Taillard, P. Badeau, M. Gendreau, F. Guertin, and J.-Y. Potvin,
A tabu search heuristic for the vehicle routing problem with soft time
windows, Transport Sci., vol. 31, pp. 170186, May 1997.
[21] O. Brysy, A reactive variable neighborhood search for the vehicle
routing problem with time windows, INFORMS J. Comput., vol. 15,
pp. 347368, Fall 2003.
[22] N. Mladenovi c and P. Hansen, Variable neighborhood search, Comput.
Oper. Res., vol. 24, no. 11, pp. 10971100, 1997.
[23] F. Glover, Ejection chains, reference structures and alternating path
methods for traveling salesman problems, Discrete Appl. Math., vol. 65,
no. 13, pp. 223253, 1996.
[24] D. Pisinger and S. Ropke, A general heuristic for vehicle routing
problems, Comput. Oper. Res., vol. 34, no. 8, pp. 24032435, 2006.
[25] S. Kirkpatrick, C. D. Gelatt, and P. M. Vecchi, Optimization by
simulated annealing, Sci., vol. 220, no. 4598, pp. 671680, 1983.
[26] R. Bent, and P. van Hentenryck, A two-stage hybrid local search for
the vehicle routing problem with time windows, Transport Sci., vol. 38,
pp. 515530, Nov. 2004.
[27] P. Shaw, Using constraint programming and local search methods
to solve vehicle routing problems, in Principles Practice Constraint
Programming - CP 98, LNCS vol. 1520. Berlin, Germany: Springer-
Verlag, 1998, pp. 417431.
646 IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, VOL. 13, NO. 3, JUNE 2009
[28] J. Homberger and H. Gehring, Two evolutionary meta-heuristics for the
vehicle routing problem with time windows, in Proc. INFOR, vol. 37.
1999, pp. 297318.
[29] T. Ibaraki, S. Imahori, M. Kudo, T. Masuda, T. Uno, and M. Yagiura,
Effective local search algorithms for routing and scheduling problems
with general time window constraints, Transport Sci., vol. 39, pp. 206
232, May 2005.
[30] T. Ibaraki, S. Imahori, K. Nonobe, K. Sobue, T. Uno, and M. Yagiura,
An iterated local search algorithm for the vehicle routing problem with
convex time penalty functions, Department of Mathematical Informat-
ics, Univ. Tokyo, Tokyo, Japan, Math. Eng. Tech. Report, METR 2006
36, 2006.
[31] A. Lim, and X. Zhang, A two-stage heuristic with ejection pools and
generalized ejection chains for the vehicle routing problem with time
windows, INFORMS J. Comput., vol. 19, no. 3, pp. 443457, 2007.
[32] D. E. Joslin, and D. P. Clememnts, Squeaky wheel optimization, J.
Articial Intell. Res., vol. 10, pp. 353373, 1999.
[33] R. K. Ahuja, J. B. Orlin, and D. Sharma, Very large-scale neighborhood
search, Int. Trans. Operations Res. vol. 7, pp. 301317, 2000.
[34] J. Berger, M. Barkaoui, and O. Braysy, A route directed hybrid genetic
approach for the vehicle routing problem with time windows, in Proc.
INFOR, vol. 41. 2003, pp. 179194.
[35] F.-H. Liu and S.-Y. Shen, A route-neighborhood-based metaheuristic
for vehicle routing problem with time windows, Eur. J. Oper. Res.,
vol. 118, no. 3, pp. 485504, 1999.
[36] H. Gehring, and J. Homberger, Parallelization of a two-phase meta-
heuristic for routing problems with time windows, Asia-Pacic J. Oper.
Res., vol. 18, no. 1, pp. 3547, 2001.
[37] H. Gehring, and J. Homberger, Parallelization of a two-phase meta-
heuristic for routing problems with time windows, J. Heuristics, vol. 8,
no. 3, pp. 251276, 2002.
[38] J. Homberger, and H. Gehring, A two-phase hybrid metaheuristic for
the vehicle routing problem with time windows, Eur. J. Oper. Res.,
vol. 162, no. 1, pp. 220238, 2005.
[39] D. Mester, O. Brysy, and W. Dullaert, A multi-parametric evolution
strategies algorithm for vehicle routing problems, Expert. Syst. Appl.,
vol. 32, no. 2, pp. 508517, 2006.
[40] D. Mester, and O. Brysy, Active guided evolution strategies for large
scale vehicle routing problems with time windows, Comput. Operations
Res. vol. 32, no. 6, pp. 15931614, 2005.
[41] R. A. Russell, and W.-C. Chiang, Scatter search for the vehicle routing
problem with time windows, Eur. J. Oper. Res., vol. 169, no. 2, pp. 606
622, 2006.
[42] W.-C. Chiang, and R. A. Russell, A reactive tabu search metaheuristic
for the vehicle routing problem with time windows, INFORMS J.
Comput., vol. 9, pp. 417430, Fall 1997.
[43] A. Le Bouthillier, and T. G. Crainic, Co-operative parallel metaheuristic
for vehicle routing with time windows, Comput. Oper. Res., vol. 32,
no. 7, pp. 16851708, 2005.
[44] J.-F. Cordeau, G. Laporte, and A. Mercier, A unied tabu search
heuristic for vehicle routing problems with time windows, J. Oper. Res.
Soc., vol. 52, pp. 928936, 2001.
[45] M. Gendreau, A. Hertz, and G. Laporte, A tabu search heuristic for the
vehicle routing problem, Manage. Sci., vol. 40, no. 10, pp. 12761290,
1994.
[46] A. Le Bouthillier, T. G. Crainic, and P. Kropf, A guided cooperative
search for the vehicle routing problem with time windows, IEEE Intell.
Syst., vol. 20, no. 4, pp. 3642, Jul.Aug. 2005.
[47] P. P. Repoussis, D. C. Paraskevopoulos, C. D. Tarantilis, and G. Ioannou,
A reactive greedy randomized variable neighborhood tabu search for
the vehicle routing problem with time windows, in Workshop Hybrid
Metaheuristics 2006, LNCS vol. 4030. New York: Springer-Verlag,
2006, pp. 124138.
[48] T. Feo and M. G. C. Resende, Greedy randomized adaptive search
procedures, J. Global. Optim., vol. 6, no. 2, pp. 109154, 1995.
[49] G. Kontoravdis and J. F. Bard, A GRASP for the vehicle routing
problem with time windows, ORSA J. Comput., vol. 7, no. 1, pp. 1023,
1995.
[50] E. Prescott-Gagnon, G. Desaulniers, and L.-M. Rousseau, A branch-
and-price-based large neighborhood search algorithm for the vehicle
routing problem with time windows, University of Montreal, Montreal,
Canada, Tech. Report G200767, 2007.
[51] L.-M. Rousseau, M. Gendreau, and G. Pesant, Using constraint-based
operators to solve the vehicle routing problem with time windows,
J. Heuristics, vol. 8, no. 1, pp. 4358, 2002.
[52] J. H. Holland, Adaptations in Natural and Articial Systems. Michigan
Press, 1975.
[53] B. Ombuki, B. J. Ross, and F. Hanshar, Multiobjective genetic algo-
rithms for the vehicle routing problem with time windows, Appl. Intell.,
vol. 24, no. 1, pp. 1730, 2006.
[54] N. Jozefowiez, F. Semet, and E.-G. Talbi, Multiobjective vehicle routing
problems, Eur. J. Oper. Res., vol. 189, no. 2, pp. 293-309, 2008.
[55] D. B. Fogel, Evolutionary Computation: The Fossil Record. Piscataway,
NJ: IEEE Press, 1998.
[56] T. Bck, U. Hammel, and H.-P. Schwefel, Evolutionary computation:
Comments on the history and current state, IEEE T Evolut. Comput.,
vol. 1, no. 1, pp. 317, Apr. 1997.
[57] C. D. Tarantilis and C. T. Kiranoudis, BoneRoute: An adaptive
memory-based method for effective eet management, Ann. Oper. Res.,
vol. 115, no. 1, pp. 227241, 2002.
[58] C. D. Tarantilis, Solving the vehicle routing problem with adaptive
memory programming methodology, Comput. Oper. Res., vol. 32, no. 9,
pp. 23092327, 2005.
[59] F. Glover, Tabu search and adaptive memory programming advances,
applications and challenges, in Interfaces in Computer Science Oper-
ation Research: Advances in Metaheuristics. (Optimization Stochastic
Modelling Technologies), Boston, MA: Kluwer, 1997, pp. 175.
[60] E. D. Taillard, L. M. Gambardella, M. Gendreau, and J.-Y. Potvin,
Adaptive memory programming: A uned view of metaheuristics, Eur.
J. Oper. Res., vol. 135, no. 9, pp. 116, 2001.
[61] P. P. Repoussis, C. D. Tarantilis, and G. Ioannou, The open vehicle
routing problem with time windows, J. Oper. Res. Soc., vol. 58, no. 3,
pp. 355367, 2007.
[62] D. C. Paraskevopoulos, P. P. Repoussis, C. D. Tarantilis, G. Ioannou,
and G. P. Prastacos, A reactive variable neighborhood tabu search for
the heterogeneous eet vehicle routing problem with time windows,
J. Heuristics, vol. 14, no. 5, pp. 425455, 2007.
[63] G. Ioannou, M. Kritikos, and G. P. Prastacos, A greedy look-ahead
heuristic for the vehicle routing problem with time windows, J. Oper.
Res. Soc., vol. 52, no. 6, pp. 523537, 2001.
[64] S. C. Ho and M. Gendreau, Path relinking for the vehicle routing
problem, J. Heuristics, vol. 12, no. 12, pp. 5572, 2006.
[65] G. A. P. Kindervater and M. W. P. Savelsbergh, Vehicle routing:
Handling edge exchanges, in Local Search Combinatorial Optimization.
London, U.K.: Wiley, 1998, pp. 337360.
[66] C. D. Tarantilis, E. E. Zachariadis, and C. T. Kiranoudis, A hybrid
guided local search for the vehicle routing problem with intermediate
replenishment facilities, INFORMS J. Comput. vol. 20, pp. 154168,
Winter 2008.
[67] M. Gendreau and J.-Y. Potvin, Metaheuristics in combinatorial opti-
mization, Anns. Oper. Res., vol. 140, no. 1, pp. 189213, 2005.
[68] I. H. Osman, Metastrategy simulated annealing and tabu search algo-
rithms for the vehicle routing problem, Anns. Oper. Res., vol. 41,
no. 14, pp. 421452, 1993.
[69] P. Ross, Hyper-heuristics, in Search Methodologies: Introductory
Tutorials Optimization Decision Support Methodologies. New York:
Springer-Verlag, 2005, pp. 529556.
[70] J. J. Dongarra, Performance various comput. using standard linear
equations software, Comput. Sci. Dept., Univ. Tennessee, Knoxville,
TN, Tech. Report UT-CS-04526, UT-CS-8995, 2006.
Panagiotis P. Repoussis received the Diploma
in chemical engineering from the National Tech-
nical University of Athens, Athens, Greece, the
M.Sc./DIC degree in process systems engineering
from the Imperial College London, London, U.K.,
and the Ph.D. degree from the Department of Man-
agement Science and Technology, Athens University
of Economics and Business, Athens, Greece.
He is currently a Senior Researcher with the Cen-
ter for Operations Research and Decision Systems,
Athens University of Economics and Business. His
scientic interests are in the elds of systems engineering, mathematical
modeling, and optimization. He specializes in the analysis, design, and
development of articial intelligent algorithms and computational tools in the
areas of transportation logistics, supply chain management, service operations,
and production scheduling. He has published or presented more than 40
scientic papers in international journals, books, and conferences.
Dr. Repoussis is a member of the board of directors of the Hellenic
Operational Research Society, member of the Technical Chamber of Greece,
and has been acting as consultant and senior researcher for several EU and
national projects.
REPOUSSIS et al.: ARC-GUIDED EVOLUTIONARY ALGORITHM FOR THE VEHICLE ROUTING PROBLEM WITH TIME WINDOWS 647
Christos D. Tarantilis received the Bachelors
degree in mathematics from the University of Patras,
Patra, Greece, the MSc in operations research from
the London School of Economics, London, U.K.,
and the Ph.D. degree from the Chemical Engineering
School, National Technical University of Athens,
Athens, Greece.
He is currently an Associate Professor of Oper-
ations Research at the Department of Management
Science and Technology and Director of the Opera-
tions Research and Decision Systems Center, Athens
University of Economics and Business, Athens, Greece. His research interests
include the application of operations research techniques for complex decision
systems. He specializes in the analysis, design and development of integrated
models, methodologies, and computational tools in the areas of distribution
logistics services, supply chain management, and production scheduling. He
has published or presented more than 100 scientic papers in international
journals, books, and conferences. In addition, he has been acting as a member
of the Board of Directors of several companies, as principal investigator for
several EU and national projects, and as consultant for public organizations
and private industries.
Dr. Tarantilis has been the recipient of the Best Teaching Faculty Award
of the Department of Management Science and Technology more than ten
times.
George Ioannou received the Diploma in mechan-
ical engineering from the National Technical Uni-
versity of Athens, Athens, Greece, the M.Sc./DIC
degree in industrial robotics and manufacturing
automation from Imperial College London, London,
U.K., and the Ph.D. degree from the Institute for
Systems Research, Department of Mechanical Engi-
neering, University of Maryland, College Park.
He is currently a Professor of production and
operations management at the Department of Man-
agement Science and Technology, Athens University
of Economics and Business, Athens, Greece. He is also the Acting Director of
the International MBA Program and directs the Operations and ERP Systems
Center. He has served as an Assistant Professor at Department of Industrial
and Systems Engineering, Virginia Polytechnic Institute and State University,
Blacksburg, and is a member of the Technical Chamber of Greece, chairing
its Research and Development Committee. His research integrates information
technology and enterprise processes optimization, and has been sponsored by
the National Science Foundation, the General Secretariat for Research and
Technology, Greece, the European Commission, and several private and public
organizations.
Dr. Ioannou is a recipient of the Microsoft Excellence in Education Award
and has been honored by many Teaching Excellence Awards for his MBA
courses.

Potrebbero piacerti anche