Abstract
Butterfly Optimization Algorithm (BOA) is a new comer in the category of nature inspired metaheuristic algorithms, inspired from food foraging behavior of the butterflies. Similar to other metaheuristic algorithms, it encounters two probable problems; (1) entrapment in local optima and (2) slow convergence speed. Chaotic maps are one of the best methods to improve the performance of metaheuristic algorithms. In the present study, chaos is introduced into BOA which increases its performance in terms of both local optima avoidance and convergence speed. Ten chaotic maps are employed to enhance the performance of the BOA. The proposed chaotic BOAs are validated on unimodal and multimodal benchmark test functions as well as on engineering design problems. The results indicate that the chaotic maps are able to significantly boost the performance of BOA.
Introduction
Since millon of years, natural (biological) systems are undergoing continuous improvements for better survival. Acquired/modified features of various biological species make them more robust and efficient [1]. In fact, nature can be considered as the first optimizers because living beings in nature evolve and adapt their behavior according to the changing environment, otherwise they may extinct. Using the main characteristics of these biological systems, various metaheuristic algorithms have been developed and successfully applied to various optimization problems [18, 40]. In engineering, many design applications require optimal solution under highly complex constraints over a short duration of time which is a very challenging task [22, 35] and these metaheuristic algorithms are known to have intriguing efficiency for solving complex and multidimensional problems in a shorter period of time [46].
Till now, several novel metaheuristic algorithms are proposed for global search. These algorithms demonstrate improved performances when compared with conventional optimization techniques, especially when applied to solve non-convex optimization problems [14]. Recently, Arora [38] developed a promising metaheuristic algorithm, called Butterfly Optimization Algorithm (BOA), which is inspired from the food foraging behavior of the butterflies. Preliminary studies suggest that the BOA demonstrate superior results, when compared with other metaheuristics [38, 39].
In recent years, various applications of nonlinear dynamics, especially of chaos, have drawn attention of researchers from various areas [32]. Among these areas, application of chaos theory in optimization algorithm is a promising subject [13]. In the past, various population based optimization algorithms have been used together with chaotic sequences such as ant and bee colony optimization [4], harmony search [5], particle swarm optimization [6], genetic algorithm [19], simulated annealing [24] and imperialist competitive algorithm [45]. The aim of this paper is to introduce chaotic BOA-based methods in which different chaotic systems are used to replace the critical parameters of the BOA. Thus different algorithms which uses chaotic maps as proficient alternatives to random sequences have been proposed. In order to evaluate the proposed CBOAs, a subset of unimodal and multimodal benchmarks functions is utilized. To further evaluate the validity of proposed BOAs in real real world applications, these are employed to solve three engineering design problems viz. spring design problem, welded beam design problem and gear train design problem. The results reveal that there is improvement in the performance of the proposed algorithms due to the application of deterministic chaotic signals.
The rest of the paper is organized as follows. Section 2 presents the descriptions of BOA. Section 3 outlines the chaotic maps that generate chaotic sequences in the BOA. Section 4 presents the proposed chaotic BOAs. The results and discussion of benchmark functions and engineering design problems are presented in Sections 5 and 6, respectively. Finally, the conclusions and outlines directions for further research are drawn in Section 7.
Butterfly optimization algorithm
Butterfly Optimization Algorithm (BOA) is a new nature inspired metaheuristic algorithm, based on the food foraging strategy of butterflies [38]. Butterflies are search agents of BOA to perform optimization. Biologically, butterflies use sense receptors to find the source of food. These sense receptors are used to sense fragrance/smell and these are scattered over butterfly’s body parts like antennae, legs, palps, etc. [37]. These receptors are actually nerve cells on butterfly’s body surface and are called chemoreceptors.
In BOA, it is assumed that a butterfly will generate fragrance with some intensity which is correlated with fitness of butterfly, i.e., as a butterfly moves from one location to another, its fitness will vary accordingly. The fragrance will propagate over distance and other butterflies can sense it and this is how the butterflies can share its personal information with other butterflies and form a collective social knowledge network. When a butterfly is able to sense fragrance from any other butterfly, it will move towards it and this phase is termed as global search. In another scenario, when a butterfly is not able to sense fragrance, then it will move randomly and this phase is termed as local search.
In BOA, each fragrance has its own unique scent and personal touch. It is one of the main characteristic that distinguish BOA from other meta-heuristics. In order to understand how fragrance is modified in BOA, first we need to understand, how a modality like smell, sound, light, temperature etc. is processed by a stimulus. The whole concept of sensing and processing the modality is based on three important terms viz. sensory modality (c), stimulus intensity (I) and power exponent (a). I is the magnitude of the physical/actual stimulus. The natural phenomenon of butterflies is based on two important issues: the variation of I and formulation of f. For simplicity, I of a butterfly is associated with encoded objective function. However, f is relative i.e. it should be sensed by other butterflies. Using these concepts, in BOA, the fragrance is formulated as a function of the physical intensity of stimulus [44] as follows:
A wide variety of different chaotic maps are available in optimization field [12]. In the present work, 10 most widely used uni-dimensional chaotic maps have been used [34]. The mathematical modulation of chaotic maps used are described in Sections 3.1 to 3.10.
Chebyshev map
The Chebyshev map is formulated as:
The Circle map is defined as:
This equation will generate chaotic numbers between (0, 1) by using P = 0.5 and b = 0.2. P is taken as a control parameter here.
The equations of the Gauss map are defined as follows:
This map also generates chaotic sequences in (0, 1).
The iterative chaotic map equation is expressed as:
The Logistic map is represented by the following equation:
The family of piecewise map can be represented as:
This map is defined as follows:
The singer map is formulated as:
This map is defined as follows:
In this paper, the simplified equation of this map is used by using P = 2.3 and x0 = 0.7 which can be formulated as:
The equation of the tent map can be represented as:
Chaotic comes from the word ‘chaos’ which means a state of disorder or noise in a system and ‘maps’ here means mapping or associating chaos/dynamic behavior in the algorithm with some parameter using a function (chaotic function). So, chaotic maps are the maps which show complex and dynamic behavior in the non-linear systems [32]. Since last decade, chaotic maps have been widely appreciated in the field of optimization due to their dynamic behavior which help optimization algorithms in exploring the search space more dynamically and globally. Its behavior is predictable only in initial conditions but afterwards it shows random behavior [13]. The use of chaotic sequences in BOA can be helpful to escape more easily from local minima than can be done through the classical BOA. The selected chaotic maps that produce chaotic numbers in (0, 1) for the experiments have been listed in Section 3. New chaotic CBOAs may be simply classified and described as follows:
Chaotic BOA1
Initial butterflies are generated by iterating the selected chaotic maps until reaching to the population size. A member of the population can be represented as xi,j, where i is the member and j is the dimension.
Chaotic BOA2
In this algorithm, the switch probability p which controls the global and local searching abilities of the BOA is replaced with a chaotic number.
Chaotic BOA3
CBOA1 and CBOA2 are combined, that is initial population is generated by iterating the selected chaotic maps and chaotic variable controls the intensification and diversification of the algorithm.
Experimental results and discussion
Every novel optimization algorithm must be subjected to well defined benchmark functions in order to measure and test its performance. There are many benchmark functions available, however, there is no standardized set of benchmark functions which is agreed upon for validating new algorithms. In order to validate and benchmark the performance of proposed Chaotic Butterfly Optimization Algorithm (CBOA), simulations on one unimodal (containing only one optima) as well as on two multimodal (containing many local optima, but only one global optimum) benchmark functions are conducted. These testbed benchmark functions are chosen in order to determine various features of the algorithm such as fast convergence, ability to jump out of local optima and avoid pre-mature convergence. Table 1 shows the main properties of the selected benchmark functions used in the experiments.
The selected benchmark functions are solved by simulating the CBOA1, CBOA2, and CBOA3. There are various criteria available to terminate the simulation of the algorithms and among those, the prominent method i.e. reaching maximum number of iterations which is set to a constant number, is used in this study. All BOAs were initialized in regions that include the global optimum for a fair evaluation.
In [38], the movement of butterflies is dominated by flights whereas in this research work, the proposed CBOAs makes the use of random numbers to decide the movement of butterflies. Our simulation results indicate that by using random number BOA produce superior results. Due to stochastic properties of the algorithms, every algorithm is executed 100 times and the maximum number of iterations is fixed to 500. The aim of these simulations is not to find the global optimum values but to explore the potential of these chaotic algorithms. The success rate of algorithm is defined in Equation 16 which has been used for comparison of the results obtained from different CBOAs.
NT successful is the number of trials, which found the solution in the allowable maximum number of iterations. N all is the number of all trials. The population size for the algorithms has been selected as 20. The value of modular modality c and power exponent a is set to 0.01 and 0.1 respectively [38]. It is also possible to adjust c in order to increase the convergence speed of the algorithms. Table 2 depicts the success rates of BOA for the test functions.
Using different chaotic maps, success rates of CBOA methods for Sphere, Griewank and Rastrigin function are shown in Tables 3, 4 and 5, respectively. The results reveal the improvement of the new algorithm due to the application of chaotic variables in place of constant values. Statistical results and success rates of the CBOAs suggest that the proposed algorithms clearly improve the reliability of the global optimality and they also enhance the quality of the results. The underlying reason behind better performance of CBOAs is that by the introduction of deterministic chaotic signals, the tradeoff between exploration and exploitation is improved. The chaotic variable also facilitate the CBOAs to explore the search space more randomly which helps the algorithms to avoiding local optima stagnation and hence reach the optima more quickly. Thus, it can be said that the convergence values of the proposed CBOAs are better. In fact, most of the results obtained from CBOA2 and CBOA3 are superior than that from classical BOA.
Optimization algorithms are nowadays being extensively used to find ideal design or cost of objects like spring, welded beam, cabinet etc. In many of the optimization problems, optimal solution needs to satisfy some constraints. Each constrained optimization problem involves some variables, equality and inequality constraints, a penalty function and an objective function. It becomes very challenging to solve the constrained optimization problem when the constrained handling mechanism directly affects the position of search agents using specific fitness function [25]. So in order to evaluate the constraint handling capability of CBOA, three engineering design problems: tension/compression spring, welded beam, and gear train design, are employed in this section. A complex penalty function is also used in the problems mentioned which penalize the search agents according to the level of violation done by them.
Tension/compression spring design
The main goal of this engineering design problem is to minimize the weight of the spring involving three decision variables which are wire diameter (d), mean coil diameter (D), and the number of active coils (N), as illustrated in Fig. 1. The minimization process is subject to some constraints such as shear stress, surge frequency, and minimum deflection [1, 9].
The mathematical formulation of this problem is as follows:
The simulation results of CBOA are compared with Grey Wolf Optimization (GWO) [43], Gravitational Search Algorithm (GSA) [42], PSO [36], Evolution Strategy (ES) [15], GA [8], Harmony Search (HS) [33], and Differential Evolution (DE) [17]. The mathematical approaches that have been used to tackle this problem are Numerical Optimization Technique (NOT) [30] and Mathematical Optimization Technique (MOT) [16]. The comparison of results of these techniques and CBOA are provided in Table 6. Note that a similar penalty function for CBOA is used to perform a fair comparison [23]. Table 6 suggests that CBOA finds a design with the minimum weight for this problem.
The objective of this problem is to minimize the fabrication cost of a welded beam as shown in Fig. 2. This problem has four variables such as thickness of weld (h), length of attached part of the bar (l), height of the bar (t), and thickness of the bar (b). The constraints are shear stress (s), bending stress in beam (h), buckling load on the bar (P
c
), end deflection of the beam (d) and side constraints. The mathematical formulation of this problem is as follows:
In the past, this problem is solved by GWO [43], GSA [42], HS [31] and GA [10, 27]. Various mathematical approaches viz. Richardson’s random method, Simplex method, Davidon-Fletcher-Powell, Griffith and Stewart’s successive linear approximation have also been employed to solve this problem [30]. According to the results shown in Table 7, CBOA finds a design with the minimum cost in comparison to other approaches.
Gear train design problem is a discrete optimization problem which was introduced by Sandgran [16]. The goal of this engineering design problem is to minimize the cost of gear ratio of the gear train. and it has four integer variables namely T a , T b , T d and T f , ranging between 12 and 60.
This problem consists of cost minimization of the gear ratio of a compound gear train (see Fig. 3). The objective function of the problem can be defined as:
The gear ratio can be defined as:
This problem has also been popular among researchers and optimized in various studies. The heuristic methods that have been adopted to optimize this problem are: PSO [29], CAPSO [3], CS [2], GeneAS [28], SA [11] and GA [41]. Various other approaches used to solve to this problem are nonlinear integer and discrete programming (NLDP) [16], Sequential Linearization approach (SL) [20], Mixed Integer Discrete Continuous Optimization (MIDCO) [7], Mixed Integer Discrete Continuous Programming (MIDCP) [23] and Mixed Variable Evolutionary Programming (MVEP) [47]. According to the simulation results demonstrated in Table 8, the solution obtained by the proposed CBOA is equivalent to the results in the literature.
This paper investigated the effectiveness of ten different chaotic maps in improving the performance of the Chaotic Butterfly Optimization Algorithm (CBOA). In order to compare CBOA in terms of enhanced exploration and exploitation, set of unimodal and multimodal benchmark functions were employed. Generally speaking, the results proved that chaotic maps are able to significantly improve the performance of Butterfly Optimization Algorithm (BOA). The results obtained after employment of these algorithms on engineering design problems show that these algorithms have improved quality of solutions and in some cases they have increased the global searching capability by escaping the local solutions. These proposed algorithms are new and more detailed experiments may be performed in distributed and parallel environment.
Footnotes
Acknowledgment
The authors wish to acknowledge the Department of RIC, I.K. Gujral Punjab Technical University, Kapurthala, Punjab, India.
