A multi-start iterated local search with tabu list and path relinking for the
two-echelon location-routing problem
Viet-Phuong Nguyen, Christian Prins
n, Caroline Prodhon
ICD-LOSI, Universite´ de Technologie de Troyes (UTT), BP 2060, 10010 Troyes Cedex, Francea r t i c l e
i n f o
Article history: Received 3 March 2011 Received in revised form 29 July 2011
Accepted 7 September 2011 Available online 29 September 2011 Keywords:
Vehicle routing Facility location
Two-echelon location-routing problem Iterated local search
Path relinking
a b s t r a c t
The two-echelon location-routing problem (LRP-2E) is raised by the design of transportation networks with two types of trips: first-level trips serving from one main depot a set of satellite depots, to be located, and second-level trips supplying customers from these satellites. In the proposed multi-start iterated local search (MS-ILS), three greedy randomized heuristics are used cyclically to get initial solutions. Each ILS run alternates between two search spaces: LRP-2E solutions, and travelling salesman (TSP) tours covering the main depot and the customers. The number of iterations allotted to a run is reduced whenever a known solution (stored in a tabu list) is revisited. MS-ILS can be reinforced by a path-relinking procedure (PR), used internally for intensification, as post-optimization, or both. On two sets with 24 and 30 LRP-2E instances, MS-ILS outperforms on average two GRASP algorithms and adding PR brings a further improvement. Our metaheuristic also surpasses a tabu search on 30 instances for a more general problem with several main depots. It is still effective on a particular case, the capacitated location-routing problem (CLRP): In a comparison with four published metaheuristics, only one (LRGTS,Prins et al., 2007) does better.
&2011 Elsevier Ltd. All rights reserved.
1. Introduction
In the context of city logistics, more and more municipalities envisage to keep big trucks out of their city centre by creating peripheral logistic platforms, also called satellite depots, from which smaller and environment-friendly vehicles are allowed to go downtown. For an external carrier operating from a remote main depot, this solution is also interesting since the goods can be dropped at these satellites instead of visiting a larger number of end-customers, thus saving time and money. Taniguchi and Thompson (2002)introduced such multi-level (or multi-echelon) distribution systems as a tool to reduce urban congestion, increase mobility and satisfy requirements of sustainable development.
In the most common case with two levels, their design can be modelled by thetwo-echelon location-routing problem(LRP-2E), a strategic and tactical problem combining vehicle routing and satellite location decisions. The LRP-2E involves two sets of vehicle trips: first-level trips serve from a main depot a set of satellite depots, which must be located, while second-level trips visit the customers from these satellites. This problem is NP-hard
because it generalizes several problems known to be NP-hard: The echelon facility location problem (FLP-2E), the two-echelon vehicle routing problem (VRP-2E), and the capacitated location-routing problem (CLRP).
More precisely, the LRP-2E can be defined on a complete, weighted and symmetric digraphG¼ ðV,A,CÞ. The node-setVis partitioned into a main depot (node 0), a setS¼ f1;2,. . .,mgofm
potential satellite locations and a setT¼ fmþ1,mþ2,. . .,mþngof
nfinal customers. Each arc (i,j) in the arc-setAhas a travelling cost or length cij. A capacity Ws and an opening cost Os are associated with each satellite sAS. Each customer tAT has a demanddt. A fleetKof identical vehicles of capacityQand fixed costF, the primary or first-level vehicles, is based at the main depot to serve the satellites. A fleetLof smaller identical vehicles with capacityRand fixed costG, the secondary or second-level vehicles, is shared by the open satellites to supply customers. The size of each fleet is a decision variable.
In this work, it is assumed that the main depot and the total capacity of satellites can satisfy the whole demand. A feasible solution consists of a subset of open depots, a set of primary trips and a set of secondary trips. The following constraints must hold: Each customer must be served by one single secondary vehicle and each open satellite must be supplied by one single primary vehicle; the total amount delivered by a vehicle cannot exceed its capacity; each secondary trip must begin and end at the same open satellite; the total amount received by a satellite is
Contents lists available atSciVerse ScienceDirect
journal homepage:www.elsevier.com/locate/engappai
Engineering Applications of Artificial Intelligence
0952-1976/$ - see front matter&2011 Elsevier Ltd. All rights reserved. doi:10.1016/j.engappai.2011.09.012
n
Corresponding author.
E-mail addresses:[email protected] (V.-P. Nguyen), [email protected] (C. Prins), [email protected] (C. Prodhon).
completely delivered to customers (no storage). The objective function, to be minimized, is the total cost of the system, which includes the opening costs of selected satellites, the fixed costs of vehicles used, the costs of primary trips and the costs of secondary trips.
Fig. 1depicts two feasible solutions for a small LRP-2E instance with m¼5, n¼12, Q¼18 and R¼5. The solution on the right corresponds to a more general case in which direct deliveries to customers are allowed from the main depot. However, these deliveries must still be done by secondary vehicles, as the customers located downtown are unreachable by primary vehi-cles. This extension is easily handled by placing a fictitious satellite on the main depot, with a null opening cost and a capacity equal to the total demand.
This work proposes a metaheuristic for the LRP-2E, a multi-start iterated local search (MS-ILS) which can be enhanced by an optional path-relinking (PR) procedure. The paper is organized as follows. The next two sections present a review of literature and a mathematical model. The MS-ILS is described inSection 4while the optional PR procedure is introduced inSection 5.Section 6, devoted to numerical experiments, is followed by concluding remarks.
2. Related works
The LRP-2E is closely related to several facility location and vehicle routing problems with two distribution echelons and/or multiple depots. The main question is how to connect the two levels and manage their interdependences.
The closest problem is certainly thetwo-echelon vehicle routing
problem(VRP-2E), which can be viewed as a special case of LRP-2E
in which all satellites are already opened and induce no cost. Gonzalez-Feliu (2008)proposed a MIP formulation and a column generation approach for this problem. Optimal solutions can be obtained for small instances of 20 customers.Crainic et al. (2008)
designed a lower bound computed by adding two lower bounds, one for each level. The same authors (Crainic et al., 2008) elaborated a two-phase heuristic based on the clustering first, routing second principle. Later, they applied this method to a satellite location analysis (Crainic et al., 2010).
In the truck and trailer routing problem (TTRP), each vehicle comprises a truck and a detachable trailer. Some customers can be served by complete vehicles. In areas with limited accessibility, the trailer must be detached temporarily, for instance on a parking located on a main road, to reach customers with the truck alone. This problem can be considered as a VRP-2E variant: complete vehicles and trucks without trailers correspond respec-tively to primary and secondary vehicles, while the set of possible parking locations correspond to satellite depots. However, con-trary to the VRP-2E, no capacity is associated with satellites. Efficient metaheuristics are available for the TTRP. Semet and Taillard (1993)and laterScheuerer (2006)proposed tabu search algorithms. More recently, Villegas et al. (2011) introduced a GRASP (greedy randomized adaptive search procedure) with evolutionary path relinking.
The VRP-2E can be also viewed as an extension of themulti-depot
vehicle routing problem(MD-VRP), in which trips must be added to
supply the depots from a main platform.Crevier et al. (2007)studied another extension of the MD-VRP, thevehicle routing problem with satellite facilities(VRPSF): each vehicle must still start and end its route at the same depot, but it may refill at any depot.
Introducing satellite depot location decisions in two-level distribution systems with truckload deliveries (each customer is served by a direct route) leads to the two-echelon capacitated
facility location problem (CFLP-2E), considered for instance by
Gendron and Semet (2009)andTragantalerngsak et al. (2007). If the costs of arcs linking two satellites or a satellite and the main depot are null, the LRP-2E reduces to the location routing
problem(LRP). This problem adds to the MD-VRP the selection of
open depots among potential locations. It includes two main variants, with uncapacitated satellites or capacitated ones (CLRP).
Direct delivery trips
Feasible solution 1 Feasible solution 2
0
(9) (1) (3) (2) (1) (2) (4) (1) T1 P1 P2 T2 T3 T4 T5 (5) (2) (1) (2) (9) (3) (1) First-level tripsSecond - level trips
0
(9) (1) (3) (2) (1) (2) (4) (1) P4 P1 P2 T1 T2 T3 P3 (5) (2) (1) (2) (9) (3) (1) Direct trip 2nd-level trip 1st-level trip (2) Customer (demand) Main depotSatellite (open / not open)
0
In the last decade, the more realistic CLRP has raised a growing interest, with the publication of efficient metaheuristics (Duhamel et al., 2010; Prins and Prodhon, 2006; Prins et al., 2006;Wu et al., 2002), matheuristics (Prins et al., 2007) and even exact methods (Belenguer et al., 2011).
The literature on multi-level location-routing problems like the LRP-2E is still scarce. To our knowledge, the first work on the LRP-2E can be credited toJacobsen and Madsen (1980). In this early study, a satellite depot may be located at any customer and three fast constructive heuristics are described and tested on one real instance. The other references on the LRP-2E are much more recent. Gonzalez-Feliu (2010)proposed a mathematical formulation for the general case withn echelons. InGonzalez-Feliu (2011), the same author performed a meta-narrative analysis to survey the literature, propose a typology, and suggest research directions. Nguyen et al. (2010) implemented a GRASP metaheuristic, enhanced by a learning process, and generated two sets of benchmark problems containing 24 and 30 instances. In his PhD thesis,Sterle (2010)studied a more general version with several main depots calledplatforms. Like satellites, these platforms have a limited capacity and must be located. The thesis presents integer programming models, three types of instance sets, and a tabu search metaheuristic. The models with experiments with an IP solver can also be found inBoccia et al. (2011)while the tabu search was published inBoccia et al. (2010).
This article extends and improves a preliminary multi-start iterated local search (MS-ILS) for the LRP-2E, presented in a conference paper (Nguyen et al., 2010). A mathematical model and an optional path relinking procedure are added. Some critical details which were skipped due to the limited number of pages are now presented. The structure of the MS-ILS and its compo-nents have been optimized while the experiments for tuning the parameters have been completely redesigned. More statistical indicators are provided to evaluate performance. All these changes have lead to faster and more efficient metaheuristics, with several new best solutions.
3. Mathematical model
The LRP-2E can be formulated as a three-index mixed integer linear program inspired by a model given inPrins and Prodhon (2006)for the CLRP. To simplify the model, defineA1andA2as the
subsets of valid arcs for primary and secondary routes, respec-tively. The following binary variables are used:xk
ij¼1 if primary vehiclektraverses arc (i,j),yl
ij¼1 if secondary vehicleluses arc (i,
j), zs¼1 if satellites is opened, and ust¼1 if satellite s serves customert. The model also requires non-negative variablesbskfor the amount delivered to satellitesby primary vehiclek.
minX sAS Oszsþ X sAS X kAK Fxk0sþ X sAS X tAT X lAL Gylst þ X ði,jÞAA1 X kAK cijxkijþ X ði,jÞAA2 X lAL cijylij ð1Þ subject to: X iAS[T X lAL ylti¼1, 8tAT ð2Þ X jAS[T yl ji¼ X jAS[T yl ij, 8iAS[T,lAL ð3Þ X sAS X tAT yl str1, 8lAL ð4Þ X tAT X jAS[T dtyltjrR, 8lAL ð5Þ X iAT0 X jAT0 yl ijr9T 09 1, 8lAL,T0DT,9T09Z2 ð6Þ X iAT yl siþ X iAS[T yl itr1þust, 8sAS,tAT,lAL ð7Þ X sAS ust¼1, 8tAT ð8Þ X tAT dtustrWszs, 8sAS ð9Þ X iAS[f0g X kAK xk si¼zs, 8sAS ð10Þ X jAS[f0g xk ji¼ X jAS[f0g xk ij, 8kAK,iAS[ f0g ð11Þ X iAS0 X jAS0 xk ijr9S 09 1, 8kAK,S0DS,9S09Z2 ð12Þ X kAK bks¼ X tAT dtust, 8sAS ð13Þ X sAS bksrQ, 8kAK ð14Þ bksrQ X iAS[f0g xk si, 8sAS,kAK ð15Þ xk ijAf0;1g, 8ði,jÞAA1,kAK ð16Þ ykijAf0;1g, 8ði,jÞAA2,lAL ð17Þ zsAf0;1g, 8sAS ð18Þ ustAf0;1g, 8sAS,tAT ð19Þ bksZ0, 8sAS,kAK ð20Þ
The objective function (1) includes the opening costs of selected satellites, the fixed costs of primary and secondary vehicles, and the traversal costs of the arcs in the two distribution levels. All variables are defined in lines (16)–(20).
Constraints (2)–(9) concern the second level. Constraints (2) ensure that each customer is visited. The secondary route con-tinuity constraints (3) also guarantee that a vehicle returns to its satellite of origin. In constraints (4), each secondary vehicle leaves at most one satellite. The capacity of secondary vehicles is satisfied with constraints (5). Inequalities (6) are subtour elim-ination constraints. Constraints (7) ensure that satellitesserves customer t (ust¼1) if there exists one vehicle l leaving s and arriving att. Asustcan be equal to 1 even if no vehicle travels fromstot, constraints (8) are added to assign each customer to a single satellite. Inequalities (9) play two roles: If satellite s is closed, no customer is assigned to it, otherwise the total demand served cannot exceed satellite capacity.
The other constraints (10)–(15) address the first level. In constraints (10), each open satellite must be visited by one primary vehicle. Constraints (11) ensure trip continuity for each primary vehicle used. Constraints (12) prevent subtours. Flow conservation at each satellitesis expressed via constraints (13): the total amount brought tosby primary vehicles must be equal to the total demand of customers assigned to this satellite (no storage). The capacity of primary vehicles is respected using constraints (14). Finally, in constraints (15), if vehiclekdoes not visit satellites, the amount brought byktosmust be zero.
The mathematical program aims at specifying the problem in a compact and unambiguous way. As the LRP-2E is a NP-hard
problem combining location and routing decisions, only very small instances can be solved exactly by commercial solvers, thus justifying the use of heuristic algorithms for large instances. As we shall see, the multi-start iterated local search with path relinking proposed in the sequel can tackle LRP-2E instances having up to 200 customers and 10 potential satellite locations.
4. Multi-start iterated local search for the LRP-2E
4.1. Iterated local search
Iterated local search(ILS) is a metaheuristic which generates a
sequence of improved local optima for a combinatorial optimiza-tion problem, see for instanceLourenc-o et al. (2003)for a tutorial. It requires only three components: one constructive heuristicH, one improvement procedure (local search) LS, and one random perturbation procedureMutate, similar to the mutation operator used in genetic algorithms.
The general structure of an ILS is sketched inAlgorithm 1. One initial solutionSis computed using the heuristic and improved by local search. Then, each iteration applies mutation and local search to a copy ofS. If the resulting solutionS0 (called childin the sequel) outperforms the incumbent solutionS, it replaces it. This process is repeated until a given stopping criterion is satisfied.
Note that, contrary to some other metaheuristics like tabu search, the incumbent solutionSis also the best one found since the beginning. On hard instances, many successive children can be rejected while staying on the same incumbent solution. ILS is sometimes considered as an evolutionary method, but no cross-over is used and the population is reduced to one single individual.
Algorithm 1. General structure of an ILS. 1 callH(S); 2 callLSðSÞ; 3 repeat 4 5 6 7 8 S0 ’S; callMutateðS0 Þ; callLSðS0 Þ; ifCostðS0 ÞoCostðSÞthen S’S0;
9 untilstoping criterion;
The successive jumps of an ILS in solution space are depicted in Fig. 2. The initial local optimum is S0 (cost 120). The first
perturbationP1gives a solution in the attraction basinB0ofS0and
the local search returns toS0. The second perturbationP2falls into
another basinB1 but its local optimum (cost 125) is not better.
The third perturbationP3leads to a solution of cost 118 in basin B2, with a descent to a better solution (113) which becomes the
new incumbent solutionS1. After one unfruitful perturbationP4,
the ILS jumps in B3 and finds a new best local optimum S2
(cost 110).
4.2. Principles of our MS-ILS
Our metaheuristic is inspired by ILS but enriched by six special features.
The first feature is to restart the search from another initial solution instead of loosing time in unproductive iterations, thus giving what we call amulti-start iterated local search(MS-ILS).
The second feature consists in using cyclically three greedy randomized heuristics, to provide each ILS execution with one good initial solution.
A third feature is that the child is accepted if its gap to the best known solutionSn
does not exceed a given percentageb. In other words, we prefer to move to a slightly degraded solution rather than staying on the same solution and waiting for an improving child, like in a classical ILS. Therefore, contrary to a classical ILS, the incumbent solution is no longer necessarily the best solution obtained up to now. Such loose acceptance criteria are foreseen in ILS:Lourenc-o et al. (2003)describe for instance a probabilistic acceptance, inspired by simulated annealing. In our case the threshold b is constant and the acceptance test is deterministic.
The fourth feature is the coexistence of two improvement procedures LS1 and LS2, in fact variable neighbourhood descents (VND). LS1 is applied to each child because it involves low-complexity neighbourhoods. As LS2 involves more complicated moves, it is called only for children with a given maximum gap of
apercent to the best known solutionSn .
The fifth feature is a kind of tabu list storing recently visited solutions. To avoid cycling, tabu search heuristics never move to a tabu solution, except when the current best solution is improved. In our MS-ILS, meeting again the same solution does not imply cycling, because the mutation applied at the second visit may generate a different child. However, this indicates that the search is not enough diversified and we penalize the ILS in progress by reducing its number of iterations by a constant
a
. Then, whether a child is tabu or not, it undergoes the acceptance test described for the third feature. Hence, the only purpose of the tabu list is to shorten the current ILS when tabu solutions are met again, in order to restart more quickly from a new initial solution.The sixth and last feature is an alternation between two search spaces, an idea which gave excellent results for the CVRP (capacitated vehicle routing problem) (Prins, 2004, 2009) and the CLRP (Duhamel et al., 2010). The two spaces are here the LRP-2E solutions and the travelling salesman (TSP) tours over the main depot and the customers. These tours, also calledgiant
tours, ignore satellites and vehicle capacities. One giant tourT
can be converted into one LRP-2E solution S using a splitting procedure Split(T,S), while the inverse transformation can be done by concatenating the second-level trips of S, using a procedure Concat(S,T). 120 135 132 128 123 139 137 125 118 117 114 113 P1 P2 P3 124 116 110 P4 P5 P1 117 Perturbation Local search Local optimum 110 Attraction basin Solution and cost 124
Caption B1 B2 B0 B3 S0 S1 S2 119
The resulting metaheuristic is sketched by the flowchart of Fig. 3. The components are detailed in the next subsections and a more precise algorithm in pseudocode is given after the components.
The first block initializes the number of startsnsto 0, the cost of the best solution Sn
to þ 1, and empties the tabu list. It is followed by a main loop (the multi-start loop) which performs
maxnssuccessive ILS on distinct initial solutions.
Each iteration of the multi-start loop increments the start counternsand runs cyclically one of the three greedy randomized heuristics to get one solutionS, improved by a local search LS2. If
S is tabu, the current iteration is stopped, otherwise an ILS is launched fromS(ILS loop).
The ILS is initialized by adding the initial solutionSto the tabu list, setting the ILS iteration counternito 0, and building the giant tourTassociated withSusing the Concat procedure. Then the ILS loop is executed until the maximum number of iterationsmaxniis reached.
At each ILS iteration, the iteration counterniis incremented, a new giant tour T0
is derived from T by calling a mutation procedure (Mutate), and this tour is converted into a new LRP-2E solutionSvia Split.Sis then improved by a local search LS1 and, if the result is close enough toSn
, by a more involved local search LS2. If S outperforms Sn
, the best known solution is updated. If S is not in the tabu list, it is added to this list; otherwise, the current ILS is penalized by increasing its iteration counterniby a constant
a
. Finally, if the solution gap ofStoSnis at mostbpercent,Sis converted by Concat into a new giant tour
which replaces T for the next ILS iteration. Otherwise, ni is increased by a small constant
b
ðb
oa
Þ.4.3. Initial solutions
For a better diversification, the maxns initial solutions are computed by calling cyclically three greedy randomized heuris-tics described in the following. Each initial solutionSis improved using the improvement procedure LS2 described inSection 4.7.S
is discarded if it is tabu, otherwise it is added to the tabu list and one ILS is executed.
4.3.1. Heuristic H1
To build the second-level trips, we randomize the extended Clarke and Wright algorithm (ECWA), described in Prins and Prodhon (2006)for the CLRP. In ECWA, customers are assigned one by one, in decreasing order of demand, to the nearest satellite with enough residual capacity and served by a direct trip. Pairs of trips are then merged to reduce the solution cost.
If two second-level tripsTandT0
are merged (concatenated), the resulting trip may be assigned to the satellitesofT, to the satellites0 of T0
, or to any other satellites00, open or not. The resulting saving takes into account the edges added or removed and the satellites opened or closed by the merger:s(ors0) can be closed if it loses its last trip ands00must be opened if it receives a first trip. The merger with the largest positive saving is executed. This process is repeated until no merger with a positive saving is found.
In our randomized version, the
g
closest satellites are deter-mined for each customer in the initial assignment phase, and one is randomly selected. Once the second-level trips are ready, the classicalClarke and Wright (1964)heuristic is applied to the first level: one direct trip is built between the main depot and each satellite, then pairs of trips are merged to improve the total cost.4.3.2. Heuristic H2
This heuristic is inspired by the nearest neighbour heuristic for the TSP. One satellitesis opened at random and a set of routes is constructed for it. Each route starts atsand is iteratively extended by joining the closest customer not yet visited and fitting the residual capacity of the second-level vehicle used. The route returns to the satellite when no additional customer can be added. Successive routes are built in this way, until satellite capacity is exhausted, in which case a new satellite is randomly opened. The algorithm stops when all customers are inserted in second-level routes. The same process is finally applied to the first level, to build a set of routes supplying the open satellites from the main depot.
4.3.3. Heuristic H3
H3 is an insertion heuristic that constructs second-level routes one by one. Each route starts with a loop on one randomly selected satellite and is grown using an adaptation of the CVRP heuristic ofMole and Jameson (1976). When no customer can be added, the initial satellite is removed and the best possible satellite is inserted. Finally, the first-level routes are determined by a nearest neighbour heuristic, like in H2.
4.4. ILS loop
As already mentioned, a key-feature of our MS-ILS is to alternate between the space of giant tours and the space of feasible LRP-2E solutions in each ILS iteration. These transforma-tions are visible inFig. 3: Giant tour T- Mutate ðT,T0
Þ- Split Fig. 3.General flowchart of MS-ILS.
ðT0,S
Þ- LS1(S) and LS2(S)-Concat(S,T). The following subsec-tions explain the procedures involved in this cycle.
Preliminary tests with a version working only on LRP-2E solutions showed that the search space alternation brings a significant improvement to solution costs (4% on average). In our opinion, there are two main reasons for that. Firstly, the perturbations are too easily repaired by LS1 and LS2 in an algorithm working only with 2E solutions. Secondly, a LRP-2E solution is often improved if its trips are concatenated to yield a giant tour, if this tour is perturbed and the result converted into a LRP-2E solution via Split. In fact, one such cycle can change several satellites simultaneously or insert them at different positions in the giant tour, while LS1 and LS2 use more local transformations like customer relocations.
4.5. Mutate procedure
The Mutate ðT,T0
Þ procedure returns a randomly perturbed copy T0
of the input giant tour T. The mutation of giant tours instead of LRP-2E solutions avoids satellite and vehicle capacity violations. Mutate considers three kinds of moves. The first move randomly selectsppairs of distinct customers and swaps them. The second move determines the four longest edges (weak edges) and deletes two at random. The substring between the two selected edges is removed and a cheapest insertion in the remaining sequence is performed. The last move adds the edge linking the first and last customers and then breaks the resulting cycle by randomly deleting one of the four weakest edges. Each call to Mutate randomly selects one of these move types.Fig. 4 illustrates the two last moves.
4.6. Split procedure
Beasley (1983)described in 1983 an optimal procedure (sub-ject to the sequence) to split a TSP tour into CVRP trips, but without numerical results. The use of this procedure to evaluate solutions encoded as giant tours in a genetic algorithm for the CVRP was introduced by Prins (2004) and then successfully applied to various vehicle routing problems, e.g. Prins et al. (2006),Prins (2009), andVillegas et al. (2011).
For the CVRP, the general principle is to build a weighted auxiliary graph H¼ ðY,A,ZÞwhich models the different ways of splitting the giant tourT. The node-setYcontains a dummy node 0 and nodes 1;2,. . .,nfor the customers. Then, one arcði1,jÞis added to the arc-setAif subsequenceðTi,Tiþ1,. . .,TjÞcorresponds
to a feasible trip. The weight of this arc is the cost of the associated trip. Finally, an optimal CVRP solution (subject to the sequence) can be deduced by computing a min-cost path from node 0 to node nin H, which can be done in polynomial time. A figure with an example of auxiliary graph can be found inPrins (2004).
Similar splitting procedures can be found for many routing problems but hard resource-constrained shortest path problems are raised in some cases like capacitated depots (Duhamel et al., 2010) or heterogeneous fixed fleets of vehicles (Prins, 2009). As the LRP-2E involves capacitated depots (satellites), we designed a splitting heuristic to keep acceptable running times. So, contrary to Prins (2004) for instance, an optimal giant tour (one giving an optimal solution after splitting) does not necessa-rily exist. However, as many giant tours are built, we think the MS-ILS has a good chance of reaching a global optimum: the only condition is to fall in the attraction basin of this optimum.
The first step is to consider a subsetSSof possible satellites, relax their capacities, and use them to split T into second-level trips. Compared to the CVRP, this affects only the arc cost computations in the auxiliary graphH: For a given subsequence, we evaluate the trip cost for each satellite of SSand assign the best cost to the arc that models it in H. This first step can be solved exactly, subject to the order imposed byT, inOðn29SS9Þ with9SS9rm, using Bellman’s algorithm.
The second step repairs possible satellite capacity violations by transferring second-level trips to other satellites. The last step consists in building primary routes to serve the open satellites, with the nearest neighbour heuristic already used for the initial greedy randomized heuristic H2. This results in a new LRP-2E solutionS.
Hence, to be exact, the splitting procedure has three argu-ments: SplitðT,SS,SÞ. We had to limit the set of possible satellites (SS) in the first step because our first experiments produced low-quality solutions when all satellites were allowed. For an ILS iteration with an incumbent solutionSand the associated giant tourT,SSis equal to the subset of satellites used inS, plus one randomly selected satellite.
4.7. Improvement procedures LS1 and LS2
LS1 uses six moves applied to the services in the first and second levels:Relocate,Exchange, 2-Opt, 3-Opt,Or-Opt, and Rein-sert. The two first moves respectively relocate one service and exchange two distinct services. The two next respectively remove two and three edges and add new edges to reconnect the solution. Normally, Or-Opt consists in relocating a string of 1–3 consecu-tive services, but our implementation moves at least two, the case with one customer being handled by Relocate. The Reinsert move deletes the main depot in a primary trip (or the satellite of a secondary trip) to reinsert it at another position in the same trip. Reinsert and 3-Opt operate on a single trip, while all the other moves involve one trip or two distinct trips in the same level. The neighbourhood defined by each move is browsed and the best improving move (if any) is executed. All these moves affect the routing decisions only: The status open/closed of satellites is not modified, except in the obvious case where all customers served by a satellite are transferred to other satellites.
LS2 employs the same moves as LS1, plus two heavier moves described inProdhon (2006)for the CLRP:Best trip relocationand
Satellite status inversion. The first move considers the routes which
can be transferred with a positive saving to another open satellite and performs the best transfer. The second move switches the status open/closed of a satellite. If we decide to open a satellite, some routes can be assigned to it if this results in a cost reduction. To close a satellite, we try to transfer its routes one by one to the
2 6 4 5 1 3 7
Giant tour 5 9 7 8 6 7 Break at two weak edges
2 6 1 3 7
5 9 6 7
4 5
7
Two strings
New giant tour 2 5 6 9 1 6 3 7 4 7 5 6 7
Best insertion
2 6 4 5 1 3 7
Giant tour 5 9 7 8 6 7 Closed trip 2 55 6 99 4 77 5 88 1 66 3 7 7
New giant tour 4 7 5 88 1 66 3 7 7 2 6 8
8 5
remaining open satellites at best cost. Since this sequence of transfers is time-consuming and may fail, LS2 is called after LS1 only if its gap to the best-known solution is below a given percentagea, i.e. ifcostðSÞoð1þaÞ costðSn
Þ.
Instead of browsing a union of neighbourhoods, we adopted an implementation known asvariable neighbourhood descentor VND (Hansen and Mladenovic´, 2001), see Algorithm 2. The VND inspects the neighbourhoodsNk,k¼1;2,. . .,kmax, defined by the moves explained before (kmax¼6 for LS1 and 8 for LS2). If a neighbourhood Nk yields one improving move, this move is executed and k is reset to one, otherwise the search browses the next neighbourhood Nkþ1. The VND stops when all
neigh-bourhoods are browsed without improvement. This algorithm is fast because time-consuming moves are tested only when simpler moves bring no improvement.
Algorithm 2. VND structure for LS1 and LS2 1 k’1; 2 whilekrkmaxdo 3 4 5 6 7 8
evaluate feasible moves for neighbourhoodNk; ifimproving move foundthen
apply the move to solutionS;
k’1 else bk’kþ1 6 6 6 6 6 6 6 6 6 6 6 4 4.8. Concat
In our implementation, the routes of an LRP-2E solution are ordered as if they were followed by a Eulerian walk, i.e., the primary routesP1,P2,. . .,Puare browsed successively and, when arriving at a satellite, the secondary routes departing from this satellite are inserted. The Concat procedure simply consists in concatenating the lists of customers of secondary trips, in this order. In the example ofFig. 1, the resulting giant tour includes the secondary routesT1,T2,. . .,T5in this order.
4.9. Tabu list
As usual, the tabu list stores solution attributes instead of complete solutions. For the LRP-2E, we use the total cost and the number of trips. The list is initialized only once at the beginning and behaves like a short-term memory limited to themaxntmost recently visited solutions. As already mentioned, this memory is not used like in tabu search heuristics. In fact, the ILS is allowed to move to a tabu solution because different children can be generated at the second visit, using different mutations. However, we prefer to restart earlier from a new random solution rather than loosing too much time in an already visited region of the search space. This preference is simply implemented by reducing the number of iterations allocated to the current ILS, each time a tabu solution is met. To have enough diversification in each restart, initial solutions are refused if they are tabu.
4.10. Resulting MS-ILS
The resulting MS-ILS is given in pseudocode inAlgorithm 3. Compared withFig. 3, the cyclic call of greedy heuristics and the role of subsetSSused by Split are made visible. By playing with parameters, it is possible to reduce MS-ILS to two classical metaheuristics. Ifmaxni¼0, it boils down to a GRASP: the greedy randomized heuristics generate trial solutions which are improved using the local search LS2. Ifmaxns¼1, we obtain an ILS launched from one single initial solution.
Algorithm 3. Pseudocode of MS-ILS. 1 costðSn Þ’þ 1; 2 TabuList’|; 3 forns’1tomaxnsdo 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 switchnsmod 3do case0:call H1ðSÞ; case1:call H2ðSÞ; case2:call H3ðSÞ; 6 6 6 6 4 call LS2ðSÞ; ifS2=TabuListthen ifcostðSÞocostðSn ÞthenSn ’S; addStoTabuList; call ConcatðS,TÞ;
Z’set of open satellites ofS; forni’1tomaxnido
call MutateðT,T0
Þ;
SS’Z[ fone random satelliteg; call SplitðT0 ,SS,SÞ; call LS1ðSÞ; ifcostðSÞoð1þaÞ costðSn Þthen bcall LS2ðSÞ; ifcostðSÞocostðSn ÞthenSn ’S; ifSATabuListthen 9ni’niþ
a
; else baddStoTabuList; ifcostðSÞoð1þbÞ costðSn Þthen call ConcatðS,TÞ;Z’set of open satellites ofS; else bni’niþ
b;
6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 4 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 4 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 4 5. Path relinking 5.1. PrinciplesPath relinking (PR) is an intensification strategy which can be added to any metaheuristic. The method was used for a first time byGlover and Laguna (1993) to improve solutions obtained by tabu search. Its principle is to gather a small pool of elite solutions and to explore trajectories linking two solutions of the pool in the solution space, to try finding a better one. The origin and destination of the path are often called thestarting solutionand
the target solution. The attributes of the target solution are
progressively introduced in the starting solution, which generates a sequence of intermediate solutions.
For the LRP-2E, we first tried to generate trajectories between two LRP-2E solutions or two giant tours, with disappointing results. In the first case, too many intermediate solutions are infeasible, due to vehicle or satellite capacity violations. In the second case, feasibility problems are avoided by applying Split to each intermediate tour, but the path relinking becomes too time-consuming. Finally, we took an intermediate option, with partially decoded solutions calledbig tours. A big tour is a sequence of customers in which satellites are inserted but primary trips are still missing. Big tours have already a transient existence in Split, after the two first steps (seeSection 4.6).
Our convention about the big tour encoding is to mention the satellite at the beginning of each second-level trip but not at the end. Consider for instance a network with two satellites (nodes 1 and 2), six customers (nodes 3–8), and three second-level trips (1, 3, 4, 1), (2, 5, 6, 2) and (2, 8, 7, 2). The encoding for the giant tour is (1, 3, 4, 2, 5, 6, 2, 8, 7). As our PR process swaps pairs of nodes to move from the starting solution to the target solution, intermediate big tours may have two consecutive satellites s1
ands2, which is interpreted as a loop (empty trip) on satellites1.
The following subsections explain how trajectories are gener-ated for two given big tours, how the pool of elite solutions is built, and the possible insertions of the path relinking into the MS-ILS algorithm.
5.2. Path generation
Our PR procedure is summarized in Algorithm 4, in which
posðX,tÞdenotes the rank of a customertin a big tourX, andfðX,sÞ
the frequency (number of occurrences) of a satellitesinX. The PR requires two big toursA,B. All customers are included inAandB
but the two tours may use different satellites or share some satellites but with different frequencies. This is corrected in lines 1–6 which add copies of satellites at the end of the tours to ensure thatfðA,sÞ ¼fðB,sÞfor each satellites. Note thatAandBhave the same length after this processing.
The path fromAtoBis guided by the Hamming distance
D,
equal to the number of differences between the nodes at the same position inAandB, i.e.,D
ðA,BÞ ¼Pi¼1,9A9ðAiaBiÞ, where9A9is the length ofAandAiaBia Boolean equal to true ifAiandBidiffer. Each iteration of thewhileloop line 8 generates one intermediate big tourU, to reduce progressively the distance toB.Algorithm 4. Path relinking procedurePR(A,B). 1 fors’1tomdo 2 3 4 5 6 d’fðA,sÞfðB,sÞ; ifd40then
9adddcopies of sat the end ofB; else ifdo0then
badddcopies ofsat the end ofA; 6 6 6 6 6 6 6 6 6 4 7 U’A; 8 while
D
ðU,BÞa0do 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25seek a clienttsuch thatposðU,tÞaposðB,tÞ; iffoundthen
9swaptandU½posðB,tÞinU; else
==Here8tAT,posðU,tÞ ¼posðB,tÞ; seek an indexisuch thatUiaBi; seekjsuch thatBj¼UiandUjaUi; swap satellitesUiandUj;
6 6 6 6 6 6 6 4
selectprobat random in½0;1; ifðUinfeasibleÞandðprobo
d
ÞthenbRepairðUÞ; ifUfeasiblethen
deduce an LRP-2E solutionSfromU; apply local search LS1 toS;
ifSbetter thanAandBthen
baddSto the pool; ifcostðSÞocostðSn ÞthenSn ’S; 6 6 6 6 6 6 6 6 6 4 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 4
The procedure looks first for customers with different posi-tions in U and B (line 9). If such a customer t is found, it is
swapped with another node to repair the difference (lines 10–11). Otherwise (lines 12–13), no customer is misplaced but, since
D
ðU,BÞis not yet null, there exists at least one indexisuch thatUi is a misplaced satellite (line 14). Note that satelliteUiexists inB after the statements 1–6. Lines 14–16 look for an adequate exchange. Consider for instance two satellites 1 and 2,U¼ ð1,x,1,x,1,x,2Þ and B¼ ð1,x,2,x,1,x,1Þ (the symbol x denote customers). We have a misplaced satellite Ui¼U3¼1. A swap
withUj¼U5¼1 would repair one difference but create another
one. The correct decision is to swapU3andU7.
The big tours obtained may violate satellite or secondary vehicle capacities. To limit running time, an infeasible big tour is repaired with probability
d, using a procedure called
Repair, see lines 18–19. In line 21, a feasible big tour is converted into an LRP-2E solution S by adding primary trips, using the nearest neighbour heuristic already called in Split and the greedy heur-istic H2.Sis improved using LS1 in line 22 and added to the pool in line 24 if it outperformsAandB. The best solutionSnis updated in line 25.
Fig. 5gives one example of path relinking form¼2 satellites (1, 2) andn¼6 customers (3–8). AsfðA,1Þ ¼14fðB,1Þ ¼0,AandB, lines 1–6 ofAlgorithm 4add one copy of satellite 1 at the end ofB. After this step, the two big tours have the same lengths, the same satellites, and the same frequencies for each satellite. The initial Hamming distance between them is 9. Using seven swaps, Ais progressively transformed intoB, which generates six intermedi-ate solutions.
5.3. Integration of PR in MS-ILS
The first step to add a path relinking process in a metaheuristic is to manage a small pool of elite solutions. In our case, we prefer to store the big tours corresponding to these elite solutions, in a pool limited tomaxnp big tours. InAlgorithm 3, an empty pool must be initialized at the beginning. It is then updated at each ILS iteration, between lines 21 and 22.
The incumbent solutionSis converted into a big tourAby a procedure similar to Concat already used in the MS-ILS, the only difference being that the open satellites of S are kept when concatenating the second-level trips. To favour a pool with elite but diverse solutions, A is added to the pool if CostðSÞo ð1þ
m
Þ CostðSnÞ,
m
being a given diversification coefficient. Other-wise, the pool is not updated. If the pool is already full (maxnp big tours),Sreplaces the oldest solution.Three possible ways of calling the PR were evaluated: as an intensification step during the metaheuristic (internal PR), as a post-optimization step, or both.
The internal path relinking is done each time a new big tourA
is added to the pool by the threshold acceptance rule described above. Another big tourBis randomly selected in the pool and two paths in the solution space are generated by callingPR(A,B)
andPR(B,A). The feasible LRP-2E solutions found along the paths are added to the pool if they surpass bothAandBand the best solutionSn
is updated in case of improvement.
The post-optimization is performed once the MS-ILS is com-pleted and consists of two nested loops enumerating the pairs
fA,Bgof distinct pool elements. For each pair,PR(A,B) andPR(B,A) are called to trace two paths in solution space. The solutions generated are only used to updateSn
: contrary to the internal PR, they are not added to the pool, to avoid enumerating the pairs of a growing set of solutions.
6. Computational evaluation
6.1. Implementation and instances
The MS-ILS algorithm and the optional path relinking proce-dures are implemented in Visual Cþþ6.0 and tested on four sets of Euclidean instances, using a Dell Optiplex GX745 PC with a Pentium 4 processor clocked at 3.4 GHz, 1 GB of memory and Windows XP Pro.
The first set (Prodhon’s CLRP instances) contains 30 CLRP instances designed by Prodhon (2006). Indeed, the capacitated location-routing problem (CLRP) can be easily tackled by our algorithms: we add a main depot anywhere, primary vehicles without fixed costs, and one edge with null cost between two satellites or a satellite and the main depot. The main features of CLRP instances are: Number of satellites mAf5;10g, number of customers nAf20;50,100;200g, secondary vehicle capacity
RAf70;150g, number of customer clusters
r
Af1;2,3g. The caser
¼1 means in fact a uniform distribution of customers. The instance name format is n-m-r
-e, where e¼‘‘a’’ if R¼70 ande¼‘‘b’’ ifR¼150. Two instances withn¼50 and
r
¼2 have a suffix ‘‘bis’’, indicating two strongly separated clusters.To obtain the second set, composed of 30 LRP-2E instances, we added primary vehicles and one main depot at coordinates (0,0) to Prodhon’s CLRP instances. The capacity of primary vehicles is 1.5 times the maximum satellite capacity. These instances are calledProdhon’s LRP-2E instancesin the sequel and they have the same names as the original CLRP instances.
The third set (Nguyen’s LRP-2E instances) comprises 24 LRP-2E instances built byNguyen et al. (2010). Their characteristics are: number of satellites mAf5;10g, number of customers
nAf25;50,100;200g, primary vehicle capacityQAf750;850g, sec-ondary vehicle capacityRAf100;150g. Customer locations follow either a normal or multi-normal distribution. The file names have the formatn-m-N(normal distribution) orn-m-MN(multi-normal distribution). A suffix ‘‘b’’ signals the instances withQ¼850.
The fourth set was designed by Sterle in his recent PhD thesis (Sterle, 2010) and reused in the conference paper (Boccia et al., 2010). These instances concern a version of the LRP-2E more general than ours, with several main depots called platforms. Each platform has a limited capacity and an opening cost, like the satellites. Sterle built three sets of instances called I1, I2 and I3 and corresponding to different spatial distributions of satellites. We have discarded in each set the small instances used inSterle (2010) to test several mathematical formulations, to focus on what Sterle calls the medium-large instances. There are 10 such instances in each set I1–I3. They all use five platforms but range from eight satellites and 50 customers to 20 satellites and 200 customers. The notation used to describe instances refers to the instance set and the number of platforms, satellites and custo-mers. For example, I1-51050 refers to an instance of set I1 with five platforms, 10 satellites and 50 customers.
The three first sets can be found on the Internet (Prodhon, 2008) while the fourth set was kindly provided to us by Sterle. In
all instances, deliveries from the main depot are forbidden. However, as explained in the Introduction (Fig. 1), our algorithms can tackle this extension by placing a fictitious satellite on the main depot, with a null opening cost and a capacity equal to the total demand.
6.2. Tuning of parameters for MS-ILS
Tuning the parameters of a heuristic to improve its results is a common problem in optimization. The goal is to achieve the best possible performance by testing a limited number of parameter combinations on a limited set of instances. A three-step process is applied here: (a) choose the test bed, (b) select most parameter values using a simple method, (c) apply a statistical test to separate the combinations of parameters which look linked by a complex relation. The three non-parametric tests used in the sequel (sign test, Friedman test, Bonferroni–Dunn test) are detailed in textbooks like Conover (1999) and Sheskin (2000). They can be computed using a statistical software like SPSS and even online, e.g., see http://www.fon.hum.uva.nl/Service/Statis tics.html.
For the test bed in Step (a), we took arbitrarily the 30 LRP-2E instances from Prodhon. Concerning Step (b), beginning from a promising configuration, the MS-ILS is executed on the test bed. Then, one or two parameters are modified and the heuristic is run again. The two sets of results are compared using the sign test (Conover, 1999), based on the binomial distribution. If the new configuration is better we accept it. If the two configurations are equivalent, we move to the new one if it displays a smaller running time. The procedure stops after testing a maximum of 20 configurations. The parameter values obtained via this technique are listed inTable 1.
Step (c) must be executed for parameters maxnt, a and b
because Step (b) found two promising values for each of them. The Friedman test followed by the Bonferroni–Dunn test can be used to choose among theh¼23¼8 combinations. The first test decides whether the combinations are equivalent (null hypoth-esis) or not but it does not indicate which combination is the best. If the null hypothesis is rejected, the second test helps determin-ing the best combination.
Let M1,M2,. . .,M8 be the eight combinations listed in the
upper part ofTable 2 and N¼30 the number of instances. For each instance, the Friedman test ranks the h heuristics to be tested, giving 1 to the best one andhto the worst. Letrijbe the rank of heuristicMion instancej. In case of ties, average ranks are assigned. For example, imagine that two heuristicsMiandMkfind the same solution value on instancejand that they occupy the ranks 3 and 4 in the list of costs sorted in non-decreasing order. Then, by convention,rij¼rkj¼ ð3þ4Þ=2¼3:5.
Since h¼8 andN¼30 are fairly large (h44 andN415), the Friedman test may be approximated by the chi-square
Table 1
MS-ILS parameters fixed in preliminary experiments.
Parameter Name Values
Nb of restarts maxns 100
Nb of ILS iterations maxni 50
Length of tabu list maxnt 6 or 8
Gap toSn
for LS2 a 15 or 20%
Gap toSn
for a child b 10 or 15%
Penalty (tabu solution) a maxni=2¼25
Penalty (rejected child) b 5
RCL size in heuristic H1 g 2
distribution:
w
2 r¼ 12 Nhðhþ1Þ Xh i¼1 XN j¼1 rij 0 @ 1 A 2 2 6 4 3 7 53Nðhþ1Þ ð21ÞWe took
Z
¼0:05 for thesignificance level, i.e., the probability to reject the null hypothesis, knowing that it is true. The Friedman test ran using SPSS version 11 returns chi-square and ap-value, i.e., the smallest significance level that would lead to rejection of the null hypothesis. The test yields chi-square¼15.24 andp-value 0.035 for the costs, and chi-square¼25.16 andp-value 0.001 for the CPU times. So we may reject the null hypothesis at the level of significanceZ
¼0:05.The mean ranksMi are listed in the middle of Table 2 and graphically displayed in Fig. 6. They seem to indicate that M6
might be the best choice regarding solution quality. Even if this heuristic is the third best choice in terms of running time, it is almost as fast asM4andM8.
However, the choice ofM6must be validated by the
Bonfer-roni–Dunn test, based on pairwise comparisons of mean ranks. According to this test, the performances of two heuristicsMiand
Mjare significantly different if the absolute value of the difference of their mean ranks is not smaller than a critical differenceCD, in other words if9MiMj9ZCD.CDis defined as follows:
CD¼qZ ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi hðhþ1Þ 6N r ð22Þ
The critical valueqZfor a significance level
Z
can be found in statistical tables like Sheskin (2000). For h¼8, we haveq0:05¼2:69 and q0:10¼2:45, thus CD¼1.7 for
Z
¼0:05 and 1.55for
Z
¼0:10. The values of Ei6 are given in the lower part ofTable 2. In terms of cost, we can see thatM6outperformsM8at
both probability levels but brings no significant improvement
compared with the other heuristics. Concerning running time,M6
is significantly faster than M1,M3,M5 andM7.Fig. 7 illustrates
these differences.
To conclude, we selectedM6as the best compromise between
cost and CPU time: in addition to the parameters already frozen in Table 1,acan be fixed to 0.2,bto 0.1 andmaxntto 8.
6.3. Contributions of components
Using the parameters selected previously, the contributions of components of our MS-ILS have been evaluated by running five times different versions on Nguyen’s LRP-2E instances. These experiments are summarized in Table 3, with the average gap to best solutions and the average running time. The versions that do not use the two local search procedures LS1 and LS2 are the fastest but yield low-quality solutions. Removing the tabu list or the threshold acceptance has no significant impact on solution cost but increases the running time. For instance, the metaheur-istic becomes twice slower without its tabu list.
Fig. 6.Mean rank curves for the eight combinationsM1–M8.
Fig. 7.Average ranks and critical differences (solution quality). Table 2
Combinations of ILS parameters and mean ranks obtained.
Heuristic M1 M2 M3 M4 M5 M6 M7 M8 Parameter values maxnt 6 6 6 6 8 8 8 8 a 0.20 0.20 0.15 0.15 0.20 0.20 0.15 0.15 b 0.15 0.10 0.15 0.10 0.15 0.10 0.15 0.10 Mean ranks,Mi Cost 4.50 4.73 4.47 4.55 4.33 3.80 3.87 5.75 CPU time 5.88 3.77 5.08 3.18 6.08 3.40 5.32 3.28
Deviation to M6mean rank,Mi2M6
Cost 0.70 0.93 0.67 0.75 0.53 0 0.07 1.95
CPU time 2.48 0.37 1.68 0.22 2.68 0 1.92 0.12
Table 3
Impact of MS-ILS components on Nguyen’s instances.
Components removed Avg gap (%) Avg time (s)
None (full MS-ILS) 0.27 92.0
Tabu list 0.25 186.4
Threshold acceptance 0.27 132.9
Local search LS2 2.52 10.1
6.4. Tuning of parameters for path relinking
Our numerical experiences showed that the internal path relinking seems to be more effective than the post-optimization version in terms of solution quality but not in running time. Moreover, a further improvement was obtained by employing the two versions. As the path-relinking runs faster than MS-ILS, we finally decided to use the two versions simultaneously.
Following the same process as for the MS-ILS parameters, a calibration phase was executed to determine appropriate values for the parameters maxnp and
m
, using the 30 instances from Prodhon and the combinationsPR1 toPR4 listed inTable 4. Themean ranks suggest thatPR3 is the best combination and this is
confirmed by the Friedman and Bonferroni–Dunn tests (chi-square¼11.9,p-value¼0.008). As a result, the maximal value of the pool size was set to maxnp¼15 and the diversification coefficient
m
to 0.2.6.5. Results for LRP-2E instances with one main depot
This subsection reports our results on the instances with a single main depot (Nguyen and Prodhon), while the next one concerns Sterle’s instances with several depots. To the best of our knowledge, no metaheuristic has been published for our version of the LRP-2E. Hence, the MS-ILS and its version with path relinking (MS-ILSPR) are compared on the same computer with two simpler methods which we presented in conferences: GRASPLP, a GRASP reinforced by a learning process (Nguyen et al., 2010), and GRASPPR, a GRASP combined with path relinking (Nguyen et al., 2010).
The results are listed in a common format inTable 5(Nguyen’s instances) and Table 6 (Prodhon’s instances). The two first columns give the instance names and the best known solutions (BKS) found by the four algorithms. Then, for each algorithm, the tables provide the best cost obtained in five runs, the gap of this cost to the BKS in percent and the average duration of the five runs in seconds. The deviation of a method A to the BKS is computed asðcostðAÞBKSÞ=BKS100. Costs in boldface indicate which method gives the best value.
The last six rows display for each algorithm the average gap (Avg gap), the standard deviation of the gaps (Std dev), the average stability (Avg stab), the number of best solutions found (BKS
found), the average rank (Avg rank), and the mean CPU time
(Avg CPU, in seconds). What we call stability of an algorithm for
one instance is the standard deviation of the gaps to the BKS, achieved over the five runs. The third row of indicators (Avg stab) displays the average of these gaps.
There are two main reasons for choosing five runs. Firstly, the two GRASP algorithms used in the comparison were published for five runs too. Secondly, the average stabilities indicate that our Table 4
Combinations of PR parameters and mean ranks obtained.
Heuristic M6þ PR1 PR2 PR3 PR4 Parameter values maxnp 10 10 15 15 m 0.2 0.3 0.2 0.3 Mean ranks,PRi Cost 2.50 3.03 2.10 2.37 CPU time 1.87 2.67 2.43 3.03
Deviation to PR3mean rank
Cost 0.40 0.93 0 0.27
CPU time 0.56 0.24 0 0.60
Table 5
Results for the 24 LRP-2E instances from Nguyen.
Instance BKS GRASPLP GRASPPR MS-ILS MS-ILSPR
Cost Gap CPU Cost Gap CPU Cost Gap CPU Cost Gap CPU
25-5N 80 370 81 152 0.97 0.9 80 370 0.00 2.2 80 370 0.00 1.6 80 370 0.00 3.1 25-5Nb 64 562 64 572 0.02 0.8 64 562 0.00 1.8 64 562 0.00 1.1 64 562 0.00 2.6 25-5MN 78 947 80 412 2.16 0.9 79 674 0.92 1.6 79 593 0.82 1.6 78 947 0.00 3.2 25-5MNb 64 438 64 438 0.00 0.8 64 438 0.00 6.8 64 438 0.00 1.5 64 438 0.00 4.1 50-5N 138 126 145 942 5.66 2.4 143 328 3.77 3.9 138 126 0.00 10.4 138 126 0.00 13.7 50-5Nb 111 062 113 234 1.96 2.3 112 764 1.53 3.6 111 290 0.21 6.3 111 062 0.00 11.7 50-5MN 123 484 126 313 2.29 2.2 123 920 0.35 3.1 123 484 0.00 5.2 123 484 0.00 9.1 50-5MNb 105 401 106 033 0.60 2.3 105 846 0.42 3.9 105 401 0.00 7.7 105 401 0.00 13.6 50-10N 116 132 116 709 0.50 4.5 116 132 0.00 7.1 116 132 0.00 36.8 116 132 0.00 46.6 50-10Nb 87 315 90 559 3.72 6.4 87 315 0.00 10.0 87 315 0.00 15.9 87 315 0.00 22.4 50-10MN 135 748 137 321 1.33 5.4 136 337 0.60 9.5 136 123 0.45 21.8 135 748 0.00 37.5 50-10MNb 110 613 110 703 0.08 6.7 110 613 0.00 10.5 110 613 0.00 19.4 110 613 0.00 42.4 100-5N 196 910 200 974 2.06 5.9 196 999 0.05 8.0 196 910 0.00 10.7 196 910 0.00 13.1 100-5Nb 159 086 160 488 0.88 5.3 159 714 0.39 8.5 159 989 0.57 21.0 159 086 0.00 33.1 100-5MN 207 119 210 381 1.57 5.3 207 141 0.01 8.4 208 177 0.51 17.0 207 119 0.00 25.5 100-5MNb 166 115 170 513 2.65 6.1 167 466 0.81 9.1 166 640 0.32 28.3 166 115 0.00 41.3 100-10N 215 792 229 246 6.23 20.7 215 792 0.00 32.4 218 040 1.04 126.0 215 792 0.00 132.5 100-10Nb 156 401 162 308 4.61 20.3 160 322 2.51 29.5 157 267 0.55 57.8 156 401 0.00 76.9 100-10MN 205 964 210 496 2.20 17.9 209 478 1.71 26.3 206 450 0.24 91.6 205 964 0.00 156.1 100-10MNb 170 706 172 276 0.92 21.0 171 872 0.68 38.5 170 706 0.00 111.9 170 706 0.00 192.4 200-10N 353 685 361 971 2.34 29.8 357 286 1.02 35.9 355 185 0.42 299.4 353 685 0.00 240.8 200-10Nb 262 072 267 733 2.16 52.3 264 241 0.83 77.6 263 157 0.41 281.1 262 072 0.00 358.8 200-10MN 332 345 348 866 4.97 34.4 337 748 1.63 48.5 336 097 1.13 483.5 332 345 0.00 523.1 200-10MNb 292 523 302 500 3.41 59.6 298 556 2.06 85.5 292 523 0.00 549.2 292 654 0.04 690.0 Avg gap (%) 2.17 0.80 0.27 0.00 Std dev (%) 1.73 0.97 0.35 0.01 Avg stab (%) 0.49 0.56 0.32 0.43 BKS found 1 7 12 23 Avg rank 3.94 2.63 2.00 1.44 Avg CPU (s) 13.1 19.7 92.0 112.2
methods are relatively robust: on average, the standard deviation of the gaps to the BKS over the 5 runs is around 0.3–0.4%.
We first present in Table 5 our results for the 24 Nguyen instances described inSection 6.1.
MS-ILS outperforms on average the GRASP algorithms. It achieves a smaller average solution gap (0.27%), saving 1.90% in comparison with GRASPLP and 0.53% with GRASPPR. It obtains 12 best solutions, versus one for GRASPLP and seven for GRASPPR, but the two GRASP find slightly better solutions on a few instances, e.g. 100-5Nb to 100-10N.
The results are improved further by adding path relinking, since MS-ILSPR finds 23 best solutions out of 24 and reduces solution gap to less than 0.01%. The hierarchy defined by the solution gap and the number of best known solutions found is confirmed by the mean ranks, MS-ILSPR reaching 1.44/4.
The price to pay for solution quality is an increased CPU time: MS-ILS and MS-ILSPR are on average 4.5 and 5.5 times slower than the most efficient GRASP (GRASPPR) and the maximum running time reaches 11.5 min on the largest instance 200-10MNb. However, such running times are quite reasonable for a problem involving strategic location decisions like the LRP-2E: It will be probably too costly to change the subset of open depots during a few years, so finding the best subset is worth spending a few minutes of computer time.
The results for the 30 LRP-2E instances derived from Prodhon’s CLRP benchmarks (seeSection 6.1) are presented in Table 6. The average solution gap and the number of BKS lead to the same
hierarchy as before (MS-ILSPRoMS-ILSoGRASPPRoGRASP
LP), again at the expense of augmented running times. On average, these instances with a uniform distribution of customers or a partition of clusters look a bit easier than Nguyen’s instances which are based on normal and multi-normal distributions: all heuristics require less time and produce slightly reduced gaps.
For the two sets of instances, we performed a Friedman test to compare statistically the four algorithms in terms of solution costs. On Nguyen’s instances, the test gives a chi-square value of 58.63 and ap-value smaller than 0.001. On Prodhon’s instances, we get chi-square ¼73.47 and again ap-value inferior to 0.001. Hence, the null hypothesis (the four heuristics have equivalent performances) can be rejected for significance levels 0.05 and 0.01.
In addition to their lower solution values, MS-ILS and its PR version are also more robust than the two GRASP, whether we consider the standard deviation of the gaps to the BKS over the set of instances (Std devin the tables) or the standard deviation of the five runs, averaged on the instances (Avg stab).
The ranks of the four methods are also depicted by box-and-whisker plots in Fig. 9, see for instance http://www.physics. csbsju.edu/stats/box2.htmlfor the principles of these plots. They show that MS-ILSPR clearly outperforms the two GRASP algorithms.
Fig. 8 provides a time-to-target plot (Aiex et al., 2007) confirming the impact of PR on Nguyen’s instance 50-10Nb. The MS-ILS with and without PR are executed
p
¼50 times, recording Table 6Results for the 30 LRP-2E instances derived from Prodhon’s CLRP benchmarks.
Instance BKS GRASPLP GRASPPR MS-ILS MS-ILSPR
Cost Gap CPU Cost Gap CPU Cost Gap CPU Cost Gap CPU
20-5-1 89 075 92 633 3.99 0.6 91 062 2.23 1.2 89 075 0.00 0.9 89 075 0.00 2.4 20-5-1b 61 863 63 094 1.99 0.6 64 090 3.60 1.7 61 863 0.00 0.5 61 863 0.00 2.6 20-5-2. 85 290 86 212 1.08 0.4 86 118 0.97 0.6 85 290 0.00 0.7 85 290 0.00 1.6 20-5-2b 60 838 60 838 0.00 0.4 60 838 0.00 1.1 60 838 0.00 0.4 60 838 0.00 1.4 50-5-1. 134 855 136 137 0.95 2.2 135 549 0.51 3.5 134 855 0.00 5.8 134 855 0.00 9.2 50-5-1b 101 530 109 173 7.53 1.9 102 286 0.74 3.8 101 687 0.15 6.9 10 1530 0.00 15.8 50-5-2. 132 159 136 785 3.50 2.1 132 364 0.16 3.0 132 159 0.00 5.6 132 159 0.00 12.9 50-5-2b. 110 547 111 440 0.81 2.1 112 810 2.05 3.3 110 658 0.10 8.2 110 547 0.00 18.6 50-5-2BIS. 122 654 124 870 1.81 3.0 124 375 1.40 5.1 122 654 0.00 19.4 122 654 0.00 27.6 50-5-2bBIS 105 776 108 718 2.78 2.6 105 776 0.00 6.6 106 197 0.40 19.7 105 776 0.00 30.0 50-5-3. 128 379 129 225 0.66 3.1 128 903 0.41 4.5 128 379 0.00 11.8 128 379 0.00 16.2 50-5-3b 104 006 104 057 0.05 2.4 104 006 0.00 3.8 104 006 0.00 9.2 104 006 0.00 17.0 100-5-1 320 130 324 823 1.47 5.9 321 870 0.54 7.5 321 102 0.30 27.5 320 130 0.00 37.3 100-5-1b 258 256 261 529 1.27 5.4 259 791 0.59 8.7 259 156 0.35 17.2 258 256 0.00 32.0 100-5-2 234 574 236 937 1.01 4.6 235 277 0.30 6.5 234 574 0.00 16.9 234 574 0.00 29.6 100-5-2b 196 149 197 035 0.45 4.3 196 228 0.04 6.4 196 250 0.05 11.2 196 149 0.00 24.9 100-5-3 246 637 250 398 1.52 4.4 248 893 0.91 6.2 246 637 0.00 40.0 246 661 0.01 68.0 100-5-3b 195 254 197 279 1.04 4.8 195 254 0.00 8.8 195 254 0.00 13.8 195 254 0.00 54.3 100-10-1 362 957 370 603 2.11 10.4 364 988 0.56 17.1 362 957 0.00 181.4 362 957 0.00 336.4 100-10-1b 303 400 314 277 3.59 10.2 313 072 3.19 18.1 311 779 2.76 181.7 303 400 0.00 333.5 100-10-2 306 303 310 929 1.51 9.3 309 621 1.08 13.7 307 302 0.33 177.0 306 303 0.00 362.0 100-10-2b 264 389 264 984 0.23 12.9 266 393 0.76 17.2 264 543 0.06 107.2 264 389 0.00 294.1 100-10-3 313 249 319 806 2.09 9.2 318 209 1.58 16.1 315 805 0.82 181.7 313 249 0.00 370.8 100-10-3b 266 383 268 413 0.76 11.0 267 643 0.47 16.0 266 383 0.00 129.1 266 657 0.10 340.4 200-10-1 557 099 570 210 2.35 26.5 561 103 0.72 39.7 559 428 0.42 553.0 557 099 0.00 700.9 200-10-1b 452 286 454 181 0.42 20.6 453 286 0.22 47.1 452 731 0.10 673.0 452 286 0.00 723.7 200-10-2 502 333 508 450 1.22 22.4 506 345 0.80 41.9 502 400 0.01 211.1 502 333 0.00 220.2 200-10-2b 425 311 429 075 0.88 21.9 427 147 0.43 37.4 425 311 0.00 248.1 425 311 0.00 267.3 200-10-3 533 732 541 754 1.50 26.0 538 821 0.95 43.2 533 732 0.00 632.9 533 993 0.05 676.3 200-10-3b 419 047 421 585 0.61 18.3 419 984 0.22 35.2 419 790 0.18 222.9 419 047 0.00 323.6 Avg gap (%) 1.64 0.85 0.20 0.01 Std dev (%) 1.51 0.90 0.52 0.02 Avg stab (%) 0.32 0.52 0.24 0.30 BKS found 1 4 16 27 Avg rank 3.85 2.95 1.82 1.40 Avg CPU (s) 8.3 14.2 123.8 178.3
the time needed to reach a solution with objective function at least as good as a given target value. Like inAiex et al. (2007), for each metaheuristic the running times are sorted in increasing order and a probabilitypi¼ ði1=2Þ=
p
is associated with thei-th sorted running time ti. The curves display the pointszi¼ ½ti,pi,i¼1;2,. . .,p, for a maximum target value 87 315 (solution cost
found by the two heuristics). For instance, MS-ILS has a prob-ability of 47% of finding a solution at least as good as the target value in at most 20 s, while this probability is about 63% for MS-ILSPR.
To conclude with LRP-2E instances, MS-ILSPR looks efficient, both on instances with normal or multi-normal distributions of customers (Nguyen) and on instances with uniform or clustered distributions (Prodhon).
6.6. Results on Sterle’s instances (several platforms)
Our MS-ILS was initially designed for one single main depot. The comparative study with Sterle’s instances, suggested by a reviewer, required two modifications in the algorithms to handle the multiple platforms.
The first modification is to build the first level trips using a multi-platform nearest-neighbour method, in the heuristics H1, H2 and H3 and in the Split procedure. One platformpis randomly selected and its routes are built one by one. A new route is initialized atpand progressively extended by adding at the end the nearest feasible and unrouted satellite. The route returns to the platform when no satellite can be added. Successive routes are built in this way, until the residual platform capacity cannot accept a new route. This process is repeated with another randomly chosen platform, until all satellites are visited by primary routes.
The second modification consists in extending the Best trip
relocationand theSatellite status inversionmoves to the first level,
in the local search LS2. In other words, the first move can now move a complete primary route to another platform, while the second move tries to change the status open/closed of a platform. Sterle’s (2010) PhD dissertation and the conference paper Boccia et al. (2010)give results on a 2.4 GHz PC for a decomposi-tion approach DA (solving a facility locadecomposi-tion problem and then a two-echelon VRP) and a tabu search tested with different sets of parameters. Table 7 lists the results obtained by DA, the best version of the tabu search called TS2 inBoccia et al. (2010), and our MS-ILS. As TS2 performs one run, we provide the cost found by one run of the MS-ILS and, like in the previous tables, the best solution and the average running time for five runs. The best-known solution (BKS) given for each instance is the best of the four algorithms (Sterle reports the results of another tabu search version, TS1, but it is never better than TS2). We give the same statistical indicators as the ones provided for our instances,
Fig. 9.Box-and-whisker plots for the ranks of each algorithm. IQR is the interquartile range. Fig. 8.Time-to-target plot for Nguyen’s instance 50-10Nb.
except that the average stability is meaningful only for the method with several runs (MS-ILS).
On average, our MS-ILS outperforms the other methods in terms of solution quality. Compared with the tabu search TS2, the one-run version saves 2.84% and finds seven best solutions instead of 3. Even if the respective computer speeds are taken into account, our algorithm is almost twice faster: on our 3.4 GHz computer, TS2 would last on average around 22572.4/ 3.4¼1600 s, versus 909 for MS-ILS. Another advantage of MS-ILS is its smaller number of parameters: 9 versus 27 for TS2, according toBoccia et al. (2010).
Concerning MS-ILS with five runs, even better results are achieved: the deviation to the BKS becomes 0.32%, saving 3.35% compared with TS2, and 27 best solutions out of 30 are obtained. However, it is fair to say that the five runs last on average 5927¼4635 s on our computer, which is 2.9 times slower than the 1600 s of TS2.
6.7. Results for CLRP instances
Although our algorithms are not specifically designed for the capacitated location-routing problem (CLRP), we provide a compar-ison with four published CLRP metaheuristics, to show that our
methods still perform well on this particular case without first level. The three first metaheuristics were designed by Prins, Prodhon and Wolfler Calvo: GRASPLP-PR, a GRASP complemented by a learning process and path relinking (Prins and Prodhon, 2006), MA9PM, a memetic algorithm with population management (Prins et al., 2006), and LRGTS, a Lagrangean relaxation/Granular tabu search (Prins et al., 2007). The fourth method (GRASPELS) is a metaheur-istic hybridizing GRASP and evolutionary local search (ELS), recently proposed byDuhamel et al. (2010).
The most efficient metaheuristic available today for the CLRP, both in terms of solution cost and CPU time, is LRGTS. This is a metaheuristic alternating cyclically between a facility location sub-problem and a multi-depot vehicle routing sub-problem. The location sub-problem is solved almost always to optimality, using a dual ascent procedure based on a Lagrangean relaxation, while the multi-depot VRP obtained once the depots are selected is tackled by a granular tabu search.
This test is performed on the 30 CLRP instances built by Prodhon (2006). As a detailed table of results like for the LRP-2E instances would be too large (we have here six heuristics), we prefer to give inTable 8only three indicators: the number of best known solutions found (BKS), the average deviation to these BKS and the mean CPU time. Three different computers being used, Table 7
Results for the 30 Sterle’s LRP-2E instances.
Instance BKS Decomposition App (DA) Tabu Search 2 (TS2) MS-ILS (1 run) MS-ILS (5 runs)
Cost Gap CPUa
Cost Gap CPUa
Cost Gap CPUb
Cost Gap CPUb
I1-5850 1171.69 1226.24 4.66 4421.3 1210.27 3.29 521.7 1180.48 0.75 72.9 1171.69 0.00 103.4 I1-51050 1207.31 1783.6 47.73 6134.9 1256.59 4.08 853.6 1216.99 0.80 168.5 1207.31 0.00 168.1 I1-51075 1561.5 1591.6 1.93 7512.6 1591.6 1.93 1026.1 1561.5 0.00 217.3 1561.5 0.00 225.9 I1-51575 1700.32 1783.6 4.90 6134.9 1708.79 0.50 2614.1 1711.80 0.68 697.1 1700.32 0.00 645.7 I1-510100 2192.14 2247.32 2.52 8033.8 2257.35 2.97 1906.2 2206.91 0.67 506.3 2192.14 0.00 658.9 I1-520100 1989.48 2055.88 3.34 10 218.1 2071.76 4.14 3780.6 2003.55 0.71 1608.7 1989.48 0.00 1969.7 I1-510150 1953.55 2177.77 11.48 8407.1 2097.81 7.38 3740.4 1954.68 0.06 315.5 1953.55 0.00 330.9 I1-520150 1905.81 1933.82 1.47 7786.6 1919.35 0.71 3271.9 1905.81 0.00 2947.2 1905.81 0.00 2891.3 I1-510200 2601.33 2625.11 0.91 10 119.5 2601.33 0.00 2239.1 2646.27 1.73 844.2 2646.27 1.73 947.2 I1-520200 2307.53 3140.17 36.08 12 750.3 2407.33 4.32 6037.4 2341.25 1.46 1287.5 2307.53 0.00 1229.3 Average 11.50 8151.9 2.93 2599.1 0.69 866.5 0.17 917.1 I2-5850 1123.42 1185.75 5.55 2023.3 1185.75 5.55 665.2 1123.42 0.00 91.8 1123.42 0.00 86.9 I2-51050 1265.73 1325.61 4.73 5039.5 1335.81 5.54 390.6 1265.73 0.00 94.8 1265.73 0.00 89.3 I2-51075 1718.25 1768.88 2.95 7061.0 1756.13 2.20 1252.9 1720 0.10 154.9 1718.25 0.00 156.9 I2-51575 1644.79 1644.79 0.00 9499.4 1644.79 0.00 944.4 1768.07 7.50 679.6 1751.14 6.47 668.9 I2-510100 2290.64 2391.17 4.39 10 379.6 2290.64 0.00 769.2 2324.1 1.46 201.9 2324.1 1.46 212.8 I2-520100 2039.25 2051.39 0.60 12 405.6 2041.13 0.09 2608.4 2039.25 0.00 1465.0 2039.25 0.00 1386.3 I2-510150 1768.79 2111.97 19.40 14 060.9 1907.71 7.85 4852.9 1773.41 0.26 374.7 1768.79 0.00 787.3 I2-520150 1664.2 1800.89 8.21 10 134.5 1707.73 2.62 4540.7 1664.2 0.00 1648.5 1664.2 0.00 1627.2 I2-510200 2292.47 2430.93 6.04 8871.8 2407.88 5.03 1078.9 2333.08 1.77 1179.4 2292.47 0.00 1172.2 I2-520200 2097.74 2274.29 8.42 15 602.1 2223.72 6.01 7850.5 2122.9 1.20 3245.9 2097.74 0.00 3091.9 Average 6.03 9507.8 3.49 2495.4 1.23 913.6 0.79 928.0 I3-5850 1171.35 1298.89 10.89 7741.9 1240.8 5.93 474.9 1181.59 0.87 80.4 1171.35 0.00 75.1 I3-51050 1208.43 1256.68 3.99 4929.6 1243.87 2.93 919.5 1209.37 0.08 146.8 1208.43 0.00 149.8 I3-51075 1732.33 1879.56 8.50 13 720.0 1839.38 6.18 806.9 1756.36 1.39 92.2 1732.33 0.00 95.5 I3-51575 1491.31 1704.65 14.31 12 903.9 1590 6.62 1910.9 1510.9 1.31 324.2 1491.31 0.00 306.1 I3-510100 2238.7 2601.44 16.20 20 599.6 2294.44 2.49 546.6 2240.11 0.06 168.5 2238.7 0.00 157.3 I3-520100 2053.12 2261.36 10.14 15 724.5 2170.45 5.71 696.2 2077 1.16 1678.2 2053.12 0.00 1592.6 I3-510150 1307.19 1470.77 12.51 243.9 1342.18 2.68 2635.1 1308.2 0.08 1154.9 1307.19 0.00 1160.1 I3-520150 1266.83 1508.07 19.04 21 240.5 1343.72 6.07 3379.3 1266.83 0.00 2437.9 1266.83 0.00 2441.8 I3-510200 1822.5 2193.32 20.35 41 145.1 1893.68 3.91 2633.5 1839.19 0.92 2231.2 1822.5 0.00 2127.1 I3-520200 2604.56 2784.47 6.91 23 319.4 2692.31 3.37 2765.4 2605.29 0.03 1158.8 2604.56 0.00 1245.3 Average 12.28 16 156.8 4.59 1676.8 0.59 947.3 0.00 935.1 Avg gap (%) 9.94 3.67 0.83 0.32 Std dev (%) 10.52 2.34 1.39 1.23 Avg stab (%) 0.46 BKS found 1 3 7 27 Avg rank 3.72 2.92 2.05 1.32 Avg CPU (s) 11 272.2 2257.1 909.2 926.7
a2.4 GHz Pentium 4 PC with 4 GB of RAM. b