# An Algorithm for Global Optimization Inspired by Collective Animal Behavior

Authors: Erik Cuevas; Mauricio González; Daniel Zaldivar; Marco Pérez-Cisneros; Guillermo García
Journal: Discrete Dynamics in Nature and Society
 (2012)

---

## Abstract

A metaheuristic algorithm for global optimization called the collective animal behavior (CAB) is introduced. Animal groups, such as schools of fish, flocks of birds, swarms of locusts, and herds of wildebeest, exhibit a variety of behaviors including swarming about a food source, milling around a central locations, or migrating over large distances in aligned groups. These collective behaviors are often advantageous to groups, allowing them to increase their harvesting efficiency, to follow better migration routes, to improve their aerodynamic, and to avoid predation. In the proposed algorithm, the searcher agents emulate a group of animals which interact with each other based on the biological laws of collective motion. The proposed method has been compared to other well-known optimization algorithms. The results show good performance of the proposed method when searching for a global optimum of several benchmark functions.


---

## Body

## 1. Introduction

Global optimization (GO) is a field with applications in many areas of science, engineering, economics, and others, where mathematical modelling is used [1]. In general, the goal is to find a global optimum of an objective function defined in a given search space. Global optimization algorithms are usually broadly divided into deterministic and metaheuristic [2]. Since deterministic methods only provide a theoretical guarantee of locating a local minimum of the objective function, they often face great difficulties in solving global optimization problems [3]. On the other hand, metaheuristic methods are usually faster in locating a global optimum than deterministic ones [4]. Moreover, metaheuristic methods adapt better to black-box formulations and extremely ill-behaved functions whereas deterministic methods usually rest on at least some theoretical assumptions about the problem formulation and its analytical properties (such as Lipschitz continuity) [5].Several metaheuristic algorithms have been developed by a combination of rules and randomness mimicking several phenomena. Such phenomena include evolutionary processes, for example, the evolutionary algorithm proposed by Fogel et al. [6], De Jong [7], and Koza [8], the genetic algorithm (GA) proposed by Holland [9] and Goldberg [10] and the artificial immune systems proposed by de Castro and Von Zuben [11]. On the other hand, physical processes consider the simulated annealing proposed by Kirkpatrick et al. [12], the electromagnetism-like algorithm proposed by İlker et al. [13], the gravitational search algorithm proposed by Rashedi et al. [14], and the musical process of searching for a perfect state of harmony, which has been proposed by Geem et al. [15], Lee and Geem [16], and Geem [17].Many studies have been inspired by animal behavior phenomena for developing optimization techniques. For instance, the particle swarm optimization (PSO) algorithm which models the social behavior of bird flocking or fish schooling [18]. PSO consists of a swarm of particles which move towards best positions, seen so far, within a searchable space of possible solutions. Another behavior-inspired approach is the ant colony optimization (ACO) algorithm proposed by Dorigo et al. [19], which simulates the behavior of real ant colonies. Main features of the ACO algorithm are the distributed computation, the positive feedback, and the constructive greedy search. Recently, a new metaheuristic approach which is based on the animal behavior while hunting has been proposed in [20]. Such algorithm considers hunters as search positions and preys as potential solutions.Just recently, the concept of individual-organization [21, 22] has been widely referenced to understand collective behavior of animals. The central principle of individual-organization is that simple repeating interactions between individuals can produce complex behavioral patterns at group level [21, 23, 24]. Such inspiration comes from behavioral patterns previously seen in several animal groups. Examples include ant pheromone trail networks, aggregation of cockroaches, and the migration of fish schools, all of which can be accurately described in terms of individuals following simple sets of rules [25]. Some examples of these rules [24, 26] are keeping the current position (or location) for best individuals, local attraction or repulsion, random movements, and competition for the space within a determined distance.On the other hand, new studies [27–29] have also shown the existence of collective memory in animal groups. The presence of such memory establishes that the previous history of the group structure influences the collective behavior exhibited in future stages. According to such principle, it is possible to model complex collective behaviors by using simple individual rules and configuring a general memory.In this paper, a new optimization algorithm inspired by the collective animal behavior is proposed. In this algorithm, the searcher agents emulate a group of animals that interact with each other based on simple behavioral rules which are modeled as mathematical operators. Such operations are applied to each agent considering that the complete group has a memory storing their own best positions seen so far, by using a competition principle. The proposed approach has been compared to other well-known optimization methods. The results confirm a high performance of the proposed method for solving various benchmark functions.This paper is organized as follows. In Section2, we introduce basic biological aspects of the algorithm. In Section 3, the novel CAB algorithm and its characteristics are both described. Section 4 presents the experimental results and the comparative study. Finally, in Section 5, conclusions are given.


## 2.  Biologic Fundamentals

The remarkable collective behavior of organisms such as swarming ants, schooling fish, and flocking birds has long captivated the attention of naturalists and scientists. Despite a long history of scientific research, the relationship between individuals and group-level properties has just recently begun to be deciphered [30].Grouping individuals often have to make rapid decisions about where to move or what behavior to perform in uncertain and dangerous environments. However, each individual typically has only a relatively local sensing ability [31]. Groups are, therefore, often composed of individuals that differ with respect to their informational status and individuals are usually not aware of the informational state of others [32], such as whether they are knowledgeable about a pertinent resource or about a threat.Animal groups are based on a hierarchic structure [33] which considers different individuals according to a fitness principle called dominance [34] which is the domain of some individuals within a group that occurs when competition for resources leads to confrontation. Several studies [35, 36] have found that such animal behavior lead to more stable groups with better cohesion properties among individuals.Recent studies have begun to elucidate how repeated interactions among grouping animals scale to collective behavior. They have remarkably revealed that collective decision-making mechanisms across a wide range of animal group types, from insects to birds (and even among humans in certain circumstances) seem to share similar functional characteristics [21, 25, 37]. Furthermore, at a certain level of description, collective decision-making by organisms shares essential common features such as a general memory. Although some differences may arise, there are good reasons to increase communication between researchers working in collective animal behavior and those involved in cognitive science [24].Despite the variety of behaviors and motions of animal groups, it is possible that many of the different collective behavioral patterns are generated by simple rules followed by individual group members. Some authors have developed different models, one of them, known as the self-propelled particle (SPP) model, attempts to capture the collective behavior of animal groups in terms of interactions between group members which follow a diffusion process [38–41].On the other hand, following a biological approach, Couzin and krauze [24, 25] have proposed a model in which individual animals follow simple rules of thumb: (1) keep the current position (or location) for best individuals, (2) move from or to nearby neighbors (local attraction or repulsion), (3) move randomly, and (4) compete for the space within of a determined distance. Each individual thus admits three different movements: attraction, repulsión, or random and holds two kinds of states: preserve the position or compete for a determined position. In the model, the movement, which is executed by each individual, is decided randomly (according to an internal motivation). On the other hand, the states follow a fixed criteria set.The dynamical spatial structure of an animal group can be explained in terms of its history [36]. Despite such a fact, the majority of studies have failed in considering the existence of memory in behavioral models. However, recent research [27, 42] have also shown the existence of collective memory in animal groups. The presence of such memory establishes that the previous history of the group structure influences the collective behavior which is exhibited in future stages. Such memory can contain the location of special group members (the dominant individuals) or the averaged movements produced by the group.According to these new developments, it is possible to model complex collective behaviors by using simple individual rules and setting a general memory. In this work, the behavioral model of animal groups inspires the definition of novel evolutionary operators which outline the CAB algorithm. A memory is incorporated to store best animal positions (best solutions) considering a competition-dominance mechanism.


## 3. Collective Animal Behavior Algorithm (CAB)

The CAB algorithm assumes the existence of a set of operations that resembles the interaction rules that model the collective animal behavior. In the approach, each solution within the search space represents an animal position. The “fitness value” refers to the animal dominance with respect to the group. The complete process mimics the collective animal behavior.The approach in this paper implements a memory for storing best solutions (animal positions) mimicking the aforementioned biologic process. Such memory is divided into two different elements, one for maintaining the best locations at each generation (Mg) and the other for storing the best historical positions during the complete evolutionary process (Mh).


### 3.1.  Description of the CAB Algorithm

Following other metaheuristic approaches, the CAB algorithm is an iterative process that starts by initializing the population randomly (generated random solutions or animal positions). Then, the following four operations are applied until a termination criterion is met (i.e., the iteration numberNI).(1)
Keep the position of the best individuals.(2)
Move from or to nearby neighbors (local attraction and repulsion).(3)
Move randomly.(4)
Compete for the space within a determined distance (update the memory).


#### 3.1.1. Initializing the Population

The algorithm begins by initializing a setA of Np animal positions (A={a1,a2,…,aNp}). Each animal position aiis a D-dimensional vector containing parameter values to be optimized. Such values are randomly and uniformly distributed between the prespecified lower initial parameter bound ajlow and the upper initial parameter boundajhigh,(3.1)aj,i=ajlow+rand(0,1)⋅(ajhigh-ajlow);j=1,2,…,D;i=1,2,…,Np,
with j and i being the parameter and individual indexes, respectively. Hence, aj,iis the jth parameter of the ith individual.All the initial positionsA are sorted according to the fitness function (dominance) to form a new individual set X={x1,x2,…,xNp}, so that we can choose the best B positions and store them in the memory Mg and Mh. The fact that both memories share the same information is only allowed at this initial stage.


#### 3.1.2.  Keep the Position of the Best Individuals

Analogous to the biological metaphor, this behavioral rule, typical from animal groups, is implemented as an evolutionary operation in our approach. In this operation, the firstB elements ({a1,a2,…,aB}), of the new animal position set A, are generated. Such positions are computed by the values contained inside the historical memoryMh, considering a slight random perturbation around them. This operation can be modeled as follows:(3.2)al=mhl+v,
where l∈{1,2,…,B} while mhlrepresents the l-element of the historical memory Mh. v is a random vector with a small enough length.


#### 3.1.3.  Move from or to Nearby Neighbors

From the biological inspiration, animals experiment a random local attraction or repulsion according to an internal motivation. Therefore, we have implemented new evolutionary operators that mimic such biological pattern. For this operation, a uniform random numberrmis generated within the range [0,1]. If  rmis less than a threshold H, a determined individual position is attracted/repelled considering the nearest best historical position within the group (i.e., the nearest position inMh); otherwise, it is attracted/repelled to/from the nearest best location within the group for the current generation (i.e., the nearest position inMg). Therefore such operation can be modeled as follows:(3.3)ai={xi±r⋅(mhnearest-xi)withprobabilityHxi±r⋅(mgnearest-xi)withprobability(1-H),
wherei∈{B+1,B+2,…,Np}, mhnearestand mgnearestrepresent the nearest elements of Mhand Mg to xi, while r is a random number between [-1,1]. Therefore, if r>0, the individual position xi is attracted to the position mhnearest or mgnearest, otherwise such movement is considered as a repulsion.


#### 3.1.4.  Move Randomly

Following the biological model, under some probabilityP, one animal randomly changes its position. Such behavioral rule is implemented considering the next expression:(3.4)ai={rwithprobabilityPxiwithprobability(1-P),
with i∈{B+1,B+2,…,Np}and r a random vector defined in the search space. This operator is similar to reinitializing the particle in a random position, as it is done by (3.1).


#### 3.1.5. Compete for the Space within a Determined Distance (Update the Memory)

Once the operations to keep the position of the best individuals, such as moving from or to nearby neighbors and moving randomly, have been applied to allNp animal positions, generating Np new positions, it is necessary to update the memoryMh.In order to update memoryMh, the concept of dominance is used. Animals that interact within the group maintain a minimum distance among them. Such distance, which is defined as ρ in the context of the CAB algorithm, depends on how aggressive the animal behaves [34, 42]. Hence, when two animals confront each other inside such distance, the most dominant individual prevails meanwhile other withdraw. Figure 1 depicts the process.Figure 1
Dominance concept as it is presented when two animals confront each other inside of aρ distance.In the proposed algorithm, the historical memoryMh is updated considering the following procedure.(1)
The elements ofMhand Mg are merged into MU (MU=Mh∪Mg).(2)
Each elementmUi of the memoryMUis compared pairwise to the remaining memory elements ({mU1,mU2,…,mU2B-1}). If the distance between both elements is less thanρ, the element getting a better performance in the fitness function prevails meanwhile the other is removed.(3)
From the resulting elements ofMU (from Step 2), it is selected the B best value to build the newMh.The use of the dominance principle in CAB allows considering as memory elements those solutions that hold the best fitness value within the region which has been defined by theρdistance.The procedure improves the exploration ability by incorporating information regarding previously found potential solutions during the algorithm’s evolution. In general, the value ofρ depends on the size of the search space. A big value of ρimproves the exploration ability of the algorithm although it yields a lower convergence rate.In order to calculate theρ value, an empirical model has been developed after considering several conducted experiments. Such model is defined by following equation:(3.5)ρ=∏j=1D(ajhigh-ajlow)10⋅D,
whereajlowand ajhigh represent the prespecified lower and upper bound of the j-parameter respectively, within an D-dimensional space.


#### 3.1.6. Computational Procedure

The computational procedure for the proposed algorithm can be summarized as follows:Step 1.
Set the parametersNp, B, H, P, and NI.Step 2.
Generate randomly the position setA={a1,a2,…,aNp} using (3.1).Step 3.
SortA according to the objective function (dominance) to buildX={x1,x2,…,xNp}.Step 4.
Choose the firstB positions of X and store them into the memoryMg.Step 5.
UpdateMh according to Section 3.1.5 (during the first iteration:Mh=Mg).Step 6.
Generate the firstB positions of the new solution set A({a1,a2,…,aB}).Such positions correspond to the elements of Mh making a slight random perturbation around them, (3.6)al=mhl+v,
being v a random vector of a small enough length.Step 7.
Generate the rest of theA elements using the attraction, repulsion, and random movements.fori=B+1 : Npif(r1<P) thenattraction and repulsion movement{if (r2<H) thenai=xi±r·(mhnearest-xi)else ifai=xi±r·(mgnearest-xi)}elserandom movement{ai=r}endwherer1,r2∈rand(0,1)andr∈[-1,1]Step 8.
IfNI is completed, the process is finished; otherwise, go back to Step 3.The best value inMh represents the global solution for the optimization problem.


## 3.1.  Description of the CAB Algorithm

Following other metaheuristic approaches, the CAB algorithm is an iterative process that starts by initializing the population randomly (generated random solutions or animal positions). Then, the following four operations are applied until a termination criterion is met (i.e., the iteration numberNI).(1)
Keep the position of the best individuals.(2)
Move from or to nearby neighbors (local attraction and repulsion).(3)
Move randomly.(4)
Compete for the space within a determined distance (update the memory).


### 3.1.1. Initializing the Population

The algorithm begins by initializing a setA of Np animal positions (A={a1,a2,…,aNp}). Each animal position aiis a D-dimensional vector containing parameter values to be optimized. Such values are randomly and uniformly distributed between the prespecified lower initial parameter bound ajlow and the upper initial parameter boundajhigh,(3.1)aj,i=ajlow+rand(0,1)⋅(ajhigh-ajlow);j=1,2,…,D;i=1,2,…,Np,
with j and i being the parameter and individual indexes, respectively. Hence, aj,iis the jth parameter of the ith individual.All the initial positionsA are sorted according to the fitness function (dominance) to form a new individual set X={x1,x2,…,xNp}, so that we can choose the best B positions and store them in the memory Mg and Mh. The fact that both memories share the same information is only allowed at this initial stage.


### 3.1.2.  Keep the Position of the Best Individuals

Analogous to the biological metaphor, this behavioral rule, typical from animal groups, is implemented as an evolutionary operation in our approach. In this operation, the firstB elements ({a1,a2,…,aB}), of the new animal position set A, are generated. Such positions are computed by the values contained inside the historical memoryMh, considering a slight random perturbation around them. This operation can be modeled as follows:(3.2)al=mhl+v,
where l∈{1,2,…,B} while mhlrepresents the l-element of the historical memory Mh. v is a random vector with a small enough length.


### 3.1.3.  Move from or to Nearby Neighbors

From the biological inspiration, animals experiment a random local attraction or repulsion according to an internal motivation. Therefore, we have implemented new evolutionary operators that mimic such biological pattern. For this operation, a uniform random numberrmis generated within the range [0,1]. If  rmis less than a threshold H, a determined individual position is attracted/repelled considering the nearest best historical position within the group (i.e., the nearest position inMh); otherwise, it is attracted/repelled to/from the nearest best location within the group for the current generation (i.e., the nearest position inMg). Therefore such operation can be modeled as follows:(3.3)ai={xi±r⋅(mhnearest-xi)withprobabilityHxi±r⋅(mgnearest-xi)withprobability(1-H),
wherei∈{B+1,B+2,…,Np}, mhnearestand mgnearestrepresent the nearest elements of Mhand Mg to xi, while r is a random number between [-1,1]. Therefore, if r>0, the individual position xi is attracted to the position mhnearest or mgnearest, otherwise such movement is considered as a repulsion.


### 3.1.4.  Move Randomly

Following the biological model, under some probabilityP, one animal randomly changes its position. Such behavioral rule is implemented considering the next expression:(3.4)ai={rwithprobabilityPxiwithprobability(1-P),
with i∈{B+1,B+2,…,Np}and r a random vector defined in the search space. This operator is similar to reinitializing the particle in a random position, as it is done by (3.1).


### 3.1.5. Compete for the Space within a Determined Distance (Update the Memory)

Once the operations to keep the position of the best individuals, such as moving from or to nearby neighbors and moving randomly, have been applied to allNp animal positions, generating Np new positions, it is necessary to update the memoryMh.In order to update memoryMh, the concept of dominance is used. Animals that interact within the group maintain a minimum distance among them. Such distance, which is defined as ρ in the context of the CAB algorithm, depends on how aggressive the animal behaves [34, 42]. Hence, when two animals confront each other inside such distance, the most dominant individual prevails meanwhile other withdraw. Figure 1 depicts the process.Figure 1
Dominance concept as it is presented when two animals confront each other inside of aρ distance.In the proposed algorithm, the historical memoryMh is updated considering the following procedure.(1)
The elements ofMhand Mg are merged into MU (MU=Mh∪Mg).(2)
Each elementmUi of the memoryMUis compared pairwise to the remaining memory elements ({mU1,mU2,…,mU2B-1}). If the distance between both elements is less thanρ, the element getting a better performance in the fitness function prevails meanwhile the other is removed.(3)
From the resulting elements ofMU (from Step 2), it is selected the B best value to build the newMh.The use of the dominance principle in CAB allows considering as memory elements those solutions that hold the best fitness value within the region which has been defined by theρdistance.The procedure improves the exploration ability by incorporating information regarding previously found potential solutions during the algorithm’s evolution. In general, the value ofρ depends on the size of the search space. A big value of ρimproves the exploration ability of the algorithm although it yields a lower convergence rate.In order to calculate theρ value, an empirical model has been developed after considering several conducted experiments. Such model is defined by following equation:(3.5)ρ=∏j=1D(ajhigh-ajlow)10⋅D,
whereajlowand ajhigh represent the prespecified lower and upper bound of the j-parameter respectively, within an D-dimensional space.


### 3.1.6. Computational Procedure

The computational procedure for the proposed algorithm can be summarized as follows:Step 1.
Set the parametersNp, B, H, P, and NI.Step 2.
Generate randomly the position setA={a1,a2,…,aNp} using (3.1).Step 3.
SortA according to the objective function (dominance) to buildX={x1,x2,…,xNp}.Step 4.
Choose the firstB positions of X and store them into the memoryMg.Step 5.
UpdateMh according to Section 3.1.5 (during the first iteration:Mh=Mg).Step 6.
Generate the firstB positions of the new solution set A({a1,a2,…,aB}).Such positions correspond to the elements of Mh making a slight random perturbation around them, (3.6)al=mhl+v,
being v a random vector of a small enough length.Step 7.
Generate the rest of theA elements using the attraction, repulsion, and random movements.fori=B+1 : Npif(r1<P) thenattraction and repulsion movement{if (r2<H) thenai=xi±r·(mhnearest-xi)else ifai=xi±r·(mgnearest-xi)}elserandom movement{ai=r}endwherer1,r2∈rand(0,1)andr∈[-1,1]Step 8.
IfNI is completed, the process is finished; otherwise, go back to Step 3.The best value inMh represents the global solution for the optimization problem.


## 3.1.1. Initializing the Population

The algorithm begins by initializing a setA of Np animal positions (A={a1,a2,…,aNp}). Each animal position aiis a D-dimensional vector containing parameter values to be optimized. Such values are randomly and uniformly distributed between the prespecified lower initial parameter bound ajlow and the upper initial parameter boundajhigh,(3.1)aj,i=ajlow+rand(0,1)⋅(ajhigh-ajlow);j=1,2,…,D;i=1,2,…,Np,
with j and i being the parameter and individual indexes, respectively. Hence, aj,iis the jth parameter of the ith individual.All the initial positionsA are sorted according to the fitness function (dominance) to form a new individual set X={x1,x2,…,xNp}, so that we can choose the best B positions and store them in the memory Mg and Mh. The fact that both memories share the same information is only allowed at this initial stage.


## 3.1.2.  Keep the Position of the Best Individuals

Analogous to the biological metaphor, this behavioral rule, typical from animal groups, is implemented as an evolutionary operation in our approach. In this operation, the firstB elements ({a1,a2,…,aB}), of the new animal position set A, are generated. Such positions are computed by the values contained inside the historical memoryMh, considering a slight random perturbation around them. This operation can be modeled as follows:(3.2)al=mhl+v,
where l∈{1,2,…,B} while mhlrepresents the l-element of the historical memory Mh. v is a random vector with a small enough length.


## 3.1.3.  Move from or to Nearby Neighbors

From the biological inspiration, animals experiment a random local attraction or repulsion according to an internal motivation. Therefore, we have implemented new evolutionary operators that mimic such biological pattern. For this operation, a uniform random numberrmis generated within the range [0,1]. If  rmis less than a threshold H, a determined individual position is attracted/repelled considering the nearest best historical position within the group (i.e., the nearest position inMh); otherwise, it is attracted/repelled to/from the nearest best location within the group for the current generation (i.e., the nearest position inMg). Therefore such operation can be modeled as follows:(3.3)ai={xi±r⋅(mhnearest-xi)withprobabilityHxi±r⋅(mgnearest-xi)withprobability(1-H),
wherei∈{B+1,B+2,…,Np}, mhnearestand mgnearestrepresent the nearest elements of Mhand Mg to xi, while r is a random number between [-1,1]. Therefore, if r>0, the individual position xi is attracted to the position mhnearest or mgnearest, otherwise such movement is considered as a repulsion.


## 3.1.4.  Move Randomly

Following the biological model, under some probabilityP, one animal randomly changes its position. Such behavioral rule is implemented considering the next expression:(3.4)ai={rwithprobabilityPxiwithprobability(1-P),
with i∈{B+1,B+2,…,Np}and r a random vector defined in the search space. This operator is similar to reinitializing the particle in a random position, as it is done by (3.1).


## 3.1.5. Compete for the Space within a Determined Distance (Update the Memory)

Once the operations to keep the position of the best individuals, such as moving from or to nearby neighbors and moving randomly, have been applied to allNp animal positions, generating Np new positions, it is necessary to update the memoryMh.In order to update memoryMh, the concept of dominance is used. Animals that interact within the group maintain a minimum distance among them. Such distance, which is defined as ρ in the context of the CAB algorithm, depends on how aggressive the animal behaves [34, 42]. Hence, when two animals confront each other inside such distance, the most dominant individual prevails meanwhile other withdraw. Figure 1 depicts the process.Figure 1
Dominance concept as it is presented when two animals confront each other inside of aρ distance.In the proposed algorithm, the historical memoryMh is updated considering the following procedure.(1)
The elements ofMhand Mg are merged into MU (MU=Mh∪Mg).(2)
Each elementmUi of the memoryMUis compared pairwise to the remaining memory elements ({mU1,mU2,…,mU2B-1}). If the distance between both elements is less thanρ, the element getting a better performance in the fitness function prevails meanwhile the other is removed.(3)
From the resulting elements ofMU (from Step 2), it is selected the B best value to build the newMh.The use of the dominance principle in CAB allows considering as memory elements those solutions that hold the best fitness value within the region which has been defined by theρdistance.The procedure improves the exploration ability by incorporating information regarding previously found potential solutions during the algorithm’s evolution. In general, the value ofρ depends on the size of the search space. A big value of ρimproves the exploration ability of the algorithm although it yields a lower convergence rate.In order to calculate theρ value, an empirical model has been developed after considering several conducted experiments. Such model is defined by following equation:(3.5)ρ=∏j=1D(ajhigh-ajlow)10⋅D,
whereajlowand ajhigh represent the prespecified lower and upper bound of the j-parameter respectively, within an D-dimensional space.


## 3.1.6. Computational Procedure

The computational procedure for the proposed algorithm can be summarized as follows:Step 1.
Set the parametersNp, B, H, P, and NI.Step 2.
Generate randomly the position setA={a1,a2,…,aNp} using (3.1).Step 3.
SortA according to the objective function (dominance) to buildX={x1,x2,…,xNp}.Step 4.
Choose the firstB positions of X and store them into the memoryMg.Step 5.
UpdateMh according to Section 3.1.5 (during the first iteration:Mh=Mg).Step 6.
Generate the firstB positions of the new solution set A({a1,a2,…,aB}).Such positions correspond to the elements of Mh making a slight random perturbation around them, (3.6)al=mhl+v,
being v a random vector of a small enough length.Step 7.
Generate the rest of theA elements using the attraction, repulsion, and random movements.fori=B+1 : Npif(r1<P) thenattraction and repulsion movement{if (r2<H) thenai=xi±r·(mhnearest-xi)else ifai=xi±r·(mgnearest-xi)}elserandom movement{ai=r}endwherer1,r2∈rand(0,1)andr∈[-1,1]Step 8.
IfNI is completed, the process is finished; otherwise, go back to Step 3.The best value inMh represents the global solution for the optimization problem.


## 4.  Experimental Results

### 4.1.  Test Suite and Experimental Setup

A comprehensive set of 31 functions that have been collected from [43–54], they are used to test the performance of the proposed approach. Tables 12–17 in the appendix  present the benchmark functions used in our experimental study. Such functions are classified into four different categories: unimodal test functions (Table 12), multimodal test functions (Table 13), multimodal test functions with fixed dimensions (Tables 14 and 15), and GKLS test functions (Tables 16 and 17). In such tables, n is the dimension of function, fopt is the minimum value of the function, and S is a subset of Rn. The optimum location (xopt) for functions in Tables 12 and 13 fall into [0]n, except for f5, f12 and f13with xoptfalling into [1]n and f8 in [420.96]n. A detailed description of all functions is given in the appendix.To study the impact of parametersP and H (described in Sections 3.1.3 and 3.1.4) over the performance of CAB, different values have been tested on 5 typical functions. The maximum number of iterations is set to 1000.Np and B are fixed to 50 and 10, respectively. The mean best function values (μ) and the standard deviations (σ2) of CAB, averaged over 30 runs, for the different values of P and H are listed in Tables 1 and 2, respectively. The results suggest that a proper combination of different parameter values can improve the performance of CAB and the quality of solutions. Table 1 shows the results of an experiment which consist in fixing H=0.8and varying P from 0.5 to 0.9. On a second test, the experimental setup is swapped, that is, P=0.8 and H varies from 0.5 to 0.9. The best results in the experiments are highlighted in both tables. After the best value in parameters P and H has been experimentally determined (with a value of 0.8), it is kept for all tests throughout the paper.Table 1
Results of CAB with variant values of parameterP over 5 typical functions, with H=0.8.
FunctionnP=0.5, μ(σ2)P=0.6, μ(σ2)P=0.7, μ(σ2)P=0.8, μ(σ2)P=0.9, μ(σ2)f1302.63×10-11(2.13×10-12)1.98×10-17(6.51×10-18)1.28×10-23(3.54×10-24)2.33×10-29(4.41×10-30)4.53×10-23(5.12×10-24)f3305.71×10-13(1.11×10-14)7.78×10-19(1.52×10-20)4.47×10-27(3.6×10-28)7.62×10-31(4.23×10-32)3.42×10-26(3.54×10-27)f5305.68×10-11(2.21×10-12)1.54×10-17(1.68×10-18)5.11×10-22(4.42×10-23)9.02×10-28(6.77×10-29)4.77×10-20(1.94×10-21)f10303.50×10-5(3.22×10-6)2.88×10-9(3.28×10-10)2.22×10-12(4.21×10-13)8.88×10-16(3.49×10-17)1.68×10-11(5.31×10-12)f11301.57×10-2(1.25×10-3)1.14×10-6(3.71×10-7)2.81×10-8(5.21×10-9)4.21×10-10(4.87×10-11)4.58×10-4(6.92×10-5)Table 2
Results of CAB with variant values of parameterH over 5 typical functions, with P=0.8.
FunctionnH=0.5,μ(σ2)H=0.6,μ(σ2)H=0.7,μ(σ2)H=0.8,μ(σ2)H=0.9,μ(σ2)f1302.23×10-10(8.92×10-11)3.35×10-18(3.21×10-19)3.85×10-22(6.78×10-23)2.33×10-29(4.41×10-30)4.72×10-21(6.29×10-22)f3305.71×10-10(5.12×10-11)3.24×10-18(1.32×10-19)6.29×10-27(8.26×10-23)7.62×10-31(4.23×10-32)5.41×10-22(5.28×10-23)f5308.80×10-9(5.55×10-10)6.72×10-21(1.11×10-22)1.69×10-23(1.34×10-24)9.02×10-28(6.77×10-29)7.39×10-21(4.41×10-22)f10302.88×10-4(3.11×10-5)3.22×10-10(2.18×10-12)1.23×10-14(4.65×10-15)8.88×10-16(3.49×10-17)5.92×10-7(3.17×10-9)f11301.81×10-4(2.16×10-5)2.89×10-6(6.43×10-7)2.36×10-7(3.75×10-4)4.21×10-10(4.87×10-11)3.02×10-4(4.37×10-6)In order to demonstrate that the CAB algorithm provides a better performance, it has been compared to other optimization approaches such as metaheuristic algorithms (Section4.2) and continuous methods (Section 4.3). The results of such comparisons are explained in the following sections.


### 4.2.  Performance Comparison with Other Metaheuristic Approaches

We have applied CAB to 31 test functions in order to compare its performance to other well-known metaheuristic algorithms such as the real genetic algorithm (RGA) [55], the PSO [18], the gravitational search algorithm (GSA) [56], and the differential evolution method (DE) [57]. In all cases, population size is set to 50. The maximum iteration number is 1000 for functions in Tables 12 and 13, and 500 for functions in Table 14 and 16. Such stop criteria have been chosen as to keep compatibility to similar works which are reported in [14] and [58].Parameter settings for each algorithm in the comparison are described as follows.(1)
RGA: according to [55], the approach uses arithmetic crossover, Gaussian mutation, and roulette wheel selection. The crossover and mutation probabilities have been set to 0.3 and 0.1, respectively.(2)
PSO: In the algorithm,c1=c2=2 while the inertia factor (ω) is decreasing linearly from 0.9 to 0.2.(3)
In GSA,G0 is set to 100 and α is set to 20; T is the total number of iterations (set to 1000 for functions f1–f13 and to 500 for functionsf14–f31). Besides, K0 is set to 50 (total number of agents) and is decreased linearly to 1. Such values have been found as the best configuration set according to [56].(4)
DE: the DE/Rand/1 scheme is employed. The parameter settings follow the instructions in [57]. The crossover probability is CR=0.9 and the weighting factor is F=0.8.Several experimental tests have been developed for comparing the performance of the CAB algorithm against other metaheuristic algorithms. The experiments have been developed considering the following function types.(1)
Unimodal test functions (Table12).(2)
Multimodal test functions (Table13).(3)
Multimodal test functions with fixed dimensions (Tables14 and 15).(4)
GKLS test functions (Tables16 and 17).


#### 4.2.1. Unimodal Test Functions

In this test, the performance of the CAB algorithm is compared to RGA, PSO, GSA and DE, considering functions with only one minimum/maximum. Such function type is represented by functionsf1 to f7 in Table 12. The results, over 30 runs, are reported in Table 3 considering the following performance indexes: the average best-so-far solution, the average mean fitness function, and the median of the best solution in the last iteration. The best result for each function is boldfaced. According to this table, CAB provides better results than RGA, PSO, GSA, and DE for all functions. In particular, the results show considerable precision differences which are directly related to different local operators at each metaheuristic algorithm. Moreover, the good convergence rate of CAB can be observed from Figure 2. According to this figure, CAB tends to find the global optimum faster than other algorithms and yet offer the highest convergence rate.Table 3
Minimization result of benchmark functions in Table12 with n=30. Maximum number of iterations = 1000.
RGAPSOGSADECABf1Average best sofar23.131.8×10-37.3×10-1111.212.3×10-29Median best sofar21.871.2×10-37.1×10-1113.211.1×10-20Average mean fitness23.451.2×10-22.1×10-1011.781.2×10-10f2Average best sofar1.072.04.03×10-50.955.28×10-20Median best sofar1.131.9×10-34.07×10-51.052.88×10-11Average mean fitness1.072.06.9×10-50.901.43×10-9f3Average best sofar5.6×1034.1×1030.16×1030.127.62×10-31Median best sofar5.6×1032.2×1030.15×1030.091.28×10-19Average mean fitness5.6×1032.9×1030.16×1030.113.51×10-12f4Average best sofar11.788.13.7×10-60.0122.17×10-17Median best sofar11.947.43.7×10-60.0585.65×10-12Average mean fitness11.7823.68.5×10-60.0134.96×10-10f5Average best sofar1.1×1033.6×10425.160.259.025×10-28Median best sofar1.0×1031.7×10325.180.313.10×10-18Average mean fitness1.1×1033.7×10425.160.246.04×10-14f6Average best sofar24.011.0×10-38.3×10-111.25×10-34.47×10-29Median best sofar24.556.6×10-37.7×10-113.33×10-34.26×10-21Average mean fitness24.520.022.6×10-101.27×10-31.03×10-12f7Average best sofar0.060.040.0186.87×10-33.45×10-5Median best sofar0.060.040.0154.72×10-37.39×10-4Average mean fitness0.561.040.5331.28×10-28.75×10-4Performance comparison of RGA, PSO, GSA, DE, and CAB for minimization of (a)f1and (b) f7 consideringn=30.
(a)(b)In order to statistically analyze the results in Table3, a non-parametric significance proof known as the Wilcoxon’s rank test has been conducted [59, 60], which allows assessing result differences among two related methods. The analysis is performed considering a 5% significance level over the “average best-so-far” data. Table 4 reports the P values produced by Wilcoxon’s test for the pairwise comparison of the “average best so-far” of four groups. Such groups are formed by CAB versus RGA, CAB versus PSO, CAB versus GSA, and CAB versus DE. As a null hypothesis, it is assumed that there is no significant difference between mean values of the two algorithms. The alternative hypothesis considers a significant difference between the “average best-so-far” values of both approaches. All P values reported in the table are less than 0.05 (5% significance level) which is a strong evidence against the null hypothesis, indicating that the CAB results are statistically significant and that it has not occurred by coincidence (i.e., due to the normal noise contained in the process).Table 4
P values produced by Wilcoxon’s test comparing CAB versus RGA, PSO, GSA, and DE over the “average best-so-far” values from Table 3.
CAB versusRGAPSOGSADEf11.21×10-63.94×10-57.39×10-41.04×10-6f22.53×10-65.62×10-54.92×10-42.21×10-6f38.34×10-86.42×10-87.11×10-71.02×10-4f43.81×10-81.91×10-87.39×10-41.27×10-6f54.58×10-89.77×10-94.75×10-70.23×10-4f68.11×10-81.98×10-65.92×10-42.88×10-5f75.12×10-74.77×10-78.93×10-61.01×10-4


#### 4.2.2. Multimodal Test Functions

Multimodal functions, in contrast to unimodal, have many local minima/maxima which are, in general, more difficult to optimize. In this section the performance of the CAB algorithm is compared to other metaheuristic algorithms considering multimodal functions. Such comparison reflects the algorithm’s ability to escape from poor local optima and to locate a near-global optimum. We have done experiments onf8to f13of Table 13 where the number of local minima increases exponentially as the dimension of the function increases. The dimension of these functions is set to 30. The results are averaged over 30 runs, reporting the performance indexes in Table 5 as follows: the average best-so-far solution, the average mean fitness function and, the median of the best solution in the last iteration (the best result for each function is highlighted). Likewise, P values of the Wilcoxon signed-rank test of 30 independent runs are listed in Table 6.Table 5
Minimization of benchmark functions in Table13 with n=30. Maximum number of iterations = 1000.
RGAPSOGSADECABf8Average best sofar-1.26×104-9.8×103-2.8×103-4.1×103-1.2×104Median best sofar-1.26×104-9.8×103-2.6×103-4.1×103-1.2×104Average mean fitness-1.26×104-9.8×103-1.1×103-4.1×103-1.2×104f9Average best sofar5.9055.115.3230.121.0×10-3Median best sofar5.7156.614.4231.437.6×10-4Average mean fitness5.9272.815.3230.121.0×10-3f10Average best sofar2.139.0×10-36.9×10-63.1×10-38.88×10-16Median best sofar2.166.0×10-36.9×10-62.3×10-32.97×10-11Average mean fitness2.150.021.1×10-53.1×10-39.0×10-10f11Average best sofar1.160.010.291.0×10-31.14×10-13Median best sofar1.140.00810.041.0×10-31.14×10-13Average mean fitness1.160.0550.291.0×10-31.14×10-13f12Average best sofar0.0510.290.010.122.32×10-30Median best sofar0.0390.114.2×10-130.015.22×10-22Average mean fitness0.0539.3×1030.010.124.63×10-17f13Average best sofar0.0813.1×10-183.2×10-321.77×10-251.35×10-32Median best sofar0.0322.2×10-232.3×10-321.77×10-252.20×10-21Average mean fitness0.0814.8×1053.2×10-321.77×10-253.53×10-17Table 6
P values produced by Wilcoxon’s test comparing CAB versus RGA, PSO, GSA, and DE over the “average best-so-far” values from Table 5.
CAB versusRGAPSOGSADEf80.898.38×10-41.21×10-44.61×10-4f97.23×10-71.92×10-95.29×10-89.97×10-8f106.21×10-94.21×10-51.02×10-43.34×10-4f117.74×10-93.68×10-74.10×10-78.12×10-5f121.12×10-88.80×10-92.93×10-74.02×10-8f134.72×10-93.92×10-50.932.20×10-4Forf9, f10, f11,and f12, CAB yields a much better solution than the others. However, for functions f8 and f13, CAB produces similar results to RGA and GSA, respectively. The Wilcoxon rank test results, presented in Table 6, show that CAB performed better than RGA, PSO, GSA, and DE considering the four problems f9–f12, whereas, from a statistical viewpoint, there is not difference in results between CAB and RGA for f8 and between CAB and GSA forf13. Evolutions of the “average best-so-far” solutions over 30 runs for functions f10 and f12 are shown in Figure 3.Performance comparison of RGA, PSO, GSA, DE, and CAB for minimization of (a)f10and (b) f12 considering n=30.
(a)(b)


#### 4.2.3. Multimodal Test Functions with Fixed Dimensions

In the following experiments the performance of the CAB algorithm is compared to RGA, PSO, GSA, and DE considering functions which are extensively reported in the metaheuristic-based optimization literature [49–54]. Such functions, represented by f14 to  f23in Tables 14 and 15, are all multimodal with fixed dimensions. Table 7 shows the outcome of such process. Results, presented in Table 7, show how metaheuristic algorithms maintain a similar average performance when they are applied to low-dimensional functions [58]. The results show that RGA, PSO, and GSA have similar solutions and performances that are nearly the same as it can be seen in Figure 4.Table 7
Minimization result of benchmark functions in Table14 with n=30. Maximum number of iterations = 500.
RGAPSOGSADECABf14Average best sofar0.9980.9983.700.9980.998Median best sofar0.9980.9982.070.9980.998Average mean fitness0.9980.9989.170.9980.998f15Average best sofar4.0×10-32.8×10-38.0×10-32.2×10-31.1×10-3Median best sofar1.7×10-37.1×10-47.4×10-45.3×10-42.2×10-4Average mean fitness4.0×10-3215.609.0×10-32.2×10-31.1×10-3f16Average best sofar−1.0313−1.0316−1.0316−1.0316−1.0316Median best sofar−1.0315−1.0316−1.0316−1.0316−1.0316Average mean fitness−1.0313−1.0316−1.0316−1.0316−1.0316f17Average best sofar0.39960.39790.39790.39790.3979Median best sofar0.39800.39790.39790.39790.3979Average mean fitness0.39962.41120.39790.39790.3979f18Average best sofar−3.8627−3.8628−3.8628−3.8628−3.8628Median best sofar−3.8628−3.8628−3.8628−3.8628−3.8628Average mean fitness−3.8627−3.8628−3.8628−3.8628−3.8628f19Average best sofar−3.3099−3.3269−3.7357−3.3269−3.8501Median best sofar−3.3217−3.2031−3.8626−3.3269−3.8501Average mean fitness−3.3098−3.2369−3.8020−3.3269−3.8501f20Average best sofar−3.3099−3.2369−2.0569−3.2369−3.2369Median best sofar−3.3217−3.2031−1.9946−3.2369−3.2369Average mean fitness−3.3098−3.2369−1.6014−3.2369−3.2369f21Average best sofar−5.6605−6.6290−6.0748−6.6290−10.1532Median best sofar−2.6824−5.1008−5.0552−6.0748−10.1532Average mean fitness−5.6605−5.7496−6.0748−6.6290−10.1532f22Average best sofar−7.3421−9.1118−9.3339−9.3339−10.4028Median best sofar−10.3932−10.402−10.402−9.3339−10.4028Average mean fitness−7.3421−9.9305−9.3399−9.3339−10.4028f23Average best sofar−6.2541−9.7634−9.4548−9.7634−10.5363Median best sofar−4.5054−10.536−10.536−9.7636−10.5363Average mean fitness−6.2541−8.7626−9.4548−9.7634−10.5363Performance comparison of RGA, PSO, GSA, DE, and CAB for minimization of (a)f15 and (b)f22.
(a)(b)


#### 4.2.4. GKLS Test Functions

This section considers GKLS functions which are built using the GKLS-generator described in [54]. In the construction, the generator uses a set of user-defined parameters for building a multimodal function with known local and global minima. For conducting the numerical experiments, eight GKLS functions been employed which are defined byf24tof31. Details of their characteristics and parameters for their construction are listed in Tables 16 and 17. Results, over 30 runs, are reported in Table 8 (the best result for each function test is boldfaced). According to this table, CAB provides better results than RGA, PSO, GSA, and DE for all GKLS functions, in particular for functions holding bigger dimensions (f28–f31). Such performance is directly related to a better tradeoff between exploration and exploitation which is produced by CAB operators. Likewise, as it can be observed from Figure 5, the CAB algorithm possesses better convergence rates in comparison to other metaheuristic algorithms.Table 8
Minimization result of GKLSfunctions in Table16. Maximum number of iterations = 500.
RGAPSOGSADECABf24Average best sofar−0.942004−0.932011−0.899812−0.951937−1Median best sofar−0.908521−0.910058−0.882597−0.909844−0.999924Average mean fitness−0.907354−0.909058−0.882597−0.903981−0.999865f25Average best sofar−0.931281−0.941281−0.813412−0.968839−1Median best sofar−0.900889−0.899011−0.803482−0.909983−0.999961Average mean fitness−0.900115−0.898545−0.801143−0.901101−0.999732f26Average best sofar−0.939845−0.924521−0.798799−0.944561−1Median best sofar−0.808034−0.872132−0.701174−0.836621−0.999081Average mean fitness−0.801618−0.864321−0.698722−0.816695−0.963632f27Average best sofar−0.948823−0.939799−0.778588−0.948977−1Median best sofar−0.818891−0.798812−0.668721−0.812237−0.999552Average mean fitness−0.803487−0.758892−0.601179−0.8087210.990978f28Average best sofar−0.888821−0.858814−0.618791−0.871471−0.99907Median best sofar−0.695712−0.662715−0.550711−0.773419−0.889712Average mean fitness−0.599871−0.500784−0.443982−0.612876−0.787712f29Average best sofar−0.872291−0.880139−0.642839−0.885412−0.998681Median best sofar−0.618732−0.602568−0.452974−0.702591−0.857517Average mean fitness−0.552374−0.459871−0.400781−0.610887−0.800181f30Average best sofar−0.798712−0.779521−0.607894−0.807127−0.985712Median best sofar−0.684521−0.645828−0.401896−0.534519−0.882378Average mean fitness−0.551411−0.497812−0.400874−0.458717−0.819784f31Average best sofar−0.788952−0.792231−0.613691−0.798827−0.998712Median best sofar−0.692354−0.702387−0.596711−0.672895−0.842397Average mean fitness−0.601008−0.652394−0.482337−0.604732−0.808897Performance comparison of RGA, PSO, GSA, DE and CAB for minimization of the GKLS-functions: (a)f28 and (b)f31.
(a)(b)In order to statistically validate the results of Table8, the Wilcoxon’s test has been conducted. Table 9 shows the P values obtained after applying such analysis over 30 independent executions. Since all P values, presented in Table 9, are less than 0.05, it indicates that the CAB results are statistically better.Table 9
P values produced by Wilcoxon’s test comparing CAB versus RGA, PSO, GSA, and DE over the “average best-so-far” values from Table 8.
CAB versusRGAPSOGSADEf240.03520.03120.01210.0389f250.02110.02370.01180.0311f260.02240.02380.00810.0301f270.02730.02310.00230.0308f280.02080.01980.00110.0210f290.02020.02190.00090.0258f300.01750.01650.00040.0221f310.01590.01660.00020.0208


### 4.3.  Comparison to Continuous Optimization Methods

Finally, the CAB algorithm is also compared to continuous optimization methods by considering some functions of the appendix. Since the BFSG algorithm [61] is one of the most effective continuous methods for solving unconstrained optimization problems, it has been considered as a basis for the algorithms used in the comparison.In order to compare the performance of CAB to continuous optimization approaches, two different tests have been conducted. The first one tests the ability of BFGS and CAB to face unimodal optimization tasks (see Section4.3.1) is evaluated. The second experiment analyzes the performance of CAB and one BFGS-based approach, when they are both applied to multimodal functions (review Section 4.3.2).


#### 4.3.1.  Local Optimization

In the first experiment, the performance of algorithms BFGS and CAB over unimodal functions is compared. In unimodal functions, the global minimum matches the local minimum. Quasi-Newton methods, such as the BFGS, have a fast rate of local convergence although it depends on the problem’s dimension [62, 63]. Considering that not all unimodal functions of Table 12 fulfill the requirements imposed by the gradient-based approaches (i.e., f2and f4are not differentiable meanwhile f7 is nonsmooth), we have chosen the Rosenbrock function (f5) as a benchmark.In the test, both algorithms (BFGS and CAB) are employed to minimizef5, considering different dimensions. For the BFGS implementation, B0=I is considered as initial matrix. Likewise, parameters δand σare set to 0.1 and 0.9 respectively. Although several performance criteria may define a comparison index, most can be applied to only one method timely (such as the number of gradient evaluations). Therefore, this paper considers the elapsed time and the iteration number (once the minimum has been reached) as performance indexes in the comparison. In the case of BFGS, the termination condition is assumed as∥g5(x)∥≤1×10-6, withg5(x)being the gradient of f5(x). On the other hand, the stopping criterion of CAB considers when no more changes to the best element in memoryMh are registered. Table 10 presents the results of both algorithms considering several dimensions (n∈{2,10,30,50,70,100,120}) off5. In order to assure consistency, such results represent the averaged elapsed time (AET) and the averaged iteration number (AIN) over 30 different executions. It is additionally considered that at each execution both methods are initialized in a random point (inside the search space).Table 10
Performance comparison between the BFGS and the CAB algorithm, considering different dimensions over the Rosenbrock function. The averaged elapsed time (AET) is referred in seconds.
f5AETAINnBFGSCABBFGSCAB20.154.21689100.555.282298301.355.4441108502.775.8868112704.236.11931151005.556.221051211206.646.71125129From Table10, we can observe that the BFGS algorithm produces shorter elapsed times and fewer iterations than the CAB method. However, from n=70, the CAB algorithm contend with similar results. The fact that the BFGS algorithm outperforms the CAB approach cannot be deemed as a negative feature considering the restrictions imposed to the functions by the BFGS method.


#### 4.3.2. Global Optimization

Since the BFGS algorithm exploits only local information, it may easily get trapped into local optima restricting its use for global optimization. Thus, several methods based on continuous optimization approaches have been proposed. One of the most widely used techniques is the so-called multistart [64] (MS). In MS a point is randomly chosen from a feasible region as initial solution and subsequently a continuous optimization algorithm (local search) starts from it. Then, the process is repeated until a near global optimum is reached. The weakness of MS is that the same local minima may be found over and over again, wasting computational resources [65].In order to compare the performance of the CAB approach to continuous optimization methods in the context of global optimization, the MS algorithm ADAPT [66] has been chosen. ADAPT uses as local search method the BFGS algorithm, which is iteratively executed. Thus, ADAPT possess two different stop criteria, one for the local procedure BFGS and other for the complete MS approach. For the comparison, the ADAPT algorithm has been implemented as suggested in [66].In the second experiment, the performance of the ADAPT and the CAB algorithms is compared over several multimodal functions described in Tables13 and 14. The study considers the following performance indexes: the elapsed time, the iteration number, and the average best so-far solution. In case of the ADAPT algorithm, the iteration number is computed as the total iteration number produced by all the local search procedures as the MS method operates. The termination condition of the ADAPT local search algorithm (BFGS) is assumed when∥gk(x)∥≤1×10-5, gk(x) being the gradient of fk(x). On the other hand, the stopping criterion for the CAB and the ADAPT algorithms is considered when no more changes in the best solution are registered. Table 11 presents results from both algorithms considering several multimodal functions. In order to assure consistency, results ponder the averaged elapsed time (AET), the averaged iteration number (AIN) and the average best-so-far solution (ABS) over 30 different executions. In Table 11, the averaged number of local searches (ALS) executed by ADAPT during the optimization is additionally considered.Table 11
Performance comparison between the ADAPT and the CAB algorithm considering different multimodal functions. The averaged elapsed time (AET) is referred in the format M’s (Minute’second).
FunctionnADAPTCABALSAETAINABSAETAINABSf930370545.423,3271.2×10-210.26331.0×10-3f103040541′05.738,3416.21×10-1212.17238.88×10-16f113032,4522′12.1102,3214.51×10-1015.88841.14×10-13f172153233.220,2020.39767.33320.3979f182123331.618,845−3.86116.6295−3.8628Table 12
Unimodal test functions.
Test functionSfoptf1(x)=∑i=1nxi2[-100,100]n0f2(x)=∑i=1n|xi|+∏i=1n|xi|[-10,10]n0f3(x)=∑i=1n(∑j=1ixj)2[-100,100]n0f4(x)=maxi{|xi|,1≤i≤n}[-100,100]n0f5(x)=∑i=1n-1[100(xi+1-xi2)2+(xi-1)2][-30,30]n0f6(x)=∑i=1n(xi+0.5)2[-100,100]n0f7(x)=∑i=1nixi4+rand(0,1)[-1.28,1.28]n0Table 13
Multimodal test functions.
Test functionSfoptf8(x)=∑i=1n-xisin(|xi|)[-500,500]n−418.98*nf9(x)=∑i=1n[xi2-10cos(2πxi)+10][-5.12,5.12]n0f10(x)=-20exp(-0.2(1/n)∑i=1nxi2)-exp((1/n)∑i=1ncos(2πxi))+20[-32,32]n0f11(x)=(1/4000)∑i=1nxi2-∏i=1ncos(xi/i)+1[-600,600]n0f12(x)=(π/n){10sin(πy1)+∑i=1n-1(yi-1)2[1+10sin2(πyi+1)]+(yn-1)2}+∑i=1nu(xi,10,100,4)yi=1+(xi+1)/4u(xi,a,k,m)={k(xi-a)mxi>a0-a<xi<ak(-xi-a)mxi<-a[-50,50]n0f13(x)=0.1{sin2(3πx1)+∑i=1n(xi-1)2[1+sin2(3πxi+1)]+(xn-1)2[1+sin2(2πxn)]}+∑i=1nu(xi,5,100,4)[-50,50]n0Table 14
Multimodal test functions with fixed dimensions.
Test functionSfoptf14(x)=(1/500+∑j=1251j+∑i=12(xi-aij)6),-1aij=(-32,-16,0,16,32,-32,…,0,16,32-32,-32,-32,-32,16,…,32,32,32)[-65.5,65.5]21f15(x)=∑i=111[ai-xi(bi2+bix2)bi2+bix3+x4]2a=[0.1957,0.1947,0.1735,0.1600,0.0844,0.0627,0.0456,0.0342,0.0342,0.0235,0.0246]b=[0.25,0.5,1,2,4,6,8,10,12,14,16][-5,5]40.00030f16(x1,x2)=4x12-2.1x14+(1/3)x16+x1x2-4x22+4x24[-5,5]2−1.0316f17(x1,x2)=(x2-(5.1/4π2))x12+(5/π)x1-6)2+10(1-(1/8π))cosx1+10x1∈[-5,10]x2∈[0,15]0.398f18(x1,x2)=[1+(x1+x2+1)2(19-14x1+3x12-14x2+6x1x2+3x22]×[30+(2x1-3x2)2×(18-32x1+12x12+48x2-36x1x2+27x22][-5,5]23f19(x)=-∑i=14ciexp(-∑j=13aij(xj-pij)2)a=[310300.11035310300.11030], c=[1,1.2,3,3.2],  P=[0.36890.1170.26730.46990.43870.74700.10910.87320.55470.03810.57430.8828][0,1]3−3.86f20(x)=-∑i=14ciexp(-∑j=16aij(xj-pij)2)a=[103173.51.780.0510170.181433.517101781780.05100.114],c=[1,1.2,3,3.2],  P=[0.1310.1690.5560.0120.8280.5880.2320.4130.8300.3730.1000.9990.2340.1410.3520.2880.3040.6650.4040.8820.8730.5740.1090.038][0,1]6−3.32f21(x)=-∑i=15[(x-ai)(x-ai)T+ci]-1, a=[44441111888866663737292955338181626273.673.6],c=[0.1,0.2,0.2,0.4,0.4,0.6,0.3,0.7,0.5,0.5][0,10]4−10.1532f22(x)=-∑i=17[(x-ai)(x-ai)T+ci]-1, a and c, equal to f21[0,10]4−10.4028f23(x)=-∑i=17[(x-ai)(x-ai)T+ci]-1,a and c, equal to f21[0,10]4−10.5363Table 15
Optimum locations of Table14.
Test functionxoptTest functionxoptf14(-32,32)f19(0.114,0.556,0.852)f15(0.1928,0.1908,0.1231,0.1358)f20(0.201,0.15,0.477,0.275,0.311,0.657)f16(0.089,-0.71),(-0.0089,0.712)f215 local minima inaij,i=1,…,5f17(-3.14,12.27),(3.14,2.275),(9.42,2.42)f227 local minima inaij,i=1,…,7f18(0,-1)f2310 local minima inaij,i=1,…,10Table 16
Used GKLSfunctions.
Test functionn (N)r*ρ*Function classFunction numberMSfoptf2420.90.1D8710[-1,1]2−1f2520.70.3ND2010[-1,1]2−1f2630.90.1D8710[-1,1]3−1f2730.70.3ND2010[-1,1]3−1f2860.90.1D8710[-1,1]6−1f2960.70.3ND2010[-1,1]6−1f30100.90.1D8710[-1,1]10−1f31100.70.3ND2010[-1,1]10−1Table 17
Optimum locations of the used GKLS functions.
Test functionxoptf24(−0.767, −0.076)f25(0.172, 0.174)f26(−0.262, 0.253, −0.161)f27(−0.168, −0.859, −0.727)f28(−0.361, −0.562, −0.650, 0.857, −0.070, 0.906)f29(−0.286, 0.227, −0.692, −0.388, −0.299, 0.732)f30(0.392, −0.139, −0.667, 0.899, 0.654, −0.609, −0.087, −0.700, −0.287, 0.893)f31(0.723, 0.413, 0.473, −0.746, 0.054, −0.412, −0.332, −0.677, 0.996, 0.239)Table11 provides a summarized performance comparison between the ADAPT and the CAB algorithms. although both algorithms are able to acceptably locate the global minimum for both cases, there exist significant differences in the required time for reaching it. When comparing the averaged elapsed time (AET) and the averaged iteration number (AIN) in Table 11, CAB uses significantly less time and fewer iterations to reach the global minimum than the ADAPT algorithm.


## 4.1.  Test Suite and Experimental Setup

A comprehensive set of 31 functions that have been collected from [43–54], they are used to test the performance of the proposed approach. Tables 12–17 in the appendix  present the benchmark functions used in our experimental study. Such functions are classified into four different categories: unimodal test functions (Table 12), multimodal test functions (Table 13), multimodal test functions with fixed dimensions (Tables 14 and 15), and GKLS test functions (Tables 16 and 17). In such tables, n is the dimension of function, fopt is the minimum value of the function, and S is a subset of Rn. The optimum location (xopt) for functions in Tables 12 and 13 fall into [0]n, except for f5, f12 and f13with xoptfalling into [1]n and f8 in [420.96]n. A detailed description of all functions is given in the appendix.To study the impact of parametersP and H (described in Sections 3.1.3 and 3.1.4) over the performance of CAB, different values have been tested on 5 typical functions. The maximum number of iterations is set to 1000.Np and B are fixed to 50 and 10, respectively. The mean best function values (μ) and the standard deviations (σ2) of CAB, averaged over 30 runs, for the different values of P and H are listed in Tables 1 and 2, respectively. The results suggest that a proper combination of different parameter values can improve the performance of CAB and the quality of solutions. Table 1 shows the results of an experiment which consist in fixing H=0.8and varying P from 0.5 to 0.9. On a second test, the experimental setup is swapped, that is, P=0.8 and H varies from 0.5 to 0.9. The best results in the experiments are highlighted in both tables. After the best value in parameters P and H has been experimentally determined (with a value of 0.8), it is kept for all tests throughout the paper.Table 1
Results of CAB with variant values of parameterP over 5 typical functions, with H=0.8.
FunctionnP=0.5, μ(σ2)P=0.6, μ(σ2)P=0.7, μ(σ2)P=0.8, μ(σ2)P=0.9, μ(σ2)f1302.63×10-11(2.13×10-12)1.98×10-17(6.51×10-18)1.28×10-23(3.54×10-24)2.33×10-29(4.41×10-30)4.53×10-23(5.12×10-24)f3305.71×10-13(1.11×10-14)7.78×10-19(1.52×10-20)4.47×10-27(3.6×10-28)7.62×10-31(4.23×10-32)3.42×10-26(3.54×10-27)f5305.68×10-11(2.21×10-12)1.54×10-17(1.68×10-18)5.11×10-22(4.42×10-23)9.02×10-28(6.77×10-29)4.77×10-20(1.94×10-21)f10303.50×10-5(3.22×10-6)2.88×10-9(3.28×10-10)2.22×10-12(4.21×10-13)8.88×10-16(3.49×10-17)1.68×10-11(5.31×10-12)f11301.57×10-2(1.25×10-3)1.14×10-6(3.71×10-7)2.81×10-8(5.21×10-9)4.21×10-10(4.87×10-11)4.58×10-4(6.92×10-5)Table 2
Results of CAB with variant values of parameterH over 5 typical functions, with P=0.8.
FunctionnH=0.5,μ(σ2)H=0.6,μ(σ2)H=0.7,μ(σ2)H=0.8,μ(σ2)H=0.9,μ(σ2)f1302.23×10-10(8.92×10-11)3.35×10-18(3.21×10-19)3.85×10-22(6.78×10-23)2.33×10-29(4.41×10-30)4.72×10-21(6.29×10-22)f3305.71×10-10(5.12×10-11)3.24×10-18(1.32×10-19)6.29×10-27(8.26×10-23)7.62×10-31(4.23×10-32)5.41×10-22(5.28×10-23)f5308.80×10-9(5.55×10-10)6.72×10-21(1.11×10-22)1.69×10-23(1.34×10-24)9.02×10-28(6.77×10-29)7.39×10-21(4.41×10-22)f10302.88×10-4(3.11×10-5)3.22×10-10(2.18×10-12)1.23×10-14(4.65×10-15)8.88×10-16(3.49×10-17)5.92×10-7(3.17×10-9)f11301.81×10-4(2.16×10-5)2.89×10-6(6.43×10-7)2.36×10-7(3.75×10-4)4.21×10-10(4.87×10-11)3.02×10-4(4.37×10-6)In order to demonstrate that the CAB algorithm provides a better performance, it has been compared to other optimization approaches such as metaheuristic algorithms (Section4.2) and continuous methods (Section 4.3). The results of such comparisons are explained in the following sections.


## 4.2.  Performance Comparison with Other Metaheuristic Approaches

We have applied CAB to 31 test functions in order to compare its performance to other well-known metaheuristic algorithms such as the real genetic algorithm (RGA) [55], the PSO [18], the gravitational search algorithm (GSA) [56], and the differential evolution method (DE) [57]. In all cases, population size is set to 50. The maximum iteration number is 1000 for functions in Tables 12 and 13, and 500 for functions in Table 14 and 16. Such stop criteria have been chosen as to keep compatibility to similar works which are reported in [14] and [58].Parameter settings for each algorithm in the comparison are described as follows.(1)
RGA: according to [55], the approach uses arithmetic crossover, Gaussian mutation, and roulette wheel selection. The crossover and mutation probabilities have been set to 0.3 and 0.1, respectively.(2)
PSO: In the algorithm,c1=c2=2 while the inertia factor (ω) is decreasing linearly from 0.9 to 0.2.(3)
In GSA,G0 is set to 100 and α is set to 20; T is the total number of iterations (set to 1000 for functions f1–f13 and to 500 for functionsf14–f31). Besides, K0 is set to 50 (total number of agents) and is decreased linearly to 1. Such values have been found as the best configuration set according to [56].(4)
DE: the DE/Rand/1 scheme is employed. The parameter settings follow the instructions in [57]. The crossover probability is CR=0.9 and the weighting factor is F=0.8.Several experimental tests have been developed for comparing the performance of the CAB algorithm against other metaheuristic algorithms. The experiments have been developed considering the following function types.(1)
Unimodal test functions (Table12).(2)
Multimodal test functions (Table13).(3)
Multimodal test functions with fixed dimensions (Tables14 and 15).(4)
GKLS test functions (Tables16 and 17).


### 4.2.1. Unimodal Test Functions

In this test, the performance of the CAB algorithm is compared to RGA, PSO, GSA and DE, considering functions with only one minimum/maximum. Such function type is represented by functionsf1 to f7 in Table 12. The results, over 30 runs, are reported in Table 3 considering the following performance indexes: the average best-so-far solution, the average mean fitness function, and the median of the best solution in the last iteration. The best result for each function is boldfaced. According to this table, CAB provides better results than RGA, PSO, GSA, and DE for all functions. In particular, the results show considerable precision differences which are directly related to different local operators at each metaheuristic algorithm. Moreover, the good convergence rate of CAB can be observed from Figure 2. According to this figure, CAB tends to find the global optimum faster than other algorithms and yet offer the highest convergence rate.Table 3
Minimization result of benchmark functions in Table12 with n=30. Maximum number of iterations = 1000.
RGAPSOGSADECABf1Average best sofar23.131.8×10-37.3×10-1111.212.3×10-29Median best sofar21.871.2×10-37.1×10-1113.211.1×10-20Average mean fitness23.451.2×10-22.1×10-1011.781.2×10-10f2Average best sofar1.072.04.03×10-50.955.28×10-20Median best sofar1.131.9×10-34.07×10-51.052.88×10-11Average mean fitness1.072.06.9×10-50.901.43×10-9f3Average best sofar5.6×1034.1×1030.16×1030.127.62×10-31Median best sofar5.6×1032.2×1030.15×1030.091.28×10-19Average mean fitness5.6×1032.9×1030.16×1030.113.51×10-12f4Average best sofar11.788.13.7×10-60.0122.17×10-17Median best sofar11.947.43.7×10-60.0585.65×10-12Average mean fitness11.7823.68.5×10-60.0134.96×10-10f5Average best sofar1.1×1033.6×10425.160.259.025×10-28Median best sofar1.0×1031.7×10325.180.313.10×10-18Average mean fitness1.1×1033.7×10425.160.246.04×10-14f6Average best sofar24.011.0×10-38.3×10-111.25×10-34.47×10-29Median best sofar24.556.6×10-37.7×10-113.33×10-34.26×10-21Average mean fitness24.520.022.6×10-101.27×10-31.03×10-12f7Average best sofar0.060.040.0186.87×10-33.45×10-5Median best sofar0.060.040.0154.72×10-37.39×10-4Average mean fitness0.561.040.5331.28×10-28.75×10-4Performance comparison of RGA, PSO, GSA, DE, and CAB for minimization of (a)f1and (b) f7 consideringn=30.
(a)(b)In order to statistically analyze the results in Table3, a non-parametric significance proof known as the Wilcoxon’s rank test has been conducted [59, 60], which allows assessing result differences among two related methods. The analysis is performed considering a 5% significance level over the “average best-so-far” data. Table 4 reports the P values produced by Wilcoxon’s test for the pairwise comparison of the “average best so-far” of four groups. Such groups are formed by CAB versus RGA, CAB versus PSO, CAB versus GSA, and CAB versus DE. As a null hypothesis, it is assumed that there is no significant difference between mean values of the two algorithms. The alternative hypothesis considers a significant difference between the “average best-so-far” values of both approaches. All P values reported in the table are less than 0.05 (5% significance level) which is a strong evidence against the null hypothesis, indicating that the CAB results are statistically significant and that it has not occurred by coincidence (i.e., due to the normal noise contained in the process).Table 4
P values produced by Wilcoxon’s test comparing CAB versus RGA, PSO, GSA, and DE over the “average best-so-far” values from Table 3.
CAB versusRGAPSOGSADEf11.21×10-63.94×10-57.39×10-41.04×10-6f22.53×10-65.62×10-54.92×10-42.21×10-6f38.34×10-86.42×10-87.11×10-71.02×10-4f43.81×10-81.91×10-87.39×10-41.27×10-6f54.58×10-89.77×10-94.75×10-70.23×10-4f68.11×10-81.98×10-65.92×10-42.88×10-5f75.12×10-74.77×10-78.93×10-61.01×10-4


### 4.2.2. Multimodal Test Functions

Multimodal functions, in contrast to unimodal, have many local minima/maxima which are, in general, more difficult to optimize. In this section the performance of the CAB algorithm is compared to other metaheuristic algorithms considering multimodal functions. Such comparison reflects the algorithm’s ability to escape from poor local optima and to locate a near-global optimum. We have done experiments onf8to f13of Table 13 where the number of local minima increases exponentially as the dimension of the function increases. The dimension of these functions is set to 30. The results are averaged over 30 runs, reporting the performance indexes in Table 5 as follows: the average best-so-far solution, the average mean fitness function and, the median of the best solution in the last iteration (the best result for each function is highlighted). Likewise, P values of the Wilcoxon signed-rank test of 30 independent runs are listed in Table 6.Table 5
Minimization of benchmark functions in Table13 with n=30. Maximum number of iterations = 1000.
RGAPSOGSADECABf8Average best sofar-1.26×104-9.8×103-2.8×103-4.1×103-1.2×104Median best sofar-1.26×104-9.8×103-2.6×103-4.1×103-1.2×104Average mean fitness-1.26×104-9.8×103-1.1×103-4.1×103-1.2×104f9Average best sofar5.9055.115.3230.121.0×10-3Median best sofar5.7156.614.4231.437.6×10-4Average mean fitness5.9272.815.3230.121.0×10-3f10Average best sofar2.139.0×10-36.9×10-63.1×10-38.88×10-16Median best sofar2.166.0×10-36.9×10-62.3×10-32.97×10-11Average mean fitness2.150.021.1×10-53.1×10-39.0×10-10f11Average best sofar1.160.010.291.0×10-31.14×10-13Median best sofar1.140.00810.041.0×10-31.14×10-13Average mean fitness1.160.0550.291.0×10-31.14×10-13f12Average best sofar0.0510.290.010.122.32×10-30Median best sofar0.0390.114.2×10-130.015.22×10-22Average mean fitness0.0539.3×1030.010.124.63×10-17f13Average best sofar0.0813.1×10-183.2×10-321.77×10-251.35×10-32Median best sofar0.0322.2×10-232.3×10-321.77×10-252.20×10-21Average mean fitness0.0814.8×1053.2×10-321.77×10-253.53×10-17Table 6
P values produced by Wilcoxon’s test comparing CAB versus RGA, PSO, GSA, and DE over the “average best-so-far” values from Table 5.
CAB versusRGAPSOGSADEf80.898.38×10-41.21×10-44.61×10-4f97.23×10-71.92×10-95.29×10-89.97×10-8f106.21×10-94.21×10-51.02×10-43.34×10-4f117.74×10-93.68×10-74.10×10-78.12×10-5f121.12×10-88.80×10-92.93×10-74.02×10-8f134.72×10-93.92×10-50.932.20×10-4Forf9, f10, f11,and f12, CAB yields a much better solution than the others. However, for functions f8 and f13, CAB produces similar results to RGA and GSA, respectively. The Wilcoxon rank test results, presented in Table 6, show that CAB performed better than RGA, PSO, GSA, and DE considering the four problems f9–f12, whereas, from a statistical viewpoint, there is not difference in results between CAB and RGA for f8 and between CAB and GSA forf13. Evolutions of the “average best-so-far” solutions over 30 runs for functions f10 and f12 are shown in Figure 3.Performance comparison of RGA, PSO, GSA, DE, and CAB for minimization of (a)f10and (b) f12 considering n=30.
(a)(b)


### 4.2.3. Multimodal Test Functions with Fixed Dimensions

In the following experiments the performance of the CAB algorithm is compared to RGA, PSO, GSA, and DE considering functions which are extensively reported in the metaheuristic-based optimization literature [49–54]. Such functions, represented by f14 to  f23in Tables 14 and 15, are all multimodal with fixed dimensions. Table 7 shows the outcome of such process. Results, presented in Table 7, show how metaheuristic algorithms maintain a similar average performance when they are applied to low-dimensional functions [58]. The results show that RGA, PSO, and GSA have similar solutions and performances that are nearly the same as it can be seen in Figure 4.Table 7
Minimization result of benchmark functions in Table14 with n=30. Maximum number of iterations = 500.
RGAPSOGSADECABf14Average best sofar0.9980.9983.700.9980.998Median best sofar0.9980.9982.070.9980.998Average mean fitness0.9980.9989.170.9980.998f15Average best sofar4.0×10-32.8×10-38.0×10-32.2×10-31.1×10-3Median best sofar1.7×10-37.1×10-47.4×10-45.3×10-42.2×10-4Average mean fitness4.0×10-3215.609.0×10-32.2×10-31.1×10-3f16Average best sofar−1.0313−1.0316−1.0316−1.0316−1.0316Median best sofar−1.0315−1.0316−1.0316−1.0316−1.0316Average mean fitness−1.0313−1.0316−1.0316−1.0316−1.0316f17Average best sofar0.39960.39790.39790.39790.3979Median best sofar0.39800.39790.39790.39790.3979Average mean fitness0.39962.41120.39790.39790.3979f18Average best sofar−3.8627−3.8628−3.8628−3.8628−3.8628Median best sofar−3.8628−3.8628−3.8628−3.8628−3.8628Average mean fitness−3.8627−3.8628−3.8628−3.8628−3.8628f19Average best sofar−3.3099−3.3269−3.7357−3.3269−3.8501Median best sofar−3.3217−3.2031−3.8626−3.3269−3.8501Average mean fitness−3.3098−3.2369−3.8020−3.3269−3.8501f20Average best sofar−3.3099−3.2369−2.0569−3.2369−3.2369Median best sofar−3.3217−3.2031−1.9946−3.2369−3.2369Average mean fitness−3.3098−3.2369−1.6014−3.2369−3.2369f21Average best sofar−5.6605−6.6290−6.0748−6.6290−10.1532Median best sofar−2.6824−5.1008−5.0552−6.0748−10.1532Average mean fitness−5.6605−5.7496−6.0748−6.6290−10.1532f22Average best sofar−7.3421−9.1118−9.3339−9.3339−10.4028Median best sofar−10.3932−10.402−10.402−9.3339−10.4028Average mean fitness−7.3421−9.9305−9.3399−9.3339−10.4028f23Average best sofar−6.2541−9.7634−9.4548−9.7634−10.5363Median best sofar−4.5054−10.536−10.536−9.7636−10.5363Average mean fitness−6.2541−8.7626−9.4548−9.7634−10.5363Performance comparison of RGA, PSO, GSA, DE, and CAB for minimization of (a)f15 and (b)f22.
(a)(b)


### 4.2.4. GKLS Test Functions

This section considers GKLS functions which are built using the GKLS-generator described in [54]. In the construction, the generator uses a set of user-defined parameters for building a multimodal function with known local and global minima. For conducting the numerical experiments, eight GKLS functions been employed which are defined byf24tof31. Details of their characteristics and parameters for their construction are listed in Tables 16 and 17. Results, over 30 runs, are reported in Table 8 (the best result for each function test is boldfaced). According to this table, CAB provides better results than RGA, PSO, GSA, and DE for all GKLS functions, in particular for functions holding bigger dimensions (f28–f31). Such performance is directly related to a better tradeoff between exploration and exploitation which is produced by CAB operators. Likewise, as it can be observed from Figure 5, the CAB algorithm possesses better convergence rates in comparison to other metaheuristic algorithms.Table 8
Minimization result of GKLSfunctions in Table16. Maximum number of iterations = 500.
RGAPSOGSADECABf24Average best sofar−0.942004−0.932011−0.899812−0.951937−1Median best sofar−0.908521−0.910058−0.882597−0.909844−0.999924Average mean fitness−0.907354−0.909058−0.882597−0.903981−0.999865f25Average best sofar−0.931281−0.941281−0.813412−0.968839−1Median best sofar−0.900889−0.899011−0.803482−0.909983−0.999961Average mean fitness−0.900115−0.898545−0.801143−0.901101−0.999732f26Average best sofar−0.939845−0.924521−0.798799−0.944561−1Median best sofar−0.808034−0.872132−0.701174−0.836621−0.999081Average mean fitness−0.801618−0.864321−0.698722−0.816695−0.963632f27Average best sofar−0.948823−0.939799−0.778588−0.948977−1Median best sofar−0.818891−0.798812−0.668721−0.812237−0.999552Average mean fitness−0.803487−0.758892−0.601179−0.8087210.990978f28Average best sofar−0.888821−0.858814−0.618791−0.871471−0.99907Median best sofar−0.695712−0.662715−0.550711−0.773419−0.889712Average mean fitness−0.599871−0.500784−0.443982−0.612876−0.787712f29Average best sofar−0.872291−0.880139−0.642839−0.885412−0.998681Median best sofar−0.618732−0.602568−0.452974−0.702591−0.857517Average mean fitness−0.552374−0.459871−0.400781−0.610887−0.800181f30Average best sofar−0.798712−0.779521−0.607894−0.807127−0.985712Median best sofar−0.684521−0.645828−0.401896−0.534519−0.882378Average mean fitness−0.551411−0.497812−0.400874−0.458717−0.819784f31Average best sofar−0.788952−0.792231−0.613691−0.798827−0.998712Median best sofar−0.692354−0.702387−0.596711−0.672895−0.842397Average mean fitness−0.601008−0.652394−0.482337−0.604732−0.808897Performance comparison of RGA, PSO, GSA, DE and CAB for minimization of the GKLS-functions: (a)f28 and (b)f31.
(a)(b)In order to statistically validate the results of Table8, the Wilcoxon’s test has been conducted. Table 9 shows the P values obtained after applying such analysis over 30 independent executions. Since all P values, presented in Table 9, are less than 0.05, it indicates that the CAB results are statistically better.Table 9
P values produced by Wilcoxon’s test comparing CAB versus RGA, PSO, GSA, and DE over the “average best-so-far” values from Table 8.
CAB versusRGAPSOGSADEf240.03520.03120.01210.0389f250.02110.02370.01180.0311f260.02240.02380.00810.0301f270.02730.02310.00230.0308f280.02080.01980.00110.0210f290.02020.02190.00090.0258f300.01750.01650.00040.0221f310.01590.01660.00020.0208


## 4.2.1. Unimodal Test Functions

In this test, the performance of the CAB algorithm is compared to RGA, PSO, GSA and DE, considering functions with only one minimum/maximum. Such function type is represented by functionsf1 to f7 in Table 12. The results, over 30 runs, are reported in Table 3 considering the following performance indexes: the average best-so-far solution, the average mean fitness function, and the median of the best solution in the last iteration. The best result for each function is boldfaced. According to this table, CAB provides better results than RGA, PSO, GSA, and DE for all functions. In particular, the results show considerable precision differences which are directly related to different local operators at each metaheuristic algorithm. Moreover, the good convergence rate of CAB can be observed from Figure 2. According to this figure, CAB tends to find the global optimum faster than other algorithms and yet offer the highest convergence rate.Table 3
Minimization result of benchmark functions in Table12 with n=30. Maximum number of iterations = 1000.
RGAPSOGSADECABf1Average best sofar23.131.8×10-37.3×10-1111.212.3×10-29Median best sofar21.871.2×10-37.1×10-1113.211.1×10-20Average mean fitness23.451.2×10-22.1×10-1011.781.2×10-10f2Average best sofar1.072.04.03×10-50.955.28×10-20Median best sofar1.131.9×10-34.07×10-51.052.88×10-11Average mean fitness1.072.06.9×10-50.901.43×10-9f3Average best sofar5.6×1034.1×1030.16×1030.127.62×10-31Median best sofar5.6×1032.2×1030.15×1030.091.28×10-19Average mean fitness5.6×1032.9×1030.16×1030.113.51×10-12f4Average best sofar11.788.13.7×10-60.0122.17×10-17Median best sofar11.947.43.7×10-60.0585.65×10-12Average mean fitness11.7823.68.5×10-60.0134.96×10-10f5Average best sofar1.1×1033.6×10425.160.259.025×10-28Median best sofar1.0×1031.7×10325.180.313.10×10-18Average mean fitness1.1×1033.7×10425.160.246.04×10-14f6Average best sofar24.011.0×10-38.3×10-111.25×10-34.47×10-29Median best sofar24.556.6×10-37.7×10-113.33×10-34.26×10-21Average mean fitness24.520.022.6×10-101.27×10-31.03×10-12f7Average best sofar0.060.040.0186.87×10-33.45×10-5Median best sofar0.060.040.0154.72×10-37.39×10-4Average mean fitness0.561.040.5331.28×10-28.75×10-4Performance comparison of RGA, PSO, GSA, DE, and CAB for minimization of (a)f1and (b) f7 consideringn=30.
(a)(b)In order to statistically analyze the results in Table3, a non-parametric significance proof known as the Wilcoxon’s rank test has been conducted [59, 60], which allows assessing result differences among two related methods. The analysis is performed considering a 5% significance level over the “average best-so-far” data. Table 4 reports the P values produced by Wilcoxon’s test for the pairwise comparison of the “average best so-far” of four groups. Such groups are formed by CAB versus RGA, CAB versus PSO, CAB versus GSA, and CAB versus DE. As a null hypothesis, it is assumed that there is no significant difference between mean values of the two algorithms. The alternative hypothesis considers a significant difference between the “average best-so-far” values of both approaches. All P values reported in the table are less than 0.05 (5% significance level) which is a strong evidence against the null hypothesis, indicating that the CAB results are statistically significant and that it has not occurred by coincidence (i.e., due to the normal noise contained in the process).Table 4
P values produced by Wilcoxon’s test comparing CAB versus RGA, PSO, GSA, and DE over the “average best-so-far” values from Table 3.
CAB versusRGAPSOGSADEf11.21×10-63.94×10-57.39×10-41.04×10-6f22.53×10-65.62×10-54.92×10-42.21×10-6f38.34×10-86.42×10-87.11×10-71.02×10-4f43.81×10-81.91×10-87.39×10-41.27×10-6f54.58×10-89.77×10-94.75×10-70.23×10-4f68.11×10-81.98×10-65.92×10-42.88×10-5f75.12×10-74.77×10-78.93×10-61.01×10-4


## 4.2.2. Multimodal Test Functions

Multimodal functions, in contrast to unimodal, have many local minima/maxima which are, in general, more difficult to optimize. In this section the performance of the CAB algorithm is compared to other metaheuristic algorithms considering multimodal functions. Such comparison reflects the algorithm’s ability to escape from poor local optima and to locate a near-global optimum. We have done experiments onf8to f13of Table 13 where the number of local minima increases exponentially as the dimension of the function increases. The dimension of these functions is set to 30. The results are averaged over 30 runs, reporting the performance indexes in Table 5 as follows: the average best-so-far solution, the average mean fitness function and, the median of the best solution in the last iteration (the best result for each function is highlighted). Likewise, P values of the Wilcoxon signed-rank test of 30 independent runs are listed in Table 6.Table 5
Minimization of benchmark functions in Table13 with n=30. Maximum number of iterations = 1000.
RGAPSOGSADECABf8Average best sofar-1.26×104-9.8×103-2.8×103-4.1×103-1.2×104Median best sofar-1.26×104-9.8×103-2.6×103-4.1×103-1.2×104Average mean fitness-1.26×104-9.8×103-1.1×103-4.1×103-1.2×104f9Average best sofar5.9055.115.3230.121.0×10-3Median best sofar5.7156.614.4231.437.6×10-4Average mean fitness5.9272.815.3230.121.0×10-3f10Average best sofar2.139.0×10-36.9×10-63.1×10-38.88×10-16Median best sofar2.166.0×10-36.9×10-62.3×10-32.97×10-11Average mean fitness2.150.021.1×10-53.1×10-39.0×10-10f11Average best sofar1.160.010.291.0×10-31.14×10-13Median best sofar1.140.00810.041.0×10-31.14×10-13Average mean fitness1.160.0550.291.0×10-31.14×10-13f12Average best sofar0.0510.290.010.122.32×10-30Median best sofar0.0390.114.2×10-130.015.22×10-22Average mean fitness0.0539.3×1030.010.124.63×10-17f13Average best sofar0.0813.1×10-183.2×10-321.77×10-251.35×10-32Median best sofar0.0322.2×10-232.3×10-321.77×10-252.20×10-21Average mean fitness0.0814.8×1053.2×10-321.77×10-253.53×10-17Table 6
P values produced by Wilcoxon’s test comparing CAB versus RGA, PSO, GSA, and DE over the “average best-so-far” values from Table 5.
CAB versusRGAPSOGSADEf80.898.38×10-41.21×10-44.61×10-4f97.23×10-71.92×10-95.29×10-89.97×10-8f106.21×10-94.21×10-51.02×10-43.34×10-4f117.74×10-93.68×10-74.10×10-78.12×10-5f121.12×10-88.80×10-92.93×10-74.02×10-8f134.72×10-93.92×10-50.932.20×10-4Forf9, f10, f11,and f12, CAB yields a much better solution than the others. However, for functions f8 and f13, CAB produces similar results to RGA and GSA, respectively. The Wilcoxon rank test results, presented in Table 6, show that CAB performed better than RGA, PSO, GSA, and DE considering the four problems f9–f12, whereas, from a statistical viewpoint, there is not difference in results between CAB and RGA for f8 and between CAB and GSA forf13. Evolutions of the “average best-so-far” solutions over 30 runs for functions f10 and f12 are shown in Figure 3.Performance comparison of RGA, PSO, GSA, DE, and CAB for minimization of (a)f10and (b) f12 considering n=30.
(a)(b)


## 4.2.3. Multimodal Test Functions with Fixed Dimensions

In the following experiments the performance of the CAB algorithm is compared to RGA, PSO, GSA, and DE considering functions which are extensively reported in the metaheuristic-based optimization literature [49–54]. Such functions, represented by f14 to  f23in Tables 14 and 15, are all multimodal with fixed dimensions. Table 7 shows the outcome of such process. Results, presented in Table 7, show how metaheuristic algorithms maintain a similar average performance when they are applied to low-dimensional functions [58]. The results show that RGA, PSO, and GSA have similar solutions and performances that are nearly the same as it can be seen in Figure 4.Table 7
Minimization result of benchmark functions in Table14 with n=30. Maximum number of iterations = 500.
RGAPSOGSADECABf14Average best sofar0.9980.9983.700.9980.998Median best sofar0.9980.9982.070.9980.998Average mean fitness0.9980.9989.170.9980.998f15Average best sofar4.0×10-32.8×10-38.0×10-32.2×10-31.1×10-3Median best sofar1.7×10-37.1×10-47.4×10-45.3×10-42.2×10-4Average mean fitness4.0×10-3215.609.0×10-32.2×10-31.1×10-3f16Average best sofar−1.0313−1.0316−1.0316−1.0316−1.0316Median best sofar−1.0315−1.0316−1.0316−1.0316−1.0316Average mean fitness−1.0313−1.0316−1.0316−1.0316−1.0316f17Average best sofar0.39960.39790.39790.39790.3979Median best sofar0.39800.39790.39790.39790.3979Average mean fitness0.39962.41120.39790.39790.3979f18Average best sofar−3.8627−3.8628−3.8628−3.8628−3.8628Median best sofar−3.8628−3.8628−3.8628−3.8628−3.8628Average mean fitness−3.8627−3.8628−3.8628−3.8628−3.8628f19Average best sofar−3.3099−3.3269−3.7357−3.3269−3.8501Median best sofar−3.3217−3.2031−3.8626−3.3269−3.8501Average mean fitness−3.3098−3.2369−3.8020−3.3269−3.8501f20Average best sofar−3.3099−3.2369−2.0569−3.2369−3.2369Median best sofar−3.3217−3.2031−1.9946−3.2369−3.2369Average mean fitness−3.3098−3.2369−1.6014−3.2369−3.2369f21Average best sofar−5.6605−6.6290−6.0748−6.6290−10.1532Median best sofar−2.6824−5.1008−5.0552−6.0748−10.1532Average mean fitness−5.6605−5.7496−6.0748−6.6290−10.1532f22Average best sofar−7.3421−9.1118−9.3339−9.3339−10.4028Median best sofar−10.3932−10.402−10.402−9.3339−10.4028Average mean fitness−7.3421−9.9305−9.3399−9.3339−10.4028f23Average best sofar−6.2541−9.7634−9.4548−9.7634−10.5363Median best sofar−4.5054−10.536−10.536−9.7636−10.5363Average mean fitness−6.2541−8.7626−9.4548−9.7634−10.5363Performance comparison of RGA, PSO, GSA, DE, and CAB for minimization of (a)f15 and (b)f22.
(a)(b)


## 4.2.4. GKLS Test Functions

This section considers GKLS functions which are built using the GKLS-generator described in [54]. In the construction, the generator uses a set of user-defined parameters for building a multimodal function with known local and global minima. For conducting the numerical experiments, eight GKLS functions been employed which are defined byf24tof31. Details of their characteristics and parameters for their construction are listed in Tables 16 and 17. Results, over 30 runs, are reported in Table 8 (the best result for each function test is boldfaced). According to this table, CAB provides better results than RGA, PSO, GSA, and DE for all GKLS functions, in particular for functions holding bigger dimensions (f28–f31). Such performance is directly related to a better tradeoff between exploration and exploitation which is produced by CAB operators. Likewise, as it can be observed from Figure 5, the CAB algorithm possesses better convergence rates in comparison to other metaheuristic algorithms.Table 8
Minimization result of GKLSfunctions in Table16. Maximum number of iterations = 500.
RGAPSOGSADECABf24Average best sofar−0.942004−0.932011−0.899812−0.951937−1Median best sofar−0.908521−0.910058−0.882597−0.909844−0.999924Average mean fitness−0.907354−0.909058−0.882597−0.903981−0.999865f25Average best sofar−0.931281−0.941281−0.813412−0.968839−1Median best sofar−0.900889−0.899011−0.803482−0.909983−0.999961Average mean fitness−0.900115−0.898545−0.801143−0.901101−0.999732f26Average best sofar−0.939845−0.924521−0.798799−0.944561−1Median best sofar−0.808034−0.872132−0.701174−0.836621−0.999081Average mean fitness−0.801618−0.864321−0.698722−0.816695−0.963632f27Average best sofar−0.948823−0.939799−0.778588−0.948977−1Median best sofar−0.818891−0.798812−0.668721−0.812237−0.999552Average mean fitness−0.803487−0.758892−0.601179−0.8087210.990978f28Average best sofar−0.888821−0.858814−0.618791−0.871471−0.99907Median best sofar−0.695712−0.662715−0.550711−0.773419−0.889712Average mean fitness−0.599871−0.500784−0.443982−0.612876−0.787712f29Average best sofar−0.872291−0.880139−0.642839−0.885412−0.998681Median best sofar−0.618732−0.602568−0.452974−0.702591−0.857517Average mean fitness−0.552374−0.459871−0.400781−0.610887−0.800181f30Average best sofar−0.798712−0.779521−0.607894−0.807127−0.985712Median best sofar−0.684521−0.645828−0.401896−0.534519−0.882378Average mean fitness−0.551411−0.497812−0.400874−0.458717−0.819784f31Average best sofar−0.788952−0.792231−0.613691−0.798827−0.998712Median best sofar−0.692354−0.702387−0.596711−0.672895−0.842397Average mean fitness−0.601008−0.652394−0.482337−0.604732−0.808897Performance comparison of RGA, PSO, GSA, DE and CAB for minimization of the GKLS-functions: (a)f28 and (b)f31.
(a)(b)In order to statistically validate the results of Table8, the Wilcoxon’s test has been conducted. Table 9 shows the P values obtained after applying such analysis over 30 independent executions. Since all P values, presented in Table 9, are less than 0.05, it indicates that the CAB results are statistically better.Table 9
P values produced by Wilcoxon’s test comparing CAB versus RGA, PSO, GSA, and DE over the “average best-so-far” values from Table 8.
CAB versusRGAPSOGSADEf240.03520.03120.01210.0389f250.02110.02370.01180.0311f260.02240.02380.00810.0301f270.02730.02310.00230.0308f280.02080.01980.00110.0210f290.02020.02190.00090.0258f300.01750.01650.00040.0221f310.01590.01660.00020.0208


## 4.3.  Comparison to Continuous Optimization Methods

Finally, the CAB algorithm is also compared to continuous optimization methods by considering some functions of the appendix. Since the BFSG algorithm [61] is one of the most effective continuous methods for solving unconstrained optimization problems, it has been considered as a basis for the algorithms used in the comparison.In order to compare the performance of CAB to continuous optimization approaches, two different tests have been conducted. The first one tests the ability of BFGS and CAB to face unimodal optimization tasks (see Section4.3.1) is evaluated. The second experiment analyzes the performance of CAB and one BFGS-based approach, when they are both applied to multimodal functions (review Section 4.3.2).


### 4.3.1.  Local Optimization

In the first experiment, the performance of algorithms BFGS and CAB over unimodal functions is compared. In unimodal functions, the global minimum matches the local minimum. Quasi-Newton methods, such as the BFGS, have a fast rate of local convergence although it depends on the problem’s dimension [62, 63]. Considering that not all unimodal functions of Table 12 fulfill the requirements imposed by the gradient-based approaches (i.e., f2and f4are not differentiable meanwhile f7 is nonsmooth), we have chosen the Rosenbrock function (f5) as a benchmark.In the test, both algorithms (BFGS and CAB) are employed to minimizef5, considering different dimensions. For the BFGS implementation, B0=I is considered as initial matrix. Likewise, parameters δand σare set to 0.1 and 0.9 respectively. Although several performance criteria may define a comparison index, most can be applied to only one method timely (such as the number of gradient evaluations). Therefore, this paper considers the elapsed time and the iteration number (once the minimum has been reached) as performance indexes in the comparison. In the case of BFGS, the termination condition is assumed as∥g5(x)∥≤1×10-6, withg5(x)being the gradient of f5(x). On the other hand, the stopping criterion of CAB considers when no more changes to the best element in memoryMh are registered. Table 10 presents the results of both algorithms considering several dimensions (n∈{2,10,30,50,70,100,120}) off5. In order to assure consistency, such results represent the averaged elapsed time (AET) and the averaged iteration number (AIN) over 30 different executions. It is additionally considered that at each execution both methods are initialized in a random point (inside the search space).Table 10
Performance comparison between the BFGS and the CAB algorithm, considering different dimensions over the Rosenbrock function. The averaged elapsed time (AET) is referred in seconds.
f5AETAINnBFGSCABBFGSCAB20.154.21689100.555.282298301.355.4441108502.775.8868112704.236.11931151005.556.221051211206.646.71125129From Table10, we can observe that the BFGS algorithm produces shorter elapsed times and fewer iterations than the CAB method. However, from n=70, the CAB algorithm contend with similar results. The fact that the BFGS algorithm outperforms the CAB approach cannot be deemed as a negative feature considering the restrictions imposed to the functions by the BFGS method.


### 4.3.2. Global Optimization

Since the BFGS algorithm exploits only local information, it may easily get trapped into local optima restricting its use for global optimization. Thus, several methods based on continuous optimization approaches have been proposed. One of the most widely used techniques is the so-called multistart [64] (MS). In MS a point is randomly chosen from a feasible region as initial solution and subsequently a continuous optimization algorithm (local search) starts from it. Then, the process is repeated until a near global optimum is reached. The weakness of MS is that the same local minima may be found over and over again, wasting computational resources [65].In order to compare the performance of the CAB approach to continuous optimization methods in the context of global optimization, the MS algorithm ADAPT [66] has been chosen. ADAPT uses as local search method the BFGS algorithm, which is iteratively executed. Thus, ADAPT possess two different stop criteria, one for the local procedure BFGS and other for the complete MS approach. For the comparison, the ADAPT algorithm has been implemented as suggested in [66].In the second experiment, the performance of the ADAPT and the CAB algorithms is compared over several multimodal functions described in Tables13 and 14. The study considers the following performance indexes: the elapsed time, the iteration number, and the average best so-far solution. In case of the ADAPT algorithm, the iteration number is computed as the total iteration number produced by all the local search procedures as the MS method operates. The termination condition of the ADAPT local search algorithm (BFGS) is assumed when∥gk(x)∥≤1×10-5, gk(x) being the gradient of fk(x). On the other hand, the stopping criterion for the CAB and the ADAPT algorithms is considered when no more changes in the best solution are registered. Table 11 presents results from both algorithms considering several multimodal functions. In order to assure consistency, results ponder the averaged elapsed time (AET), the averaged iteration number (AIN) and the average best-so-far solution (ABS) over 30 different executions. In Table 11, the averaged number of local searches (ALS) executed by ADAPT during the optimization is additionally considered.Table 11
Performance comparison between the ADAPT and the CAB algorithm considering different multimodal functions. The averaged elapsed time (AET) is referred in the format M’s (Minute’second).
FunctionnADAPTCABALSAETAINABSAETAINABSf930370545.423,3271.2×10-210.26331.0×10-3f103040541′05.738,3416.21×10-1212.17238.88×10-16f113032,4522′12.1102,3214.51×10-1015.88841.14×10-13f172153233.220,2020.39767.33320.3979f182123331.618,845−3.86116.6295−3.8628Table 12
Unimodal test functions.
Test functionSfoptf1(x)=∑i=1nxi2[-100,100]n0f2(x)=∑i=1n|xi|+∏i=1n|xi|[-10,10]n0f3(x)=∑i=1n(∑j=1ixj)2[-100,100]n0f4(x)=maxi{|xi|,1≤i≤n}[-100,100]n0f5(x)=∑i=1n-1[100(xi+1-xi2)2+(xi-1)2][-30,30]n0f6(x)=∑i=1n(xi+0.5)2[-100,100]n0f7(x)=∑i=1nixi4+rand(0,1)[-1.28,1.28]n0Table 13
Multimodal test functions.
Test functionSfoptf8(x)=∑i=1n-xisin(|xi|)[-500,500]n−418.98*nf9(x)=∑i=1n[xi2-10cos(2πxi)+10][-5.12,5.12]n0f10(x)=-20exp(-0.2(1/n)∑i=1nxi2)-exp((1/n)∑i=1ncos(2πxi))+20[-32,32]n0f11(x)=(1/4000)∑i=1nxi2-∏i=1ncos(xi/i)+1[-600,600]n0f12(x)=(π/n){10sin(πy1)+∑i=1n-1(yi-1)2[1+10sin2(πyi+1)]+(yn-1)2}+∑i=1nu(xi,10,100,4)yi=1+(xi+1)/4u(xi,a,k,m)={k(xi-a)mxi>a0-a<xi<ak(-xi-a)mxi<-a[-50,50]n0f13(x)=0.1{sin2(3πx1)+∑i=1n(xi-1)2[1+sin2(3πxi+1)]+(xn-1)2[1+sin2(2πxn)]}+∑i=1nu(xi,5,100,4)[-50,50]n0Table 14
Multimodal test functions with fixed dimensions.
Test functionSfoptf14(x)=(1/500+∑j=1251j+∑i=12(xi-aij)6),-1aij=(-32,-16,0,16,32,-32,…,0,16,32-32,-32,-32,-32,16,…,32,32,32)[-65.5,65.5]21f15(x)=∑i=111[ai-xi(bi2+bix2)bi2+bix3+x4]2a=[0.1957,0.1947,0.1735,0.1600,0.0844,0.0627,0.0456,0.0342,0.0342,0.0235,0.0246]b=[0.25,0.5,1,2,4,6,8,10,12,14,16][-5,5]40.00030f16(x1,x2)=4x12-2.1x14+(1/3)x16+x1x2-4x22+4x24[-5,5]2−1.0316f17(x1,x2)=(x2-(5.1/4π2))x12+(5/π)x1-6)2+10(1-(1/8π))cosx1+10x1∈[-5,10]x2∈[0,15]0.398f18(x1,x2)=[1+(x1+x2+1)2(19-14x1+3x12-14x2+6x1x2+3x22]×[30+(2x1-3x2)2×(18-32x1+12x12+48x2-36x1x2+27x22][-5,5]23f19(x)=-∑i=14ciexp(-∑j=13aij(xj-pij)2)a=[310300.11035310300.11030], c=[1,1.2,3,3.2],  P=[0.36890.1170.26730.46990.43870.74700.10910.87320.55470.03810.57430.8828][0,1]3−3.86f20(x)=-∑i=14ciexp(-∑j=16aij(xj-pij)2)a=[103173.51.780.0510170.181433.517101781780.05100.114],c=[1,1.2,3,3.2],  P=[0.1310.1690.5560.0120.8280.5880.2320.4130.8300.3730.1000.9990.2340.1410.3520.2880.3040.6650.4040.8820.8730.5740.1090.038][0,1]6−3.32f21(x)=-∑i=15[(x-ai)(x-ai)T+ci]-1, a=[44441111888866663737292955338181626273.673.6],c=[0.1,0.2,0.2,0.4,0.4,0.6,0.3,0.7,0.5,0.5][0,10]4−10.1532f22(x)=-∑i=17[(x-ai)(x-ai)T+ci]-1, a and c, equal to f21[0,10]4−10.4028f23(x)=-∑i=17[(x-ai)(x-ai)T+ci]-1,a and c, equal to f21[0,10]4−10.5363Table 15
Optimum locations of Table14.
Test functionxoptTest functionxoptf14(-32,32)f19(0.114,0.556,0.852)f15(0.1928,0.1908,0.1231,0.1358)f20(0.201,0.15,0.477,0.275,0.311,0.657)f16(0.089,-0.71),(-0.0089,0.712)f215 local minima inaij,i=1,…,5f17(-3.14,12.27),(3.14,2.275),(9.42,2.42)f227 local minima inaij,i=1,…,7f18(0,-1)f2310 local minima inaij,i=1,…,10Table 16
Used GKLSfunctions.
Test functionn (N)r*ρ*Function classFunction numberMSfoptf2420.90.1D8710[-1,1]2−1f2520.70.3ND2010[-1,1]2−1f2630.90.1D8710[-1,1]3−1f2730.70.3ND2010[-1,1]3−1f2860.90.1D8710[-1,1]6−1f2960.70.3ND2010[-1,1]6−1f30100.90.1D8710[-1,1]10−1f31100.70.3ND2010[-1,1]10−1Table 17
Optimum locations of the used GKLS functions.
Test functionxoptf24(−0.767, −0.076)f25(0.172, 0.174)f26(−0.262, 0.253, −0.161)f27(−0.168, −0.859, −0.727)f28(−0.361, −0.562, −0.650, 0.857, −0.070, 0.906)f29(−0.286, 0.227, −0.692, −0.388, −0.299, 0.732)f30(0.392, −0.139, −0.667, 0.899, 0.654, −0.609, −0.087, −0.700, −0.287, 0.893)f31(0.723, 0.413, 0.473, −0.746, 0.054, −0.412, −0.332, −0.677, 0.996, 0.239)Table11 provides a summarized performance comparison between the ADAPT and the CAB algorithms. although both algorithms are able to acceptably locate the global minimum for both cases, there exist significant differences in the required time for reaching it. When comparing the averaged elapsed time (AET) and the averaged iteration number (AIN) in Table 11, CAB uses significantly less time and fewer iterations to reach the global minimum than the ADAPT algorithm.


## 4.3.1.  Local Optimization

In the first experiment, the performance of algorithms BFGS and CAB over unimodal functions is compared. In unimodal functions, the global minimum matches the local minimum. Quasi-Newton methods, such as the BFGS, have a fast rate of local convergence although it depends on the problem’s dimension [62, 63]. Considering that not all unimodal functions of Table 12 fulfill the requirements imposed by the gradient-based approaches (i.e., f2and f4are not differentiable meanwhile f7 is nonsmooth), we have chosen the Rosenbrock function (f5) as a benchmark.In the test, both algorithms (BFGS and CAB) are employed to minimizef5, considering different dimensions. For the BFGS implementation, B0=I is considered as initial matrix. Likewise, parameters δand σare set to 0.1 and 0.9 respectively. Although several performance criteria may define a comparison index, most can be applied to only one method timely (such as the number of gradient evaluations). Therefore, this paper considers the elapsed time and the iteration number (once the minimum has been reached) as performance indexes in the comparison. In the case of BFGS, the termination condition is assumed as∥g5(x)∥≤1×10-6, withg5(x)being the gradient of f5(x). On the other hand, the stopping criterion of CAB considers when no more changes to the best element in memoryMh are registered. Table 10 presents the results of both algorithms considering several dimensions (n∈{2,10,30,50,70,100,120}) off5. In order to assure consistency, such results represent the averaged elapsed time (AET) and the averaged iteration number (AIN) over 30 different executions. It is additionally considered that at each execution both methods are initialized in a random point (inside the search space).Table 10
Performance comparison between the BFGS and the CAB algorithm, considering different dimensions over the Rosenbrock function. The averaged elapsed time (AET) is referred in seconds.
f5AETAINnBFGSCABBFGSCAB20.154.21689100.555.282298301.355.4441108502.775.8868112704.236.11931151005.556.221051211206.646.71125129From Table10, we can observe that the BFGS algorithm produces shorter elapsed times and fewer iterations than the CAB method. However, from n=70, the CAB algorithm contend with similar results. The fact that the BFGS algorithm outperforms the CAB approach cannot be deemed as a negative feature considering the restrictions imposed to the functions by the BFGS method.


## 4.3.2. Global Optimization

Since the BFGS algorithm exploits only local information, it may easily get trapped into local optima restricting its use for global optimization. Thus, several methods based on continuous optimization approaches have been proposed. One of the most widely used techniques is the so-called multistart [64] (MS). In MS a point is randomly chosen from a feasible region as initial solution and subsequently a continuous optimization algorithm (local search) starts from it. Then, the process is repeated until a near global optimum is reached. The weakness of MS is that the same local minima may be found over and over again, wasting computational resources [65].In order to compare the performance of the CAB approach to continuous optimization methods in the context of global optimization, the MS algorithm ADAPT [66] has been chosen. ADAPT uses as local search method the BFGS algorithm, which is iteratively executed. Thus, ADAPT possess two different stop criteria, one for the local procedure BFGS and other for the complete MS approach. For the comparison, the ADAPT algorithm has been implemented as suggested in [66].In the second experiment, the performance of the ADAPT and the CAB algorithms is compared over several multimodal functions described in Tables13 and 14. The study considers the following performance indexes: the elapsed time, the iteration number, and the average best so-far solution. In case of the ADAPT algorithm, the iteration number is computed as the total iteration number produced by all the local search procedures as the MS method operates. The termination condition of the ADAPT local search algorithm (BFGS) is assumed when∥gk(x)∥≤1×10-5, gk(x) being the gradient of fk(x). On the other hand, the stopping criterion for the CAB and the ADAPT algorithms is considered when no more changes in the best solution are registered. Table 11 presents results from both algorithms considering several multimodal functions. In order to assure consistency, results ponder the averaged elapsed time (AET), the averaged iteration number (AIN) and the average best-so-far solution (ABS) over 30 different executions. In Table 11, the averaged number of local searches (ALS) executed by ADAPT during the optimization is additionally considered.Table 11
Performance comparison between the ADAPT and the CAB algorithm considering different multimodal functions. The averaged elapsed time (AET) is referred in the format M’s (Minute’second).
FunctionnADAPTCABALSAETAINABSAETAINABSf930370545.423,3271.2×10-210.26331.0×10-3f103040541′05.738,3416.21×10-1212.17238.88×10-16f113032,4522′12.1102,3214.51×10-1015.88841.14×10-13f172153233.220,2020.39767.33320.3979f182123331.618,845−3.86116.6295−3.8628Table 12
Unimodal test functions.
Test functionSfoptf1(x)=∑i=1nxi2[-100,100]n0f2(x)=∑i=1n|xi|+∏i=1n|xi|[-10,10]n0f3(x)=∑i=1n(∑j=1ixj)2[-100,100]n0f4(x)=maxi{|xi|,1≤i≤n}[-100,100]n0f5(x)=∑i=1n-1[100(xi+1-xi2)2+(xi-1)2][-30,30]n0f6(x)=∑i=1n(xi+0.5)2[-100,100]n0f7(x)=∑i=1nixi4+rand(0,1)[-1.28,1.28]n0Table 13
Multimodal test functions.
Test functionSfoptf8(x)=∑i=1n-xisin(|xi|)[-500,500]n−418.98*nf9(x)=∑i=1n[xi2-10cos(2πxi)+10][-5.12,5.12]n0f10(x)=-20exp(-0.2(1/n)∑i=1nxi2)-exp((1/n)∑i=1ncos(2πxi))+20[-32,32]n0f11(x)=(1/4000)∑i=1nxi2-∏i=1ncos(xi/i)+1[-600,600]n0f12(x)=(π/n){10sin(πy1)+∑i=1n-1(yi-1)2[1+10sin2(πyi+1)]+(yn-1)2}+∑i=1nu(xi,10,100,4)yi=1+(xi+1)/4u(xi,a,k,m)={k(xi-a)mxi>a0-a<xi<ak(-xi-a)mxi<-a[-50,50]n0f13(x)=0.1{sin2(3πx1)+∑i=1n(xi-1)2[1+sin2(3πxi+1)]+(xn-1)2[1+sin2(2πxn)]}+∑i=1nu(xi,5,100,4)[-50,50]n0Table 14
Multimodal test functions with fixed dimensions.
Test functionSfoptf14(x)=(1/500+∑j=1251j+∑i=12(xi-aij)6),-1aij=(-32,-16,0,16,32,-32,…,0,16,32-32,-32,-32,-32,16,…,32,32,32)[-65.5,65.5]21f15(x)=∑i=111[ai-xi(bi2+bix2)bi2+bix3+x4]2a=[0.1957,0.1947,0.1735,0.1600,0.0844,0.0627,0.0456,0.0342,0.0342,0.0235,0.0246]b=[0.25,0.5,1,2,4,6,8,10,12,14,16][-5,5]40.00030f16(x1,x2)=4x12-2.1x14+(1/3)x16+x1x2-4x22+4x24[-5,5]2−1.0316f17(x1,x2)=(x2-(5.1/4π2))x12+(5/π)x1-6)2+10(1-(1/8π))cosx1+10x1∈[-5,10]x2∈[0,15]0.398f18(x1,x2)=[1+(x1+x2+1)2(19-14x1+3x12-14x2+6x1x2+3x22]×[30+(2x1-3x2)2×(18-32x1+12x12+48x2-36x1x2+27x22][-5,5]23f19(x)=-∑i=14ciexp(-∑j=13aij(xj-pij)2)a=[310300.11035310300.11030], c=[1,1.2,3,3.2],  P=[0.36890.1170.26730.46990.43870.74700.10910.87320.55470.03810.57430.8828][0,1]3−3.86f20(x)=-∑i=14ciexp(-∑j=16aij(xj-pij)2)a=[103173.51.780.0510170.181433.517101781780.05100.114],c=[1,1.2,3,3.2],  P=[0.1310.1690.5560.0120.8280.5880.2320.4130.8300.3730.1000.9990.2340.1410.3520.2880.3040.6650.4040.8820.8730.5740.1090.038][0,1]6−3.32f21(x)=-∑i=15[(x-ai)(x-ai)T+ci]-1, a=[44441111888866663737292955338181626273.673.6],c=[0.1,0.2,0.2,0.4,0.4,0.6,0.3,0.7,0.5,0.5][0,10]4−10.1532f22(x)=-∑i=17[(x-ai)(x-ai)T+ci]-1, a and c, equal to f21[0,10]4−10.4028f23(x)=-∑i=17[(x-ai)(x-ai)T+ci]-1,a and c, equal to f21[0,10]4−10.5363Table 15
Optimum locations of Table14.
Test functionxoptTest functionxoptf14(-32,32)f19(0.114,0.556,0.852)f15(0.1928,0.1908,0.1231,0.1358)f20(0.201,0.15,0.477,0.275,0.311,0.657)f16(0.089,-0.71),(-0.0089,0.712)f215 local minima inaij,i=1,…,5f17(-3.14,12.27),(3.14,2.275),(9.42,2.42)f227 local minima inaij,i=1,…,7f18(0,-1)f2310 local minima inaij,i=1,…,10Table 16
Used GKLSfunctions.
Test functionn (N)r*ρ*Function classFunction numberMSfoptf2420.90.1D8710[-1,1]2−1f2520.70.3ND2010[-1,1]2−1f2630.90.1D8710[-1,1]3−1f2730.70.3ND2010[-1,1]3−1f2860.90.1D8710[-1,1]6−1f2960.70.3ND2010[-1,1]6−1f30100.90.1D8710[-1,1]10−1f31100.70.3ND2010[-1,1]10−1Table 17
Optimum locations of the used GKLS functions.
Test functionxoptf24(−0.767, −0.076)f25(0.172, 0.174)f26(−0.262, 0.253, −0.161)f27(−0.168, −0.859, −0.727)f28(−0.361, −0.562, −0.650, 0.857, −0.070, 0.906)f29(−0.286, 0.227, −0.692, −0.388, −0.299, 0.732)f30(0.392, −0.139, −0.667, 0.899, 0.654, −0.609, −0.087, −0.700, −0.287, 0.893)f31(0.723, 0.413, 0.473, −0.746, 0.054, −0.412, −0.332, −0.677, 0.996, 0.239)Table11 provides a summarized performance comparison between the ADAPT and the CAB algorithms. although both algorithms are able to acceptably locate the global minimum for both cases, there exist significant differences in the required time for reaching it. When comparing the averaged elapsed time (AET) and the averaged iteration number (AIN) in Table 11, CAB uses significantly less time and fewer iterations to reach the global minimum than the ADAPT algorithm.


## 5. Conclusions

This article proposes a novel metaheuristic optimization algorithm that is called the collective animal behavior algorithm (CAB). In CAB, the searcher agents emulates a group of animals that interact with each other considering simple behavioral rules which are modeled as mathematical operators. Such operations are applied to each agent considering that the complete group has a memory storing the best positions seen so far by using a competition principle.The CAB algorithm presents two important characteristics: (1) CAB operators allow a better tradeoff between exploration and exploitation of the search space; (2) the use of its embedded memory incorporates information regarding previously found local minima (potential solutions) during the evolution process.CAB has been experimentally tested considering a challenging test suite gathering 31 benchmark functions. In order to analyze the performance of the CAB algorithm, it has been compared to other well-known metaheuristic approaches. The experiments, statistically validated, have demonstrated that CAB generally outperforms other metaheuristic algorithms for most of the benchmark functions regarding the solution quality. In this study, the CAB algorithm has also been compared to algorithms based on continuous optimization methods. The results have shown that althogh continuous-based approaches outperform CAB for local optimization tasks, they face great difficulties in solving global optimization problems.



---

*Source: 638275-2012-02-28.xml*