a local optimum. To solve this problem, we propose
a hybrid DE based on the ABC algorithm. In our
proposed hybrid, we use the crossover and mutation
principles of EA to enhance the neighborhood search
of ABC.
The major difference between DE and ABC
is how new individuals are generated. The new
individuals generated during each generation are
known as offsprings. The basic idea of HIDEABC
is to combine the SI capacity of ABC with the local
search capability of DE. In order to combine these
algorithms, HIDEABC is proposed as follows. To
generate new individuals in ABC, we use equations
(9) to (13), depending on the mutation scheme, while
equation (18) is used for DE crossover to enhance the
neighborhood search of employed bees and onlooker
bees.
The main steps of the HIDEABC algorithm are as fol-
low:
• Step 1: In the first step, HIDEABC generates a
randomly distributed initial population P(G = 0)
of SN solutions (food source positions), where SN
denotes the size of the food source. Each so-
lution (food source) x
i
(i = 1,2, ..., SN) is a D-
dimensional vector, where D is the number of op-
timization parameters.
• Step 2: Send the employed bee to the food sources
and calculate their nectar amounts, before a new
food source is found.
In this process, the modification strategy uses the
classical mutation and crossover components of
the DE algorithm. This operation also improves
the convergence speed and increases the diver-
sity of the ABC population. We use equations (9)
to (13), depending on the mutation method, with
eq(14) for crossover.
• Step 3: An onlooker bee chooses a food source
depending on the probability value associated
with that food source, p
i
: equation (7)
• Step 4: Send the onlooker bees to the food
sources and determine their nectar amounts. Each
onlooker evaluates the nectar information from all
employed bees and selects a food source depend-
ing on the nectar amount available at the sources.
The employed bee modifies the source position in
her memory and checks its nectar amount. Pro-
vided that the nectar level is higher than that of
the previous level, the bee memorizes the new po-
sition and forgets the old position.
Use equations (9) to (13), depending on the muta-
tion method with equation (14) for crossover.
• Step 5: A food source that is abandoned by bees
is replaced with a new food source by the scouts.
If a position cannot be improved further during a
predetermined number of cycles limit, then that
food source is assumed to be abandoned.
• Step 6: Send the scouts to the search area ran-
domly to discover new food sources using equa-
tion (17).
• Step 7: Memorize the best food source found so
far in the global best memory.
• Repeat: Steps 2 to 7 until the terminal require-
ments are met.
Algorithm 3: HIDEABC Algorithm.
Requirements: Max Cycles, number of particles NP,
limit, crossover constant CR, and scaling factor F.
Begin
1: Initialize the food source positions
x
G=0
ij
= lb
j
+ rand
j
∗(ub
j
−lb
j
) (17)
where rand
j
is a random number in [0,1].
2: Evaluate the food sources
3: Cycle = 1
4: while (Cycle ≤ Max
cycle) do
5: Produce new solutions using employed bees
Mutation process: Use equations (9) to (13), depend-
ing on the mutation scheme, to generate v
G
i
Crossover process:
u
G
i, j
=
v
G
i, j
if rand
j
(0,1) ≤CR or j = j
rand
x
G
i, j
otherwise
x
G
i, j
+ ϕ
i, j
∗(x
G
i, j
−x
G
k, j
) if j = para2change
(18)
where i = 1,2,...,NP, j = 1,2,...,D, j
rand
and
para2change are randomly chosen integers from
[1,D], rand
j
(0, 1) is a uniformly distributed random
number between 0 and 1 generated for each j, and
CR ∈ [0, 1] is the crossover control parameter. Be-
cause of the use of j
rand
, the trial vector u
G
i
differs
from its target vector x
G
i
, and k ∈ {1,2,..,SN} is a
randomly chosen index [1,NP]. Although k is deter-
mined randomly, it should be different from i. ϕ
ij
is a
random number between [-1,1].
6: Evaluate the new solutions and apply a greedy se-
lection process using equation (15).
7: Calculate the probability values based on their fit-
ness values using equation (9).
8: Produce new solutions using onlooker bees; the
process of neighborhood search by onlooker bees is
the same as that used by employed bees.
9: Apply a greedy selection process to onlooker bees
using equation (15).
10: Determine the abandoned solutions and generate
new solutions randomly using scouts using equation
HybridIntegrationofDifferentialEvolutionwithArtificialBeeColonyforGlobalOptimization
19