A two-phase hybrid heuristic algorithm for the capacitated location-routing problem

25
Author’s Accepted Manuscript A two-phase hybrid heuristic algorithm for the capacitated location-routing problem John Willmer Escobar, Rodrigo Linfati, Paolo Toth PII: S0305-0548(12)00111-6 DOI: http://dx.doi.org/10.1016/j.cor.2012.05.008 Reference: CAOR3094 To appear in: Computers & Operations Research Cite this article as: John Willmer Escobar, Rodrigo Linfati and Paolo Toth, A two-phase hybrid heuristic algorithm for the capacitated location-routing problem, Computers & Operations Research, http://dx.doi.org/10.1016/j.cor.2012.05.008 This is a PDF file of an unedited manuscript that has been accepted for publication. As a service to our customers we are providing this early version of the manuscript. The manuscript will undergo copyediting, typesetting, and review of the resulting galley proof before it is published in its final citable form. Please note that during the production process errors may be discovered which could affect the content, and all legal disclaimers that apply to the journal pertain. www.elsevier.com/locate/caor

Transcript of A two-phase hybrid heuristic algorithm for the capacitated location-routing problem

Author’s Accepted Manuscript

A two-phase hybrid heuristic algorithm for thecapacitated location-routing problem

John Willmer Escobar, Rodrigo Linfati, Paolo Toth

PII: S0305-0548(12)00111-6DOI: http://dx.doi.org/10.1016/j.cor.2012.05.008Reference: CAOR3094

To appear in: Computers & Operations Research

Cite this article as: John Willmer Escobar, Rodrigo Linfati and Paolo Toth, A two-phasehybrid heuristic algorithm for the capacitated location-routing problem, Computers &Operations Research, http://dx.doi.org/10.1016/j.cor.2012.05.008

This is a PDF file of an unedited manuscript that has been accepted for publication. As aservice to our customers we are providing this early version of the manuscript. Themanuscript will undergo copyediting, typesetting, and review of the resulting galley proofbefore it is published in its final citable form. Please note that during the production processerrors may be discovered which could affect the content, and all legal disclaimers that applyto the journal pertain.

www.elsevier.com/locate/caor

A two-phase hybrid heuristic algorithm for thecapacitated location-routing problem

John Willmer Escobara,b, Rodrigo Linfatia, Paolo Totha,∗

aDepartment of Electronics, Computer Sciences and Systems (DEIS) , University ofBologna, Viale Risorgimento 2, 40136 Bologna, Italy

bDepartamento de Ingenierıa Civil e Industrial , Pontificia Universidad Javeriana, Calle 18No. 118-250, 26239 Cali, Colombia

Abstract

In this paper, we propose a two-phase hybrid heuristic algorithm to solve thecapacitated location-routing problem (CLRP). The CLRP combines depot lo-cation and routing decisions. We are given on input a set of identical vehicles(each having a capacity and a fixed cost), a set of depots with restricted capaci-ties and opening costs, and a set of customers with deterministic demands. Theproblem consists of determining the depots to be opened, the customers and thevehicles to be assigned to each open depot, and the routes to be performed tofulfill the demand of the customers. The objective is to minimize the sum of thecosts of the open depots, of the fixed cost associated with the used vehicles, andof the variable traveling costs related to the performed routes. In the proposedhybrid heuristic algorithm, after a Construction phase (first phase), a modifiedgranular tabu search, with different diversification strategies, is applied duringthe Improvement phase (second phase). In addition, a random perturbationprocedure is considered to avoid that the algorithm remains in a local optimumfor a given number of iterations. Computational experiments on benchmarkinstances from the literature show that the proposed algorithm is able to pro-duce, within short computing time, several solutions obtained by the previouslypublished methods and new best known solutions.

Keywords: Location routing problem, Granular tabu search, Heuristicalgorithms.

1. Introduction

The location routing problem (LRP) includes two types of fundamental prob-lems of the supply chain management: the facility location problem and the ve-

∗Corresponding author. Fax.: +39 051 2093073.Email addresses: [email protected] (John Willmer Escobar),

[email protected] (Rodrigo Linfati), [email protected] (Paolo Toth)

Preprint submitted to Computers & Operations Research June 1, 2012

hicle routing problem. The different aspects of these problems such as location,assignment and routing have been generally studied independently. This can beexplained by considering that the location is a strategic decision which is takenfor a long time frame, while the routing is an operational aspect which can bemodified dynamically many times in a short time. However, it is well know thatthese decisions are interrelated. Indeed, the decision of locating a depot is ofteninfluenced by the transportation costs and vice versa (for more details see Rand[1]). As a consequence, the LRP has become an interesting field of research.

This paper considers the capacitated location-routing problem (CLRP), i.e.the LRP with capacity constrains for both the depots and the routes. TheCLRP can be defined as the following graph theory problem. Let G = (V,E)be a complete undirected graph, in which V = {1, . . . ,m+ n} is the vertex setand E is the edge set. Vertices i = 1, . . . ,m correspond to the potential depots,each with a capacity Wi and an opening cost Oi. Vertices j = m+1, . . . ,m+ncorrespond to the customers, each with a nonnegative demand dj . A set ofhomogeneous vehicles, each with capacity Q, is available at each depot. Eachvehicle, when is used by a depot to perform a single route, causes a nonnegativefixed cost F . A nonnegative cost cij is associated with each edge (i, j) ∈ E.

The goal of the CLRP is to determine the depots to be opened, the cus-tomers and the vehicles to be assigned to each open depot, and the routes tobe constructed to fulfill the demand of the customers with the minimum globalcost, given by the sum of the set-up costs of the open depots, the costs of theused vehicles, and the costs of the edges traveled by the routes. The followingconstraints are imposed:

• each route must start and finish at the same depot;

• each customer is visited exactly once by a single route;

• the sum of the demands of the customers visited by each route must notexceed the vehicle capacity;

• the sum of the demands of the customers assigned to each depot must notexceed its corresponding capacity;

• connections between depots are not allowed.

The CLRP is NP-hard since it generalizes three well known NP-hard prob-lems: the capacitated facility location problem (CFLP), the capacitated vehiclerouting problem (CVRP), and the multi depot vehicle routing problem (MD-VRP). The CFLP can be described as a CLRP with unlimited vehicle capacity(i.e. Q = ∞), vehicle fixed cost equal to zero (i.e. F = 0), and infinite cost forthe edges connecting any pair of customers (i.e. cij = ∞ for i = m+1, . . . ,m+nand j = m+ 1, . . . ,m+ n). The CVRP can be described as a CLRP with onlyone depot (i.e. m = 1), and the MDVRP can be formulated as a CLRP withdepot opening cost equal to zero (i.e. Oi = 0 for i = 1, . . . ,m).

In this paper, we propose a two-phase hybrid heuristic algorithm to solve theCLRP. The paper is organized as follows. The existing literature is described in

2

Section 2. Section 3 details the proposed two-phase heuristic algorithm. Exper-imental results on the benchmark instances from the literature are presented inSection 4. Finally, conclusions and future research are given in Section 5.

2. Literature review

Few surveys on location-routing problems have been presented in the lit-erature. Min et al. [2] proposed a classification for the LRP based on thesolution methods, and the problem perspectives. The most recent classifica-tion, proposed by Nagy and Salhi [3], is based on eight different aspects. Thishierarchical taxonomy provides a more integrated view of the LRP literature.

Different mathematical formulations with two and three indices have beenproposed for the LRP and the CLRP. Three-index formulations for the LRPwere introduced by Perl and Daskin [4] and Hansen et al. [5], and for the CLRPby Prins et al. [6]. Two-index formulations for the CLRP have been proposedby Laporte et al. [7], Contardo et al. [8] and Belenguer et al. [9]. These exactapproaches can consistently solve to proven optimality instances with less than100 customers. For this reason, heuristic algorithms have been proposed to solvelarge CLRP instances.

Nagy and Salhi [3] classified these algorithms as sequential, iterative, hier-archical, and clustering based methods. Sequential methods usually solve thefacility location problem, and then the corresponding routing problem for eachopen depot (see, e.g. Daganzo [10]). According to Salhi and Rand [11], thistype of approach avoids an important feedback between the two subproblems.

On the other hand, iterative methods solve both subproblems in an iterativeway providing a feedback between the two subproblems. In these methods, theCLRP is tackled either by solving the corresponding routing problem withoutconsidering the location decisions and assigning one depot for each cluster ofcustomers, or by solving the facility location problem and performing at leastone route for each open depot. Tuzun and Burke [12] proposed a two-phasetabu search approach that iterates between the location and the routing phasesin order to search better solutions for large instances. In this work, results forinstances with up to 200 customers have been reported.

Prins et al. [6] proposed a two-phase algorithm which exchanges informationbetween the location and routing phases. In the first phase, the routes andtheir customers are aggregated into super customers, and the correspondingcapacitated facility location problem is solved by using a Lagrangean relaxationtechnique. In the second phase, a granular tabu search (GTS) procedure (seeToth and Vigo [13]) with one neighborhood was used to solve the resulting multidepot vehicle routing problem. At the end of each iteration, information aboutthe promising edges is recorded to be used in the following phase.

Hierarchical methods solve the CLRP by using a hierarchical structure.First, the facility location problem is solved as the main problem, and then,the subsequent routing problem is solved as the subordinate problem. The lo-cation problem is solved in an approximate way by applying at each step a

3

subroutine that solves the corresponding routing problem. Interested readersare referred to Albareda-Sambola et al. [14] and Melechovsky et al. [15].

Cluster based methods for the CLRP were proposed by Barreto et al. [16].In this work, in the first phase the customer set is split into clusters accordingto the vehicle capacity. In the second phase, a Traveling Salesman Problem(TSP) is solved for each cluster. Finally, in the final phase, the TSP circuitsare grouped into super nodes for solving the corresponding capacitated facilitylocation problem.

Other heuristics for the CLRP have been proposed by Prins et al. [17]. In thiswork, a greedy randomized adaptive search procedure (GRASP), with a learningprocess and a path relinking strategy, has been proposed. A randomized versionof the Clarke and Wright algorithm (proposed by Clarke and Wright [18] for theCVRP) is applied during the GRASP phase. In addition, a learning process isimplemented to choose the correct depots. A path relinking strategy is then usedas post optimization procedure to generate new solutions. The same authors(Prins et al. [19]) proposed a memetic algorithm with population management.

Recent heuristics for solving the CLRP were developed by Yu et al. [20]and Duhamel et al. [21]. In the first work, a simulated annealing procedure(SA) based on three random neighborhood structures has been proposed. Inthe second work, Duhamel et al. [21] proposed a successful method based on ahybridized GRASP with a evolutionary local search (ELS) procedure.

3. Description of the proposed algorithm

This section presents a two-phase hybrid heuristic algorithm (2-Phase HGTS)developed for solving the CLRP. The main body of the proposed algorithm con-sists of two major phases: Construction phase and Improvement phase. In theConstruction phase, the goal is to build an initial feasible solution using an Ini-tial hybrid procedure followed by a Splitting procedure to minimize the routingcost. In the Improvement phase, a modified GTS procedure, which considersseveral diversification steps, is applied to improve the quality of the current so-lution. Whenever no improvement is obtained within Npert×n iterations (whereNpert is a given parameter), the algorithm tries to escape from the current lo-cal optimum by applying a randomized perturbation procedure. In addition, aprocedure VRPH, based on the library of local search heuristics for the VRPproposed by Groer et al. [22], is introduced as a general improvement routine.

The key-point for the success of the proposed algorithm is the location ofthe correct depots in the Construction phase. Since the most critical decisionsof the Improvement phase are those concerning the opening and closing of thedepots, a proper location of the depots is able to reduce the search space forthe Improvement phase from a CLRP to a MDVRP. The previously mentionedprocedures are described in more detail in the following subsections.

3.1. Procedure VRPH

Groer et al. [22] have recently proposed a software library containing fast

4

local search heuristics for finding good feasible solutions for the CVRP. Thestandard library offers four different routines:

• vrp initial : this routine uses a variant of the Clarke-Wright algorithm,proposed by Yellow [23], to generate initial solutions for the CVRP;

• vrp rtr : this routine is an implementation of the record-to-record travelmetaheuristic proposed by Li et al. [24];

• vrp sa: this routine is an implementation of a Simulated Annealing (SA)metaheuristic;

• vrp ej : this routine is an implementation of a neighborhood ejection/injectionalgorithm.

We developed a procedure, called VRPH, which applies routines vrp initial andthen, iteratively, routine vrp sa and vrp rtr until no improvement is reached.Procedure VRPH is executed in several parts of the two-phase hybrid algorithmas a general improvement procedure for a given depot. We do not use theejection/injection algorithm vrp ej since, according to our computational ex-periments on the considered CLRP benchmark instances, it increases a lot theglobal computing time with a negligible improvement of the quality solution.The outline of procedure VRPH is described in Algorithm 1.

Algorithm 1 Procedure: VRPH

Input: vrp instance, vrp solution (optional)Output: vrp solution1: if no vrp solution exists then2: vrp initial(vrp solution)3: end if4: repeat5: repeat6: call vrp sa(vrp solution)7: until vrp solution is not improved8: repeat9: call vrp rtr(vrp solution)

10: until vrp solution is not improved11: until vrp solution is not improved

3.2. Construction phase

In this phase, we propose a procedure to construct an initial feasible solution.The procedure is based on a hybrid methodology which combines exact andheuristic techniques. In addition, a cluster based method is considered as astarting point in an iterative framework. The Construction phase procedurecalls in sequence the procedures Initial hybrid and Splitting described in thefollowing subsections.

5

3.2.1. Initial hybrid procedure

The initial CLRP solution S0 is obtained by applying a hybrid procedurewhich is generally able to find good feasible solutions within short computingtimes. This hybrid approach combines exact algorithms with the well-knownLin-Kernighan heuristic procedure (LKH) (see Lin and Kernighan [25] and Hels-gaun [26]), used to find good solutions for the TSPs corresponding to the routesdefined by a depot and a subset of customers.

A good initial CLRP solution can be obtained by recognizing clusters of cus-tomers which can be visited in the same route. To this end, we have developeda procedure that considers all the customers and constructs the correspondinggiant TSP tour by using procedure LKH. The giant tour is then split into severalclusters so as to satisfy for each cluster the vehicle capacity. Then, for each de-pot i and for each cluster j, procedure LKH is applied to find the correspondingTSP tour, and to get the route cost lij for assigning depot i to cluster j. Thebest assignment of the depots to the clusters is obtained by introducing twosets of binary variables x and y, where xij = 1 iff depot i is assigned to clusterj, and yi = 1 iff depot i is opened, and by solving the following integer linearprogramming (ILP) model:

min z =∑i∈D

Oiyi +∑i∈D

∑j∈G

lijxij (1)

subject to ∑i∈D

xij = 1 ∀ j ∈ G (2)

∑j∈G

dcjxij 6 Wiyi ∀ i ∈ D (3)

yi ∈ {0, 1} ∀ i ∈ D (4)

xij ∈ {0, 1} ∀ i ∈ D, j ∈ G (5)

where:

D set of depotsG set of clustersdcj global demand of cluster j

The objective function (1) sums the opening costs for of the used depots andthe traveling costs associated with the edges traversed by the routes. Constraints(2) guarantee that each cluster is assigned to exactly one depot. Constraints(3) impose the capacity for the open depots. Finally, constraints (4) and (5)impose the integrality of the variables used in the model. It has to be notedthat ILP model (1)-(5) corresponds to the formulation of the well known Single

6

Source Capacitated Plant Location Problem (see, e.g. Barcelo and Casanovas[27], and Klincewicz and Luss [28]).

It is worth to that there are n possibilities to split the giant tour, by con-sidering each customer as possible initial vertex. For this reason, the hybridprocedure is repeated n times keeping the best feasible solution found. Theproposed algorithm tries to improve the current solution by applying the Split-ting procedure described in the following subsection.

3.2.2. Splitting procedure

The Splitting procedure is based on the idea that the total traveling costcan be decreased by adding new routes, and assigning them to different depots.Note that the splitting procedure can be effective only when the cost F for usinga vehicle is small. The procedure starts by considering the route which containsthe longest (largest cost) edge and by selecting its three longest edges. Then,for the three combinations of two of these edges, say edges (r, s) and (t, u), thefollowing steps are performed (see Fig. 1):

• edges (r, s) and (t, u) are removed from the considered route;

• the considered route is shortcut by inserting edge (r, u);

• the subset of customers belonging to the chain connecting vertex s tovertex t in the considered route is selected as the cluster to form a newroute;

• for each open depot for which the assignment of the cluster satisfies thedepot capacity constraint, procedure LKH is applied to find the TSP tourcorresponding to the assignment of the cluster to the depot;

• the cluster is assigned to the depot, say d, for which the cost of the corre-sponding TSP tour is minimum;

• procedure VRPH is applied to the customers currently assigned to depot d,and to those currently assigned to the depot associated with the consideredroute (for both depots, the associated current CVRP solutions are givenon input to procedure VRPH).

Whenever the global cost of the new solution is smaller than that of the bestsolution found so far, the latter solution is updated. We repeat the Splittingprocedure Nsplit times (where Nsplit is a given parameter), by considering ateach iteration a different route. Finally, procedure VRPH is executed for all thedepots for which the solution obtained by the Initial hybrid procedure has notbeen changed.

3.3. Improvement phase

In this stage, the algorithm tries to improve the initial solution S0 obtainedby the Construction phase applying a modified granular tabu search (GTS)procedure. The goal of the Improvement phase is to optimize the routes without

7

u

t

rs

d

u

t

rs

depots

costumers

Figure 1: Example of the splitting procedure

considering moves between close and open depots, hence the search space isrelated to a MDVRP. In this phase, we allow infeasible solutions with respectto the depot and vehicle capacities (see subsection 3.3.2).

To reduce the computing time required by each iteration of a local searchprocedure, which can steeply grow with the instance size, Toth and Vigo [13]proposed the so called granular tabu search (GTS) approach. The method isbased on the use of a candidate list strategy, which drastically reduces the timerequired by a tabu search algorithm. The main objective of the GTS approach isto have good solutions by using a neighborhood structure that can be evaluatedin a short time. Three main differences with respect to the idea of “granu-larity” introduced by Toth and Vigo [13] for the CVRP are considered here.Basically, the proposed algorithm considers five neighborhoods, three differentdiversification strategies, and a random perturbation procedure to avoid thatthe algorithm remains in a local optimum for a given number of iterations.

If the number of routes of the current solution is greater than the minimumnumber of routes, Nmin, required to visit all the customers, where Nmin =⌈∑m+n

j=m+1 dj

Q

⌉, an attempt is performed to reduce the number of routes. In

particular, the algorithm starts by removing the least loaded routes (routescontaining one or two customers), and inserting each of the associated customersinto the best position, with respect to the objective function F2(S) describedin subsection 3.3.2, of one of the remaining routes. A new solution S is thendetermined by applying procedure VRPH for all the depots involved in themove for which the depot capacity constraint is satisfied. For each depot, thecorresponding CVRP solutions are given on input to procedure VRPH. Theproposed granular neighborhoods, diversification strategies and perturbationprocedure are described in the following subsections.

3.3.1. Granular Neighborhoods

The proposed algorithm executes the following five types of moves forMax Iteriterations (where Max Iter is a given parameter):

• Shift: One customer is transferred from its current position to another

8

position either in the same or in a different route (assigned to the sameor to a different depot).

• Swap: Two customers are exchanged, either in the same route or betweendifferent routes (assigned to the same or to different depots).

• Two opt: This is a modified version of the well-known 2-opt move, in whichtwo non consecutive edges are removed and the routes are reconnected ina different way. Note that if the two selected edges are in the same route,the two opt move is equivalent to that described by Lin and Kernighan[25]. If the two edges are in different routes assigned to the same depot,the move is similar to the traditional 2-opt inter route move for the VRP.Otherwise, if the edges belong to different depots, there are several ways torearrange the routes. In this case, it is necessary to perform an additionalmove concerning the edges connecting the depots with the last customersof the selected routes to ensure that each route starts and finishes at thesame depot.

• Exchange: Two consecutive customers are transferred from their currentpositions to different positions by keeping the edge connecting them. Thetwo customers can be inserted in their current route or in a different route(assigned to the same or to a different depot).

• Inter-tour exchange: This is an extension of the Swap move and considerstwo pairs of consecutive customers. The edge connecting each pair ofcustomers is kept. The exchange is performed between two different routes(assigned to the same or to different depots).

3.3.2. Space search and diversification strategies

The proposed GTS procedure uses the same space search introduced by Tothand Vigo [13]. The original complete graph G is replaced by a sparse graphwhich includes all the edges whose cost is smaller than the granularity thresholdϑ, the edges incident to the depot, and those belonging to the best solutionfound so far. The value of ϑ is defined by means of an increasing function of thesparsification factor β: ϑ = βz∗, where z∗ is the average cost of the edges in thecurrent best solution found so far. Only the moves for which all the involvededges are contained in the sparse graph are considered.

Three diversification strategies have been considered. The first strategy isrelated to the granularity diversification proposed by Toth and Vigo [13]. Ini-tially, the sparsification factor β is set to its initial value β0. If no improvementof the best feasible solution found so far is reached after Nmovbeta iterations, thesparsification factor β is increased to βd. A new sparse graph is then calculated,and Nmoviter iterations are executed starting from the best solution found sofar. Finally, the sparsification factor β is reset to its initial value β0 and thesearch continues. β0, βd, Nmovbeta and Nmoviter are given parameters.

The second diversification strategy is based on a penalty approach. Sinceinfeasible solutions can be considered during the search process, we have imple-

9

mented the following penalty scheme based on the techniques proposed by Gen-dreau et al. [29] and Taillard [30] for the VRP. Let us consider a CLRP solutionS composed by a set of k routes R1, . . . , Rk. Each route Rr, r ∈ {1, . . . , k}, isdenoted by (vr0, vr1,vr2, . . . , vr0), where vr0 represents the open depot assignedto the route, and vr1, vr2, . . . represent the visited customers. Note that S canbe feasible or infeasible with respect to the vehicle capacity and the depot capac-ity. Let T be the subset of the open depots. In addition, the following notationis used: v ∈ Rr if a customer v belongs to route Rr, (u, v) ∈ Rr if u and vare two consecutive vertices of route Rr, and Di is the set of customers assignedto the open depot i. The following objective function F1(S) is associated withany feasible solution S:

F1(S) =∑i∈T

Oi +k∑

r=1

∑(u,v)∈Rr

cuv + Fk

The following objective function F2(S) is associated with any solution S(feasible or infeasible):

F2(S) = F1(S) + Pd

∑i∈T

[∑v∈Di

dv −Wi

]+

+ Pr

k∑r=1

[ ∑v∈Rr

dv −Q

]+

where [x]+

= max(0, x), and Pd and Pr are two positive weights used toincrease the cost of the solution S by adding the sum of the excess loads of theoverloaded open depots, and the sum of the excess demands of the overloadedroutes, respectively. The two weights are calculated as follow: Pd = αd ×F1(S0) and Pr = αr × F1(S0), where F1(S0) is the value of the objectivefunction of the solution S0 obtained by the Construction phase, and αd andαr are two parameters which are adjusted during the search within the range[αmin, αmax]. In particular, if no infeasible solutions with respect to the depotcapacity have been found over Nmovpen iterations, then the value of αd is setto max{αmin, αd × rpen}, where rpen < 1. On the other hand, if no feasiblesolutions have been found during Nmovpen iterations, then the value of αd is setto min{αmax, αd × ipen}, where ipen > 1. A similar rule is applied to modifythe value of αr. αd, αr, αmin, αmax, Nmovpen, rpen, ipen are given parameters.

In the selection of the best move to be performed we consider the followingcriterion for the evaluation of a move leading to an infeasible solution S. If thevalue of F2(S) is less than the cost of the best solution found so far, we assignS a value F (S) = F2(S). Otherwise, as diversification strategy, we introduce anextra penalty by adding to F2(S) a constant term equal to the product of theabsolute difference value △max between two successive values of the objectivefunction, the square root of the number of routes k, and a scaling factor g (forfurther details see Taillard [30]). Therefore, we define F (S) = F2(S)+△max

√kg

(where g is a given parameter). Note that if the new solution S is feasible, wedefine F (S) = F1(S). The move corresponding to the minimum value of F (S)is performed.

10

In the third diversification strategy, every Nfact × n iterations (where Nfact

is a given parameter), we consider the best solution found so far which is fea-sible with respect to the depot capacity and apply procedure VRPH for eachopen depot. Note that procedure VRPH is able to transform a solution which isinfeasible with respect to the route capacity into a feasible solution. This diver-sification strategy may help the algorithm to explore new parts of the solutionspace.

3.3.3. Perturbation procedure

Since the modified GTS procedure can fail in finding a move improving thecurrent solution, the algorithm tries to escape from a local optimum by perturb-ing the current solution. In particular, if no improving move has been performedafter Npert × n iterations, the algorithm applies a perturbation approach similarto the “3-route procedure” proposed by Renaud et al. [31].

Differently from what is proposed by Renaud et al. [31], we consider a ran-domized procedure for selecting the routes to be perturbed. In particular, weuse an exchange scheme involving three routes. The algorithm selects the firstroute k1 in a random way. The second route k2 is the closest neighbor of k1,and the third route k3 is the closest neighbor of k2, with k1 = k3. The evalua-tion of the “distance” between the routes depends on the characteristics of theconsidered instance. In particular, as it is the case for the benchmark instancesconsidered in our computational experiments (see Section 4), if each vertex ofthe input graph G is associated with a point in the plane, and the cost cij ofedge (i, j) in proportion to the Euclidean distance between the points associ-ated with vertices i and j, then the distance between the routes is calculatedby considering their “center of gravity”.

For each customer i1 of route k1, each customer i2 of route k2, each edge(h2, j2) of route k2 (with h2 = i2 and j2 = i2), and each edge (h3, j3) of routek3, we obtain a new solution S by considering the following move, in which wedo not impose the depot and vehicle capacity constraints:

• remove customer i1 from route k1 and insert it between vertices h2 andj2 in route k2;

• remove customer i2 from route k2 and insert it between vertices h3 andj3 in route k3.

The move associated with the solution S corresponding to the minimumvalue of F2(S) is performed, even if S is worse than the current solution.

4. Computational results

4.1. Implementation details

The overall algorithm (2-Phase HGTS) has been implemented in C++, andthe computational experiments have been performed on an Intel Core Duo CPU(2.00 GHz) under Linux Ubuntu 11.04 with 2 GB of memory. The ILP model

11

(1) - (5) has been optimally solved by using the ILP solver CPLEX 12.1. Theperformance of the proposed algorithm has been evaluated by considering 79benchmark instances taken from the literature. The complete set of instancesconsiders three data subsets. The first data subset (DS1) was proposed byTuzun and Burke [12] and considers 36 instances with capacity constraints onlyon the routes. It considers instances with n = 100, 150 and 200 customers.The number m of potential depots is either 10 or 20. The customers and thedepots correspond to random points in the plane. The traveling cost of anarc is calculated as the Euclidean distance between the points correspondingto the extreme vertices of the arc. The vehicle capacity Q is set to 150, andthe demands of the customers are uniformly random distributed in the interval[1, 20].

The second data subset (DS2) was proposed by Prins et al. [32], and contains30 instances with capacity constraints on both the routes and the depots. Thenumber m of potential depots is either 5 or 10, and the number of customers isn = 20, 50, 100 and 200. The customers and the depots correspond to randompoints in the plane. For this data subset, the traveling costs are calculated asthe corresponding Euclidean distances, multiplied by 100 and rounded up tothe next integer. The vehicle capacity Q is either 70 or 150, and the demandsof the customers are uniformly random distributed in the interval[11, 20].

The instances of the third data subset (DS3), introduced by Barreto [33],were obtained from some classical CVRP instances by adding new depots withthe corresponding capacities and fixed costs. This data subset considers 13instances. The routes are capacitated and, with the exception of few instances,the depots are also capacitated. The number of customers ranges from 21 to150, and the number of potential depots from 5 to 10.

For each instance, only one run of the proposed algorithm is executed. Thetotal number of iterations of the main loop on the Improvement Phase, Max Iter,is set to 10 × n. The tabu tenure for each move performed is calculated (as inGendreau et al. [29]) as an integer uniformly distributed random number in theinterval [5, 10]. As for other heuristics, extensive computational tests have beenmade to find a suitable set of parameters. On average, the best performanceof 2-Phase HGTS has been obtained by considering the following values of theparameters: Npert = 0.20, Nsplit = 7, β0 = 1.50, βd = 2.40, Nmovbeta = 2,Nmoviter = 1, αd = 0.01, αr = 0.0075, αmin = 1

F1(S0), αmax = 0.04, Nmovpen =

10, ipen = 2.00, rpen = 0.30, g = 0.02, and Nfact = 1.50. These values havebeen utilized for the solution of all the considered instances.

The proposed algorithm has been compared (see Tables 2 to 6) with the fivemost effective published heuristics proposed for the CLRP: GRASP of Prinset al. [17], the memetic algorithm with population management (MA|PM) ofPrins et al. [19], the Langrangean relaxation and granular tabu search method(LRGTS) of Prins et al. [6], GRASP+ELS of Duhamel et al. [21], and thesimulated annealing algorithm (SALRP) of Yu et al. [20]. The results reportedfor GRASP (Prins et al. [17]), MA|PM (Prins et al. [19]), LGRTS (Prins et al.[6]) and SALRP (Yu et al. [20]) correspond to a single run of the associated

12

algorithm. GRASP+ELS (Duhamel et al. [21]) has been run five times byconsidering five different random generator seeds, and the reported cost is thebest found over the five runs; the reported computing time is the time requiredto reach the best solution within the corresponding run. In the paper by Yuet al. [20], the authors report also the cost of the best solution found by SALRPduring the parameter analysis phase. In Tables 1 to 6, the following notation isused:

Instance instance namen number of customersm number of potential depotsCost solution cost obtained by each algorithm (either one single

run or the best run)BKC cost of the best-known result among GRASP, MA|PM,

LRGTS, GRASP+ELS, SALRP and 2-Phase HGTSBKS cost of the best-known result obtained either by the six

considered algorithms (BKC) or during the parameteranalysis phase of SALRP

CPU CPU used by each methodCPU index Passmark performance Test for each CPUCPU time running time in seconds on the CPU used by each

algorithmGap BKC percentage gap of the solution cost found by each algorithm

with respect to BKCGap BKS percentage gap of the solution cost found by each algorithm

with respect to BKS.

In addition, for each instance, the costs which are equal to the correspondingBKC, are reported in bold. Whenever algorithm 2-Phase HGTS improves theBKS value, its result is underlined. Finally, the CPU index is given by thePassmark performance test 1. This is a well known benchmark test focused onCPU and memory performance. Higher values of the Passmark test indicatethat the corresponding CPU is faster.

4.2. Global results

Table 1 provides the contribution of each of the ingredients of the proposedheuristic to the quality of the final solution. The table shows the results (averagevalues of Gap BKS, Gap BKC and the cumulative CPU time) corresponding toeach of the following solutions:

• Initial hybrid: solutions obtained after the application of the Initial hybridprocedure;

1PassMark R⃝ Software Pty Ltd, http://www.passmark.com

13

• Splitting: solutions obtained after the application of the Splitting proce-dure (i.e. at the end of the First Phase);

• Global: solutions obtained by the proposed 2-Phase HGTS heuristic (i.e.at the end of the Second Phase).

In addition, the results corresponding to the solutions obtained at the end ofthe Second Phase “without” a specific ingredient, but with all the other ingre-dients active have been reported. The following solutions have been considered:

• Wsecond: solutions obtained without considering the second diversifica-tion strategy;

• Wthird: solutions obtained without considering the third diversificationstrategy;

• Wperturbation: solutions obtained without considering the perturbationprocedure.

The Splitting procedure is rather time consuming, but it produces substan-tial improvements on all the instances. The table shows that each of the ingre-dients used in the proposed algorithm is effective.

A summary about the results obtained by the considered six algorithms forthe complete instance dataset is given in Tables 2 and 3. Table 2 provides theaverage values of Gap BKS, Gap BKC and CPU time, and the CPU index ofthe corresponding CPU. Table 3 reports the number of BKC, BKS and new bestknown (new BKS) solutions obtained by each algorithm. Table 2 shows thatthe proposed algorithm provides the lowest global averages for Gap BKS andGap BKC. As for the global CPU time, the proposed algorithm is faster thanGRASP+ELS and SALRP, which were able to find the previous best resultsin terms of average gaps and number of best solutions. It is to note that theCPU time reported for algorithm GRASP+ELS does not represent the globaltime required to find the best solution (obtained by executing five runs), sinceit corresponds to the CPU time spent, for each instance, in a single run. Onthe other hand, the CPU time of 2-Phase HGTS is larger than that of GRASP,MA|PM and LGRTS. This can be explained by the fact that we use severalimprovement procedures in the second phase. Although the CPU time of theproposed algorithm is larger than that of these approaches, it remains withinan acceptable range for a strategic problem like CLRP. In addition, algorithm2-Phase HGTS is able to find the largest number of best solutions.

4.2.1. Tuzun-Burke instances

The results for the first data subset (DS1) are shown in Table 4. The resultsshow that the proposed algorithm outperforms all the other heuristics for whatconcerns the global average values of Gap BKS and Gap BKC, and the globalnumber of the best solutions found. It is to note that the performance of theproposed algorithm improves, with respect to that of the other methods, for thelargest instances (150 and 200 customers).

14

4.2.2. Prodhon instances

The detailed results for the second data subset (DS2) are given in Ta-ble 5. On average, the proposed approach has values of Gap BKS and GapBKC smaller than those of GRASP, MA|PM, LRGTS, and GRASP+ELS. OnlySALRP provides, although with longer CPU times, slightly better values of GapBKS and Gap BKC. It is worth to note that the proposed algorithm clearly out-performs all the other methods for large-scaled instances with 200 customers.

4.2.3. Barreto instances

The results obtained by the proposed algorithm and by the other approachesfor the third data subset (DS3) are given in Table 6. The table shows that theproposed algorithm is competitive with the other algorithms in terms of solutionquality.

5. Concluding remarks

We propose an effective two-phase hybrid heuristic algorithm for the capac-itated location routing problem (CLRP). In the proposed heuristic, after theconstruction of an initial feasible solution in the Construction phase, we applyan Improvement phase based on a modified Granular Tabu Search which con-siders five granular neighborhoods, three different diversification strategies anda perturbation procedure. The perturbation procedure is applied whenever thealgorithm remains in a local optimum for a given number of iterations.

We compared the proposed algorithm with the five most effective publishedheuristics for the CLRP on a set of benchmark instances from the literature. Theresults show the effectiveness of the proposed algorithm, and several best knownsolutions are improved within reasonable computing times. The results obtainedsuggest that the proposed framework could be applied to other problems asthe periodic location-routing problem (PLRP), the multi depot vehicle routingproblem (MDVRP) and several extensions of the CLRP obtained by addingconstraints as time windows, heterogeneous fleet, etc.

Acknowledgment

The work of the first author has been partially supported by MIUR (Minis-tero Istruzione, Universit e Ricerca), Italy and Pontificia Universidad JaverianaCali, Colombia. The authors are extremely grateful to an anonymous refereefor the very helpful comments.

References

[1] G. Rand, Methodological choices in depot location studies, OperationalResearch Quarterly 27 (1) (1976) 241–249.

15

[2] H. Min, V. Jayaraman, R. Srivastava, Combined location-routing prob-lems: A synthesis and future research directions, European Journal of Op-erational Research 108 (1) (1998) 1–15.

[3] G. Nagy, S. Salhi, Location-routing: Issues, models and methods, EuropeanJournal of Operational Research 177 (2) (2007) 649–672.

[4] J. Perl, M. Daskin, A warehouse location-routing problem, TransportationResearch Part B: Methodological 19 (5) (1985) 381–396.

[5] P. Hansen, B. Hegedahl, S. Hjortkjaer, B. Obel, A heuristic solution tothe warehouse location-routing problem, European Journal of OperationalResearch 76 (1) (1994) 111–127.

[6] C. Prins, C. Prodhon, A. Ruiz, P. Soriano, R. Wolfler-Calvo, Solvingthe capacitated location-routing problem by a cooperative Lagrangeanrelaxation-granular tabu search heuristic, Transportation Science 41 (4)(2007) 470–483.

[7] G. Laporte, Y. Nobert, D. Arpin, An exact algorithm for solving a capaci-tated location-routing problem, Annals of Operations Research 6 (9) (1986)291–310.

[8] C. Contardo, J. Cordeau, B. Gendron, A branch-and-cut-and-price algo-rithm for the capacitated location-routing problem, Tech. Rep., TechnicalReport CIRRELT-2011-44, Universite de Montreal, 2011.

[9] J. Belenguer, E. Benavent, C. Prins, C. Prodhon, R. Wolfler-Calvo, ABranch-and-Cut method for the Capacitated Location-Routing Problem,Computers and Operations Research 38 (6) (2011) 931–941.

[10] C. Daganzo, Logistics systems analysis, Springer, 2005.

[11] S. Salhi, G. Rand, The effect of ignoring routes when locating depots,European Journal of Operational Research 39 (2) (1989) 150–156.

[12] D. Tuzun, L. Burke, A two-phase tabu search approach to the locationrouting problem, European Journal of Operational Research 116 (1) (1999)87–99.

[13] P. Toth, D. Vigo, The granular tabu search and its application to thevehicle-routing problem, INFORMS Journal on Computing 15 (4) (2003)333–346.

[14] M. Albareda-Sambola, J. Dıaz, E. Fernandez, A compact model and tightbounds for a combined location-routing problem, Computers and Opera-tions Research 32 (3) (2005) 407–428.

[15] J. Melechovsky, C. Prins, R. Wolfler-Calvo, A metaheuristic to solve alocation-routing problem with non-linear costs, Journal of Heuristics 11 (5)(2005) 375–391.

16

[16] S. Barreto, C. Ferreira, J. Paixao, B. Santos, Using clustering analysis ina capacitated location-routing problem, European Journal of OperationalResearch 179 (3) (2007) 968–977.

[17] C. Prins, C. Prodhon, R. Wolfler-Calvo, Solving the capacitated location-routing problem by a GRASP complemented by a learning process and apath relinking, 4OR: A Quarterly Journal of Operations Research 4 (3)(2006) 221–238.

[18] G. Clarke, J. Wright, Scheduling of vehicles form a central depot to anumber of delivery points, Operations Research 12 (4) (1964) 568–581.

[19] C. Prins, C. Prodhon, R. Wolfler-Calvo, A memetic algorithm with popula-tion management (MA|PM) for the capacitated location-routing problem,Lecture Notes in Computer Science 3906 (2006) 183–194.

[20] V. Yu, S. Lin, W. Lee, C. Ting, A simulated annealing heuristic for the ca-pacitated location routing problem, Computers and Industrial Engineering58 (2) (2010) 288–299.

[21] C. Duhamel, P. Lacomme, C. Prins, C. Prodhon, A GRASPxELS approachfor the capacitated location-routing problem, Computers and OperationsResearch 37 (11) (2010) 1912–1923.

[22] C. Groer, B. Golden, E. Wasil, A library of local search heuristics for thevehicle routing problem, Mathematical Programming Computation 2 (2)(2010) 79–101.

[23] P. Yellow, A computational modification to the savings method of vehiclescheduling, Operational Research Quarterly 21 (2) (1970) 281–283.

[24] F. Li, B. Golden, E. Wasil, Very large-scale vehicle routing: new test prob-lems, algorithms, and results, Computers and Operations Research 32 (5)(2005) 1165–1179.

[25] S. Lin, B. Kernighan, An effective heuristic algorithm for the traveling-salesman problem, Operations Research 21 (2) (1973) 498–516.

[26] K. Helsgaun, An effective implementation of the Lin-Kernighan travel-ing salesman heuristic, European Journal of Operational Research 126 (1)(2000) 106–130.

[27] J. Barcelo, J. Casanovas, A heuristic Lagrangean algorithm for the capac-itated plant location problem, European Journal of Operational Research15 (2) (1984) 212–226.

[28] J. Klincewicz, H. Luss, A Lagrangian relaxation heuristic for capacitatedfacility location with single-source constraints, Journal of the OperationalResearch Society 37 (5) (1986) 495–500.

17

[29] M. Gendreau, A. Hertz, G. Laporte, A tabu search heuristic for the vehiclerouting problem, Management Science 40 (10) (1994) 1276–1290.

[30] E. Taillard, Parallel iterative search methods for vehicle routing problems,Networks 23 (8) (1993) 661–673.

[31] J. Renaud, G. Laporte, F. Boctor, A tabu search heuristic for the multi-depot vehicle routing problem, Computers and Operations Research 23 (3)(1996) 229–235.

[32] C. Prins, C. Prodhon, R. Wolfler-Calvo, Nouveaux algorithmes pourle probleme de localisation et routage sous contraintes de capacite, in:MOSIM (4eme Conference Francophone de Modelisation et Simulation,Nantes, France), vol. 4, 1115–1122, 2004.

[33] S. Barreto, Analise e Modelizacao de Problemas de localizacao-distribuicao[Analysis and modelling of location-routing problems], PhD thesis, Univer-sity of Aveiro (2004) 3810–4193.

18

———————————————–PLEASE INSERT TABLE 1 HERE———————————————–Table 1. Summarized results for each ingredient of 2-Phase HGTS on GAPBKS, GAP BKC and CPU time for the complete data set

———————————————–PLEASE INSERT TABLE 2 HERE———————————————–Table 2. Summarized results on GAP BKS, GAP BKC and CPU time for thecomplete data set

———————————————–PLEASE INSERT TABLE 3 HERE———————————————–Table 3. Summarized results on the number of BKS, BKC and new BKS forthe complete data set

———————————————–PLEASE INSERT TABLE 4 HERE———————————————–Table 4. Detailed results for the first data subset DS1 (Tuzun-Burke Instances)

———————————————–PLEASE INSERT TABLE 5 HERE———————————————–Table 5. Detailed results for the second data subset DS2 (Prodhon Instances)

———————————————–PLEASE INSERT TABLE 6 HERE———————————————–Table 6. Detailed results for the third data subset DS3 (Barreto Instances)