Improved Artificial Bee Colony Algorithm with Adaptive Parameter for Numerical Optimization

ABSTRACT The problem that ABC (Artificial Bee Colony) algorithm is good at exploration but poor at exploitation for the numerical optimization is investigated in this paper. PA-ABC (Parameter Adaptive ABC) algorithm is proposed, which adopts different search equations with different search abilities for the employed bee and the onlooker bee. Firstly, the best-so-far solution is introduced into each search equation to enhance exploitation; secondly, the employed bee uses two random solutions to search, so as to keep high ability of exploration; thirdly, the onlooker bee searches around a random solution to keep population diversity; most importantly, adaptive parameter computed by fitness function is introduced in the search equation of the onlooker bee, which makes the search step adjust according to the search process. So the search equation of the employed bee has balanced abilities of exploration and exploitation, while the search equation of the onlooker bee can make the search focus transfer from exploration to exploitation adaptively. The experiment results on benchmark functions show that the search performance of PA-ABC is higher than or at least comparable to basic ABC and typical improved ABCs. In addition, compared to the performance of the state-of-the-art ABC variants under their original parameter configuration, PA-ABC is verified to have similar performance to them.


Introduction
In the fields of the engineering design, economics, statistical physics, information theory, and computing science, there are many kinds of the optimization problems. However, these problems are usually NP hard problems of which the optimal solutions cannot be obtained in a reasonable time. In recent years, enlightened by biology, some researchers proposed a large number of artificial life computation optimization to solve these optimization problems, such as genetic algorithm (GA) (Tang, Man, Kwong, He 1996), differential evolution algorithm (DE) (Das and Suganthan 2010;Storn and Price 1997), particle swarm optimization algorithm (PSO) (Kennedy and Eberhart 1995), and ant colony optimization algorithm (ACO) (Dorigo and Stutzle 2004), etc. Since which used the best-so-far solution, inertia weight, and acceleration coefficient to correct the searching process. Lin et al. introduced the information of the best-so-far solution in the neighborhood and the elite solutions, respectively, in the search equation of ABCLGII (Lin et al. 2018).
In some papers, the search for the candidate solutions is guided by search experience and related individual information. For example, Imanian et al. (Imanian, Shiri, and Moradi 2014) proposed VABC in which onlooker bees used PSO search strategy to search the candidate solutions. In (Tsai, Pan, and Liao 2009), Tsai et al. introduced universal gravitation and proposed IABC, in which onlooker bees were attracted to the locations of the employed bees and evaluated their fitness values. Liu et al. (Liu et al. 2012) proposed Mutual ABC, which made bees to learn between each other. Li et al. (Li, Li, Gong 2014proposed IF-ABC, which made full use of the internal state information of each iteration. In (Gao, Liu, and Huang 2013), Gao et al. proposed CABC with the altered search equation and OCABC by introducing the orthogonal experiment design to get more valuable information from search experience. In our previous work (Song, Zhao, Yan, Xing 2019), the individual selection range of the search equation is limited to the elite solutions. In (Brajević 2021), a modified search operator is proposed, which exploits the useful information of the best-so-far solution in the onlooker bee phase to improve exploitation tendency.
Different search equations have different search characteristics, so some researchers have applied the mixture of multiple strategies to the search process of bees. In (Zhou, Yao, Chan, et al. 2019), Zhou et al. divided the whole population into three subgroups and designed evolutionary operators with different search biases for each subgroup to play different roles. Song et al. selected and designed a variety of strategies with different search capabilities, which were combined at different proportions in the search stages of the employed bees and onlooker bees . In (Brajević, Stanimirović, Li, Cao 2020), Brajević et al mixed fireflies and artificial colonies and used a new multi-strategy ABC to conduct local search.
In addition, a slide of papers introduced other dynamic adjustment or local mechanism. Li et al. proposed DABC in which employed bees used tabu local search (Li, Pan, Tasgetiren 2014). Alam et al. (Gao and Liu 2011) proposed ABC-SAM, which was adaptively mutated and used step size adjusted dynamically. Rajasekhar et al. (Anguluri, Ajith, and Millie 2011) proposed L-ABC with mutation ability that generated candidate solution by Levy distribution. In (Kang, Li, and Ma 2011), Kang et al. proposed RABC that used ABC to explore globally and Rosenbrock rotation of the direction to exploit locally. Zhang et al. (Zhang, Zheng, and Zhou 2015) proposed GEM ABC, which added GEM into the search process. Alatas et al. (Alatas 2010) proposed Chaotic ABC based on the adaptive parameter with the chaotic map. In (Akay and Karaboga 2012), Akay et al. introduced the control parameter setting into ABC, to dynamically adjust the dimension to modify and the search step. In our previous work (Song, Yan, and Zhao 2017), we introduced the objective function value in the search equation in the form of trigonometric mutation.
Exploration and exploitation are important components of the any metaheuristic algorithm, and in order to be successful, a search algorithm needs to establish a good ratio between these two processes (Brajević and Stanimirović 2018;Das, Biswas, and Kundu 2013;Das, Biswas, Panigrahi, Kundu, Basu 2014). Exploration is the ability to visit various regions in the problem landscape, aiming to locate a good optimum, while exploitation is the ability to concentrate the search around a promising candidate solution, trying to find the optimum more precisely (Lin et al. 2018). So based on previous study, this paper proposes two novel search equations for the employed bee and the onlooker bee to form PA-ABC. The design of search equation for the employed bee focuses on enhancing exploitation while improving exploration, and the balance between them. The design of the search equation for the onlooker bee focuses on improving exploitation while keeping high population diversity, and the adaptive adjusting on the search step size.
In the following sections, PA-ABC is presented in Section 2; Section 3 provides parameter setting, some experiment results and analysis of PA-ABC compared with the related algorithms on sets of benchmark functions; Section 4 concludes all the work.

Artificial Bee Colony Algorithm with Adaptive Parameter (PA-ABC)
In this section, firstly, we propose the two novel search equations called TRC-ABC (ABC that searches around the center of two random solutions) and RA-ABC (ABC that searches around one random solution with adaptive parameter) individually and analyze their search scopes according to their items in detail. Furthermore, we propose PA-ABC, which uses these two equations to search for optimal solution.

TRC-ABC
The search equation of TRC-ABC is shown in Equation 1: v i;j ¼ ðx r1;j þ x r2;j Þ=2 þ ϕ i;j ðx r1;j À x r2;j Þ þ φ i;j ðy j À x r1;j Þ (1) where r1 and r2 are distinct numbers different with i on {1, . . ., FN} (FN is the number of food sources, which equal to NP/2, and NP is the population size) selected randomly. ϕ i;j is a random number on [−0.25, 0.25]. φ i;j is a e2008147-528 random number on [0, 1]. y is the best-so-far solution. In Equation 1, since the search equation adopts trinomials, to avoid excessive search step length, the value range of the random number in the second item is set as [−0.25, 0.25], in combination with the value range design of the third random number.
The first item at the right of Equation 1 illustrates that the candidate solution is generated around the center of two solutions selected randomly. Equation 1 also applies slight turbulence with the second item based on the difference vector of the two solutions. Both the first two items ensure the strong ability of exploration. Based on the range of φ i;j , the search scope affected by these two items is shown in Figure 1a.
Furthermore, the third item is added with the best-so-far solution as guiding information to increase the exploitation probability around it. If x r1 is just the best-so-far solution (y = x r1 ), then φ i;j ðy j À x r1;j Þ = 0, meaning that the search process only affected by the first two items and the search scope is equal to Figure 1a. Now the search process is near to the global optimal solution, so the solution better than the best-so-far solution is inclined to find. Otherwise, exploitation around the best-so-far solution is enhanced, because of the guiding information of it in the third item. The search scope of this case is shown in Figure 1b. The arc lines in Figure 1 represent the theoretical search scope of the search equation.

RA-ABC
Referring to the improved ABCs with high performance, such as CABC, ABC/ best and GABC, RA-ABC adopts the search equation shown in Equation 2. where r1 and r2 are distinct integers different with i on {1,2, . . .,FN}. ϕ i;j is a random value on [−0.75,0.75]. ap is the adaptive parameter which is computed by the fitness function value of x r1 and x r2 shown in Equation 3. y is the best-so-far solution. φ i;j is a random number on [0,0.5]. f(x) is the fitness function (minimum optimization) value of x. In Equation 2, since the search equation adopts trinomials, to avoid excessive search step length, the value range of the random number in the second item is set as [−0.75, 0.75], in combination with the value range design of the third random number.
The first item at the right of Equation 2 illustrates that the candidate solution is generated around x r1 , which selected randomly from the population to keep high diversity. The second item without ap can bring more information making equation getting the higher search performance (Gao, Liu, and Huang 2013). Because the first two items provide the equation with enough exploration, we shrink the range of ϕ i;j from [−1, 1] to [−0.75, 0.75], so as to enhance exploitation and furthermore balance exploration and exploitation. The search scope affected by these two items is shown in Figure 2a. Then consider the effect of the adaptive parameter ap in the second item to adjust the search step size according to the search process. At early stage of the search process, the difference between x r1 and x r2 is large, so the computing result of ap based on their fitness function values is large too, which means big step size, indicating that the search equation focuses on exploration; at late stage of the search process, with converging to the optimal solution gradually, the difference between x r1 and x r2 becomes small, so the computing result of ap based on their fitness function values is small which means that the step size is small as well, indicating that the search equation works toward exploitation. In general, parameters ϕ i;j and φ i;j are set properly to balance exploration and exploitation, and the adding of parameter ap can make the search process adaptively adjusted from exploration to exploitation according to the search process.
The third item at the right of Equation 2 uses the best-so-far solution to guide the search direction. Because φ i;j is a positive number on [0, 0.5], making the search process toward the direction of the best-so-far solution to improve exploitation, as shown in Figure 2b.
Consider the value ranges of the last two items at the right of the equation. The step of the second step is 1.5, and the step of the third is 0.5, that is the step size of the third is 1/3 of the second. Thus, if they are in opposite directions, the search process will work toward y with x r1 as the center, as shown in Figure 3a.When the two items are in the same direction, the search process will work toward y with larger step. Therefore, the search process according to the equation can realize adaptive adjusting on search step, as shown in Figure 3b.

PA-ABC
In PA-ABC, TRC-ABC is used as search equation of the employed bee to realize the balance between exploration and exploitation while keeping strong ability of exploration, and RA-ABC is embedded in the search of the onlooker bee phase to improve exploitation while keeping population diversity. Moreover, due to the enough exploitation of PA-ABC, roulette wheel selection is canceled.

Benchmark Functions and Parameters Setting
To test the algorithm on typical optimization functions of variable kinds and to find the best suitable problem the algorithm can solve effectively, we choose 28 benchmark functions to form test set shown in Tables 1 and 2, and provide the optimum and the search range of each function.
There are 22 basic scalable functions in Table 1: f1, f3-f8 are continuous unimodal; f2 is non-continuous unimodal; f9 is noisy quartic; f10 is Rosenbrock function, which is unimodal with 2 or 3 dimensions but multimodal with higher dimensions; f11-f22 are multimodal, and the number of optimum will increase with dimensions exponentially; f19 is bounded. All functions are evaluated by the global optimal value searched.
There are six functions in Table 2: f23, f24, f27, f28 are shifted functions; f25 and f26 are rotated functions (Zhang, Zheng, and Zhou 2015). These functions are mainly intended to avoid the situation that some algorithms copy one parameter to another to generate a neighbor solution, so they are more difficult to optimize. Because the dimension number of the problem is a vital factor affecting the performance of the algorithm, so we test f1-f20 with D =30 and D =60, f21-f22 with D =100 and D =200. Under each dimension setting, we run each algorithm on every function independently for 30 times, and compute mean value and standard deviation of 30 runs to analyze.
Moreover, to compare the algorithms fairly, we set the same value to each common parameter shown in Table 3.
In addition, we also tested the proposed algorithm PA-ABC based on CEC2021 (Ali, Anas, Ali, Prachi, Abhishek, Suganthan, 2021), and it found the optimums for solving the 10 basic functions in 10 dimensions with the general setting of acceptable solution 1E-8. For detailed test results, please refer to the supplementary experimental material. Table 4 lists the comparison results among PA-ABC, basic ABC and several typical improved ABCs including I-ABC, GABC, ABC/best and CABC running on 22 basic benchmark functions when D =30 for f1-f20 and D =100 for f21-f22.

Experiment Result and Analysis on Basic Benchmark Function
As seen from Table 4, compared with other ABCs, PA-ABC performs best on 17 of 22 basic benchmark functions. For f3, although ABC/best performs better slightly than PA-ABC, the results of them are in same magnitude, which means they have similar performance with each other; for f7 only the performance of ABC/best is better than PA-ABC; for f22, although CABC performs better slightly than PA-ABC, the difference between their results is very small. Moreover, for f15, f17 and f18 of which the global optimal solutions are not equal to 0 due to influence of the precision of п, PA-ABC finds their global optimal solutions. Particularly for f15, the standard deviation of 30 runs of PA-ABC is 0, indicating that the global optimal solution is found by every running.
To further verify the effectiveness of PA-ABC, based on the experiment results in Table 4, SPSS is used to conduct non-parametric test including Wilcoxon test and Friedman test, and the test results are shown in the last two rows of Table 4. It can be seen from the results of Wilcoxon test about significant difference compared with PA-ABC that the p-values of ABC, I-ABC, GABC are all less than 0.05, indicating that there are significant difference between them and PA-ABC, and PA-ABC is far superior to these three  algorithms. It can be seen from the ranking results of Friedman test, PA-ABC <CABC<ABC/best<GABC<I-ABC<ABC, indicating that PA-ABC performs best, and p-value is far less than 0.05. Table 5 lists the comparison results among PA-ABC, basic ABC and several typical improved ABCs including I-ABC, GABC, ABC/best and CABC running on 22 basic benchmark functions when D =60 for f1-f20 and D =200 for f21-f22.
As seen from Table 5, compared with other ABCs, PA-ABC performs best on 18 of 22 basic benchmark functions. Moreover, for f15 and f18 which the global optimal solutions are not equal to 0 due to influence of the precision of п, PA-ABC finds their global optimal solutions. Particularly for f15, the standard deviation of 30 runs of PA-ABC is 0, indicating that the global optimal solution is found by every running.
It can be seen from the results of Wilcoxon test about significant difference compared with PA-ABC that the p-values of ABC, I-ABC, GABC, ABC/best, and CABC are all less than 0.05, indicating that there are significant differences between them and PA-ABC, and PA-ABC is far superior to these five algorithms. It can be seen from the ranking results of Friedman test, PA-ABC <CABC<ABC/best<GABC<I-ABC<ABC, indicating that PA-ABC performs best, and p-value is far less than 0.05.

Experiment Result on Shifted and Rotated Functions
To compare the algorithms objectively and avoid using the known characteristics of basic benchmark functions to increase performance of the algorithms artificially, based on the experiments on 22 basic benchmark functions, we test PA-ABC, basic ABC and its several typical variants on the 6 shifted or rotated functions in Table 2, with results shown in Table 6. From Table 6, we can see that PA-ABC performs best among all the algorithms on all of the functions. Particularly for f23, f25, f27, and f28, only PA-ABC finds the global optimal solution. Therefore, we can conclude that PA-ABC is an effective optimization algorithm with better performance. It can be seen from the results of Wilcoxon test about significant difference compared with PA-ABC that the p-values of ABC, I-ABC, GABC, ABC/best, and CABC are all less than 0.05, indicating that there are significant difference between them and PA-ABC, and PA-ABC is far superior to these five algorithms. It can be seen from the ranking results of Friedman test, PA-ABC <ABC/best<GABC<CABC<I-ABC<ABC, indicating that PA-ABC performs best, and p-value is far less than 0.05.

Conclusions
To improve the performance, PA-ABC adopts two novel search equations for the employed bee and the onlooker bee. The search equation of the employed bee focuses on the balance of exploration and exploitation on high level, enhancing exploitation by slight turbulence and the introduce of the best-so-far solution as guiding information while ensuring high exploration by randomly selecting food sources to search around. The search equation of the onlooker bee realizes enhancing exploitation by the introduce of the best-so-far solution as guiding information while ensuring high population diversity by selecting random food source to search around, and adjusting of the search step size automatically by the introduce of adaptive parameter, which can make the search process transform from early exploration to late exploitation. Experiment results on benchmark functions have shown that PA-ABC has better effectiveness and robustness. Future work will focus on the application of PA-ABC algorithm to solve practical problems, such as circular antenna array design (Bose, Kundu, Biswas, Das 2012), dynamic optimization problems , parameter optimization (Biswas, Saha, De, Cobb, Das, Jalaian 2021), etc.