a scatter search algorithm for solving vehicle routing problem with loading cost

11
A scatter search algorithm for solving vehicle routing problem with loading cost Jiafu Tang * , Jun Zhang, Zhendong Pan Key Laboratory of Integrated Automation of Process Industry of MOE, Northeastern University, Shenyang, PR China article info Keywords: Vehicle routing problem Meta-heuristic algorithm Scatter search Loading cost abstract The vehicle routing problem (VRP) is an important scientific problem addressed in distribution manage- ment. In classical VRP and its variants, the vehicle load is often regarded as a constant during transpor- tation; therefore the loading cost associated with the amount of the load on the vehicle, are neglected in the objective function when optimizing a vehicle routine. However, in real-world, the vehicle load varies from one customer to another in a vehicle route. Thus, the vehicle route without considering the effect of loading cost may lead to sub-optimal routes. In this paper, we investigate VRP with loading cost (VRPLC), which considers the costs associated with the amount of the load on the vehicle when determining the vehicle routes. Considering the features of the VRPLC, a scatter search (SS) is proposed. By introducing customer-oriented three-dimensional encoding method, sweep algorithm and optimal splitting proce- dure are combined to obtain better trial solutions. The arc combination and improved nearest neighbor heuristic are adopted as a solution combination method and an improvement method to generate and improve new solutions, respectively. Computational experiments were carried out on benchmark prob- lems of capacitated VRP with seven categories of distribution scenarios. The computational results show that the SS is competitive and superior to other algorithms on most instances, and that the VRPLC can more reasonably and exactly formulate the vehicle routing problem with more cost savings than general VRP models. Ó 2009 Elsevier Ltd. All rights reserved. 1. Introduction Vehicle routing problem (VRP) is an important scientific prob- lem proposed by Dantzig and Ramser (1959) firstly. It can be de- fined as the problem of designing the optimal routes for a fleet of homogeneous vehicles to serve some geographically scattered cus- tomers to minimize the total operation cost. Since then, VRP has received much attention with respects to various aspects of the problem. They are: (1) capacitated vehicle routing problem (CVRP) that is an elementary version of VRP and only considers capacity constraint (Laporte & Nobert, 1983); (2) vehicle routing problem with time windows (VRPTW) that considers the due service time bound of every customer (Bent & Van Hentenryck, 2004); (3) mul- ti-depot vehicle routing problem (MDVRP) that considers multiple depots instead of a single depot (Lim & Wang, 2005); (4) periodic vehicle routing problem (PVRP) that considers the service time as a period instead of a day (Francis & Smilowitz, 2006); (5) split delivery vehicle routing problem (SDVRP) in which customer can be served more than once (Belenguer, Martinez, & Mota, 2000) and so on. The above-mentioned problems are special classes of general VRP and they correspond to some real scenarios of trans- portation in distribution management. Most of the aforementioned VRPs are formulated as 0-1 integer programming problems (Chu, 2005; Lim & Wang, 2005; Lu & Dessouky, 2004; Mingozzi, Giorgi, & Baldacci, 1999), 0-1 mixed integer programming problems (Bookbinder & Reece, 1988; Tavakkoli, Safaei, Kah, & Rabbani, 2007) and network optimization models (Yi & Ozdamar, 2007). In general VRP models and its variants, the transportation cost usually includes two parts: fixed cost and variable cost. The fixed part is the dispatching cost for a vehicle, which depends only on the volume of goods loaded in the vehicle and distance of a trip. The variable cost is in proportion to the sum of the distance trav- eled. In summary of the literature, the aforementioned models for various forms of VRP consider the vehicle load as constant on a whole route, and hence the cost associated with the amount of the load, referred to loading cost hereafter in this paper, is a con- stant and neglected in the objective function. The loading cost is an important part of charge for consumption of gas that changes due to the amount of the load of the vehicle. However, in real- world distribution activities, the vehicle load varies greatly from one customer to another on a whole route, because the goods will be unloaded when a vehicle visited the customer. The vehicle load will decrease as the vehicle visits customers one by one and finally equals the quantity of demand at the last customer on a trip. In practice, when transporting some special freight, such as hazard- ous materials, perishable food, livestock or something with special 0957-4174/$ - see front matter Ó 2009 Elsevier Ltd. All rights reserved. doi:10.1016/j.eswa.2009.11.027 * Corresponding author. Tel.: +86 24 83673810. E-mail addresses: [email protected] (J. Tang), [email protected] (J. Zhang), [email protected] (Z. Pan). Expert Systems with Applications 37 (2010) 4073–4083 Contents lists available at ScienceDirect Expert Systems with Applications journal homepage: www.elsevier.com/locate/eswa

Upload: jiafu-tang

Post on 26-Jun-2016

221 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: A scatter search algorithm for solving vehicle routing problem with loading cost

Expert Systems with Applications 37 (2010) 4073–4083

Contents lists available at ScienceDirect

Expert Systems with Applications

journal homepage: www.elsevier .com/locate /eswa

A scatter search algorithm for solving vehicle routing problem with loading cost

Jiafu Tang *, Jun Zhang, Zhendong PanKey Laboratory of Integrated Automation of Process Industry of MOE, Northeastern University, Shenyang, PR China

a r t i c l e i n f o

Keywords:Vehicle routing problemMeta-heuristic algorithmScatter searchLoading cost

0957-4174/$ - see front matter � 2009 Elsevier Ltd. Adoi:10.1016/j.eswa.2009.11.027

* Corresponding author. Tel.: +86 24 83673810.E-mail addresses: [email protected] (J. Tang),

(J. Zhang), [email protected] (Z. Pan).

a b s t r a c t

The vehicle routing problem (VRP) is an important scientific problem addressed in distribution manage-ment. In classical VRP and its variants, the vehicle load is often regarded as a constant during transpor-tation; therefore the loading cost associated with the amount of the load on the vehicle, are neglected inthe objective function when optimizing a vehicle routine. However, in real-world, the vehicle load variesfrom one customer to another in a vehicle route. Thus, the vehicle route without considering the effect ofloading cost may lead to sub-optimal routes. In this paper, we investigate VRP with loading cost (VRPLC),which considers the costs associated with the amount of the load on the vehicle when determining thevehicle routes. Considering the features of the VRPLC, a scatter search (SS) is proposed. By introducingcustomer-oriented three-dimensional encoding method, sweep algorithm and optimal splitting proce-dure are combined to obtain better trial solutions. The arc combination and improved nearest neighborheuristic are adopted as a solution combination method and an improvement method to generate andimprove new solutions, respectively. Computational experiments were carried out on benchmark prob-lems of capacitated VRP with seven categories of distribution scenarios. The computational results showthat the SS is competitive and superior to other algorithms on most instances, and that the VRPLC canmore reasonably and exactly formulate the vehicle routing problem with more cost savings than generalVRP models.

� 2009 Elsevier Ltd. All rights reserved.

1. Introduction

Vehicle routing problem (VRP) is an important scientific prob-lem proposed by Dantzig and Ramser (1959) firstly. It can be de-fined as the problem of designing the optimal routes for a fleet ofhomogeneous vehicles to serve some geographically scattered cus-tomers to minimize the total operation cost. Since then, VRP hasreceived much attention with respects to various aspects of theproblem. They are: (1) capacitated vehicle routing problem (CVRP)that is an elementary version of VRP and only considers capacityconstraint (Laporte & Nobert, 1983); (2) vehicle routing problemwith time windows (VRPTW) that considers the due service timebound of every customer (Bent & Van Hentenryck, 2004); (3) mul-ti-depot vehicle routing problem (MDVRP) that considers multipledepots instead of a single depot (Lim & Wang, 2005); (4) periodicvehicle routing problem (PVRP) that considers the service time asa period instead of a day (Francis & Smilowitz, 2006); (5) splitdelivery vehicle routing problem (SDVRP) in which customer canbe served more than once (Belenguer, Martinez, & Mota, 2000)and so on. The above-mentioned problems are special classes ofgeneral VRP and they correspond to some real scenarios of trans-

ll rights reserved.

[email protected]

portation in distribution management. Most of the aforementionedVRPs are formulated as 0-1 integer programming problems (Chu,2005; Lim & Wang, 2005; Lu & Dessouky, 2004; Mingozzi, Giorgi,& Baldacci, 1999), 0-1 mixed integer programming problems(Bookbinder & Reece, 1988; Tavakkoli, Safaei, Kah, & Rabbani,2007) and network optimization models (Yi & Ozdamar, 2007).

In general VRP models and its variants, the transportation costusually includes two parts: fixed cost and variable cost. The fixedpart is the dispatching cost for a vehicle, which depends only onthe volume of goods loaded in the vehicle and distance of a trip.The variable cost is in proportion to the sum of the distance trav-eled. In summary of the literature, the aforementioned modelsfor various forms of VRP consider the vehicle load as constant ona whole route, and hence the cost associated with the amount ofthe load, referred to loading cost hereafter in this paper, is a con-stant and neglected in the objective function. The loading cost isan important part of charge for consumption of gas that changesdue to the amount of the load of the vehicle. However, in real-world distribution activities, the vehicle load varies greatly fromone customer to another on a whole route, because the goods willbe unloaded when a vehicle visited the customer. The vehicle loadwill decrease as the vehicle visits customers one by one and finallyequals the quantity of demand at the last customer on a trip. Inpractice, when transporting some special freight, such as hazard-ous materials, perishable food, livestock or something with special

Page 2: A scatter search algorithm for solving vehicle routing problem with loading cost

4074 J. Tang et al. / Expert Systems with Applications 37 (2010) 4073–4083

handling, extra cost can be charged in real-world distributionactivity. This part of cost is commonly a function of weight of theload and accounts for about fifty percent of the transportation cost.

In fact, the vehicle load is considered as a kind of variable, calledflow variable, to formulate traveling salesman problem and a vari-ety of related transportation problems, e.g. network flow problem(Dumas, Desrosiers, & Soumis, 1991; Gavish & Graves, 1978; Gou-veia, 1995). The load variable appears in constraints or appears as athreshold in objective function. Thus, the aforementioned VRPmodels without considering the loading cost could only providean approximate and simplified formulation of practical VRP, andsubsequently the vehicle routes determined without consideringthe effect of loading cost may lead to inexact optimal routes.

This paper focuses on a new formulation of VRP, short for VRPLChereafter in the paper, taking into account the loading cost in theobjective function when optimizing vehicle routes. Distinguishedfrom the traditional models of VRP, the loading cost is regardedas a variable in objective function rather than zero. When the load-ing cost is zero, the VRPLC is CVRP.

CVRP is a NP-hard problem and has been intensively studied. Asa generalization of CVRP, VRPLC is a NP-hard problem. There hasbeen no report on solution algorithms for VRPLC in the literature.However, algorithms for solving various CVRP received much atten-tion. The algorithms for solving CVRP can be divided into two cate-gories: exact algorithms and heuristics. The detailed survey of exactalgorithms for CVRP can be found in Cordeau, Laporte, Savelsbergh,and Vigo (2007). The largest CVRP instance that has been solvedoptimally using an exact algorithm is of 134 customers (Fukasawaet al., 2006). With the size of instances increasing, the computationtime of exact algorithm becomes intolerable. Thus, heuristic algo-rithms have received more attention and they are suitable to solvepractical instances. The heuristics for solving CVRP and its variantsare classified into two categories: classical heuristic and meta-heu-ristic. The famous classical heuristics are those like CW saving heu-ristic (Clarke & Wright, 1964), sweep algorithm (Gillett & Miller,1974), insertion heuristic (Gendreau, Hertz, Laporte, & Stan, 1998)and other iterative improvement heuristics (Tan, Lee, Zhu, & Ou,2001; Waters, 1987). The classical heuristic algorithms terminatewith satisfactory solution quickly and are easy to be implemented;but, in general, the gap between the heuristic solution and the opti-mal solution is large. A systematic review on classical heuristics canbe found in the literatures (Laporte, Gendreau, Potvin, & Semet,2000; Laporte, 2007; Laporte & Semet, 2002).

Compared with classical heuristic, meta-heuristic algorithmscan obtain better solutions than classical heuristics or even globaloptimal solutions in a reasonable time. The well-known meta-heu-ristic algorithms include tabu search (TS) (Glover, 1986), simulatedannealing (SA) (Kirkpatrick & Gelatt, 1983), genetic algorithm(GA) (Mitchell, 1996), ant colony optimization algorithm (ACO)(Doerner, Hartl, Benkner, & Lucka, 2006) and neural networks(Smith, 1999). TS and SA are based on local search principle (Kytöj-oki, Nuortio, Bräysy, & Gendreau, 2007) and usually start searchingfrom one initial solution and explore more promising solutions inthe solution region. Some efficient implementation of TS and SAfor CVRP can be found in Tavakkoli-Moghaddam et al. (2007) andBrandão (2009). GA and ACO are representative methods ground-ing in population search principle (Smith, 1999). The meta-heuris-tics based on population search principle maintain a pool ofsolutions and update the solutions in the pool by rules. Recently,several ACO algorithms are developed to solve CVRP successfully(Doerner et al., 2006). Over the last 2 year, some meta-heuristicalgorithms, like variable neighborhood search (VNS) (Kytöjokiet al., 2007), large neighborhood search (LNS) (Goel & Gruhn,2008), adaptive large neighborhood search(ALNS) (Pisinger &Ropke, 2007), scatter search (SS) (Russell & Chiang, 2006) are ap-plied to the vehicle routing problem. Gendreau, Laporte, and Potvin

(2002) Cordeau, Gendreau, Hertz, Laporte, and Sormany (2005)gave an extensive review of the above-mentioned meta-heuristicsin the past decades and recent years.

Among the aforementioned meta-heuristics, scatter search (SS)can be regarded as an efficient algorithms for VRP (Glover, Laguna,& Marti, 2000). SS is a population-based meta-heuristic and intro-duced by Glover (1977) firstly for solving integer programming.Distinguished from other population-based meta-heuristic, SSoperates on some solutions called reference set (Glover, Laguna, &Marti, 2003). It selects more than two solutions of reference set ina systematic way aiming at producing new solutions. In the domainof solving routing problem the SS can yield better results than someoften used meta-heuristics (Alegre, Laguna, & Pacheco, 2007; Mota,Campos, & Corberán, 2007; Russell & Chiang, 2006).

In this paper, we study VRP with loading cost (VRPLC), whichdetermines a route in order to minimize the total transportationcost considering the costs incurred by vehicle load in objectivefunction. With the formulation of VRPLC, the vehicle load is viewedas varying from a customer to another one instead of a constantduring a trip. Thus, the loading cost brought by the volumes ofgoods loaded in a vehicle is considered as a part of the transporta-tion cost. Considering the features of VRPLC, a scatter search (SS)algorithm is developed. The SS algorithm adapts customer-ori-ented three-dimensional encoding and combines the sweep andoptimal splitting procedure (Prins, 2004) to construct the initialtrial solutions pool. New solutions are generated by combiningthe arc selected. The improved nearest neighbor method is usedto improve new solutions. Seven types of benchmark datasets ofCVRP with different node distribution are chosen, in the form ofrandom, cluster (one and several), mixing random and cluster, reg-ulation(dispersive and dense), and similar magnetic field. Theexperiments to test the performance, stability and sensitivity ofparameters of the SS on benchmark problems are conducted.

Following the introduction, the paper is organized as follows.The mathematical model is described in Section 2, along with theproblem assumption. In Section 3, combining the features of themodel, a SS is developed to solve the VRPLC. In Section 4, compu-tational results of the SS on seven types of benchmark instancesare reported. Finally, conclusions are made in Section 5.

2. Mathematical model for VRPLC

Consider a distribution network in which one product isshipped from a depot to a set of customers. The VRPLC can be de-fined on a graph G = (V,A), where V is vertex set and A is the arc set.The vertex set V includes the depot v0 and customers Vc ¼fv1;v2; . . . ;vNg. The index of the depot is 0 while customers are in-dexed from 1 to N. A ¼ fðv i; v jÞjv i; v j 2 V ; i – jg is the arc set. Adistance matrix D ¼ ðdijÞ is defined on A, which is associated toeach arc ðv i;v jÞ. We assume that D is symmetric and satisfies thetriangle inequality. The depot owns homogeneous vehicles, andthe vehicle number is assumed to be unlimited. Each customer’sdemand is known and less than the vehicle capacity. The followingnotations are used throughout the paper to formulate the model:

N = the number of the customers;K = the number of the vehicles;Q = the capacity of the vehicle;Cd = the cost of traveling per unit-distance by a vehicle, calleddistance coefficient hereafter;Cg = the cost of delivering product of per unit-weight and perunit-distance, called load coefficient hereafter;Cv = the fixed cost of dispatching a vehicle called vehicle coeffi-cient hereafter;dij = the distance from node i to j, i, j = 0,1,2, . . . ,N;

Page 3: A scatter search algorithm for solving vehicle routing problem with loading cost

J. Tang et al. / Expert Systems with Applications 37 (2010) 4073–4083 4075

qi = the demand of customer i, i = 1,2, . . . ,N;xijk = a binary variable, which is equal to 1 when arc (i, j) is tra-versed by vehicle k, otherwise is equal to 0, i, j = 0,1,2, . . . ,N,k = 0,1,2, . . . ,K;yijk = the load of the vehicle k on arc (i, j), the value is nonnega-tive real number and less than Q when vehicle k pass the arcform i to j, otherwise yijk is equal to 0, i, j = 0,1,2, . . . ,N,k = 0,1,2, . . . ,K.

The VRPLC aims to minimize the transportation cost includingdistance cost, loading cost brought by the weight of goods distrib-uted and the dispatching cost. It is formulated as follows:

Min cost¼XN

i¼0

XN

j¼0

dij

XK

k¼1

xijkðCdþCgyijkÞþCvXN

j¼1

XK

k¼1

x0jk ð1Þ

Subject toXN

i¼1

qi

XN

j¼0

xijk6Q ; k2f1;2; . . . ;Kg ð2Þ

XN

j¼0

XK

k¼1

xijk¼1; i2f1;2; . . . ;Ng ð3Þ

XN

i¼0

XK

k¼1

xijk¼1; j2f1;2; . . . ;Ng ð4Þ

XN

j¼1

x0jk61; k2f1;2; . . . ;Kg ð5Þ

XN

j¼1

x0jk�XN

j¼1

xj0k¼0; k2f1;2; . . . ;Kg ð6ÞX

i2S

X

j2S

xijk6 jSj�1 8S#Vc; 26 jSj6n; ð7Þ

k2f1;2; . . . ;KgXN

j¼0i–j

XK

k¼1

ðxjikyjik�xijkyijkÞ¼ qi; i2f1;2; . . . ;Ng ð8Þ

06 yijk6Qxijk; i; j2f0;1; . . . ;Ng;k2f1;2; . . . ;Kg ð9Þxijk 2f0;1g; i; j2f0;1; . . . ;Ng; k2f1;2; . . . ;Kg ð10Þ

The objective function includes the distance cost, the loadingcost brought by the weight of freight and the dispatching cost.The constraint (2) is the vehicle capacity constraint. The formula(3)–(5) represent that every customer is visited exactly once andthat served only by one vehicle. The constraint (6) guarantees thatthe vehicles starts from and return to the depot. The constraint (7)is the sub-tour elimination constraint. Eq. (8) shows the logic rela-tionship between the demand of customer i and the vehicle loadson the two arcs linking customer i.

The mathematical formulation of VRPLC can be regarded as thegeneralization of CVRP, since the model of VRPLC can be trans-formed to the classical CVRP when the Cg and Cv are equal to 0and neglecting the constraints (8) and (9). In the next section, ascatter search algorithm is proposed.

Fig. 1. The solution encoding structure.

3. A scatter search algorithm to solve VRPLC

In recent years, much attention have been attracted on SS forsolving various kinds of VRP. Corberán, Fernández, Laguna, andMarti (2002) proposed a SS to solve a real-life problem with multi-ple objectives. Two different heuristics construct the initial trialsolutions in the SS. SWAP and INSERT, two simple exchange proce-dures are used to improve solutions. The combination method isbased on a voting scheme. The experiments testing on real datashow that the SS can solve the practical problem efficiently. Russell

and Chiang (2006) solved a classical VRPTW by SS. Their SS alsoadopts two different construction heuristics to generate the initialtrial solutions. A common arc method and an optimization-basedset covering model are used to combine solutions. A more recentapplication of SS is Mota et al. (2007), who presented a SS forSDVRP. Local search is adopted as the improvement method. Fourkinds of critical clients is defined to produce new solutions.

Most SS algorithms generally use heuristics to obtain initial trialsolutions and adopt methods with few runtime to improve solu-tions. The procedure of generating new solutions is usually devel-oped according to the characteristic of problem, which is theessential of an SS algorithm. However, generating the initial trialsolutions and the methods of improving solution are importantin SS. Combining the features of the VRPLC, a customer-orientedthree-dimensional encoding method, arc combination and solutionimprovement methods based on the nearest neighbor heuristic aredeveloped, and they are given in detail as follows.

3.1. Customer-oriented three-dimensional encoding method

According to the characteristics of the VRPLC, we design a struc-ture to represent the solution based on the customer. The structureis shown in Fig. 1.

In our implementation, the solution is encoded as an n-dimen-sional vector of customers. Every entry of the vector denotes cus-tomer information that includes three components: the customernumber; the vehicle serving the customer, and the position in the se-quence of the customer visited. The example of Fig. 1 can tell us thatthe customer 1 is visited secondly by vehicle 4. However, the solu-tion encoding cannot display the route directly. When the solutionis obtained, the route can be known from the customers’ informationby ordering the vehicle number and the sequence number in turn.

Fig. 2 is an example to show how to translate encoded solutionto route. The solution displayed each customer’s information inFig. 2a, which has five customers. By ordering the second and thirditems as above-mentioned, we can obtain the routes: 0-1-4-0, 0-3-0 and 0-2-5-0 as shown in Fig. 2b, where 0 denote the depot.

3.2. Diversification generation method

The initial trial solution set of SS usually needs solutions withhigher quality or better diversity in the solution space. The randominitialization based on optimal splitting procedure (RIOSP) is pro-posed to generate the initial trial solution. RIOSP comprise threesteps: (1) select a start point randomly; (2) construct a TSP routeby sweep algorithm (Gillett & Miller, 1974) beginning from the startpoint; (3) apply the optimal splitting procedure (Prins, 2004) to splitthe TSP. Repeating the above process p times one can build a trialsolution set denoted by P. All trial solutions are feasible.

For example, we use the date of benchmark problem (P-n16-k8)of CVRP to demonstrate the process of RIOSP. In Fig. 3a, the algo-rithm selects the 8th customer randomly as start point and the linefrom the depot to the 8th customer is set as the polar axis. Thenuse sweep method to obtain a visiting sequence shown inFig. 3b, which is 8-3-10-1-12-15-4-11-14-5-7-9-6-13-2. After that,apply the optimal splitting procedure to generate the initial trailsolution as shown in Fig. 3c, which is 0-8-0, 0-3-10-0, 0-1-0,0-12-15-0, 0-4-11-0, 0-14-5-0, 0-7-9-0, 0-6-0, 0-13-0 and 0-2-0(0 denote the depot). When a route is decided, yijk the vehicle load

Page 4: A scatter search algorithm for solving vehicle routing problem with loading cost

(1,1,1) (2,3,1) (3,2,1) (4,1,2) (5,3,2) (1,1,1) (2,3,1) (3,2,1) (4,1,2) (5,3,2)

2(a) 2(b)

Fig. 2. An example of the conversion from solution to route.

Fig. 3. An example of the optimal splitting procedure.

Fig. 4. An example of solution combination method.

4076 J. Tang et al. / Expert Systems with Applications 37 (2010) 4073–4083

variable can be determined. For example, given the route 0-3-10-0served by vehicle 2, Q = 35, q3 ¼ 16 and q10 ¼ 8. The computationalresults are y0;3;2 ¼ 24; y3;10;2 ¼ 8 and y10;0;2 ¼ 0. Although yijk is ob-tained according to the route, yijk is considered simultaneouslyduring the route decision.

Diversification generation method can construct initial trialsolution set quickly. The start point selected by random enhancesthe diversity of the solution. The sweep algorithm and the optimalsplitting procedure can help obtain the route of high quality fast.For instance, Fig. 3, 0-8-0, 0-3-10-0, 0-1-12-0, 0-15-4-0, 0-11-14-0, 0-5-7-9-0, 0-6-0, 0-13-0 and 0-2-0, is the result of simple split-ting procedure with objective value of 3266.4, while the result ofoptimal splitting procedure is with the objective value of 3072.4.

3.3. Improvement method

The improvement method is used after generating new solu-tions. The new solutions are the initial trial solutions or solutionsgenerated by combination method. Hence, the improvement meth-od need treat with feasible and infeasible solutions. Improving thesolution generated by the solution combination method can affectthe reference set updated and a tradeoff between the quality andcomputational time is needed. Hence, we apply a simple methodto complete improvement towards reducing the runtime of SS.The procedure is given below.

1. If there are routes of the input solution violating vehicle

capacity limit then

For (i = 1 to the number of the routes which violate vehi-cle capacity limit)

2. Order all the customers of the route i according toinsertion cost.

do3. Remove the customer with the highest insertion

cost.until (satisfy the vehicle capacity limit)

End for4. Insert each customer removed in the position with satis-

fying vehicle capacity limit and having the smallest inser-tion cost. If no such position exists, apply the OptimalSplitting Procedure to the entire customer unplaced to con-struct the new route.End if

5. Order every route of the solution using the improved near-est neighbor method.

The improved nearest neighbor method select next visiting cus-tomer by heuristic rule.

Page 5: A scatter search algorithm for solving vehicle routing problem with loading cost

J. Tang et al. / Expert Systems with Applications 37 (2010) 4073–4083 4077

Rule: The vertex j with the highest qj=dij value and the lowest dij

is preferential, when vertex i ði 2 VÞ select the next vertex visitedfrom J ¼ fjjj 2 Vg. qj equals 0, when j = 0.

The rule is derived from the observation of the objective func-tion. For a given route, the total demands of all customers aredetermined. Given m customers in one route and the correspond-ing demand set Q 0 ¼ fq1; q2; . . . ; qmg, the arcs comprised the routebelong to arc set A0 ¼ fr1; r2; . . . ; rmþ1g. The length of each arc isrepresented by dr0

i; i0 2 f1;2; . . . ;mþ 1g. Then, the objective func-

tion of this route can be computed by following formula:

cos t ¼ Cdðdr1 þ dr2 þ � � � þ drmþ1 Þ þ Cg ½ðq1 þ q2 þ � � � þ qmÞdr1

þ ðq2 þ � � � þ qmÞdr2 þ � � � þ qmdrm � þ Cv ð11Þ

To reduce the value of objective function, the idea is to reduce thevalue of each item in the function. The intuitional method is to re-duce each element in the first and second item of the function. Thethird item is constant. The most complex part is the second non-lin-ear item. When a route is determined, the total demand, i.e.q1 þ q2 þ � � � þ qm, is determined. To reduce the value of the seconditem, we want to make the value of each element in this item belower. Hence, we hope q1 > q2 > � � � > qm and dr1 < dr2 < � � � < drm .The improved nearest neighbor method can satisfy it. The methodmay result in the value of drmþ1 being high, but it influences onthe objective function little.

3.4. Reference set update method

The reference set is the foundation of generating new solutionsand is very important part of SS. Reference set update methodcompletes building the initial reference set and updating the refer-ence set when the new solution is created. The detailed descrip-tions for the two parts of reference set update method are givenin the following.

3.4.1. Building initial reference setAs usual, the reference set, Refset, consists of two subsets. One is

Refset1 with b1 higher quality solutions and the other is Refset2which includes b2 solutions with better diversification. To find di-verse solutions, how to measure the diversification degree, i.e. dis-tance, between two solutions need be defined. Given two solutionsx1 and x2 with e1 and e2 arcs, respectively, there are ec commonarcs between the two solutions. The distance can be defined asdðx1; x2Þ ¼ 1� 2�ec

e1þe2. The value of the distance is in the range

[0,1]. The degree of the diversification is biggest when the valueis equal to 1. If the two solutions are same, the distance value is 0.

Take first 3 solutions with the minimum objective function va-lue from P to build Refset1. During determining Refset2, calculatethe distance between solutions in Refset and P-Refset and maximizethe distance minimum (Glover et al., 2003) to obtain a solution andrepeat this process b2 times.

3.4.2. Updating reference setUpdating Refset starts from the new solution generated by com-

bination and improvement method. The basic static update processof the reference set is chosen (Marti, Laguna, & Glover, 2006). Thereference set is updated when the objective function value of a newsolution is better than the worst solution in the Refset.

3.5. Subset generation method

Subset generation method is the foundation to construct newsolutions in SS. The subsets are built based on the reference set.The general rule (Glover et al., 2003) to generate subsets is suitfor most problems solved by SS. The only difference is the typeof the subsets applied in different problems. In our implementa-

tion, we use four types of subsets, which are 2-element subsets,3-element subsets, 4-element subsets and the subsets consistingof the best i (for i = 5 to b) elements.

3.6. Solution combination method

Solution combination method is used to create new solutionson the subsets. The basic SS can obtain more than one solutions,but only one new solution is generated in our implementation.The new solution is perhaps infeasible; however, they all satisfythe other constraints except the vehicle capacity limit. The combi-nation method is a method of arc combination with selecting highquality arcs and common arcs. ‘‘The arcs appears with a high fre-quency in elite solutions will have a higher probability of beingin an optimal solution” (Rochat & Taillard, 1995). The subset isbased on the reference set and the solutions in the reference setare the elite solutions of set P. It is the reason of selecting commonarcs. The criterion of high quality arcs are those with the minimumdistance and according with the rule described in Section 3.3.

To be convenient for calculation, we use a ð1þ NÞ � ð1þ NÞ 0-1matrix, A ¼ ðaijÞ i; j 2 0;1; . . . ;N, to represent a solution. If there isan arc from vertex i to j, aij equals 1. Otherwise aij equals 0. Eachsolution can only be represented by one matrix according to the or-der of customers visited.

The implementation process of combination method can beshown below.

1. Transform all the solutions in a subset to matrixes

Al ¼ ðaijÞ, respectively, l 2 ½1;num�; num represent thenumber of solutions in the subset

2. Add up all the matrixes transformed in step1, A0 ¼Pnum

l¼1 Al

3. For i = the second row of A0 to the row 1 + n of A0

4. Save the column number with the biggest value aij

located in the variable columnIf there are more than one column with the same

biggest value then5. Update variable column with the column number

where qj=dij with the biggest value is locatedEnd if

6. Set j to equal the number which is saved in the var-iable column. Then, set aij equals 1 and others equal 0.End for

7. For j = the second column of A0 to the 1 + n column of A0

If there is no any location of the column j being set instep 3 to step 6 then

8. Save the row number which aij with the biggestvalue is located in the variable row

If there are more than one column with the samebiggest value then

9. Update variable row with the row numberwhere qi=dji with the biggest value is located

End if10. Set i to equal the number which is saved in the

variable row. Then, set aij equals 1 and others equal 0.Else

11. Maintain the location set, the other rows in thiscolumn equal 0.

End ifEnd for

12. Traverse the route starting from the distribution center,and cut the relationship between the customers whicharen’t visited and other customers. Construct a new routebetween each customer which is not visited and the dis-tribution center.

Page 6: A scatter search algorithm for solving vehicle routing problem with loading cost

h Applications 37 (2010) 4073–4083

In the process of combination, the constraints (3)–(6) are metby step 3 to step 11. The step 12 makes the route without the

sub-tour.

An example is illustrated to explain the implementation processin Fig. 4.

The example in Fig. 4 is the solution combination process in asubset which includes three solutions. Firstly, we use three ma-trixes to represent the three solutions, respectively, as shown inFig. 4a–c. Secondly, by adding the three matrixes, we can obtainthe matrix shown in Fig. 4d. Thirdly, we determine the value ofeach row in the frame. In the frame only one position can be equalto 1 in each row to ensure the out-degree of the customer equals 1.The position is decided according to the rule described from step 3to step 6 in the implementation process. In Fig. 4d, given the valueof q1=d41 is the biggest, so customer 1 will be visited following cus-tomer 4. Finally, set the value of each column in the frame of Fig. 4fas described from step 7 to step 11 in the implementation process.

4078 J. Tang et al. / Expert Systems wit

Table 1Description of testing problems.

aBreedam-P1 and Breedam-P2 are instance 19.bGWKC-P1 is instance 13, GWKC-P2 is instance 10, GWKC-P3 is instance 16, GWKC-P4

Table 2Comparison of the results for VRPLC among SS, ACOs and best known solutions.

Testing problem no. Instance Improved C-W CVRP

v(s) t (s) v(s)

P6 E-n33-k4 622,590 2.7 577,739P10 F-n72-k4 600,671 49.5 589,297P1 P-n76-k4 24,346 59.5 21,349P2 P-n76-k5 19,912 59.4 19,690P3 E-n101-k8 18,016 194.5 17,664P4 E-n101-k14 15,102 183.8 14,898P7 Breedam-P1 12,181 184.8 –P8 Breedam-P2 11,093 184.1 –P9 F-n135-k7 250,795 592.6 243,786P5 M-n200-k17 30,285 995.2 –P14 GWKC-P4 17,723 2564.8 18,084P11 GWKC-P1 94,196 2451.9 89,415P12 GWKC-P2 82,539 7310.6 75,781P15 GWKC-P5 33,232 13,173.6 33,639P16 GWKC-P6 44,343 24,775.9 43,897P13 GWKC-P3 175,952 99,552.1 165,053

a Coded in Matlab, seconds using Pentium 4, 2.66 GHz with 512 MB RAM under the Mb Time unit is second.

The result of the solution combination method is 0-2-0, 0-4-1-0and 0-5-3-0 where 0 denote the depot.

4. Computational experiments and analysis

In this section, we examine the performance of the proposed SSdescribed above. The SS is coded in JAVA and all the tests were per-formed on Pentium 4 at 3.0 GHz with 1 GB RAM under the Micro-soft Windows XP operation system.

4.1. Introduction of testing problems

We adopt the benchmark instances of CVRP to test the proposedSS. The benchmark problems selected as the testing problems areobtained from the webpage of http://www.neo.lcc.uma.es/radi-aeb/WebVRP/Problem_Instances/instances.html. These testing

is instance 17, GWKC-P5 is instance 19, and GWKC-P6 is instance 20.

IMMASa PMMASa SSb

v(s) t (s) v(s) t (s) v(s) t (s)

613,206 4.3 467,149 4.5 467,302 0.1598,322 11.3 314,446 11.4 313,368 0.827,706 11.6 11,885 12.1 11,112 0.522,230 11.5 12,018 12.0 11,130 0.521,140 18.1 13,914 18.7 12,624 0.916,335 21.6 13,861 18.9 12,715 2.812,496 18. 2 12,476 19.0 11,867 7.711,680 18.3 11,600 18.1 11,515 4.9261,070 29.9 162,142 31.3 161,282 1.532,846 66.1 25,264 67.1 25,001 5.118,239 87.7 17,100 96.5 16,442 24.496,830 96.6 71,451 101.0 63,561 15.586,469 156.6 59,635 164.8 57,144 34.037,756 193.5 30,721 209.9 31,050 48.647,681 262.9 40,147 306. 2 40,742 177.4188,155 341. 3 132,766 356.1 121,641 64.1

icrosoft Windows XP operating system.

Page 7: A scatter search algorithm for solving vehicle routing problem with loading cost

J. Tang et al. / Expert Systems with Applications 37 (2010) 4073–4083 4079

problems are classified into seven types. Each type represent a sce-nario of customer’s distribution, hence they have different distri-bution characteristics. These testing problems are from smallsizes with 32 customers to large size with 480 customers and havedifferent vehicle capacity. Detailed information of these testingproblems is shown in Table 1. The parameter values of the modelare set with Cd ¼ 1:5; Cg ¼ 0:2 and Cv ¼ 100. The parameter valuesare determined according to an investigation in some local trans-portation company.

All the benchmark problems only have vehicle capacityrestriction.

Table 3The results of SS over 50 independent runs.

Fig. 5. Data set of E-n33-k4 and the correspo

Fig. 6. Data set of M-n200-k17 and the corresp

4.2. The comparison analysis of the SS

To test the performance of SS, the best known solutions of thebenchmark problems, improved C-W algorithm and two Ant Col-ony Optimization (ACO) algorithms are used to compare with SS.One ACO algorithm is Improved MAX-MIN Ant System (IMMAS)and the other is Partition based MAX-MIN Ant System (PMMAS).The improved C-W algorithm adopts the objective function ofVRPLC and considers the influence of sequence of visiting. IMMASis based on the MAX-MIN Ant System for TSP proposed by Stützleand Hoos (2000). It solves the VRPLC by partitioning the TSP route.The partition only considers vehicle capacity constraint. The parti-tion of the PMMAS is by optimal splitting (Prins, 2004).

The comparison results are reported in Table 2, the column of‘‘v(s)” represents the objective function value of the solution and‘‘t” represents the computational time. The column of ‘‘CVRP” isthe objective function value of the VRPLC corresponding to the bestknown solutions of CVRP problem. The last column is the best solu-tion of SS over 50 independent runs. The computational resultsindicate that the SS is much better than other four algorithms forthe 12 testing problems among the 16 testing problems. As forthe testing problems P6, P8, P15 and P16, the solution gap betweenthe SS and the best solutions of other algorithm is not more than3.6%, while the other algorithm consumed more time. Thus, onecan conclude that the SS is competitive both in quality and compu-tational time for most instances in Table 2.

From the perspective of running time, the testing problemswith the same customers’ distribution and different vehicle capac-ity, computational time reduces along with increase of vehiclecapacity. That is because in the problem with the relatively smallvehicle capacity, more feasible solutions are generated. Theresults in Table 2 also show that for the instances with the same

nding results over 50 independent runs.

onding results over 50 independent runs.

Page 8: A scatter search algorithm for solving vehicle routing problem with loading cost

4080 J. Tang et al. / Expert Systems with Applications 37 (2010) 4073–4083

distribution, the computational time increases with the size of thecustomers on the whole. From the results in Table 2, we can con-clude that algorithms with best known solutions of CVRP are notsuitable for the VRPLC. It can be observed that the methods forCVRP cannot produce better solution than SS.

Fig. 7. Data set of GWKC-P3 and the correspo

Fig. 8. Data set of GWKC-P6 and the correspo

Table 4The results of SS with different parameter setting of model.

*Time unit is second. MAX, MIN and AVG are the maximum, minimum and average valu

4.3. The experiment on the stability of the SS

To test the stability of the SS, we run the SS algorithm indepen-dently over 50 times for each testing problem. For each testingproblem, the best solution (MIN), worst solution (MAX) and the

nding results over 50 independent runs.

nding results over 50 independent runs.

es of the solutions among the 50 independent runs.

Page 9: A scatter search algorithm for solving vehicle routing problem with loading cost

Fig. 9. Total costs varying with load cost coefficient under SS and best solution of CVRP.

Fig. 10. The total costs varying with the size of trial solution set.

J. Tang et al. / Expert Systems with Applications 37 (2010) 4073–4083 4081

average values of the objective function (AVG) are given in Table 3.The ‘‘Avg gap” is defined as ((MAX � AVG)/AVG) � 100% in the‘‘Max” column and as ((AVG �MIN)/AVG) � 100% in the ‘‘MIN” col-umn. The results in Table 3 indicates that the gaps either betweenmaximum and average or between minimum and average are notmore than 3% among the testing problems, which lead us to con-clude that the SS is stable.

Table 5The results of SS with different size initial solution sets.

4.4. The improvement effect of SS

This part of experiments is carried out to illustrate the roles ofthe improvement method by comparing the best trial solution withthe final solution. Four typical distributions are selected to observethe performance of SS. Figs. 5–8 report the best trial solution andfinal result over 50 independent runs. The left ones show the datadistribution of the benchmark instances. From the result in Fig. 5b,it can be observed that the initial best solution is not improved fur-ther when the data size is small. Owing to the randomization of SS,there exists one solution distinguished from others. However, fromFigs. 6–8, it indicates that the improved rates of the other three in-stances with large sizes data sets are about 10%, 5% and 14%,respectively. The effect of improvement is not good for the regulardistribution.

4.5. The influence of cost coefficients variation on solution

This part of experiments is to illustrate how the cost coefficientsaffect the solution to demonstrate that VRPLC is more reasonableand practical than VRP in formulating distribution management.Cd ¼ 1:0, 1.5, Cg ¼ 0, 0.001, 0.005, 0.01, 0.05, 0.1, 0.5, 1.0 andCv ¼ 0, 100, 500 are selected and the experiments are done ontwo benchmark instances, E-n101-k14 and GWKC-P1 . When Cg

and Cv are equal to 0, VRPLC is transformed to the classical CVRP.

Page 10: A scatter search algorithm for solving vehicle routing problem with loading cost

4082 J. Tang et al. / Expert Systems with Applications 37 (2010) 4073–4083

The best known solution of CVRP and the solution of SS under dif-ferent values of parameters are given in Table 4. The total costvarying with load coefficients for the instance E-n101-k14 andGWKC-P1 under CVRP and SS is shown in Fig. 9. It is observed fromTable 4 that the best known solutions of CVRP are poorer than SSwhen Cg is not equal to 0. In Fig. 9, the ‘‘CVRP” represent the costsof the best known solution of CVRP, and the ‘‘SS” represent the pro-posed SS algorithm. Fig. 9 shows that, when the value of Cg is lessthan 0.05, the cost of ‘‘CVRP” is less than the ‘‘SS”. It indicates thatthe load cost affects the transportation cost slightly, whereas thecosts of ‘‘SS” are much less than ‘‘CVRP” with the value of Cg

increasing. It means that considering the factor of load cost canlead a reduction of the total cost. The results demonstrate the SSis more suitable for VRPLC. As a consequence, this SS for VRPLCis not good for solving general CVRP, if there is no any modification.The experiments demonstrate that VRPLC not only can more rea-sonably and exactly formulate the vehicle routing problem, butalso can provide better solution than VRP.

4.6. Experiments on solution varying with the size of initial trialsolution

Reference sets is an important concept of SS, the initial trialsolution sets affect the building of initial reference sets. So we testthe effect of different size of the initial trial solution sets on thesolution in this section. Fig. 10 depicts the solutions varying withdifferent sizes of the initial trial solution. Because the results in Ta-ble 3 are obtained when the size of the reference set equals 10.Considering Table 3, Table 5 and Fig. 10 together, it is concludedthat the sizes have no considerable effect on the solution.

5. Conclusions

Taking into account the loading cost in objective function, a newformulation of vehicle routing problem (VRPLC) is proposed. Ascatter search algorithm is developed for solving VRPLC in this pa-per. Distinguished from the traditional VRP models, the vehicleload is viewed as a variable rather than a constant from one cus-tomer to another in a trip. Experimenting on some benchmark in-stances demonstrated that VRPLC can more reasonably and exactlyformulate the vehicle routing problem, but also can provide costsaving than VRP formulation.

Acknowledgements

The paper was financially supported by the Natural ScienceFoundation of China (NSFC 70625001, 70721001), 973 Program(2009CB320601), and 111 project of Ministry of Education (MOE)in China with number B08015. Those supports are gratefullyacknowledged.

References

Alegre, J., Laguna, M., & Pacheco, J. (2007). Optimizing the periodic pick-up of rawmaterials for a manufacturer of auto parts. European Journal of OperationalResearch, 179(3), 736–746.

Belenguer, J. M., Martinez, M. C., & Mota, E. (2000). Lower bound for the splitdelivery vehicle routing problem. Operations Research, 48(5), 801–810.

Bent, R., & Van Hentenryck, P. (2004). A two-stage hybrid local search for the vehiclerouting problem with time windows. Transportation Science, 38(4), 515–530.

Bookbinder, J. H., & Reece, K. E. (1988). Vehicle routing considerations indistribution system design. European Journal of Operational Research, 37(2),204–213.

Brandão, J. (2009). A deterministic tabu search algorithm for the fleet size and mixvehicle routing problem. European Journal of Operational Research, 195(3),716–728.

Chu, C. W. (2005). A heuristic algorithm for the truckload and less-than-truckloadproblem. European Journal of Operational Research, 165(3), 657–667.

Clarke, G., & Wright, J. W. (1964). Scheduling of vehicles from a central depot to anumber of delivery points. Operations Research, 12(4), 568–581.

Corberán, A., Fernández, E., Laguna, M., & Marti, R. (2002). Heuristic solutions to theproblem of routing school buses with multiple objectives. Journal of theOperational Research Society, 53(4), 427–435.

Cordeau, J. F., Laporte, G., Savelsbergh, M. W. P., & Vigo, D. (2007). Vehicle routing. InC. Barnhart & G. Laporte (Eds.), Transportation, handbooks in operations researchand management science (pp. 367–428). Amsterdam: Elsevier.

Cordeau, J. F., Gendreau, M., Hertz, A., Laporte, G., & Sormany, J.-S. (2005). Newheuristics for the vehicle routing problem. In A. Langevin & D. Riopel (Eds.),Logistics systems: Design and optimization (pp. 279–297). New York: Springer.

Dantzig, G. B., & Ramser, J. H. (1959). The truck dispatching problem. ManagementScience, 6(1), 80–91.

Doerner, K. F., Hartl, R. F., Benkner, S., & Lucka, M. (2006). Parallel cooperativeSavings based Ant colony optimization – Multiple search and decompositionapproaches. Parallel Processing Letters, 16, 351–369.

Dumas, Y., Desrosiers, J., & Soumis, F. (1991). The pickup and delivery problem withtime windows. European Journal of Operational Research, 54(1), 7–22.

Francis, P., & Smilowitz, K. (2006). Modeling techniques for periodic vehicle routingproblems. Transportation Research Part B: Methodological, 40(10), 872–884.

Fukasawa, R., Lysgaard, J., De Aragao, M. P., Reis, M., Uchoa, E., & Werneck, R. F.(2006). Robust branch-and-cut-and-price for the capacitated vehicle routingproblem. Mathematical Programming, 106(3), 491–511.

Gavish, B., & Graves, S. C. (1978). The traveling salesman problem and relatedproblems.

Gendreau, M., Hertz, A., Laporte, G., & Gendreau, M. (1998). A generalized insertionheuristic for the traveling salesman problem with time windows. OperationsResearch, 46(3), 330–346.

Gendreau, M., Laporte, G., & Potvin, J. Y. (2002). Metaheuristics for the capacitatedVRP. In P. Toth & D. Vigo (Eds.), The vehicle routing problem (pp. 129–154).Philadelphia: SIAM Monograph on Discrete Mathematics and Applications.

Gillett, B. E., & Miller, L. R. (1974). A heuristic algorithm for the vehicle dispatchproblem. Operations Research, 22(2), 340–349.

Glover, F. (1977). Heuristics for integer programming using surrogate constraints.Decision Sciences, 8(1), 156–166.

Glover, F. (1986). Future paths for integer programming and links to artificialintelligence. Computers and Operations Research, 13(5), 533–549.

Glover, F., Laguna, M., & Marti, R. (2000). Fundamentals of scatter search and pathrelinking. Control and Cybernetics, 29(3), 652–684.

Glover, F., Laguna, M., & Marti, R. (2003). Scatter search. In G. Ashish & T. Shigeyoshi(Eds.), Advances in evolutionary computing: Theory and applications(pp. 519–537). New York: Springer-Verlag.

Goel, A., & Gruhn, V. (2008). A general vehicle routing problem. European Journal ofOperational Research, 191(3), 650–660.

Gouveia, L. (1995). A result on projection for the vehicle routing problem. EuropeanJournal of Operational Research, 85(3), 610–624.

Kirkpatrick, S., & Gelatt, C. (1983). Optimisation by simulated annealing. Science, 20,671–680.

Kytöjoki, J., Nuortio, T., Bräysy, O., & Gendreau, M. (2007). An efficient variableneighborhood search heuristic for very large scale vehicle routing problems.Computers and Operations Research, 34(9), 2743–2757.

Laporte, G. (2007). What you should know about the vehicle routing problem. NavalResearch Logistics, 54(8), 811–819.

Laporte, G., Gendreau, M., Potvin, J. Y., & Semet, F. (2000). Classical and modernheuristics for the vehicle routing problem. International Transactions inOperational Research, 7(4–5), 285–300.

Laporte, G., & Nobert, Y. (1983). A branch and bound algorithm for the capacitatedvehicle routing problem. OR Spektrum, 5(2), 77–85.

Laporte, G., & Semet, F. (2002). Classical heuristics for the capacitated VRP. In P. Toth& D. Vigo (Eds.), The vehicle routing problem (pp. 109–128). Philadelphia: SIAMMonograph on Discrete Mathematics and Applications.

Lim, A., & Wang, F. (2005). Multi-depot vehicle routing problem: A one-stageapproach. IEEE Transactions on Automation Science and Engineering, 2(4),397–402.

Lu, Q., & Dessouky, M. (2004). An exact algorithm for the multiple vehicle pickupand delivery problem. Transportation Science, 38(4), 503–514.

Marti, R., Laguna, M., & Glover, F. (2006). Principles of scatter search. EuropeanJournal of Operational Research, 169(2), 359–372.

Mingozzi, A., Giorgi, S., & Baldacci, R. (1999). Exact method for the vehicle routingproblem with backhauls. Transportation Science, 33(3), 315–329.

Mitchell, M. (1996). An introduction to genetic algorithms. Bradford Books.Mota, E., Campos, V., & Corberán, Á. (2007). A new metaheuristic for the vehicle

routing problem with split demands. In C. Cotta & J. van Hemert (Eds.), LectureNotes in Computer Science (pp. 121–129). Springer Valencia.

Pisinger, D., & Ropke, S. (2007). A general heuristic for vehicle routing problems.Computers and Operations Research, 34(8), 2403–2435.

Prins, C. (2004). A simple and effective evolutionary algorithm for the vehiclerouting problem. Computers and Operations Research, 31(12), 1985–2002.

Rochat, Y., & Taillard, É (1995). Probabilistic diversification and intensification inlocal search for vehicle routing. Journal of Heuristics, 1(1), 147–167.

Russell, R. A., & Chiang, W. C. (2006). Scatter search for the vehicle routing problemwith time windows. European Journal of Operational Research, 169(2), 606–622.

Smith, K. A. (1999). Neural networks for combinatorial optimization: A review ofmore than a decade of research. INFORMS Journal on Computing, 11, 15–34.

Stützle, T., & Hoos, H. H. (2000). MAX-MIN ant system. Future Generation ComputerSystem, 16(8), 889–914.

Page 11: A scatter search algorithm for solving vehicle routing problem with loading cost

J. Tang et al. / Expert Systems with Applications 37 (2010) 4073–4083 4083

Tan, K. C., Lee, L. H., Zhu, Q. L., & Ou, K. (2001). Heuristic methods for vehicle routingproblem with time windows. Artificial Intelligence in Engineering, 15(3),281–295.

Tavakkoli, M. R., Safaei, N., Kah, M. M. O., & Rabbani, M. (2007). A new capacitatedvehicle routing problem with split service for minimizing fleet cost bysimulated annealing. Journal of the Franklin Institute, 344(5), 406–425.

Waters, C. D. J. (1987). A solution procedure for the vehicle scheduling problembased on iterative route improvement. Journal of the Operational ResearchSociety, 38(9), 833–839.

Yi, W., & Ozdamar, L. (2007). A dynamic logistics coordination model for evacuationand support in disaster response activities. European Journal of OperationalResearch, 179(3), 1177–1193.