# Hybrid Artificial Bee Colony Algorithm and Particle Swarm Search for Global Optimization

Authors: Wang Chun-Feng; Liu Kui; Shen Pei-Ping
Journal: Mathematical Problems in Engineering
 (2014)

---

## Abstract

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.


---

## Body

## 1. Introduction

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) [1, 2], particle swarm optimization (PSO) [3, 4], and artificial bee colony (ABC) algoritm [5, 6], have been developed for solving difficult optimization problem. Researchers have shown that algorithms based on swarm intelligent have great potential [7–9] and have attracted much attention.The ABC algorithm was first proposed by Karaboga in 2005, inspired by the intelligent foraging behavior of honey bee [5]. Since the invention of the ABC algorithm, it has been used to solve both numerical and nonnumerical optimization problems. The performance of ABC algorithm has been compared with some other intelligent algorithms, such as GA [10], differential evolution algorithm (DE) [11]. The results show that ABC algorithm is better than or at least comparable to the other methods. Recently, for improving the performance of ABC algorithm, many variant ABC algorithms have been developed. Alatas proposed a ABC algorithm by using chaotic map as efficient alternatives to generate pseudorandom sequence [12]. To improve the exploitation ability, Zhu and Kwong presented a global-best-solution-guided ABC (GABC) algortihm by incorporating the information of global best solution into the solution search equation [13]. By combing Powell's method, Gao et al. proposed an improved ABC algorithm-Powell ABC (PABC) algorithm [14]. In order to improve the exploitation ability, a converge-onlookers ABC (COABC) was developed by applying the best solution of the previous iteration in search equation at the onlooker stage [15]. More extensive review of ABC can refer to [16].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 [17]. In this algorithm, the flow of information from bee colony to particle swarm is exchanged based on scout bees. Another hybrid approach is the ABC-SPSO algorithm based on the ABC and PSO [18]. In ABC-SPSO algorithm, the update rule (solution updating equation) of the ABC algorithm is executed among personal best solutions of the particles after the main loop of the PSO is finished. Unlike the IABAP and ABC-SPSO, a hybrid method named HPA is proposed. The global best solution of the HPA is created using recombination procedure between global best solutions of the PSO and the ABC.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 Section2. The PSO is explained in material and methods in Section 3. The proposed ABC-PS approach is described in Section 4. The performance of the ABC-PS is compared with that of original ABC algorithm and the state-of-art algorithm in Section 5. Finally, conclusions are given in Section 6.


## 2. The Original ABC Algorithm

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 isd-dimension, the position of the ith food source (solution) can be expressed as a d-dimension vector xi=(xi,1,xi,2,…,xi,d), i=1,2,…,Sn, Sn is the number of food sources. The detail of the orginal ABC algorithm is given as follows.At the initialization stage, a set of food source positions is randomly selected by the bees as in (1) and their nectar amounts are determined:
(1)xij=x_j+rand(0,1)*(x¯j-x_j),
where i∈{1,2,…,Sn}, j∈{1,2,…,d}, x_j and x¯j are the lower bound and upper bound of the jth dimension, respectively.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:(2)Pi=fit(xi)∑i=1Snfit(xi),
where fit(xi) is the nectar amount of the ith food source and it is associated with the objective function value f(xi) of the ith food source. Once a food source xi is selected, she utilizes (3) to produce a modification on the position (solution) in her memory and checks the nectar amount of the candidate source (solution)
(3)xij′=xij+ψ*(xij-xkj),
where i,k∈{1,2,…,Sn}, k≠i, xij′ is a new feasible solution that produced from its previous solution xij and the randomly selected neighboring solution xkj; ψ is a random number between [-1,1], which controls the production of a neighbor food source position around xij; j and k are randomly chosen indexes. In each iteration, only one dimension of each position is changed. Providing that its nectar is higher than that of the previous one, the bee memorizes the new position and forgets the old one.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.


## 3. Particle Swarm Optimization (PSO)

As a swarm-based stochastic optimization method, the PSO algorithm was developed by Kennedy and Eberhart [19], which is based on social behavior of bird flocking or fish schooling. The original PSO maintains a population of particles xi=(xi,1,xi,2,…,xi,d), i=1,2,…,Sn which distribute uniformly around search space at first. Each particle represents a potential solution to an optimization problem. After randomly produced solutions are assigned to the particles, velocities of the particles are updated by using self-best solution of the particle obtained previous in iterations and global best solution obtained by the particles so far at each iteration. This is formulated as follows:
(4)vij(k+1)=vij(k)+c1*r1*[pi,jbest(k)-xij(k)]+c2*r2*[gjbest(k)-xij(k)],
where vi(k+1)(-vmax⁡≤vi(k+1)≤vmax⁡) which represents the rate of the position change for the particle; xij(k) is the ith particle in jth dimension at step k; vij(k) is the velocity of the ith particle in jth dimension at step k; pi,jbest is the personal best position of the ith particle in jth dimension at time step k; gbest is the global best position obtained by the population at step k; c1 and c2 are the positive acceleration constants used to scale the contribution of cognitive and social components, respectively; r1 and r2 which are stochastic elements of the algorithm are random numbers in the range [0,1]. For each particle i, Kennedy and Eberhart [19] proposed that the position xi can be updated in the following manner:
(5)xij(k+1)=xij(k)+vij(k+1).
Considering the minimization problem, the personal best solution of the particle at the next step k+1 is calculated as
(6)pibest(k+1)={pibest(k),iff(xi(k+1))≥f(pibest(k)),xi(k+1),iff(xi(k+1))<f(pibest(k)).
The global best position gbest is determined by using (7) (Sn is the number of the particles):
(7)gbest=min⁡{f(pibest)},i=1,2,…,Sn,
where f is the objective function.In (4), to control the exploration and exploitation abilities of the swarm, Shi and Eberhart proposed a new parameter called as “inertia weight ω” [20]. The inertia weight controls the momentum of the particle by weighing the contribution of the previous velocity. By adding the inertia weight ω, (4) is changed
(8)vij(k+1)=ω*vij(k)+c1*r1*[pi,jbest(k)-xij(k)]+c2*r2*[gjbest(k)-xij(k)].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.


## 4. Hybrid Approach (ABC-PS)

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.


### 4.1. Background on Good Point Set

LetGd be d-dimensional unit cube in Euclidean space. If x¯=(x1,x2,…,xd)∈Gd, then 0≤xi≤1(i=1,2,…,d). Let pn(k) be a set of n points in Gd; then pn(k)={(x1(n)(k),…,xd(n)(k))∣0≤xi(n)(k)≤1,1≤k≤n,1≤i≤d}. Let r¯=(r1,r2,…,rd) be a point in Gd, for Nn(r¯)=Nn(r1,r2,…,rd) denoted the number of points in pn(k) which content with 0≤xi(n)(k)≤ri, i=1,…,d.Definition 1.
Letφ(n)=sup⁡r∈Gd|(Nn(r)/n)-|r||, |r|=r1r2⋯rd; then φ(n) is called discrepancy of point set pn(k).Definition 2.
Letx¯∈Gd; if pn(k)=(r1(n)*k,…,rD(n)*k), (k=1,…,n) has discrepancy φ(n), φ(n)=c(r,ϵ)n(-1+ϵ), where c(r,ϵ) is constant only relate with r,ϵ(ϵ>0), then pn(k) is called good point set and r¯ is called good point.Remark 3.
If letri=2cos⁡(2πi/p), 1≤i≤d, where p is the minimum prime number content with (p-3)/2≥d, then r¯ is a good point. If let ri=ei, 1≤i≤d, r¯ is a good point also.Theorem 4.
Ifpn(k)(1≤k≤n) has discrepancy φ(n), f∈Bd, then
(9)|∫x∈Gd‍f(x)dx-∑‍f(pn(i))n|≤v(f)φ(n),
where Bd is a d-dimensional Banach space of functions f with norm ∥•∥, v(f)=∥f-u∥ measures the variability of the function f.Theorem 5.
For arbitraryf∈Bd, if (9) holds, then one has point pn(k)(1≤k≤n), in which discrepancy is not more than φ(n).Theorem 6.
Iff(x) content with |∂f/∂xi|≤L, 1≤i≤d, |∂2f/∂xi∂xj|≤L, 1≤i≤j≤d,…,|∂df/∂x1⋯∂xd|≤L, where L is an absolute constant, when we want to estimate the integral of a function f over the d-dimensional unit hypercube Gd, namely u=∫x∈Gd‍f(x)dx, by the average value off over any point set pn(k)(1≤k≤n), Qn=∑‍(f(pn(i))/n), then the integration error En=u-Qn is not smaller than o(n-1).By Theorems4–6, it can be seen that if we estimate the integral based on good point set, the degree of discrepancy φ(n)=c(r,ϵ)n-1+ϵ is only related with n. This is a good idea for high dimensional approximation computation. In other words, the idea of good point set is to take the point set more evenly than random point.For thed-dimensional local search space H, the so-called good point set which contains n points can be found as follows:
(10)pn(k)={({r1*k},{r2*k},…,{rd*k}),k=1,…,n},
where ri=2cos⁡(2πi/ρ), 1≤i≤d, ρ is the minimum prime number which content with ρ≥2d+3, and {ri*k} is the decimal fraction of ri*k (or with ri=ei, 1≤i≤d). Since good point set principle is based on unit hypercube or hypersphere, in order to map n good points from space H:[0,1]d to the search space T:[x_,x¯]d, we define the following transformation:
(11)xi=x_i+{ri*k}*(x¯i-x_i).In the following, for two-dimensional space[-1,1], we generate 100 points by using goog point set method and random method, respectively, and give the distribution effect of them (see Figures 1 and 2). It can be seen that good point set is uniform, and as long as the sampling number is certain, the income distribution effect is the same at every time; so good point set method has good stability.Figure 1
100 points by using goog point set method.Figure 2
100 points by using random method.


### 4.2. Chaotic Search Operation

In our algorithm, assume thatgbest is the best solution of the current iteration. To enrich the searching behavior in gbest and to avoid being trapped into local optimum, chaotic dynamics is incorporated into our algorithm and the detail is given as follows. Firstly, the well-known logistic equation is employed to generate a chaotic sequence, which is defined as follows:
(12)chi+1=4*chi*(1-chi),1≤i≤K,
where K is the length of chaotic sequence. Then map chi to a chaotic vector in the interval [x_,x¯]:
(13)CHi=x_+chi*(x¯-x_),i=1,…,K,
where x_ and x¯ are the lower bound and upper bound of variable x, respectively. Finally, adopt the following equation to generate the new candidate solution x^:
(14)x^=(1-λ)*gbest+λ*CHi,i=1,…,K,
where λ is the shrinking factor, which is defined as follows:
(15)λ=maxcycle-iter+1maxcycle,
where maxcycle is the maximum number of iterations and iter is the number of current iteration.By (15), it can be seen that λ will become small with the evolution generations increasing. Furthermore, combing (13), it is easy to see that λ is smaller, less chaotic search is needed. Thus, from the above discussion, we know that the local search range becomes smaller with the process of evolution.


### 4.3. The Statement of ABC-PS Algorithm

Based on the above, the ABC-PC algorithm is given in this subsection.Algorithm 7.
(1)
Set the population sizeSn, give the maximum number of iteration maxcycle, wmax⁡, wmin⁡, vmax⁡, and vmin⁡.
(2)
Use (11) to creat an initial population {xi∣i=1,…,Sn}. Calculatethe function value of the population {fi∣i=1,…,Sn}, find the best solution gbest and the personal bests of the population pibest.
(3)
While the stopping criterion is not meet do
(4)
Fori=1 to Sn do %the employed bee phase
(5)
Update the velocities of the particles and the positions of the particlesby using (8) and (5), respectively.
(6)
Determine personal bests of the particles by using (6), and update trail.
(7)
End if
(8)
Determine thegbest of the population.
(9)
End for
(10)
Fori=1 to Sn do %the onlooker phase
(11)
Ifrand<Prob(i)
(12)
Update the velocity of the food sourcei and its the position by using (8) and (5).
(13)
Determine personal bests of the particles by using (6), and update trail.
(14)
End if
(15)
Iftraili=max⁡(trail)>limit, then %the scout phase replace xi with a new solution produced by (2).
(16)
End if
(17)
Determine thegbest of the population.
(18)
Chaotic searchK times in gbest, and redetermine the gbest of the population.
(19)
iter
=
iter
+
1.
(20)
End while


## 4.1. Background on Good Point Set

LetGd be d-dimensional unit cube in Euclidean space. If x¯=(x1,x2,…,xd)∈Gd, then 0≤xi≤1(i=1,2,…,d). Let pn(k) be a set of n points in Gd; then pn(k)={(x1(n)(k),…,xd(n)(k))∣0≤xi(n)(k)≤1,1≤k≤n,1≤i≤d}. Let r¯=(r1,r2,…,rd) be a point in Gd, for Nn(r¯)=Nn(r1,r2,…,rd) denoted the number of points in pn(k) which content with 0≤xi(n)(k)≤ri, i=1,…,d.Definition 1.
Letφ(n)=sup⁡r∈Gd|(Nn(r)/n)-|r||, |r|=r1r2⋯rd; then φ(n) is called discrepancy of point set pn(k).Definition 2.
Letx¯∈Gd; if pn(k)=(r1(n)*k,…,rD(n)*k), (k=1,…,n) has discrepancy φ(n), φ(n)=c(r,ϵ)n(-1+ϵ), where c(r,ϵ) is constant only relate with r,ϵ(ϵ>0), then pn(k) is called good point set and r¯ is called good point.Remark 3.
If letri=2cos⁡(2πi/p), 1≤i≤d, where p is the minimum prime number content with (p-3)/2≥d, then r¯ is a good point. If let ri=ei, 1≤i≤d, r¯ is a good point also.Theorem 4.
Ifpn(k)(1≤k≤n) has discrepancy φ(n), f∈Bd, then
(9)|∫x∈Gd‍f(x)dx-∑‍f(pn(i))n|≤v(f)φ(n),
where Bd is a d-dimensional Banach space of functions f with norm ∥•∥, v(f)=∥f-u∥ measures the variability of the function f.Theorem 5.
For arbitraryf∈Bd, if (9) holds, then one has point pn(k)(1≤k≤n), in which discrepancy is not more than φ(n).Theorem 6.
Iff(x) content with |∂f/∂xi|≤L, 1≤i≤d, |∂2f/∂xi∂xj|≤L, 1≤i≤j≤d,…,|∂df/∂x1⋯∂xd|≤L, where L is an absolute constant, when we want to estimate the integral of a function f over the d-dimensional unit hypercube Gd, namely u=∫x∈Gd‍f(x)dx, by the average value off over any point set pn(k)(1≤k≤n), Qn=∑‍(f(pn(i))/n), then the integration error En=u-Qn is not smaller than o(n-1).By Theorems4–6, it can be seen that if we estimate the integral based on good point set, the degree of discrepancy φ(n)=c(r,ϵ)n-1+ϵ is only related with n. This is a good idea for high dimensional approximation computation. In other words, the idea of good point set is to take the point set more evenly than random point.For thed-dimensional local search space H, the so-called good point set which contains n points can be found as follows:
(10)pn(k)={({r1*k},{r2*k},…,{rd*k}),k=1,…,n},
where ri=2cos⁡(2πi/ρ), 1≤i≤d, ρ is the minimum prime number which content with ρ≥2d+3, and {ri*k} is the decimal fraction of ri*k (or with ri=ei, 1≤i≤d). Since good point set principle is based on unit hypercube or hypersphere, in order to map n good points from space H:[0,1]d to the search space T:[x_,x¯]d, we define the following transformation:
(11)xi=x_i+{ri*k}*(x¯i-x_i).In the following, for two-dimensional space[-1,1], we generate 100 points by using goog point set method and random method, respectively, and give the distribution effect of them (see Figures 1 and 2). It can be seen that good point set is uniform, and as long as the sampling number is certain, the income distribution effect is the same at every time; so good point set method has good stability.Figure 1
100 points by using goog point set method.Figure 2
100 points by using random method.


## 4.2. Chaotic Search Operation

In our algorithm, assume thatgbest is the best solution of the current iteration. To enrich the searching behavior in gbest and to avoid being trapped into local optimum, chaotic dynamics is incorporated into our algorithm and the detail is given as follows. Firstly, the well-known logistic equation is employed to generate a chaotic sequence, which is defined as follows:
(12)chi+1=4*chi*(1-chi),1≤i≤K,
where K is the length of chaotic sequence. Then map chi to a chaotic vector in the interval [x_,x¯]:
(13)CHi=x_+chi*(x¯-x_),i=1,…,K,
where x_ and x¯ are the lower bound and upper bound of variable x, respectively. Finally, adopt the following equation to generate the new candidate solution x^:
(14)x^=(1-λ)*gbest+λ*CHi,i=1,…,K,
where λ is the shrinking factor, which is defined as follows:
(15)λ=maxcycle-iter+1maxcycle,
where maxcycle is the maximum number of iterations and iter is the number of current iteration.By (15), it can be seen that λ will become small with the evolution generations increasing. Furthermore, combing (13), it is easy to see that λ is smaller, less chaotic search is needed. Thus, from the above discussion, we know that the local search range becomes smaller with the process of evolution.


## 4.3. The Statement of ABC-PS Algorithm

Based on the above, the ABC-PC algorithm is given in this subsection.Algorithm 7.
(1)
Set the population sizeSn, give the maximum number of iteration maxcycle, wmax⁡, wmin⁡, vmax⁡, and vmin⁡.
(2)
Use (11) to creat an initial population {xi∣i=1,…,Sn}. Calculatethe function value of the population {fi∣i=1,…,Sn}, find the best solution gbest and the personal bests of the population pibest.
(3)
While the stopping criterion is not meet do
(4)
Fori=1 to Sn do %the employed bee phase
(5)
Update the velocities of the particles and the positions of the particlesby using (8) and (5), respectively.
(6)
Determine personal bests of the particles by using (6), and update trail.
(7)
End if
(8)
Determine thegbest of the population.
(9)
End for
(10)
Fori=1 to Sn do %the onlooker phase
(11)
Ifrand<Prob(i)
(12)
Update the velocity of the food sourcei and its the position by using (8) and (5).
(13)
Determine personal bests of the particles by using (6), and update trail.
(14)
End if
(15)
Iftraili=max⁡(trail)>limit, then %the scout phase replace xi with a new solution produced by (2).
(16)
End if
(17)
Determine thegbest of the population.
(18)
Chaotic searchK times in gbest, and redetermine the gbest of the population.
(19)
iter
=
iter
+
1.
(20)
End while


## 5. Comparison of the ABC-PS with the Other Hybrid Methods Based on the ABC

In this section, ABC-PS is applied to minimize a set of benchmark functions. In all simulations, the inertia weight in (4) is defined as follows:
(16)ω=ωmax⁡-ωmin⁡maxcycle*iter,
where ωmax⁡ and ωmin⁡ are the maximum inertia weight and minimum weight, respectively, iter denotes the times of current iteration. From the above formula, it can be seen that, with the iteration increasing, the velocity vi of the particle xi becomes important more and more. ωmax⁡ and ωmin⁡ are set to 0.9 and 0.4, respectively. vmin⁡=-1, vmax⁡=1, and c1=c2=1.3.Experiment 1.
In order to evaluate the performance of ABC-PS algorithm, we have used a test bed of four traditional numerical benchmarks as illustrated in Table1, which include Matyas, Booth, 6 Hump Camelback, and GoldsteinCPrice functions. The characteristics, dimensions, initial range, and formulations of these functions are given in Table 1. Empirical results of the proposed hybrid method have been compared with results obtained with that of basic ABC algorithm and a latest algorithm COABC [15].
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 Table2. For ABC and ABC-PS, Figures 3, 4, 5, and 6 illustrate the change of the best value of each iteration. The experiment shows that the ABC-PS method is much better than the initial ABC algorithm and COABC.Table 1
Benchmark functions used in Experiment1.
Functions
C
Range
f
1
=
0.26
(
x
1
2
+
x
2
2
)
-
0.48
x
1
x
2
UN
[−10, 10]
f
2
=
(
x
1
+
2
x
2
-
7
)
2
+
(
2
x
1
+
x
2
-
5
)
2
MS
[−10, 10]
f
3
=
4
x
1
2
-
2.1
x
1
4
+
x
1
6
/
3
+
x
1
x
2
-
4
x
2
2
+
4
x
2
4
MN
[−5, 5]
f
4
=
[
1
+
(
x
1
+
x
2
+
1
)
2
(
19
-
14
x
1
+
3
x
1
2
-
14
x
2
+
6
x
1
x
2
+
3
x
2
2
)
]
MN
[−2, 2]
*[30+(2x1-3x2)2(18-32x1+12x12+48x2-36x1x2+27x22)]
C: characteristic; U: unimodal; M: multimodal; N: nonseparable; S: separable.Table 2
Results obtained by ABC, COABC, and ABC-PS algorithms.
Function
Min
Max iteration
Algorithm
Mean
SD
f
1
0
1000
ABC
6.03
e
-
07
3.64
e
-
07
COABC
4.45
e
-
07
4.63
e
-
07
ABC-PS
0
0
f
2
0
1000
ABC
1.68
e
-
17
1.38
e
-
17
COABC
6.19
e
-
23
2.06
e
-
22
ABC-PS
0
0
f
3
−1.03
1000
ABC
-
1.03
7.20
e
-
17
COABC
-
1.03
1.76
e
-
16
ABC-PS
-
1.03162845348988
0
f
4
3
1000
ABC
3
1.47
e
-
3
COABC
3
3.21
e
-
06
ABC-PS
2.99999999999992
6.28
e
-
16Figure 3
The relation of the best value and each iteration (the function Matyas).Figure 4
The relation of the best value and each iteration (the function Booth).Figure 5
The relation of the best value and each iteration (the function Camelback).Figure 6
The relation of the best value and each iteration (the function Goldstein).Experiment 2.
To further verify the performance of ABC-PS, 12 numerical benchmark functions are selected from the literatures [13–15]. This set consists of many different kinds of problems such as unimodal, multimodal, regular, irregular, separable, nonseparable, and multidimensional. The characteristics, dimensions, initial range, and formulations of these functions are listed in Table 3.
In order to fairly compare the performance of ABC-PS, COAB, GABC [13], and PABC [14], the experiments are conducted the same way as described [13–15]. The minimums, max iterations, mean best values, and standard deviations found after 30 runs are given in Table 4. The bold font in Table 4 is the optimum value among different methods. From Table 4, it can be see that the method ABC-PS is superior to other algorithms in most cases, expect to f5 and f6.Table 3
Benchmark functions used in Experiment2.
Functions
C
D
Range
f
1
=
0.26
(
x
1
2
+
x
2
2
)
-
0.48
x
1
x
2
UN
2
[
-
10,10
]
f
2
=
∑
i
=
1
n
-
1
‍
[
100
(
x
i
+
1
-
x
i
2
)
2
+
(
x
i
-
1
)
2
]
UN
30
[
-
30,30
]
f
3
=
4
x
1
2
-
2.1
*
x
1
4
+
x
1
6
3
+
x
1
x
2
-
4
x
2
2
+
4
x
2
4
MN
2
[
-
5,5
]
f
4
=
-
20
exp
⁡
(
-
0.2
*
∑
i
=
1
n
‍
x
i
2
n
)
-
exp
⁡
(
∑
i
=
1
n
‍
cos
⁡
(
2
Π
x
i
n
)
)
+
20
+
e
MN
60
[
-
32,32
]
f
5
=
1
4000
∑
i
=
1
n
‍
x
i
2
-
∏
i
=
1
n
‍
cos
⁡
(
x
i
i
)
+
1
MN
60
[
-
600,600
]
f
6
=
418.982887
*
n
-
∑
i
=
1
n
‍
(
x
i
sin
⁡
(
|
x
i
|
)
)
MN
30
[
-
500,500
]
f
7
=
100
(
x
1
2
-
x
2
)
2
+
(
x
1
-
1
)
2
+
(
x
3
-
1
)
2
+
90
(
x
3
2
-
x
4
)
2
UN
4
[
-
10,10
]
+10.1((x2-1)2+(x4-1)2)+19.8(x2-1)(x4-1)
f
8
=
∑
i
=
1
n
‍
|
x
i
|
i
+
1
US
30
[
-
1,1
]
f
9
=
∑
i
=
1
n
‍
|
x
i
|
+
∏
i
=
1
n
‍
|
x
i
|
US
60
[
-
10,10
]
f
10
=
max
⁡
{
|
x
i
|
∣
1
≤
i
≤
n
}
US
60
[
-
100,100
]
f
11
=
1
n
∑
i
=
1
n
‍
(
x
i
4
-
16
x
i
2
+
5
x
i
)
MS
60
[
-
5,5
]
f
12
=
∑
i
=
1
n
‍
(
x
i
2
-
10
cos
⁡
(
2
π
x
i
)
+
10
)
MS
60
[
-
5.12,5.12
]
C: characteristic; U: unimodal; M: multimodal; N: nonseparable; S: separable.Table 4
ABC-PS performance comparison of ABC and the state-of-art algorithms in [13–15].
Function
Min
Max iteration
Algorithm
Mean
SD
f
1
0
1000
ABC
6.03
e
-
07
3.64
e
-
07
COABC (with UTEB = 3)
1.42
e
-
152
4.44
e
-
152
ABC-PS
0
0
f
2
0
2000
ABC
0.24
0.46
COABC (with UTEB = 3)
0.08
0.10
ABC-PS
5.494
e
-
18
0
f
3
-
1.03
1000
ABC
-
1.03
7.20
e
-
17
COABC (with UTEB = 3)
-
1.03
2.10
e
-
16
ABC-PS
-
1.03162845348988
0
f
4
0
1000
ABC
3
1.47
e
-
3
COABC (with UTEB = 3)
3.40
e
-
13
6.35
e
-
14
ABC-PS
8.881
e
-
016
0
f
5
0
2000
ABC
4.46
e
-
09
6.68
e
-
09
COABC (with UTEB = 3)
0
0
ABC-PS
1.551
e
-
012
3.468
e
-
012
f
6
0
1000
ABC
2.05
e
+
02
1.63
e
+
02
COABC (with UTEB = 3)
0
0
ABC-PS
-
3.637
e
-
012
0
f
7
0
2000
ABC
1.71
e
-
01
6.94
e
-
02
COABC (with UTEB = 3)
9.35
e
-
03
4.64
e
-
03
ABC-PS
8.042
e
-
07
3.680
e
-
07
f
8
0
1000
ABC
7.69
e
-
22
2.18
e
-
21
PABC
4.46
e
-
61
1.09
e
-
60
ABC-PS
8.344
e
-
067
1.865
e
-
066
f
9
0
1000
GABC
4.73
e
-
13
1.56
e
-
13
PABC
1.65
e
-
18
1.63
e
-
18
ABC-PS
2.494
e
-
018
3.734
e
-
018
f
10
0
1000
GABC
6.38
e
-
01
1.75
e
-
01
PABC
8.82
e
-
01
1.26
e
-
01
ABC-PS
2.50
e
-
006
3.01
e
-
006
f
11
-
78.33236
1000
GABC
-
78.3322
1.32
e
-
05
PABC
-
78.3323
2.62
e
-
14
ABC-PS
-
78.33233
1.004
e
-
014
f
12
0
1000
GABC
9.35
e
-
01
1.87
e
-
00
PABC
9.58
e
-
03
6.27
e
-
03
ABC-PS
0
0


## 6. Conclusion

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.



---

*Source: 832949-2014-10-28.xml*