Journal of Engineering Research, Volume 22 No 2 December 2017 1 Knowledge-Based Artificial Bee Colony Algorithm for Optimization Problems B. H. Adebiyi1, M. B. Mu’azu2, A. M. S. Tekanyi3, A. T. Salawudeen4, R. F. Adebiyi5 1, 2, 4 Department of Computer Engineering, Ahmadu Bello University, Zaria, Nigeria 3, 5 Department of Communication Engineering, Ahmadu Bello University, Zaria, Nigeria Corresponding e-mail:

[email protected]

Abstract This paper presents a cultural artificial bee colony algorithm to modify the artificial bee colony (ABC). The normative and situational knowledge inherent in the cultural algorithm is utilized to guide the step size as well as the direction of evolution of ABC at different arrangements. This was done in order to combat the disparity between exploration and exploitation associated with the standard ABC, which results in poor convergence and optimization inefficiency. Four variants of Cultural Artificial Bee Colony Algorithm (CABCA) are accomplished in MATLAB/Simulink program using different configurations of cultural knowledge. A total of 20 standards applied mathematical optimization benchmark functions (Ackley, Michalewicz, Quartic, Sphere etc) are employed to evaluate the performance, and it was found that all the four variants of CABCA outperformed the standard ABC. The superiority of CABCA variants over ABC justifies the essence of knowledge introduction in the belief space for self-adaptation. Keywords: Algorithm, Exploitation, Exploration, Model, Stimulation 1.0 INTRODUCTION THE artificial bee colony (ABC) is one of the swarm intelligence algorithms used to solve optimization problems which is inspired by the foraging behaviour of the honey bees. Since its advent (Karaboga, 2005) ABC and its variants have attracted increasing interest and has been applied to solve many real-world optimization problems (Karaboga and Basturk, 2008; Lin and Su, 2012; El-Telbany, 2013). The ABC has the advantages of strong robustness, fast convergence and fewer setting parameters. Also, the performance of ABC has already been compared to other Evolution Algorithms (EAs) such as Generic Algorithm (GA), Differential Evolution (DE) and Particle Swarm Optimization (PSO) (Karaboga and Basturk, 2007 and 2008; Karaboga and Akay, 2009). The results show that ABC is better than or at least comparable to the other methods (Karaboga and Akay, 2009). However, like other swarm algorithms, ABC also faces convergence problems. It is pertinent to note that both the exploration and the exploitation are necessary for a population-based optimization algorithm. In EAs, the exploration refers to the ability to investigate the various unknown regions in the solution space to discover the global optimum. The exploitation refers to the ability to apply the knowledge of the previous good solutions to find better solutions. Actually, the two aspects contradict each other. For the sake of the good performance on the optimization problems, the main challenge is how to strike a good balance between the exploration and the exploitation in the search process (Gao et. al., 2016). An adaptive parameter is usually introduced to address the imbalance. This paper presents a knowledge based ABC called the CABCA using both situational and normative cultural knowledge. This research is an extension of Adebiyi et. al. (2017) as they did not explore various configurations of the situational and normative knowledge. To improve the performance of the standard ABC, some ABC variants have been developed. In the work of Lee and Cai, (2011), a diversity strategy (DABC) was introduced to preserve sufficient amount of diversity among the candidate solutions by switching between exploration and exploitation. Also in the work of Banharnsakun et. al. (2011), a best-so- 2 B. H. Adebiyi, M. B. Mu’azu, A. M. S. Tekanyi, A. T. Salawudeen, R. F. Adebiyi JER 22(2) 1-13 far method was proposed. The onlooker bees compared the information from all employed bees to select the best-so-far candidate food source. This will prejudice the solution handled by onlooker bees towards the optimal solution. Yan and Li proposed a chaotic local search method which was applied to solve the accuracy problem of global optimal value (Yan and Li, 2011). Gao et al. (2016) improved the exploitation ability of ABC by proposing a new algorithm, i.e. DGABC, which combined DE with gbest-guided ABC (GABC) by an evaluation strategy with an attempt to utilize more prior information of previous search experience to speed up the convergence. This was done by increasing the numbers of the scout to enhance better initialization, which in turns improved the convergence of ABC algorithm. In the work of Liang et. al. (2017), an adaptive differential operator was embedded into the employed bee phase of ABC to enhance global convergence capability of the algorithm. A stair-step probability calculation method was designed for onlooker bees to differentiate the good solutions and bad solutions, such that more computational effort can be put into the local search of promising areas. A novel ABC variant namely ABCADE was formed by combing the basic framework of ABC and the two proposed algorithmic components. The experimental results show that ABCADE obtains superior or comparable performance to other representative state-of-the-art ABC and DE algorithm. Adebiyi et. al. (2017) proposed an improved ABC algorithm using knowledge inherent in Cultural Algorithm (CA) to develop two variants of ABC. The simulation results showed that the two variants have better performance than the standard ABC. Thus, successful efforts have been made by researchers to address some of the problems associated with the ABC. However, the experience of individuals and the knowledge derived from the parent as a result of evolution has not been efficiently utilized. In this work, this individual experience will be employed through cultural evolution process to propose new variations of ABC called the CABCA. This is expected to improve the original ABC algorithm but not necessarily complicate the algorithm. 2.0 METHODOLOGY 2.1 Theoretical Framework 2.1.1 Artificial Bee Colony Algorithm The standard ABC Algorithm consists of three kinds of bees; employed bees, onlooker bees and scout bees. Employed bees are responsible for exploiting the nectar sources explored and take the information obtained about the quality of the food source locations which they are exploiting to the waiting bees (onlooker bees). Onlooker bees wait in the hive and decide on a food source to be exploited based on the information received from the employed bees. Scouts bees randomly search the environment in order to find a new food source depending on an internal motivation or based on possible external traces. In the ABC algorithm, the position of a food source represents a possible solution to the optimization problem, and the nectar amount of a food source corresponds to the profitability (fitness) of the associated solution (Karaboga, 2005). The ABC as an iterative algorithm starts with the employed bee searching for food source within the neighborhood of the food source. Let suppose an employed bee is currently positioned at a food source position. During this stage, each employed bee searches in the neighborhood of its current position to produce new trial food source vi using Eq. 1: vij  xij  ij xkj  xij  (1) JER 22(2) 1-13 B. H. Adebiyi, M. B. Mu’azu, A. M. S. Tekanyi, A. T. Salawudeen, R. F. Adebiyi 3 where j  1,2,..., Dand k 1,2,...SN are randomly picked indices, D is the dimension of the problem, SN is the number of food positions and ij is a uniform random value [- 1, 1] (Karaboga and Basturk, 2008). Thus, the new solution vi is produced from xi by perturbing its randomly picked location j th parameter and using the information of xi and another randomly picked solution xk . If vi has better fitness than the old food position xi , then xi is replaced by vi . Otherwise, the previous position xi is retained as in Eq. 2.  f  xi   0 1  if fitness xi    1  f  xi  (2)  1  f  xi  otherwise  For the problem of function optimization, where f is the function to be minimized, ABC computes the fitness of a candidate solution xi using (2) ( Bansal and Mittal, 2017): After all the employed bees complete their search, they share their information related to the nectar amounts and the positions of their sources with the onlooker bees in the dance area. The dance area is where the exchange of information about the quality of food sources occurs. An onlooker bee evaluates the nectar information taken from all employed bees and chooses a food source location with a probability related to its nectar amount. fitness xi  Pi  SN (3)  ftnessxn  n 0 xi would be picked by an The probability Pi that the employed bee with food source onlooker bee is computed using Eq. 3, making the probability Pi to be proportional to fitnessxi  . Like the employed bees, each onlooker bee also employs Eq. 2 to produce trial food source vi in the vicinity of its current food source position. If vi has better fitness then xi is replaced by vi . Otherwise, xi is discarded. A scout bee is created only when a particular food source cannot be improved through a predetermined number of trials limit as expressed in Eq. 4. xij  min j  rand 0,1max j  min j  (4) The employed bee now becomes a scout bee and its food source is positioned randomly across the search space using Eq. 4 where j = 1, 2… D and max j , min j is   the search space along the dimension (Alam et. al. 2015). The flowchart and pseudo-code for the standard ABC algorithm is shown in Figure 1. 4 B. H. Adebiyi, M. B. Mu’azu, A. M. S. Tekanyi, A. T. Salawudeen, R. F. Adebiyi JER 22(2) 1-13 Start  Scout Bees Produce initial solutions Phase  Evaluate the solutions Produce new solutions for the employed bee Employed Bees Phase Evaluate the solutions  Apply greedy selection No Calculate the selecting probabilities of food sources for the onlooker bees Produce new solutions for the onlooker bees Onlooker Bee Phase Evaluate the solutions Apply greedy selection Memorize the best solution Is there an abandoned solution? No Yes  Scout Bees Replace it with a new solution by the scout Phase Are the stopping criteria satisfied Yes End Figure 1: Flowchart of Artificial Bee Colony (ABC) Algorithm The steps are: 1) Begin 2) Initialize the solution population, i  1,...., SN 3) Evaluate population 4) cycle = 1 5) Repeat 6) Generate new solutions vij for the employed bees using Eq. (1) and evaluate them. Keep the best solution between current and candidate 7) Select the visited solution for onlooker bees by their fitness 8) Generate new solutions vij for the Onlooker bees using Eq. 2 and evaluate them 9) Keep the best solution between current and candidate JER 22(2) 1-13 B. H. Adebiyi, M. B. Mu’azu, A. M. S. Tekanyi, A. T. Salawudeen, R. F. Adebiyi 5 10) Determine if there exist an abandoned food source and replace it using a scout bee 11) Save in memory the best solution so far 12) cycle = cycle + 1 13) Until cycle = M C N In a robust search process, exploration and exploitation processes must be carried out together in equal proportion. The onlooker and employed bees carried out the exploitation process in the search space, while the scouts are responsible for the exploration process. In the case of real honey bees, the recruitment rate represents a measure of how quickly the bee colony finds and exploits a newly discovered food source (Karaboga and Basturk, 2008). This recruiting could also represent the measurement of the speed of which the feasible solutions of the difficult optimization problems can be discovered. 2.1.2 Cultural Algorithm Cultural Algorithms (CAs), is an evolutionary model which is inspired by the model of the cultural evolution process. The CAs has been developed in order to model the evolution of the cultural component of an evolutionary computational system over time as it accumulates experience. CAs can provide an explicit mechanism for global knowledge and a useful framework within which to model self-adaptation in an evolutionary or swarm intelligence system (Chung, 1997; Reynolds and Chung, 1997; Reynolds and Peng, 2005). CAs model has two levels of evolution (population level and belief space level). The population space consists of a set of possible solutions to the problem and can be modelled by using any population-based optimization method. The belief space is the place where the information about the knowledge on the solution of the problem is developed and stored. The belief space has the goal to guide individuals of the population in search of better regions. The five basic categories of cultural knowledge have been identified: Normative, Situational, Domain, History, and Topographical Knowledge (Reynolds and Peng, 2004). In this paper, the population component of the CA will be the ABC and the global knowledge that has been learned by the population will be expressed using situational and normative knowledge. 2.1.3 Situational Knowledge Situational Knowledge represents the best individuals found at a certain time of evolution and it contains a number of individuals considered as a set of exemplars to the rest of the population. The Situational Knowledge is updated when the best individual of the population is found, that is at iteration t , S  S t S t  s1t , s2t ,...., snt  . This situational knowledge equation can be represented as (Reynolds and Chung, 1997):  X best, j t  1 if t 1 S  t  t 1 f X best   ,j  f s t (5)  s j otherwise j t 1 where X gbest denotes the best artificial bee individuals in the colony at generation t  1 Normative Knowledge Normative Knowledge describes how the individual should act in terms of ranges of acceptable behaviour. In other words, normative knowledge defines a standard or ideal way that can be used to judge which behaviour is desirable or undesirable. Normative Knowledge provides standards for interpreting and determining individual behaviours through guidelines within which individual adjustments can be made. The normative 6 B. H. Adebiyi, M. B. Mu’azu, A. M. S. Tekanyi, A. T. Salawudeen, R. F. Adebiyi JER 22(2) 1-13 component is a set of interval information for each n parameter. Each of the intervals in the belief space is represented as a triple Reynolds and Chung, (1997). N  I , L,U (6) where I , L and U , are n -dimensional vectors, and I j denotes the closed interval for the variable j that is a continuous set of real numbers x represented as a number pair: I j  l j , u j   x l j  x  u j  (7) j is the number of the variables, l j and u j are the lower and upper bounds for the j th variable, respectively, L j and U j are the values of the fitness function associated with the bound l j and u j are usually initialized with positive infinity. Usually, the normative knowledge leads individuals "to jump into the good range" if they are not there yet usually initialized with positive infinity (Reynolds and Peng, 2004). The Normative Knowledge is updated as follows Chung, (1997): l t 1  xit, j if xit, j  l tj  t or   f xit  Ltj (8)  l j j otherwise t 1 x k , j if x k , j  u tj or f  x k   U tj u  t j (9)  uj otherwise  f  X i  if xit, j  l tj or f  X i   Ltj Ltj1   t (10)  Lj otherwise  f  X k  if x k , j  u tj or f  X k   U tj U tj1   t (11)  Uj otherwise where the i th individual affects the lower bound for the variable j , and the k th individual affects the upper bound for the variable j . It should be noted that t denotes the current generation of individuals. 2.2 Method In this research, the CA is used to propose an improvement on ABC Algorithm. The population level of the CA component will be the ABC algorithm. The global knowledge that has been learned by the population is expressed in terms of both normative and situational knowledge. The experience of the selected individuals from the population (bee) contributes to the cultural knowledge by means of acceptance function. An acceptance function is used to control which members of the population are permitted to impact the belief space. They determine which individuals in the current generation of the population will contribute with their knowledge to belief space. The experiences of the selected individuals are used to update the knowledge of the current belief space. In turns, the knowledge in the beliefs will be used to guide and influence the evolution of the population. In this research, the acceptance function for component N selects the best range of the 20 % performing individuals in each generation is calculated and successive generations will be randomly generated in this promising range. This will increase the convergence and will preserve wasted time in discovering the good regions. The number of the individuals JER 22(2) 1-13 B. H. Adebiyi, M. B. Mu’azu, A. M. S. Tekanyi, A. T. Salawudeen, R. F. Adebiyi 7 accepted for the update of the belief space is obtained according to the following function: (Chung, 1997; Reynolds and Chung, 1997; Salawudeen, 2015).  N , t   N .  N .  t  (12) where N is the size of the population, t is the current number of generation and  is a parameter given by the user t (in this work, 0.2 is adopted). That is, top 20 % of the population. 2.2.1 CABCA Knowledge Adjustment and Variants Each of the knowledge in the belief space has its own rules and approach of operations. This rule which is also referred to as update function as described above in situational and normative knowledge. Consequently, four variants of CABCA (CABCA(Ns), CABCA(Sd), CABCA(Ns+Sd) and CABCA(Ns+Nd)) were developed using the different influence function. Figure 2 presents the flowchart and pseudo-code for the “cultured” ABC algorithm. The belief space knowledge can influence the evolutional operation, in two ways (Chung, 1997): 1) Determining the step size of the evolution 2) Determining the direction of evolution These two operations are applied to the solution search equation for the ABC as given in Eq. 1 as adaptive parameters in order to balance exploration and exploitation which is often necessary for good results and sufficient convergence speed of the algorithm, especially for complex, high dimensional, multimodal problems with many local optimal points. The variants were developed using the following configurations: CABCA(Ns): CABCA using normative knowledge This is the simplest form of cultural influence. This variant uses only the normative knowledge to determine the step size of evolution. For all components i  1,..., t and j  1,..., n. This can be expressed mathematically as in Eq. 13: xijt 1  xijt  sizeI j   ij xij  xkj  (13)   where size I j  ui  li is the size of the belief space interval for the parameter i, which is decided by the normative knowledge for i th variable 8 B. H. Adebiyi, M. B. Mu’azu, A. M. S. Tekanyi, A. T. Salawudeen, R. F. Adebiyi JER 22(2) 1-13 Start Initialize population space Start Cycle Initialize Belief Space Apply Acceptance Function ( top 20 %) Individual Accepted NO ? YES Update Belief Space Model the Employee CABCA Phase Estimate CABCA Recruit Probability Update Belief Space Estimate the CABCA Onlooker Phase Update Bulletin Board NO MCN ? Scout CABCA YES End Figure 2: Flowchart of Cultural Artificial Bee Colony Algorithm (CABCA) The steps are: 1) Begin 2) Initialize the solution population, 3) Evaluate population 4) cycle = 1 5) Repeat 6) Generate new solutions for the employed bees using (1) and evaluate them. Keep the best solution between current and candidate JER 22(2) 1-13 B. H. Adebiyi, M. B. Mu’azu, A. M. S. Tekanyi, A. T. Salawudeen, R. F. Adebiyi 9 7) Update the belief space with the given problem domain and candidate solutions. 8) Apply acceptance function (top 20 %) 9) Select the visited solution for onlooker bees by their fitness 10) Generate new solutions for the Onlooker bees using (2) and evaluate them 11) Keep the best solution between current and candidate 12) Determine if there exist an abandoned food source and replace it using a scout bee 13) Save in memory the best solution so far 14) cycle = cycle + 1 15) Until cycle = M C N CABCA(Sd): CABCA using situational knowledge In this variant only situational knowledge of the current exemplar or best solution found so far, is used to decide the direction of evolution. The variation is influenced as follows:  xijt  ij xij  xkj  if xijt  s tj  xijt 1   xijt  ij xij  xkj  if xijt  s tj (14)  x t   x  x  otherwise  ij ij ij kj CABCA(Ns+Sd): CABCA using normative and situational knowledge This variant uses both normative knowledge to determine the step size, and situational knowledge to determine the direction as shown in the following, for all components i  1,.., t and j  1,..., n  xijt    ij xij  xkj  if xijt  s tj  xijt 1   xijt    ij xij  xkj  if xijt  s tj (15)  x t     x  x  otherwise  ij ij ij kj where   sizeI j  is the size of the belief space interval which is ui  li If an individual’s parameter value is less than that of the current best, then the absolute value of the calculated step size, sizeI j  , is added to the current parameter value. If an individual’s parameter value is greater than that of the current best, then the absolute value of the step size, sizeI j  , is subtracted from the current parameter value. If an individual’s parameter value is equal to that of the current best, then sizeI j  ij xij  xkj  is just added to the current parameter value. In this case, the direction of evolution will be random. CABCA(Ns+Nd): CABCA using normative for step size and direction of evolution This variant uses only normative knowledge to influence the evolution of both step size and direction. The basic idea behind this variant is to perturb small in a random direction when the parameter value of a parent is in the acceptable range; otherwise, perturb according to the current belief range found toward the left or right boundary of the current range in the belief space. For all components i  1,..., t and j  1,..., n . 10 B. H. Adebiyi, M. B. Mu’azu, A. M. S. Tekanyi, A. T. Salawudeen, R. F. Adebiyi JER 22(2) 1-13  xijt    ij xij  xkj  if xijt  l j  xijt 1   xijt    ij xij  xkj  if xijt  l j (16)  x t     x  x  otherwise  ij ij ij kj where   size I k   u k  l k which represents the size of the current upper limit and lower limit in the belief space for parameter j respectively. Also if an individual’s parameter value is less than that of the current best, then the absolute value of the calculated step size, sizeI k  , is added to the current parameter value. If an individual’s parameter value is greater than that of the current best, then the absolute value of the step size, sizeI k  , is subtracted from the current parameter value. If an individual’s parameter value is equal to that of the current best, then   sizeI k   ij xij  xkj is just added to the current parameter value. In this case, the direction of evolution will be random. 2.2 Optimization Benchmark Test Functions In order to validate any new optimization algorithm, one has to validate it against standard test functions so as to compare its performance with well-established or existing algorithms. There are many test functions, so there is no standard list or set of test functions one has to follow. However, various test functions do exist in literature, so new algorithms should be tested using at least a subset of functions with diverse properties so as to make sure whether or not the tested algorithm can solve a certain type of optimization efficiently. In this research, a collection of twenty (20) unconstrained optimization test functions which are used to evaluate the performance of the proposed algorithm. The purpose of this collection is to give the proposed algorithms a large number of general test functions to be used in testing the optimization algorithm and comparison studies. For each function, its algebraic expression and the standard initial point, as well as optimal values, are given. 3.0 RESULTS AND DISCUSSION The performance of CABCA variants and standard ABC is evaluated using a collection of twenty (20) applied mathematical optimization test functions. Henceforth, the comparison between CABCA variants and the standard ABC algorithm with reference to the global solution is estimated. The parameters setting of this work is indicated in Table 1. For each system and for each test case, the average of twenty (20) tests performed using MATLAB R2015a was recorded. The simulations were performed on HP-Pavilion g7-2270us on an Intel(R) Core i3 with a 2.40 GHz processor and 6.00 GB RAM with 64-bit Windows 8 Pro Operating System (OS). Table 1: Parameter Setting for ABC S/N Parameters Values 1 Population size 50 2 Dimension 30 3 Maximum Cycle Number 5000 4 Limit 50 JER 22(2) 1-13 B. H. Adebiyi, M. B. Mu’azu, A. M. S. Tekanyi, A. T. Salawudeen, R. F. Adebiyi 11 Comparison of ABC with CABCA In this section, ABC is compared with all the variants of the proposed CABCA variants. The t-test is introduced to clearly indicate the statistical significance of the algorithms. This is clearly presented in Table 2.  ABC vs CABCA(Ns): Out of the 20 functions, CABCA(Ns) performs better than ABC on 13 functions; while ABC performs better only on one (1) function. On the remaining six (6) functions, their results are similar (i.e., the performance difference is not statistically significant in t-tests with at least 99 % degree of confidence). Thus the overall performance of CABCA(Ns) is better than standard ABC.  ABC vs CABCA(Sd): It can be observed from Table 2 that on all of the 20 test functions, CABCA(Sd) produced the best result in 11 and ABC has the best performance in 2 functions. On the remaining 7 functions, their results are similar.  ABC vs CABCA(Ns+Sd): From Table 2, it could be seen that the variant of CABCA that employ both normative and situational knowledge to guide the evolution produced the best results in eleven (11) functions while ABC produced best results in two (2) functions and both CABCA(Ns+Sd) and ABC produced similar results in seven (7) functions.  ABC vs CABCA(Ns+Nd): In this variant, it could be observed that CABCA(Ns+Nd) outpaced the ABC in ten (10) and two (2)cases respectively while they provide similar result in eight (8) cases. In total, the variants of CABCA (i.e. CABCA(Ns), CABCA(Sd), CABCA(Ns+Sd) and CABCA(Ns+Sd)) outperformed the standard ABC in all the optimization test functions. The superiority of CABCA justifies the essence of knowledge introduction in the belief space for self-adaptation. This has substantially improved the performance of the standard ABC in the search for the global solution. The following points summarize the observations on the results: 1) Out of the 20 functions CABCA(Ns) performs best in 4 (20 %) functions, CABCA(Ns+Nd) also in 4 (20 %) functions, while CABCA(Sd) and CABCA(Ns+Sd) performed best in 3 (15 %) and 2 (10 %) functions respectively. On the remaining 7 (35 %) functions, their results are similar (i.e., the performance difference is not statistically significant in t-tests with at least 99 % degree of confidence). Thus the overall performance of CABCA is better than ABC. 2) Variants that employed normative knowledge prevailed in most of the test cases. Hence, normative knowledge seems to be the prevailing knowledge source for the optimization functions. 3) The unimodal and separable functions are relatively easier to optimize. On these functions, the performance of ABC and CABCA variants are mostly similar. 4) The best-performed variant is selected based on the success ratio, which is the number of successful runs that found the solution. 12 B. H. Adebiyi, M. B. Mu’azu, A. M. S. Tekanyi, A. T. Salawudeen, R. F. Adebiyi JER 22(2) 1-13 Table 2: Performance of the ABC algorithm and proposed CABCA algorithms on the benchmark functions Test Gmin ABC CABCA CABCA CABCA CABCA Best Function (Ns) (Sd) (Ns+Sd) (Ns+Nd) Performance (t-Test with  =0.99) Ackley 0.000E+00 2.1157E-13 4.1466e-15 1.9851E-13 5.7676E-15 4.3750E-15 CABCA(Ns) Axis parallel 0.0000E+00 9.5846E-16 1.0472E-16 8.7434E-16 5.4133E-16 8.5830E-16 CABCA(Ns) CM -3.0000E+00 -3.0000E+00 -3.0000E+00 -3.0000E+00 -3.0000E+00 -3.0000E+00 Similar DeJongf4 0.0000E+00 5.4743E-16 4.3421E-16 5.1616E-16 4.5198E-16 4.7587E-16 CABCA(Ns) ExpFun 1.0000E+00 1.0000E+00 0.0000E+00 1.0000E+00 0.0000E+00 0.0000E+00 Similar Griewangk 0.0000E+00 0.0000E+00 1.0000E+00 0.0000E+00 1.0000E+00 1.0000E+00 Similar Hyperelliptic 0.0000E+00 1.0000E-15 8.8185E-43 9.1751E-16 1.51583-42 1.2385E-42 CABCA(Ns) Michalewicz -9.6602E+00 -26.5754E+00 -2.3832E-13 -24.3579E+00 -6.0315E-15 -2.4091E-13 CABCA(Sd) Neumaier3 -4.9300E+03 -2.8331E+03 -2.9000E-04 -2.9523E+03 -2.9000E-04 -2.9000E-04 CABCA(Sd) PM1 0.0000E+00 1.2349E-15 3.7832E-27 1.2310E-15 4.0409E-30 1.3401E-45 CABCA(Ns+Nd) PM2 0.0000E+00 1.55319E-11 2.5959E-27 4.4354E-12 2.5959E-27 2.5959E-27 Similar Quartic 0.0000E+00 10.9770E+00 8.4591E-01 8.3048E+00 2.4158E-02 4.2308E-21 CABCA(Ns+Nd) Rastrigin 0.0000E+00 2.3628E-12 1.1806E-13 2.1652E-12 3.5527E-15 7.1059E-15 CABCA(Ns+Nd) Rosenbrock 0.0000E+00 1.1236E+00 5.9490E-02 1.1179E+00 1.4246E-02 2.0832E-13 CABCA(Ns+Nd) Sal 0.0000E+00 9.9873E-02 9.9873E-02 9.9873E-02 9.9873E-02 9.9873E-02 Similar Schaffer 0.0000E+00 5.7452E-15 7.4541E-19 6.5000E-15 7.2048E-19 7.6013E-19 CABCA(Ns+Sd) Schwefel 0.0000E+00 3.5536E+03 3.5542E+03 3.5535E+03 3.5537E+03 3.5533E+03 Similar Sphere 0.0000E+00 1.0875E-15 9.8378E-16 9.1795E-16 9.2855E-16 1.0886E-15 CABCA(Sd) Step 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 Similar Zakharov 0.0000E+00 6.8857E-13 1.1469E-15 1.3933E-15 1.6837E-19 4.3144E-15 CABCA(Ns+Sd) Results are averaged over 20 independent runs. Better performance by CABCA variants is marked with boldface and italic font. In case the best CABCA performance to ABC performance difference is not significant by t-Test with at least 99% level of confidence (i.e.,  = 0.99), it is marked as “Similar”. 4.0 CONCLUSION In this work, a Cultural Artificial Bee Colony Algorithm (CABCA) for global optimization has been proposed. In the algorithm, the normative and situational knowledge inherent in the cultural algorithm was utilized to guide the step size as well as the direction of evolution of ABC at the employed bee stage. This was done in order to combat the disparity between exploration and exploitation associated with the basic ABC, which often lead to poor convergence and optimization inefficiency. Consequently, four new variants CABCA(Ns), CABCA(Sd), CABCA(Ns+Sd) and CABCA(Ns+Nd) were developed in MATLAB R2015a. The exploration and the exploitation ability of the algorithm have been balanced, and the search performance of the approach is improved. Various benchmark functions including unimodal separable, unimodal non- separable, multi-modal separable and multi-modal non-separable test functions have been applied to test the effectiveness of the presented method. The simulation results show that all the variants of CABCA outperformed the ABC and CABCA(Ns+Nd) has the overall best performance. In the future work, we will focus on the application of the proposed algorithms to various engineering problems. REFERENCES Adebiyi, B. H., Tekanyi, A. M. S., and Salawudeen, T. A. (2017). An Improved Artificial Bee Colony using Cultural Algorithm for Optimization Problem. International Journal of Computer Applications, 160(8), 14-18. Alam, M. S., Islam, M. M., and Murase, K. (2015). Artificial Bee Colony Algorithm with Adaptive Explorations and Exploitations: A Novel Approach for Continuous Optimization. International Journal of Applied Information System, 8(2), 32 - 43. Banharnsakun, A., Achalakul, T., and Sirinaovakul, B. (2011). The best-so-far selection in artificial bee colony algorithm. Applied Soft Computing, 11(2), 2888-2901. JER 22(2) 1-13 B. H. Adebiyi, M. B. Mu’azu, A. M. S. Tekanyi, A. T. Salawudeen, R. F. Adebiyi 13 Chung, C.-J. (1997). Knowledge-based approaches to self-adaptation in cultural algorithms. Doctoral Dissertation, Computer Science Department, Wayne State University, Detroit, MI, USA. Chung, C. (1997). Fuzzy Approaches to Acquiring Experimental Knowledge in Cultural Algorithms. Paper presented at the Proceedings of the 9th International Conference on Tools with Artificial Intelligence, 3-8 November, 1997, Newport Beach, CA, USA, 260-267. El-Telbany, M. E. (2013). Tuning PID controller for DC motor: An artificial bees optimization approach. International Journal of Computer Applications, 77(15), 17-21. Gao, W.-f., Huang, L.-l., Wang, J., Liu, S.-y., and Qin, C.-d. (2016). Enhanced artificial bee colony algorithm through differential evolution. Applied Soft Computing, 48, 137-150. Karaboga, D. (2005). An idea based on honey bee swarm for numerical optimization: Technical report-tr06, Erciyes University, Engineering Faculty, Computer Engineering Department, Kayseri, Turkiye. Karaboga, D., and Akay, B. (2009). A comparative study of artificial bee colony algorithm. Applied Mathematics and Computation, 214(1), 108-132. Karaboga, D., and Basturk, B. (2007). A powerful and efficient algorithm for numerical function optimization: artificial bee colony (ABC) algorithm. Journal of Global Optimization, 39(3), 459-471. Karaboga, D., and Basturk, B. (2008). On the performance of artificial bee colony (ABC) algorithm. Applied Soft Computing, 8(1), 687-697. Lee, W.-P., and Cai, W.-T. (2011). A novel artificial bee colony algorithm with diversity strategy. Paper presented at the Natural Computation (ICNC), 2011 Seventh International Conference on Natural Computation, 7, 1411-1444 Liang, Z., Hu, K., Zhu, Q., and Zhu, Z. (2017). An enhanced artificial bee colony algorithm with adaptive differential operators. Applied Soft Computing, 58, 480- 494. Lin, C.-J., and Su, S.-C. (2012). Using an efficient artificial bee colony algorithm for protein structure prediction on lattice models. International Journal of Innovative Computing, Information and Control, 8, 2049-2064. Priti Bansal, S. S., and Nitish Mittal. (2017). A Hybrid Artificial Bee Colony and Harmony Search Algorithm to Generate Covering Arrays for Pair-wise Testing. International Journal of Intelligent Systems and Applications (IJISA), 9(8), 59-70.. Reynold*s, R. G., and Chung, C. (1997). Fuzzy approaches to acquiring experimental knowledge in cultural algorithms. Paper presented at the Tools with Artificial Intelligence, 1997. Proceedings., Ninth IEEE International Conference on Tools with Artificial Intelligence, 9 (8), 260-267. Reynolds, R. G., and Peng, B. (2004). Cultural algorithms: modeling of how cultures learn to solve problems. Paper presented at the Tools with Artificial Intelligence, 2004. ICTAI 2004. 16th IEEE International Conference on Tools with Artificial Intelligence, 16(4), 166-172. Reynolds, R. G., and Peng, B. (2005). Cultural algorithms: computational modeling of how cultures learn to solve problems: an engineering example. Cybernetics and Systems: An International Journal, 36(8), 753-771. Salawudeen, A. T. (2015). Development of an Improved Cultural Artificial Fish Swarm Algorithm with Crossover. (M.Sc Dissertation). Department of Electrical and Computer Engineering, Ahmadu Bello University Zaria, Nigeria. p.154. Yan, G., and Li, C. (2011). An effective refinement artificial bee colony optimization algorithm based on chaotic search and application for pid control tuning. Journal of Computational Information Systems, 7(9), 3309-3316.