1 Introduction

In optimization algorithms, the major objective is locating the optimal decision variables to obtain the minimum or maximum value determined by the objective function [1,2,3,4]. In each optimization algorithm, there are mechanisms or techniques to examine the search space of a certain problem, aim to determine the optimal solution [5, 6]. There are some things that should be taken into account when the optimization procedure begins, such as objective function, parameters settings, and constraints [7]. These processes are effective in identifying promising areas in the search space but are ineffective in exploiting the search space region being explored [8]. Swarm Intelligence (SI) algorithms are popular type of Optimization algorithms, called population-based methods [9, 10]. SI algorithms have the same features of optimization algorithms in addition social interaction behaviour of natural creatures. Examples of swarm-based algorithms include particle swarm optimization (PSO) [11], the cuckoo search algorithm (CSA) [12], flower pollination algorithm [13, 14], and the bat algorithm (BA) [15].

Swarm intelligence-based methods are inspired by animal societies and social insect colonies [16, 17]. They mimic the behaviour of swarming social insects, schools of fish or flocks of birds. The main advantages of these methods are their flexibility and robustness [18,19,20]. BA is a recent metaheuristic population-based method developed by Xin-She Yang in 2010 [15] that emulates the echolocation behaviour of bats. Many kinds of bats exist in nature, and all of them exhibit similar navigating and hunting behaviours despite their different sizes and weights. Microbats extensively use echolocation to assists them as they seek prey and/or avoid obstacles in complete darkness. The behaviour of microbats has been formulated as a novel optimization technique. BA combines a population-based algorithm and local search strategy to yield an algorithm capable of global exploration and local exploitation.

The main objective of this review paper is to introduce a comprehensive summary of the main procedures and sources of BA. For instance, the growth of BA since it proposed in 2010 till June 2022 is presented to show the continuity of use it by researchers. Moreover, the variants of BA are classified into binary, discrete, modification, hybridization versions. Also, applications that have utilized the BA are classified into benchmarking optimization, clustering and mining, power and energy systems, economic load dispatch, engineering, image processing, medical, robotic, wireless and antenna array, and machine learning applications. After that, a comparisons are conducted with other optimization algorithms to evaluate the performance of BA. Consequently, the readers will be able to understand the design and working principle of BA, as well as distinguish the developmental stages and diverse fields that use BA to optimize solutions. Where the review paper provides main advantages and weaknesses of BA and suggests possible directions for future work to interested researchers.

The review paper aims to provide the interested researchers with optimization algorithms by introducing a comprehensive review of the bat algorithm (BA), the following points show the content of this review.

  • An overview of the main concept of basic BA’s to highlight the main strengths, weaknesses, and procedures of the algorithm.

  • Illustrates the related works of BA and classifies them into; Variants such as Binary BA, Discrete BA, and Modified BA. As well as, the recent applications of the BA such as Engineering Design, Image Processing, and Medical fields.

  • Evaluate the efficiency of BA compared with other algorithms in the literature.

  • Introduces potential guidnesses using BA for future works.

Based on the above, the rest sections of this review paper are organized as follows: Section 2 introduces the main procedures of BA. Then, the development of BA is described in Sect. 3. Section 4 shows an overview of the BA variants. Application areas and improvements in particular fields are discussed in Sect. 5, and the evaluation of BA is provided in Sect. 6. Finally, Sect. 7 draws some concluding remarks and outlines several lines of interest for future research.

2 Bat Algorithm: An Overview

2.1 Origin

In nature, A microbat naturally emits loud sound pulses and listens to their echoes from surrounding objects. Microbats can determine the chasing tactic of their prey depending on sound pulses by sending frequency-modulated signals that range from 25 KHz to 150 KHz. Each ultrasonic sound burst lasts only a short period, and the bats can send around 10–20 sound bursts every second. However, the number of pulses sent increases to roughly 200 pulses per second once the bat comes next to the prey. Although a microbat sends load pulses as it searches for its prey, the sound of these pulses decreases as it approaches its target.

Figure 1, illustrates the possible trajectory of a bat. It starts with arbitrary position then changes its location depending on emitted sound pulses and emission rates until it reaches the prey’s location. Once a bat finds its prey, the loudness decreases and the rate of pulse emission increases.

Fig. 1
figure 1

Trajectory of a single bat

2.2 Bat Algorithm

The BA proposed in 2010 by Xin-She Yang [15]. It uses to mimic the echolocation of microbats and formulated as a novel optimization technique that applies a bat’s behaviour when it searches for prey and/or avoids difficulties in dusk. Thus, this section introduces the mathematical formulation of the BA which inspired from the Bats life in the nature. It’s worth to mention that Yang introduced six major stages to formulate the BA as shown below.

Step 1::

Initialization of bat and problem parameters.

In principle, to evaluate the optimality of solution \({{\varvec{x}}}\) by using the objective function \(f({{\varvec{x}}})\) of any global optimization problem, the following formulation can be generalized:

$$\begin{aligned} \text {min} \{{f({{\varvec{x}}})\,|\,{{\varvec{x}}}\in {\textbf {X}}}\}, \end{aligned}$$

where \(f({{\varvec{x}}})\) is the objective function; \({{\varvec{x}}}=\{x_i\,|\,i=1,\ldots ,d\}\) is the set of decision variables. \({\textbf {X}}=\{ {{\varvec{X}}}_i\,|\,i=1,\ldots ,d\}\) is the possible value range for each decision variable, where \({{\varvec{X}}}_i\in [LB_i,UB_i]\), \(LB_i\) and \(UB_i\) are the lower and upper bounds for the decision variable \(x_i\) respectively, and d is the number of decision variables.

Step 2::

Initialize bat population memory.

The bat population memory (BM) is an augmented matrix of size N \(\times\) d that contains the sets of bat location vectors as many as N (see Eq. (1)). In this step, these bat location vectors are randomly generated as follows: \(x_{i}^{j}=LB_i+(UB_i-LB_i)\times U(0,1)\), \(\forall i=1,2, \ldots , d\) and \(\forall j=1,2, \ldots , {N}\), and U(0, 1) generate a uniform random number between 0 and 1. The generated solutions are stored in the BM in an ascending order based on their objective function values, where \(f({{\varvec{x}}}^{1})\le f({{\varvec{x}}}^{2}) \le \ldots \le f({{\varvec{x}}}^{N})\).

$$\begin{aligned} {\text {BM}}=&\left[ \begin{matrix} x^{1}_{1} &{} x^{1}_{2} &{} \cdots &{} x^{1}_{d}\\ x^{2}_{1} &{} x^{2}_{2} &{} \cdots &{} x^{2}_{d}\\ \vdots &{} \vdots &{} \cdots &{} \vdots \\ x^{N}_{1} &{} x^{N}_{2} &{} \cdots &{} x^{N}_{d}\\ \end{matrix} \right] . \end{aligned}$$
(1)

The global best bat location \({{\varvec{x}}}^{Gbest}\) is memorized in this step, where \({{\varvec{x}}}^{Gbest} = {{\varvec{x}}}^{1}\).

Step 3::

Bat Motion.

In this step, each bat \({{\varvec{x}}}^j\) flies with a velocity \({{\varvec{v}}}^j\) affected by a randomly generated frequency \(f_j\). New bat location \({{\varvec{x}}}'^j\) in the search space is updated as follows:

$$\begin{aligned} f_j= & {} f_{min} + (f_{min} - f_{max}) \times U(0,1) \end{aligned}$$
(2)
$$\begin{aligned} v'^j_i= & {} v_i^j + (x_{i}^{j} - x_{i}^{Gbest}) \times f_j \end{aligned}$$
(3)
$$\begin{aligned} x'^{j}_i= & {} x_{i}^{j} + v'^j_i \end{aligned}$$
(4)

where \(\forall i=1,2, \ldots , d\) and \(\forall j=1,2, \ldots , {N}\). The offspring bat location is updating based on the parent bat location added to a relatively small value. This small value is inherited as the distance between the values in the global best bat location and the parent bat become near the offspring bat.

Step 4::

Intensification of the current bat population.

This step is the source of controlled randomness in the bat-inspired algorithm. With a probability range of pulse rate \(r_j\), each new bat location is updated using a local search strategy with random walk around the currently selected best solutions. The historical bat location \({{\varvec{x}}}^{best}\) is initially selected among the current best locations. Thereafter, the new bat location \({{\varvec{x}}}'^j\) is updated as follows:

$$\begin{aligned} x'^{j}_{i} = x_{i}^{best} + \epsilon {\hat{A}}_j \end{aligned}$$
(5)

where \({\hat{A}}_j\) is the mean loudness of all of the bats. To summarize step 3 and step 4, the new bat location \({{\varvec{x}}}'^j\) can be calculated as:

$$\begin{aligned} {{\varvec{x}}}'^j \leftarrow {\left\{ \begin{array}{ll} {{\varvec{x}}}^{best} + \epsilon {\hat{A}}_j &{} U(0,1) > r_j \\ {{\varvec{x}}}^{j} + {{\varvec{v}}}'^j &{} otherwise. \end{array}\right. } \end{aligned}$$
Step 5::

Updating the bat population memory.

In this step, for each bat in BM, the new bat location replaces the current bat location based on the following conditions:

1.:

The objective function value of \(f({{\varvec{x}}}^{Gbest})\) is better than \(f({{\varvec{x}}}'^j)\).

2.:

\(U(0,1)< A_j\).

The value of pulse rate \(r_j\) and loudness \(A_j\) will be also updated as follows:

$$\begin{aligned} r_j= & {} r^0_j (1 - e^{( -\gamma \times itr)}) \end{aligned}$$
(6)
$$\begin{aligned} A_j= & {} \alpha A_j \end{aligned}$$
(7)

where itr is the generation number in the current time step. As the time step itr approaches infinity, the average loudness of the bat approaches zero whereas the rate of pulse emission approaches the initial rate of pulse emission.

$$\begin{aligned} A_j^{itr}\longrightarrow 0 , r_j^{itr}\longrightarrow r^j_0, \text { as } itr \longrightarrow \infty \end{aligned}$$

Finally, the bats are ranked and the current best bat location \({{\varvec{x}}}^{Gbest}\) is determined.

Step 6::

Stop Criterion.

In this step, the bat-inspired algorithm repeats step 3 to step 5 until the termination criterion is met. The termination criteria is normally related to computational time constraint, number or generations, number of halted generations and quality of the final outcomes.

3 The Growth of Bat Algorithm in the Literature

This section introduces the number of articles published in BA between 2011 and 2022. The aim of this section is to highlight the importance and continuation of using BA by the researchers. More than 400 articles have been obtained from highly reputable publishers (journals and conferences) such as Elsevier, Springer and IEEE, as well as from journals/conferences that were searched using Google Scholar. After that, the BA search results are classified based on publishing institution, the distribution of publications, variants of BA, and applications of BA.

Evaluation of the published methods’ strength and weaknesses are based on their publication characteristics, including the amount of publications and publishing institutes and whether the publisher is a magazine or a conference. This paragraph is highlighted on the publishing institutes of BA. Figure 2 shows two categories: journals with 362 articles and conferences with 130 articles, each one part (i.e., journals and conferences) includes the Elsevier, Springer, IEEE, and others. Searches were conducted by the authors using bat algorithm as the key word until June 2022. The majority of the articles were published by other journals, e.g. Hindawi, World Scientific, Wiley and Taylor and Francis journals , followed by Elsevier, Springer and IEEE. The main reasons for this percentages are the time and the complexity of the process. Therefore, most authors prefer to publish their work in the journal in which acceptance is fastest and easiest. Conference articles showed the same trend, and most articles for this category were published by the IEEE, which provides the most facilities for organizers.

Fig. 2
figure 2

Published articles on BA from (2011 to 2022)

Publications on BA variants from 2011 to 2022 are shown in Fig. 3; most of the articles on these variants were published in 2015, although articles on discrete BA were published in 2016. Although most of the variants had been covered, the BA variants articles still publish until 2022 .

Fig. 3
figure 3

Variants of BA

Figure 4 shows the distribution of published research articles on BA in three main categories: applications 73% variants 27%. Figure 5 shows the applications of BA in detail from 2011 to 2018. In general, the number of articles increased from 2013 to 2016. The three articles were published from 2016 until May 2018 reported on the use of BA in image processing, cross-applications and robotics. The most application of BA for power and energy systems almost the length of the period. The applications of BA are described in detail in Sect. 5.

Fig. 4
figure 4

Distribution of published research articles on BA

Fig. 5
figure 5

Applications of BA

In summary, great progress in BA development was achieved between 2013 and 2016. However, the algorithm is still used till now. In the conclusion of this review, possible ways to use BA in different fields are presented.

4 Bat Algorithm Variants

This section introduces the BA variants in detail to show various methods used to improve and enhance the efficiency of BA. This section includes four subsections and each one ends with a summary table.

4.1 Binary Bat Algorithm

The original BA algorithm is tailored for continuous optimization problems. However, in dealing with binary optimization problems, BA operators should be reformulated to be applicable to such type of optimization problem. A binary version of BA (BBA) was proposed by a number of researchers. In BBA, the navigation and hunting of the artificial bats are conducted in binary search spaces by changing their positions from “0” to “1” and vice versa [21].

Furthermore the Enhanced Binary Bat Algorithm (EBBA) [22] is a further BA improvement that is suggested to address the feature selection issues. In order to address BA’s feature selection concerns, the suggested method combines three techniques: the population diversity boosting method, the Lévy flight-based method, and the chaos-based loudness method. According to the simulation results, EBBA performs better than other comparable benchmarks. Additionally, for attribute selection and classification, the authors in [23] suggested a multi-objective optimization technique incorporating greedy crossover. The recommended strategy is meant to fix the less-than-ideal outcomes that were obtained as a result of the early convergence of optimization techniques. For feature selection, a combination of BBA and SVM as the evaluator is used. Compared to the current bat-based techniques, the suggested approach performs better.

Rani et al. [24] proposed a novel method for feature selection in unsupervised learning. This method is based on BBA and applies the sum of squared errors in the K-means algorithm as the fitness function. Experimental results show that the accuracy of the proposed method with reduced features is better than that of other optimisation algorithms (e.g. gravitational search algorithm GSA, FA, HS and PSO). Enache et al. [25] proposed a wrapper feature selection approach combining two machine learning algorithms (i.e., Naïve Bayes (NB)and Support Vector Machines (SVM)) and BBA with Lévy flight (BBAL). BBAL was adopted for feature selection by presuming that the position of a bat is a d-dimensional variable where each feature in the dataset d has a coordinate; each coordinate of value 0 shows the loss of a feature whereas coordinate of value 1 refers to the selected subset of attributes. BBAL was tested on the NSL-KDD dataset and successfully reduced the number of features by almost 60% when combined with NB or SVM. The same processes and dataset (i.e. NSL-KDD) were applied in [26], which used two classifiers (C4.5 and SVM) to improve BBA. The results obtained were better compared with those in [25] because it reduced the number of features by almost 64% and improved the performances of the classifier. Enache and Sg\({\hat{a}}\)rciu [27] also used the same dataset (i.e. NSL-KDD) to test their proposed version of BBA, in which the SVM and BBA were merged to solve a practical problem of intrusion detection. The performance of this proposed version was better than that of each of the original BA and PSO.

By searching for the same target, the most informative features in a search space can be found. Nakamura et al. in [28] proposed a new nature-inspired feature selection technique based on bat behaviour. The authors relied on the same method used in [25], where the bat’s position along the corners of the search space are considered a binary coordinate representing a string of bits that encodes whether a feature will be selected or not. The experiments were divided into two stages: checking of the robustness of the proposed technique with other metaheuristic algorithms (e.g. PSO, FFA and GSA) and the use of five public datasets with the proposed technique to check its performance. The proposed technique achieved better results than other algorithms in both stages.

Fault diagnosis of analogue circuits has become an increasingly important task because of the rapid development of modern electronic circuits and systems. Increasing poor fault models, nonlinearity issues and component tolerances complicate analogue fault diagnosis. As such, fault diagnosis has become an active research field and many different methods to address the issue have been proposed [29,30,31].

Modified BBA (MBBA) with chaos and the Doppler effect in echoes was proposed by Zhao and He [32] to choose the optimal feature subset and optimize the classifier parameters for the fault diagnosis of analogue circuits with tolerance. The authors started by utilizing the self-adaptive compensation of bats for the Doppler effect in chaos to improve BBA, ultimately obtaining MBBA. Then, they employed several feature extraction methods to build a large feature set. Finally, they applied MBBA to select the optimal feature subset and simultaneously optimize the classifier parameters for the analogue fault diagnosis. MBBA was tested on three analogue circuit examples, and its performance was better than that of other methods in the literature in terms of the trade-off between fault diagnosis accuracy and total cost. The same authors (i.e. Zhao and He) proposed another method for analogue fault diagnosis by introducing nine well-known chaotic maps and then using these maps to construct a chaotic BBA (CBBA) [33]. Two aspects make the CBBA distinct: the use of chaotic maps to tune the BBA parameter and utilization of an elitist strategy to save all possible global best solutions. These aspects increased the global search mobility and effectiveness of the proposed algorithm for robust global optimization. Thus, CBBA offers reliable and better performance in finding optimum test point sets compared with other approaches.

Fault diagnosis with BBA was applied to the energy field by Kang et al. in [34]. The authors proposed a new approach for incipient low-speed rolling element bearing failures. This approach included fault feature extraction, BBA-based discriminative fault feature analysis and fault classification and required three steps: calculating wavelet-based fault features by applying a wavelet packet transform to an incoming acoustic emission signal, employing BBA to find the most discriminative fault features from the originally produced feature vector and selecting multiple low-speed rolling elements bearing defects through using one-against-all multiclass SVMs. The proposed approach was better than other dimensionality reduction approaches and yielded average classification accuracies of 94.9%, 95.8% and 98.4% at rotational speeds of 20, 80 and 140 revolutions per minute, respectively. Rajeswari et al. [35] focused on gear fault diagnosis through ensemble empirical mode decomposition (EEMD) to extract features and then reduced the dimensionality by hybridization between BBA and a machine learning algorithm (HBBA). The authors used standard classification metrics (e.g. JRip, DTNB, K, C4.5 and nearest neighbours) to evaluate the efficiency of the approach and conducted experiments on the acquired vibration signals for different gear states (e.g. frosting, normal, crack). The proposed approach was found to be effective and successful.

BBA presents important uses in many fields, such as in cellular phone networks, especially the antenna positioning problem (APP) [36]. Five BBA variants (i.e. nearest integer (NI), normalization (N), sigmoid function (SF), angle modulation (AM) and great value priority (GVP)) have been used to investigate the efficiency of principal mapping functions. The output of the related experiments showed that the efficiency of all proposed variants mainly depends on two factors: the complexity of the problem and its size. In addition, amongst other techniques, both NI-BBA and SF-BBA were the best mapping functions.

Another recent study proposed a novel BBA (NBBA) for solving 0–1 knapsack problems [37]. The algorithm was divided into two parts: exploration through the BBA and exploitation through a local search scheme (LSS). Thus, NBBA can deal with both exploration and exploitation searches (i.e. balance), and avoid entrapment in local optima. The small, medium and large-scale instances of 0–1 KP have been used to investigate the performance of NBBA, and results showed that the performance of NBBA is clearly superior to those of several other algorithms. Summary of bat algorithm variosins is given in Table 1.

Table 1 Summary of binary bat algorithm

4.2 Discrete Bat Algorithm

Hassan et al. proposed a technique that used BA to solve the community detection problem in social networks [39]. Depending on the quality of the function used, this technique could discover an optimised community structure successfully. The proposed technique used the locus-based adjacency-encoding scheme, which enables BA to reduce the community number (K) without prior knowledge about it. Experimental results proved that the BA accuracy is extremely high compared with other CD methods in small-sized networks only.

A new technique based applying discrete BBA to solve the travelling salesman problem (TSP) was introduced by Saji and Riffi [40]. This technique involved NP-hard combinatorial optimizations, and its performance was better than those of DPSO [41], GSA-ACS-PSOT [42] and DCS [43]. The proposed algorithm could also be extended to solve other NP-hard combinatorial optimization problems (e.g. the vehicle routing, quadratic assignment and scheduling problems).

Osaba et al. used BA to solve the problem of symmetric and asymmetric TSPs [44]. The proposed technique allows bats to move using different patterns based on the solution space in which they are located. The proposed technique was compared with GA, discrete FA and discrete imperialist competitive algorithm in three different tests, i.e. Student’s t-test, Holm’s test and Friedman’s test, and exhibited competitive results.

Riffi et al. proposed an improved discrete BA variant to solve the quadratic assignment problem in combinatorial optimization [45]. New modifications to the original version of BA were performed, and these focused on the representation of position, its updated equation and velocity. A modified uniform crossover and 2-exchange neighbourhood mechanism were incorporated with BA to enhance the search strategy and improve local search capability, respectively. The proposed technique was tested on a set of benchmark instances and found to have superior performance in terms of quality of solutions and computing time.

A new technique involving a complex-valued encoding method based on BA was introduced in [46] to solve both small-and large-scale 0–1 knapsack problems. This technique updated the real and imaginary parts separately, depending on the 2D characteristics of the complex number. The proposed technique could enhance convergence performance and efficiently diversify the bat population. It was also found to be valid and stable.

BA was used to solve the RNA secondary structure problem in bioinformatics via a technique design based on discrete binary algorithm [47]. A linearly dynamic pulse rate selection method was designed to avoid exponential increases in pulse rate and remain constant in most generations, leading to a fixed selection pressure [48]. In addition, The SF was used to define the binary value of each feature. The proposed technique performed better than Mflod [49] after application to 10 sequences from the comparative RNA website (Tables 2, 3, 4).

Table 2 Summary of discrete bat algorithm

4.3 Modification of bat algorithm

Since its introduction in 2010, BA has continued to attract the interest of investigators from diverse disciplines across the globe. This has resulted in various modifications and hybridizations to the basic BA. The modified and hybrid versions of BA are presented in this section and following section, respectively.

Shukla [54] modified BA with a heuristic rule called the smallest position value (SPV) to find acceptable solutions for the quadratic assignment problem. The algorithm starts by defining a sequence of n-sorted dimensions. Thereafter, the SPV rule is applied to permute the defined sequence. The bat with the minimum fitness value is selected and considered the best solution. The author also applied the hill-climbing method during BA evaluation. The proposed algorithm outperformed the PSO algorithm in all experimental cases [55]. Moreover, BA achieved optimality when the input was small numerical values, regardless of the size of the problem obtained.

To eliminate power loss in the electrical distribution system, Amon [56] provided a modified version of BA including two approaches: decreasing the problem search space and introduction of the SF. The performance of the proposed algorithm was evaluated on 33 bus distribution systems, and the results demonstrated a 33% reduction of real power loss

Khooban and Niknam [57] proposed a self-adaptive MBA (SAMBA) for multi-area load frequency control. The authors used SAMB and fuzzy logic (FL) to optimize the parameters of a proportional integral (PI) controller, and experimental results from a four-area interconnected power system showed the validity and effectiveness of the proposed controller; its superiority over proportional integral derivative (PID) and optimal fuzzy PID controllers was also demonstrated.

Yılmaz and Küçüksille [58] presented an enhancement to the exploration and exploitation search processes of BA. The proposed algorithm was tested on different kinds of numerical optimization functions and on three real-world constrained engineering design problems. The authors proposed three approaches in their study: the first approach balanced the search capabilities of BA during the evolution process, the second prevented premature convergence by dispersing the population in search space, and the third improved the local search ability by hybridizing BA with the invasive weed optimization algorithm. The proposed method yielded better fitness and cost values for numerical functions and produced feasible solutions with a minimum cost value for engineering problems.

Veysi et al. [59] designed a SAMBA fuzzy sliding-mode controller to adjust the end-effector position in the task space. The proposed algorithm optimised the parameters of the input membership function and the proposed controller. The linearization method was also applied to decrease the structural and nonstructural uncertainty bounds. The proposed control was evaluated using a two-degrees-of-freedom manipulator and revealed promising performance in overcoming uncertainties in the robot manipulator.

A framework based on cloud theory and \(\theta\)-MBA was introduced by Fard et al. [60] to account for the uncertainties associated with multi-objective distribution feeder reconfiguration (DFR). Various types of objective functions were used to validate the proposed algorithm, power losses, voltage deviation, system average interruption frequency index and system average interruption duration index. The proposed \(\theta\)-MBA provided more information regarding the uncertainties associated with the problem and offered better results compared with other optimization methods, such as GA, PSO and classical BA.

Bajaj et al. [61] proposed an enhanced discrete novel BA for the test case prioritization. BA is modified by using two stages. First, a fix-up mechanism is proposed to solve the discrete combinatorial problem by using the asexual reproduction algorithm in order to conducts the perturbation in the population. Second, bat algorithm is enhanced, where the bats hunting in various manners with quantum behavior by using search in the limited habitat with Doppler effect and Gaussian distribution. In order to reduce the reduction; they embedded the test case minimization procedure in the proposed algorithm. Their results showed that the proposed algorithm perform better than standard bat algorithm, novel bat algorithm, random search, whale optimization algorithm, genetic algorithm, and birds swarm algorithm.

Zhou et al. [62] proposed modification BA algorithm called the improved bat algorithm integrated into the ABC algorithm (IBA), this algorithm is developed based on artificial bee colony algorithm and standard bat algorithm. IBA used artificial bee colony algorithm to overcome the issue of poor local search ability of standard bat algorithm. They used MATLAB simulation in order to demonstrate the efficiency of IBA, and the results showed that the time required for the IBA to achieve the optimal solution is 50% lower than standard bat algorithm, and the quality of the optimal solution is 14% higher than the artificial bee colony algorithm.

Haider et al. [63] proposed an improved variation of standard BA named modern computerized bat algorithm (MCBA). They applying torus walk in MCBA in order to enhance the diversity and convergence. MCBA is evaluated by using fifteen well-known benchmark test problem. The results showed that the MCBA perform better than standard bat algorithm and standard particle swarm optimization algorithm.

Enache and Sgârciu [64] proposed an intrusion detection model that combines BA with SVM classifiers. BA was improved by adopting the concept of Lévy flights. The authors provided a preprocessing stage to select a subset of features with information gain. The NSL-KDD dataset was then used to evaluate the proposed algorithm. The results showed that the proposed algorithm is superior to the original BA, ABC or PSO methods.

Goyal and Patterh [65] adopted BA to evaluate the precision of the node localization problem in a wireless sensor network (WSN). Here, BA was modified by the bacterial foraging optimization algorithm (BFO) to improve its convergence and success rates. This BA exhibited better convergence and a higher success rate compared with classical BA.

Pérez et al. proposed fuzzy BA (FBA) for dynamic parameter adaptation [66]. The fuzzy system was added to BA to improve its performance and achieve greater effectiveness. Six benchmark optimization functions and a statistical test (z-test) were used to evaluate the algorithm, and a performance better than those of the original BA and GA was obtained.

Another MBA variant was introduced by Shan et al. [67] to enhance the local search operation and avoid the premature convergence of the original BA. In this variant, information of the search experience is used to generate a candidate solution. Moreover, the Lévy flight random walk and opposition-based learning (OBL) methods were combined with BA to improve the latter’s convergence capability. Sixteen numerical functions were used to validate the proposed algorithm, which outperformed other state-of-the-art algorithms in most of the experiment cases.

In another study, Jaddi et al. [68] used BA to optimize the weights and structures of artificial neural networks (ANNs). The original BA and two other modified versions of BA (MBatDNN and MeanBatDNN) were applied to enhance the local and global search capabilities of the algorithm. In addition, the authors included three chaotic maps to BA to produce a sequence map in place of a random sequence. The BA version with the best efficacy was identified [69]. Then, the Taguchi method was applied to tune the parameters. Statistical experiments on six classifications and two time-series benchmark datasets showed promising results for the proposed algorithm compared with those of other state-of-the-art methods. The proposed method was then applied to predict the future values of rainfall data with satisfactory results.

As a type of swarm intelligence, BA was used by Fister et al. [70] to prove that quaternions can be appropriate to represent swarm individuals. The new quaternion representation was implemented within the original BA to improve the exploration stage and avoid stagnation during search process. The numerical experiments demonstrated that MBA produces significant enhancements in solution quality compared with the original BA, and results were comparable with those of the ABC and DE algorithms.

A dynamic adaptation of BA parameters using an interval type-2 fuzzy system was introduced by Perez et al. [71]. The authors applied the fuzzy system concept to extract the optimal parameter values of BA, and a set of benchmark problems was used to evaluate the proposed BA variant. The simulation results showed the advanced performance for the proposed variant compared with that of BA with the type-2 fuzzy system and the original BA.

Miodragović and Bulatović [72] modified BA by incorporating the loop search in the zone of solutions. In this work, the Lévy flight step was used in every bat family seeking a better solution until the problem constraints were satisfied. From all bat families, only the best solution quality was considered. Favourable results for the proposed variant were achieved in five engineering examples (i.e. pressure vessel, welded beam, speed reducer, Belleville spring and multiple disc clutch brake).

Chaotic bat swarm optimisation (CBSO) was developed by Jordehi [73], and chaos-based strategies were combined with BA to minimise the possibility of getting stuck at local optima and mitigate the premature convergence problem. Various CBSO strategies were experimentally examined on different optimisation functions to determine the appropriate chaotic strategy for BA. Chaos-based BA (CBA) significantly outperformed the original BA, cuckoo search (CS) algorithm, big bang-big crunch algorithm (BBBC), GSA and GA.

Bansal and Sahoo [74] explored the efficiency of BA for full model selection (BFMS) for a given classification problem. BA was modified to incorporate binary-encoded bats, and the fitness values were calculated for all bats hierarchically. The proposed algorithm starts with a preprocessing technique to analyse the first two bits of the bat. Thereafter, the best features are extracted according to a predefined number of bits to create a training dataset. Experimental results on gene expression datasets showed that BFMS could choose diversified solutions in different iterations, thereby improving the exploration and exploitation capability of the algorithm.

Yang and Le proposed modified BA algorithm for solving passive power filter (PPF) design problems [75]. Modifications of the original BA were performed by updating the velocity-updating equation and keeping the nondominated solutions in an external archive. The simulation results showed improvements in voltage distortion, initial investment cost and power factor.

Tuba et al. [76] applied the CS and BA for training feed-forward neural networks. A total of three algorithms were tested in this work, namely, original BA, CS, and MBA. These algorithms were applied to find the optimal synaptic weights of the neural network. The authors tested numerous neural network architectures with various neuron numbers in the hidden layers, and resulted showed that the performance of CS + BA is similar to that of other state-of-the-art optimization algorithms; by contrast, the performance of MBA outperformed all other algorithms evaluated.

\(\theta\)-MBA for the nonconvex ED problem is another MBA proposed by Fard and Khosravi [77]. The authors added three submodification methods to BA to improve its search performance. The first submodification was performed by incorporating the Lévy flight idea to increase the population diversity. The second submodification applied a mutation operator from GA. In the last submodification, an adaptive formulation was proposed to dynamically update the value of the \(\alpha\) parameter to improve the convergence speed [78]. The proposed algorithm was tested on 15-unit, 40-unit and 100-unit IEEE test systems and exhibited high stability and good search performance.

Table 3 Summary of modified bat algorithm
Table 4 Summary of modified bat algorithm

4.4 Hybridized versions of bat algorithm

A hybrid algorithm is an algorithm that combines two or more other algorithms that solve the same problem [85]. This section shows the related works of BA hybridization with other popular methods and metaheuristic algorithms, such as s selection, mutation, and crossover of GA, and DE.

Gupta et al. [86] introduced a hybrid GA with BA to improve the global search efficiency of the basic version of BA. The NASA 63 dataset was used to validate the performance of the proposed hybrid version, and the mean magnitude of relative error was applied as an objective function. The proposed hybrid algorithm showed better results than the conventional BA.

Tuba and Bacanin [87] proposed an HBA with ABC for radio frequency identification network planning problem. The onlooker bee mechanism of the ABC algorithm is employed in the BA search procedure to improve the exploitation process, and the proposed hybrid algorithm was tested on standard bound-constrained benchmark functions and an illustrative RFID network planning problem. The proposed algorithm achieved better performance than five state-of-the-art algorithms and may potentially be used for solving RFID network planning problem.

Another HBA with ABC was introduced by Pan et al. [88]. In this study, the worst bat individuals of BA were replaced with better agents of ABC. Conversely, the worst agents of ABC were replaced with better bat individuals of BA. Four numerical benchmarks were used for validation, and the proposed hybrid algorithm demonstrated better performance in terms of convergence, accuracy and speed than the original forms of BA and ABC.

Shuffled BA was proposed by Yammani et al. [89] to achieve the optimal placement and sizing of multi-distributed generations with renewable bus available limits. The proposed algorithms aimed to utilize the exploitation property of SFLA and the exploration property of BA. The authors used 84-bus distribution system testing for validation, and the proposed algorithm demonstrated better performance compared with GA and basic BA.

Sadeghi et al. hybridised BA with PSO (hBA) as a local searcher to optimize a bi-objective inventory model of a three-echelon supply chain [90]. The researchers applied five criterion measurements to validate the performance of the algorithm, the total system cost, the system reliability, the best value of the scalarized objective, the standard deviation of the solutions obtained and the CPU time. Results showed that the proposed hBA demonstrated better performance than BA and GA.

Computer-aided process planning (CAAP) plays an important role in current manufacturing systems. Wang et al. proposed an HBA method to solve the process planning (PP) challenge [91]. For better adaptation of BA in the PP problem, some modifications to encoding, decoding and population initialization processes were done. The BA local search was also modified to enhance exploitation. The proposed hybrid method yielded a competitive solution with high complexity due to parameter setting.

An HBA method was proposed to solve the aircraft landing problem (ALP), which is an NP-hard problem. Xie et al. also presented an HBA to solve the multiple runway aircraft landing challenge [92, 93]. To adapt BA for solving ALP, HBA was introduced. HBA improves BA by guiding the population initialization process using a preconstructed landing time assignment schedule to accelerate the convergence rate. Additionally, HBA integrates many local search operations into the BA framework, including randomly selecting runways, and then assigns aircraft to the selected runways randomly. The proposed hybrid method yielded an efficient solution, so long as the number of aircrafts does not exceed 500, without sacrificing time complexity.

Ali proposed an accelerated BA (ABATA), which is a hybrid method, to solve the integer programming problem [94]. ABATA proposes a hybrid between BA and the Nelder-Mead method, wherein the latter is used as a local search method in the former to enhance the best solutions at each generation. Experiments demonstrated the applicability of ABATA in solving problems with acceptable time.

A hybrid method called variable neighbourhood BA (VNBA), which combines variable neighbourhood searching (VNS) with BA, was proposed by Wang et al. [95]. VBNA takes the advantages of the VNS method to improve BA by employing the former as a local search tool. Experiments were conducted on 16 standard benchmark functions, and results showed that VNBA is superior to the original BA.

He et al. proposed simulated annealing Gaussian BA (SAGBA), which is a hybrid method that combines simulated annealing and Gaussian perturbations with BA, to improve the search results of BA [96]. SAGBA preserved the main properties of BA, such as its simplicity, efficiency and ability to find global solutions while accelerating the global convergence rate. Experiments were conducted on 20 test benchmarks, and SAGBA outperformed the original BA and simulated annealing PSO methods in terms of convergence and accuracy.

For multi-objective task scheduling in a cloud computing context, Bezdan et al. [97] introduced a hybrid strategy that combines BA with ABC and quasi-reflection-based learning (QRBL) methodologies. The proposed approach combined a standard BA search with the exploitation strategy of the ABC algorithm during search iterations. The QRBL technique is also utilized to boost convergence rate and solution variety. According to the authors, the proposed approach outperforms state-of-the-art algorithms on benchmark numerical functions, parallel workload traces, and synthetic workload instances.

For optimizing connection weights in a Multi-Perceptron Network, Agrawal et al. [98] proposed another hybridizing approach combining BA with GWO. The proposed technique was created to take advantage of the GWO algorithm’s ability for exploration and the bat algorithm’s ability for exploitation. The proposed hybrid approach outperforms Bat, GWO, CS, WOA and when applied to ten medical datasets from UCI repository in terms of convergence time and accuracy.

Alsalibi et al. [99] combine a BA with a Dynamic Membrane-driven (DM) model for solving optimization problems. The DM is used to improve population diversity and prevent it from becoming entrapped in locally optimal solutions. Simulation results on the three benchmark functions CEC 2005, CEC 2011, and CEC 2017 show the effectiveness of the proposed DM-BA algorithm in terms of maintaining the diversity and exploitation capabilities in comparison to FA, PSO, gravitational search algorithm, GSO, FF-PSO, dynamic version-BA, BA, and DM-BA.

Yue and Zhang [100] improved the functionality of the grasshopper optimization algorithm by hybridizing with BA, named BGOA. The local BA search is used to maintain a balance between intensification and diversification capacities. On several numerical benchmark functions, the proposed BGOA method outperforms other algorithms including GA, BA, DA, GOA, and MFO.

A hybrid version of the bat algorithm that combines opposition-based learning (OBL) and WOA was proposed by Luo et al. [101]. The global search of the proposed algorithm uses WOA to more effectively explore the search space. Whereas the local search combines BA and Cauchy mutation to guarantee solution accuracy. The reported results demonstrated that the proposed method outperformed state-of-the-art algorithms in terms of accuracy and stability for benchmark functions and real-world applications.

Chen et al. [102] developed a hybridization approach of the BA and extremal optimization (EO) algorithm to enhance the local search capability of BA and increase the variety of solutions. Additionally, Boltzmann selection and a monitor mechanism are used to maintain an appropriate balance between exploitation and exploration abilities. According to experimental findings, the proposed method is more accurate and reliable than fifteen commonly used methods.

An HBA method along with BA was applied to solve the quality of service problem of Podili [103], and both methods were used to model the Web Service (WS) composition. Experiments were conducted on the QWS data set, and results showed that HBA produces efficient solutions in terms of service composition.

The available BA variants are not limited to the previously discussed variants. In this subsection, we extensively introduce other variants, such as chaotic Lévy flight, multiple-population cooperative, parameter less , Gaussian walk and oscillation element.

5 Applications of Bat Algorithm by Area of Discipline

This section aims to show the efficiency of BA to deal with various problems. In the following subsections, there are ten fields in which BA was applied are discussed in detail.

5.1 Benchmarking Optimization

Benchmark functions are sets of functions that have been utilized to test the performance of any optimization problem, such as continuous and discrete variables, unimodal and multimodal, and constrained and unconstrained problems [104]. The use of benchmark functions began on the original BA by Yang [15], followed by [105], and [106] to evaluate the BA performance. Thereafter, benchmark functions have been used with different BA variants (e.g. hybridization, modification, improvement and proposal of new versions) and different fields (e.g. engineering, medical and networks).

Ghanem and Jantan [107] proposed an enhancement of BA with the mutation operator to increase the diversity of the population, while improving the search efficiency and speeding up the convergence to the optimal value. The authors utilized a set of 24 test functions for global numerical optimization [108] to verify the performance of their proposed version.

Modifications, improvements and proposals of new BA versions have been tested through various sets of benchmark functions. For instance, Yılmaz and Küçüksille [58] used three different methods to enhance the local and global search characteristics of BA (i.e. evolved BA [EBA]). The authors employed standard test functions (50 unconstrained benchmark functions comprising unimodal and benchmark functions with various dimensions) to check the performance of EBA. Then, they used real-world problem (e.g. welded beam, spring and pressure vessel designs). Chen et al. [109] proposed a new MBA based on frequency called FSABA; this method removes the velocity parameter and adds the inertia the weight of location in BA. Thereafter, the random position and optimal Fourteen benchmark functions were used in the experiments. FSABA showed the advantages of convergence property and avoidance of entrapment in a local optimal solution.

Yilmaz and Kucuksille [110], Jordehi [73], Gandomi and Yang [111], Xue et al. [112], and Wang et al. [113] proposed different methods to improve BA and verified the performance of these methods through different benchmark functions. For instance, in [110], the authors applied three ways to improve BA (IBA): (i) increasing the local search ability (exploitation); (ii) increasing exploration capabilities at the beginning, followed by increasing exploitation capabilities at the end; and (iii) minimising the lack of exploration capability of BA. The IBA produced better performance than BA in 25 of 26 test implementations of 10 different test functions. In [73] (BSO) and [111] (CBA), CBA was used to improve the search mechanism of BA. By introducing different CBA variants, bats were increasingly diversified and the premature convergence problem was mitigated. The results illustrated that BSO significantly outperforms conventional BSO, CSA, BBBC, GSA and GA. While the improvement in BA in [112], and [113] were different from the other, the authors utilized parameter setting for BA to achieve the optimal settings. The simulation results showed that the parameter settings achieved the best performance on CEC-2013 competition in a real-parameter optimization test.

Benchmark functions have been used to evaluate the novelty versions of BA. Thus, this paragraph summarizes the previously related works: A novel BA based on chaos for optimization tasks [114], a novel BA with habitat selection and doppler effect in echoes for optimization [115], micro-BA for high-dimensional optimization problems [116], a new BA augmentation using FL for dynamical parameter adaptation [117], a novel quantum-behaved BA with mean best position directed for numerical optimization [118] and a novel complex-valued BA [118]. The benchmark function categories of these works are the following: unimodal, multimodal, high-dimensional, low-dimensional, shifted, rotated, separable, nonseparable and composite. The number of benchmark functions was used in [114] equal 5, [117] equal 20, [119] equal 5, [117] equal 24 and [118] equal 14.

5.2 Clustering and Mining

Clustering and mining are an unsupervised learning which finds that the “natural” grouping of instances is given with unlabeled data. Hence, clustering is a process of grouping physical or abstract objects into classes of similar objects.

In [120] a unified heuristic bat algorithm (UHBA) is presented to improve elections in neighboring nodes in order to address Low Energy Adaptive Clustering Hierarchy (LEACH) limitations in cluster head nodes placement. The proposed method ensures that both local and global search can be flexibly transformed during the election of cluster nodes. he findings show that the proposed method performs better when compared to a number of other variations of BA.

A fuzzy modification of BA was introduced to solve the monitoring issues for the company workplaces with ergonomic risks [121]. Many data are extracted for this purpose, information for ergonomic-related health risks and data gathered by a checklist from workplaces. A total of three clusters of workplaces with high, moderate and low ergonomic risks are determined. After using these clusters, workplaces with high ergonomic risk level and moderate level are monitored, and a suitable solution was proposed. The experimental results show the validity of fuzzy bat clustering algorithm.

Tuba et al. claims that the quality of the construction can be enhanced by suitably selecting learning parameters [122]. The optimization process can automatically be achieved efficiently via stochastic metaheuristics. Consequently, MBA was proposed to support the optimization of vector machine parameter. The MBA does not lead to over fitting; thus, it is more reliable for SVM parameter optimization. The proposed technique was compared with grid search and showed accurate classifiers when using benchmark data sets from UCI machine learning repository.

To solve the association rule mining (ARM) problem, researchers presented a new technique in [123] to maximise the fitness function to generate the best rules from both specific minimum support and minimum confidence. The proposed technique was compared with FP-growth algorithm and showed better results in terms of memory usage and quality of generated rules and time when using several generic datasets with various number of items and transactions [124]. The drawback of the proposed technique is the lack of communication among bats which could generate redundancies in the positions while searching a new one.

The texture of remote image classification is difficult to be recognized and described by computer vision. SVM is used to identify texture image because it avoids local optimum. Considering that the traditional tuning method is inefficient, a novel metaheuristic-BA was proposed to acquire the optimal parameters for SVM [125]. The proposed technique can accurately recognize various texture images when applied on actual remote-sensing texture images manifested.

The clustering technique based on the combination of BA and Lévy flight algorithm was proposed by Jensi and Jiji [126]. Lévy flight is used to randomly explore the search space. Furthermore, the proposed technique can be extended to be used in text document clustering. This technique can escape from local optima and effectively explore the search space.

The polynomial exact algorithms, which are proposed for ARM problem, are unabated when using for large databases and suffering from lack of communication among bats [127]. Consequently, hybrid approaches combining both merges of ring strategy with master-slave plan [128] were proposed to overcome the previous problem. A total of nine datasets were used to evaluate the proposed technique, which shows competitive results in terms of time, rule quality and quality in-face-of multi-objective optimization methods.

To solve the issue of retrieval efficiency for large-scale DB, which is considered a complex problem, researchers used a new modeling of query expansion with BA to improve computational cost [129]. The new technique is used for retrieving both the best expansion keywords and the best relevant documents at the same time.

BA and fuzzy classifier are combined to generate optimized rules and membership function efficiently [130]. The main functions of the proposed technique are as follows: (a) to generate and select the optimization rules by using BA, (b) to simplify the design of membership function and (c) to formulate a fitness function based on occurrence frequency in the rules of learning data. The proposed algorithm is evaluated using two methods: quantitative and qualitative analyzes. This technique is highly accurate when used for lung cancer data and Indian liver data.

Using traditional multi-objective algorithms to generate rules is not efficiently analyzed and explored in any process, and BA is better than GA and binary particle swarm optimization (BPSO). As a result, new technique using the application of multi-objective BA (MOBA) to ARM was proposed [131]. Furthermore, a new method was proposed to discover interesting association rules without bias (either favoring or excluding any measure). The proposed technique was the most feasible and effective among single-objective BPSO, a priori algorithm and BBA.

The ecosystem is increasingly at risk because of increased factories and their resulting waste [132]. Tharwat et al. in [133] discussed the toxic effects of chemical substances, especially on water wealth for a kind of fish and their embryos called zebrafish. The authors proposed a fully automated system to classify zebrafish embryos into alive or dead due to exposure to toxic compounds. This work involves three steps. Firstly, the Fractal Texture Analysis (SFTA) technique was employed to extract some features from the embryos’ images. Secondly, BA was utilized to select the most discriminative features [134]. Thirdly, the AdaBoost classifier was used to classify alive and coagulant embryos. The experimental results showed that the selected features through BA increased the accuracy and decreased CPU time compared with using all the features.

5.3 Power and Energy System

Power and energy system research focuses on all aspects of electrical energy, grid intelligence, renewable resources, innovation in energy generation and distribution, electric transportation and efficient devices and buildings.

Kotteeswaran and Sivakumar [135] applied BA to retune the parameters of pressure loop PI controller of coal gasifier. The Lévy flight-guided BA algorithm performs efficiently through achieving the optimum solution for the controller parameters. Moreover, the proposed controller delivers better response, while satisfying all constraints at 0%, 50% and 100% load conditions.

To solve automatic generation control (AGC) problems, Kouba et al. [136] designed a controller by using BA. BA was applied to minimize the error function integral time of square error and to identify the optimal values of the proportional integral derivation (PID) controller parameters. The simulation results for the same interconnected power system showed that the proposed algorithm performed superiorly compared with GA, PSO, BFO, ABC and Ziegler-Nichols approaches.

Optimizing the scaling factors of FL-based power system stabilizer (FPSS) for multimachine power system is proposed in [137] and [138]. Authors used BA to develop small signal stability of the power system stabilizer (PSS). The proposed approach was evaluated on the standard IEEE 10-machine 39-bus test power system model in a decentralized manner, and it was found to be better than the FPSS.

Abatari et al. [139] applied BA to define the optimal settings of control variables of optimal power flow (OPF) problem. The proposed method was validated on the IEEE 9-, 14-, 30- and 57-bus test systems. Results showed that such algorithm is effective and has high quality solution compared with PSO, HS and CS algorithms for the OPF optimisation problem.

An optimization to PD-PID cascade controller for AGC was studied in [140]. Authors compared the performance of the proposed controller with classical controllers (e.g. PI and PID controllers). Simulation results revealed that the proposed controller offers considerably better response than the classical controllers. Moreover, result analysis revealed that BA can optimize the controller parameters at nominal loading condition, size and position of disturbance, and system parameter.

BA was used to optimize the OPF problem by Trivedi et al. [141]. Three problems were considered in this study: fuel cost reduction, voltage deviation minimization and voltage stability improvement. Simulation results over a standard IEEE 30-bus test system showed that the proposed algorithm is better than FPA and PSO.

Sambariya and Prasad [138] designed a PID controller to improve the small signal stability of nonlinear power system on a wide range of operating conditions. The proposed model was validated using single-machine infinite-bus, 2-area 4-machine 10-bus and IEEE New England 10-machine 39-bus power systems [142]. A total of eight plan conditions for each tested system were demonstrated for testing. The simulation results showed that the proposed model is the most efficient among the previously proposed counter controllers in reducing the overshoot and settling time.

Another PID controller using BA was designed for an automatic voltage regulator power system in [143]. The simulation results showed that the proposed algorithm outperformed other algorithms, such as current search, GA and tabu search in terms of integral time weighted error, integral absolute error and integral of squared error.

Chaib et al. [144] used BA to hybridize fractional order PID controller with PSS to come up with a robust optimal stabilizer (FOPID-PSS) system. BA was used for tuning the system parameters. Different experimental cases were performed, and according to the results, this proposed algorithm improved the stability of power system better than the FA-based FOPID-PSS.

Abdelghani et al. [145] designed a power system controller combining the fractional order PID and sliding mode-based PSS. The proposed controller used BA for tuning the optimal parameters. The efficiency of the proposed controller was evaluated on a single-machine infinite bus (SMIB) power system under different cases and operations. Results showed that the proposed controller exhibited superior robust performance for the proposed controller compared with conventional PSS (CPSS) in terms of damping of oscillations.

BA for reactive power compensation in radial distribution networks was proposed by Neagu et al. [146]. The authors employed BA to obtain the optimal place and size of a number of capacitors in the network buses. The proposed approach was validated on a real 20-bus electricity distribution network that supplied urban residential users, and consequently, the power losses for the two studied analysis periods significantly reduced.

To minimize real power losses in a power system, Rao and Kumar [147] employed BA to better utilise the existing power system. The proposed algorithm was evaluated on a 5-bus test system and modified IEEE 30-bus system. The observed results showed an increase in the active power flow and decrease in the active power lose. Compared with GA, the proposed system is robust and easy to use.

Yuvaraj et al. [148] used BA for optimal placement and sizing of distribution static compensator (DSTATCOM) in a radial distribution network. In their work, the voltage stability index was used to find the optimal installation placement of DSTATCOM, and BA was used to define the size of DSTATCOM. The proposed system can define the suitable DSTATCOM size for distribution network operators according to the load changes [149]. According to the simulation results, the total power loss decreased when the proposed system was applied on two standard buses, namely, IEEE 33-bus and 69-bus radial distribution systems.

Yuniahastuti et al. [150] used BA for tuning the controller capacitive energy storage (CES) and PID. The simulation results demonstrate that the application of BA-CES-PID can increase settling time and correct the overshoot of the system frequency response.

To tune the parameters of PI controllers, Sathya and Ansari [151] proposed a BA-based dual mode PI controller to the multi-area interconnected thermal power system. The proposed design utilizes the features advantages of the inherent PI controller and dual search mode from BA. BA was used to optimize the proportional plus integral controller gains through finding the optimum values of controller parameters. The proposed modal was applied on two area interconnected reheat thermal power system. Results reveal the proposed controller provides better transient with steady state of response and the system parameters are less sensitive to change. Also, BA was applied to tune the PI controllers for load frequency controller (LFC) design by Abd-Elazim and Ali [152]. The experiment results on a two nonlinear area power system show the advantage of BA over simulated annealing algorithm in optimizing the parameters of PI controller through different indices.

Ganesana et al. [153] applied BA to the select harmonic elimination of cascaded multilevel inverter. A total of seven levels of cascaded multilevel inverter were used to test the proposed method. This method is better in terms of total harmonic distortion (THD) in the output voltage than bee algorithm (BA) and GA.

Online adaptive neuro-fuzzy inference system (ANFIS)-based speed control of brushless DC motor using BA was introduced by Premkumara and Manikandan [154]. BA was used to tune the learning parameter of the online ANFIS controller. Moreover, GA and PSO algorithms were used in optimizing the learning parameter of the system. Superior performance was observed in the proposed controller compared with other system controllers in terms of minimum fitness value, less average computation time, improved time domain specifications and improved performance indices. Furthermore, authors successfully implemented a real code of the proposed controller and verified it using DSP processor.

Another allocation optimization problem using BA was proposed by Sudabattula and Kowsalya [155]. In this research, BA was applied to minimize power loss through the optimal allocation of solar-based DGs in the distribution system. The proposed method can significantly minimize the power losses when applied on IEEE 33-bus test system, which was used to validate the proposed method.

Optimal placement and sizing of distributed energy resources (DERs) using BA were introduced by Yammani et al. [156] and [89]. The proposed model aims to minimize power loss, improve voltage profile and enhance the capacity of line flow. The experimental simulation provides satisfactory results when applied on 37-bus and 38-bus distribution systems with different load models. Later, Yammani et al. in [157] and [158] proposed a hybrid BA (HBA) version to solve the same problem. The proposed method combines the properties of shuffled frog leap algorithm (SFLA) and BA, such that the exploitation and exploration behaviours of SFLA and BA are used, respectively. Experimental results showed that the proposed HBA achieved good performance compared with the existing strategies in terms of multi-objectives considered.

Moreover, Behera et al. [159] used BA in their proposed model to optimal placement and sizing of DGs in radial distribution system (RDS). The proposed model was evaluated on IEEE 69-bus RDS with constant power load per hour and variation of loads on 24-hour basis. Efficient results were observed for the proposed method compared with GA and PSO for real power loss minimization problem.

BA was also used in designing PI controller for maximum power point tracking (MPPT) of PV system supplying switched reluctance motor (SRM) by Oshaba et al. [160]. The proposed system consists of a PV generator that feeds an SRM through buck-boost DC/DC converter. BA was employed to find the optimal parameters of PI controller by minimizing the time-domain objective function. Simulation results showed that the designed system is robust and has a superb performance compared with PSO for the change in load torque, radiation and temperature.

Coelho and Askarzadeh [161] introduced an enhanced differential BA (DBA) for reducing electrical power consumption of air conditioning systems. BA was applied to properly manage and optimize the consumption of electrical energy. A daily optimal chiller loading is proposed in which a number of chillers should be used for 24-hour cooling load profile, considering minimizing the total power consumption of the chillers for 24 hours. The experimental results demonstrated that the DBA produces promising results compared with original BA, FA, HS, chicken swarm optimization, DE and exponential natural evolution strategy.

An optimal design of model predictive load frequency control using BA was afforded in [162]. BA was used to find the best controller parameters, considering minimizing a candidate time domain-based objective function. Compared with the basic PI and the PI-GA controllers, the proposed system performed better on various operating conditions and system parameter uncertainties.

Gonzalez et al. [163] provided a coordinated design of fuzzy PSS and STATCOM PODC to maximize the damping of power system oscillations by using BA. BA was employed to observe the optimal parameters of the fuzzy supplementary controllers. The experimental evaluation on two-area power system under various operating conditions and disturbances demonstrated satisfactory results compared with other coordinated and uncoordinated design methods.

Rahimi et al. [164] proposed a self-adaptive learning BA to solve offline and online parameter estimation problems for chaotic system in permanent magnet synchronous motor. The proposed process enhances the positions of each bat in the population through selecting a suitable mutation method from two defined mutation methods according to the progress and experience of bats from preceding iteration. Simulation results showed that the proposed algorithm can recognize the system parameters in online and offline modes and has robust performance despite the presence of noise.

Murali et al. [165] employed BA for evaluating the spot pricing in electricity market with inelastic load. Authors offered a DC optimal power flow method in single-auction model, considering the minimization of the fuel cost using BA. Results on different test systems showed a reliable convergence with minimized fuel cost on the improved system of Social Welfare and the ability to support the system operator to determine the accurate economic signals during transmission system congestion.

Oshaba et al. [166] suggested a new MPPT control design of PV system-supplied SRM using BA. The proposed controller has PV generator that feeds a SRM through buck boost DC/DC converter. The authors employed BA in their proposed controller to observe the optimal parameters of PI. The simulation results showed better performance for the developed controller compared with that of PSO for various disturbances, including load torque, radiation and temperature.

Recently, Gu et al. [167] launched a BA application that is energy aware called Energy Aware, Time, and Throughput Optimization heuristic (EATTO). T The basic objective of EATTO is to maximize productivity while reducing power consumption and runtime of computation-intensive processes, all without sacrificing the quality of service. The findings demonstrated that EATTO can reliably offer a better overall solution.

5.4 Economic Load Dispatch Problems

BA helps researchers analyze and predict the market to reach optimal gains. BA has been used in many economic aspects, such as predicting stock price, electricity price forecasting, fossil-fuelled power plant, optimizing fuel consumption and load/dispatch problems.

Another fuel optimization application using BA was proposed by Nguyen and Ho [168] in which BA was used for solving Economic Emission Load Dispatch (EELD) challenges. BA was used to set the value of control variables, as well as handling multi-objective optimization. Results showed that BA is an efficient method in solving EELD problems.

Gherbi et al. [169] presented another employment of BA in the ED challenge. A single equivalent objective function was used to solve the problem. BA showed an efficient result compared with other methods in the field. Another use of BA to solve ELD challenge was presented by Jose [170]. BA was applied to wind power optimization to reduce the cost without affecting operation constraints. In addition, the proposed method considers the instability in the amount of the generated power via the wind. The proposed method provides better solution compared with PSO method. Biswal et al. [171] presented another usage of BA in solving ELD challenge by optimizing the cost of running thermal power plant. The proposed method produced high-quality solutions compared with PSO and IWD methods. Results showed that BA can reach near global optimal results with less computational cost. Niknam et al. [172] proposed to multi-objective SALBA (self-adaptive learning bat-inspired algorithm) to solve the reserved constrained dynamic environmental/ED challenge. BA was used to produce Pareto-optimal solutions. Chaos-based strategy was applied to build the first population, whereas tournament-crowded selection approach was used to select the population [173].

CBA was applied to solve ED challenge by Adarsh et al. [174]. CBA, which is a variant of BA, is used to increase the performance. Results showed that adapting CBA increases the effectiveness of the method, but it needs some adjustments.

Additionally, Apornak et al. [175] introduced BA to optimize the expense of human resources (HR) at an urgent care department. The process of cost estimation and the strategy for HR optimization in an urgent care department are the main subjects of the study. The authors made a novel addition by using a flexible method built on BA, which can distinguish between and forecast the necessary employments. Therefore, during the optimization method, salary cost, penalties for losses that may result from improper performance, and hospital achievement are all examined as series of interconnected objective functions. The amount of personnel with the necessary skills to maximize all objective functions could be shown by the results. The Bu-Ali hospital’s application of the suggested strategy demonstrates a predicted reduction in emergency human resources expenses of more than 24.3%.

Latif and Palensky [83] proposed two modifications to the original BA. The first modification performed by adding bad experience component to enhance the exploration capability of the algorithm. The second modification was adding a nonlinear inertia weight coefficient to the velocity component in the velocity update equation to control the transition between the global and local exploitation. The proposed MBA was tested for solving the economic load dispatch problem and the results showed an advantage to MBA compared to BA, PSO and real coded genetic methods.

Naderi and Khamehchi [176] studied the performance of BA, GA, and PSO optimization algorithms for optimal determination of six production well locations. Authors compared the algorithms performance in terms of number of function evaluations needed by the algorithms to reach convergence. BA showed superior performance compared to other methods, as it achieves better computational efficiency and provides better improvement of net present value.

5.5 Engineering Design

Engineering design process is a set of steps that engineers follow to achieve a solution to a problem, and often, the solution includes designing a product (e.g. a computer code or a machine) that meets certain criteria and/or accomplishes a particular task.

Khatir et al. proposed new technique called damage detection and localization [177]. The new technique is based on BA and PSO algorithm. Moreover, they used the finite element method to apply damage at specific elements of specific beams. Damage identification is formulated as an optimization problem based on the changes in natural frequencies and modal scale factor [178]. The new technique designed a new method that can accurately detect single and multiple damage positions, as well as the rate of damage in structural element after the first iteration. The proposed technique was compared with PSO algorithm and found that it is superior in terms of damage detection accuracy.

A new method was presented in [179] for polynomial Bezier surface parameterizations problem. The authors claimed that the problem is an extremely critical step in surface reconstruction in reserved engineering fields such as computer-aided manufacturing, computer-aided design, computer graphics, virtual reality, computer animation and medical imaging. Considering that the traditional methods failed to solve it, a new technique based on BA to solve the hard continuous optimization problems was proposed. According to the experimental results, the proposed technique is effective even for clouds of strong irregular patterns.

A newly improved version of BA was proposed in [180] to solve UCAV problems. This technique exhibited better results in terms of accuracy, feasibility and success in locating multiple solutions.

Solving cell information problem using numerical methods, especially for the large-sized problem, is extremely expensive. Hence, Parika et al. proposed a new technique that can minimize cell part movements with a consideration of routing flexibility, and they determined the suitable setting of BA parameters that can affect the quality of the solution [181]. The designing of cell formation programme is coded using modular style. For evaluation purposes, 10 datasets were used in which the number of machines in each cell is either equal or unequal. Statistical analysis proved that the population size and the number of iteration have an impact on the quality of the obtained solution.

Bio-inspired metaheuristic algorithm (Bat) was used to optimize reinforced concrete (RC) columns to minimize the cost. BA using local and global optimization has changeable probability. The optimization process considers both security measures and slenderness according to the design regulation called ACI 318. The slenderness is considered by using a magnified design of flexural moment, which is factored by a value defined according the axial load and the buckling load of columns. The proposed technique is applied for various numerical cases [182]. This technique has better performance than HS algorithm.

Hasanccebi and Carbas proposed a new technique based on BA for steel frame discrete sizing optimization problem [183]. The proposed technique selects steel sections from available section tables, such that design constraints that are described according to the provisions of AISC-ASD are satisfied. This technique could solve the drawbacks of category in discrete structural optimization because a great deal of disorder that is located in the list of discrete sections made the process of search extremely complex for optimization algorithms. The validity of the proposed technique is examined using three real-sized large steel frames under real load and design considerations. The obtained results proved the efficiency of BA compared with other metaheuristic algorithms in structural optimization.

Concurrent designing of tolerance is the major concern in process and product development because of the relationship among functionality, product cost and quality. Kumar et al. used BA to propose a new technique that can optimize the tolerance on the basis of the current objective to minimize the manufacturing cost and present worth of expected quality loss [184]. Three mechanical assemblies (e.g. gear box assembly, bevel gear assembly and suction union assembly) are considered to evaluate the proposed technique. This technique shows better performance in terms of initial generations for concurrent tolerance problems.

Mallick et al. proposed a technique for a smart post-buckled beam actuator (PBA) [185]. A new material based on piezoceramic stack actuator was used as a prime-mover to drive the buckled beam actuator. Piezoceramic actuators have small displacement, high force, high bandwidth and high energy density. A new design of motion amplification device (a linear-to-linear motion) was proposed to circumvent the small displacement handicap of piezoceramic stack actuators. Mathieu-Hill equation and BA are used to analyze the PBA and carry a formal optimization, respectively. The optimized PBA design has large end rotations and less weight, and it is very useful for developing different aerospace and mechanical devices (i.e. aerial vehicles, robotics system and helicopter trailing edge flaps). Experimental results showed the potential of BA in proposing better designs for smart systems and structures.

To design the short triangular-spectrum fibre Bragg gratings (TS-FBGs), authors introduced a new technique [186] based on metaheuristic BA. In addition, a new modification called adaptive position update (APU) was introduced to optimize the modulation of the index within predefined range. APU improved the performance of search and the accuracy in fibre Bragg grating (FBG) design application.

Wang et al. claimed that the 3D path planning for UCAVs focuses on optimizing the route of flight with various kinds of constraints under complicated environments [187]. DE combined with BA was proposed to optimize the UCAV. Here, DE is used to choose the most proper individual in the bat population, and a safe path is obtained by connecting the chosen nodes by using the proposed IBA. Furthermore, B-spilling curves are used to make the path smoother and more feasible for UCAV. The proposed technique (IBA) was compared with the basic BA on a 3-D UCAV problem. Experimental results proved that the proposed technique can efficiently solve UCAV problem.

BA was also used to decrease the large order system. The numerator and denominator coefficients are optimized based on integral square error minimization, which is considered as an objective function pertaining to a unit-step as input. The proposed technique was validated by using three test systems [188] and found to be better than Routh-Pade approximation in terms of minimum error.

To enhance power factor and suppress the critical harmonics of PPFs, Yang and Le proposed an optimization technique based on BA [75]. The properties of these passive filters were introduced (i.e. single-tuned, second-order, third-order and C-type damped filters). In addition, for solving PPF design problem, many constraints and objective functions are proposed [189]. Furthermore, a new technique based on the Pareto front and BA was developed to solve PPF problem. The experimental results showed that the voltage distortion, harmonic current, power factor and initial investment cost can be optimized.

Bencharef and Boubertakh proposed a new technique for the optimal design of proportional derivative (PD) controller to stabilize Quadrotor [190]. A decentralized control structure was adopted to stabilize the angels (pith, yaw and roll). A total of four PD controllers were used to stabilize the Quadrotor attitude and height, and their parameters were tuned at the same time by BA. The proposed technique was validated using an objective function (SE).

Singh et al. argued that the PID produces the output of the system by using three parameters [191]. The performance of the system was measured by rise time, steady state error, setting time and overshoot. Consequently, they used BA to tune the controller to the required response, leading to the reduction of cost and the time of tuning.

BA was used in [192] to design fuzzy PD integral controller and fuzzy PD controller for the speed control of brushless direct current drive. The optimization of the previous controllers was designed using nature optimization algorithms such as BA, CSA and PSO. The specifications of time domains such as performance indices, steady state error, recovery time, settling time, undershoot and overshoot indices (e.g. integral of squared error, integral of time multiplied absolute error, integral of absolute error and root mean squared error), were determined and compared for the previous controllers by using various conditions (i.e. load disturbance conditions and varying set speed). Experimental result shows that the BA-optimized fuzzy PD controller is better than the other controllers.

A new technique was introduced as an extension to BA based on Pareto nondominance and elitism [193]. A total of 30 multi-objective test problems were used to examine the proposed technique. The newly developed algorithm is applied to a real-world optimization problem of a phthalic anhydride reactor. The proposed technique was validated by using many metrics, such as generational distance, hypervolume ratio and spacing. The results showed faster convergence and industrial optimization compared with real coded elitist nondominated sorting GA and multi-objective nondominated sorting PSO.

Moraveji and Naderi claims that the rate of penetration (ROP) has an important role in minimizing the cost of drilling [194]. Many factors were used to define the drilling rate penetration. Such factors include bit hydraulics, wellbore inclination, type of bit, bit rotation speed, weight on bit, mud rheology and formation properties. Response surface methodology was also used to enhance the mathematical relation among the rates of the penetration and six factors (10-min to 10-s gel strength ratio (10 MGS/10 SGS), including yield point to plastic viscosity ratio (Yp/PV), bit jet impact force (IF), bit rotation speed (N), weight on bit (WOB) and well depth (D)). Next, they used BA to maximize drilling ROP. Experimental results proved that the derived statistical model provides an effective tool for ROP estimation.

The layout optimization of steel frames with steel plate walls (SPWs) is a lateral load-resisting system, especially against earthquake excitation. Orthotropic membrane model was used to design the steel plate shear wall behaviour, and BA was used as present study optimizer [195]. The design variables of the optimization problem consists of the placement of SPW in the frame, the web plate thicknesses of SPWs, columns of the frame and cross-sections of beams. BA implemented appropriate selection from the AISC wide-flange (W) shapes list. The experimental results showed the efficiency of the proposed technique for optimization of steel frames with SPWs.

5.6 Image Processing

Applying BA to image processing applications is growing as BA proved its applicability to produce fast and high-quality results. BA has been applied to many image processing applications, including estimating body posing, image thresholding, image compression, texture image classification and fingerprint images.

To overcome the challenge of estimating body posing from a video, Akhtar et al. presented a method based on BA [196]. The proposed method used BA to detect the pose of human body from a video. BA parameters were adjusted to fit in the application where the positions and velocities change to match those of PSO algorithm. Experiments showed that the human body tracking obtained by BA is better in both evaluation terms (i.e. quality and quantity) as compared with particle filter (PF), annealed particle filter (APF) and PSO. Another use of BA in tracking applications was introduced by Gao et al. [197]. The proposed method applied BA to solve the visual tracking problem by finding the targets using several bats. The proposed method outperforms other methods, such as PSO, PF and meanshift in terms of accuracy and time performances.

BA was applied to classify satellite images. Senthilnath [198] proposed a new clustering method based on BA to classify crop type from multi-spectral satellite image. The proposed algorithm came as a response to crop-type classification challenges. BA was also applied to obtain the optimal cluster center. Experiments showed that BA is an applicable method to crop-type classification challenges.

BA has been applied to enhance image segmentation process by providing better image thresholding. Satapathy et al. [199] in which BA was applied to segment standard greyscale images. The proposed method presents a solution for bi-level and multilevel image thresholding challenge by using a combination of Otsu’s between-class variance and CBA. The Otsu schema was applied to evaluate the thresholds, whereas CBA was applied to maintain a sequential walk search strategy by using Ikeda map. Experiments were executed on 512 \(\times\) 512 image dataset, and the proposed method outperformed many research methods, such as PSO, BFO, LFA and LBA.

Alihodzic and Tuba [200] applied BA to image thresholding. They proposed an IBA to solve the multilevel image thresholding challenge. The proposed IBA came as a response to its weakness of trapping in local optima. The proposed method suggests an update to the equation of new solutions in BA by replacing it with hybrid equation, including elements from DE. Another update to the original BA was demonstrated by embracing limit parameters as the one used in ABC method. Experiments showed that the proposed algorithm outperforms others as compared with several methods in the research field. It provides higher solution quality than other methods, as well as remarkably higher convergence speed (doubling the speed of the fastest one). Ye et al. [201] proposed another solution for image thresholding by applying BA to increase the fuzzy entropy. Experiments demonstrated that BA is more suitable and applicable to optimize fuzzy entropy than GA, PSO, ACO and ABC algorithms. The proposed method outperforms other methods because of its higher fitness and signal-to-noise ratio (PSNR) values.

Karri and Jena [202] proposed an algorithm called BA-Linde-Buzo-Grey (BA-LBG), which applies BA to image compression research field. BA-LBG applies BA to Linde-Buzo-Grey (LBG) method to obtain better codebook and effective vector quantization with less time. The proposed algorithm applies BA to optimize the early solutions of LBG. Experiments showed that BA-LBG algorithm has high peak PSNR as compared with other methods in the field.

BA has also been used for solving the texture image classification challenge. Ye et al. [125] proposed a hybrid between BA and SVM method to identify and classify texture images. BA was applied to set the parameters of SVM to reach the optimal setting. Experiments exhibited the robustness of the proposed method and proved that BA can contribute in texture image classification problem.

Dhal et al. [203] analyzed the performance of BA and CSA to enhance grey level images. A modification that applied to both methods is proposed to enhance the images, as well as to conduct a comparison between the two algorithms. BA and CSA are enhanced by chaotic sequence and Lévy flight. Chaotic Lévy flight is used to control intensification property of BA, while it is also used to control intensification and diversification properties of CSA. Experiments showed that chaotic CSA results are superior to those of PSO. Chaotic Lévy flight BA outperformed both methods, thereby indicating that BA could have a great impact in solving problems in image processing research.

Another application of image processing that applies BA was introduced by Bouaziz et al. [204]. They applied BA to enhance fingerprint images particularly for contrast enhancement of grey-scale fingerprint images. BA was used to set the optimal grey level map for the next solution, while the objective function of BA was adopted to find the highest image quality. Experiments were conducted using datasets obtained from FVC2000 database. Results showed the effectiveness and applicability of the proposed method as compared with the latest methods in the field. Another image contrast enhancement method that applies BA was proposed by Tuba et al. [205]; here, BA was applied to optimize weighting parameters. Experiments showed the superiority of the proposed method over other methods in the field.

Recently, a new BA image processing application based on the Stationary Wavelet Transform (SWT) was introduced in [206]. The suggested method integrates the Speed-Up Robust Feature (SURF) and BA. The suggested approach makes use of BA to increase the host image’s watermark’s intensity. In comparison to certain current strategies, the experimental results of the aforementioned system show greater performance in several metrics.

5.7 Medical Applications

Researchers have interest in solving medical challenges by using computers at early stages. Hence, an interdisciplinary research field, called bioinformatics, was introduced in the 1970s. Bioinformatics includes many research fields, such as sequence alignment [207,208,209,210,211,212], molecular 3D comparison [213], molecular structure prediction [214] and others. BA is widely used in solving medical challenges due to its simplicity and efficiency. In this section, we discuss the methods that apply BA to solve medical issues such as diagnosing diabetes mellitus, pathological brain detection, radiation therapy treatment, X-ray images, medical image watermarking and detecting heart arrhythmia.

BA was applied to pathological brain detection system by Lu et al. [215]. BA was used to optimize extreme learning machine producing a method called BA-ELM, which guides the separation of pathological brains from healthy ones. Results showed that the proposed method achieved over 99% sensitivity, 93.89% specificity and 98.33% accuracy, strongly indicating the robustness and accuracy of the proposed method.

Another application of BA was presented by Mandal et al. [216] in which BA was used to solve gene regulatory network modelling based on Recurrent Neural Network (RNN). BA was applied to find the optimal set of parameters for RNN model. Results showed that the proposed method succeeded to recognize the true positive regulation with minor false positive regulations number where included. Experiments demonstrated that BA is suitable in gene regulatory network modelling.

Lu et al. [217] presented abnormal brain detection method for magnetic resonance image. They modified the pre-trained AlexNet with batch normalization layers and trained on their brain images. Furthermore, they replaced the last several layers with an extreme learning machine, for this purpose a searching method is proposed in order to find the best number of layers to be replaced. In addition, the learning machine is optimized by using chaotic bat algorithm to achieve better classification performance.

Rauf et al. [218] proposed an optimized long short-term memory networks (LSTM) to predict COVID-19 cases. They used BA to optimize LSTM. Furthermore, they proposed an enhanced variant of bat algorithm in order to deal with local minima problem and premature convergence of bat algorithm. The proposed algorithm used Gaussian adaptive inertia weight to control the velocity in the whole swarm. In addition, they replaced random walk with the Gaussian walk in order to monitor and observe the local search mechanism. LSTM preserves the optimal solution by check the personal best solution with the swarm’s local best and by combining the Gaussian walk. They evaluate LSTM by comparing it with the non-optimal version of LSTM, gated recurrent units, recurrent neural network, and other recent algorithms. Their results showed that the LSTM reduce the mean absolute percentage error when comparing with existing algorithms.

BA has been applied to medical image watermarking to save patients’ privacy and confidential information. Kishore et al. [219] proposed the discrete wavelet transform BAT (DWT-BAT) algorithm to secure patient images during data transmission through web to maintain patients’ privacy. DWT-BAT uses BA to optimize the amount of watermark load, which in turn, maintains the medical image quality. Results showed that the proposed method outperformed DWT method in terms of protection from unsecure networks.

Kora and Kalva [220] applied MBA to detect myocardial infarction. The modification targets the exploration and exploitation properties of BA wherein exploration increases at the beginning of the iterations, and exploitation increases at the end of the iterations. Results showed that BA enhanced the classifier.

A neuron model based on BA was proposed by Singh [221] to enhance the magnetic resonance (MR) images. They then proposed a stochastic resonance method based on the enhanced neuron model. BA was applied to optimize the value of enhanced neuron model’s parameters to achieve a maximum contrast enhancement factor (F) and mean opinion score (MOS). Results showed that the MR images were improved by applying the proposed method.

BA has been used along with wavelet coherence (WTC) to detect heart arrhythmia. Kora and Krishna [222] proposed heart arrhythmia detector based on ECG systems. The proposed method applies the WTC method to analyze ECG signals. BA was used to optimize the features that are obtained from WTC, which were later used as features of ECG signals. Experiments demonstrated an improvement on detection accuracy.

5.8 Robotic

BA has been applied to several applications in the field of robotics, as it can find paths using the echolocation behaviour of bats. BA is used to optimize robotic path planning and control a biped robot, online self-adaptive fuzzy and caterpillar robot [223].

Guo et al. proposed robotic path planning method using BA. The proposed method uses Dijkstra algorithm and BA for optimizing mobile robot path planning to reach global optima [224]. BA was applied on the last stage of such method to find the optimal path of the robot among several sub-optimal paths. Simulation results showed the effectiveness of the proposed method, as well as its ability to meet mobile robot real-time requirements.

BA has been used to control a biped robot. Rahmani et al. proposed the adaptive neural network integral sliding-mode controller using a BA (BA-ANNISMC) method to control two-legged robots [225]. BA was used to adjust the values of ANNISMC parameters. Compared with a sliding-mode controller (SMC), integral SMC (ISMC) and ANNISMC, simulation results showed that BA-ANNISMC is an efficient method, especially in chattering reduction.

Huang proposed the fusion of BA fuzzy control (FBAFC) method, which uses an MBA along with a dynamic model for autonomous mobile robots. Here, BA was modified using two methods: Taguchi quality and dynamic inertia weight. Results showed that the proposed method has superiority over other methods in the field, as it attained trajectory tracking successfully [226].

Another use of BA in robotic field was introduced in adaptive fractional order PID sliding-mode controller using BA (BA-AFOPIDSMC). Rahmani et al. proposed the BA-AFOPIDSMC method, which is an extension to adaptive fractional order PID sliding-mode controller (AFOPIDSMC) to distinguish hairline bone fracture [227]. BA was used to find the optimal caterpillar robot design to optimize the parameters of AFOPIDSMC controller [228]. The main goal of parameter optimization is to enhance the accuracy. Simulation results showed that BA-AFOPIDSMC outperformed other methods, including the original AFOPIDSMC and its variant PSO-AFOPIDSMC in caterpillar robot motion challenge. Additionally, BA-AFOPIDSMC exhibited robustness and excellent trajectory tracking performance.

5.9 Wireless and Antenna Array

As BA applicability is expanding to solve considerably numerous problems in various research fields, it is also applied to solve wireless and antenna array challenges. In this section, we present the applications of wireless and antenna array that apply BA, including energy consumption, WSNs, estimating sensors location, linear antenna array and others.

To reduce energy consumption, researchers apply IBA to WSNs. Seelam et al. proposed WSN routing method based on clustering [229]. This method mainly aims to reduce the amount of energy needed to send information by sensors. IBA was used to select the optimal cluster information and cluster head. Simulation results showed that the proposed method had reduced the energy consumption.

Another application of BA in WSN was proposed by Goyal and Patterh [230]. The proposed method came as a response to the fact that several applications request the location information of the sensors in WSN. The main objective of the method is to localize each sensor in the network by assigning estimated location to each sensor. BA was used to solve the localization challenge by estimating the location of sensors. Simulation results showed that the proposed method achieved high localization accuracy compared with biogeography-based optimization (BBO). Another WSN sensor localization application for BA was presented by Goyal and Patterh [231]. The proposed method used BA to estimate the location of nodes in WSN. Simulation results showed a reduction in mean localization error as the number of nodes increased. An extension to the previous method was proposed by Goyal and Patterh [65]. The proposed method applies an MBA to estimate the location of nodes in WSN. BA was modified to improve the convergence and success rates by using the BFO method. Simulation results showed that the proposed method attained high robustness, as well as better accuracy, as compared with former methods in the field. Furthermore, Kura and Sharmaq applied BA to solve WSN nodes’ energy consumption challenge, as well as the hot spot problem [232]. Here, BA was used to optimally divide the zones according to its distance from the centre. Simulation results demonstrated that this method is superior to the hybrid energy-efficient distributed (HEED) and unequal clustering algorithms in prolonging the network (UCAPN) protocols.

Furthermore, multi-objective bat swarm optimization algorithm (MOB) is a multi-objective optimization WSN method proposed by Sharawi et al. [233]. The main objectives of MOB are to maximize the WSN’s coverage and at the same time, reduce the energy consumption. BA was applied to achieve those goals by optimizing the routing model. Simulation results showed that MOB outperforms low-energy adaptive clustering hierarchical (LEACH) method, as well as offers a practical solution for WSN’s problems in coverage and lifetime.

Cai et al. proposed a modification to the original BA to enhance exploitation capabilities [234]. The proposed method is tested by applying it in WSN to solve coverage problem. The proposed method employs a new linear-adjusted manner to improve the local search limitations of BA. Simulation results showed improved efficiency as compared with the original BA.

Nguyen et al. proposed a method to extend the lifetime of WSN by reducing the consumed energy [235]. BA was applied to search for the optimal distribution of nodes to reduce the distance between nodes which in return, reduces the amount of communications. Compared with PSO, the proposed method produces better accuracy and convergence by 3%.

Kumar applied BA to optimize rectangular microstrip antenna [236]. BA was used to optimally set the parameters of rectangular patch antenna to enhance the substrate in terms of length, width and height. The proposed method is superior to the PSO method. Kumari et al. proposed a method that applies BA to decrease both side lobe level and beam width of planar concentric circular antenna array [237]. BA was used to optimise the antenna array. The antenna array was enhanced, and the number of iterations was reduced. Furthermore, an application of BA to solve the failure of antenna array challenge was presented by Grewal et al. [238]. BA was used to solve the problem by controlling the amplitude excitation of antenna array. To enhance the speed and accuracy of BA, they used an adaptive inertia weight method. Das et al. proposed a generally symmetrical linear array method that applies BA to minimize the side lobe in linear array antenna. BA was used to optimally find solutions that have high nonlinear values. The proposed method outperformed the PSO and DE algorithms in terms of time, accuracy and convergence speed [239].

Mohar et al. [240] proposed node deployment based on BA in order to enhance the coverage rate of nodes in wireless sensor networks. In the proposed algorithm each bat is used individually to describes solution for deployment of sensor nodes, and grid points that are covered by single sensor node are excluded for the remaining nodes in order to decrease the load and to avoid overlapping between these nodes. Furthermore, the performance of different parameters of bat algorithm such as pulse emission rate, loudness, grid points, maximum frequency, and sensing radius are optimized in order to increase the coverage rate of sensors nodes. Their results showed that the proposed algorithm perform better than standard Bat and fruit fly optimization algorithm in terms of coverage rate.

5.10 Machine Learning and Expert Systems

A Bat Q-learning algorithm was proposed in [241]. BA was employed to enhance the overall solution and to increase the chance of finding the optimal Q-values. The proposed algorithm was evaluated on the shortest path problem and the taxi problem. Results showed that BQ-learning performs faster than single-agent Q-learning and some cooperative Q-learning algorithms.

Svečko and Kusić [242] proposed a positional control method based on combining the FFNN and BA to improve the positional control of the X-piezoelectric actuators (X-PEA) mechanism model. The proposed controller has better performance than the conventional FFNN control approach in terms of minimizing the overshoot value and steady-state error and reducing the settling time.

Dong et al. [243] evaluated the capabilities of the bat algorithm optimized extreme learning machine (Bat-ELM) , by comparing them with the following algorithms: genetic algorithm optimized ELM (GA-ELM), kernel-based nonlinear extension of Arps decline model (KNEA), the particle swarm optimization ELM (PSO-ELM), and six other non-hybrid machine learning models [244]. They used daily meteorological data that are belong to angling station of China for model testing and evaluation. Their results showed that, for estimating daily Tdew, the Bat-ELM is the optimal model and the minimum temperature Tmin, maximum temperature Tmax, minimum relative humidity RHmin, and maximum relative humidity RHmax, are the best input combinations.

6 Evaluation of Bat Algorithm

Since its proposed in 2010, the BA has been used to deal with various real problems in different fields, as shown in the above sections. BA likes many metaheuristic algorithms which they have simple structure, flexible to adapt, and robustness solutions. These features maked BA a point of researchers attention. Furthermore, BA owns private merits. For example, BA combines the benefits of population-based methods and gradient-based methods (i.e., Balancing between exploitation and exploration), diversity of solutions, and avoid the local optima.

No free-lunch is one of the popular theories in the optimization field. The major concept of this theory is there is no original metaheuristic algorithms has ability to deal various problems, successfully [245]. Consequently, BA requires enhancement to be able to deal with various types of optimization problems. BA suffers premature convergence which lead to stuck in local optimum, and complexity time increase according to the dimensional search area. [246, 247, 247].

Table 5 illustrates some of main characteristics of BA compared with the characteristics of the other optimization algorithms. For example, advantages and disadvantages, complexity time, number of parameters, ..etc. To conduct comprehensive comparison, various algorithms from different categories have been selected. For instance, GA and HS from evolutionary algorithms, CSA and PSO from swarm-based algorithms, and TS from trajectory-based algorithms [248].

Table 5 Comparison between basic BA and other algorithms

7 Conclusion and Possible Future Directions

This survey paper introduced a comprehensive review of the bat algorithm (BA) that proved its high capability to solve various problems at different applications. The articles in this review have been collected from the literature that was published science proposed BA in 2010 until 2022. This literature showed a variant of enhancements of of BA, as well its features, strength, and limitations. Moreover, the collected articles have been summarized different problems used BA, such as medical research, image processing, ELD, engineering design, data clustering and robotics, and other significant applications. Furthermore, introduced BA variants such as binary and discrete, modification, and hybridization variants. Where the proposed versions of BA helped to enhance the performance of BA for solving various types of optimization problems.

BA is a very promising and interesting algorithm that has already been successfully applied to several problems [279]. Its advantages over other optimization algorithms include simplicity, speed in searching and ease of hybridization with other optimization algorithms. However, BA is stuck in local optima because it focuses on exploitation rather than exploration. This issue can be observed in term of the difficulty of understanding when and why the algorithm works and how the performance of the algorithm improves compared with other search techniques. Parameter tuning is also an important part of research [280] as the values and settings of the parameters govern BA performance.

Based on the above discussion, BA is robustly viable for continued utilization in the community. This review paper guides researchers who are currently working or will work in this area by describing how BA can be employed to solve problems, pointing out its weaknesses and strengths and proving its effectiveness. Many important research problems can be solved through BA.

Finally, we recommend the following viewpoints to enhance BA and use it in various applications.

  • BA and BBA in [24] could be combined with relative reduction as the fitness function to achieve better performance. If a relative reduction is used for feature selection, the computational time of the feature selection model increase. Consequently, this requires integration with other computational technologies, such as parallel computations, to reduce the elapsed processing time.

  • Applying feature selection methods, such as IG, hinders the classifier’s results in testing BA for classification tasks. In the proposed methods of BA, the parameter setting is rather static. We recommend that the proposed methods of BA be integrated with another method to flexibly tune the related parameters and make them mutable or dynamic.

  • From [117], the QMBA algorithm can be applied to engineer optimization problems and develop new metahybrid approaches to solve more complex optimization problems.

  • In [281], two ways to create new works are provided: employing BA-DE to real-life industry cases and extensive research on methods to solve multi-objective optimization problems.