Scientific Programming

Volume 2018, Article ID 2767546, 9 pages

https://doi.org/10.1155/2018/2767546

## An Artificial Bee Colony Algorithm with Random Location Updating

^{1}School of Electrical Engineering, Henan University of Technology, Zhengzhou, Henan 450001, China^{2}College of Computer and Communication Engineering, Zhengzhou University of Light Industry, Zhengzhou, Henan 450002, China

Correspondence should be addressed to Tianfei Chen; moc.361@iefnait_nehc

Received 8 April 2018; Accepted 11 July 2018; Published 1 August 2018

Academic Editor: Ricardo Soto

Copyright © 2018 Lijun Sun et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

#### Abstract

As a novel swarm intelligence algorithm, artificial bee colony (ABC) algorithm inspired by individual division of labor and information exchange during the process of honey collection has advantage of simple structure, less control parameters, and excellent performance characteristics and can be applied to neural network, parameter optimization, and so on. In order to further improve the exploration ability of ABC, an artificial bee colony algorithm with random location updating (RABC) is proposed in this paper, and the modified search equation takes a random location in swarm as a search center, which can expand the search range of new solution. In addition, the chaos is used to initialize the swarm population, and diversity of initial population is improved. Then, the tournament selection strategy is adopted to maintain the population diversity in the evolutionary process. Through the simulation experiment on a suite of unconstrained benchmark functions, the results show that the proposed algorithm not only has stronger exploration ability but also has better effect on convergence speed and optimization precision, and it can keep good robustness and validity with the increase of dimension.

#### 1. Introduction

Many important problems require optimization, including the traveling salesman problem, job shop scheduling, and neural network training [1]. The existing algorithms such as genetic algorithm (GA), evolutionary computation (EC), and particle swarm optimization (PSO) are the simulation of intelligence from the perspective of biological evolution to solve optimization problems [2]. Artificial bee colony (ABC) algorithm is a new kind of swarm intelligence algorithm proposed by Karaboga and Basturk [3]; it simulates the intelligent behavior of honey bees, and bees carry out different nectar collecting activities according to their respective division of labor to realize the sharing and exchange of information source. Because of its simple structure, less parameters, and easy implementation, it has received extensive attention and research from many scholars. At present, ABC algorithm has been successfully applied in many fields, such as neural network [4], filter design [5], parameter optimization [6], and combinatorial optimization [7]. Similar to other swarm intelligence algorithms, the ABC algorithm also suffers from defect of early maturity. For this reason, some scholars use chaos to initialize population to improve the diversity and the ergodicity of swarm [8, 9]. In [10, 11], the selection mechanism of bidding match and ranking is put forward to reduce the influence of super-individuals in the population so as to avoid early maturity. In order to make the algorithm jump out of a local extremum, the mutation operators are usually integrated into the ABC algorithm. The commonly used mutation operators include Gauss mutation [12], Cauchy mutation [13], and differential evolution mutation [14]. Rajasekhar et al. [15] makes full use of Lévy distribution which has normal distribution and Cauchy distribution characteristics, and an improved ABC algorithm based on Lévy mutation is put forward.

As to further improve the performance of ABC algorithm, some scholars integrate the ABC algorithm and other intelligent optimization algorithms, and some improved hybrid optimization algorithms are proposed. Kıran and Gündüz [16] proposed a hybrid optimization algorithm based on particle swarm optimization (PSO) and ABC algorithm. A hybrid algorithm combining ABC algorithm and quantum evolution is presented by Duan to solve the continuous optimization problem [17]. Chen et al. [18] integrated a simulated annealing operator to ABC algorithm, which can improve the exploitation ability of the algorithm. Although ABC algorithm has better exploration ability, the exploitation ability is insufficient and the local search ability is weak. Zhu and Kwong [19] proposed a global best- (gbest-) guided ABC by incorporating the information of the gbest solution into the solution search equation of ABC to improve the exploitation. Because the Nelder–Mead simplex search (NMSS) mechanism is a local descent algorithm, Kang et al. [20] combined NMSS and ABC, and a hybrid simplex ABC algorithm is presented. The Rosenbrock ABC algorithm is proposed, which takes the Rosenbrock method as a local exploitation operator [21]. Gao et al. [22] used the traditional Powell method as a local search operator and combined it with ABC, which can complement the exploration ability of the Powell method and the exploitation ability of ABC, thus the performance of the algorithm is improved.

In this paper, an artificial bee colony algorithm with random location updating (RABC) is proposed, the basic search equation is modified, which can expand the search range of new solution and further improve the exploration ability of ABC algorithm. Numerical simulation experiments are carried on some benchmark functions, and the results demonstrate the effectiveness of RABC. The rest of this paper is organized as follows. In Section 2, the basic ABC algorithm is presented. In Section 3, the RABC algorithm is introduced in detail. Section 4 presents and discusses the experimental results. Finally, the conclusion is drawn is Section 5.

#### 2. ABC Algorithm

##### 2.1. Behavior Description of Bee Swarm

Bees in nature have three different roles while gathering nectar; they are, respectively, employed bees, onlooker bees, and scout bees. The three kinds of bees cooperate with each other to accomplish nectar collection. In addition, the basic behavior of bees can be divided into two categories, which are the recruitment of bees for food sources and the abandonment of a food source.

Food sources are equivalent to locations of solution in the optimization problem, and the quality of the food source is expressed by a fitness value. The primary task of the employed bees and the scout bees is to explore and exploit food sources. After watching the waggle dance of employed bees, onlooker bees determine the yield of the food source through the intensity and duration of the waggle dance and then choose the food source to collect nectar based on the yield, and the scout bees are randomly searching for food sources near the hive. The bees that have already found food sources are called the employed bees. The employed bees store some information about food sources; they match food sources one to one and share the information with other bees at certain probability. The number of the employed bees is the same as that of the onlooker bees, and the scout bee is only one.

The search process for food sources consists of three steps: (1) the employed bees find food sources and record the amount of nectar; (2) according to the nectar information provided by the employed bees, the onlooker bees select the food source to collect nectar; and (3) the scout bees are determined to search for new food sources.

##### 2.2. Description of ABC

Inspired by the bee swarm intelligent behavior of gathering nectar in nature, ABC algorithm is proposed by Karaboga. In the ABC algorithm, the complete search range of bee swarm represents the solution space of optimization problem. A location of a random food source corresponds to a stochastic solution of the optimization problem, and the nectar quantity of the food source represents the fitness value, which is used to describe quality of solutions. Therefore, the gathering nectar process is also the process of searching for the optimal solution.

Considering the global optimization problem , the size of food sources is set as SN, and the food source represents a candidate solution; , and *D* is the dimension of the optimization problem. First, the ABC algorithm generates an initial population containing SN solutions; the bee swarm searches all food source circularly, and the number of cycles is *C* (). Eventually, the optimal solution can be found. The search process includes three phases, which are depicted in detail as follows:(i)Employed Bees Phase

In this phase, each employed bee corresponds to the current food source **X**_{i}, and a new food source can be generated by using the search equation; the search equation is expressed as follows:where is a uniform random number in [−1, 1] and is the randomly chosen indices and *k* ≠ *i*. indicates a random selection dimension. If the fitness of the new solution **V**_{i} is better, the original solution is replaced by the new solution; otherwise, the original solution will be retained.(ii)Onlooker Bees Phase

After all the employed bees have completed the search process, they will share the information of food sources with the onlooker bees in the dance area, and the onlooker bees will calculate the probability of each solution according to the following formula:where fit_{i} is the fitness value of the solution *i*. A random number is generated in [0, 1]. If the probability of the solution *p*_{i} is greater than the random number, then the onlooker bee will generate a new solution by (1), and the fitness value of the new solution is calculated. If the new solution is better, the original solution is replaced; otherwise, the original solution is reserved. It can be seen that the better the fitness of the food source is, the higher the probability onlooker bees select.(iii)Scout Bees Phase

If a position cannot be improved further through a predetermined number of cycles *limit*, it indicates that the food source has been exhausted and then that food source is assumed to be abandoned. The current employed bee becomes the scout bee, and the scout bee will produce a new food source to replace the old one according to following formula:where are the upper and lower bounds for the dimension *j*, respectively.

The above three phases will be repeated until the maximum iteration number MCN or the allowable value of error *ε* is achieved.

The fitness function is used to measure nectar quality of solutions in ABC algorithm, and it is selected corresponding to optimization problem. If the optimization problem is to find the minimum value, the fitness function is deformation of the objective function , and it is expressed as follows:

If the optimization problem is to find the maximum value, the fitness function is the objective function.

The greedy selection is performed in ABC algorithm, where

#### 3. ABC with Random Location Updating

##### 3.1. Search Range Analysis and Modified Search Equation

In ABC, the bee swarm relies on the information sharing among individuals to explore new food sources, and the algorithm has stronger randomness, so it is generally recognized that it has better global search ability. Therefore, some scholars have carried out research on how to improve the local search ability of ABC algorithm. The representative work is the global best- (gbest-) guided ABC proposed by Zhu (GABC). It is inspired by the particle swarm algorithm, and a search operator guided by the best solution is introduced to improve the exploit ability of the algorithm. Thus, the search equation is expressed as follow:where the parameter is the uniformly random number distributed in [0, *C*] and *C* is the nonnegative constant. Generally, it is set to 2.

However, the main purpose of this paper is to further improve the global search ability of ABC algorithm and accelerate the convergence speed. In order to directly analyze the location of the new food source, the search range is analyzed taking the two-dimensional plane space as an example. As shown in Figure 1, in the plane coordinate system O-*XY*, the coordinates of points A, B, and C are respectively (1,0), (3,1), and (0,2). We take the point A as the current food source, and according to the basic search (1) in ABC, the search range defined by the points A and B is represented by the blue area, and the search range defined by the points A and C is represented by the orange area. The two search area overlaps, and yellow indicates the overlap area. From Figure 1, although the ABC has good global search ability and the search region is relatively large, the main areas are still concentrated near the current food source, and repeated search exists in the neighborhood of current food source. Especially, in the later evolution stage of the algorithm, it is easy to fall into local extremum and lead to the premature convergence.