# Improved Monarch Butterfly Optimization Algorithm Based on Opposition-Based Learning and Random Local Perturbation

Authors: Lin Sun; Suisui Chen; Jiucheng Xu; Yun Tian
Journal: Complexity
 (2019)

---

## Abstract

Many optimization problems have become increasingly complex, which promotes researches on the improvement of different optimization algorithms. The monarch butterfly optimization (MBO) algorithm has proven to be an effective tool to solve various kinds of optimization problems. However, in the basic MBO algorithm, the search strategy easily falls into local optima, causing premature convergence and poor performance on many complex optimization problems. To solve the issues, this paper develops a novel MBO algorithm based on opposition-based learning (OBL) and random local perturbation (RLP). Firstly, the OBL method is introduced to generate the opposition-based population coming from the original population. By comparing the opposition-based population with the original population, the better individuals are selected and pass to the next generation, and then this process can efficiently prevent the MBO from falling into a local optimum. Secondly, a new RLP is defined and introduced to improve the migration operator. This operation shares the information of excellent individuals and is helpful for guiding some poor individuals toward the optimal solution. A greedy strategy is employed to replace the elitist strategy to eliminate setting the elitist parameter in the basic MBO, and it can reduce a sorting operation and enhance the computational efficiency. Finally, an OBL and RLP-based improved MBO (OPMBO) algorithm with its complexity analysis is developed, following on which many experiments on a series of different dimensional benchmark functions are performed and the OPMBO is applied to clustering optimization on several public data sets. Experimental results demonstrate that the proposed algorithm can achieve the great optimization performance compared with a few state-of-the-art algorithms in most of the test cases.


---

## Body

## 1. Introduction

Many real-world tasks, which can be transferred to optimization problems, have become increasingly complex and are difficult to solve using the traditional optimization algorithms [1]. Recently, a lot of nature-inspired metaheuristic algorithms have been proposed and applied to deal with various optimization problems [2]. Then, the researches on tackling by optimization techniques in many applications have become a fruitful field of research, especially those interested in solving global optimization problems. The swarm intelligence optimization (SIO) algorithm is a kind of bionic random method inspired by natural phenomena and biological behaviors and can deal with certain high-dimensional complex and variable optimization problems because of its better computing performance and simple model [3, 4].Over the past several decades, SIO has become an attractive research area which leads to the emergence of a large variety of intelligent optimization algorithms. Kennedy and Eberhart [5] proposed a particle swarm optimization (PSO) algorithm derived from the simulation of bird foraging behaviors. However, the PSO often faces premature convergence problem, especially in multimodal problems as it may get stuck in specific point [6]. Wu and Yang [7] presented an elitist transposon quantum-based PSO to solve economic dispatch problems. Eusuff and Lansey [8] presented a shuffled frog-leaping algorithm (SFLA), which is inspired from the memetic evolution of frogs seeking food in a pond. It has been shown to be competitive with PSO, but the SFLA is good at exploration but poor at exploitation and easily gets trap in local optima when solving partial complex multimodal problems. Meanwhile, its convergence speed is slower [9]. Tan and Zhu [10] designed a fireworks algorithm (FWA) for the global optimization of complex functions. The FWA has powerful global optimization capabilities to solve classification problems, but there is no direct interaction among the solutions found during the optimization process of FWA; its convergence speed is slow and the computational cost is high [11]. Yin et al. [12] introduced a hybrid FWA-based parameter optimization into the nonlinear hypersonic vehicle dynamics control to satisfy the design requirements with high probability. Gandomi and Alavi [13] developed a krill herd algorithm (KHA) which mimics the herding behavior of ocean krill individuals. The herding of the krill individuals is a multiobjective process, and the position of an individual krill is time dependent. Unfortunately, the performance of KHA is degraded by the poor exploitation capability, and the basic KHA has a low convergence speed and accuracy [14]. Singh and Khan [15] proposed an artificial shark optimization (ASO) method to remove the limitation of existing algorithms for solving the economical operation problem of microgrid. Mirjalili et al. [16] established a grey wolf optimizer (GWO) metaheuristic based on grey wolves. The GWO algorithm is considered for learning method due to its advantages, including high accuracy, effectiveness, and competitiveness [17]. The paramount challenge in GWO is that it is prone to stagnation in local optima [18]. Differential evolution (DE) as a popular stochastic optimizer, proposed by Storn and Price [19], is to exhibit consistent and reliable performance in nonlinear and multimodal environment and has proven to be effective for constrained optimization problems [20]. Some empirical studies have shown that DE outperforms PSO [21]. However, setting different parameters has great impacts on the performances of DE algorithm when solving various global optimization problems or even the same problem at different evolutionary stages [22]. The fruit fly optimization algorithm (FOA) as a global optimization method was proposed by Pan [23], who was inspired by the foraging behavior of fruit flies. The FOA is simple in structure and easy to implement [24]. However, the basic FOA often derives a local extreme when solving high-dimensional functions and large-scale combinational optimization problems [25]. The idea of ant colony optimization (ACO) is to mimic the way that real ants find the shortest route between a food source and their nest. Recently, the ACO algorithm and its versions have been investigated to tackle combinatorial optimization problems [26]. But the efficiency of ACO is unsatisfactory since each ant needs to search for a complete solution, and the runtime is rather long [27]. Abedinia et al. [28] introduced a shark smell optimization (SSO) algorithm, which is applied for the solution of load frequency control problem in electrical power systems. The monarch butterfly optimization (MBO) algorithm was first presented by Wang et al. [29], and it simulates the migration behaviors of monarch butterflies in nature. Although most of these heuristic techniques have the ability to provide fast and efficient solution, sometimes they suffer from discovering global optimal solution, slow convergence rate, and several parameters tuning [30]. Until now, the MBO algorithm has become one of the most widely used SIO algorithms, and it has two important operators, the migration operator and the butterfly adjusting operator [31]. The former provides a certain local search capability and the latter gives a global search capability. The search direction of monarch butterflies is mainly determined by the migration operator and the butterfly adjusting operator in MBO. Since the migration operator and the butterfly adjusting operator can be implemented simultaneously, MBO is ideally suited for parallel processing and is capable of making trade-offs between intensification and diversification [32]. In addition, the MBO algorithm has simple calculation process, requires less computational parameters, and is easy to implement by a program. Furthermore, some advantages of MBO are incomparable to many other intelligent optimization algorithms. Therefore, the MBO algorithm and its versions have been widely used in many fields, such as dynamic vehicle routing problem [30], 0-1 knapsack problem [31], neural network straining [32], optimal power flow problem [33], and prevention of osteoporosis [34].In the last few years, in order to improve the performance of MBO, the scholars have made many improvements. In the basic MBO algorithm, after implementing the migration operator, the generated monarch butterfly will be accepted as a new monarch butterfly in the next generation regardless of whether it is better or worse. Then, Hu et al. [35] used self-adaptive and greedy strategies to improve the performance of the basic MBO. However, it suffers greatly from worse standard deviations and average fitness on some benchmarks. Wang et al. [36] developed a different version of MBO with greedy strategy and self-adaptive crossover operator (GCMBO), in which the greedy strategy can accelerate convergent speed and the self-adaptive crossover operator can significantly improve the diversity of population at later run phase of the search. Feng et al. [37] proposed a chaotic MBO algorithm, in which the chaos theory was employed to enhance its global optimization ability. Feng et al. [38] introduced neighborhood mutation with crowding and Gaussian perturbation into MBO algorithm, in which the first strategy enhances the global search ability, while the second strategy strengthens local search ability and prevents premature convergence during the evolution process. At present, the MBO is usually combined with other SIO methods to improve the optimization performance. The main objective is to improve the balance between the characteristics of exploration and exploitation in those algorithms in order to address the issues of trapping in local optimal solution, slow convergence, and low accuracy in complex optimization problems [39]. Ghanem and Jantan [40] presented a metaheuristic algorithm that combined artificial bee colony optimization with the MBO. Ghetas et al. [41] introduced the harmony search algorithm into MBO to enhance the search ability of MBO, in which mutation operators were added to the process of adjusting operator to enhance the exploitation and exploration ability and speed up the convergence rate of MBO. Strumberger et al. [42] incorporated the search mechanism of firefly algorithm (FA) into MBO to overcome this deficiency that in early iterations exceedingly directs the search process toward the current best solution in MBO. However, most of the abovementioned MBO algorithms still easily fall into local optima and are rather slow in convergence. This inspires the authors to investigate new nature-inspired optimization algorithm about MBO.Based on the above analyses of MBO, it is clear that falling into local optima easily is one of the typical disadvantages of MBO, and there are many ways to improve this drawback. The OBL method, proposed by Tizhoosh [43], is one of the most effective methods. It can prevent the algorithm from falling into local optima to some degree. For example, Shang et al. [44] introduced OBL, dynamic inertia weight, and a postprocedure to improve PSO with mutual information as its fitness function to detect SNP-SNP interactions, in which OBL enhances the global explorative ability. Since the poor exploration capabilities of SFLA sometimes get trapped in local optima, which results in poor convergence, Sharma and Pant [45] embedded the OBL into the memeplexes before the frog initiates foraging, which enhances the local search mechanism of SFLA but also improves the diversity. Ahandani and Alavi-Rad [46] used new versions of the SFLA which on the one hand employed the OBL to accelerate the SFLA without making premature convergence and on the other hand used the OBL strategy to diversify search moves of SFLA. Yu et al. [47], inspired by the OBL, improved the performance of the FA, in which the worst firefly is forced to escape from the normal path after OBL operation and can help it to escape from local optima. Yang et al. [48] presented an improved artificial bee colony algorithm based on OBL to overcome the shortcomings of the slow convergence rate and sinking into local optima. Shan et al. [49] embedded the OBL into the bat algorithm to enhance the diversity and convergence capability. Park and Lee [50] combined differential evolution with OBL to obtain a high-quality solution with low-computational effort. Kumar and Sahoo [51] presented a cat swarm optimization (CSO) algorithm via the OBL, which can enhance the diversity of the algorithm. Sarkhel et al. [52] applied OBL to the harmony search algorithm to overcome slow convergence to the globally optimal solutions. Zhang et al. [53] merged the OBL into the biogeography-based optimization algorithm to prevent the algorithm from falling into the local optima. Zhang et al. [54] added the OBL to the GWO (OGWO) to prevent the algorithm from falling into the local optima. In recent years, the OBL has become a widely used technique in optimization algorithms. It is noted that the OBL can increase population diversity and enhance global search ability [55]. If the current best candidate solution falls into the local optima, it may mislead the other candidate solutions into the local optima. However, its opposite is often far from the local optima. Therefore, this paper introduces the OBL into the initial phase of MBO, effectively avoiding the algorithm falling into the local optimum. Furthermore, the opposition-based individuals are generated by the OBL such that the best individual can be accepted. This operation can efficiently prevent the algorithm from falling into the local optima to some extent.What is more, there exists much insufficiency for MBO about its solution search mechanism which may bring the premature convergence and the low search accuracy when solving complex optimization problems [49]. Then, considering that MBO converges very slowly, a perturbation operator strategy can be used to ensure the diversity of monarch butterfly against the premature convergence. For example, Liu et al. [9] designed a perturbation operator strategy in a convergence state to help the best frog to jump out of possible local optima to further increase the performance of SFLA. Wang et al. [56] proposed an improved FOA using swarm collaboration and random perturbation strategy to enhance the performance. Li et al. [57] developed an artificial bee colony algorithm with random perturbations for numerical optimization, in which the self-adaptive population perturbation strategy for the current colony is used by random perturbation to enhance the population diversity. Yu et al. [58] presented a teaching-learning-based optimization with a chaotic perturbation mechanism, which produces many solutions around the current best solution and thereby enhances the searching ability and global convergence. Li et al. [59] utilized the uniformity of Anderson chaotic mapping and performed chaos perturbation to part of particles based on the information of variance of the population’s fitness to avoid the untimely aggregation of particle swarm. Based on the ideas of random perturbation, a novel RLP operator is proposed to prevent premature convergence in this paper, and merged into the migration operator. The improved migration operator with RLP shares the information of excellent individuals, which is conducive to guiding individuals to approach an optimal solution and accelerate convergence, and the works are not considered in previous MBO.The remainder of this paper is organized as follows: Section2 reviews some related theory of the MBO algorithm. In Section 3, the OBL method and RLP-based migration operator are investigated, and the main procedure of improved MBO and its complexity analysis are given. Section 4 describes the experimental results and analysis. Finally, the conclusion is summarized in Section 5.


## 2. Related Work

The theory of the MBO algorithm can be found in [29, 36]. In MBO, all monarch butterfly individuals are idealized and located in only two lands as follows: the northern United States and southern Canada (Land1), and Mexico (Land2). Then, the location of monarch butterflies is updated in two ways, namely, the migration operator and the butterfly adjusting operator. Firstly, the offspring are generated (location update) through the migration operator. Secondly, the location of other monarch butterflies is updated by the butterfly adjusting operator. Thus, the search direction of the monarch butterfly individual is determined by the migration operator and the butterfly adjusting operator. Moreover, the two operators can be performed simultaneously. Therefore, the MBO algorithm is suitable for parallel processing, and it has a good balance of strengthening and diversification. The MBO algorithm abides by the following ideal rules:( 1 ) All the monarch butterflies are located only in Land1 and Land2. Namely, the population of the entire monarch butterflies is composed by the monarch butterflies in Land1 and Land2.( 2 ) The offspring of each monarch butterfly are generated only by the migration operator in Land1 or Land2.( 3 ) To keep the population constant, once a descendant monarch butterfly is produced, a corresponding parent monarch butterfly will disappear.( 4 ) Monarch butterfly individuals with the best fitness automatically enter the next generation without any operation, and then it ensures that the quality of the monarch butterfly population does not decline as the number of iterations increases.The MBO algorithm contains two important operators, which are described as follows.The first operator is the migration operator, whose purpose is to update the migration of the monarch butterflies between Land1 and Land2. The total number of monarch butterflies isNP, and the numbers of monarch butterflies in Land1 and Land2 areNP1= ceil (p×NP) and NP2=NP-NP1, respectively, wherep is the migration rate of monarch butterflies withp = 5/12 in MBO, ceil(x) roundsx to the nearest integer greater than or equal tox, the subpopulation of Land1 is denoted as Subpopulation1, and the subpopulation of Land2 is denoted as Subpopulation2. Then, the migration operator is expressed as(1)xi,kt+1=xr1,kt,r≤pxr2,kt,r>p,where xi,kt+1 is thekth element ofxi in generationt + 1; similarly, xr1,kt denotes thekth element of xr1 in generationt, and xr2,kt is thekth element of xr2 in generationt; the current generation number ist, and the monarch butterfliesr1 andr2 are randomly selected from Subpopulation1 and Subpopulation2, respectively. Here,r is calculated by r=rand×peri, whereperi is the migration period, which is equal to 1. 2 in MBO andrand is a random number in [0,1].The second operator is the butterfly adjusting operator, which is used to update the position of monarch butterfly in Subpopulation2. The formula is described as(2)xj,kt+1=xbest,kt,rand≤pxr3,kt,rand>p&rand≤BARxi,kt+1+α×dxk-0.5,rand>p&rand>BAR,where xj,kt+1 is thekth element ofxj in generationt+1; similarly xbest,kt is thekth element of xbest in generationt, which is the best location for monarch butterflies in Land1 and Land2, xr3,kt is thekth element of xr3 in generationt, the monarch butterflyr3 is randomly selected from Subpopulation2, andBAR is the adjustment rate. IfBAR is less than the random numberrand, thekth element ofxj att + 1 is updated, where α is the weighting factor, and α=Smax/t2, whereSmax is the maximum walk step. In (2),dx is the walk step of butterfliesj that can be calculated by the Levy flight such thatdx =Levy(xjt).


## 3. Improved MBO Algorithm Based on OBL and RLP

### 3.1. Motive of Improving MBO Algorithm

In the MBO algorithm, the migration operator and the butterfly adjusting operator can ensure the search direction of monarch butterflies. Furthermore, the migration operator and the butterfly adjusting operator can be executed simultaneously. The advantages of MBO algorithm include its simplicity and easy implementation. However, the drawbacks of MBO algorithm cause poor optimization efficiency in solving complex optimization problems, which are mainly described from two aspects as follows: First, from (1), the monarch butterfliesr1 andr2 are randomly selected from Subpopulation1 and Subpopulation2, respectively. A worse monarch butterfly may be selected to share its features with a better one, leading to the population degenerating. Second, from the main process of MBO, when the elitist strategy is adopted, the population must be sorted twice during each generation, thus causing high time complexity. Thus, in order to overcome the above drawbacks and improve the optimization efficiency of MBO, several creative improvements are developed in this paper.


### 3.2. Opposition-Based Learning Method

In the fields of computational intelligence, the OBL is usually used to improve the convergence rate of many optimization algorithms. Its main idea is to take into account the current population as well as its opposite population at the same time and further obtain better candidate solution [55]. In recent years, the scholars have applied the OBL method in population-based optimization technique to enhance the convergence rate. It can be concluded that an opposite candidate solution has a better chance to be closer to the global optimum solution than a random candidate solution [51]. The opposite solution of OBL is denoted by the mirror point of the solution from the center of the search space, and then its formula can be mathematically expressed as(3)xi,j′=ai+bi-xi,j,where xi=(xi,1,xi,2,…,xi,D) is a feasible solution in aD-dimensional search space, xi,j=[ai,bj],  j=1,2,…,D, and its opposition-based solution is xi′=(xi,1′,xi,2′,…,xi,D′).Note that if the OBL approach is introduced into the initialization of the MBO algorithm, it can produce the opposition-based population. Then, the better individuals are selected to participate in the evolution from the union of the original populations and the opposition-based populations. Thus, this operation increases the population diversity and expands the exploration scope of MBO.


### 3.3. Random Local Perturbation-Based Migration Operator

To overcome the shortcoming of the premature convergence of MBO, a novel RLP is constructed and merged into the migration operator of the MBO. For this, the RLP strategy can be defined as(4)xi,kt+1=xp,dt+rand×xq,dt-xp,dt,where xpt is an optimal solution in generationt, xqt is a suboptimal solution in generationt, xi,kt+1 is thekth element of theith individual in generationt + 1, xp,dt is thedth element of the optimal solution in generationt, xq,dt is thedth element of the suboptimal solution in generationt, andd can be calculated by d=D×rand.Equation (4) shares the information of the optimal solution and the suboptimal solution, which is conducive to guiding the current individual to move toward the optimal solution and the suboptimal solution. Then, the convergence speed can be effectively accelerated. Meanwhile, to maintain the diversity of the MBO search, a control parameterR is set asR= 0. 5, whereR= 0. 5 is determined through many experiments, and a random numberr from 0 to 1 is generated. Whenr<R, the location updating is performed according to (4); otherwise the location updating is performed according to (1).For the basic MBO, the parameters of the elitist strategy need to be set. In each generation, the population will be sorted twice, which brings about much computation complexity. If the greedy selection method is adopted in MBO, the population at each generation is just sorted once. Thus, the elitist strategy can be replaced by the greedy selection method in the SIO algorithms [53]. Hence, during each generation, the new generated monarch butterflies are compared with the corresponding old ones, and the better one is selected. So, this replacement eliminates the elitist parameters, gets rid of a sorting, and further improves the operation efficiency. It follows that the greedy strategy is introduced into the improved migration operator with RLP, and the superior candidate solution is retained by the principle of survival of the fittest. Here, the greedy strategy can be expressed as(5)xi,newt+1=xit+1,fxit+1<fxitxit,otherwise,where xi,newt+1 is the generationt + 1 of new monarch butterfly individuals, and f(xit+1) and f(xit) represent the fitness values of two monarch butterflies xit+1 and xit, respectively.The special steps of the improved migration operator with RLP are described in Algorithm1.Algorithm 1
for  i = 1 to NP1  do for  k = 1 to D  do R = 0. 5. Set r as a random number in [0,1]. if  r<R  then Calculate xi,kt+1 by Eq. (4). else Calculate xi,kt+1 by Eq. (1). end if end for Calculate xi,newt+1 with greedy strategy by Eq. (5). end forFor Algorithm1, the improved migration operator with RLP shows that our proposed method with sharing information can make full use of the information of the high-quality individuals in the current population, and improve the local optimization ability. Moreover, the greedy strategy only retains individuals who have a better fitness, which efficiently enhances the convergence rate.


### 3.4. Main Procedure of Improved MBO Algorithm

All the above improvements can enhance the optimization performance of the MBO algorithm. The main process of OBL and RLP-based improved MBO (OPMBO) algorithm can be illustrated in Figure1. The special steps of the OPMBO algorithm are provided in Algorithm 2.Algorithm 2
Step  1. Set the population quantity NP, the maximum generation MaxGen, the dimensions D, the max walk step size Smax, the adjusting rate BAR, the migration period peri and the migration rate p. Let the current cycle counter t = 1. //Initialization operation Step  2. Generate the opposition-based population according to OBL. Select the individuals with better fitness to enter the next generation from the original and opposition-based populations. Step  3. Calculate their fitness values according to the location of each monarch butterfly. //Fitness evaluation Step  4.  While  t≤MaxGen  do Sort the population according to monarch butterfly fitness using Quicksort algorithm in [31]. Divide the monarch butterfly population into two subpopulations, i.e., Subpopulation1 and Subpopulation2. for  i = 1 to NP1  do Update Subpopulation1 using Algorithm 1. end for for  j = 1 to NP2  do Update Subpopulation2 by Eq. (2). end for Merge two new subpopulations into a new population. Recalculate the fitness values of each monarch butterfly according to the updated position. Let t=t+1. Step  5. end while Step  6. Output the optimal values.Figure 1
The main process of the OPMBO algorithm.


### 3.5. Complexity Analysis

Under the same software and hardware on all systems, the computational complexity of the optimization algorithm is mainly composed of two parts as follows: one is the complexity of the objective function, and the other is the complexity of the algorithm process. In the comparison experiment, six kinds of SIO algorithms, namely, the MBO algorithm [29], the GCMBO algorithm [36], the OPMBO algorithm, the FOA based on hybrid location information exchange mechanism (HFOA) [60], the GWO algorithm [16], and the OGWO algorithm [54], have the same population number and maximum number of iterations, so that their maximum function evaluation times are equal. Thus, the complexity of OPMBO algorithm mainly focuses on its operation process. For the OPMBO algorithm, the time complexity is polynomial. Assume that the maximum number of iterations of the OPMBO isMaxGen, the population size isNP, the Subpopulation1 isNP1, the Subpopulation2 isNP2 withNP2 =NP – NP1, and the dimension isD. In an effort to avoid confusion and awkward phrasing,MaxGen is replaced byT,NP is replaced byN, andNP1 is replaced byN1. According to Figure 1, the time complexity of the algorithm is mainly determined by each iteration cycle. The detailed analysis of time complexity for OPMBO is as follows: The first step is to calculate the fitness value of the monarch butterflies, and then the time complexity isO(N). The second step is sorting, and the time complexity of Quicksort algorithm in [31] is O(Nlog⁡N). The third step is to divide the population into two subpopulations, and the time complexity isO(N). The fourth step is to firstly run the improved migration operator, which has two inner loops, and then the time complexity is O(N1×D). And secondly for the butterfly adjusting operator, there are two inner loops, whose time complexity is O((N-N1)×D). Therefore, the total time complexity of OPMBO algorithm is T(n)=O(f(n)) = O(T×(N+Nlog⁡N+N+(N1×D)+((N-N1)×D))) = O(T×(2N+Nlog⁡N+N×D))=O(T×Nlog⁡N).In the OPMBO algorithm, since the variable storage space is affected by the population sizeN and the variable dimensionD, the space complexity can be calculate by S(n)=O(f(n))=O(N×D).


## 3.1. Motive of Improving MBO Algorithm

In the MBO algorithm, the migration operator and the butterfly adjusting operator can ensure the search direction of monarch butterflies. Furthermore, the migration operator and the butterfly adjusting operator can be executed simultaneously. The advantages of MBO algorithm include its simplicity and easy implementation. However, the drawbacks of MBO algorithm cause poor optimization efficiency in solving complex optimization problems, which are mainly described from two aspects as follows: First, from (1), the monarch butterfliesr1 andr2 are randomly selected from Subpopulation1 and Subpopulation2, respectively. A worse monarch butterfly may be selected to share its features with a better one, leading to the population degenerating. Second, from the main process of MBO, when the elitist strategy is adopted, the population must be sorted twice during each generation, thus causing high time complexity. Thus, in order to overcome the above drawbacks and improve the optimization efficiency of MBO, several creative improvements are developed in this paper.


## 3.2. Opposition-Based Learning Method

In the fields of computational intelligence, the OBL is usually used to improve the convergence rate of many optimization algorithms. Its main idea is to take into account the current population as well as its opposite population at the same time and further obtain better candidate solution [55]. In recent years, the scholars have applied the OBL method in population-based optimization technique to enhance the convergence rate. It can be concluded that an opposite candidate solution has a better chance to be closer to the global optimum solution than a random candidate solution [51]. The opposite solution of OBL is denoted by the mirror point of the solution from the center of the search space, and then its formula can be mathematically expressed as(3)xi,j′=ai+bi-xi,j,where xi=(xi,1,xi,2,…,xi,D) is a feasible solution in aD-dimensional search space, xi,j=[ai,bj],  j=1,2,…,D, and its opposition-based solution is xi′=(xi,1′,xi,2′,…,xi,D′).Note that if the OBL approach is introduced into the initialization of the MBO algorithm, it can produce the opposition-based population. Then, the better individuals are selected to participate in the evolution from the union of the original populations and the opposition-based populations. Thus, this operation increases the population diversity and expands the exploration scope of MBO.


## 3.3. Random Local Perturbation-Based Migration Operator

To overcome the shortcoming of the premature convergence of MBO, a novel RLP is constructed and merged into the migration operator of the MBO. For this, the RLP strategy can be defined as(4)xi,kt+1=xp,dt+rand×xq,dt-xp,dt,where xpt is an optimal solution in generationt, xqt is a suboptimal solution in generationt, xi,kt+1 is thekth element of theith individual in generationt + 1, xp,dt is thedth element of the optimal solution in generationt, xq,dt is thedth element of the suboptimal solution in generationt, andd can be calculated by d=D×rand.Equation (4) shares the information of the optimal solution and the suboptimal solution, which is conducive to guiding the current individual to move toward the optimal solution and the suboptimal solution. Then, the convergence speed can be effectively accelerated. Meanwhile, to maintain the diversity of the MBO search, a control parameterR is set asR= 0. 5, whereR= 0. 5 is determined through many experiments, and a random numberr from 0 to 1 is generated. Whenr<R, the location updating is performed according to (4); otherwise the location updating is performed according to (1).For the basic MBO, the parameters of the elitist strategy need to be set. In each generation, the population will be sorted twice, which brings about much computation complexity. If the greedy selection method is adopted in MBO, the population at each generation is just sorted once. Thus, the elitist strategy can be replaced by the greedy selection method in the SIO algorithms [53]. Hence, during each generation, the new generated monarch butterflies are compared with the corresponding old ones, and the better one is selected. So, this replacement eliminates the elitist parameters, gets rid of a sorting, and further improves the operation efficiency. It follows that the greedy strategy is introduced into the improved migration operator with RLP, and the superior candidate solution is retained by the principle of survival of the fittest. Here, the greedy strategy can be expressed as(5)xi,newt+1=xit+1,fxit+1<fxitxit,otherwise,where xi,newt+1 is the generationt + 1 of new monarch butterfly individuals, and f(xit+1) and f(xit) represent the fitness values of two monarch butterflies xit+1 and xit, respectively.The special steps of the improved migration operator with RLP are described in Algorithm1.Algorithm 1
for  i = 1 to NP1  do for  k = 1 to D  do R = 0. 5. Set r as a random number in [0,1]. if  r<R  then Calculate xi,kt+1 by Eq. (4). else Calculate xi,kt+1 by Eq. (1). end if end for Calculate xi,newt+1 with greedy strategy by Eq. (5). end forFor Algorithm1, the improved migration operator with RLP shows that our proposed method with sharing information can make full use of the information of the high-quality individuals in the current population, and improve the local optimization ability. Moreover, the greedy strategy only retains individuals who have a better fitness, which efficiently enhances the convergence rate.


## 3.4. Main Procedure of Improved MBO Algorithm

All the above improvements can enhance the optimization performance of the MBO algorithm. The main process of OBL and RLP-based improved MBO (OPMBO) algorithm can be illustrated in Figure1. The special steps of the OPMBO algorithm are provided in Algorithm 2.Algorithm 2
Step  1. Set the population quantity NP, the maximum generation MaxGen, the dimensions D, the max walk step size Smax, the adjusting rate BAR, the migration period peri and the migration rate p. Let the current cycle counter t = 1. //Initialization operation Step  2. Generate the opposition-based population according to OBL. Select the individuals with better fitness to enter the next generation from the original and opposition-based populations. Step  3. Calculate their fitness values according to the location of each monarch butterfly. //Fitness evaluation Step  4.  While  t≤MaxGen  do Sort the population according to monarch butterfly fitness using Quicksort algorithm in [31]. Divide the monarch butterfly population into two subpopulations, i.e., Subpopulation1 and Subpopulation2. for  i = 1 to NP1  do Update Subpopulation1 using Algorithm 1. end for for  j = 1 to NP2  do Update Subpopulation2 by Eq. (2). end for Merge two new subpopulations into a new population. Recalculate the fitness values of each monarch butterfly according to the updated position. Let t=t+1. Step  5. end while Step  6. Output the optimal values.Figure 1
The main process of the OPMBO algorithm.


## 3.5. Complexity Analysis

Under the same software and hardware on all systems, the computational complexity of the optimization algorithm is mainly composed of two parts as follows: one is the complexity of the objective function, and the other is the complexity of the algorithm process. In the comparison experiment, six kinds of SIO algorithms, namely, the MBO algorithm [29], the GCMBO algorithm [36], the OPMBO algorithm, the FOA based on hybrid location information exchange mechanism (HFOA) [60], the GWO algorithm [16], and the OGWO algorithm [54], have the same population number and maximum number of iterations, so that their maximum function evaluation times are equal. Thus, the complexity of OPMBO algorithm mainly focuses on its operation process. For the OPMBO algorithm, the time complexity is polynomial. Assume that the maximum number of iterations of the OPMBO isMaxGen, the population size isNP, the Subpopulation1 isNP1, the Subpopulation2 isNP2 withNP2 =NP – NP1, and the dimension isD. In an effort to avoid confusion and awkward phrasing,MaxGen is replaced byT,NP is replaced byN, andNP1 is replaced byN1. According to Figure 1, the time complexity of the algorithm is mainly determined by each iteration cycle. The detailed analysis of time complexity for OPMBO is as follows: The first step is to calculate the fitness value of the monarch butterflies, and then the time complexity isO(N). The second step is sorting, and the time complexity of Quicksort algorithm in [31] is O(Nlog⁡N). The third step is to divide the population into two subpopulations, and the time complexity isO(N). The fourth step is to firstly run the improved migration operator, which has two inner loops, and then the time complexity is O(N1×D). And secondly for the butterfly adjusting operator, there are two inner loops, whose time complexity is O((N-N1)×D). Therefore, the total time complexity of OPMBO algorithm is T(n)=O(f(n)) = O(T×(N+Nlog⁡N+N+(N1×D)+((N-N1)×D))) = O(T×(2N+Nlog⁡N+N×D))=O(T×Nlog⁡N).In the OPMBO algorithm, since the variable storage space is affected by the population sizeN and the variable dimensionD, the space complexity can be calculate by S(n)=O(f(n))=O(N×D).


## 4. Experimental Results and Analysis

### 4.1. Experiment Preparation

To verify the optimization performance of OPMBO, a series of experiments are performed on various benchmark functions. The test of benchmark functions is a common and popular method to verify the performance of intelligent algorithms. For example, Wang et al. [29] introduced 38 benchmark functions to demonstrate the superior performance of the MBO algorithm, and the results clearly exhibit the capability of the MBO toward finding the enhanced function values on most of the benchmark problems. Wang et al. [36] employed 18 benchmark functions to test the GCMBO algorithm, and the results indicate that GCMBO significantly outperforms the basic MBO method on almost all the test cases. Zhang et al. [53] marked 21 benchmark functions to verify the efficiency of biogeography-based optimization algorithm. Zhang et al. [54] used 30 benchmark functions to illustrate the performance of hybrid algorithm based on biogeography-based optimization and GWO. In our experiments, the typical 12 benchmark functions are selected from [29, 36, 53, 54] to test the performance of our OPMBO algorithm, which can be rigorous to verify the effectiveness of all of the compared algorithms. The information for 12 benchmark functions is shown in Table 1, where theFmin is the minimum value (ideal optimal value) of the function. These benchmark functions can be classified into two different types, unimodal functionsf1-f7 and multimodal functionsf8-f12.Table 1
Overview of 12 benchmark functions.
Function Formula Search range F m i n Sphere f 1 ( x ) =  ∑ i = 1 d x i 2 [ - 5.12,5.12 ] D 0 Quartic f 2 ( x ) =  ∑ i = 1 d i x i 4 + r a n d o m [ 0,1 ) [ - 1.28,1.28 ] D 0 Schwefel 1.2 f 3 ( x ) =  ∑ i = 1 n ∑ j = 1 i x j 2 [ - 100,100 ] D 0 Schwefel 2.21 f 4 ( x ) = max i ⁡ ( | x i | ,  1 ≤ i ≤ d ) [ - 100,100 ] D 0 Schwefel 2.22 f 5 ( x ) =  ∑ i = 1 d x i + ∏ i = 1 d x i [ - 10,10 ] D 0 Step f 6 ( x ) =  ∑ i = 1 d x i + 0.5 2 [ - 100,100 ] D 0 Rosenbrock f 7 ( x ) =  ∑ i = 1 d - 1 x i - 1 2 + 100 x i 2 - x i + 1 2 [ - 10,10 ] D 0 Penalized 1 f 8 ( x ) = π d 10  s i n 2 π y i +  ∑ i = 1 d - 1 ( y i - 1 ) 2 1 + 10  s i n 2 π y i + 1 + y d - 1 2 +  ∑ i = 1 d u ( x i , 10,100,4 ), [ - 50,50 ] D 0 whereyi=1+14xi+1, and u(xi,a,k,m)=k(xi-a)m,xi>a0,-a≤xi≤ak(-xi-a)m,xi<-a Penalized 2 f 9 ( x ) = 0.1 s i n 2 π x 1 +  ∑ i = 1 d - 1 x i - 1 2 1 + s i n 2 3 π x i + 1 x d - 1 1 + s i n 2 2 π x d +  ∑ i = 1 d u ( x i , 5,100,4 ) [ - 50,50 ] D 0 Ackley f 10 ( x ) = - 20 exp ⁡ - 1 5 1 d  ∑ i = 1 d x i 2 - exp ⁡ 1 d  ∑ i = 1 d cos ⁡ 2 π x i + 20 + e [ - 30,30 ] D 0 Schwefel 2.26 f 11 ( x ) = 418.98288727243369 × d -  ∑ i = 1 d x i sin ⁡ x i [ - 500,500 ] D 0 Rastrigin f 12 ( x ) =  ∑ i = 1 d x i 2 - 10 cos ⁡ 2 π x i + 10 [ - 5.12,5.12 ] D 0The experiments were performed on a personal computer running Windows 7 with an Intel(R) Core(TM)CPU operating at 3.10 GHz and 4 GB memory. All the simulation experiments were implemented in MATLAB R2014a.


### 4.2. Comparison of OPMBO with MBO and GCMBO on Different Dimensions

The objective of the following experiments is to show the comparison results of 12 benchmark functions on different dimensions. The two state-of-the-art algorithms, the MBO [29] and the GCMBO [36], are selected as the comparison algorithms to evaluate the effectiveness of the OPMBO. Following the experimental techniques developed by Wang et al. [36] and Zhang et al. [53], the three dimensions of the functions are set as follows: the low-dimensional (20 dimensions), the medium-dimensional (50 dimensions), and the high-dimensional (100 dimensions). As the dimension increases, the difficulty of the problem increases, which verifies that OPMBO has the ability to handle the complex optimization problems. Then, the optimization experiments of the three algorithms (MBO, GCMBO, and OPMBO) are performed on the three different dimensions for the 12 benchmark functions to verify the optimization performance of the OPMBO. The related parameter values for testing the three algorithms are shown in Table 2. Following the experimental techniques designed by Wang et al. [29], theDdescribes the dimension, theMaxGenis the maximum number of iterations, theNP describes the number of monarch butterfly population, and theNumrepresents the independent running times of each optimization problem. It is known that along with the increase of the dimension of the benchmark function, the maximum number of iterationsMaxGen will increase. The monarch butterfly population of the three algorithms is uniformly set to 50, and the other parameters are the same as in [29, 36]. In order to reduce the random error, each method is run 30 times independently for each optimization problem, and the results are the average value of 30 time evaluations. The experimental results for different dimensions (20, 50, and 100 dimensions) on 12 benchmark functions are listed in Tables 3–5, respectively, where the best values are in bold font. Following the experimental techniques designed in [29, 36, 53, 54, 60, 61], the optimal value asBest, the worst value asWorst, the mean value asMean, and the standard deviation asStd of the fitness values of benchmark functions for the 30 independent experimental results are employed to test the MBO, GCMBO, and OPMBO algorithms. Here, Zhang et al. [53] and Wang et al. [36] declared that the lowerMean andStd values indicate a better algorithm with respect to search ability and stability in their experimental analysis.Table 2
The related parameter values for testing the three algorithms.
Dimension D MaxGen NP Num low 20 500 50 30 medium 50 2000 50 30 high 100 5000 50 30Table 3
The comparison results of the three algorithms on the 20-dimensional benchmark functions.
Function Algorithm B e s t W o r s t M e a n Std f1 MBO 2.1817e-08 1056671 10.2897 24.1542 GCMBO 1.4305e-12 2.2191e-08 4.0376e-09 6.1440e-09 OPMBO 1.7124e-18 2.8958e-09 1.9961e-10 5.6832e-10  f2 MBO 2.0696e-05 45.8467 14.1370 14.5827 GCMBO 8.5651e-31 2.7743 0.1784 0.5239 OPMBO 1.1985e-32 1.9515e-25 9.6741e-27 3.6316e-26  f3 MBO 467.5414 2.6400e+04 9.9164e+03 7.0557e+03 GCMBO 5.2744 1.1659e+04 5.7437e+03 3.6304e+03 OPMBO 4.7218e-16 105.8061 12.9713 25.4996  f4 MBO 0.0656 69.6874 34.4202 23.9322 GCMBO 0.8478 65 21.8416 18.9365 OPMBO 6.4794e-08 9.7491 1.3394 2.5359  f5 MBO 2.4859e-04 76.0287 19.5472 24.7662 GCMBO 0 18.8264 2.2732 5.8333 OPMBO 1.2577e-10 6.6586e-06 1.7297e-06 1.8097e-06  f6 MBO 0 38189 8.2961e+03 1.3038e+04 GCMBO 0 2463 9.72000 449.5788 OPMBO 0 0 0 0  f7 MBO 3.2274e-06 3.0575e+03 636.4260 1.0172e+03 GCMBO 1.7541e-07 342.4249 71.0668 96.0405 OPMBO 1.7164e-05 18.6066 14.1968 7.9660  f8 MBO 6.8753e-12 3.3320e+08 4.1706e+07 8.7357e+07 GCMBO 1.0427e-14 4.4128e+06 1.6156e+05 8.0584e+05 OPMBO 1.5705e-32 1.0369e-12 7.8430e-14 2.4871e-13  f9 MBO 4.3862e-10 4.9682e+08 5.5076e+07 1.3686e+08 GCMBO 2.3991e-14 1.1729e+07 7.9503e+05 2.5028e+06 OPMBO 5.6159e-28 5.2997e-12 3.5047e-13 1.0677e-12  f10 MBO 5.0008e-04 20.1443 8.9263 7.9682 GCMBO 1.9918e-06 5.5369 0.2610 1.0806 OPMBO 1.6130e-10 1.6511e-05 6.9485e-06 5.0036e-06  f11 MBO 2.5817e-04 4.8952e+03 2.3067e+03 1.6744e+03 GCMBO 2.5455e-04 3.0729e+03 1.1757e+03 1.0464e+03 OPMBO 2.5455e-04 2.3009e+03 76.6964 420.0823  f12 MBO 1.1262e-04 255.8194 97.2892 96.4221 GCMBO 1.9541e-08 74.1824 10.7346 15.3041 OPMBO 0 2.4978e-07 2.9660e-08 5.3340e-08Table 4
The comparison results of the three algorithms on the 50-dimensional benchmark functions.
Function Algorithm Best Worst Mean Std f 1 MBO 0.1477 398.2232 209.3775 139.9068 GCMBO 1.8428e-13 1.0670e-08 1.1156e-09 2.1500e-09 OPMBO 1.5567e-10 2.7548e-08 8.8554e-09 7.5075e-09  f 2 MBO 0.0034 415.5476 153.3220 142.7727 GCMBO 1.9171e-07 133.2460 19.7500 29.8177 OPMBO 1.2181e-28 6.6022e-23 9.4507e-24 1.6826e-23  f 3 MBO 0.0010 1.6716e+05 7.1776e+04 5.1240e+04 GCMBO 2.3034e+03 7.4799e+04 2.8123e+04 1.7575e+04 OPMBO 9.7152e-10 4.7017e+04 1.9873e+03 8.6490e+03  f 4 MBO 0.0071 90.5485 35.3305 26.7642 GCMBO 0.0299 85.3000 33.9794 21.5405 OPMBO 1.4047e-06 22.7838 4.0685 6.5366  f 5 MBO 0.1832 227.1000 130.7104 79.0919 GCMBO 0 110.2839 23.6658 35.6746 OPMBO 1.0957e-06 7.7733e-05 2.7397e-05 1.6504e-05  f 6 MBO 0 132209 5.1815e+04 5.1859e+04 GCMBO 0 12346 1696 2.9548e+03 OPMBO 0 0 0 0  f 7 MBO 1.3455e-04 1.8360e+04 5.9326e+03 6.2480e+03 GCMBO 3.3925e-09 1.4881e+03 243.2459 353.8553 OPMBO 1.2070e-05 306.7838 46.0623 53.5043  f 8 MBO 3.4589e-11 1.1141e+09 2.4720e+08 4.0804e+08 GCMBO 2.0184e-17 5.4740e+07 3.2179e+06 1.0925e+07 OPMBO 4.5879e-19 9.7859e-13 1.1863e-13 2.1688e-13  f 9 MBO 6.5719e-10 1.9497e+09 3.6131e+08 6.4416e+08 GCMBO 9.8724e-16 1.4513e+08 1.0977e+07 3.1121e+07 OPMBO 1.2994e-16 9.2119e-12 1.9405e-12 2.1819e-12  f 10 MBO 3.0017 20.7867 15.9858 6.1167 GCMBO 6.6066e-07 19.8083 1.9658 4.6606 OPMBO 1.0861e-06 9.8438e-05 4.0379e-05 2.2417e-05  f 1 1 MBO 2.4511e+03 1.6770e+04 1.0050e+04 4.1486e+03 GCMBO 6.3638e-04 8.0438e+03 4.2775e+03 2.7433e+03 OPMBO 6.3638e-04 6.0967e+03 970.1854 2.2072e+03  f 12 MBO 26.7258 851.3496 489.7041 275.3819 GCMBO 1.9838e-10 98.6456 17.8949 31.4580 OPMBO 7.4206e-09 124.9711 4.1657 22.8165Table 5
The comparison results of the three algorithms on the 100-dimensional benchmark functions.
Function Algorithm Best Worst Mean Std f 1 MBO 2.9655e-04 873.4768 483.6526 327.2392 GCMBO 1.6826e-11 200.0985 10.0288 40.1674 OPMBO 1.4014e-08 138.6132 4.8784 25.2979  f 2 MBO 0.0082 1.8812e+03 942.8625 653.6147 GCMBO 4.6673e-05 552.4148 139.0795 154.2869 OPMBO 2.7599e-23 301.3835 15.2540 59.7389  f 3 MBO 326.4544 8.2019e+05 3.6314e+05 1.7811e+05 GCMBO 4.5214e+03 2.4929e+05 1.1272e+05 6.3874e+04 OPMBO 3.8963e-08 1.4750e+05 9.4295e+03 2.8488e+04  f 4 MBO 2.3891 90.9853 38.9181 25.9349 GCMBO 0.7494 90.9000 40.2048 27.9953 OPMBO 1.0715e-05 33.5396 7.8364 9.4976  f 5 MBO 0.0807 484.7000 266.4036 175.1478 GCMBO 5.0299e-07 250.5469 56.1723 71.6008 OPMBO 5.4517e-05 2.2668 0.0760 0.4138  f 6 MBO 433 288070 1.7473e+05 1.0058e+05 GCMBO 0 106666 1.7420e+04 2.8532e+04 OPMBO 0 3 0.1000 0.5477  f7 MBO 0.1632 4.2320e+04 1.3569e+04 1.4322e+04 GCMBO 1.0042e-08 8.8990e+03 1.0016e+03 2.0665e+03 OPMBO 1.9180e-05 6.8818e+03 432.4594 1.2535e+03  f 8 MBO 4.5486e-11 2.9628e+09 8.5431e+08 1.1962e+09 GCMBO 1.1964e-19 3.6385e+08 4.6229e+07 9.5275e+07 OPMBO 8.3732e-13 5.9931e-12 2.9010e-12 1.4209e-12  f 9 MBO 0.9237 5.0861e+09 1.4982e+09 1.7699e+09 GCMBO 3.2011e-15 9.8268e+08 1.3463e+08 2.7277e+08 OPMBO 9.2390e-12 0.4056 0.0135 0.0741  f 10 MBO 3.7907 20.8227 18.6499 3.9959 GCMBO 5.7380e-07 19.9186 8.6313 9.1342 OPMBO 4.5998e-05 1.0344 0.0393 0.1897  f 1 1 MBO 8.2058e+03 3.6580e+04 2.3230e+04 8.9660e+03 GCMBO 0.0013 1.8954e+04 9.3635e+03 5.8928e+03 OPMBO 0.0013 3.1905e+04 6.5790e+03 1.0764e+04  f 12 MBO 262.6423 1.8211e+03 1.4277e+03 422.1270 GCMBO 7.4610e-09 670.2994 113.0140 155.9463 OPMBO 2.1383e-06 665.6871 57.3632 152.5890The first part of this experiment is conducted on the 20 dimensions, and the results are illustrated in Table3. It can be seen from Table 3 that onf1-f4,f8-f10, andf12, the OPMBO algorithm achieves the best optimization results on theBest,Worst,Mean, andStd values. In particular, the theoretical optimal value is obtained by OPMBO onf12. Onf5 andf7, although theBest value of OPMBO is not the best, it has achieved the best optimization results on theWorst,Mean, andStd values. TheBest value of GCMBO is the same as that of OPMBO, but OPMBO achieves the best results for the other values onf11. Onf6, the three algorithms achieve the best value, but theMean andStd values of OPMBO are better. Therefore, the experimental results on the 20-dimensional benchmark function show that the performance of OPMBO is excellent for the low-dimensional functions.In what follows, this portion of our experiment is to be performed on the 50 dimensions, and the results are shown in Table4. The values of OPMBO are not as well as that of GCMBO onf1. However, the OPMBO algorithm achieves the best results onf2-f4,f8, andf9. Both theMean andStd values of OPMBO are optimal onf5 andf10-f12. As the dimensions increase, the optimization performances of MBO and GCMBO decrease severely, whereas OPMBO does not decrease onf6. To more intuitively demonstrate the convergence speed and the local and global search ability of the three algorithms, the convergence curves of the three algorithms of the experimental results on the 50-dimensional functions in Table 4 are shown in Figure 2.Figure 2
The convergence curves of the three algorithms on the 50-dimensional functions.
(a)
f 1 (b)
f 2 (c)
f 3 (d)
f 4 (e)
f 5 (f)
f 6  (g)
f 7 (h)
f 8 (i)
f 9 (j)
f 10 (k)
f 11 (l)
f 12Figure2 shows that forf1, the convergence rate of OPMBO is better than those of MBO and GCMBO in the initial iterations, whereas the convergence of OPMBO is slower than that of GCMBO in later iterations. Overall, both GCMBO and OPMBO have a much better effect than MBO onf1. The convergence speed of OPMBO is clearly faster than those of MBO and GCMBO onf2-f11. Forf2, when iterating to 200 times, the MBO and GCMBO algorithms have stopped, but the OPMBO has been updating the search. So, the convergence of OPMBO is faster. Forf3, although the convergence rate of GCMBO is the best at the beginning, the convergence of OPMBO gradually shows an optimal trend as the iteration progresses. Forf4, the convergence curves of MBO and GCMBO are basically the same, but the curve of OPMBO shows obviously a faster convergence speed. Forf5, from the iteration of 100 times, both MBO and GCMBO are caught in the search stagnation, but the OPMBO gradually has a very fast speed in convergence. Forf6, combining the convergence graph with Table 4, the OPMBO has obtained an ideal optimal value when iterating 100 times. Forf8, although the OPMBO appears to stagnate at 100 iterations, the OPMBO jumps out of the local optimum at 200 iterations. The reason is that the migration operator with RLP of OPMBO makes the algorithm jump out of local optimum to some extent. Forf9-f10, the convergence of OPMBO is much better than those of MBO and GCMBO. Though the convergence of OPMBO is better than MBO and GCMBO onf11 andf7, it is not as well asf10. Thus, the convergence speed of OPMBO is significantly faster than those of the other algorithms, especially onf4-f6 andf9. The convergence of GCMBO is better than those of MBO and OPMBO in early iterations, whereas the convergence of OPMBO is faster than those of the other algorithms in the later iterations onf12. As a result, the OPMBO algorithm outperforms the MBO and GCMBO algorithms from the convergence curves. In conclusion, the performance of OPMBO on the medium-dimensional benchmark function is excellent for the experimental results in Table 4.The third part of this experiment is to be carried out on the 100 dimensions, and the results are demonstrated in Table5. The OPMBO algorithm achieves the excellent performance from Table 5. Although OPMBO is not as good as GCMBO for theStd onf11, it is the best in terms of both theMean andStd values on the other functions. Most importantly, the performance of OPMBO does not decrease with increasing dimensions onf6. Therefore, OPMBO can obtain the best optimization performance on the high-dimensional.From Tables3–5, the GCMBO and OPMBO algorithms have similar results in three different dimensions on the identical benchmark functions, and both are better than MBO onf1. Forf2, the results of OPMBO in all three dimensions are the best. In particular, there is no decline in optimization performance as the dimension rises in the 20-dimensional and 50-dimensional functions. Onf3 andf4, although the OPMBO has achieved the best results, the gap between them is not obvious. The results of OPMBO are superior to the other two algorithms, especially in the 20-dimensional and 50-dimensional functions onf5. It is worth mentioning that OPMBO has achieved an ideal optimal value off6 in three dimensions, which can prove the excellent performance of OPMBO. Onf8, theMean of OPMBO in 20 dimensions is 7.8430e-14, theMean in 50 dimensions is 1.1863e-13, and theMean in 100 dimensions is 2.9010e-12. It follows that the optimization performance of OPMBO does not decrease as the dimension increases. So, the results of the OPMBO are much better than the other two algorithms, regardless of the three dimensions onf9 andf10. Onf11, OPMBO is better than the other two algorithms, except for 100 dimensions. Furthermore, theMean andStd values of OPMBO are the best in three dimensions onf7 andf12. Therefore, the results show that the performance of OPMBO is more outstanding than the other two algorithms on most of the 12 benchmark functions under three different dimensions.According to the above experimental results and analysis, it can be proven that OPMBO not only has great convergence accuracy but also shows better global search capabilities on multimodal functions of three different dimensions, and it is superior to the contrast algorithms with relatively obvious advantages. Since the OPMBO embeds the OBL, the diversity of population has been enhanced and the global exploration ability has been improved. Moreover, the RLP is added to the migration operator such that the information of the better individuals in the population is applied effectively, and the convergence rate of the OPMBO algorithm is greatly improved. In summary, OPMBO has better optimization performance than the other two algorithms whether it is on the unimodal function or the multimodal function. Therefore, all the experimental results show that the OPMBO algorithm is effective and feasible.


### 4.3. Two-Tailed t-Test of the Experimental Results on 100-Dimensional Benchmark Functions

For the experimental results of the 100 dimensions on the 12 benchmark functions in Table5, following the experimental techniques designed by Zhang et al. [61], Table 6 shows the values oft andpfor a two-tailed t-test with a 5% level of significance between the OPMBO algorithm and the other optimization algorithms (MBO and GCMBO), in which ‘‘Better’’, ‘‘Equal’’, and ‘‘Worse’’ indicate that OPMBO is better than, equal to, or worse than the compared methods in this case, respectively.Table 6
The two-tailed t-test of the experimental results on 100-dimensional benchmark functions.
Function OPMBO with MBO OPMBO with GCMBO t p t p f 1 791.0854 0 8.8112 1.4443e-18 f 2 946.4590 0 112.1480 0 f 3 692.0171 0 165.3924 0 f 4 395.9505 0 431.6215 0 f 5 938.4122 0 157.6091 0 f 6 1.2251e+03 0 97.7934 0 f 7 353.7764 0 15.2470 6.6025e-52 f 8 590.1854 0 32.2386 5.0606e-217 f 9 546.0571 0 48.7033 0 f 10 715.0020 0 272.3707 0 f 11 298.9920 0 16.7654 3.0813e-62 f 12 618.5786 0 10.6642 2.0751e-26  Better 12  12 Equal 0  0 Worse 0  0Table6 shows that OPMBO is significantly better than MBO and GCMBO at a 95% confidence level, which demonstrates the excellent performance of the OPMBO algorithm.


### 4.4. Comparison of OPMBO with HFOA on 30 Dimensions and Population Size of 50

This portion of our experiments further concerns the optimization performance of OPMBO on the 30 dimensions and the population size of 50. The OPMBO algorithm is compared with the HFOA algorithm in [60]. Both algorithms have the 30 dimensions on the representative 5 benchmark functions selected from Table 1, and the population size is set as 50. Following the experimental techniques in [60], the results are shown in Table 7, where the bold font indicates the best.Table 7
The comparison results of OPMBO with HFOA on 30 dimensions with a population size of 50.
Function Value HFOA OPMBO f 1 Mean 1.30e−05 1.2160e-08 Std 6.37e−07 1.4345e-08  f 5 Mean 1.82e−02 2.3977e-05 Std 5.45e−04 2.1619e-05  f 6 Mean 0 0 Std 0 0  f 10 Mean 2.65e−03 2.7394e-06 Std 5.67e−05 3.7822e-06  f 12 Mean 2.60e−03 6.2990e-05 Std 1.34e−04 4.4079e-05Both HFOA and OPMBO obtain a theoretical optimal value onf6. However, on the other 4 benchmark functions, OPMBO obviously outperforms the HFOA on theMean andStd values. Hence, the results indicate that the optimization ability of OPMBO is strong. In summary, the OPMBO algorithm outperforms the HFOA algorithm on 30 dimensions and population size of 50.


### 4.5. Comparison of OPMBO with GWO and OGWO on 30 Dimensions and Population Size of 20

To further illustrate the optimization performance of the OPMBO algorithm, similar to Section4.4, the OPMBO is compared with the GWO algorithm [16] and the OGWO algorithm [54]. Both OPMBO and OGWO use the OBL method and have strong comparability. Three algorithms have the 30 dimensions on the representative 5 benchmark functions selected from Table 1, and the population size is 20. Following the experimental techniques designed by Mirjalili et al. [16] and Zhang et al. [54], the experimental results are demonstrated in Table 8, where the best values are in bold font.Table 8
The comparison of OPMBO with two GWOs on 30 dimensions with a population size of 20.
Function Value GWO OGWO OPMBO f 1 Mean 0 0 1.2050e-11 Std 0 0 1.7997e-11  f 2 Mean 1.1120e-03 4.6172e-04 1.5053e-29 Std 7.6128e-04 5.6910e-04 2.5417e-29  f 4 Mean 0 0 1.5287 Std 0 0 2.2393  f 7 Mean 2.6505e+01 2.4281e+01 31.0143 Std 5.2458e-01 4.6388e-01 38.9259  f 8 Mean 4.6138e-02 1.7570e-06 1.4067e-15 Std 2.1483e-02 5.9634e-07 3.6039e-15Table8 shows that although the results of OPMBO are not as well as those of GWO and OGWO onf1,f4, andf7, OPMBO is better than GWO and OGWO onf2 andf8. In conclusion, the optimization performance of OPMBO is better than those of GWO and OGWO on benchmark functions.


### 4.6. Comparison of Clustering Optimization with Six SIO Algorithms

Clustering is a way of the grouping of objects or data according to similar criteria, which is done by a group of data items close to each other based on several criteria [62]. Data clustering refers to maximizing the similarity of the members in a group (or cluster) as much as possible and minimizing the similarity of the members in two different groups as much as possible [53]. One of the well-known techniques to handle the clustering problem is to convert the clustering problem into an optimization problem. Then, the clustering problem can be solved by any optimization algorithm [63]. That is, clustering itself can be stated as an optimization problem, so it can be solved by the SIO algorithms [54]. Many scholars have been devoted to solving clustering problem using SIO techniques [62–70].For a data space, letX be the data set withn number of objects or patterns, and each object is ofm dimension, where X={X1,X2,…,Xn}, and X∈Rn×m. Then, a clusteringC can be represented asK clusters {G1,G2,…,Gk}, such that it must satisfy the following conditions:(1)⋃i=1KGi=X, whereGi refers to theith cluster.(2)Gi≠Ø, where i=1,2,…,K.(3)Gi∩Gj=Ø, where i≠j,  i,j=1,2,…,K.(4)sim(X1,X2) >sim(X1,Y1), where X1,X2∈Gi and Y1∈Gj,  i≠j.It is known that the clustering can be achieved by various well-known similarity measures. In this experiment, when the numeric data is analyzed, the Euclidean distance is introduced to measure the similarity degree between two objects. Since each individual of OPMBO is viewed as a candidate solution for the clustering optimization problem, a fitness value of the individual is used as an objective function value of the corresponding candidate solution. What is more, when the solution minimizes the objective function value, the best can be achieved. Then, the formula of the objective function [53] is described as(6)f=∑k=1K∑Xi∈GkdXi,Zk,whereZk represents thekth clustering center, and d(Xi,Zk)=Xi–Zk indicates the Euclidean distance between twom dimensional objectsXi andZk.In Table9, 13 data sets are adopted to test the clustering optimization performance of our proposed algorithm. The specifications of the 13 data sets are shown in Table 9, in which Mydata can be downloaded at http://yarpiz.com/64/ypml101-evolutionary-clustering, and the other 12 data sets are taken from UCI Machine Learning Repository, which can be downloaded at http://archive.ics.uci.edu/ml/datasets.htm.Table 9
Overview of the thirteen data sets.
Data set Samples Attributes Clusters Mydata 300 2 3 Abalone 4177 8 3 Balance Scale 625 4 3 Car 1728 6 4 Heart 270 13 2 Liver Disorders 345 7 2 Soy bean 47 35 4 Statlog 270 13 2 Yeast 2417 103 14 Zoo 101 17 7 Iris 150 4 3 Wine 178 13 3 Glass 214 9 6The first section of this experiment is to illustrate the efficiency of clustering optimization on the selected 10 data sets from Table9 with three MBO algorithms, which include the MBO, GCMBO, and OPMBO algorithms. The common parameter values of all three algorithms are set as follows: the population sizeN is 50, the maximum number of iterationsMaxGen is 200, and the independent run number on each data set is 30. Following the experimental techniques designed in [29, 36], theMean indicates the average minimum distance between each spatial point and the center of each cluster, theStd describes the standard deviation value, and then the comparison results are shown in Table 10, where the bold font indicates the best.Table 10
The comparison results of clustering optimization on the three different MBO algorithms.
Dataset Value MBO GCMBO OPMBO Mydata mean 1.8159 1.7644 1.5715 std 0.1740 0.1710 0.1382  Abalone mean 1.8487 1.8430 1.6846 std 0.1259 0.1135 0.0904  Balance Scale mean 2.3613 2.3647 2.3250 std 0.0237 0.0238 0.0147  Car mean 2.0465 2.0478 2.0125 std 0.0227 0.0214 0.0193  Heart mean 52.6973 53.0394 48.2396 std 3.5966 3.5950 3.3478  Liver Disorders mean 46.1680 44.4722 39.9735 std 5.0187 4.2370 3.5294  Soy bean mean 3.5825 3.6082 3.3619 std 0.0852 0.0891 0.0715  Statlog mean 92.6813 92.3759 86.4422 std 12.2853 12.2129 10.6546  Yeast mean 0.3879 0.4006 0.3579 std 0.0352 0.0402 0.0286  Zoo mean 2.3883 2.3986 2.3412 std 0.0725 0.0716 0.0666From Table10, the OPMBO obtains the bestMean andStd values on all the 10 data sets. TheMean values of OPMBO are about nearly 5-6% larger than GCMBO and nearly 4-7% on the Heart, Liver Disorders, and Statlog data sets, respectively. However, the different values ofStd with the OPMBO, MBO, and GCMBO algorithms on the three data sets are approximately 1%. Although the OPMBO achieves the largest values ofMean andStd on the other seven data sets, it is obvious that the values of OPMBO compared with MBO and GCMBO are very close.The following part of this experiment further concerns the clustering optimization performance on the selected three data sets from Table9 with the four kinds of different optimization algorithms, which include the OPMBO, the PSO algorithm [5], the FA algorithm [42, 69], and the cuckoo search (CS) algorithm [70]. The related parameter values of OPMBO are the same as [5, 69, 70], where the population sizeN is 40, the maximum number of iterationsMaxGen is 200, and the independent run number on each data set is 20. Following the experimental techniques designed in [5, 42, 69, 70], similar to Section 4.2, theBest,Worst,Mean, andStd of the fitness values can be obtained. The comparison results are illustrated in Table 11, where the bold font indicates the best.Table 11
The comparison of the clustering optimizations on the four different optimization algorithms.
Data set Algorithm Best Worst Mean Std Iris PSO 80.576 153.232 116.128 22.435 FA 81.176 152.347 106.476 19.547 CS 80.647 152.348 100.45 17.623 OPMBO 142.8859 199.5001 184.8284 14.7271  Wine PSO 16529651 17292036 17019639 185396 FA 16695182 17963968 16962938 172644 CS 16209233 17325656 16940862 262499 OPMBO 1.6856e+04 2.0190e+04 1.8219e+04 913.9988  Glass PSO 687.347 1140.445 882.098 115.025 FA 1023.533 1110.698 1079.931 22.597 CS 729.658 1095.603 957.901 81.275 OPMBO 612.3864 688.3899 653.4392 21.1229It can be observed from Table11 that OPMBO exhibits the largest values ofBest,Worst,Mean, andStd on the Wine and Glass data sets, except for Iris. For Wine, the values ofBest,Worst,Mean, andStd achieved by the PSO, FA, and CS algorithms are 1000 times larger than those of the OPMBO algorithm. For Glass, the values ofBest,Worst, andMean achieved by the FA are 400-450 larger than those of OPMBO. However, the value ofStdof OPMBO is close to that of FA. Meanwhile, the value ofStdof the PSO is nearly 100 larger than that of OPMBO. For Iris, the value ofStdof the OPMBO is 3-8 less than that of PSO, FA, and CS. However, the values ofBest,Worst, andMean obtained by the OPMBO are 40-80 larger than those of PSO, FA, and CS. The reason is that the Iris data set may have too few attributes so that the OPMBO algorithm performs very poorly inMean. In general, the OPMBO algorithm can obtain satisfactory results in solving the clustering optimization problems.


## 4.1. Experiment Preparation

To verify the optimization performance of OPMBO, a series of experiments are performed on various benchmark functions. The test of benchmark functions is a common and popular method to verify the performance of intelligent algorithms. For example, Wang et al. [29] introduced 38 benchmark functions to demonstrate the superior performance of the MBO algorithm, and the results clearly exhibit the capability of the MBO toward finding the enhanced function values on most of the benchmark problems. Wang et al. [36] employed 18 benchmark functions to test the GCMBO algorithm, and the results indicate that GCMBO significantly outperforms the basic MBO method on almost all the test cases. Zhang et al. [53] marked 21 benchmark functions to verify the efficiency of biogeography-based optimization algorithm. Zhang et al. [54] used 30 benchmark functions to illustrate the performance of hybrid algorithm based on biogeography-based optimization and GWO. In our experiments, the typical 12 benchmark functions are selected from [29, 36, 53, 54] to test the performance of our OPMBO algorithm, which can be rigorous to verify the effectiveness of all of the compared algorithms. The information for 12 benchmark functions is shown in Table 1, where theFmin is the minimum value (ideal optimal value) of the function. These benchmark functions can be classified into two different types, unimodal functionsf1-f7 and multimodal functionsf8-f12.Table 1
Overview of 12 benchmark functions.
Function Formula Search range F m i n Sphere f 1 ( x ) =  ∑ i = 1 d x i 2 [ - 5.12,5.12 ] D 0 Quartic f 2 ( x ) =  ∑ i = 1 d i x i 4 + r a n d o m [ 0,1 ) [ - 1.28,1.28 ] D 0 Schwefel 1.2 f 3 ( x ) =  ∑ i = 1 n ∑ j = 1 i x j 2 [ - 100,100 ] D 0 Schwefel 2.21 f 4 ( x ) = max i ⁡ ( | x i | ,  1 ≤ i ≤ d ) [ - 100,100 ] D 0 Schwefel 2.22 f 5 ( x ) =  ∑ i = 1 d x i + ∏ i = 1 d x i [ - 10,10 ] D 0 Step f 6 ( x ) =  ∑ i = 1 d x i + 0.5 2 [ - 100,100 ] D 0 Rosenbrock f 7 ( x ) =  ∑ i = 1 d - 1 x i - 1 2 + 100 x i 2 - x i + 1 2 [ - 10,10 ] D 0 Penalized 1 f 8 ( x ) = π d 10  s i n 2 π y i +  ∑ i = 1 d - 1 ( y i - 1 ) 2 1 + 10  s i n 2 π y i + 1 + y d - 1 2 +  ∑ i = 1 d u ( x i , 10,100,4 ), [ - 50,50 ] D 0 whereyi=1+14xi+1, and u(xi,a,k,m)=k(xi-a)m,xi>a0,-a≤xi≤ak(-xi-a)m,xi<-a Penalized 2 f 9 ( x ) = 0.1 s i n 2 π x 1 +  ∑ i = 1 d - 1 x i - 1 2 1 + s i n 2 3 π x i + 1 x d - 1 1 + s i n 2 2 π x d +  ∑ i = 1 d u ( x i , 5,100,4 ) [ - 50,50 ] D 0 Ackley f 10 ( x ) = - 20 exp ⁡ - 1 5 1 d  ∑ i = 1 d x i 2 - exp ⁡ 1 d  ∑ i = 1 d cos ⁡ 2 π x i + 20 + e [ - 30,30 ] D 0 Schwefel 2.26 f 11 ( x ) = 418.98288727243369 × d -  ∑ i = 1 d x i sin ⁡ x i [ - 500,500 ] D 0 Rastrigin f 12 ( x ) =  ∑ i = 1 d x i 2 - 10 cos ⁡ 2 π x i + 10 [ - 5.12,5.12 ] D 0The experiments were performed on a personal computer running Windows 7 with an Intel(R) Core(TM)CPU operating at 3.10 GHz and 4 GB memory. All the simulation experiments were implemented in MATLAB R2014a.


## 4.2. Comparison of OPMBO with MBO and GCMBO on Different Dimensions

The objective of the following experiments is to show the comparison results of 12 benchmark functions on different dimensions. The two state-of-the-art algorithms, the MBO [29] and the GCMBO [36], are selected as the comparison algorithms to evaluate the effectiveness of the OPMBO. Following the experimental techniques developed by Wang et al. [36] and Zhang et al. [53], the three dimensions of the functions are set as follows: the low-dimensional (20 dimensions), the medium-dimensional (50 dimensions), and the high-dimensional (100 dimensions). As the dimension increases, the difficulty of the problem increases, which verifies that OPMBO has the ability to handle the complex optimization problems. Then, the optimization experiments of the three algorithms (MBO, GCMBO, and OPMBO) are performed on the three different dimensions for the 12 benchmark functions to verify the optimization performance of the OPMBO. The related parameter values for testing the three algorithms are shown in Table 2. Following the experimental techniques designed by Wang et al. [29], theDdescribes the dimension, theMaxGenis the maximum number of iterations, theNP describes the number of monarch butterfly population, and theNumrepresents the independent running times of each optimization problem. It is known that along with the increase of the dimension of the benchmark function, the maximum number of iterationsMaxGen will increase. The monarch butterfly population of the three algorithms is uniformly set to 50, and the other parameters are the same as in [29, 36]. In order to reduce the random error, each method is run 30 times independently for each optimization problem, and the results are the average value of 30 time evaluations. The experimental results for different dimensions (20, 50, and 100 dimensions) on 12 benchmark functions are listed in Tables 3–5, respectively, where the best values are in bold font. Following the experimental techniques designed in [29, 36, 53, 54, 60, 61], the optimal value asBest, the worst value asWorst, the mean value asMean, and the standard deviation asStd of the fitness values of benchmark functions for the 30 independent experimental results are employed to test the MBO, GCMBO, and OPMBO algorithms. Here, Zhang et al. [53] and Wang et al. [36] declared that the lowerMean andStd values indicate a better algorithm with respect to search ability and stability in their experimental analysis.Table 2
The related parameter values for testing the three algorithms.
Dimension D MaxGen NP Num low 20 500 50 30 medium 50 2000 50 30 high 100 5000 50 30Table 3
The comparison results of the three algorithms on the 20-dimensional benchmark functions.
Function Algorithm B e s t W o r s t M e a n Std f1 MBO 2.1817e-08 1056671 10.2897 24.1542 GCMBO 1.4305e-12 2.2191e-08 4.0376e-09 6.1440e-09 OPMBO 1.7124e-18 2.8958e-09 1.9961e-10 5.6832e-10  f2 MBO 2.0696e-05 45.8467 14.1370 14.5827 GCMBO 8.5651e-31 2.7743 0.1784 0.5239 OPMBO 1.1985e-32 1.9515e-25 9.6741e-27 3.6316e-26  f3 MBO 467.5414 2.6400e+04 9.9164e+03 7.0557e+03 GCMBO 5.2744 1.1659e+04 5.7437e+03 3.6304e+03 OPMBO 4.7218e-16 105.8061 12.9713 25.4996  f4 MBO 0.0656 69.6874 34.4202 23.9322 GCMBO 0.8478 65 21.8416 18.9365 OPMBO 6.4794e-08 9.7491 1.3394 2.5359  f5 MBO 2.4859e-04 76.0287 19.5472 24.7662 GCMBO 0 18.8264 2.2732 5.8333 OPMBO 1.2577e-10 6.6586e-06 1.7297e-06 1.8097e-06  f6 MBO 0 38189 8.2961e+03 1.3038e+04 GCMBO 0 2463 9.72000 449.5788 OPMBO 0 0 0 0  f7 MBO 3.2274e-06 3.0575e+03 636.4260 1.0172e+03 GCMBO 1.7541e-07 342.4249 71.0668 96.0405 OPMBO 1.7164e-05 18.6066 14.1968 7.9660  f8 MBO 6.8753e-12 3.3320e+08 4.1706e+07 8.7357e+07 GCMBO 1.0427e-14 4.4128e+06 1.6156e+05 8.0584e+05 OPMBO 1.5705e-32 1.0369e-12 7.8430e-14 2.4871e-13  f9 MBO 4.3862e-10 4.9682e+08 5.5076e+07 1.3686e+08 GCMBO 2.3991e-14 1.1729e+07 7.9503e+05 2.5028e+06 OPMBO 5.6159e-28 5.2997e-12 3.5047e-13 1.0677e-12  f10 MBO 5.0008e-04 20.1443 8.9263 7.9682 GCMBO 1.9918e-06 5.5369 0.2610 1.0806 OPMBO 1.6130e-10 1.6511e-05 6.9485e-06 5.0036e-06  f11 MBO 2.5817e-04 4.8952e+03 2.3067e+03 1.6744e+03 GCMBO 2.5455e-04 3.0729e+03 1.1757e+03 1.0464e+03 OPMBO 2.5455e-04 2.3009e+03 76.6964 420.0823  f12 MBO 1.1262e-04 255.8194 97.2892 96.4221 GCMBO 1.9541e-08 74.1824 10.7346 15.3041 OPMBO 0 2.4978e-07 2.9660e-08 5.3340e-08Table 4
The comparison results of the three algorithms on the 50-dimensional benchmark functions.
Function Algorithm Best Worst Mean Std f 1 MBO 0.1477 398.2232 209.3775 139.9068 GCMBO 1.8428e-13 1.0670e-08 1.1156e-09 2.1500e-09 OPMBO 1.5567e-10 2.7548e-08 8.8554e-09 7.5075e-09  f 2 MBO 0.0034 415.5476 153.3220 142.7727 GCMBO 1.9171e-07 133.2460 19.7500 29.8177 OPMBO 1.2181e-28 6.6022e-23 9.4507e-24 1.6826e-23  f 3 MBO 0.0010 1.6716e+05 7.1776e+04 5.1240e+04 GCMBO 2.3034e+03 7.4799e+04 2.8123e+04 1.7575e+04 OPMBO 9.7152e-10 4.7017e+04 1.9873e+03 8.6490e+03  f 4 MBO 0.0071 90.5485 35.3305 26.7642 GCMBO 0.0299 85.3000 33.9794 21.5405 OPMBO 1.4047e-06 22.7838 4.0685 6.5366  f 5 MBO 0.1832 227.1000 130.7104 79.0919 GCMBO 0 110.2839 23.6658 35.6746 OPMBO 1.0957e-06 7.7733e-05 2.7397e-05 1.6504e-05  f 6 MBO 0 132209 5.1815e+04 5.1859e+04 GCMBO 0 12346 1696 2.9548e+03 OPMBO 0 0 0 0  f 7 MBO 1.3455e-04 1.8360e+04 5.9326e+03 6.2480e+03 GCMBO 3.3925e-09 1.4881e+03 243.2459 353.8553 OPMBO 1.2070e-05 306.7838 46.0623 53.5043  f 8 MBO 3.4589e-11 1.1141e+09 2.4720e+08 4.0804e+08 GCMBO 2.0184e-17 5.4740e+07 3.2179e+06 1.0925e+07 OPMBO 4.5879e-19 9.7859e-13 1.1863e-13 2.1688e-13  f 9 MBO 6.5719e-10 1.9497e+09 3.6131e+08 6.4416e+08 GCMBO 9.8724e-16 1.4513e+08 1.0977e+07 3.1121e+07 OPMBO 1.2994e-16 9.2119e-12 1.9405e-12 2.1819e-12  f 10 MBO 3.0017 20.7867 15.9858 6.1167 GCMBO 6.6066e-07 19.8083 1.9658 4.6606 OPMBO 1.0861e-06 9.8438e-05 4.0379e-05 2.2417e-05  f 1 1 MBO 2.4511e+03 1.6770e+04 1.0050e+04 4.1486e+03 GCMBO 6.3638e-04 8.0438e+03 4.2775e+03 2.7433e+03 OPMBO 6.3638e-04 6.0967e+03 970.1854 2.2072e+03  f 12 MBO 26.7258 851.3496 489.7041 275.3819 GCMBO 1.9838e-10 98.6456 17.8949 31.4580 OPMBO 7.4206e-09 124.9711 4.1657 22.8165Table 5
The comparison results of the three algorithms on the 100-dimensional benchmark functions.
Function Algorithm Best Worst Mean Std f 1 MBO 2.9655e-04 873.4768 483.6526 327.2392 GCMBO 1.6826e-11 200.0985 10.0288 40.1674 OPMBO 1.4014e-08 138.6132 4.8784 25.2979  f 2 MBO 0.0082 1.8812e+03 942.8625 653.6147 GCMBO 4.6673e-05 552.4148 139.0795 154.2869 OPMBO 2.7599e-23 301.3835 15.2540 59.7389  f 3 MBO 326.4544 8.2019e+05 3.6314e+05 1.7811e+05 GCMBO 4.5214e+03 2.4929e+05 1.1272e+05 6.3874e+04 OPMBO 3.8963e-08 1.4750e+05 9.4295e+03 2.8488e+04  f 4 MBO 2.3891 90.9853 38.9181 25.9349 GCMBO 0.7494 90.9000 40.2048 27.9953 OPMBO 1.0715e-05 33.5396 7.8364 9.4976  f 5 MBO 0.0807 484.7000 266.4036 175.1478 GCMBO 5.0299e-07 250.5469 56.1723 71.6008 OPMBO 5.4517e-05 2.2668 0.0760 0.4138  f 6 MBO 433 288070 1.7473e+05 1.0058e+05 GCMBO 0 106666 1.7420e+04 2.8532e+04 OPMBO 0 3 0.1000 0.5477  f7 MBO 0.1632 4.2320e+04 1.3569e+04 1.4322e+04 GCMBO 1.0042e-08 8.8990e+03 1.0016e+03 2.0665e+03 OPMBO 1.9180e-05 6.8818e+03 432.4594 1.2535e+03  f 8 MBO 4.5486e-11 2.9628e+09 8.5431e+08 1.1962e+09 GCMBO 1.1964e-19 3.6385e+08 4.6229e+07 9.5275e+07 OPMBO 8.3732e-13 5.9931e-12 2.9010e-12 1.4209e-12  f 9 MBO 0.9237 5.0861e+09 1.4982e+09 1.7699e+09 GCMBO 3.2011e-15 9.8268e+08 1.3463e+08 2.7277e+08 OPMBO 9.2390e-12 0.4056 0.0135 0.0741  f 10 MBO 3.7907 20.8227 18.6499 3.9959 GCMBO 5.7380e-07 19.9186 8.6313 9.1342 OPMBO 4.5998e-05 1.0344 0.0393 0.1897  f 1 1 MBO 8.2058e+03 3.6580e+04 2.3230e+04 8.9660e+03 GCMBO 0.0013 1.8954e+04 9.3635e+03 5.8928e+03 OPMBO 0.0013 3.1905e+04 6.5790e+03 1.0764e+04  f 12 MBO 262.6423 1.8211e+03 1.4277e+03 422.1270 GCMBO 7.4610e-09 670.2994 113.0140 155.9463 OPMBO 2.1383e-06 665.6871 57.3632 152.5890The first part of this experiment is conducted on the 20 dimensions, and the results are illustrated in Table3. It can be seen from Table 3 that onf1-f4,f8-f10, andf12, the OPMBO algorithm achieves the best optimization results on theBest,Worst,Mean, andStd values. In particular, the theoretical optimal value is obtained by OPMBO onf12. Onf5 andf7, although theBest value of OPMBO is not the best, it has achieved the best optimization results on theWorst,Mean, andStd values. TheBest value of GCMBO is the same as that of OPMBO, but OPMBO achieves the best results for the other values onf11. Onf6, the three algorithms achieve the best value, but theMean andStd values of OPMBO are better. Therefore, the experimental results on the 20-dimensional benchmark function show that the performance of OPMBO is excellent for the low-dimensional functions.In what follows, this portion of our experiment is to be performed on the 50 dimensions, and the results are shown in Table4. The values of OPMBO are not as well as that of GCMBO onf1. However, the OPMBO algorithm achieves the best results onf2-f4,f8, andf9. Both theMean andStd values of OPMBO are optimal onf5 andf10-f12. As the dimensions increase, the optimization performances of MBO and GCMBO decrease severely, whereas OPMBO does not decrease onf6. To more intuitively demonstrate the convergence speed and the local and global search ability of the three algorithms, the convergence curves of the three algorithms of the experimental results on the 50-dimensional functions in Table 4 are shown in Figure 2.Figure 2
The convergence curves of the three algorithms on the 50-dimensional functions.
(a)
f 1 (b)
f 2 (c)
f 3 (d)
f 4 (e)
f 5 (f)
f 6  (g)
f 7 (h)
f 8 (i)
f 9 (j)
f 10 (k)
f 11 (l)
f 12Figure2 shows that forf1, the convergence rate of OPMBO is better than those of MBO and GCMBO in the initial iterations, whereas the convergence of OPMBO is slower than that of GCMBO in later iterations. Overall, both GCMBO and OPMBO have a much better effect than MBO onf1. The convergence speed of OPMBO is clearly faster than those of MBO and GCMBO onf2-f11. Forf2, when iterating to 200 times, the MBO and GCMBO algorithms have stopped, but the OPMBO has been updating the search. So, the convergence of OPMBO is faster. Forf3, although the convergence rate of GCMBO is the best at the beginning, the convergence of OPMBO gradually shows an optimal trend as the iteration progresses. Forf4, the convergence curves of MBO and GCMBO are basically the same, but the curve of OPMBO shows obviously a faster convergence speed. Forf5, from the iteration of 100 times, both MBO and GCMBO are caught in the search stagnation, but the OPMBO gradually has a very fast speed in convergence. Forf6, combining the convergence graph with Table 4, the OPMBO has obtained an ideal optimal value when iterating 100 times. Forf8, although the OPMBO appears to stagnate at 100 iterations, the OPMBO jumps out of the local optimum at 200 iterations. The reason is that the migration operator with RLP of OPMBO makes the algorithm jump out of local optimum to some extent. Forf9-f10, the convergence of OPMBO is much better than those of MBO and GCMBO. Though the convergence of OPMBO is better than MBO and GCMBO onf11 andf7, it is not as well asf10. Thus, the convergence speed of OPMBO is significantly faster than those of the other algorithms, especially onf4-f6 andf9. The convergence of GCMBO is better than those of MBO and OPMBO in early iterations, whereas the convergence of OPMBO is faster than those of the other algorithms in the later iterations onf12. As a result, the OPMBO algorithm outperforms the MBO and GCMBO algorithms from the convergence curves. In conclusion, the performance of OPMBO on the medium-dimensional benchmark function is excellent for the experimental results in Table 4.The third part of this experiment is to be carried out on the 100 dimensions, and the results are demonstrated in Table5. The OPMBO algorithm achieves the excellent performance from Table 5. Although OPMBO is not as good as GCMBO for theStd onf11, it is the best in terms of both theMean andStd values on the other functions. Most importantly, the performance of OPMBO does not decrease with increasing dimensions onf6. Therefore, OPMBO can obtain the best optimization performance on the high-dimensional.From Tables3–5, the GCMBO and OPMBO algorithms have similar results in three different dimensions on the identical benchmark functions, and both are better than MBO onf1. Forf2, the results of OPMBO in all three dimensions are the best. In particular, there is no decline in optimization performance as the dimension rises in the 20-dimensional and 50-dimensional functions. Onf3 andf4, although the OPMBO has achieved the best results, the gap between them is not obvious. The results of OPMBO are superior to the other two algorithms, especially in the 20-dimensional and 50-dimensional functions onf5. It is worth mentioning that OPMBO has achieved an ideal optimal value off6 in three dimensions, which can prove the excellent performance of OPMBO. Onf8, theMean of OPMBO in 20 dimensions is 7.8430e-14, theMean in 50 dimensions is 1.1863e-13, and theMean in 100 dimensions is 2.9010e-12. It follows that the optimization performance of OPMBO does not decrease as the dimension increases. So, the results of the OPMBO are much better than the other two algorithms, regardless of the three dimensions onf9 andf10. Onf11, OPMBO is better than the other two algorithms, except for 100 dimensions. Furthermore, theMean andStd values of OPMBO are the best in three dimensions onf7 andf12. Therefore, the results show that the performance of OPMBO is more outstanding than the other two algorithms on most of the 12 benchmark functions under three different dimensions.According to the above experimental results and analysis, it can be proven that OPMBO not only has great convergence accuracy but also shows better global search capabilities on multimodal functions of three different dimensions, and it is superior to the contrast algorithms with relatively obvious advantages. Since the OPMBO embeds the OBL, the diversity of population has been enhanced and the global exploration ability has been improved. Moreover, the RLP is added to the migration operator such that the information of the better individuals in the population is applied effectively, and the convergence rate of the OPMBO algorithm is greatly improved. In summary, OPMBO has better optimization performance than the other two algorithms whether it is on the unimodal function or the multimodal function. Therefore, all the experimental results show that the OPMBO algorithm is effective and feasible.


## 4.3. Two-Tailed t-Test of the Experimental Results on 100-Dimensional Benchmark Functions

For the experimental results of the 100 dimensions on the 12 benchmark functions in Table5, following the experimental techniques designed by Zhang et al. [61], Table 6 shows the values oft andpfor a two-tailed t-test with a 5% level of significance between the OPMBO algorithm and the other optimization algorithms (MBO and GCMBO), in which ‘‘Better’’, ‘‘Equal’’, and ‘‘Worse’’ indicate that OPMBO is better than, equal to, or worse than the compared methods in this case, respectively.Table 6
The two-tailed t-test of the experimental results on 100-dimensional benchmark functions.
Function OPMBO with MBO OPMBO with GCMBO t p t p f 1 791.0854 0 8.8112 1.4443e-18 f 2 946.4590 0 112.1480 0 f 3 692.0171 0 165.3924 0 f 4 395.9505 0 431.6215 0 f 5 938.4122 0 157.6091 0 f 6 1.2251e+03 0 97.7934 0 f 7 353.7764 0 15.2470 6.6025e-52 f 8 590.1854 0 32.2386 5.0606e-217 f 9 546.0571 0 48.7033 0 f 10 715.0020 0 272.3707 0 f 11 298.9920 0 16.7654 3.0813e-62 f 12 618.5786 0 10.6642 2.0751e-26  Better 12  12 Equal 0  0 Worse 0  0Table6 shows that OPMBO is significantly better than MBO and GCMBO at a 95% confidence level, which demonstrates the excellent performance of the OPMBO algorithm.


## 4.4. Comparison of OPMBO with HFOA on 30 Dimensions and Population Size of 50

This portion of our experiments further concerns the optimization performance of OPMBO on the 30 dimensions and the population size of 50. The OPMBO algorithm is compared with the HFOA algorithm in [60]. Both algorithms have the 30 dimensions on the representative 5 benchmark functions selected from Table 1, and the population size is set as 50. Following the experimental techniques in [60], the results are shown in Table 7, where the bold font indicates the best.Table 7
The comparison results of OPMBO with HFOA on 30 dimensions with a population size of 50.
Function Value HFOA OPMBO f 1 Mean 1.30e−05 1.2160e-08 Std 6.37e−07 1.4345e-08  f 5 Mean 1.82e−02 2.3977e-05 Std 5.45e−04 2.1619e-05  f 6 Mean 0 0 Std 0 0  f 10 Mean 2.65e−03 2.7394e-06 Std 5.67e−05 3.7822e-06  f 12 Mean 2.60e−03 6.2990e-05 Std 1.34e−04 4.4079e-05Both HFOA and OPMBO obtain a theoretical optimal value onf6. However, on the other 4 benchmark functions, OPMBO obviously outperforms the HFOA on theMean andStd values. Hence, the results indicate that the optimization ability of OPMBO is strong. In summary, the OPMBO algorithm outperforms the HFOA algorithm on 30 dimensions and population size of 50.


## 4.5. Comparison of OPMBO with GWO and OGWO on 30 Dimensions and Population Size of 20

To further illustrate the optimization performance of the OPMBO algorithm, similar to Section4.4, the OPMBO is compared with the GWO algorithm [16] and the OGWO algorithm [54]. Both OPMBO and OGWO use the OBL method and have strong comparability. Three algorithms have the 30 dimensions on the representative 5 benchmark functions selected from Table 1, and the population size is 20. Following the experimental techniques designed by Mirjalili et al. [16] and Zhang et al. [54], the experimental results are demonstrated in Table 8, where the best values are in bold font.Table 8
The comparison of OPMBO with two GWOs on 30 dimensions with a population size of 20.
Function Value GWO OGWO OPMBO f 1 Mean 0 0 1.2050e-11 Std 0 0 1.7997e-11  f 2 Mean 1.1120e-03 4.6172e-04 1.5053e-29 Std 7.6128e-04 5.6910e-04 2.5417e-29  f 4 Mean 0 0 1.5287 Std 0 0 2.2393  f 7 Mean 2.6505e+01 2.4281e+01 31.0143 Std 5.2458e-01 4.6388e-01 38.9259  f 8 Mean 4.6138e-02 1.7570e-06 1.4067e-15 Std 2.1483e-02 5.9634e-07 3.6039e-15Table8 shows that although the results of OPMBO are not as well as those of GWO and OGWO onf1,f4, andf7, OPMBO is better than GWO and OGWO onf2 andf8. In conclusion, the optimization performance of OPMBO is better than those of GWO and OGWO on benchmark functions.


## 4.6. Comparison of Clustering Optimization with Six SIO Algorithms

Clustering is a way of the grouping of objects or data according to similar criteria, which is done by a group of data items close to each other based on several criteria [62]. Data clustering refers to maximizing the similarity of the members in a group (or cluster) as much as possible and minimizing the similarity of the members in two different groups as much as possible [53]. One of the well-known techniques to handle the clustering problem is to convert the clustering problem into an optimization problem. Then, the clustering problem can be solved by any optimization algorithm [63]. That is, clustering itself can be stated as an optimization problem, so it can be solved by the SIO algorithms [54]. Many scholars have been devoted to solving clustering problem using SIO techniques [62–70].For a data space, letX be the data set withn number of objects or patterns, and each object is ofm dimension, where X={X1,X2,…,Xn}, and X∈Rn×m. Then, a clusteringC can be represented asK clusters {G1,G2,…,Gk}, such that it must satisfy the following conditions:(1)⋃i=1KGi=X, whereGi refers to theith cluster.(2)Gi≠Ø, where i=1,2,…,K.(3)Gi∩Gj=Ø, where i≠j,  i,j=1,2,…,K.(4)sim(X1,X2) >sim(X1,Y1), where X1,X2∈Gi and Y1∈Gj,  i≠j.It is known that the clustering can be achieved by various well-known similarity measures. In this experiment, when the numeric data is analyzed, the Euclidean distance is introduced to measure the similarity degree between two objects. Since each individual of OPMBO is viewed as a candidate solution for the clustering optimization problem, a fitness value of the individual is used as an objective function value of the corresponding candidate solution. What is more, when the solution minimizes the objective function value, the best can be achieved. Then, the formula of the objective function [53] is described as(6)f=∑k=1K∑Xi∈GkdXi,Zk,whereZk represents thekth clustering center, and d(Xi,Zk)=Xi–Zk indicates the Euclidean distance between twom dimensional objectsXi andZk.In Table9, 13 data sets are adopted to test the clustering optimization performance of our proposed algorithm. The specifications of the 13 data sets are shown in Table 9, in which Mydata can be downloaded at http://yarpiz.com/64/ypml101-evolutionary-clustering, and the other 12 data sets are taken from UCI Machine Learning Repository, which can be downloaded at http://archive.ics.uci.edu/ml/datasets.htm.Table 9
Overview of the thirteen data sets.
Data set Samples Attributes Clusters Mydata 300 2 3 Abalone 4177 8 3 Balance Scale 625 4 3 Car 1728 6 4 Heart 270 13 2 Liver Disorders 345 7 2 Soy bean 47 35 4 Statlog 270 13 2 Yeast 2417 103 14 Zoo 101 17 7 Iris 150 4 3 Wine 178 13 3 Glass 214 9 6The first section of this experiment is to illustrate the efficiency of clustering optimization on the selected 10 data sets from Table9 with three MBO algorithms, which include the MBO, GCMBO, and OPMBO algorithms. The common parameter values of all three algorithms are set as follows: the population sizeN is 50, the maximum number of iterationsMaxGen is 200, and the independent run number on each data set is 30. Following the experimental techniques designed in [29, 36], theMean indicates the average minimum distance between each spatial point and the center of each cluster, theStd describes the standard deviation value, and then the comparison results are shown in Table 10, where the bold font indicates the best.Table 10
The comparison results of clustering optimization on the three different MBO algorithms.
Dataset Value MBO GCMBO OPMBO Mydata mean 1.8159 1.7644 1.5715 std 0.1740 0.1710 0.1382  Abalone mean 1.8487 1.8430 1.6846 std 0.1259 0.1135 0.0904  Balance Scale mean 2.3613 2.3647 2.3250 std 0.0237 0.0238 0.0147  Car mean 2.0465 2.0478 2.0125 std 0.0227 0.0214 0.0193  Heart mean 52.6973 53.0394 48.2396 std 3.5966 3.5950 3.3478  Liver Disorders mean 46.1680 44.4722 39.9735 std 5.0187 4.2370 3.5294  Soy bean mean 3.5825 3.6082 3.3619 std 0.0852 0.0891 0.0715  Statlog mean 92.6813 92.3759 86.4422 std 12.2853 12.2129 10.6546  Yeast mean 0.3879 0.4006 0.3579 std 0.0352 0.0402 0.0286  Zoo mean 2.3883 2.3986 2.3412 std 0.0725 0.0716 0.0666From Table10, the OPMBO obtains the bestMean andStd values on all the 10 data sets. TheMean values of OPMBO are about nearly 5-6% larger than GCMBO and nearly 4-7% on the Heart, Liver Disorders, and Statlog data sets, respectively. However, the different values ofStd with the OPMBO, MBO, and GCMBO algorithms on the three data sets are approximately 1%. Although the OPMBO achieves the largest values ofMean andStd on the other seven data sets, it is obvious that the values of OPMBO compared with MBO and GCMBO are very close.The following part of this experiment further concerns the clustering optimization performance on the selected three data sets from Table9 with the four kinds of different optimization algorithms, which include the OPMBO, the PSO algorithm [5], the FA algorithm [42, 69], and the cuckoo search (CS) algorithm [70]. The related parameter values of OPMBO are the same as [5, 69, 70], where the population sizeN is 40, the maximum number of iterationsMaxGen is 200, and the independent run number on each data set is 20. Following the experimental techniques designed in [5, 42, 69, 70], similar to Section 4.2, theBest,Worst,Mean, andStd of the fitness values can be obtained. The comparison results are illustrated in Table 11, where the bold font indicates the best.Table 11
The comparison of the clustering optimizations on the four different optimization algorithms.
Data set Algorithm Best Worst Mean Std Iris PSO 80.576 153.232 116.128 22.435 FA 81.176 152.347 106.476 19.547 CS 80.647 152.348 100.45 17.623 OPMBO 142.8859 199.5001 184.8284 14.7271  Wine PSO 16529651 17292036 17019639 185396 FA 16695182 17963968 16962938 172644 CS 16209233 17325656 16940862 262499 OPMBO 1.6856e+04 2.0190e+04 1.8219e+04 913.9988  Glass PSO 687.347 1140.445 882.098 115.025 FA 1023.533 1110.698 1079.931 22.597 CS 729.658 1095.603 957.901 81.275 OPMBO 612.3864 688.3899 653.4392 21.1229It can be observed from Table11 that OPMBO exhibits the largest values ofBest,Worst,Mean, andStd on the Wine and Glass data sets, except for Iris. For Wine, the values ofBest,Worst,Mean, andStd achieved by the PSO, FA, and CS algorithms are 1000 times larger than those of the OPMBO algorithm. For Glass, the values ofBest,Worst, andMean achieved by the FA are 400-450 larger than those of OPMBO. However, the value ofStdof OPMBO is close to that of FA. Meanwhile, the value ofStdof the PSO is nearly 100 larger than that of OPMBO. For Iris, the value ofStdof the OPMBO is 3-8 less than that of PSO, FA, and CS. However, the values ofBest,Worst, andMean obtained by the OPMBO are 40-80 larger than those of PSO, FA, and CS. The reason is that the Iris data set may have too few attributes so that the OPMBO algorithm performs very poorly inMean. In general, the OPMBO algorithm can obtain satisfactory results in solving the clustering optimization problems.


## 5. Conclusion and Future Work

Recently, SIO algorithms have been widely employed for solving complex optimization problems. MBO as one of the most promising SIO methods is proposed to tackle global optimization problems. In order to improve the optimization efficiency of MBO algorithm and obtain an algorithm with strong universal applicability, this paper introduces OBL into MBO and proposes RLP to improved basic MBO algorithm. The improvements are mainly from two aspects, one is to enhance the optimization performance and the other is to reduce the computation complexity. The OBL firstly prevents the algorithm from falling into the local optima to some degree. A new RLP is merged into the migration operator, which can enhance the local search ability and accelerate the convergence speed. Then, the greedy strategy is used instead of the elitist strategy, and it can decrease the setting of elite parameters and eliminate a sorting operation. Finally, the OPMBO algorithm is proposed, and to verify the optimization performance of OPMBO, a series of experiments are performed on 12 benchmark functions and 13 public data sets. The results verify that our OPMBO algorithm typically outperforms the other algorithms considered. Based on the comparison and analysis of our scheme with other schemes, the contribution of our proposed method can be summarized as follows:( 1 ) The OBL as a widely used technique in optimization algorithms is introduced into the MBO algorithm, an opposite candidate solution generated by OBL has a better chance to be closer to the global optimum solution than a random candidate solution, and then this process can efficiently avoid the MBO from falling into a local optimum.( 2 ) The RLP is proposed to merge into the migration operator, which shares the information of the optimal solution and the suboptimal solution, and it is helpful to guide the current individual to move toward the optimal solution and the suboptimal solution. Then, the premature convergence of MBO can be eliminated effectively.( 3 ) A greedy strategy is introduced into the improved migration operator with RLP, and the superior candidate solution is retained by the principle of survival of the fittest. This operation eliminates the elitist parameters, gets rid of a sorting, and further improves the operation efficiency.( 4 ) Since each individual of OPMBO is viewed as a candidate solution for clustering optimization problem, a fitness value of the individual is used as an objective function value of the corresponding candidate solution. When the solution minimizes the objective function value, the best can be achieved. Then, the OPMBO algorithm can be applied to solve clustering optimization on public data sets.It is well-known that there is not any SIO algorithm that can effectively solve all optimization problems, and then in our experiments the OPMBO algorithm cannot obtain the satisfactory results on some benchmark functions. In our future work, some interesting problems can be further studied. We intend to hybridize MBO with the latest SIO methods, further improve the OPMBO algorithm, and use it to resolve multiobjective optimization problems. Furthermore, the OPMBO will be applied to other engineering fields.



---

*Source: 4182148-2019-02-10.xml*