Literature DB >> 27547672

Modified artificial bee colony for the vehicle routing problems with time windows.

Malek Alzaqebah1, Salwani Abdullah2, Sana Jawarneh2.   

Abstract

The natural behaviour of the honeybee has attracted the attention of researchers in recent years and several algorithms have been developed that mimic swarm behaviour to solve optimisation problems. This paper introduces an artificial bee colony (ABC) algorithm for the vehicle routing problem with time windows (VRPTW). A Modified ABC algorithm is proposed to improve the solution quality of the original ABC. The high exploration ability of the ABC slows-down its convergence speed, which may due to the mechanism used by scout bees in replacing abandoned (unimproved) solutions with new ones. In the Modified ABC a list of abandoned solutions is used by the scout bees to memorise the abandoned solutions, then the scout bees select a solution from the list based on roulette wheel selection and replace by a new solution with random routs selected from the best solution. The performance of the Modified ABC is evaluated on Solomon benchmark datasets and compared with the original ABC. The computational results demonstrate that the Modified ABC outperforms the original ABC also produce good solutions when compared with the best-known results in the literature. Computational investigations show that the proposed algorithm is a good and promising approach for the VRPTW.

Entities:  

Keywords:  Artificial bee colony; Foraging behaviour; Vehicle routing problem with time windows

Year:  2016        PMID: 27547672      PMCID: PMC4978696          DOI: 10.1186/s40064-016-2940-8

Source DB:  PubMed          Journal:  Springerplus        ISSN: 2193-1801


Background

Many real transportation logistics and distribution problems can be expressed as a vehicle routing problem, where the objective is to plan a route with minimum cost while serving a set of customers with known demands. Each customer is allocated to only one route and the total demand of any route must not exceed the vehicle capacity. The vehicle routing problem with time windows (VRPTW) is a well-known optimisation problem and it has received a lot of consideration in the literature. The VRPTW involves determining a set of routes starting and ending at a depot, wherein the demand of a set of geographically scattered customers is satisfied. Each route is traversed by a vehicle with a permanent and limited capacity, and each customer needs to be visited only once. The total demand (load) delivered in each route should not exceed the vehicle’s capacity. Time windows are imposed for the customer destinations, meaning that the vehicle is only permitted to arrive at/depart from a customer destination within a specific time window. The solution to the VRPTW consists of the set of routes that has the least total travelled distance (Desrochers et al. 1988a, b). Surveys papers in VRPTW can be founded in Kumar and Panneerselvam (2012), Bräysy and Gendreau (2005a, b), Ioannou et al. (2001), Toth and Vigo (2001), Toth and Vigo (2014) and Solomon and Desrosiers (1988). Observations on the swarm behaviour of natural self-organised systems has attracted researchers’ attention in recent years and inspired the development of algorithms for solving real-life problems; these algorithms are known as swarm intelligence. Examples of swarm intelligence that have been applied to the VRPTW are bee colony optimisation (Jawarneh and Abdullah 2015), ant colony optimisation (Gambardella et al. 1999; Yu et al. 2009) and particle swarm optimisation (Amini et al. 2010). A swarm intelligence algorithm simulates the behaviour of the self-organised system. In particular, the behaviour of real honeybees has motivated researchers to develop metaheuristics that model such behaviour in order to find better solutions for optimisation problems. Honeybee algorithms are classified into three different types based on behaviour (Baykasoglu et al. 2007): foraging, marriage and queen bee. The algorithms that are based on the foraging behaviour of honeybees to solve optimisation problems are the artificial bee colony (ABC), bee algorithm (BA) and bee colony optimisation (BCO). The bees in these three algorithms have different behaviour models. In this paper, the focus is on the ABC algorithm. The ABC algorithm was proposed Karaboga (2005) for solving numerical optimisation problems. A further updated version of the ABC algorithm was later proposed by Karaboga and Basturk (2008) for solving constraint optimisation problems, Szeto et al. (2011) introduced an artificial bee colony heuristic for solving the capacitated vehicle routing problem (CVRP) and they show that the enhanced ABC algorithm outperforms the original one, and can produce good solutions when compared with other heuristics. The ABC algorithm works based on local communication between three groups of bees (scouts, employed and onlookers) and between each other about their environment, which contributes to the collective intelligence of the bee colony (Karaboga 2005). In this paper, a new approach is proposed to improve the convergence speed of the ABC algorithm by introducing a method of finding abandoned solutions and replacing them with new solution that has a random routs selected from the best solution found so far. Experimental results show that the proposed Modified ABC algorithm improves the results. Overall comparison indicates that our Modified ABC algorithm is able to obtain the best results in comparison to state-of-the-art approaches, as represented by reducing the distance travelled, which is the main objective of the VRPTW. This paper starts with representation of the VRPTW and its formulation. Next, introduction of the ABC algorithm and the modified ABC algorithm are presented. At last, the experimental results are presented and analysed.

Vehicle routing problems with time windows (VRPTW)

The VRPTW consists of a set of identical vehicles, a depot node, a limited number of distributed customers, and a net connecting all the customers to the depot. Solomon (1987) proposes the formulation of the VRPTW, Solomon’s benchmark has 56 instances with 100 customers must be served by a predefined number of vehicles. Each arc in the network shows a connection between two nodes and identifies the direction of travel. Every vehicle starts from the depot, arrives at some customer destinations, and then returns to the depot. Every vehicle illustrates one route in the network. In Solomon’s benchmark, the cost c and the travel time t are linked with every arc in the network; the vehicle spends one unit of time to travel one unit of distance (Euclidean distance). Every vehicle has the same capacity and each customer must be visited one time only by one of the vehicles and has an identified demand, and the total capacity of all the demands must be equal or less than the maximum capacity of the vehicle on the route being travelled, and no vehicles should be overloaded. The time window constraints are indicated by a predefined time interval, i.e., the earliest arrival time and latest arrival time, where the vehicle must arrive at the customer before the latest arrival time and if it arrives before the earliest arrival time, the vehicle must wait. The service time for each customer for the time taken to load/unload is also measured, which is considered to be unique regardless of the demands’ size. Vehicles are considered to visit their route within route time, which is named as the time window. The main function in the problem is illustrated in Eq. 1:where . N number of customers (0 denotes the central depot) K number of vehicles ccost incurred on arc from customer i to customer j. The following constraints represent the time windows without violating any time window constraints, where for each vehicle, the earliest possible time of returning to the depot cannot exceed the latest possible return time.

Artificial bee colony algorithm (ABC)

The ABC algorithm simulates the foraging behaviour of real honeybees. Several researchers have studied its application to optimisation problems in recent years. A survey paper on algorithms based on honeybee behaviour (ABC, bee colony algorithm, bee swarm optimisation, bees algorithm, and honeybee mating optimisation) by Karaboga et al. (2014) reported that 54 % of recent publications are related to the ABC algorithm. In the ABC algorithm, there are three groups of agents (employed bees, onlooker bees and scout bees) that work collaboratively in solving problems. The groups of agents communicate and cooperate to find a food source (solution) with good-quality nectar (cost or fitness value for a problem). Each group of agents is responsible for one process. The scout bees are responsible for finding the positions of new food sources. At the beginning of the search, the food source positions are determined randomly. The employed bees are responsible for exploring the search space and visit the neighbourhood of the food source positions collecting all the information about the visited positions (including the distance, direction and profitability) in order to share this information with the onlooker bees. The onlooker bees are responsible for selecting promising food sources based on the information given by the employed bees. In the ABC algorithm, a food source represents a possible solution, and the amount of nectar in the food source corresponds to the quality (the cost or the fitness value) of the solution. The number of employed bees is equal to the number of solutions in the population. As shown in Fig. 1, the ABC algorithm starts by initialising the population with respect to the number of employed bees. Employed bees explore new solutions based on their memories and old solutions are replaced by new explored solutions only if the new solutions have an equal or better fitness value.
Fig. 1

Pseudo code for ABC algorithm

Pseudo code for ABC algorithm Communication between the employed and onlooker bees happens when the employed bees present promising solutions to the onlooker bees in the hive. Cooperation happens when the onlooker bees explore the solutions presented by the employed bees. If the solution cannot be improved in a predefined number of iterations (defined as a parameter called limit), the employed bee becomes a scout bee in order to explore a new solution. At this point, the newly discovered solution is memorised and the old solution is abandoned. The ABC algorithm has exploration and exploitation capabilities, where scout bees are able to globally explore the search space and employed and onlooker bees are able to locally explore the search space.

Modified ABC algorithm

The basic ABC algorithm described above still lacks the ability to execute strong exploration throughout the scout bee phase. The main weakness of the basic ABC algorithm is that scout bees promote high exploration capability because a new solution is created randomly when the old solution cannot be improved. Randomly created solutions may affect the search process to search the area blindly making it difficult to find the promising areas. This causes the search to slow the convergence speed (Weng and Bin Asmuni 2013). Therefore, in this paper we propose an improved version of the ABC algorithm, where a list of abandoned solutions is defined (abnd_lst: extendable abandoned list) so that the scout bees can memorise the solutions that exceed the maximum number of trials (limit). The scout bees select a solution from the abandoned list based on a roulette wheel selection. Then each scout bee creates a new solution by selecting a random route from the best solution found so far, and replace it with a random route in the new generated solution (Fig. 2, line 39), while keeping the solution feasible (Fig. 2, line 40), and all the neighbourhood structures are performed on each new created solution in order to slightly improve the new generated solutions. The pseudo code for the Modified ABC algorithm is presented in Fig. 2.
Fig. 2

Pseudo code for Modified ABC algorithm

Pseudo code for Modified ABC algorithm

Neighbourhood structures

To explain the neighbourhood structures, let’s consider that a, b, c and d are customers in the same route visited in sequence {a → b → c → d}. The neighbourhood structures presented as follows: One shift in the same route, where b is moved to a position after all the other customers’ positions; the new sequence is {a → c → d → b} Two shifts in the same route, where both a and b are moved to a position after c and d; the new sequence is {c → d → a → b} One swap in the same route, where a and c are exchanged; the new sequence is {c → b → a → d} Two swaps in the same route, where a and b are exchanged with c and d, the new sequence is {c → d → a → b}

Solomon’s benchmark for VRPTW

Solomon in 1987 proposes 6 datasets for the VRPTW, which have been used by a number of heuristics. In this paper, these benchmark datasets are used to test the performance of the Modified ABC algorithm. The instances vary in terms of the number of vehicles used to serve the customers, travelling time of the vehicles, vehicle capacity, customer locations and service time (for unloading/loading). In other words, each customer has their own time window, demand (amount of properties), location, earliest arrival time and latest arrival time, and service time. All instances in the benchmark datasets have 100 customers; the travelling time among customers is equivalent to the same Euclidean distance. The 56 instances are splitted into six groups based on the arrangement of the customers’ locations and time windows. These groups are C1, C2, R1, R2, RC1, and RC2. In group C the customers are clustered, while in group R the customers are distributed remotely. Group RC mixes the customers distribution in the instances R and C.

Results

The experiment results are based on 31 independent runs. Our proposed algorithms were implemented in Java programming language on Intel® Core™ i3 processors. The execution times were between 20 and 700 s based on the size of the tested dataset. Table 1 shows the final parameter settings, which were experimentally chosen from a total of 10 runs to obtain the average results.
Table 1

Final parameter settings

ParameterValue
# of iterations1000
Population size = # of onlooker bees = # of employed bees50
# of scout bees4
Limit100
Final parameter settings Table 2 shows the comparison of the results of the ABC and Modified ABC algorithms for VRPTW.
Table 2

Comparison of ABC and Modified ABC

NoInstanceABCModified ABC p value
N.VDistanceN.VDistance
BestAvgBestAvg
0R1-01201647.991660.87201643.181647.910.1450
1R1-02181498.671505.03181480.731490.660.0917
2R1-03151280.511287.58141240.871258.50 0.0188
3R1-04121085.331100.40121047.061070.270.0648
4R1-05161404.431419.40161369.521382.35 0.0228
5R1-06141320.961325.17131271.131285.81 0.0038
6R1-07131162.021176.49121129.991142.230.1057
7R1-08121067.731073.98111004.111026.11 0.0070
8R1-09141248.791258.29131170.501211.120.0850
9R1-10131191.851197.11121123.361145.30 0.0027
10R1-11131158.561168.90121101.591129.55 0.0384
11R1-12121075.841087.28111019.841026.25 0.0111
12R2-01101222.491232.4981185.571192.87 0.0264
13R2-0291148.331162.3871103.151114.87 0.0085
14R2-0371025.261033.586958.94984.34 0.0319
15R2-045894.45908.584818.44836.49 0.0020
16R2-0571066.511077.5061020.531032.79 0.0099
17R2-0661009.901016.535960.29976.45 0.0353
18R2-076945.16968.245905.70930.460.0592
19R2-084869.56878.964764.90789.02 0.0015
20R2-096972.40990.246943.16952.73 0.0478
21R2-1071039.741048.7561003.911015.11 0.0238
22R2-115914.13916.705837.66855.79 0.0035
23C1-0110828.94903.6310828.94828.940.1835
24C1-0211917.39958.2710828.94828.940.1835
25C1-0310867.44886.6310828.94840.660.0750
26C1-0410923.46948.3610858.90889.10 0.0213
27C1-0511868.14915.0310828.94828.940.1835
28C1-0610830.46910.9110828.94828.940.1835
29C1-0711862.82923.8610828.94828.940.1835
30C1-0810839.94840.3910828.94830.85 0.0003
31C1-0910855.37862.0710828.94836.47 0.0398
32C2-013591.56591.563591.56591.560.1835
33C2-023591.56623.183591.56601.780.1835
34C2-034670.82686.863600.54616.39 0.0094
35C2-044761.83779.503610.01648.57 0.0028
36C2-053589.72606.483588.88596.10 0.0004
37C2-063600621.783588.88601.49 0.0000
38C2-073610.64638.273589.58601.600.1038
39C2-083625.96648.243591.65613.47 0.0476
40RC1-01171701.491707.32161634.521668.070.0854
41RC1-02151538.021554.90151492.891505.94 0.0147
42RC1-03131406.801410.79131334.571360.15 0.0137
43RC1-04121295.991300.80111215.621245.35 0.0281
44RC1-05171641.951650.60151546.431575.46 0.0048
45RC1-06141487.541499.55141423.101443.77 0.0108
46RC1-07131353.651369.73121300.001324.000.0660
47RC1-08121300.081304.05121193.681213.67 0.0147
48RC2-0191374.511376.7881308.761320.24 0.0079
49RC2-0291238.701246.7481167.001180.48 0.0041
50RC2-0361096.831096.8561014.791032.77 0.0052
51RC2-045940.85956.024881.88894.76 0.0319
52RC2-0591270.791289.0771210.681232.84 0.0413
53RC2-0681184.851199.9361112.381133.99 0.0214
54RC2-0771126.121137.3071059.621076.47 0.0041
55RC2-085937.11958.455882.06898.450.0884

NV number of vehicles

Comparison of ABC and Modified ABC NV number of vehicles To compare the performance of the algorithms a single objective is used, the distance is considered as the main objective. The comparison in Table 2 shows that the Modified ABC algorithm outperforms the ABC algorithm in all the tested datasets; the new method for scout bees further enhances the quality of the solutions. A statistical test is executed to examine if there is any significant difference between the ABC and the Modified ABC algorithms with the significance interval 95 % (α = 0.05). The p value shows that there are significant differences in 38 datasets, which means that 67 % of the results are significant. Note that the italic font means that the p-value is less than 0.05. Table 3 shows the comparison results between the Modified ABC algorithm and the best-known results in the literature. Note that the best results (distances) are presented in bold and the last column shows the deference percentage between the Modified ABC and the best known results, where the minus sign indicate that the modified ABC obtain better results.
Table 3

Comparison between the best-known results and Modified ABC

NoInstanceBest-known resultSourceModified ABCPercentage difference between Modified ABC with the best known solutions (%)
N.VDistanceN.VDistance
0R1-0118 1607.70 Desrochers et al. (1992)201643.182.21
1R1-0217 1434.00 Desrochers et al. (1992)181480.733.26
2R1-0313 1175.67 Lau et al. (2001)141240.875.55
3R1-0410 982.01 Rochat and Tailard (1995)121047.066.62
4R1-0515 1346.12 Kallehauge et al. (2001)161369.521.74
5R1-0613 1234.6 Cook and Rich (1999)131271.132.96
6R1-0711 1051.84 Kallehauge et al. (2001)121129.997.43
7R1-089 960.88 Berger and Barkaoui (2004)111004.114.50
8R1-0912 1013.2 Chiang and Russel (1997)131170.515.53
9R1-1012 1068.00 Cook and Rich (1999)121123.365.18
10R1-1112 1048.70 Cook and Rich (1999)121101.595.04
11R1-1210 953.63 Rochat and Tailard (1995)111019.846.94
12R2-0141252.37Homberger and Gehring (1999)8 1185.57 −5.33
13R2-0231158.98Lau et al. (2003)7 1103.15 −4.82
14R2-033 939.50 Woch and Lebkowski (2009)6958.942.07
15R2-042825.52Bent and Van Hentenryck (2004)4 818.44 −0.86
16R2-053994.42Rousseau et al. (2002)61020.532.63
17R2-063 833.00 Thangiah et al. (1994)5960.2915.28
18R2-073 814.78 Rochat and Tailard (1995)5905.711.16
19R2-082 726.75 Mester et al. (2007)4764.95.25
20R2-093 855.00 Thangiah et al. (1994)6943.1610.31
21R2-103 939.34 Mester et al. (2007)61003.916.87
22R2-112877.55Yu et al. (2009)5 837.66 −4.55
23C1-0110 827.30 Desrochers et al. (1992)10828.940.20
24C1-0210 827.30 Desrochers et al. (1992)10828.940.20
25C1-0310 826.30 Tavares et al. (2003)10828.940.32
26C1-0410 822.90 Tavares et al. (2003)10858.94.37
27C1-0510 827.30 Tavares et al. (2003)10828.940.20
28C1-0610 827.30 Desrochers et al. (1992)10828.940.20
29C1-0710 827.30 Tavares et al. (2003)10828.940.20
30C1-0810 827.30 Tavares et al. (2003)10828.940.20
31C1-0910 827.30 Tavares et al. (2003)10828.940.20
32C2-013 589.10 Cook and Rich (1999)3591.560.42
33C2-023 589.10 Cook and Rich (1999)3591.560.42
34C2-033 591.17 Li and Lim (2002)3600.541.58
35C2-043 590.60 Potvin and Bengio (1996)3610.013.29
36C2-053 588.88 De Backer et al. (2000)3 588.88 0.00
37C2-063 588.49 Lau et al. (2003)3588.880.07
38C2-073 588.29 Rochat and Tailard (1995)3589.580.22
39C2-083 588.32 Rochat and Tailard (1995)3591.650.57
40RC1-0115 1619.8 Kohl et al. (1999)161634.520.91
41RC1-02131530.86Cordone and Calvo (2001)15 1492.89 −2.48
42RC1-0311 1261.67 Shaw (1998)131334.575.78
43RC1-0410 1135.48 Cordeau et al. (2001)111215.627.06
44RC1-05131589.91Tan et al. (2006)15 1546.43 −2.73
45RC1-0612 1371.69 Tan et al. (2006)141423.13.75
46RC1-0711 1222.16 Tan et al. (2006)1213006.37
47RC1-0810 1133.90 Tan et al. (2006)121193.685.27
48RC2-014 1134.91 Tan et al. (2006)81308.7615.32
49RC2-024 1130.53 Tan et al. (2006)811673.23
50RC2-0331026.61Tan et al. (2006)6 1014.79 −1.15
51RC2-043 798.41 Mester et al. (2007)4881.8810.45
52RC2-0541297.19Mester et al. (2007)7 1210.68 −6.67
53RC2-063 1112.20 Yu et al. (2009)61112.380.02
54RC2-073 1040.67 Yu et al. (2009)71059.621.82
55RC2-083 828.14 Ibaraki et al. (2001)5882.066.51

NV number of vehicles

Comparison between the best-known results and Modified ABC NV number of vehicles The Modified ABC algorithm produces best results (lowest distance) for 8 datasets out of 56 datasets, which means that 14 % of the results obtained a lower distance than the best-known results achieved by several approaches proposed over the years. It also achieved equal or better results when compared to the best individually published results with respect to minimising the total travelled distance for the VRPTW. Moreover, the Modified ABC algorithm provides competitive results for 20 datasets with same number of vehicles as compared to the best-known results. The effect of the proposed modification on ABC algorithm can be clearly observed in Figs. 3a, b and 4a, b. The lines represent the abandoned solutions, x-axis represents the iterations and the y-axis represents the objective value.
Fig. 3

Behaviour of the abandoned solutions for ABC algorithm. a R1-01 dataset, b C1-03 dataset

Fig. 4

Behaviour of the abandoned solutions for Modified ABC algorithm. a R1-01 dataset, b C1-03 dataset

Behaviour of the abandoned solutions for ABC algorithm. a R1-01 dataset, b C1-03 dataset Behaviour of the abandoned solutions for Modified ABC algorithm. a R1-01 dataset, b C1-03 dataset Figures 3 and 4 show the behaviour of the abandoned solutions on R1-01 and C1-03 datasets, respectively. It can be clearly seen in Fig. 3 that ABC algorithm offers large moves (the quality rose sharply) throughout the solution’s improvement process. This represents that the abandoned solution is replaced by a new solution where the objective value becomes high (as explained in modified ABC algorithm section), in which it looks like the search starts from the beginning, where the quality of the solution is almost similar to the earlier solution’s quality at the initial stage. Thus, it is hard for the ABC algorithm to further improve the solution again. Furthermore, at the end of the improvement process, these large moves are not accepted. On the other hand, Fig. 4 shows the behaviour of the Modified ABC, where the figure demonstrates that when the abandoned solutions are replaced with new solution (the solution with random routes selected from the best solution). It can be seen that the quality of the solution goes slightly up (small moves), so the algorithm can easily improve the solution. Figure 5 shows the behaviour of one solution extracted from the above figures for ABC and Modified ABC algorithms, in order to show the behaviour in details.
Fig. 5

Behaviour of one solution from ABC and one solution form Modified ABC. a ABC on R1-01 dataset, b Modified ABC on R1-01 dataset

Behaviour of one solution from ABC and one solution form Modified ABC. a ABC on R1-01 dataset, b Modified ABC on R1-01 dataset As shown in Fig. 5a the solution (Sol 1) becomes abandoned roughly at iterations (150, 300, 470, 550, 610, 770, 800, 970 and 990) and replaced by randomly generated solutions. The quality for the randomly generated solution is roughly 3100 (at iteration 150) which is most likely equal to the quality of the initial solution (before the ABC algorithm is performed). This shows that, due to the poor quality of the randomly generated solution to replace the abandoned solution, thus it is hard to be further improved by the ABC algorithm. However, in the Modified ABC, Fig. 5b the solution becomes abandoned roughly at iterations (250, 350, 750, 780, 950, and 980), and replaced by a new solution where the routes of the solution are selected from the best solution. From the figure, we can see that the quality of the replaced solution is roughly 1900 (at iteration 250) which is better compared to the quality of the initial solution (roughly 3000) before the replacement takes place. Thus, it helps the algorithm to easily improve the quality of the solution at every time the abandoned solutions are replaced.

Conclusion

The Modified ABC algorithm proposed in this paper for the VRPTW appears to excel in the quality of its solution as well as in computational time. Experimental results show that the Modified ABC algorithm improves the results when using a memory by scout bees, where they can memorise the abandoned solutions and select one of these solution to be replaced by a new generated solution rather than replacing all the abandoned solutions by randomly generated solutions as in the original ABC algorithm. Overall comparison indicates that our Modified ABC algorithm is able to obtain the best results in comparison to state-of-the-art approaches, as represented by reducing the distance travelled, which is the main objective of the VRPTW.
  1 in total

1.  Sequential Insertion Heuristic with Adaptive Bee Colony Optimisation Algorithm for Vehicle Routing Problem with Time Windows.

Authors:  Sana Jawarneh; Salwani Abdullah
Journal:  PLoS One       Date:  2015-07-01       Impact factor: 3.240

  1 in total

北京卡尤迪生物科技股份有限公司 © 2022-2023.