Hybrid Artificial Bee Colony and Improved Simulated Annealing for the Capacitated Vehicle Routing Problem

Capacitated Vehicle Routing Problem (CVRP) is a type of NP-Hard combinatorial problem that requires a high computational process. In the case of CVRP, there is an additional constraint in the form of a capacity limit owned by the vehicle

Capacitated Vehicle Routing Problem (CVRP) is a type of NP-Hard combinatorial problem that requires a high computational process. In the case of CVRP, there is an additional constraint in the form of a capacity limit owned by the vehicle, so the complexity of the problem from CVRP is to find the optimum route pattern for minimizing travel costs which are also adjusted to customer demand and vehicle capacity for distribution. One method of solving CVRP can be done by implementing a meta-heuristic algorithm. In this research, two meta-heuristic algorithms have been hybridized: Artificial Bee Colony (ABC) with Improved Simulated Annealing (SA). The motivation behind this idea is to complete the excess and the lack of two algorithms when exploring and exploiting the optimal solution. Hybridization is done by running the ABC algorithm, and then the output solution at this stage will be used as an initial solution for the Improved SA method. Parameter testing for both methods has been carried out to produce an optimal solution. In this study, the test was carried out using the CVRP benchmark dataset generated by Augerat (Dataset 1) and the recent CVRP dataset from Uchoa (Dataset 2). The result shows that hybridizing the ABC algorithm and Improved SA could provide a better solution than the basic ABC without hybridization. exploring the local optimum solution [12]. Meta-heuristic algorithms can be used to find the optimum solution with a predetermined time or number of iterations [13].
In previous studies, several types of meta-heuristic algorithms have been carried out to solve CVRP, including Simulated Annealing [7], Genetic Algorithm [8], Particle Swarm Optimization [9], Firefly Algorithm [14], and Artificial Bee Colony [15] [16]. Based on these studies, Artificial Bee Colony (ABC) is one of the meta-heuristic algorithms that can produce the best average solution output. Besides, ABC is the most popular variant of swarm intelligence because it is used most widely in optimization research despite ABC being the youngest algorithm compared with other swarm intelligence [17]. ABC is an algorithm inspired by Swarm Intelligence (SI), especially in bees. Bees have intelligence that is used to select food source locations by evaluating quality through a dance movement called the waggle dance. The quality of food sources is assessed from the quality of nectar in flowers (pollen), as well as the distance and direction of the location of the food source to the nest. ABC is not only used to optimize CVRP, but has also succeeded in overcoming other optimization problems such as optimization cost efficiency for sizing and composition of Arctic offshore drilling support fleets [18], multi-objective optimization on scheduling for palletizing task using robotic arm [19], Multi-objective Land-use allocation [20] and other optimization projects [21][22] [23].
The main advantages of the ABC algorithm are fewer control parameters than other SI algorithms, which can handle stochastic objective functions, and are easy to hybridize with other algorithms. However, the ABC algorithm also has a drawback and cannot produce an optimal solution because it is trapped in a local optimum solution [24]. Besides that, the performance of the ability to search for a better solution is also poor [25]. So in this study, improvements will be made to the performance of the ABC algorithm by performing a hybridization with other meta-heuristic algorithms. Hybridization is proven to improve the performance of an algorithm, especially for optimization problems. In previous studies, the ABC algorithm has been hybridized with several other meta-heuristic algorithms such as Tabu Search [26], Genetic Algorithm [27], Particle Swarm Optimization [28], Monarchy Butterfly Optimization [29], and Quantum Computing [30]. Those studies show that the hybridization of the ABC algorithm can show significant differences in producing the optimal solution.
In this research, we proposed hybridizing the ABC algorithm and another popular meta-heuristic algorithm, Simulated Annealing (SA). The motivation behind this hybridization is to increase the performance of two meta-heuristic algorithms by utilizing both algorithms' strengths and weaknesses to provide a better solution for solving CVRP. SA is a probability-based meta-heuristic algorithm used to solve combinatorial optimization problems adapted from the cooling process of metals or materials in thermodynamics [31][32] [33]. SA is an attractive method for solving optimization problems because of its ability to deal with arbitrary system and functions, which are easy to implement. SA has been used in several optimization problems in different fields such as Statistical Physic [34], Discrete Structures [35], Biotechnology [36], and others [37] [38]. However, SA also had a disadvantage: the parameters are difficult to control, especially the Initial Temperature and Annealing rate. Handling the weaknesses of SA can be done by hybridizing, and it is proven that SA is a method with settings that are easy to modify and hybridize with other algorithms. In earlier research, SA also had been hybridizing with Particle Swarm Optimization for solving CVRP [39], Optimizing Assembly sequences with Genetic algorithms, and Melanoma Classification by Neural Networks [32]. In order to maximize the results of hybridization, we will implement a new approach from the SA method that is proven to produce the best solution. There are several modifications of SA to improve its performance, such as using a crossover operator [40], adding two new operators that are folding and reheating [41], and adding a Very Fast Simulated Annealing with two stages of annealing plan [42]. That Improvisation had success in increasing the performance of SA. This research will use one of the Improved SA proposed by Yuxin et al. (2018) to prove its performance in solving CVRP.
A test will be carried out on the CVRP benchmark dataset generated by Augerat et al. (1998) to prove the reliability of the hybridization of the two algorithms [43] and the latest CVRP dataset from Uchoa et al. (2016) [44]. Our main contribution: First, we show that hybridizing two different metaheuristic algorithms could produce the best performance compared with a single meta-heuristic algorithm implementation for solving CVRP. Second, we demonstrated that our proposed algorithm could achieve a minimum distance of CVRP. In addition, we used a novel dataset of CVRP that had high complexity and was close to the original problems. This research is structured into four sections. Section I is about the background and the related research. Section II illustrates the research methods, and Section III analyzes the implementation algorithm's result with parameter testing. Finally, the main findings and future research direction are outlined in Section IV.

II. Methods
In solving the CVRP problem, the expected solution value is the minimum distance from the entire vehicle trip in one dataset group. Thus, several benchmark datasets of CVRP will be used to test the parameters and algorithms used in this study. As for this research, hybridization was carried out by first finding the best parameters by testing the parameters of the two methods. The best parameters would be used in the hybridization process by running the Artificial Bee Colony (ABC) method first, and the solution's output from the process would be used as an initial solution of the Improved Simulated Annealing (SA) method. The methodology in this research is depicted in Figure 1.

A. Datasets
The dataset 1 used in this study is a dataset generated by Augerat [43], shown in Table 1 and the new benchmark dataset on CVRP, Uchoa (Dataset 2) [44] which are shown in Table 2.

B. Artificial Bee Colony (ABC)
The ABC algorithm is an example of swarm intelligence that tries to adopt some intelligent behavior from animals, especially honey bees when looking for food sources. In a swarm of bees, there are three types of bees: employed bees, onlooker bees, and scout bees [2]. The three types of bees have the same goal when looking for food sources to find the highest quality. The flowchart of the ABC algorithm in this study is depicted in Figure 2. The value of the best-known solution from the dataset used in this study is shown in Table 3. The implementation of the ABC algorithm is described in this pseudocode. ABC's parameter will be tested to produce the optimum solution, namely the number of populations. So in this study, a solution calculation will be carried out from each dataset with a population of 100 and 1000. The evaluation of the solution is the calculation of the total distance that must be traveled by all vehicles using the euclidean distance formula shown in (1).
where: The fitness value is obtained by comparing the distance value obtained from the solution using the distance best-known solution value from each dataset formulated in (2). where:

C. Improved Simulated Annealing
After getting a solution with the best fitness in the previous method using the ABC algorithm, the following solution will be searched again using the Improved Simulated Annealing (SA) algorithm. The Improved Simulated Annealing Algorithm that will be carried out in this study is the SA algorithm which has been improved using the Very Fast Simulated Annealing (VFSA) concept, which is applied to CVRP [7]. The annealing plan of the improved simulated annealing method in stage 1 is formulated in (3).
Initial temperature is ( 0 ), several iterations are k, then c is the value of the given constant, and N is the number of inversion parameters. If the temperature exceeds the specified T value, step 2 will be carried out with in (4).
The number of iterations in step 1 is 0 , the temperature rise factor is . T and have inversely proportional values; when it is small, the value of T will be more significant. The parameters used in the Improved Simulated algorithm and also those that will be tested in this study include temperature reduction factor value ( ), the random value on the opportunity ( ), parameter values c and N, and the number of iteration .

III. Results and Discussion
In this study, hybridization was carried out by first running the ABC algorithm and followed by Improved SA, but before that, it was necessary to do parameter testing first. The testing parameters on the ABC algorithm will be carried out by testing the number of populations, which are 100 shown in Table 4 and 1000 populations shown in Table 5. The test was carried out several 5 trials and concluded with the minimum, maximum, and average values of the entire experiment. Based on Table 4 and Table 5, when the minimum result is visualized, it will be seen in Figure 3 for dataset 1 and Figure 4 for dataset 2. As visualized in Figure 3, there are different results regarding the number of populations, and it shows that using 100 populations could produce the best distance than 1000 populations. The same thing happened in dataset 2, shown in Figure 4, although there are just slightly different. So, the num of the population used in this research is 100. After getting the best parameter for the ABC algorithm, the next step is looking for the best parameter for Improved SA. The temperature reduction factor value is used to reduce the temperature value of the Improved SA method, and this parameter determines the temperature value of the Improved SA method, which will affect the number of iterations. Therefore, the test results of the temperature reduction factor (∝) value on the an69k9 dataset are presented in Table 6.  An32k5  1984  2168  2098  An69k9  4132  4282  4179  An80k10  5296  5466  5396  Bn31k5  1210  1554  1322  Bn50k7  1166  1298  1227  Bn78k10  3834  4884  4604  En51k5  1702  1842  1810  Pn101k4  3792  3950  3874  Xn200k36  131506  137816  135147  Xn359k29  242058  246610  245205  Xn627k43  399734  403684  402032  Xn876k59 549460 559772 556476 Table 6 shows the results of testing the value of the temperature reduction factor on the an69k9 dataset by conducting ten trials. The increase in the value of the reduction factor also affects the increasing computation time. So this study will use the value of the temperature reduction factor as 0.9.
Then, parameters c and N in the annealing plan are other parameters to be tested. In addition, a random value parameter will also be tested ten times, determining whether or not a bad solution is accepted in the SA method, which was previously only generated randomly. The trial results of random values in determining the acceptance of the worse solution are presented against the objective value, and the minimum total distance in the an69k9 Augerat's dataset shows in Table 7. Table 7 shows that the random value on the probability of receiving a solution that produces the most optimal minimum distance is 0.9. Tests for parameters and were carried out to determine the optimal values for parameters c and N. In this parameter trial, the experiment will be performed ten times according to the optimal number of trials to get the average value of the total stable minimum distance value. The results of testing parameters and are presented in Table 8. It can be seen in Table 8 parameters and that produce the optimal solution; namely, the minimum total distance value of the minimum is 0.4 for parameter and 0.7 for parameter . In the trial of the number of iterations ( ), the experiment will be carried out on the an69k9 datasets with the number of iterations being 100, 1000, 10000, 100000, up to 1000000. In Table 9, the results of the solution calculation based on the number of iterations are presented.
In Table 9, the increasing number of iterations carried out in the implementation of SA on the CVRP problem will result in an average total distance that is increasingly minimal which indicates that the solution is getting better. However, the average computing time is also increasing. When the number of iterations is carried out as much as 1.000.000, it can be observed that the decrease in the average value of the minimum distance is not too significant compared to the average value of the minimum distance obtained from the number of iterations of 100.000, but there is a vast difference in computation time as shown in Table 9 which is 106.392 seconds and 1103.243 seconds. So, it could be concluded that this research would be using 100.000 nums of iterations. After doing some testing of the required parameters, the hybridization of the ABC algorithm and Improved SA will be carried out ten times using the best parameter settings. The results of the hybridization dataset 1 and dataset 2 are shown in Table 10.
The results of this study, shown in Table 10, will be compared with the results of implementing the ABC algorithm without hybridization to determine whether hybridization can produce a more optimal solution. The result of these comparison visualized in Figure 5 for dataset 1and Figure 6 for dataset 2.
Based on the result in Figure 5, the comparison on dataset 1 shows that ABCSA could minimize the total distance significantly compared with a single ABC. This result means that SA could reconsider a solution based on the probability with the opportunity-based concept. Because not all the lousy solution found in early iteration always provides poor results. Augerat's datasets used in this research come from a different type of set. So, the proposed method could prove the performance regarding data variation.  Figure 6 the average total distance results from testing the dataset 2 using single ABC and ABCSA hybridization. These results also show that the more complex the dataset used, the less the difference in the average distance results. This happens because, naturally the more complex a problem is, the more difficult it will be for an algorithm to converge [45]. Performance evaluation is not only carried out on the difference in distance generated by each algorithm. Performance measurement is also carried out by comparing computation time to show the impact of the hybridization. The result of the computation time is shown in Figure 7 for dataset 1 and Figure 8 for dataset 2. Based on the results of a comparison of single ABC and ABCSA hybridization to the average computation time in seconds on dataset 1, there are variations in the difference in the An32k5, An69K9, Bn31k5, En51k5, and Pn101k4 datasets ABCSA hybridization actually results in less computation time than single ABC, and the increase in computation time only occurs in the An80k10 dataset. This is because SA helps ABC to perform local searches so converge faster. Apart from that, another exciting thing in the Ank69k9 dataset in Figure 7 is that there is a difference of 13.5 seconds to the computation time, even can minimize the resulting distance by 2404. This shows that hybridization minimizes almost 50 % of the total distance of a single ABC. As we can see in Figure 8, the difference in computational time between the implementation of the single ABC and ABCSA hybridization on Uchoa's dataset is quite different compared to dataset 1. It can even be seen in the Xn359k9 dataset that the ABCSA hybridization significantly increases the computation time. This is because dataset 2 is highly complex, so ABCSA hybridization also requires a high time. However, comparing it with the distance minimization results obtained on dataset 2, the ABCSA hybridization is superior and minimizes the average distance. For example, in the Xn359k29 dataset, it takes 47 seconds longer, but ABCSA hybridization can minimize the distance to 47644, which means 20% of the result of a single ABC distance.

IV. Conclusion
In this research, two meta-heuristic algorithms have been hybridized, namely, artificial bee colony (ABC) and Improved Simulated Annealing (SA), to solve the Capacitated Vehicle Routing Problem (CVRP) using the default dataset 1 and the latest CVRP dataset 2. The hybridization results show good performance compared to implementing the ABC algorithm without hybridization. Parameter testing of the two algorithms has also been carried out to produce an optimal solution. Based on the results of the study, the hybridization of the two meta-heuristic algorithms can provide more optimal performance in the CVRP optimization problem seen by how the total average distance can be minimized. In addition, the impact is that the computation time is not very significant, and even in some light datasets, it is proven to produce less time. In future research, improvements can be made to the artificial bee colony used with a modification so that hybridization can produce even better performance, besides the hybridization experiment of the meta-heuristic algorithm can be carried out to solve the CVRP case so that it can find out which combination of meta-heuristic algorithms can provide the most optimal solution.