A modified bats echolocation-based algorithm for solving constrained optimisation problems

A modified adaptive bats sonar algorithm (MABSA) is presented that utilises the concept of echolocation of a colony of bats to find prey. The proposed algorithm is applied to solve the constrained optimisation problems coupled with penalty function method as constraint handling technique. The performance of the algorithm is verified through rigorous tests with four constrained optimisation benchmark test functions. The acquired results show that the proposed algorithm performs better to find optimum solution in terms of accuracy and convergence speed. The statistical results of MABSA to solve all the test functions also has been compared with the results from several existing algorithms taken from literature on similar test functions. The comparative study has shown that MABSA outperforms other establish algorithms, and thus, it can be an efficient alternative method in the solving constrained optimisation problems.


Introduction
Constrained optimisation problems normally come with lack of explicit mathematical formulation but have discrete definition domains, mixed of continuous and discrete design variables and also strong nonlinear objective functions with multiple complex constraints (Garg, 2014). However, due to computational drawbacks and the requirement of substantial gradient information traditional numerical programming strategies are incapable to solve constrained optimisation problems consistently (Sadollah et al., 2013). The alternative prospect to attain constrained optimisation problems is by metaheuristic methods (Hsieh, 2014).
Among most popular metaheuristic methods are swarm intelligence algorithms. These algorithms are inspired from the collective behaviour of swarms through complex interaction between individuals and its neighbourhood with nature (Hsieh, 2014). The most remarkable parts in any swarm intelligence algorithms are that the algorithm has advantages of memory, diverse multi-characters capability, rapid solution improvement mechanism and adaptable to internal and external changes (Garg, 2014). Particle swarm optimisation (PSO), artificial bee colony (ABC), ant colony optimisation (ACO) and bat algorithm (BA) for instance are some examples of swarm intelligence algorithms that have already captured attention of researchers. This paper introduces a new swarm intelligence algorithm, the so called modified adaptive bats sonar algorithm (MABSA) which is an improved version of the original adaptive bats sonar algorithm (ABSA) by Yahya et al. (2016). The algorithm is inspired from bat sonar used in bats echolocation to find prey. In this paper, the MABSA is proposed and applied to several constrained optimisation benchmark test functions.
The remainder of this paper is organised as follows. Section 2 details the constrained optimisation problems, the penalty function method as a constraint handling technique and several previous researches using swarm intelligence algorithms to solve constrained optimisation problems. Section 3 describes the bats echolocation concepts and the proposed algorithm. Section 4 discusses computer simulation results and finally, conclusions are drawn in Section 5.

Background
A constrained optimisation comprises an objective function together with some equality and inequality constraints subject to lower bound and upper bound of variables as: Here, g j (x) represents inequality constraint functions with J inequality constraints. h k (x) represents equality constraints functions with K equality constraints. ( ) the upper bounds of variable x i with n variables, respectively.

A penalty function
In the penalty function, the original objective function F(x) is replaced by a substituted function C(x) which considers the original objective function F(x) with added penalty function P(x) that introduces a tendency term to penalise constraint violations produced by x. Therefore, considering the constrained optimisation problem defined previously, the substituted function is defined as follows: where μ and v represent penalty coefficients which weigh the relative importance of each g j (x) (inequality constraint) and h k (x) (equality constraint) respectively. In this work, values of μ and v are problem-dependant.

Previous approaches of swarm intelligence algorithms
Various research works have been reported over the past two decades on dealing with constrained optimisation problems by using swarm intelligence algorithms. The PSO has been the most favourable technique among them. Parsopoulos and Vrahatis (2005) have proposed a variant of PSO scheme, a unified particle swarm optimisation (UPSO) method with a penalty function approach. The proposed algorithm has abilities to explore and exploit the search process without needing extra requirements of function evaluations and also preserves feasibility of the encountered solutions. Cagnina et al. (2008) investigated simple constrained particle swarm optimiser (SiC-PSO) coupled with a constrained-handling technique. The algorithm is faster, more reliable and efficient after combining local best (lbest) and global best (gbest) models to update the velocity as well as adding gbest to the best position of the particles and to its neighbourhood.
Another popular swarm intelligence algorithm used is the ABC algorithm. For instance, Garg (2014) introduced a penalty function guided ABC algorithm to solve several structural engineering design problems. Earlier, Karaboga and Basturk (2007) adopted Deb's rule for the selection of mechanism to deal with constraints of the ABC algorithm to solve a set of constrained numerical optimisation problems. The rest of the techniques shall be categorised under swarm intelligence algorithms such as, BA (Yang and Hossein, 2012) which is based on the level and loudness of the pulse emitted in bats echolocation and a bacterial gene recombination algorithm (BGRA) that was inspired from virus resistance process in real bacteria (Hsieh, 2014).
Up to this time, there is no evidence of a developed algorithm based on the principles of bat sonar used in echolocation to tackle constrained optimisation problems. So, it is believed that the algorithm proposed in this paper will be the first as well as bring in the well-known advantages of swarm intelligence characteristics to solve specific problems.

Bats echolocation in brief
Bats habitually live in large colonies around 700 to 1,000 individuals under sharing roosts (Altringham et al., 1996). There are two sets of acoustic communication used by a colony of bats. These are echolocation calls for foraging and positioning purposes and social calls for socialising or communicating between bats (Altringham et al., 1996). A colony of bats is able to create worthy communication and sharing information about roost site or foraging area among one another.
Echolocation is the ability of bat to produce sound with echoes beyond the frequency range of human hearing and use for general orientation and finding prey (Altringham et al., 1996). With echolocation, a bat emits ultrasonic pulses through mouth or nose in short bursts. The sound reflects back as echoes bump into an object in the bat's path. The bat is able to recognise the object and its distance by calculating the time of reflection of the modulated echoes (Altringham et al., 1996).
The echolocation process of bats that leads to catching the prey comprises of three phase; search phase, approach phase and terminal phase (Altringham et al., 1996). When the bats begin to chase for prey in the search phase, they emit the pulse at low rate at around a frequency of 10 Hz (Altringham et al., 1996). When the bat senses and gets closer to the prey in the approach phase, the pulses have to get shorter to avoid overlap (Altringham et al., 1996). This is because the time between the pulse and echo is dwindled (Altringham et al., 1996). Now, pulse emission rate gets progressively increased up to 200 per second as the bat keeps updating the location of the prey (Altringham et al., 1996). The pulse emission rate increases because the bats need to emit more signals to trace the prey precisely as the angular position of the prey changes more swiftly due to the closer distance between a bat and the object. In the terminal phase, the frequency of emitted pulses upswings to more than 200 Hz and the pulse emission rate becomes faster at only fraction of millisecond long just before the prey is seized (Altringham et al., 1996).
According to Altringham et al. (1996), a colony of bats also includes the concept of reciprocal altruism of food sharing during echolocation process. This social behaviour of bats group is based on animals returning favours to their mutual benefit. The reciprocal altruism behaviour growth in individual survivorship such that the fitness of the recipient is elevated to a non-recipient (Altringham et al., 1996).

Modified adaptive bats sonar algorithm
ABSA was introduced by Yahya et al. (2016) to solve unconstrained single objective optimisation problems. But, to deal with constrained single objective optimisation problems, a crucial problem on how to incorporate the inequality constraints as well as equality constraints with the objective function must be tackled appropriately. ABSA does not function well on this kind of problems as it is based on a direct approach. A direct approach is often difficult to find the solution in feasible regions enclosed by constraints.
A new algorithm named the MABSA is proposed here by redefining as well as reformulating some elements in ABSA to compensate for this problem. The MABSA will be able to generate a potential solution that satisfy all constraints. The purpose of MABSA is to solve constrained optimisation problems.
The MABSA is formulated after modifying three searching procedures of the original ABSA and adding a new component to it. The three procedures are the ways to setting up the beam length (L), determining starting angle (θ m ) and angle between beams (θ i ) and also calculating end point position (pos i ). On the other hand, the bounce back strategy is a new component that has been included in the MABSA, which was not considered in ABSA formerly. This section will elaborate solely of these three elements. The other components of MABSA will not be further discussed here as they are similar to the ABSA as presented in Yahya et al. (2016).
In the MABSA, the new L is setup as: where the solution range (SS Size ) is the value between the upper search space (SS Max ) limit and the lower search space (SS Min ) limit. Every dimension (Dim) has its specific or known as Dim constraints. The solution range is divided into micron scale, such as 10% of the overall population of bats in the search space. The percentage is marked as possible search space size of each bat to emit sound without colliding with one another. The random value of L is offered to make real variation of beam lengths of each number of beams (NBeam) at every Dim (but stay within the Dim constraints) at every iteration. This fixation pushes every bat at each dimension to search for larger perimeter each time with the opportunity to diversify the search tactic during iterations and thus may find the global best solution that may be near to them. Each NBeam with L is emitted from specific angle location. In the ABSA, the θ m and θ i are determined randomly in every iteration. So all bats will emit the NBeam from a set of similar angle location in each iteration. To add another randomisation character inside MABSA, θ m and θ i will be determined in random and separately for every bat at every iteration. So at each iteration, every bat will emit the NBeam from a different set of angle location. Therefore, this randomisation will also add on to diversify the searching process in MABSA.
In the MABSA, the way to calculate the pos i is redefined. The pos i for each transmitted beam in MABSA is calculated as: In the above equation, there are two random variables and one constant. The first random variable is called position adaptability factor (α). The value for α is chosen randomly within the range between 0 and 1. This factor is included to make sure that every bat is able to adapt to the new pos SP faster as derived from the previous pos SP , pos LB , pos RB and pos GB . This factor has the same characteristic as random walk method. The second random variable is collision avoidance factor (β). The value for β is also chosen randomly within the range between 0 and 1. The factor is essential to avoid the beams from overlapping or incidentally colliding with other bats' beam as every bat produces a number of beams from new pos SP simultaneously.
The only constant in this equation is beam-tuning constant (ω) which is equal to 2. This constant can also be considered as acceleration constant. The function of this constant is to strengthen β so that ω will divert the angle of transmitted beam to a new angle in the designated search space. The value 2 is selected because it will give a good balance. If a very high value is selected, it will destroy the influence of the beam angle such that the orientation of new bat position will be catastrophic. A smaller value, on the other hand, will not make any significant change to the angle of transmitted beam.
The MABSA is also equipped with bounce back strategy. This will confirm that every pos i achieved by each bat during the iterations is worth considering as possible optimum pos GB for the algorithm. When each beam is transmitted from every bat, it will be verified to ensure that the pos i of the transmitted beam does not fall beyond SS Max or below SS Min . If the pos i reaches outside SS Size , the transmitted beam will be diverted automatically to new location inside the labelled SS Size using one of the following equations: These equations contain bounce back repositioning factor (τ) where the value is 0 < τ < 1. This factor is to help the bats to relocate a beam transmission to a new beams' end point from the maximum or minimum search space. This factor will avoid overwriting other bats' beam end points. The bounce back repositioning factor is the fastest contingency action of bats to swing to newly transmitted beam's end point after hitting the designated search space boundaries. This strategy helps to significantly reduce the time spent in considering the previous factors (which are: position adaptability factor, collision avoidance factor or beam-tuning constant) as normal bats do. Algorithm 1 represents the pseudo code of MABSA.
The quality of obtained optimisation results is compared in terms of statistical results (better best, mean, median and worst solution found), the robustness of the MABSA (the standard deviation values) and the number of function evaluations (NFEs).
The results of the best solution obtained from MABSA for constrained optimisation benchmark test functions are summarised in Table 1. The MABSA was capable of finding the best solution (minimum value) better than the optimum value suggested from CEC 2006 for all constrained benchmark test functions. The time to converge to the best solution was recorded under 22 seconds for all four test functions, and this shows that the algorithm is able to reach to the best solution faster than ordinary methods. So it is worth mentioning that MABSA is very effective and efficient to solve constrained optimisation problems. In terms of NFEs, MABSA showed good potential to be popular algorithm in future as it converges fast to the optimum solution. For instance, by considering the NFEs from the best solution obtained in all constrained benchmark test functions tested, MABSA started to settle down to the optimum solution after approximately 2,000 to 4,000 NFEs. Figure 1 compares the average NFEs used by all algorithms to solve four constrained benchmark test functions. When comparing the average NFEs used by MABSA on all constrained benchmark test functions with other established algorithms, the value between 70,000 and 100,000 is reasonable and more productive. The small value of NFEs will force the algorithm to settle down earlier as possible without a chance to explore more but may end up with the algorithm trapped in local optimum such as in CRGA, NM-PSO or DELC. On the other hand, if too many NFEs are used such as in ASCHEA or even SAPF, the algorithm may waste the time to find good solution but the solution which was already encountered earlier than the last set of NFEs is examined.    Overall, MABSA lead other algorithms to all criteria (worst, median, mean and best value) which demonstrate the quality of algorithm to achieve the optimum solution for test function 1. This statement was strengthened by the bar plot pictured in Figure 2 where MABSA was significantly better to achieve the optimum solution as compared to optimum value compiled in CEC 2006 or other algorithms. Indeed, the worst result from the MABSA; -30,700.2654 is still a better result than the optimum value or the best result from other established algorithms. However, MABSA is less robust to solve the problem as shown by the higher value of standard deviation when compared to other listed algorithms.

Test function 2
In test function 2, the performance of MABSA was also compared with the 14 established algorithms. The algorithms are CRGA, SAPF, CULDE, SMES, ASCHEA, PSO-DE, SR, DELC, DEDS, HEA-ACT, ISR, α simplex, ABC2 and MBA. The statistical results obtained by all algorithms including MABSA are shown in Table 3 while the worst, median, mean and best results for each considered algorithm is shown in Figure 3.
The outstanding performance of MABSA to solve the test function 2 can be seen in both table and bar plot. The fitness function value achieved by MABSA for every statistical criterion was the optimum as compared to other 14 established algorithms as well as the optimum value from CEC 2006. In addition to that, the MABSA method was the only algorithm passing the -7,000.0000 value in median, mean and best which was not achievable by other algorithms. Nevertheless, the higher standard deviation value achieved by MABSA shows that the algorithm was less robust to solve the test function 2 compared to other algorithms. However, the level of robustness for MABSA to solve this problem was better than the previous problem.  Table 4. Figure 4 shows a bar plot of worst, median, mean and best solution of all algorithms with a benchmark of the optimum value from CEC 2006. The performance of MABSA was exceptional when compared to other established algorithms to find the optimum fitness function value for test function 3. The MABSA was the sole algorithm that recorded the minimum solution under 680.0000 for all statistical criteria with the best solution 662.4557 which was far better than the optimum value from CEC 2006. For this test function 3, MABSA was well thought-out to be more robust when compared to the performances in case of test function 1 or test function 2. Despite the fact that the standard deviation for MABSA was still larger than 1.0000, the value was acceptable to compromise with the range of worst, median, mean and best solution found which was better amongst considered algorithms.  Table 5 shows the comparison results, while the bar plot of worst, median, mean and best solution acquired from all the algorithms with the optimum value from CEC 2006 is shown in Figure 5. For test function 4, MABSA successfully achieved results which have the same performance or better than other considered algorithms for all criteria. Indeed, the median, mean and best solution values achieved by MABSA method managed to achieve better than the CEC 2006 benchmark value; 0.7500. The MABSA recorded 0.7500, 0.7500 and 0.7500 for median, mean and best criteria respectively. According to the results, MABSA is also considered to be more robust to solve the test function 4 as its standard deviation value recorded was 0.000000. The robustness ability of MABSA to solve the problem was at par with other considered algorithms and better than CGRA, SAPF, CULDE and SMES. All considered algorithms for test functions are ranked in Table 6 based on their corresponding MAE's. The table shows that MABSA is at the highest ranking from 15 considered algorithms.

Conclusions
A MABSA has been proposed for solving constrained optimisation problems. The MABSA has been formulated as an improved version of ABSA developed by Yahya et al. (2016). In addition to redefining ABSA parameters, a new strategy, namely the bounce back strategy as a mechanism to control the transmitted beam to fall only within the designated search space, has been incorporated into MABSA. The MABSA has achieved competitive results on four constrained optimisation benchmark test functions adopted from CEC 2006 at a relatively better optimum solution value with a low computational cost. From the comparative study, MABSA has shown its ability to handle various constrained optimisation, and its outstanding performance is much better, in terms of statistical metrics, than the established set of algorithms selected from the literature.
The future works will be focus on the application of MABSA to real optimisation problems.