Applying hybrid meta-heuristics for capacitated vehicle routing problem

8
Applying hybrid meta-heuristics for capacitated vehicle routing problem Shih-Wei Lin a,b , Zne-Jung Lee b, * , Kuo-Ching Ying c , Chou-Yuan Lee d a Department of Information Management, Chang Gung University, No. 259, Wen-Hwa 1st Road, Tao-Yuan, Taiwan b Department of Information Management, Huafan University, No. 1, Huafan Road, Taipei, Taiwan c Department of Industrial Management and Management Information, Huafan University, No. 1, Huafan Road, Taipei, Taiwan d Department of Information Management, Lan Yang Institute of Technology, Taiwan Abstract The capacitated vehicle routing problem (CVRP) is one of the most important problems in the optimization of distribution networks. The objective of CVRP, known demands on the cost of originating and terminating at a delivery depot, is to determine the optimal set of routes for a set of vehicles to deliver customers. CVRP is known to be NP-hard problem, and then it is difficult to solve this problem directly when the problem size is large. In this paper, a hybrid algorithm of simulated annealing and tabu search is applied to solve CVRP. It takes the advantages of sim- ulated annealing and tabu search for solving CVRP. Simulation results are reported on classical fourteen instances and twenty large-scale benchmark instances. From simulation results, the proposed algorithm finds eight best solutions of classical fourteen instances. Addi- tionally, the solutions of the proposed algorithm have also admirable performance for twenty large-scale benchmark instances. It shows that the proposed algorithm is competitive with other existing algorithms for solving CVRP. Ó 2007 Published by Elsevier Ltd. Keywords: Capacitated vehicle routing problem; Hybrid algorithm; Simulated annealing; Tabu search 1. Introduction CVRP is a generic name given to a whole class of prob- lems in which a set of routes for a fleet of vehicles based at one or several depots must be determined for a number of geographically dispersed customers, and vehicles have the maximal loading capacity. The objective of CVRP is to minimize the total cost (i.e., a weighted function of the number of vehicles and the travel distance of vehicles) to serve a set of customers with known demands. The route must be designed in such a way that each customer is vis- ited once and by only one vehicle. CVRP is a well known combination problem which falls into the category of NP-Hard problem, since it concludes the bin packing prob- lem and the traveling salesperson problem as a special case (Laporte & Semet, 2001; Prins, 2004). CVRP can be solved by mathematical methods or heu- ristic approaches. The use of mathematical methods can obtain the optimal solutions. However, the required com- putational complexity will result in exponential time when the problem size is large (Lee, Lee, & Su, 2002; Lee, Su, & Lee, 2003). Heuristic approaches can be divided into the classical heuristic approaches and the meta-heuristic approaches. The classical heuristic approaches can find one feasible solution quickly, but this feasible solution may have a large disparity compared with the best solution. The meta-heuristic approaches can obtain near optimal solutions or even global optimal solutions. Therefore, meta-heuristic approaches such as simulated annealing (SA) and tabu search (TS) are usually employed to find the optimal solutions. Recently, many researchers have found that the employment of local search in optimization problems can improve the quality of problem solving (Lee & Lee, 2005; Lee et al., 2002; Lee et al., 2003; Xu & Kelly, 1996). A local search approach starts with an initial solu- tion and searches within neighborhoods for better solu- 0957-4174/$ - see front matter Ó 2007 Published by Elsevier Ltd. doi:10.1016/j.eswa.2007.11.060 * Corresponding author. Tel./fax: +886 2 26632102. E-mail address: [email protected] (Z.-J. Lee). www.elsevier.com/locate/eswa Available online at www.sciencedirect.com Expert Systems with Applications 36 (2009) 1505–1512 Expert Systems with Applications

Transcript of Applying hybrid meta-heuristics for capacitated vehicle routing problem

Available online at www.sciencedirect.com

www.elsevier.com/locate/eswa

Expert Systems with Applications 36 (2009) 1505–1512

Expert Systemswith Applications

Applying hybrid meta-heuristics for capacitated vehicle routing problem

Shih-Wei Lin a,b, Zne-Jung Lee b,*, Kuo-Ching Ying c, Chou-Yuan Lee d

a Department of Information Management, Chang Gung University, No. 259, Wen-Hwa 1st Road, Tao-Yuan, Taiwanb Department of Information Management, Huafan University, No. 1, Huafan Road, Taipei, Taiwan

c Department of Industrial Management and Management Information, Huafan University, No. 1, Huafan Road, Taipei, Taiwand Department of Information Management, Lan Yang Institute of Technology, Taiwan

Abstract

The capacitated vehicle routing problem (CVRP) is one of the most important problems in the optimization of distribution networks.The objective of CVRP, known demands on the cost of originating and terminating at a delivery depot, is to determine the optimal set ofroutes for a set of vehicles to deliver customers. CVRP is known to be NP-hard problem, and then it is difficult to solve this problemdirectly when the problem size is large.

In this paper, a hybrid algorithm of simulated annealing and tabu search is applied to solve CVRP. It takes the advantages of sim-ulated annealing and tabu search for solving CVRP. Simulation results are reported on classical fourteen instances and twenty large-scalebenchmark instances. From simulation results, the proposed algorithm finds eight best solutions of classical fourteen instances. Addi-tionally, the solutions of the proposed algorithm have also admirable performance for twenty large-scale benchmark instances. It showsthat the proposed algorithm is competitive with other existing algorithms for solving CVRP.� 2007 Published by Elsevier Ltd.

Keywords: Capacitated vehicle routing problem; Hybrid algorithm; Simulated annealing; Tabu search

1. Introduction

CVRP is a generic name given to a whole class of prob-lems in which a set of routes for a fleet of vehicles based atone or several depots must be determined for a number ofgeographically dispersed customers, and vehicles have themaximal loading capacity. The objective of CVRP is tominimize the total cost (i.e., a weighted function of thenumber of vehicles and the travel distance of vehicles) toserve a set of customers with known demands. The routemust be designed in such a way that each customer is vis-ited once and by only one vehicle. CVRP is a well knowncombination problem which falls into the category ofNP-Hard problem, since it concludes the bin packing prob-lem and the traveling salesperson problem as a special case(Laporte & Semet, 2001; Prins, 2004).

0957-4174/$ - see front matter � 2007 Published by Elsevier Ltd.

doi:10.1016/j.eswa.2007.11.060

* Corresponding author. Tel./fax: +886 2 26632102.E-mail address: [email protected] (Z.-J. Lee).

CVRP can be solved by mathematical methods or heu-ristic approaches. The use of mathematical methods canobtain the optimal solutions. However, the required com-putational complexity will result in exponential time whenthe problem size is large (Lee, Lee, & Su, 2002; Lee, Su, &Lee, 2003). Heuristic approaches can be divided into theclassical heuristic approaches and the meta-heuristicapproaches. The classical heuristic approaches can findone feasible solution quickly, but this feasible solutionmay have a large disparity compared with the best solution.The meta-heuristic approaches can obtain near optimalsolutions or even global optimal solutions. Therefore,meta-heuristic approaches such as simulated annealing(SA) and tabu search (TS) are usually employed to findthe optimal solutions. Recently, many researchers havefound that the employment of local search in optimizationproblems can improve the quality of problem solving (Lee& Lee, 2005; Lee et al., 2002; Lee et al., 2003; Xu & Kelly,1996). A local search approach starts with an initial solu-tion and searches within neighborhoods for better solu-

1506 S.-W. Lin et al. / Expert Systems with Applications 36 (2009) 1505–1512

tions. However, it may be trapped in local optima whichare significant factor affecting the quality of solutions. Inthis paper, the local search of swap method and insertmethod are embedded in the propose algorithm to amelio-rate the search performance. From simulation results, theproposed algorithm can improve the quality of solutionfor CVRP.

The remainder of this paper is organized as follows. Sec-tion 2 describes the problem definition of CVRP and themethods used to solve CVRP. Section 3 elaborates the pro-posed algorithm. In Section 4, simulation results aredescribed and compared to other existing algorithms inthe literature. Finally, conclusions are included in the lastsection.

2. Problem definition and literature review

The basics of capacitated vehicle routing problem(CVRP) can be stated as follows. Each vehicle has the sameloading capacity, and starts off from only one deliverydepot and then routes through customers. All customershave known demands and required service time. Each cus-tomer can only be visited by one vehicle, and each vehiclehas to return to the depot. The service time unit can betransformed into the distance unit. The loading and travel-ing distance of each vehicle cannot exceed the loadingcapacity and the maximum traveling distance of vehicle.The objective of CVRP is to minimize the traveling cost.The capacitated vehicle routing problem can be modeledas a mixed integer programming as follows:

MinimizeXN

i¼0

XN

j¼0

XK

K¼1

CijX kij ð1Þ

Subject toXN

i¼0

XN

j¼0

X kijdi 6 Qk 1 6 k 6 K; ð2Þ

XN

i¼0

XN

j¼0

X kijðCij þ SiÞ 6 T k 1 6 k 6 K; ð3Þ

XN

j¼1

X ijk ¼XN

j¼1

X jik 6 1 for i ¼ 0

and k 2 f1; . . . ; kg; ð4ÞXK

k¼1

XN

j¼1

X ijk 6 K for i ¼ 0; ð5Þ

where Cij is the cost incurred on customer i to customer j, K

the number of vehicles, N the number of customers, the Si

the service time at customer i, Qk the loading capacity ofvehicle k, T k the maximal traveling (route) distance of vehi-cle k, di the demand at customer i, X K

ij 2 0 and 1ði–j; i;j 2 0; 1; . . . ;NÞ.

Eq. (1) is the objective function of the problem. Eq. (2) isthe constraint of loading capacity, where X K

ij ¼ 1 if vehiclek travels from customer i to customer j directly, and 0otherwise. Eq. (3) is the constraint of maximum traveling

distance. Eq. (4) makes sure every route starts and endsat the delivery depot. Eq. (5) specifies that there are maxi-mum K routes going out of the delivery depot.

Because CVRP is a NP-hard problem, many researchersproposed various kinds of methods to solve this problem.Christofides, Mingozzi, and Toth (1981) applied exact pro-cedures, branch and bound and dynamic programming, tosolve the CVRP. Fisher and Jaikumar (1981) used a math-ematical programming approach to solve the CVRPdirectly. The computational time will be exponentiallyincreased when problem size is large. Other researchershad developed the constructive heuristics, using anaccepted solution instead of the optimal solution. Theseapproaches can obtain feasible solutions within a reason-able computing time. Clarke and Wright (1964) first pro-posed the use of savings algorithm to solve vehiclerouting problems. The initial condition is that one vehicleonly serves one customer, and then there are N routes whenthere are N demand points (customers). The saving cost forcombining routes is calculated, and the routes are com-bined in order until there is no more improvement to bemade under the constraint of vehicle loading capacity.

Some work has utilized the improved savings algorithm(Yellow, 1970). Toth and Vigo (2001) adopted savingsalgorithm combined with 3-opt to search for neighbor-hood; and the solution has seen improvement comparedto the result of traditional savings algorithm. Gillett andMiller (1974) used a sweep algorithm to solve vehicle rout-ing problems, but the quality of the solution of the sweepalgorithm is unstable. In a clustered problem, it is not asgood as other approaches. However, in randomized prob-lems, it has better performance than that of the clusteredproblem, which means that the approach is relatively suit-able for randomized problem. Some researchers proposedthe two-step method (Two-step) (Fisher & Jaikumar,1981; Gillett & Johnson, 1976). The first stage of thisapproach is cluster method which divides customers intoseveral clusters. The second stage of this approach is routeconstruction which constructs the route of each vehiclewith the goal to obtain the minimum cost for each route.Some approaches first construct routes and then use thecluster method (Beasley, 1983; Haimovich & Kan, 1985).Insertion heuristic was introduced by Mole and Jameson(1976). They used two parameters k and l to constructroutes, and applied 3-opt exchange to improve the qualityof problem solving (Lin, 1965).

In recent years, meta-heuristic approaches are used tosolve the CVRP (David, Olli, & Wout, 2007). Robuste,Daganzo, and Souleyrette (1990) combined insertion heu-ristic and exchange to search for neighborhood in SA. Alfa,Heragu, and Chen (1991) first designed the route, then usedcluster method to construct initial solution, and finallyused a 3-opt method to perform the neighborhood searchin SA. Osman (1993) adopted the combination of SA andlocal search in which savings algorithm is used to generateinitial solution and then k-interchange is utilized in thelocal search to improve the route. Osman also developed

S.-W. Lin et al. / Expert Systems with Applications 36 (2009) 1505–1512 1507

TS approach combined three methods: 2-opt, assigningcustomers to different routes, and exchanges of customersamong different routes, to search for neighborhood. Gend-reau, Hertz, and Laporte (1994) applied TABUROUTE tosolve VRP. The TABUROUTE used tabu list to move outof local optima and got better solutions. Toth and Vigo(2003) used granular tabu search (GTS) to solve VRP. InGTS, the possibility of becoming the best solution is extre-mely small when the minimum total cost is over a certainrange. Their research included some characteristics ofTABUROUTE, and the computational time of problemsolving was smaller than that of Osman’s TS and TABU-ROUTE. Four problems of classical 14 problems can reachthe best solutions, and the solutions of other problems areclose to the best solutions. Ho and Gendreau (2006)applied the TS combined the path relinking to solve CVRPwith the large scale. The path relinking was used to reservethe better paths and to make the improvement on theworse local path. Zeng, Ong, and Ng (2005) proposed aSA-based approach which applied the single-point andmulti-point insertion method to obtain the neighborhood.Xu and Kelly (1996) proposed a TS heuristic based on anetwork flow model, and defined the neighborhood by ejec-tion chain. Rego and Roucairol (1996) also used ejectionchain based neighborhood with parallel computing for amore extensive exploration of the search spaces.

Taillard’s (1993) algorithm used a 1-interchange mecha-nism without local re-optimization and allowing infeasibil-ities. Rochat and Taillard (1995) used a probabilistictechnique to diversify, intensify and parallelize a localsearch adapted for solving vehicle routing problem. Bakerand Ayechew (2003) employed GA to arrange the routes.They constructed the initial solutions by random, and useda 2-opt method to replace the commonly used mutation.Prins (2004) also used GA with initial value to solve CVRP.Bullnheimer, Hartl, and Strauss (1999) used a nearestneighbor heuristic for VRP in ant systems, and ant colonyoptimization techniques were proposed for VRP (Mazzeo& Loiseau, 2004; Bell & McMullen, 2004). However, mostsolutions obtained are worse than the best solution foundso far.

3. The proposed algorithm

In this paper, the proposed algorithm which takes theadvantages of simulated annealing and tabu search com-bined with local search for solving CVRP. The conceptof simulated annealing is taken from nature introducedby Metropolis, Rosenbluth, Rosenbluth, Teller, and Teller(1953) and popularized by Kirkpatrick, Gelatt, and Vecchi(1983). The essential idea is not to restrict the search algo-rithm to move in solution-space that can decrease theobjective function. Furthermore, it allows moving in solu-tion-space that can increase the objective function. In prin-ciple, it allows the search algorithm to escape from thelocal minima. Tabu search, initially suggested by Glover(1989, 1990) is an iterative improvement approach designed

for getting (near) the global optimum solutions. The idea ofTS can be described briefly as follows. Starting from an ini-tial solution, TS iteratively moves from the current solutionX to its best improved solution Y in the neighborhood ofX. To choose the least worsening solution until a superim-posed stopping criterion has satisfied if none exists. Inorder to avoid cycling to some extent, moves would bringback to a recently visited solution should be forbidden ordeclare tabu for a certain number of iterations. This isaccomplished by keeping the attributes of the forbiddenmoves in a list, called a tabu list. This move can be selectedeven though it is tabu, overriding the tabu restriction if atabu move is better than the best solution obtained so farby this search process. This is called the aspirationcriterion.

The flowchart of the proposed algorithm is shown inFig. 1. The proposed algorithm begins with eight parame-ters, namely I iter; T 0; T F; a; k;N non-improving;MIN T andMAX T where I iter denotes the number of iterations, T 0 rep-resents the initial temperature, T F represents the final tem-perature that stops proposed algorithm if the currenttemperature is lower than T F, a is the coefficient controllingthe cooling schedule, k is the Boltzmann constant,Nnon-improving is the allowable number of reductions in tem-perature where the best objective function value obtainedis not improved, MIN T and MAX T are the minimal andmaximal tenure of tabu move, respectively. Given that asolution to CVRP is made of multiple routes, the path rep-resentation is extend and contains multiple copies of thedepot, with each copy acting as a separator for two routes.Let 0 represent the depot and other integer numbers (1 toN) denoted the visited customers. Supposed there are K

vehicles, which can be obtained by neighborhood algo-rithm. The coding representation is the permutation of 1to N and K zero values. Customer will be visited by the fol-lowing way. The first vehicle sets out beforehand from thedepot and gets back to the depot after visiting customerson that route. Other vehicles leave the depot in order andeach vehicle’s route arrangement takes place at each itera-tion process, until every customer has one vehicle visited.For example, a solution is below coded and it is displayedgraphically as in Fig. 2. (6, 16, 23, 24, 18, 25, 9, 3, 17, 0, 12,10, 11, 14, 19, 8, 7, 0, 4, 13, 15, 20, 5, 21, 22, 1, 2), which canbe decoded as follows. This CVRP solution is made ofthree routes. The first route contains customers 6, 16, 23,24, 18, 25, 9, 3, 17, the second route contains customers12, 10, 11, 14, 19, 8, 7, and the third route contains custom-ers 4, 13, 15, 20, 5, 21, 22, 1, 2.

First, the current temperature T is set to T 0 for the pro-posed algorithm. Next, an initial solution X is generated byneighborhood algorithm. The current best solution X best isset to be equal to X, and the current objective functionvalue F cur is set to be equal to the objective function valueðF X Þ of X. The obtained best objective function valueðF bestÞ is set to be equal to F cur. For each iteration, the nextsolution Y is generated from X either by swap or by inser-tion. The new solution Y cannot belong to tabu move,

Fig. 1. The flowchart of the proposed algorithm.

Fig. 2. A graph representation of CVRP solution (0 denotes the depot).

1508 S.-W. Lin et al. / Expert Systems with Applications 36 (2009) 1505–1512

unless new solution Y is the best solution found so far. T isdecreased after running I iter iterations from the previousdecrease, according to a formula T aT , where0 < a < 1. The tenure of tabu move is re-assigned bychoosing a integral value between MIN T and MAX T ran-domly, when T is decreased once. Let obj(X) denotes thecalculation of the objective function value of X, and Ddenote the difference between obj(X) and obj(Y); that isD ¼ objðY Þ � objðX Þ. The probability of replacing X withY, where X is the current solution and Y is the next solu-tion, given that D > 0, is e�D=kT . This is accomplished bygenerating a random number r 2 ½0; 1� and replacing thesolution X with Y if r < e�D=kT . Meanwhile, if D < 0, theprobability of replacing X with Y is 1. If the solution X isreplaced by Y, the tabu_time matrix is changed accord-ingly. If T is lower than T F, the algorithm is terminated.

S.-W. Lin et al. / Expert Systems with Applications 36 (2009) 1505–1512 1509

If the X best is not improved in N non-improving successive reduc-tions in temperature, the algorithm is also terminated. TheX best records the best solution as the algorithm progresses.Following the termination of proposed algorithm, the(near) global optimal schedule can thus be derived by X best.

In the proposed algorithm, the method of insertion andswap are performed as local search. The insertion is doneby randomly selecting the ith number of X and insertingit into the position immediately preceding the jth numberof X. The swap is done by randomly selecting the ith andjth number of X, and then swapping the values of thesetwo numbers directly. While improving routes, the proba-bilities of choosing the swap and the insertion are 0.45and 0.45. In order to increase the chance of obtaining bet-ter solution, it randomly chooses two points (customers) toundergo exchange or insert at a random place. The proba-bility of orderly exchanging or inserting with nearby bN=5cpoints (b�c denoted the largest integer which is smaller thanor equal to the enclosed number) is 0.05 and 0.05, respec-tively. The best solution is chosen from bN=5c solutionsas the next solution. In order to avoid cycling, the tabu_-time matrix is applied to impose tabu move. Let (i, j) ele-ment of the tabu_time matrix contains the iterationnumber that job i is allowed to return to the jth positionof the scheduling sequence. If the chosen neighborhood

Table 1Comparisons between the proposed algorithm and other approaches for 14 cl

Problem N Best published solution Osman’s SA

C1 50 524.61 528.00C2 75 835.26 838.62C3 100 826.14 829.18C4 150 1028.42 1058.00C5 199 1291.45 1378.00C6 50 555.43 555.43

C7 75 909.68 909.68

C8 100 865.94 866.75C9 150 1162.55 1164.12C10 199 1395.85 1417.85C11 120 1042.11 1176.00C12 100 819.56 826.00C13 120 1541.14 1545.98C14 100 866.37 890.00

GA

C1 50 524.61 524.81C2 75 835.26 849.77C3 100 826.14 839.73C4 150 1028.42 1055.85C5 199 1291.45 1374.73C6 50 555.43 559.04C7 75 909.68 909.94C8 100 865.94 872.82C9 150 1162.55 1188.22C10 199 1395.85 1451.63C11 120 1042.11 1060.24C12 100 819.56 863.73C13 120 1541.14 1560.79C14 100 866.37 872.34

solution Y of current solution X belongs to the tabu move,the solution Y is discarded and new neighborhood solutionis generated until solution Y does not belong to tabu moveor solution Y is the found best solution.

4. Simulation results

The proposed algorithm was coded in C language ona Pentium IV 2.8 GHz machine with 1024 MB RAM.The parameters of proposed algorithm have tremendousinfluence on the efficiency of problem solving. There-fore, through initial experiments, the following parame-ters are used. T 0 ¼ 50; I iter ¼ 500 � N ; a ¼ 0:98; k ¼ 1=5;Nnon-improving ¼ 80;T F ¼ 0:1;MINT ¼ 2 and MAX T ¼ 5, whereN is the number of customer. Each problem is solved 20times and the best solution among 20 runs is taken as theobjective function value obtained (Prins, 2004).

In order to verify the effectiveness of the proposed algo-rithm, this research first included the 14 classical instancesfrom Christofides, Mingozzi, and Toth (1979) as the testproblems. Instances 1, 2, 3, 4, 5, 11, and 12 only have theconstraint of loading capacity. Instances 6, 7, 8, 9, 10, 13,and 14 both have the constraint of loading capacity andmaximum traveling distance, and service time required

assical instances

Osman’s TS TS GTS0 HG

524.61 524.61 524.61 524.61

844.00 835.77 838.60 836.37835.00 829.45 828.56 828.26

1044.35 1036.16 1033.21 1034.081334.55 1322.65 1318.25 1311.78

555.43 555.43 555.43 555.43

911.00 913.23 920.72 909.68

866.75 865.94 869.48 866.711184.00 1177.76 1173.12 1177.011417.85 1418.51 1435.74 1420.661042.11 1073.47 1042.87 1042.97

819.59 819.56 819.56 819.56

1547.00 1573.81 1545.51 1568.79866.37 866.37 866.37 866.37

AS EA The proposed algorithm

Time (s)524.61 524.61 524.61 38.14844.31 835.26 835.26 118.27832.32 826.14 826.14 293.25

1061.55 1030.46 1038.71 701.381343.46 1296.39 1311.70 1844.34

560.24 555.43 555.43 31.36916.21 909.68 909.68 96.84866.74 865.94 865.94 234.47

1195.99 1162.55 1162.89 738.441451.65 1402.75 1410.96 1538.331065.21 1042.11 1045.50 332.77

819.56 819.56 819.56 316.021559.92 1542.86 1554.93 392.39

867.07 866.37 866.37 216.56

Table 2Comparisons between the proposed algorithm and other approaches for large-scale instances

Problem N GWKC GTS EOS HG EA The proposed algorithm

Time(s)

Kelly01 240 5834.60 5736.15 5741.79 5850.28 5646.63 5795.61 1399.63Kelly02 320 9002.26 8553.03 8917.41 8799.33 8447.92 8501.67 3498.61Kelly03 400 11879.95 11402.75 12106.41 11715.90 11036.22 11364.69 5782.01Kelly04 480 14639.32 14910.62 15316.64 13973.50 13624.52 14136.32 10171.38Kelly05 200 6702.73 6697.53 6570.28 6546.19 6460.98 6512.27 1149.05Kelly06 280 9016.93 8963.32 8836.25 8755.48 8412.80 8553.19 2247.75Kelly07 360 11213.31 10547.44 11116.68 10716.80 10195.59 10422.65 5655.92Kelly08 440 12514.20 12036.24 12634.17 12170.90 11828.78 11986.73 7708.77Kelly09 255 587.09 593.35 587.89 589.39 591.54 586.68 3444.64Kelly10 323 749.09 751.66 749.85 749.04 751.41 748.89 6336.48Kelly11 399 934.33 936.04 932.74 927.99 933.04 924.70 11288.73Kelly12 483 1137.18 1147.14 1134.63 1124.44 1133.79 1125.71 15989.65Kelly13 252 881.04 868.80 870.90 875.13 875.16 867.29 3108.03Kelly14 320 1103.69 1096.18 1097.11 1105.49 1086.24 1098.86 6062.3Kelly15 396 1364.23 1369.44 1367.15 1369.70 1367.37 1356.65 11242.63Kelly16 480 1657.93 1652.32 1643.0 1648.10 1650.94 1642.90 14813.88Kelly17 240 720.44 711.07 716.46 713.68 710.42 712.26 2860.8Kelly18 300 1029.21 1016.83 1023.32 1017.65 1014.8 1017.91 5566.23Kelly19 360 1403.05 1400.96 1404.84 1397.16 1376.49 1384.93 9499.45Kelly20 420 1875.17 1915.83 1883.33 1864.01 1846.55 1855.91 14947.05

1510 S.-W. Lin et al. / Expert Systems with Applications 36 (2009) 1505–1512

for each customer is added when visiting customers. Ininstances 1–10, customers are randomly distributedwhereas customers are clustered in instance 11–14. Thesimulation results are shown in Table 1. In Table 1, theproposed algorithm exhibited eight instances which reachthe level of the best solution found in the literature. Thedetailed routes of eight instances are shown in Appendix.In Table 1, Osman’s SA (1993) had two instance, Taburo-ute had five instances, Osman’s TS (1993) had fourinstances, and GTS had four instances (Toth & Vigo,2003), GA had no instance (Baker & Ayechew, 2003), AShad two instances (Bullnheimer et al., 1999), and EA hadten instances with best solutions (Prins, 2004). The CPUtime of the proposed algorithm is also tabulated in Table1. It shows that the proposed algorithm performs betterperformance than other approaches except EA (Prins,2004). For large-scale instances, the simulation results arelisted in Table 2. In Table 2, it shows that the proposedalgorithm obtains the best solutions for Kelly 09� Kelly13, Kelly 15, and Kelly 16 among all comparedapproaches. The CPU time of the proposed algorithm frolarge-scale instances is also tabulated in Table 2. Becausethe customers of large-scale instances are larger than thoseof classical instances, the CPU time is also larger thanthose of classical instances. For both classical and large-scale instances, it shows that the proposed algorithm iscompetitive with other approaches for CVRP.

5. Conclusions

This study proposed a hybrid algorithm which takesthe advantages of simulated annealing and tabu searchapplied for solving CVRP. Fourteen small-sized and

twenty large-sized benchmark instances are used to verifythe proposed algorithm. Compared to other previousapproaches, in the small-sized benchmark problems, theproposed algorithm finds eight solutions which are equalto the best solution found so far in literature. For thelarge-scale benchmark instances, the proposed algorithmfinds seven better solutions than other comparedapproaches. It shows that the proposed algorithm canbe applied to vehicle routing problems of various typeswith loading capacity constraints. Hopefully, the pro-posed algorithm can be used to solve the vehicle routingproblems with different limitation conditions in the future,such as vehicle routing problems with backhauls and mul-tiple depot vehicle routing problem.

Appendix A

The obtained eight solutions equal to the best solutionfound in the literature are presented.

C1

1 38-9-30-34-50-16-21-29-2-11 2 47-4-17-42-19-40-41-13-18 3 8-26-31-28-3-36-35-20-22-1-32 4 12-37-44-15-45-33-39-10-49-5-46 5 6-14-25-24-43-7-23-48-27

C2

1 30-74-21-61-28-2-68 2 26-12-39-9-40-17 3 3-44-32-50-18-55-25-31-72 4 67-46-34-4-75 5 62-22-64-42-41-43-1-73-51 6 27-37-20-70-60-71-69-36-47-48 7 6-33-63-23-56-24-49-16 8 8-35-14-59-11-7 9 45-29-5-15-57-13-54-19-52 10 58-10-38-65-66-53

S.-W. Lin et al. / Expert Systems with Applications 36 (2009) 1505–1512 1511

C3 1 52-7-82-48-19-11-64-49-36-47-46-8-83-18

2 76-77-3-79-78-34-35-65-71-9-51-81-33-50 3 40-73-74-22-41-23-67-39-56-75-72-21 4 94-95-97-87-13 5 28-12-80-68-29-24-54-55-25-4-26-53 6 31-88-62-10-63-90-32-66-20-30-70-1-69-27 7 92-98-37-100-91-16-86-38-44-14-42-43-15-

57-2-58

8 6-96-99-59-93-85-61-17-45-84-5-60-89

C6

1 6-23-24-43-7-26-8-48-27 2 17-42-19-40-41-13-25-14 3 5-49-10-39-33-45-15-44-37-12 4 1-22-31-28-3-36-35-20-2 5 38-9-30-34-50-21-29-16-11-32 6 18-4-47-46

C7

1 32-50-18-55-25-9 2 12-72-39-31-10-58-26 3 69-71-60-70-20-4 4 51-63-23-56-41-43-33 5 62-22-64-42-1-73-6 6 30-74-21-61-28-2-68 7 27-15-57-13-54-52-34-67 8 7-35-14-59-19-8-46 9 38-65-66-11-53 10 75-48-47-36-37-5-29-45 11 16-49-24-3-44-40-17

C8

1 26-4-56-23-67-39-25-55-54 2 58-2-57-15-41-22-75-74-72-73-21-40-53 3 89-60-83-8-46-45-17-84-5-6 4 99-61-16-86-38-44-14-43-42-87-13 5 96-59-93-85-91-100-37-98-92-97-95-94 6 28-76-77-3-79-78-34-29-24-68-80-12 7 52-7-19-11-64-49-36-47-48-82-18 8 1-51-20-66-65-71-35-9-81-33-50 9 27-69-70-30-32-90-63-10-62-88-31

C12

1 69-68-64-61-72-80-79-77-73-70-71-76-78-81 2 10-12-14-16-15-19-18-17-13 3 91-89-88-85-84-82-83-86-87-90 4 67-65-63-74-62-66 5 98-96-95-94-92-93-97-100-99 6 57-55-54-53-56-58-60-59 7 32-33-31-35-37-38-39-36-34 8 75-1-2-4-6-9-11-8-7-3-5 9 21-22-23-26-28-30-29-27-25-24-20 10 43-42-41-40-44-46-45-48-51-50-52-49-47

C14

1 75-2-4-6-9-11-8-7-3-5 2 13-17-18-19-15-16-14-12-10 3 55-54-53-56-58-60-59-57 4 43-42-44-40-41 5 47-46-45-48-51-50-52-49-20 6 98-96-95-94-92-93-97-100-99-1 7 34-36-39-38-37-35-31-33-32 8 91-89-88-85-84-82-83-86-87-90 9 81-78-76-71-70-73-77-79-80-63 10 67-65-62-74-72-61-64-68-66-69 11 23-26-28-30-29-27-25-24-22-21

References

Alfa, A. S., Heragu, S. S., & Chen, M. (1991). A 3-opt based simulatedannealing algorithm for vehicle routing problem. Computers &

Industrial Engineering, 21, 635–639.

Baker, B. M., & Ayechew, M. A. (2003). A genetic algorithm for thevehicle routing problem. Computers & Operations Research, 30,787–800.

Beasley, J. E. (1983). Route first-cluster second methods for vehiclerouting. Omega, 11, 403–408.

Bell, J. E., & McMullen, P. R. (2004). Ant colony optimizationtechniques for the vehicle routing. Advanced Engineering Informatics,

18, 41–48.Bullnheimer, B., Hartl, R. F., & Strauss, C. (1999). An improved ant

system algorithm for the vehicle routing problem. Annals of Operations

Research, 89, 319–328.Christofides, N., Mingozzi, A., & Toth, P. (1979). The vehicle routing

problem. In N. Christofides, A. Mingozzi, P. Toth, & C. Sandi (Eds.),Combinatorial Optimization (pp. 325–338). Chichester: Wiley.

Christofides, N., Mingozzi, A., & Toth, P. (1981). Exact algorithm for thevehicle routing problem, based on spanning tree and shortest pathrelaxations. Mathematical Programming, 20, 255–282.

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

David, M., Olli, B., & Wout, D. (2007). A multi-parametric evolutionstrategies algorithm for vehicle routing problems. Expert Systems with

Applications, 32, 508–517.Fisher, M. L., & Jaikumar, R. (1981). A generalized assignment heuristic

for vehicle routing. Networks, 11, 109–124.Gendreau, M. P., Hertz, A., & Laporte, G. (1994). A tabu search heuristic

for the vehicle routing problem. Management Science, 40, 1276–1290.Gillett, B., & Johnson, J. (1976). Multi-terminal vehicle-dispatch algo-

rithm. Omega, 4, 711–718.Gillett, B. E., & Miller, L. R. (1974). A heuristic algorithm for the vehicle

dispatch problem. Operations Research, 22, 340–349.Glover, F. (1989). Tabu search-Part I. ORSA Journal on Computing, 1,

190–206.Glover, F. (1990). Tabu search-Part II. ORSA Journal on Computing, 2,

4–32.Haimovich, M., & Kan, A. H. G. R. (1985). Bounds and heuristics for

capacitated routing problems. Mathematics of Operations Research, 10,527–542.

Ho, S. C., & Gendreau, M. (2006). Path relinking for the vehicle routingproblem. Journal of Heuristics, 12, 55–72.

Kirkpatrick, S., Gelatt, C. D., & Vecchi, J. M. P. (1983). Optimization bysimulated annealing. Science, 220, 671–680.

Laporte, G. & Semet, F. (2001). The vehicle routing problem. In P. Toth,D. Vigo (Eds.), SIAM monographs on discrete mathematics and

application (pp. 109–125). Philadelphia.Lee, Z.-J., & Lee, C.-Y. (2005). A hybrid search algorithm with heuristics

for resource allocation problem. Information Sciences, 173, 155–167.Lee, Z.-J., Lee, C.-Y., & Su, S.-F. (2002). An immunity based ant colony

optimization algorithm for solving weapon-target assignment problem.Applied Soft Computing, 2, 39–47.

Lee, Z.-J., Su, S.-F., & Lee, C.-Y. (2003). Efficiently solving generalweapon-target assignment problem by genetic algorithms with greedyeugenics. IEEE Transactions on Systems, Man and Cybernetics, Part B,

33, 113–121.Lin, S. (1965). Computer solutions of the traveling salesman problem. Bell

System Technical Journal, 44, 2245–2269.Mazzeo, S., & Loiseau, I. (2004). An ant colony algorithm for the

capacitated vehicle routing. Electronic Notes in Discrete Mathematics,

18, 181–186.Metropolis, N., Rosenbluth, A. W., Rosenbluth, M. N., Teller, A. H., &

Teller, E. (1953). Equations of state calculations by fast computingmachines. Journal of Chemical Physics, 21, 1087–1092.

Mole, R. H., & Jameson, S. R. (1976). A sequential route-buildingalgorithm employing a generalised savings criterion. Operation

Research Quarterly, 27, 503–511.Osman, I. H. (1993). Metastrategy simulated annealing and tabu search

algorithms for the vehicle routing problem. Annals of Operations

Research, 41, 421–451.

1512 S.-W. Lin et al. / Expert Systems with Applications 36 (2009) 1505–1512

Prins, C. (2004). A simple and effective evolutionary algorithm for thevehicle routing problem. Computer & Operation Research, 31,1985–2002.

Rego, C., & Roucairol, C. (1996). A parallel tabu search algorithm usingejection chains for the vehicle routing problem. In I. H. Osman & J. P.Kelly (Eds.), Meta-Heuristics: Theory and Applications (pp. 661–675).Boston: Kluwer, MA.

Robuste, F., Daganzo, C. F., & Souleyrette, I. I. R. (1990). Implementingvehicle routing models. Transportation Research, 24B, 263–286.

Rochat, Y., & Taillard, E. D. (1995). Probabilistic diversification andintensification in local search for vehicle routing. Journal of Heuristics,

1, 147–167.

Taillard, E. D. (1993). Parallel iterative search methods for vehicle routingproblem. Networks, 23, 661–673.

Toth, P., & Vigo, D. (2003). The granular tabu search and its applicationto the vehicle-routing problem. INFORMS Journal on Computing, 15,333–346.

Xu, J., & Kelly, J. P. (1996). A network flow-based tabu search heuristicfor the vehicle routing problem. Transportation Science, 30, 379–393.

Yellow, P. C. (1970). A computational modification to the savings methodof vehicle scheduling. Operational Research Quarterly, 21, 281–283.

Zeng, L., Ong, H. L., & Ng, K. M. (2005). An assignment-based localsearch method for solving vehicle routing problems. Asia-Pacific

Journal of Operational Research, 22, 85–104.