Computational Intelligence and Neuroscience

Volume 2019, Article ID 5012313, 24 pages

https://doi.org/10.1155/2019/5012313

## A Transition Control Mechanism for Artificial Bee Colony (ABC) Algorithm

Department of Computer Engineering, Ondokuz Mayıs University, Samsun, Turkey

Correspondence should be addressed to Selcuk Aslan; rt.ude.umo.lib@nalsa.kucles

Received 12 December 2018; Revised 26 January 2019; Accepted 13 February 2019; Published 1 April 2019

Academic Editor: Juan Carlos Fernández

Copyright © 2019 Selcuk Aslan. 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

Artificial Bee Colony (ABC) algorithm inspired by the complex search and foraging behaviors of real honey bees is one of the most promising implementations of the Swarm Intelligence- (SI-) based optimization algorithms. Due to its robust and phase-divided structure, the ABC algorithm has been successfully applied to different types of optimization problems. However, some assumptions that are made with the purpose of reducing implementation difficulties about the sophisticated behaviours of employed, onlooker, and scout bees still require changes with the more literal procedures. In this study, the ABC algorithm and its well-known variants are powered by adding a new control mechanism in which the decision-making process of the employed bees managing transitions to the dance area is modeled. Experimental studies with different types of problems and analysis about the parallelization showed that the newly proposed approach significantly improved the qualities of the final solutions and convergence characteristics compared to the standard implementations of the ABC algorithms.

#### 1. Introduction

Some species especially those living as swarms, societies, or colonies perform complicated behaviours in foraging, feeding, and surviving. When the behaviour of a specific individual is analyzed, it is seen that the mentioned behaviour of the individual is so simple compared to the complete task and it requires obeying only fundamental rules [1–3]. This property of a swarm to do with the combination of simple tasks of individuals in an order has gained the researchers’ attention and various problem-solving techniques were proposed by utilizing bird, fish, wolf, and cat swarms or insect colonies including ants, termites, and bees [4–6].

The ABC algorithm that mimics the food foraging behaviours of real honey bee colonies is one of the most innovative and efficient contributions to the nature-inspired optimization algorithms [4, 5, 7]. At the beginning, the ABC algorithm was proposed for solving constrained and unconstrained numerical optimization problems, but it has been successfully applied to the combinatorial optimization problems in recent years. Although the ABC algorithm was capable of handling different types of problems with the standard working schema of it and proved its superiority compared with other evolutionary computational techniques, researchers from various fields presented new approaches for the ABC algorithm in order to further increase the convergence performance and qualities of the final solutions [4, 5].

When the studies about the ABC algorithm are investigated, it can be seen that all of these studies are roughly classified into three groups. In the first group of the studies, the ABC algorithm is tried to be strengthened by modifying the existing models that are related to the generation of initial and candidate food sources or solutions, calculation of selection probabilities, and so on. Tsai et al. integrated the Newtonian law of universal gravitation into the onlooker bee phase of the ABC algorithm and proposed interaction ABC, IABC, algorithm [8]. Zhu and Kwong proposed gbest-guided ABC, GABC, algorithm in which the food sources chosen by the onlooker bees are modified with the corresponding parameters of the global best food source in addition to the parameters of the randomly determined food source [9]. Akay and Karaboga used a probabilistic model for deciding whether a parameter is changed or not in the original search equation of the standard ABC algorithm and analyzed the performance of the proposed ABC algorithm on solving high-dimensional unconstrained optimization problems and constrained engineering problems [10]. Gao et al. introduced two ABC algorithm variants named ABC/best/1 and ABC/best/2 [11]. For both ABC/best/1 and ABC/best/2, the best food source is used as a guide when an employed or onlooker is sent from hive to find a candidate solution [11]. Xiang and An modified initial food source generation schema of the standard ABC algorithm with chaotic initialization and changed the roulette wheel selection mechanism with a reverse roulette wheel-based selection mechanism in order to sustain population diversity [12]. Luo et al. changed the probabilistic selection approach of the onlooker bee phase and proposed a new ABC algorithm variant called converge-onlookers ABC, COABC, algorithm [13]. Each onlooker bee in the OABC algorithm is sent to the vicinity of the global best food source to further increase the exploitation characteristics of the ABC algorithm [13]. Gao et al. changed the search equation, parameter utilization, and determination procedure of the basic ABC algorithm and named this modified variant as the OCABC algorithm [14]. For the OCABC algorithm, an employed or an onlooker produces candidate solution by using two randomly chosen food sources rather than using only one random food source [14]. In addition to this major change, they used the test and prediction abilities of the orthogonal learning approach to identify the related parameters being changed for generating new candidates [14]. In another study, Gao et al. brought advantages of different search mechanisms and multipopulation techniques together and introduced a new ABC algorithm called the ILABC algorithm [15]. In the ILABC algorithm, search equations used in the employed and onlooker bee phases are changed and the whole colony is divided into small subcolonies [15]. For each subcolony, the search equation of the employed bee phase is powered with the best solutions of the subcolony while the search equation of the onlooker bee phase is powered with the global best solution of the whole colony [15]. Qin et al. investigated the performance of the ABC algorithm when the number of employed and onlooker bees is changed with linear and nonlinear time-varying strategies [16]. Tran et al. remodeled the arithmetic crossover operator by controlling the candidate generation schema of the standard ABC algorithm and proposed enhanced ABC, for short EABC, algorithm [17].

The second group of studies mainly focuses on the hybridization of the ABC algorithm with other well-known population-based optimization techniques or local search approaches. Kang et al. combined the ABC algorithm with the Nelder–Mead simplex method for solving inverse analysis problems and introduced the Hybrid Simple ABC, HSABC, algorithm [18]. The HSABC algorithm was used as a parameter identification method for concrete dam-foundation systems and the results obtained by the HSABC algorithm were better than the results obtained by the standard ABC and real-coded genetic algorithm (RCGA) [18]. Ozturk and Karaboga hybridized the ABC algorithm with the Levenberg–Marquardt (LM) algorithm for finding optimal weight set of the neural networks [19]. In the proposed approach called the ABC-LM algorithm, the ABC algorithm is responsible for initial training of the neural network. The weight set determined by the ABC algorithm is used for further training by the LM algorithm [19]. Duan et al. proposed a new hybrid approach by utilizing the ABC algorithm and the Quantum Evolutionary algorithm (QEA) for solving continuous optimization problems [20]. In the proposed model, employed and onlooker bee phases of the ABC algorithm are modified with the candidate generation schema of the traditional QEA [20]. Zhao et al. integrated the ABC algorithm and genetic algorithm (GA) for a novel hybrid swarm intelligent approach called HSIGA [21]. The main idea of the HSIGA is based on information sharing between populations of two algorithms. Both GA and ABC algorithm start optimization with random individuals simultaneously, and selected individuals from two populations are crossovered at the end of the each cycle [21]. Finally, obtained offsprings are transferred to the population of GA. Kang et al. increased solving capabilities of the ABC algorithm with the Hookee Jeeves pattern search approach and introduced the Hookee Jeeves ABC, HJABC, algorithm [22]. Yan et al. used the crossover operator of the GA in the search equation of the ABC algorithm and names this new variant as the hybrid ABC, HABC, algorithm [23]. Mao et al. improved the performance of the standard ABC algorithm by combining it with the opposition-based learning, S-type subpopulation grouping and sensitivity-phenomenon option techniques [24].

ABC algorithm, like other population-based metaheuristics, is intrinsically suitable for running on distributed or shared memory-based parallel architectures. The studies in the third group are directly related with the parallelization of the ABC algorithm. Narasimhan parallelized the ABC algorithm in a manner that the whole colony is divided into equal-sized subcolonies and these subcolonies are assigned to the different processors [25]. At the end of each cycle, improved individuals are copied to the memory locations that are accessible to all the processors for increasing the utilization from the more qualified solutions [25]. Banharnsakun et al. used a distributed memory-based system for testing their parallel implementation of the ABC algorithm. In this parallelization approach, local best food sources between two randomly determined compute nodes are exchanged after completion of a predetermined number of cycles [26]. Parpinelli et al. investigated different parallelization approaches of the ABC algorithm including master-slave, multihive with migration and hybrid hierarchical [27]. Basturk and Akay first investigated the parallel ABC algorithm in which each bee works synchronously [28]. Secondly, they proposed a coarse-grained parallel model for the ABC algorithm and analyzed its performance on solving numerical optimization problems and training neural networks [29]. Karaboga and Aslan analyzed performance of the parallelized ABC algorithm by using newly proposed emigrant creation strategies [30]. They also investigated performance of the parallelized ABC algorithm on solving the motif discovery problem [31].

When the studies about the ABC algorithm are considered, it can be generalized that proposed modifications and hybridizations aim at changing source search and consumption characteristics of the employed, onlooker, and scout bees. However, intelligent behaviours seen in bee colonies are not limited with the search and consumption operations. Actually, search and consumption characteristics of the individuals in the colony are implicitly managed with the decisions about the transition to the dance area made by employed bees. In this study, a new model for the decision-making process of the employed bees called the transition control mechanism is introduced and integrated to the workflow of the standard ABC algorithm and its variants. The serial and parallelized implementations of the proposed ABC algorithm are tested on solving numerical benchmark problems with different number of parameters and wireless sensor deployment problem. The results from the experimental studies showed that modeling the decision-making process of the employed bees significantly improves convergence speed and quality of the final solutions of the ABC algorithm and has a decreasing effect on the execution time of the algorithm. The rest of the paper is organized as follows: fundamental steps of the ABC algorithm and bee phases are described in Section 2. The transition control mechanism and its adaptation to the ABC algorithm are summarized in Section 3. Section 4 presents the results of the experimental studies. Finally, the conclusion is given in Section 5.

#### 2. Artificial Bee Colony Algorithm

Some species living together like ants, fish, and birds in nature are capable of performing complex behaviours that are actually defined as a composition of simple operations carried out by individuals without requiring any centralized management or monitoring mechanism [1–3, 5]. These types of complex or intelligent behaviors have also been seen in the foraging habits of the real honey bee colonies. The intelligent foraging model in a bee colony consists of three fundamental components called food sources and employed and unemployed foragers. An employed forager is associated with a specific food source and responsible for carrying nectar to the hive. An employed forager also shares information about the food source such as nectar quality, distance, and direction with unemployed foragers [1–3, 5]. Unemployed foragers can be classified into two groups of bees. The first group of unemployed foragers is composed of onlooker bees [1–3, 5]. Onlooker bees wait on the hive and watch various dances performed by employed foragers before selecting a food source. Selection of a food source by an onlooker is not a random procedure directly. There is a relationship between choosability of a food source by onlookers and nectar quality of it. Another group of unemployed foragers is composed of scout bees. Scout bees wait on the hive like onlookers, but they fly from hive randomly or with the effect of internal or external triggers to find new food sources [1–3, 5]. By considering all of these specialized situations of a bee colony, Karaboga introduced a new swarm intelligence-based probabilistic optimization algorithm named ABC [1–3, 5]. In the ABC algorithm, positions of the food sources found and consumed by bees correspond to the possible solutions of the problem being optimized and nectar amount of a food source is directly related to the appropriateness of the solution [1–3, 5].

In the vast majority of the population-based optimization algorithms, a set of solutions is first created randomly and tried to be optimized until completion of a predetermined number of iterations, generations, or cycles [1–3, 5]. In the ABC algorithm, initialization of the optimization process is also devoted to the generation a set of solutions or food sources randomly by sending scout bees from the hive. The *jth* parameter of the *ith* food source within *SN* different food sources or solutions is determined randomly using equation (1) [1, 2, 32–34]. In equation (1), is the *j*th parameter of *D* different parameters in *i*th food source represented by , and and are lower and upper bounds of the *j*th parameter. Finally, rand (0, 1) is a random number between 0 and 1 [32, 33, 35]:

After the discoveries of initial food sources by scout bees, these food sources are related with the employed bees for gathering nectars. In the ABC algorithm, each food source is assigned to only one employed bee and the location information of the food source is memorized by the associated employed bee. When an employed bee leaves from the hive, she tries to find another food source within the neighborhood of the memorized one. The search operation carried out by an employed bee for finding a new food source is modeled as in equation (2) for the ABC algorithm [1, 2, 32, 33, 35]:where is the *j*th parameter of the candidate food source whose parameters are the same with the parameter values of the food source except the *j*th one. and are the *j*th parameters of the and food sources, and is a random number between and 1 [1, 2, 32, 33, 35]. In addition to these, it should be noted that *j* and *k* are randomly determined indexes and *k* must be different than *i*. If the fitness value of the food source calculated as in equation (3) for a minimization problem using the objective function value is higher than the fitness value of the food source, the employed bee applies a greedy selection procedure between these food sources and a trial counter defined as is set to zero. Otherwise, food source is still memorized by the employed bee and its trial counter is incremented by one to show that it is not improved in the current cycle [1, 2, 32, 33, 35]:

When all the employed bees turn back to the hive, they share the information about the visited food sources in their minds with the onlooker bees. Onlooker bees apply a selection procedure in which choosability chance of a food source increases with the fitness value of the same food source. The relationship between the fitness values of the sources and their choosabilities is modeled in the ABC algorithm by the assigned selection probabilities to all of these sources. The selection probability of the food source defined as is calculated by dividing the fitness value of the food source with the sum of fitness values as given in equation (4) below. With the completion of the probabilistic food source selection, onlooker bees leave the hive and join the foraging as done by employed bees [1, 2, 32, 33, 35]:

If the foraging characteristics of the employed and onlooker bees are investigated, it is clearly seen that utilization or exploitation of the existing food sources is more dominant than the exploration of new ones. However, exploration and exploitation processes should be managed in a balanced manner that satisfies acceptable convergence speed and solution diversity. This subtle balance between exploration and exploitation is maintained in the ABC algorithm by comparing the trial counters that are incremented or set to zero according to the improvements of the food sources with a specific control parameter named *limit*. If there is a food source for which its trial counter exceeds the *limit* parameter value at most, this food source is abandoned and the employed bee of the abandoned food source becomes the scout bee for finding a food source by using equation (1) [1, 2, 32, 33, 35]. Although there is no restriction on the values being assigned to the *limit* parameter, it can be calculated using the following equation by using the number of parameters and food sources [1, 2, 32, 33, 35]:

By considering the detailed descriptions of the employed, onlooker, and scout bees, mathematical models for generating new and candidate food sources and fundamental steps of the ABC algorithm can be given as shown in Algorithm 1.