Artificial bee colony (ABC) algorithm is one of the most recent swarm intelligence based algorithms, which has been shown to be competitive to other population-based algorithms. However, there is still an insufficiency in ABC regarding its solution search equation, which is good at exploration but poor at exploitation. To overcome this problem, we propose a novel artificial bee colony algorithm based on particle swarm search mechanism. In this algorithm, for improving the convergence speed, the initial population is generated by using good point set theory rather than random selection firstly. Secondly, in order to enhance the exploitation ability, the employed bee, onlookers, and scouts utilize the mechanism of PSO to search new candidate solutions. Finally, for further improving the searching ability, the chaotic search operator is adopted in the best solution of the current iteration. Our algorithm is tested on some well-known benchmark functions and compared with other algorithms. Results show that our algorithm has good performance.
Optimization problems play a very important role in many scientific and engineering fields. In the last two decades, several swarm intelligence algorithms, such as ant colony optimization (ACO) [
The ABC algorithm was first proposed by Karaboga in 2005, inspired by the intelligent foraging behavior of honey bee [
In addition, considering PSO has good exploitation ability, a few of hybrid ABC algorithms have been presented based on PSO algorithm. For example, a novel hybrid approach referred to as IABAP based on the PSO and ABC is presented in [
In this paper, we present a hybrid artificial bee colony algorithm based on particle swarm search for global optimization, which is named “ABC-PS.” For furthermore improving the performance, some strategies have been applied. The experimental results show that the algorithm could do well in improving the performance of ABC algorithm in most areas.
The rest of the paper is organized as follows. The original ABC algorithm is introduced in Section
ABC algorithm contains three groups of bees: employed bees, onlookers, and scouts. The numbers of employed bees and onlookers are set equally. Employed bees are responsible for searching available food sources and gathering required information. They also pass their food information to onlookers. Onlookers select good food source from those found by employed bees to further search the foods. When the quality of the food source is not improved through a predetermined number of cycles, the food source is abandoned by its employed bee. At the same time, the employed bee becomes a scout and start to search for a new food source. In ABC algorithm, each food source represents a feasible solution of the optimization problem and the nectar amount of a food source is evaluated by the fitness value (quality) of the associated solution. The number of employed bees is set to that of food sources.
Assume that the search space is
At the initialization stage, a set of food source positions is randomly selected by the bees as in (
An onlooker bee evaluates the nectar information taken from all employed bees and chooses a food source with a probability related to its nectar amount. The food source with higher quality would have a larger opportunity to be selected by onlookers. The probability could be obtained from the following equation:
In ABC algorithm, there is a control parameter called limit in the original ABC algorithm. If a food source is not improved anymore when limit is exceeded, it is assumed to be abandoned by its employed bee and the employed bee associated with that food source becomes a scout to search for a new food source randomly, which would help avoiding local optima.
As a swarm-based stochastic optimization method, the PSO algorithm was developed by Kennedy and Eberhart [
In (
Based on the description of PSO, we can see that the particles have a tendency to fly towards the better and better search area over the course of search process. So, the PSO algorithm can enforce a steady improvement in solution quality.
From the above discussion of ABC and PSO, it is clear that the global best solution of the population does not be directly used in ABC algorithm; at the same time, it can be concluded that when the particles in the PSO get stuck in the local minima, it may not get rid of the local minima. For overcoming these disadvantages of two algorithms, we propose a hybrid global optimization approach by combing ABC algorithm and PSO searching mechanism. In this algorithm, the initial population is generated by using good point set theory.
Let
Let
Let
If let
If
For arbitrary
If
By Theorems
For the
In the following, for two-dimensional space
100 points by using goog point set method.
100 points by using random method.
In our algorithm, assume that
By (
Based on the above, the ABC-PC algorithm is given in this subsection.
Set the population size Use ( While the stopping criterion is not meet do For Update the velocities of the particles and the positions of the particlesby using ( Determine personal bests of the particles by using ( End if Determine the End for For If Update the velocity of the food source Determine personal bests of the particles by using ( End if If End if Determine the Chaotic search
End while
In this section, ABC-PS is applied to minimize a set of benchmark functions. In all simulations, the inertia weight in (
In order to evaluate the performance of ABC-PS algorithm, we have used a test bed of four traditional numerical benchmarks as illustrated in Table
The values of the common parameters used in three algorithms such as population size and total evaluation number are chosen in the same. Population size is 50 for all functions, the limit is 10. For each function, all the methods were run 30 times independently. In order to make comparison clear, the global minimums, maximum number of iterations, mean best values, standard deviations are given in Table
Benchmark functions used in Experiment
Functions | C | Range |
---|---|---|
|
UN | [−10, 10] |
|
MS | [−10, 10] |
|
MN | [−5, 5] |
|
MN | [−2, 2] |
|
C: characteristic; U: unimodal; M: multimodal; N: nonseparable; S: separable.
Results obtained by ABC, COABC, and ABC-PS algorithms.
Function | Min | Max iteration | Algorithm | Mean | SD |
---|---|---|---|---|---|
|
0 | 1000 | ABC |
|
|
COABC |
|
|
|||
ABC-PS |
|
| |||
|
|||||
|
0 | 1000 | ABC |
|
|
COABC |
|
|
|||
ABC-PS |
|
| |||
|
|||||
|
−1.03 | 1000 | ABC |
|
|
COABC |
|
|
|||
ABC-PS |
|
| |||
|
|||||
|
3 | 1000 | ABC |
|
|
COABC |
|
|
|||
ABC-PS |
|
|
The relation of the best value and each iteration (the function Matyas).
The relation of the best value and each iteration (the function Booth).
The relation of the best value and each iteration (the function Camelback).
The relation of the best value and each iteration (the function Goldstein).
To further verify the performance of ABC-PS, 12 numerical benchmark functions are selected from the literatures [
In order to fairly compare the performance of ABC-PS, COAB, GABC [
Benchmark functions used in Experiment
Functions | C | D | Range |
---|---|---|---|
|
UN | 2 |
|
|
|||
|
UN | 30 |
|
|
|||
|
MN | 2 |
|
|
|||
|
MN | 60 |
|
|
|||
|
MN | 60 |
|
|
|||
|
MN | 30 |
|
|
|||
|
UN | 4 |
|
|
|||
|
|||
|
US | 30 |
|
|
|||
|
US | 60 |
|
|
|||
|
US | 60 |
|
|
|||
|
MS | 60 |
|
|
|||
|
MS | 60 |
|
C: characteristic; U: unimodal; M: multimodal; N: nonseparable; S: separable.
ABC-PS performance comparison of ABC and the state-of-art algorithms in [
Function | Min | Max iteration | Algorithm | Mean | SD |
---|---|---|---|---|---|
|
0 | 1000 | ABC |
|
|
COABC (with UTEB = 3) |
|
|
|||
ABC-PS |
|
| |||
|
|||||
|
0 | 2000 | ABC |
|
|
COABC (with UTEB = 3) |
|
| |||
ABC-PS |
|
| |||
|
|||||
|
|
1000 | ABC |
|
|
COABC (with UTEB = 3) |
|
|
|||
ABC-PS |
|
| |||
|
|||||
|
0 | 1000 | ABC |
|
|
COABC (with UTEB = 3) |
|
|
|||
ABC-PS |
|
| |||
|
|||||
|
0 | 2000 | ABC |
|
|
COABC (with UTEB = 3) |
|
| |||
ABC-PS |
|
|
|||
|
|||||
|
0 | 1000 | ABC |
|
|
COABC (with UTEB = 3) |
|
| |||
ABC-PS |
|
| |||
|
|||||
|
0 | 2000 | ABC |
|
|
COABC (with UTEB = 3) |
|
|
|||
ABC-PS |
|
|
|||
|
|||||
|
0 | 1000 | ABC |
|
|
PABC |
|
|
|||
ABC-PS |
|
|
|||
|
|||||
|
0 | 1000 | GABC |
|
|
PABC |
|
|
|||
ABC-PS |
|
|
|||
|
|||||
|
0 | 1000 | GABC |
|
|
PABC |
|
|
|||
ABC-PS |
|
|
|||
|
|||||
|
|
1000 | GABC |
|
|
PABC |
|
|
|||
ABC-PS |
|
|
|||
|
|||||
|
0 | 1000 | GABC |
|
|
PABC |
|
|
|||
ABC-PS |
|
|
In this paper, a hybrid ABC algorithm based on particle swarm searching mechanism (ABC-PS) was presented. For overcoming the disadvantage of ABC algorithm, we adopted good point set theory to generate the initial food source; then, the mechanism of PSO was utilized to search new candidate solutions for improving the exploitation ability of bee swarm; finally, the chaotic search operator was adopted in the best solution of the current iteration to increase the searching ability. The experimental results show that the ABC-PS exhibits a magnificent performance and outperforms other algorithms such as ABC, GABC, COABC, and PABC in most case.
The authors declare that there is no conflict of interests regarding the publication of this paper.
The authors thank anonymous reviews for their suggestions and contributions and corresponding editor for his/her valuable efforts. The research was supported by NSFC (U1404105, 11171094); the Key Scientific and Technological Project of Henan Province (142102210058); the Doctoral Scientific Research Foundation of Henan Normal University (qd12103); the Youth Science Foundation of Henan Normal University (2013qk02); Henan Normal University National Research Project to Cultivate the Funded Projects (01016400105); the Henan Normal University Youth Backbone Teacher Training.