# Optimized Parameter Settings of Binary Bat Algorithm for Solving Function Optimization Problems

Authors: Xiao-Xu Ma; Jie-Sheng Wang
Journal: Journal of Electrical and Computer Engineering
 (2018)

---

## Abstract

The bat algorithm (BA) is a new bionic intelligent optimization algorithm to simulate the foraging behavior and the echolocation principle of the bats. The parameter initialization of the discussed binary bat algorithm (BBA) has important influence on the convergence speed, convergence precision, and good global searching ability of the BBA. The convergence speed and algorithm searching precision are determined by the pulse of loudness and pulse rate. The simulation experiments are carried out by using the six typical test functions to discuss this influence. The simulation results show that the convergence speed of the BBA is relatively sensitive to the setting of the algorithm parameters. The convergence precision reduces when increasing the rate of bat transmitted pulse alone and the convergence speed increases the launch loudness alone. The proper combination of BBA parameters (the rate of bat transmitted pulse and the launch loudness) can flexibly improve the algorithm’s convergence velocity and improve the accuracy of the searched solutions.


---

## Body

## 1. Introduction

Optimization is the selection of a best element from a set of some available alternatives with regard to some criterion. Optimization algorithm is a basic principle of nature, which shows many different advantages and disadvantages in computational efficiency and global search probability and has a vast variety of applications in research and industry [1]. The function optimization presents a formalized framework for modelling and solving some certain problems. Given an objective function, it takes a number of parameters as its inputs, whose goal is to find the combination of parameters and return the best value. This framework is abstract enough that a wide variety of different problems can be interpreted as function optimization problems [2].However, the traditional function optimization algorithm is used to solve the typical problem with small dimension, often not applicable in practice. So people focus on the nature. Nature provides rich models to solve these problems (such as fireflies, bats, and ants). People discovered the swarm intelligence optimization algorithm by simulating natural biological systems. These models could stimulate computer scientists using household nontraditional tools to solve the application problems [3]. Now a lot of swarm intelligence optimization algorithms are proposed, such as particle swarm optimization (PSO) [4], ant colony algorithm (ACO) [5], bat algorithm (BA) [6], social learning optimization (SLO) algorithm [7], and chicken swarm optimization (CSO) algorithm [8]. They can be used in the dictionary learning remote sensing data, automotive safety integrity level positioning, economic dispatch, composition, and examples of the Cloud Service Composition of QOS awareness. Obviously, the study of swarm intelligence optimization has become an important research direction. The bat algorithm (BA) was proposed by professor Yang based on the swarm intelligence heuristic search algorithm in 2010 and is a kind of effective method to search the global optimal solution [9]. BA has attracted more and more attention because of its simple, less parameters, strong robustness, and the advantage of easy implementation. Firstly, BA was proposed to solve the problem with the continuous real search space. However, there are many optimization problems having the discrete binary search space. So the binary bat optimization algorithm (BBA) was put forward to solve this kind of problems [10]. At present, many scholars have carried out many researches and proved that this algorithm has a certain competitive performance compared with other algorithms. BA has been applied in the multiobjective function optimization with the artificial neural network model [11], economic operation [6], and economic load dispatch in wind power generation system [12]. BBA has been applied in the simulation test point selection [13], low speed rolling bearing fault [14], and the optimization of the echo state network [15].The parameter initialization of the discussed binary bat algorithm (BBA) has important influence on the convergence speed, convergence precision, and good global searching ability of the BBA. The convergence speed and algorithm searching precision are mainly determined by the rate of bat transmitted pulse and the launch loudness. In this paper, the function optimization problem is solved based on the binary bat algorithm (BBA). Then the parameter performance comparison and analysis are carried out through the simulation experiments in order to verify the binary bat algorithm’s superiority. The paper is organized as follows. In Sections2 and 3, the bat algorithm and binary bat algorithm are introduced. The simulation experiments and results analysis are introduced in detail in Section 4. Finally, the conclusion illustrates the last part.


## 2. Bat Algorithm

The bat algorithm is an intelligence optimization algorithm inspired by the echolocation behavior of bats [9]. Echolocation works as a type of sonar: bats, mainly microbats, emit a loud and short sound pulse. When they hit an object, after a fraction of time, the echo will return back to their ears. The bat receives and detects the location of the prey in this way. In addition, this amazing orientation mechanism makes bats able to distinguish the difference between an obstacle and a prey and allows them to hunt even in complete darkness. In order to simulate the foraging behavior of the bats, the biological mechanism of the bat algorithm to simulate the bats’ foraging behavior obeys the following idealized assumptions:(1) All bats use echolocation to sense distance, and they also know the difference between food/prey and the background barriers in some magical way.(2) A bat flies randomly with velocityVi at position Xi with a fixed frequency fmin, varying wavelength λ, and loudness A0 to search for prey. They can automatically adjust the wavelength (or frequency) of their emitted pulses and adjust the rate of pulse emission r∈(0,1) depending on the proximity of their targets.(3) Although the loudness can vary in many ways, Yang assumes that the loudness varies from a large positiveA0 to a minimum constant value Amin.On the basis of three idealized assumptions, the algorithm generates a set of solutions randomly and then searches the optimal solution by cycle and strengthens the local search in the process of searching. By producing the local solution near the optimal solution by random flight, BA finally finds the global optimal solution.The foraging space of bats is thed dimension. At time t-1, the location and the flight velocity of the ith bat are Xit-1 and Vit-1, respectively, and X∗ is the current global optimal location. At time t, the velocity and position of the ith bat are updated by using the following equations: (1)fi=fmin+fmax-fminβ(2)Vit=Vit-1+Xit-1-X∗fi(3)Xit=Xit-1+Vit,where fmin and fmax are the minimum and maximum frequency of the sound waves emitted by bats, respectively. β is a random number obeying the uniform distribution in [0,1]. When setting up the initial values, the frequency of launch sound waves of each bat obeys the uniform distribution in [fmin,fmax]. First of all, according to (1), obtain their frequencies, and then, according to (2) and (3), update the velocities and positions.For the local search, each bat carries out the random walk based on the optimal solution. The following equation is used to produce a new solution:(4)Xnew=Xold+εA¯t,where ε is a random number obeying the uniform distribution in [-1,1], Xold is a solution randomly selected from the current optimal solution, and A-(t) shows the average loudness for all bats at the tth iteration.The update rules of the loudness of pulse emission of the batAi and the velocity ri are described as follows: if a bat finds prey, it will reduce its impulse response and increase the velocity of its pulse emission. In BA, the loudness of pulse emission of the bat Ai and velocity ri is adjusted by the following equations: (5)Ait+1=αAit(6)rit+1=rit1+exp⁡yt,where ri0 is the initial velocity and Ai0 is the initial loudness, which are selected randomly. α and y are constant (0<α<1; y>0).


## 3. Binary Bat Algorithm

A binary search space can be considered as a hypercube. The search agents (particles) of a binary optimization algorithm can only shift to the nearer and farther corners of this hypercube by flipping various numbers of binary bits. Hence, when designing the binary version of BA, some basic concepts of the velocity and position updating rules must be modified. In the continuous version of BA, the artificial bats can move around the search space by utilizing position and velocity vectors (or updated position vectors) within the continuous real domain. In discrete binary space, the position updating means switching between “0” and “1.” In order to achieve this change, this switching should be done based on the velocities of agents. In other words, a transfer function defines a transformation probability from 0 to 1 for a position vector element and vice versa. The transfer functions force the particles to move in a binary space. The transfer function of the discussed binary BA is defined in (7) and Figure 1 [10].(7)Svikt=11+e-vikt,where vikt is the velocity of particle i in k dimension at iteration t.Figure 1
Sigmoid transfer function.After calculating the probabilities using transfer functions, a new position updating equation is necessary to update particles’ position as follows:(8)xikt+1=0Ifrand<Svikt+11Ifrand≥Svikt+1,where xikt and vikt indicate the position and velocity of ith particle at tth iteration in kth dimension.This method has a drawback as the particles are forced to take values of 0 or 1. So the particles remain unchanged in their positions when their velocity values increase. However, according to the concepts mentioned above for designing a transfer function, a better way is to oblige the particles with high velocity to switch their positions. A v-shaped transfer function and position updating rule are proposed in order to do this as in (9) and Figure 2.(9)Vvikt=2πarctan⁡π2viktxikt+1=xikt-1Ifrand<Vvikt+1xiktrand≥Vvikt+1,where xikt and vikt indicate the position and velocity of ith particle at tth iteration in kth dimension and xikt-1 is the complement of xikt.Figure 2
v-type transfer function.


## 4. Simulation Experiments and Results Analysis

### 4.1. Test Functions

In the simulation experiments, six typical functions are adopted to verify the performance of BBA. The simulation environment adoptsWindows 10 operating system, INTEL processor 2.40 GHz, and 3 G memory for MATLAB2014b simulation software. The testing functions are shown in Table 1, wheref1 ~f3 are unimodal functions andf4 ~f6 are the multimodal functions.Table 1
Simulation testing functions.
Function Expression Range Min. value f 1 f x =  ∑ i = 1 d = 101 x [ - 100,100 ] 0  f 2 f x =  ∑ i = 1 d = 101 x + 0.5 2 [ 0 , π ] 0  f 3 f x = - 20 exp ⁡ - 0.2  1 n ∑ i = 1 d = 101 X i 2 - exp ⁡ 1 n  ∑ i = 1 d = 101 cos ⁡ 2 π x i + 20 + e [ - 5.12,5.12 ] 0  f 4 f x =  ∑ i = 1 d = 101 - x sin ⁡ x [ - 500,500 ] - 418.982 9 × 5  f 5 f x =  ∑ i = 1 d = 101 x i 2 4000 - ∏ i = 1 d = 101 cos ⁡ x i i + 1 [ - 32,32 ] 0  f 6 f x =  ∑ i = 1 d = 101 x i 2 - 10 cos ⁡ 2 π x i + 10 [ - 5.12,5.12 ] 0


### 4.2. Simulation Experiments and Results Analysis

#### 4.2.1. Change of a Single VariableAi

The initialization parameters of BBA are set as follows: the population size (noP) is 30, the number of iterations (Max_iteration) is 500,r=0.1, and the algorithm dimension (noV) is 100. In order to reduce the influence of random disturbance, the independent operating for each test function is carried out 10 times. The optimal value and average values of BBA in different launch loudness Ai are shown in Table 2. The simulation results of the six test functions are shown in Figure 3.Table 2
Performance comparison of BBA under differentAi.
Function Result Simulation results of BBA under differentAi Minimum time (s) 0.25 0.4 0.6 0.9 f 1 Average 1.6 1.05 0.656 1.074 10.065 s Std. 3.6423 3.3974 3.0026 2.913 Optimum 2 2 2 0 f 2 Average 26.58 28.176 27.068 26.984 11.618 s Std. 6.4989 7.8753 6.0687 6.5658 Optimum 25 25 29 27 f 3 Average 0.42459 0.13147 0.55776 0.16727 11.112 s Std. 0.30212 0.30663 0.39227 0.33251 Optimum 0.39603 0.55776 0.20291 0.39603 f 4 Average −83.269 −83.287 −83.282 −82.781 12.209 s Std. 2.5872 2.7421 3.194 2.9798 Optimum −83.306 −82.464 −84.147 −83.306 f 5 Average 0.040308 0.0072643 0.012536 0.0078837 11.426 s Std. 0.040308 0.028619 0.037926 0.031519 Optimum 0.0061266 0.011729 0.0068217 0.0053477 f 6 Average 1.172 1.008 0.85 0.986 11.01 s Std. 3.4621 2.9782 3.608 2.7468 Optimum 1 3 1 1Figure 3
Simulation results of BBA under differentAi.
(a)
Simulation results of functionf1 under different Ai (b)
Simulation results of functionf2 under different Ai (c)
Simulation results of functionf3 under different Ai (d)
Simulation results of functionf4 under different Ai (e)
Simulation results of functionf5 under different Ai (f)
Simulation results of functionf6 under different AiIt can be seen from the convergence curves and the numerical results of six functions after 500 iterations and 10 times running independently that the optimization ability increases gradually whenAi changes from 0.25 to 0.9. Functions f3 and f4 get the optimal value when Ai=0.6. Function f1, f5, and f6 get optimal value when Ai=0.9. The most obvious convergence curve is f3 and the worst convergence curve function is f1.Compared with other convergence curves, functionf2 is the most volatile. The function searching capability affected by Ai is smaller and the searching running time is related to the function complexity. It can be seen from all convergence trends that the convergence rate did not increase or decrease regularly with the increase of Ai. Meanwhile, it has a certain relationship with the solution space. It is different from the function optimization performance impacted by the maximum or minimum values of parameter ri. Hence, each function is corresponding to the optimal value of Ai. When Ai is 0.4, the optimization effect of function f2 is the best. When Ai is 0.6, the optimization effects of functions f3 and f4 are the best. When Ai is 0.9, the optimization effects of functions f1, f5, and f6 are the best.


#### 4.2.2. Change of a Single Variableri

In view ofri (the rate of bat transmitted pulse), the simulation experiments are carried out according to (6) and the simulation results are shown in Table 3 and Figure 4.Table 3
Performance comparison of BBA under differentri.
Function Result The simulation results of BBA under differentri Minimum time (s) 0.2 0.5 2 10 f 1 0.9 10 18 24 30 9.844000(4) f 2 0.4 37 69 85 81 11.263000(3) f 3 0.6 1.9033 1.7515 2.0421 1.9391 11.372000(4) f 4 0.6 −77.415 −66.476 −62.269 −60.586 11.934000(4) f 5 0.9 0.1069 0.18355 0.34503 0.31911 11.482000(1) f 6 0.9 8 19 24 28 11.083000Figure 4
Simulation results of BBA under differentri.
(a)
Simulation results of functionf1 under different ri (b)
Simulation results of functionf2 under different ri (c)
Simulation results of functionf3 under different ri (d)
Simulation results of functionf4 under different ri (e)
Simulation results of functionf5 under different ri (f)
Simulation results of functionf6 under different riWhenr=0.2, the test functions f1, f2, f4, f5, and f6 obtain the optimal solution. The function f3 gets the optimal solution when r=0.5. With the increase of r, the optimal solution of functions f1, f3, and f5 reduces gradually. The optimal solution of functions f1, f3, and f5 also presents the tendency of decrease but r=10 is better than r=2. The operation time of the functions is almost the same time. From the convergence curves, function optimization precision is worse and worse, and convergence speed is slower and slower reduced in gradient with the increase of r. In a word, for different functions, the smaller r, the better the performance of convergence and the optimization ability is stronger and stronger.


#### 4.2.3. Change of VariableAi and ri

In view ofAi (the loudness of bat transmitted pulse) and ri (the rate of bat transmitted pulse), the simulation experiments are carried out and the simulation results are shown in Table 4 and Figure 5.Table 4
Performance comparison of BBA under differentAi and ri.
Function The simulation results of BBA under differentAi and ri Optimum Average A i r i f 1 0.9 0.1 0 0.79 0.9 0.2 8 9.272 0.6 0.1 1 0.58 0.6 0.2 8 7.474 f 2 0.4 0.1 1 1.292 0.4 0.2 7 7.07 0.25 0.1 0 1.152 0.25 0.2 9 9.376 f 3 0.6 0.1 0 0.772 0.6 0.5 22 16.872 0.4 0.1 1 1.158 0.4 0.5 20 17.022 f 4 0.6 0.1 7 7.15 0.6 0.2 5 6.568 0.4 0.1 1 0.75 0.4 0.2 9 9.03 f 5 0.9 0.1 0.0068217 0.010572 0.9 0.2 0.0751 0.072148 0.6 0.1 0.0069992 0.0075418 0.6 0.2 0.071033 0.060404 f 6 0.9 0.1 1 0.614 0.9 0.2 9 5.75 0.6 0.1 0 0.66 0.6 0.2 8 7.914Figure 5
Simulation results of BBA under differentAi and ri.
(a)
Simulation results of functionf1 under different Ai and ri (b)
Simulation results of functionf2 under different Ai and ri (c)
Simulation results of functionf3 under different Ai and ri (d)
Simulation results of functionf4 under different Ai and ri (e)
Simulation results of functionf5 under different Ai and ri (f)
Simulation results of functionf6 under different Ai and riWhenAi is 0.9 and ri is 0.1, the optimization of function f1 is best for the loudness of bat transmitted pulse Ai and the rate of bat transmitted pulse ri. When Ai is 0.9 and ri is 0.1, the optimization of function f2 is best. When Ai is 0.6 and ri is 0.1, the optimization of function f3 is best. When Ai is 0.4 and ri is 0.1, the optimization of function f4 is best. When Ai is 0.9 and ri is 0.1, the optimization of function f5 is best. When Ai is 0.6 and ri is 0.1, the optimization of function f6 is best. It can be seen from the convergence curves that the convergence precision reduces when increasing ri alone and the convergence speed increases when reducing Ai alone. Different functions have an impact on optimization effect of BBA. The optimal combination of algorithm parameters is independent for different function.


## 4.1. Test Functions

In the simulation experiments, six typical functions are adopted to verify the performance of BBA. The simulation environment adoptsWindows 10 operating system, INTEL processor 2.40 GHz, and 3 G memory for MATLAB2014b simulation software. The testing functions are shown in Table 1, wheref1 ~f3 are unimodal functions andf4 ~f6 are the multimodal functions.Table 1
Simulation testing functions.
Function Expression Range Min. value f 1 f x =  ∑ i = 1 d = 101 x [ - 100,100 ] 0  f 2 f x =  ∑ i = 1 d = 101 x + 0.5 2 [ 0 , π ] 0  f 3 f x = - 20 exp ⁡ - 0.2  1 n ∑ i = 1 d = 101 X i 2 - exp ⁡ 1 n  ∑ i = 1 d = 101 cos ⁡ 2 π x i + 20 + e [ - 5.12,5.12 ] 0  f 4 f x =  ∑ i = 1 d = 101 - x sin ⁡ x [ - 500,500 ] - 418.982 9 × 5  f 5 f x =  ∑ i = 1 d = 101 x i 2 4000 - ∏ i = 1 d = 101 cos ⁡ x i i + 1 [ - 32,32 ] 0  f 6 f x =  ∑ i = 1 d = 101 x i 2 - 10 cos ⁡ 2 π x i + 10 [ - 5.12,5.12 ] 0


## 4.2. Simulation Experiments and Results Analysis

### 4.2.1. Change of a Single VariableAi

The initialization parameters of BBA are set as follows: the population size (noP) is 30, the number of iterations (Max_iteration) is 500,r=0.1, and the algorithm dimension (noV) is 100. In order to reduce the influence of random disturbance, the independent operating for each test function is carried out 10 times. The optimal value and average values of BBA in different launch loudness Ai are shown in Table 2. The simulation results of the six test functions are shown in Figure 3.Table 2
Performance comparison of BBA under differentAi.
Function Result Simulation results of BBA under differentAi Minimum time (s) 0.25 0.4 0.6 0.9 f 1 Average 1.6 1.05 0.656 1.074 10.065 s Std. 3.6423 3.3974 3.0026 2.913 Optimum 2 2 2 0 f 2 Average 26.58 28.176 27.068 26.984 11.618 s Std. 6.4989 7.8753 6.0687 6.5658 Optimum 25 25 29 27 f 3 Average 0.42459 0.13147 0.55776 0.16727 11.112 s Std. 0.30212 0.30663 0.39227 0.33251 Optimum 0.39603 0.55776 0.20291 0.39603 f 4 Average −83.269 −83.287 −83.282 −82.781 12.209 s Std. 2.5872 2.7421 3.194 2.9798 Optimum −83.306 −82.464 −84.147 −83.306 f 5 Average 0.040308 0.0072643 0.012536 0.0078837 11.426 s Std. 0.040308 0.028619 0.037926 0.031519 Optimum 0.0061266 0.011729 0.0068217 0.0053477 f 6 Average 1.172 1.008 0.85 0.986 11.01 s Std. 3.4621 2.9782 3.608 2.7468 Optimum 1 3 1 1Figure 3
Simulation results of BBA under differentAi.
(a)
Simulation results of functionf1 under different Ai (b)
Simulation results of functionf2 under different Ai (c)
Simulation results of functionf3 under different Ai (d)
Simulation results of functionf4 under different Ai (e)
Simulation results of functionf5 under different Ai (f)
Simulation results of functionf6 under different AiIt can be seen from the convergence curves and the numerical results of six functions after 500 iterations and 10 times running independently that the optimization ability increases gradually whenAi changes from 0.25 to 0.9. Functions f3 and f4 get the optimal value when Ai=0.6. Function f1, f5, and f6 get optimal value when Ai=0.9. The most obvious convergence curve is f3 and the worst convergence curve function is f1.Compared with other convergence curves, functionf2 is the most volatile. The function searching capability affected by Ai is smaller and the searching running time is related to the function complexity. It can be seen from all convergence trends that the convergence rate did not increase or decrease regularly with the increase of Ai. Meanwhile, it has a certain relationship with the solution space. It is different from the function optimization performance impacted by the maximum or minimum values of parameter ri. Hence, each function is corresponding to the optimal value of Ai. When Ai is 0.4, the optimization effect of function f2 is the best. When Ai is 0.6, the optimization effects of functions f3 and f4 are the best. When Ai is 0.9, the optimization effects of functions f1, f5, and f6 are the best.


### 4.2.2. Change of a Single Variableri

In view ofri (the rate of bat transmitted pulse), the simulation experiments are carried out according to (6) and the simulation results are shown in Table 3 and Figure 4.Table 3
Performance comparison of BBA under differentri.
Function Result The simulation results of BBA under differentri Minimum time (s) 0.2 0.5 2 10 f 1 0.9 10 18 24 30 9.844000(4) f 2 0.4 37 69 85 81 11.263000(3) f 3 0.6 1.9033 1.7515 2.0421 1.9391 11.372000(4) f 4 0.6 −77.415 −66.476 −62.269 −60.586 11.934000(4) f 5 0.9 0.1069 0.18355 0.34503 0.31911 11.482000(1) f 6 0.9 8 19 24 28 11.083000Figure 4
Simulation results of BBA under differentri.
(a)
Simulation results of functionf1 under different ri (b)
Simulation results of functionf2 under different ri (c)
Simulation results of functionf3 under different ri (d)
Simulation results of functionf4 under different ri (e)
Simulation results of functionf5 under different ri (f)
Simulation results of functionf6 under different riWhenr=0.2, the test functions f1, f2, f4, f5, and f6 obtain the optimal solution. The function f3 gets the optimal solution when r=0.5. With the increase of r, the optimal solution of functions f1, f3, and f5 reduces gradually. The optimal solution of functions f1, f3, and f5 also presents the tendency of decrease but r=10 is better than r=2. The operation time of the functions is almost the same time. From the convergence curves, function optimization precision is worse and worse, and convergence speed is slower and slower reduced in gradient with the increase of r. In a word, for different functions, the smaller r, the better the performance of convergence and the optimization ability is stronger and stronger.


### 4.2.3. Change of VariableAi and ri

In view ofAi (the loudness of bat transmitted pulse) and ri (the rate of bat transmitted pulse), the simulation experiments are carried out and the simulation results are shown in Table 4 and Figure 5.Table 4
Performance comparison of BBA under differentAi and ri.
Function The simulation results of BBA under differentAi and ri Optimum Average A i r i f 1 0.9 0.1 0 0.79 0.9 0.2 8 9.272 0.6 0.1 1 0.58 0.6 0.2 8 7.474 f 2 0.4 0.1 1 1.292 0.4 0.2 7 7.07 0.25 0.1 0 1.152 0.25 0.2 9 9.376 f 3 0.6 0.1 0 0.772 0.6 0.5 22 16.872 0.4 0.1 1 1.158 0.4 0.5 20 17.022 f 4 0.6 0.1 7 7.15 0.6 0.2 5 6.568 0.4 0.1 1 0.75 0.4 0.2 9 9.03 f 5 0.9 0.1 0.0068217 0.010572 0.9 0.2 0.0751 0.072148 0.6 0.1 0.0069992 0.0075418 0.6 0.2 0.071033 0.060404 f 6 0.9 0.1 1 0.614 0.9 0.2 9 5.75 0.6 0.1 0 0.66 0.6 0.2 8 7.914Figure 5
Simulation results of BBA under differentAi and ri.
(a)
Simulation results of functionf1 under different Ai and ri (b)
Simulation results of functionf2 under different Ai and ri (c)
Simulation results of functionf3 under different Ai and ri (d)
Simulation results of functionf4 under different Ai and ri (e)
Simulation results of functionf5 under different Ai and ri (f)
Simulation results of functionf6 under different Ai and riWhenAi is 0.9 and ri is 0.1, the optimization of function f1 is best for the loudness of bat transmitted pulse Ai and the rate of bat transmitted pulse ri. When Ai is 0.9 and ri is 0.1, the optimization of function f2 is best. When Ai is 0.6 and ri is 0.1, the optimization of function f3 is best. When Ai is 0.4 and ri is 0.1, the optimization of function f4 is best. When Ai is 0.9 and ri is 0.1, the optimization of function f5 is best. When Ai is 0.6 and ri is 0.1, the optimization of function f6 is best. It can be seen from the convergence curves that the convergence precision reduces when increasing ri alone and the convergence speed increases when reducing Ai alone. Different functions have an impact on optimization effect of BBA. The optimal combination of algorithm parameters is independent for different function.


## 4.2.1. Change of a Single VariableAi

The initialization parameters of BBA are set as follows: the population size (noP) is 30, the number of iterations (Max_iteration) is 500,r=0.1, and the algorithm dimension (noV) is 100. In order to reduce the influence of random disturbance, the independent operating for each test function is carried out 10 times. The optimal value and average values of BBA in different launch loudness Ai are shown in Table 2. The simulation results of the six test functions are shown in Figure 3.Table 2
Performance comparison of BBA under differentAi.
Function Result Simulation results of BBA under differentAi Minimum time (s) 0.25 0.4 0.6 0.9 f 1 Average 1.6 1.05 0.656 1.074 10.065 s Std. 3.6423 3.3974 3.0026 2.913 Optimum 2 2 2 0 f 2 Average 26.58 28.176 27.068 26.984 11.618 s Std. 6.4989 7.8753 6.0687 6.5658 Optimum 25 25 29 27 f 3 Average 0.42459 0.13147 0.55776 0.16727 11.112 s Std. 0.30212 0.30663 0.39227 0.33251 Optimum 0.39603 0.55776 0.20291 0.39603 f 4 Average −83.269 −83.287 −83.282 −82.781 12.209 s Std. 2.5872 2.7421 3.194 2.9798 Optimum −83.306 −82.464 −84.147 −83.306 f 5 Average 0.040308 0.0072643 0.012536 0.0078837 11.426 s Std. 0.040308 0.028619 0.037926 0.031519 Optimum 0.0061266 0.011729 0.0068217 0.0053477 f 6 Average 1.172 1.008 0.85 0.986 11.01 s Std. 3.4621 2.9782 3.608 2.7468 Optimum 1 3 1 1Figure 3
Simulation results of BBA under differentAi.
(a)
Simulation results of functionf1 under different Ai (b)
Simulation results of functionf2 under different Ai (c)
Simulation results of functionf3 under different Ai (d)
Simulation results of functionf4 under different Ai (e)
Simulation results of functionf5 under different Ai (f)
Simulation results of functionf6 under different AiIt can be seen from the convergence curves and the numerical results of six functions after 500 iterations and 10 times running independently that the optimization ability increases gradually whenAi changes from 0.25 to 0.9. Functions f3 and f4 get the optimal value when Ai=0.6. Function f1, f5, and f6 get optimal value when Ai=0.9. The most obvious convergence curve is f3 and the worst convergence curve function is f1.Compared with other convergence curves, functionf2 is the most volatile. The function searching capability affected by Ai is smaller and the searching running time is related to the function complexity. It can be seen from all convergence trends that the convergence rate did not increase or decrease regularly with the increase of Ai. Meanwhile, it has a certain relationship with the solution space. It is different from the function optimization performance impacted by the maximum or minimum values of parameter ri. Hence, each function is corresponding to the optimal value of Ai. When Ai is 0.4, the optimization effect of function f2 is the best. When Ai is 0.6, the optimization effects of functions f3 and f4 are the best. When Ai is 0.9, the optimization effects of functions f1, f5, and f6 are the best.


## 4.2.2. Change of a Single Variableri

In view ofri (the rate of bat transmitted pulse), the simulation experiments are carried out according to (6) and the simulation results are shown in Table 3 and Figure 4.Table 3
Performance comparison of BBA under differentri.
Function Result The simulation results of BBA under differentri Minimum time (s) 0.2 0.5 2 10 f 1 0.9 10 18 24 30 9.844000(4) f 2 0.4 37 69 85 81 11.263000(3) f 3 0.6 1.9033 1.7515 2.0421 1.9391 11.372000(4) f 4 0.6 −77.415 −66.476 −62.269 −60.586 11.934000(4) f 5 0.9 0.1069 0.18355 0.34503 0.31911 11.482000(1) f 6 0.9 8 19 24 28 11.083000Figure 4
Simulation results of BBA under differentri.
(a)
Simulation results of functionf1 under different ri (b)
Simulation results of functionf2 under different ri (c)
Simulation results of functionf3 under different ri (d)
Simulation results of functionf4 under different ri (e)
Simulation results of functionf5 under different ri (f)
Simulation results of functionf6 under different riWhenr=0.2, the test functions f1, f2, f4, f5, and f6 obtain the optimal solution. The function f3 gets the optimal solution when r=0.5. With the increase of r, the optimal solution of functions f1, f3, and f5 reduces gradually. The optimal solution of functions f1, f3, and f5 also presents the tendency of decrease but r=10 is better than r=2. The operation time of the functions is almost the same time. From the convergence curves, function optimization precision is worse and worse, and convergence speed is slower and slower reduced in gradient with the increase of r. In a word, for different functions, the smaller r, the better the performance of convergence and the optimization ability is stronger and stronger.


## 4.2.3. Change of VariableAi and ri

In view ofAi (the loudness of bat transmitted pulse) and ri (the rate of bat transmitted pulse), the simulation experiments are carried out and the simulation results are shown in Table 4 and Figure 5.Table 4
Performance comparison of BBA under differentAi and ri.
Function The simulation results of BBA under differentAi and ri Optimum Average A i r i f 1 0.9 0.1 0 0.79 0.9 0.2 8 9.272 0.6 0.1 1 0.58 0.6 0.2 8 7.474 f 2 0.4 0.1 1 1.292 0.4 0.2 7 7.07 0.25 0.1 0 1.152 0.25 0.2 9 9.376 f 3 0.6 0.1 0 0.772 0.6 0.5 22 16.872 0.4 0.1 1 1.158 0.4 0.5 20 17.022 f 4 0.6 0.1 7 7.15 0.6 0.2 5 6.568 0.4 0.1 1 0.75 0.4 0.2 9 9.03 f 5 0.9 0.1 0.0068217 0.010572 0.9 0.2 0.0751 0.072148 0.6 0.1 0.0069992 0.0075418 0.6 0.2 0.071033 0.060404 f 6 0.9 0.1 1 0.614 0.9 0.2 9 5.75 0.6 0.1 0 0.66 0.6 0.2 8 7.914Figure 5
Simulation results of BBA under differentAi and ri.
(a)
Simulation results of functionf1 under different Ai and ri (b)
Simulation results of functionf2 under different Ai and ri (c)
Simulation results of functionf3 under different Ai and ri (d)
Simulation results of functionf4 under different Ai and ri (e)
Simulation results of functionf5 under different Ai and ri (f)
Simulation results of functionf6 under different Ai and riWhenAi is 0.9 and ri is 0.1, the optimization of function f1 is best for the loudness of bat transmitted pulse Ai and the rate of bat transmitted pulse ri. When Ai is 0.9 and ri is 0.1, the optimization of function f2 is best. When Ai is 0.6 and ri is 0.1, the optimization of function f3 is best. When Ai is 0.4 and ri is 0.1, the optimization of function f4 is best. When Ai is 0.9 and ri is 0.1, the optimization of function f5 is best. When Ai is 0.6 and ri is 0.1, the optimization of function f6 is best. It can be seen from the convergence curves that the convergence precision reduces when increasing ri alone and the convergence speed increases when reducing Ai alone. Different functions have an impact on optimization effect of BBA. The optimal combination of algorithm parameters is independent for different function.


## 5. Conclusions

Based on the basic principle of binary bat algorithm (BBA), the optimization performance is verified by carrying out the simulation experiments on six test functions.ri has contact with the convergence precision. Ai relates to the convergence rate but the different functions require different Ai. Therefore, for different functions, the simulation experiments should be carried out in order to obtain the appropriate parameter setting. The simulation results show that the convergence speed of the algorithm is relatively sensitive to the setting of the algorithm parameters.



---

*Source: 3847951-2018-05-14.xml*