Mathematical Problems in Engineering
Volume 2018 (2018), Article ID 6906295, 16 pages
https://doi.org/10.1155/2018/6906295

Research Article

Biological Flower Pollination Algorithm with Orthogonal Learning Strategy and Catfish Effect Mechanism for Global Optimization Problems

Weijia Cui and Yuzhu He

School of Instrumentation Science and Opto-Electronics Engineering, Beihang University, Beijing 100191, China

Correspondence should be addressed to Weijia Cui; cuiweijia@buaa.edu.cn

Received 20 November 2017; Revised 13 February 2018; Accepted 25 February 2018; Published 8 April 2018

Academic Editor: Ricardo Soto

Copyright © 2018 Weijia Cui and Yuzhu He. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Abstract.

The flower pollination algorithm (FPA) is a novel optimization technique derived from the pollination behavior of flowers. However, the shortcomings of the FPA, such as a tendency towards premature convergence and poor exploitation ability, confine its application in engineering problems. To further strengthen FPA optimization performance, an orthogonal learning (OL) strategy based on orthogonal experiment design (OED) is embedded into the local pollination operator. OED can predict the optimal factor level combination by constructing a smaller but representative test set based on an orthogonal array. Using this characteristic of OED, the OL strategy can extract a promising solution from various sources of experience information, which leads the population to a potentially reasonable search direction. Moreover, the catfish effect mechanism is introduced to focus on the worst individuals during the iteration process. This mechanism explores new valuable information and maintains superior population diversity. The experimental results on benchmark functions show that our proposed algorithm significantly enhances the performance of the basic FPA and offers stronger competitiveness than several state-of-the-art algorithms.

1. Introduction

Conventional optimization methods face serious challenges in modern sciences because the characteristics of optimization problems are often noncontinuous, nonlinear, multivariate, or nonconvex [1]. Currently, swarm intelligence algorithms are efficiently used to solve complex optimization problems. Most swarm intelligence algorithms are developed by simulation of foraging behavior, migration patterns, or the evolutionary approach in natural species, and these algorithms include the genetic algorithm (GA) [2], particle swarm optimization (PSO) [3], differential evolution (DE) [4], shuffled frog leaping algorithm (SFLA) [5], biogeography-based optimization (BBO) [6], cuckoo search (CS) [7], krill herd algorithm (KH) [8], fruit fly optimization (FFO) [9], pigeon inspired optimization (PIO) [10], invasive weed optimization (IWO) [11], and bat algorithm (BA) [12].

As a novel heuristic algorithm, the flower pollination algorithm (FPA) is inspired by the pollination behavior of flowers. In nature, the pollination methods for flowers involve two main types: cross-pollination and self-pollination [13]. In cross-pollination, certain birds act as global pollinators that transfer pollen to the flowers of more distant plants. By contrast, in self-pollination, pollen is spread by the wind and only between adjacent flowers at the same plant. As such, the FPA is developed by mapping the two forms of cross-pollination and self-pollination into global pollination and local pollination operators, respectively. The FPA has attracted significant attention due to its merits of simple principles, few parameters, and ease of operation.

However, similar to other swarm intelligence algorithms, the FPA also suffers from a lack of perfect compromise between global exploration and local exploitation. Therefore, researchers have proposed various improved strategies to enhance the FPA search ability. Nabil [14] introduced the clone selection mechanism into the local pollination operator to obtain more accurate solutions. Hoang et al. [15] integrated the mutation, cross, and selection operators of DE to replace the original update method for local pollination. Zhou et al. [16] developed the elite opposition mechanism, the local self-adaptive greedy strategy, and a dynamic switch probability method to balance exploration and exploitation. Salgotra and Singh [17] analyzed the influence of the various mutation techniques on the performance of the basic FPA. These variants exhibited excellent performance on benchmark functions. Additionally, the FPA has achieved favorable results in selected practical engineering applications. Abdelaziz et al. [18] used the basic FPA to solve the economic load dispatch problem. Wang et al. [19] conducted cluster analysis using bee pollinator-based FPA. Zhang et al. [20] proposed a chaotic local search-based FPA to forecast wind speed. Xu et al. [21] hybridized the FPA with the good point set theory and Deb’s heuristic rules to identify multipass turning parameters. Salgotra and Singh [22] implemented the bat algorithm and the FPA in parallel to synthesize the linear antenna arrays.

As is known to all, standard FPA adopts the differential learning method to achieve the global exploration and refine exploitation. However, this simple evolution pattern is inefficient and presents some drawbacks. First, the random search behavior around the current individual is lack of an effective mechanism to avoid the premature convergence; moreover, the update formula works on the complete solution vector rather than dimension by dimension; it may cause the consequence of “two steps forward, on step back” [23]. The main reason is that different solution vectors may contain different qualities of components; thus some high-quality components at some dimensions may improve the current individual, while some inferior components may result in a degeneration phenomenon at some certain dimensions. Through the above analysis, how to keep the population diversity and make better use of the various experience information to exploit the higher-quality solution becomes the critical factors of improving the optimizing capability.

Orthogonal experiment design (OED) as a typically analytical tool of experiment scheme can effectively predict the best combination of levels at different factors through choosing a smaller but most representative test set. In this paper, considering that potentially valuable information might exist in certain dimensions in different candidate solution vectors, an OL strategy based on orthogonal experiment design (OED) [24] is developed to obtain more promising candidate solution by combining the useful information among the best individual, current individual, and a random selected individual. In this way, the convergence accuracy and speed would be significantly improved. However, although OL strategy can improve the optimizing efficiency, the algorithm still suffers from the loss of diversity. To overcome this problem, the catfish effect mechanism [25, 26] is introduced to enhance the population diversity by replacing the worst individuals with their own opposition information. Specifically, as the iterations progress, the worst individuals are coming closer and closer to the best individual, and once the algorithm traps into the local convergence, catfish effect mechanism can drive the worst subpopulation to explore the new region. In this way, the population diversity is kept. In sum, the incorporation of OL strategy and catfish effect mechanism into the FPA guarantees the search stability of algorithm and can effectively improve the convergence performance. The experimental results demonstrate that our proposed algorithm is superior to the original FPA and other advanced evolutionary algorithms in testing on benchmark functions.

The remainder of this paper is described as follows. Section 2 describes the model of global optimization problems, Section 3 reviews the principle of FPA in detail, Section 4 elaborates on the OL strategy and catfish effect mechanism, Section 5 demonstrates the optimization performance of OCFPA on the benchmark functions, and Section 6 summarizes the conclusions.

2. Global Optimization Problems

Many engineering problems can be considered as global optimization problems [27, 28], which can be described as follows:

where is the vector form of the decision variable, is the number of decision variables, is the objective function, defines the decision space (i.e., the search space of the optimization algorithm), and and are the lower and upper limits of decision variable , respectively. Global optimization problem is to obtain the best decision variable SX by minimizing or maximizing the object function .

3. Flower Pollination Algorithm

The FPA is a population-based global optimization algorithm. In [13], Yang et al. summarized the characteristics of the flower pollination process into four ideal rules as follows.

Rule 1. Cross-pollination conducted by the pollinators such as birds is viewed as a global pollination phase and the pollinators act with levy flight behavior.

Rule 2. Self-pollination occurring on the nearby flowers is viewed as a local pollination process.

Rule 3. The flower constancy is treated as the reproductive rate, which is direct ratio with the similar level of two involved flowers.

Rule 4. Global pollination and local pollination are implemented based on a switch probability.

According to the above rules, the FPA contains a global pollination operator and a local pollination operator. In the FPA, each pollen item is treated as a solution , and the solutions are initialized with random vectors in the feasible search space. The initial formula is given as follows:

where , NP is the population size; is a -dimensional random vector in ; the lower limit of search space is Lower = , and the upper limit is Upper = .

In the global pollination operation, pollinators such as birds have a relatively large movement range and can carry pollen over a long distance. Thus, Rules 1 and 3 are formulated as follows:

where is the solution at iteration , is the current global best solution, is a step factor, the flight feature of birds can be numerically imitated by a levy distribution denoted by in (3), and can also be considered a varying step factor to quantify the intensity of pollination. The levy distribution when can be described as follows:

where is the standard gamma function with and is determined with two Gaussian distributions and as follows:

where denotes the normal distribution with the mean value 0 and variance ; denotes the standard normal distribution.

If the pollination activities involve local pollination, then pollen are spread to a local neighbor, and the model can be formulated with Rules 2 and 3 as follows:

where and are the pollen randomly selected from different flowers in the same plant, where and and is a -dimensional random vector in . In addition, from Rule 4, the two pollination activities occur randomly and are determined by a probability . In other words, if a random value rand in is smaller than , then global pollination is conducted, otherwise, vice versa. The flowchart of the FPA is shown in Figure 1.

Figure 1: Flowchart of the FPA.

4. OCFPA

4.1. Orthogonal Experimental Design

It is assumed that an experimental system contains factors and levels per factor. To obtain the best combination of levels from each factor, the direct method is used to assess the overall combinations. However, the calculation cost of this process is relatively high, particularly when and are large. Although OED can achieve this purpose by testing only a smaller number of experiments, OED is performed based on an orthogonal array (OA) and factor analysis (FA) [29].

The OA denoted by is used to create the most representative combinations for OED, where represents the OA, , and is a minimum integer that satisfies . Additionally, the OA is constructed by generating the basic columns and nonbasic columns; the detailed procedures are given in [24]. In this work, an example of OA is shown in (7). It is clear that there are 6 factors (column number), two levels per factor (1 or 2), and 8 combinations (row number).

To more clearly illustrate the use of OED, a four-dimensional SumSqurare function, that is, , is chosen as a test case. In this case, there are four factors (designated , , , and ), and each factor has two levels: = and = . Because a subarray of an OA is also an OA, the first four columns of are chosen as the OA of this case. In Table 1, each row corresponds to a combination such as , , , and in combination 1 or , , , and in combination 2. Thus, 8 combinations are constructed by combining the various levels of the factors based on the OA. All combinations are tested based on the function formula, and the evaluation results are also given in Table 1.

Table 1: OA of the test case.

Combination
Factors

= 163

= 355

= 101

= 293

= 232

= 424

= 74

= 266

FA is used to further measure the average effect of each level at each factor based on the evaluation results . The FA can effectively obtain the most beneficial level at each factor and then may predict one better combination of levels. The average effect of level of factor is computed by the following formula:

where is the evaluation result of combination , and if the level of factor in combination is , = 1; otherwise, = 0. For a minimization problem, the smaller the value of is, the better the level is at factor . The procedure of FA in this case is shown in Table 2. We can see that a new combination = in the FA result is discovered by choosing the level with a smaller at each factor, and, apparently, the evaluation result is superior to .

Table 2: FA of the test case.

Factor
Level

FA result

A
2
( + + + )/4 = 228
2 ()
53

5
( + + + )/4 = 249

B
8
( + + + )/4 = 293.5
3 ()

3
( + + + )/4 = 183.5

C
3
( + + + )/4 = 214.5
3 ()

5
( + + + )/4 = 262.5

D
1
( + + + )/4 = 142.5
1 ()

7
( + + + )/4 = 334.5

4.2. OL Strategy

In the local pollination operator, the exploitation ability of differential search patterns is limited [30]. To enhance the performance, an OL strategy based on OED is incorporated into the local search phase. The motivation for this choice is that by applying the principle of OED, OL can systematically and reasonably combine the useful information on each dimension from various individuals, and a high-quality solution can be implemented to effectively guide the population towards a promising search direction.

To add sufficient information to the search, the OL strategy should act on three individuals: one is the current best individual used to supply the advanced guidance information, and the other two are the current individual and a randomly selected individual , which are used to share their search experiences and enrich the diversity of information. Thus, a novel local update method of is formed based on the OL strategy as follows:

In OL, the factor number corresponds to the problem dimensionality , and the level number in each factor is equal to the number of the selected individuals, that is, 3. Once the OL strategy is implemented, the value of level at dimension can be determined:

Subsequently, candidate solutions are generated based on OA as follows:

The candidate solutions are evaluated by the specified objective function, and the FA is conducted. The implementation of the OL strategy is shown in Algorithm 1.

Input

    Number of factors ( = ) and number of levels ( = 3).

    Three individuals: , , .

    Objective function (solution) of minimization or maximization problems.

    Number of fitness evaluations FEs = 0.

Output

    OL result.

Begin

    % Construct the OA based on and .

    Compute the minimum integer that satisfies ()/() = , then .

    Construct an OA based on [24].

    % Compute the value of each level at each dimension by using (10).

    For

         = = ; = .

    End for

    Generate solutions based on .

    The solution vectors are formulated as Equation (11).

    % Evaluate the solutions with objective function.

    The results are: .

    % Accumulate the number of fitness evaluations.

    FEs = FEs + .

    % Choose the best solution .

     =   or  .

    % Compute the average effect of each level at each dimension  .

    For

    % Find the row index that having the same level at dimension d based on OA.

    % Compute the mean value of fitness results according to the index vector.

        Index_1 = find (OA(:, ) == 1), = mean((Index_1));

        Index_2 = find (OA(:, ) == 2), = mean((Index_2));

        Index_3 = find (OA(:, ) == 3), = mean((Index_3));

        Compare , , , select the most beneficial level at dimension .

    End for

    Construct by combining all the most beneficial level values .

    Compare and , and choose the best one as the OL result.

End

Algorithm 1: OL strategy.

As shown in steps (16)–(21) of Algorithm 1, it should be noted that each execution of OL increases fitness evaluations. Taking a 30-dimensional problem, for example, when OL strategy works on three individuals, there are 3⁴ = 81 solutions to be generated based on OA and then evaluated by the specified objective function. Therefore, the use of OL strategy will result in larger computational complexity. To maintain the computational efficiency at every iteration, the OL strategy is applied only when the current solution enters into local pollination and the index is equal to the random integer , where . In this manner, the local exploitation ability can be enhanced with smaller consumption of computational overhead.

4.3. Catfish Effect Mechanism

In real life, to maintain the freshness of sardines, fishermen always place catfish into a sardine pond. The catfish disturb the living environment of the sardines to activate their survival ability. The catfish effect is derived from this phenomenon and has been successfully incorporated into PSO [25, 26].

To avoid the premature convergence in the FPA, the catfish effect mechanism is introduced to force the worst individuals to explore new regions and obtain potentially better candidate solutions. The working principle of this mechanism is that if the fitness value of the current best solution has not been enhanced in consecutive iterations, the worst “sardine” individuals WX in 10% of the population are replaced with new “catfish” individuals CX. In this paper, the “catfish” individual is considered an opposition solution of the “sardine” individual and can be computed as follows:

where is the index of the “sardine” individuals. The catfish effect mechanism is shown in Algorithm 2.

Input

    Number of population NP, population dimensionality .

    Current iteration number , current iterative population .

    Objective function of minimization or maximization problems.

    The storage vector of historical best fitness.

    Consecutive iteration number .

Output

     “Catfish” individuals CX.

Begin

    If

    % The global best individual has not improved in consecutive iterations.

        If

    % Sort the population from good to bad based on fitness.

         sort_f, sort_ind = sort((SX)).

    % Choose 10% worst individuals as WX based on sort_ind.

         WX = SX(sort_ind .

    % Generate the “catfish” individuals CX by using (12).

         For to the number of WX

            For

                .

            End for

         End for

         Compute the fitness value .

        End if

        Replace all the worst individuals WX with “catfish” individuals .

    End if

End

Algorithm 2: Catfish effect mechanism.

4.4. Main Procedure of the OCFPA

By embedding the OL strategy and catfish effect mechanism into the basic FPA, the modified method OCFPA is developed. To better demonstrate our proposed algorithm, the complete pseudocode of the OCFPA is shown in Algorithm 3.

Input

    Pollen .

    Objective function of minimization or maximization problems.

    Number of pollen (NP), number of fitness evaluations (FEs).

    Switch probability (), step factor ().

Output

    Global best pollen ().

Begin

    % Initialize the population of pollen randomly.

    For to number of pollen (NP)

        .

        Compute the fitness value and store it.

    End for

    The pollen with the best fitness value is chosen as the current best pollen.

    While (the maximum number of fitness evaluations is not reached)

     Draw a random integer  .

        For to number of pollen (NP)

        If a random number in < switch probability (p)

        % conduct global pollination.

          ().

        Else

        % conduct local pollination.

            If  

                Draw a random vector .

                Draw two random integers j and .

                .

            Else

         Generate  byPerforming OL strategy according to Algorithm  1.

            End if

        End if

         Compute the fitness value .

         Update if the current individual is superior to its previous one.

        End for

        Find the pollen with the best fitness in the population.

        Update   if the current best pollen beats the previous best pollen.

        Perform catfish effect mechanism according to Algorithm  2.

        Return to the next generation until stop criterion is reached.

    End while

    Output .

End

Algorithm 3: The pseudocode of the OCFPA.

5. Experimental Verification and Comparisons

To verify the effectiveness of our proposed algorithm, fourteen benchmark functions [31, 32] were tested. Table 3 lists the information for each function, including the function name, scope of variables, optimal solution, and global optimum. As such, – are unimodal functions used primarily to test the optimal efficiency, and – are multimodal functions used primarily to test the ability to escape local optima. The parameter settings of FPA and OCFPA are and . The number of consecutive iterations in catfish effect mechanism is set to 7. To guarantee fairness of comparison, the population size NP and fitness evaluations FEs are set to 20 and 2 × 10⁵, respectively. All statistical results are obtained with 30 independent runs using the involved algorithms. The better results are marked in bold. The subsequent experiments are executed on a PC with a 3.2 GHz CPU and 2.5 GB memory running the Windows XP operating system.

Table 3: Benchmark functions.

Function name
Scope
Optimal solution
Optimum

Sphere function
[−100, 100]D

0

Quartic function with noise
[−1.28, 1.28]D

0

High conditioned elliptic function
[−100, 100]D

0

Rosenbrock function
[−30, 30]D

0

Schwefel problem 2.22 function
[−10, 10]D

0

Step function
[−100, 100]D

0

Dixon-price function
[−10, 10]D

0

Schwefel function
[−500, 500]D

−418.9829D

Rastrigin function
[−5.12, 5.12]D

0

Griewank function
[−600, 600]D

0

Ackley function
[−32, 32]D

0

Noncontinuous rastrigin function
[−5.12, 5.12]D

0

Generalized penalized function 1
[−10, 10]D

0

Generalized penalized function 2
[−10, 10]D

0

5.1. Comparison of FPA and OCFPA

This subsection investigates the improvement degree of our proposed algorithm against the basic FPA. Table 4 lists the statistical results, including the mean and standard deviation values (Std), for the FPA and OCFPA. From Table 4, the OCFPA is superior to the FPA on all benchmark functions. In solving the unimodal functions, the OCFPA finds better solutions than the FPA on , , , and , and although it is challenging to find the global optima of and due to their complex function characteristics, the OCFPA still outperforms the FPA. The results indicate that the OCFPA has excellent exploitation ability and optimal efficiency. In addition, for multimodal functions – with many local optima, the OCFPA achieves global or near-global optimal solutions and surpasses the FPA in accuracy and robustness. This result indicates that the OCFPA can avoid local convergence and obtain more accurate solutions. In short, the comparative results illustrate that our proposed algorithm has a faster optimal speed and can converge to a higher accuracy than the basic FPA.

Table 4: Comparison of the FPA and OCFPA ().

FPA
OCFPA

Mean
Std
Mean
Std

1.56E − 25
3.20E − 25
1.09E − 86
3.27E − 86

3.37E − 02
1.56E − 02
1.70E − 03
9.08E − 04

6.89E − 22
2.10E − 21
2.09E − 81
7.67E − 81

2.41E + 01
1.81E + 01
1.08E + 01
7.11E + 00

5.51E − 17
6.12E − 17
2.38E − 47
6.13E − 47

0
0
0
0

5.94E − 21
3.25E − 20
1.36E − 86
4.54E − 86

−10308
4.92E + 02
−12569
4.05E − 12

4.12E + 01
9.59E + 00
0
0

1.40E − 03
3.20E − 03
0
0

8.21E − 01
6.40E − 01
4.32E − 15
6.49E − 16

2.22E + 01
5.08E + 00
0
0

1.35E − 27
2.01E − 27
1.61E − 32
1.18E − 33

1.47E − 24
7.99E − 24
2.09E − 32
4.56E − 32

5.2. Influence of Two Strategies

We introduced the OL strategy and catfish effect mechanism to enhance the search ability of the FPA. Therefore, it is necessary to analyze the contribution of each strategy to the optimization performance. To accomplish this aim, two strategies are combined with the FPA, namely, the OL-based FPA (OFPA) and the catfish-effect-based FPA (CFPA).

Table 5 shows the experimental results of the OFPA, CFPA, and OCFPA in the form of “mean (standard deviation).” Relative to the OFPA, the OCFPA is superior on 13 functions except for . The results indicate that it is unlikely that the OL strategy will enhance the quality of the solution once the algorithm becomes trapped in local optima, because OL mainly serves to recombine various pieces of information and is incapable of exploring new regions to find more valuable information. With respect to the CFPA, the OCFPA is clearly superior on 10 functions, but for , , and , the optimization performances of the CFPA and OCFPA are equivalent. This result implies that the catfish effect mechanism has the ability to expand the search space to obtain a more promising candidate solution.

Table 5: Comparison of the OFPA, CFPA, and OCFPA ().

OFPA
CFPA
OCFPA

2.31E − 58 (1.26E − 57)
1.18E − 51 (1.74E − 51)
1.09E − 86 (3.27E − 86)

3.17E − 02 (1.71E − 02)
1.20E − 02 (4.72E − 04)
1.70E − 03 (9.08E − 04)

1.98E − 70 (9.05E − 70)
5.52E − 48 (6.79E − 48)
2.09E − 81 (7.67E − 81)

2.13E + 00 (2.02E − 00)
2.38E + 01 (3.02E − 01)
1.08E + 01 (7.11E + 00)

7.99E − 02 (2.15E − 01)
5.66E − 26 (6.88E − 26)
2.38E − 47 (6.13E − 47)

4.33E − 01 (1.65E + 00)
0 (0)
0 (0)

1.14E − 13 (6.26E − 13)
1.32E − 52 (1.65E − 32)
1.36E − 86 (4.54E − 86)

−12712 (2.15E + 02)
−9922.6 (5.49E + 02)
−12569 (4.05E − 12)

9.88E + 00 (3.23E + 00)
2.21E + 01 (2.11E + 01)
0 (0)

5.62E − 02 (5.98E − 02)
0 (0)
0 (0)

3.45E + 00 (1.38E + 00)
4.32E − 15 (6.49E − 16)
4.32E − 15 (6.49E − 16)

7.67E + 00 (2.78E + 00)
2.21E + 01 (7.20E + 00)
0 (0)

1.39E − 13 (7.61E − 13)
5.14E − 24 (2.70E − 23)
1.61E − 32 (1.18E − 33)

3.96E − 02 (1.83E − 01)
3.00E − 03 (1.65E − 02)
2.09E − 32 (4.56E − 32)

By analyzing the experimental results from Table 5, it can be concluded that the mutual interaction of the two strategies is beneficial to OCFPA performance. In detail, the catfish effect mechanism can explore the new search space and supply valuable individuals for the OL strategy, and the OL strategy can take full advantage of the useful information to acquire a high-precision solution.

5.3. Influence of Population Size

To study the influence of different population sizes on the search ability of our proposed algorithm, the FPA and OCFPA with NP = 20, 50, 80, and 100 are implemented in comparative experiments. The results of these four cases are listed in the form of “mean (standard deviation)” in Table 6. It is clear that, for –, the OCFPA performs better than the FPA on the four cases. However, we note that the optimal accuracy of the FPA and OCFPA exhibits downward trends as the population size increases. The comparison results reflect the fact that a population size that is too large can result in a rapid consumption of fitness evaluations and prevent the algorithm from obtaining the global optimum. By contrast, a population that is too small can also have a negative influence on the search ability owing to the reduction in population diversity. Therefore, choosing a proper population size for various complex problems is a key step in achieving a better optimal effect.

Table 6: Comparison of different population sizes (, FEs = 2 × 10⁵).

NP = 20
NP = 50

FPA
OCFPA
FPA
OCFPA

1.56E − 25 (3.20E − 25)
1.09E − 86 (3.27E − 86)
1.26E − 12 (6.73E − 13)
1.69E − 35 (5.05E − 35)

3.37E − 02 (1.56E − 02)
1.70E − 03 (9.08E − 04)
1.44E − 02 (4.40E − 03)
5.60E − 03 (2.00E − 03)

6.89E − 22 (2.10E − 21)
2.09E − 81 (7.67E − 81)
2.53E − 09 (1.56E − 09)
1.41E − 32 (2.87E − 32)

2.41E + 01 (1.81E + 01)
1.08E + 01 (7.11E + 00)
1.97E + 01 (2.52E + 00)
1.04E + 01 (1.13E + 01)

5.51E − 17 (6.12E − 17)
2.38E − 47 (6.13E − 47)
3.70E − 07 (1.40E − 07)
3.11E − 20 (6.40E − 20)

0 (0)
0 (0)
0 (0)
0 (0)

5.94E − 21 (3.25E − 20)
1.36E − 86 (4.54E − 86)
1.60E − 13 (7.74E − 14)
5.87E − 37 (1.62E − 36)

−10308 (4.92E + 02)
−12569 (4.05E − 12)
−8989.7 (3.33E + 02)
−12569 (2.07E − 01)

4.12E + 01 (9.59E + 00)
0 (0)
5.76E + 01 (9.18E + 00)
0 (0)

1.40E − 03 (3.20E − 03)
0 (0)
2.85E − 08 (8.15E − 08)
0 (0)

8.21E − 01 (6.40E − 01)
4.32E − 15 (6.49E − 16)
2.62E − 04 (3.11E − 04)
2.56E − 12 (2.05E − 12)

2.22E + 01 (5.08E + 00)
0 (0)
4.63E + 01 (7.92E + 00)
0 (0)

1.35E − 27 (2.01E − 27)
1.61E − 32 (1.18E − 33)
6.41E − 12 (1.23E − 11)
1.57E − 32 (6.24E − 35)

1.47E − 24 (7.99E − 24)
2.09E − 32 (4.56E − 32)
7.05E − 13 (8.28E − 13)
1.69E − 35 (5.05E − 35)

NP = 80
NP = 100

FPA
OCFPA
FPA
OCFPA

4.14E − 07 (1.32E − 07)
3.62E − 20 (7.87E − 20)
5.37E − 05 (1.83E − 05)
2.62E − 15 (3.61E − 15)

2.40E − 02 (4.50E − 03)
1.29E − 02 (4.70E − 03)
3.20E − 02 (8.60E − 03)
1.74E − 02 (6.00E − 03)

1.10E − 03 (5.27E − 04)
7.69E − 17 (1.71E − 16)
1.25E − 01 (3.22E − 02)
8.32E − 12 (1.62E − 11)

2.22E + 01 (2.85E + 00)
6.32E + 00 (6.09E + 00)
2.49E + 01 (2.99E + 00)
1.32E + 01 (9.82E + 00)

4.09E − 04 (1.01E − 04)
5.74E − 12 (6.91E − 12)
5.40E − 03 (9.98E − 04)
1.02E − 08 (1.93E − 08)

0 (0)
0 (0)
0 (0)
0 (0)

5.95E − 08 (2.26E − 08)
1.86E − 21 (4.71E − 21)
6.39E − 06 (1.83E − 06)
7.03E − 16 (1.46E − 15)

−8711.7 (3.47E + 02)
−12569 (2.80E − 12)
−8518.8 (2.52E + 02)
−12569 (2.62E − 04)

6.94E + 01 (1.02E + 01)
2.77E − 11 (1.52E − 10)
6.86E + 01 (1.06E + 01)
6.43E − 10 (3.46E − 09)

2.02E − 05 (3.37E − 05)
3.56E − 14 (8.80E − 14)
5.59E − 04 (2.40E − 04)
7.72E − 06 (4.17E − 05)

8.53E − 02 (6.44E − 02)
1.97E − 06 (2.01E − 06)
6.22E − 01 (3.38E − 01)
1.01E − 04 (4.85E − 05)

5.75E + 01 (8.36E + 00)
1.18E − 15 (5.51E − 15)
6.26E + 01 (7.58E + 00)
4.07E − 11 (1.67E − 10)

1.08E − 06 (9.97E − 07)
4.68E − 21 (9.92E − 21)
3.12E − 05 (2.54E − 05)
5.42E − 16 (1.03e − 15)

1.01E − 06 (7.37E − 07)
8.25E − 19 (3.03E − 18)
1.30E − 04 (7.19E − 05)
2.10E − 13 (3.02E − 13)

5.4. Influence of Problem Dimensionality

The complexity of the problem increases with larger dimensions. Therefore, the optimization performance of OCFPA was investigated in different dimensionality situations. As shown in Table 7, the experiment involved four cases of = 10/FEs = 1 × 10⁵, = 50/FEs = 3 × 10⁵, = 75/FEs = 4.5 × 10⁵, and = 100/FEs = 6 × 10⁵. The simulation results show that, for the four different dimensions, both the FPA and OCFPA can find the optimal solution 0 on but that the OCFPA outperforms the FPA on the other remaining 13 functions. Furthermore, the convergence accuracies and optimal speeds of OCFPA in the four cases are considerable. These results prove that the introduction of these two strategies significantly improves the search ability of FPA, even when solving high-dimensional optimization problems.

Table 7: Comparison of different dimensions (NP = 20).

/FEs = 1 × 10⁵
/FEs = 3 × 10⁵

FPA
OCFPA
FPA
OCFPA

4.69E − 37 (2.17E − 36)
3.06E − 76 (1.48E − 75)
1.06E − 25 (1.23E − 25)
8.84E − 63 (2.25E − 62)

3.20E − 03 (1.70E − 03)
1.20E − 03 (5.71E − 04)
9.16E − 02 (3.36E − 02)
2.10E − 03 (9.92E − 04)

1.09E − 34 (2.89E − 34)
1.58E − 73 (4.13E − 73)
9.09E − 22 (2.67E − 21)
1.23E − 58 (4.42E − 58)

1.32E + 01 (7.27E − 01)
1.33E − 01 (7.27E − 01)
7.68E + 01 (3.64E + 01)
3.65E + 01 (1.25E + 01)

6.49E − 20 (1.12E − 19)
4.92E − 43 (1.15E − 42)
6.15E − 18 (4.15E − 18)
7.85E − 33 (3.97E − 32)

0 (0)
0 (0)
0 (0)
0 (0)

2.83E − 38 (1.15E − 38)
6.13E − 77 (3.03E − 76)
3.19E − 26 (4.74E − 26)
5.75E − 62 (3.11E − 61)

−4143.8 (6.12E + 01)
−4189.8 (2.77E − 12)
−15278 (9.06E + 02)
−20949 (3.43E − 01)

2.77E + 00 (9.58E − 01)
0 (0)
8.04E + 01 (1.96E + 01)
0 (0)

5.35E − 02 (3.32E − 02)
0 (0)
2.70E − 03 (4.70E − 03)
0 (0)

7.70E − 02 (2.93E − 01)
4.20E − 15 (9.01E − 16)
1.44E + 00 (4.44E − 01)
4.32E − 15 (6.48E − 16)

2.81E + 00 (1.02E + 00)
0 (0)
5.41E + 01 (2.43E + 01)
0 (0)

4.83E − 32 (5.31E − 33)
4.72E − 32 (2.95E − 34)
4.10E − 03 (2.27E − 02)
8.15E − 19 (4.46E − 18)

5.49E − 33 (4.22E − 33)
3.12E − 33 (8.38E − 33)
3.00E − 03 (1.65E − 02)
4.25E − 33 (8.76E − 33)

= 75/Fes = 4.5 × 10⁵
= 100/FEs = 6 × 10⁵

FPA
OCFPA
FPA
OCFPA

6.30E − 28 (2.09E − 27)
1.57E − 91 (5.32E − 91)
3.07E − 30 (3.79E − 30)
1.10E − 118 (5.90E − 118)

1.64E − 01 (3.86E − 02)
1.40E − 03 (8.59E − 04)
2.60E − 01 (6.04E − 02)
1.30E − 03 (9.24E − 04)

5.17E − 25 (5.90E − 25)
1.11E − 85 (6.09E − 85)
7.28E − 27 (7.76E − 27)
2.9E − 117 (1.0E − 116)

1.48E + 02 (5.53E + 01)
5.79E + 01 (1.61E + 01)
1.91E + 02 (5.37E + 01)
6.87E + 01 (2.75E + 01)

1.67E − 20 (7.22E − 21)
6.12E − 50 (1.85E − 49)
1.92E − 22 (7.67E − 23)
4.74E − 65 (2.08E − 64)

0 (0)
0 (0)
0 (0)
0 (0)

9.11E − 29 (1.46E − 28)
1.11E − 91 (5.82E − 91)
1.88E − 29 (9.77E − 29)
4.91E − 119 (2.72E − 118)

−22236 (1.54E + 03)
−31424 (5.36E − 01)
−29152 (1.68E + 03)
−41898 (5.16E − 02)

1.43E + 02 (3.28E + 01)
0 (0)
1.75E + 02 (4.11E + 01)
0 (0)

4.00E − 03 (1.35E − 02)
0 (0)
2.50E − 03 (8.00E − 03)
0 (0)

1.63E + 00 (2.62E − 01)
4.32E − 15 (6.48E − 16)
2.07E + 01 (3.14E − 01)
4.32E − 15 (6.48E − 16)

6.08E + 01 (1.19E + 01)
0 (0)
7.99E + 01 (2.19E + 01)
0 (0)

1.40E − 03 (7.60E − 03)
6.95E − 33 (6.54E − 33)
2.10E − 03 (7.90E − 03)
3.82E − 25 (1.93E − 24)

3.40E − 03 (1.85E − 02)
2.07E − 30 (1.04E − 29)
9.40E − 03 (2.88E − 02)
2.57E − 33 (3.52E − 33)

5.5. Comparison with Several Evolutionary Algorithms

To further demonstrate the superiority of the OCFPA, several advanced evolutionary algorithms are introduced for comparison on the benchmark functions with = 30, including CS [7], GSA [33], CMAES [34], OXDE [35], SGHS [36], and CLPSO [37]. The related parameters of these algorithms are in accordance with the references [7, 33–37]. Tables 8 and 9 list the results in the form of “Mean/(Std)/Rank.” The ranking of the performance of OCFPA and the other algorithms is based on the mean and Std values.

Table 8: Comparison of OCFPA with evolutionary algorithms on unimodal functions ().

CS
GSA
CMAES
OXDE
SGHS
CLPSO
OCFPA

Mean
6.64E − 32
1.27E − 16
1.57E − 29
3.32E − 61
1.47E − 10
2.61E − 40
1.09E − 86

Std
(1.41E − 31)
(4.04E − 17)
(2.22E − 30)
(8.22E − 61)
(8.53E − 11)
(3.43E − 40)
(3.27E − 86)

Rank
4
6
5
2
7
3
1

Mean
1.23E − 01
6.10E − 02
3.97E − 02
1.17E − 02
7.20E − 03
3.90E − 03
1.70E − 03

Std
(5.79E − 02)
(1.50E − 02)
(1.32E − 02)
(7.90E − 03)
(3.40E − 03)
(1.10E − 03)
(9.08E − 04)

Rank
7
5
6
4
3
2
1

Mean
1.16E − 27
3.33E + 03
5.73E − 24
2.41E − 58
2.97E − 02
1.42E − 38
2.09E − 81

Std
(3.92E − 27)
(2.77E + 03)
(4.72E − 25)
(4.68E − 58)
(1.27E − 01)
(1.65E − 38)
(7.67E − 81)

Rank
4
7
5
2
6
3
1

Mean
2.70E + 01
2.29E + 01
2.65E − 01
7.97E − 01
9.23E + 01
2.93E + 01
1.08E + 01

Std
(3.35E + 01)
(2.34E + 01)
(1.01E + 00)
(1.62E + 00)
(2.34E + 02)
(2.72E + 01)
(7.11E + 00)

Rank
5
4
1
2
7
6
3

Mean
7.47E − 20
5.32E − 08
1.38E − 02
1.11E − 37
4.61E − 05
7.89E − 26
2.38E − 47

Std
(3.42E − 19)
(7.64E − 09)
(5.85E − 02)
(1.80E − 37)
(1.17E − 05)
(5.70E − 26)
(6.13E − 47)

Rank
4
5
7
2
6
3
1

Mean
0
0
0
0
0
0
0

Std
(0)
(0)
(0)
(0)
(0)
(0)
(0)

Rank
1
1
1
1
1
1
1

Mean
4.69E − 33
1.18E − 15
2.90E − 28
7.03E − 60
5.09E − 04
2.54E − 41
1.33E − 87

Std
1.58E − 32
4.09E − 16
3.59E − 29
3.79E − 59
2.80E − 03
3.55E − 41
4.61E − 87

Rank
4
6
5
2
7
3
1

Table 9: Comparison of OCFPA with evolutionary algorithms on multimodal functions ().

CS
GSA
CMAES
OXDE
SGHS
CLPSO
OCFPA

Mean
−11461
−2427.8
−7045.7
−12514
−12547
−12542
−12569

Std
(422.65)
(515.24)
(641.36)
(103.09)
(124.88)
(5.09E + 01)
(4.05E − 12)

Rank
5
7
6
4
2
3
1

Mean
1.53E + 01
3.25E + 01
2.38E + 02
1.65E + 01
1.33E − 01
3.32E − 02
0

Std
(5.21E + 00)
(9.15E + 00)
(3.81E + 01)
(5.13E + 01)
(4.32E − 01)
(1.82E − 01)
(0)

Rank
4
6
7
5
3
2
1

Mean
1.30E − 02
1.80E − 03
2.46E − 04
1.11E − 02
4. 40E − 02
0
0

Std
(1.73E − 02)
(4.90E − 03)
(1.40E − 03)
(1.76E − 02)
(4.06E − 02)
(0)
(0)

Rank
6
4
3
5
7
1
1

Mean
5.61E + 00
9.45E − 09
1.94E + 01
9.16E − 01
1.03E − 05
9.77E − 15
4.32E − 15

Std
(1.97E + 00)
(1.70E − 09)
(2.27E − 01)
(8.67E − 01)
(3.31E − 06)
(2.91E − 15)
(6.49E − 16)

Rank
6
3
7
5
4
2
1

Mean
1.80E + 01
4.41E + 01
2.43E + 02
2.19E + 01
2.67E − 01
2.00E − 01
0

Std
(7.37E + 00)
(9.39E + 00)
(4.53E + 01)
(5.54E + 00)
(6.92E − 01)
(4.07E − 01)
(0)

Rank
4
6
7
5
3
2
1

Mean
1.04E − 02
3.50E − 03
9.27E − 01
1.64E − 32
2.29E − 12
1.57E − 32
1.61E − 32

Std
3.16E − 02
1.89E − 02
9.96E − 01
1.14E − 33
2.64E − 12
5.56E − 48
1.18E − 33

Rank
6
5
7
3
4
1
2

Mean
4.77E − 02
1.38E − 17
6.05E − 30
3.79E − 32
2.94E − 11
1.50E − 33
2.09E − 32

Std
(1.10E − 01)
(3.78E − 18)
(7.91E − 31)
(1.51E − 31)
(2.22E − 11)
(0)
(4.56E − 32)

Rank
7
5
4
3
6
1
2

The comparative results of OCFPA and six competitors on the unimodal functions are presented in Table 8. The OCFPA has a better global optimization ability than the other algorithms on , , , , and . For , the OCFPA surpasses the CS, GSA, SGHS, and CLPSO methods but is surpassed by the CMAES and OXDE methods. For , all algorithms converge to the optimal solution 0.

Table 9 lists the comparative results on seven multimodal functions; for , , and , the OCFPA achieves the global optimal solutions and outperforms the other algorithms. For , both the OCFPA and CLPSO converge to the global optimum 0 and outperform the other five algorithms. For , the OCFPA surpasses the other algorithms in terms of search accuracy and robustness. For and , CLPSO performs slightly better than the OCFPA, but we can observe that CLPSO, OCFPA, and OXDE on and CLPSO, OCFPA, OXDE, and CMAES on achieve the same order of magnitude of accuracy.

To more intuitively reflect the optimal effect, Figures 2 and 3 show the iterative curves of the OCFPA compared with those of the competitors on several functions. The comparative results illustrate that the OCFPA is superior to these advanced intelligent algorithms in terms of convergence speed and accuracy on most functions.

Figure 2: Iterative curves on , , , and .

Figure 3: Iterative curves on , , , and .

Figures 4 and 5 show the box-and-whisker plots of the optimal solution set of 30 independent runs on unimodal functions , , , and and multimodal functions , , , and . We note that our proposed algorithm has fewer outliers and that the dispersion degree is lower than that of the other algorithms, indicating that the proposed OCFPA has excellent stability characteristics.

Figure 4: Box-and-whisker plot on , , , and .

Figure 5: Box-and-whisker plot on , , , and .

5.6. Nonparametric Statistical Analysis

In this section, the Wilcoxon sign-rank test [38, 39], a nonparametric statistic technique, is introduced for pairwise comparison of the significant difference of OCFPA against other state-of-that-art competitors on the final results over 30 independent runs. The significance level α is fixed at 0.05. In Table 10, the value is compared with α to evaluate the significance of the results; denotes the sum of ranks for which OCFPA outperforms other competitors, and indicates the inverse relation; “+,” “=,” and “−” denote that OCFPA is superior, equivalent, or inferior to the compared algorithm, respectively, and “” is used to count the number of OCFPA wins on , ties on , and loses on functions against the corresponding competitor.

Table 10: Statistical analysis using the Wilcoxon sign-rank test.

CS versus OCFPA
GSA versus OCFPA
CMAES versus OCFPA

value

Win
value

Win
value

Win

1.73E − 06
465
0
+
1.73E − 06
465
0
+
1.73E − 06
465
0
+

1.73E − 06
465
0
+
1.73E − 06
465
0
+
1.73E − 06
465
0
+

1.73E − 06
465
0
+
1.73E − 06
465
0
+
1.73E − 06
465
0
+

1.09E − 01
310
155
+
4.44E − 05
431
34
+
1.73E − 06
0
465
−

1.73E − 06
465
0
+
1.73E − 06
465
0
+
1.73E − 06
465
0
+

1
232.5
232.5
=
1
232.5
232.5
=
1
232.5
232.5
=

1.73E − 06
465
0
+
1.73E − 06
465
0
+
1.73E − 06
465
0
+

1.73E − 06
465
0
+
1.73E − 06
465
0
+
1.73E − 06
465
0
+

1.72E − 06
465
0
+
1.73E − 06
465
0
+
1.73E − 06
465
0
+

2.90E − 04
419.5
45.5
+
6.79E − 02
289.5
175.5
+
3.17E − 01
247.5
217.5
=

1.73E − 06
465
0
+
1.73E − 06
465
0
+
1.73E − 06
465
0
+

1.72E − 06
465
0
+
1.73E − 06
465
0
+
1.73E − 06
465
0
+

4.49E − 06
455.5
9.5
+
1.73E − 06
465
0
+
1.73E − 06
465
0
+

3.07E − 06
459
6
+
1.73E − 06
465
0
+
1.73E − 06
465
0
+

w/t/l
13/1/0
13/1/0
11/2/1

OXDE versus OCFPA
SGHS versus OCFPA
CLPSO versus OCFPA

value

Win
value

Win
value

Win

1.73E − 06
465
0
+
1.73E − 06
465
0
+
1.73E − 06
465
0
+

1.73E − 06
465
0
+
1.73E − 06
465
0
+
1.92E − 06
464
1
+

1.73E − 06
465
0
+
1.73E − 06
465
0
+
1.73E − 06
465
0
+

7.06E − 06
15
450
−
1.47E − 04
417
48
+
2.10E − 03
382
83
+

1.73E − 06
465
0
+
1.73E − 06
465
0
+
1.73E − 06
465
0
+

1
232.5
232.5
=
1
232.5
232.5
=
1
232.5
232.5
=

1.73E − 06
465
0
+
1.73E − 06
465
0
+
1.73E − 06
465
0
+

5.90E − 03
252
213
+
2.10E − 06
464.5
0.5
+
1.04E − 02
230
235
=

1.73E − 06
465
0
+
1.73E − 06
465
0
+
3.17E − 01
247.5
217.5
=

4.29E − 04
412.5
52.5
+
1.73E − 06
465
0
+
1
232.5
232.5
=

8.00E − 05
437.5
27.5
+
1.73E − 06
465
0
+
6.83E − 07
465
0
+

1.64E − 06
465
0
+
1.73E − 06
465
0
+
1.43E − 02
315
150
+

2.37E − 01
282
183
=
1.73E − 06
465
0
+
4.14E − 04
52.5
412.5
−

8.87E − 01
223.5
241.5
=
1.73E − 06
465
0
+
2.20E − 03
85.5
379.5
−

w/t/l
10/3/1
13/1/0
8/4/2

From Table 10, we observe that, for “CS versus OCFPA,” “GSA versus OCFPA,” and “SGHS versus OCFPA,” the values are much smaller than 0.05 on 13 functions. For “CMAES versus OCFPA” and “OXDE versus OCFPA,” CMAES and OXDE surpass OCFPA only on . For “CLPSO versus OCFPA,” OCFPA is inferior to CLPSO only on and . In summary, from the “” results, we can conclude that our proposed algorithm shows excellent or at least higher competitive performance than the advanced evolutionary algorithms.

6. Conclusion

We offer a novel variant of the FPA by combining the OL strategy and catfish effect mechanism to solve complex optimization problems. The OCFPA uses the OL strategy to improve the local search ability of the basic FPA by sharing and exchanging useful information at each dimension from various solution vectors. Furthermore, the catfish effect mechanism is introduced to force the FPA to escape the local optima and improve the search space of the population to explore more promising regions. With the aid of these two strategies, the OCFPA offers a favorable balance of exploration and exploitation ability. The experimental results on benchmark functions demonstrate the effectiveness and efficiency of our proposed algorithms.

In future work, although the OL strategy has been successfully incorporated into the FPA, the potential of the OL method should be further exploited by acting on different information sources. In addition, we plan to apply the OL-based FPA to real-world engineering problems, such as parameter identification and feature selection.

Conflicts of Interest

The authors declare that there are no conflicts of interest regarding the publication of this paper.

References

G.-G. Wang, S. Deb, A. H. Gandomi, and A. H. Alavi, “Opposition-based krill herd algorithm with Cauchy mutation and position clamping,” Neurocomputing, vol. 177, pp. 147–157, 2016.

M. Battarra, S. Benedettini, and A. Roli, “Leveraging saving-based algorithms by masterslave genetic algorithms,” Engineering Applications of Artificial Intelligence, vol. 24, no. 4, pp. 555–566, 2011.

K. Kameyama, “Particle swarm optimization—a survey,” IEICE Transaction on Information and Systems, vol. 92, no. 7, pp. 1354–1361, 2009.

N. Karaboga, “Digital IIR filter design using differential evolution algorithm,” EURASIP Journal on Applied Signal Processing, vol. 2005, Article ID 856824, 2005.

I. Perez, M. Gomez-Gonzalez, and F. Jurado, “Estimation of induction motor parameters using shuffled frog-leaping algorithm,” Electrical Engineering, vol. 95, no. 3, pp. 267–275, 2013.

P. K. Roy and D. Mandal, “Quasi-oppositional biogeography-based optimization for multi-objective optimal power flow,” Electric Power Components and Systems, vol. 40, no. 2, pp. 236–256, 2011.

X.-S. Yang and S. Deb, “Multiobjective cuckoo search for design optimization,” Computers & Operations Research, vol. 40, no. 6, pp. 1616–1624, 2013.

E. Fattahi, M. Bidar, and H. R. Kanan, “Fuzzy Krill Herd (FKH): An improved optimization algorithm,” Intelligent Data Analysis, vol. 20, no. 1, pp. 153–165, 2016.

L. Wu, C. Zuo, H. Zhang, and Z. Liu, “Bimodal fruit fly optimization algorithm based on cloud model learning,” Soft Computing, vol. 21, no. 7, pp. 1877–1893, 2017.

R. Dou and H. Duan, “Lévy flight based pigeon-inspired optimization for control parameters optimization in automatic carrier landing system,” Aerospace Science and Technology, vol. 61, pp. 11–20, 2017.

S. Peng, A.-J. Ouyang, and J. J. Zhang, “An adaptive invasive weed optimization algorithm,” International Journal of Pattern Recognition and Artificial Intelligence, vol. 29, no. 2, Article ID 1559004, 2015.

F. Xue, Y. Cai, Y. Cao, Z. Cui, and F. Li, “Optimal parameter settings for bat algorithm,” International Journal of Bio-Inspired Computation, vol. 7, no. 2, pp. 125–128, 2015.

X.-S. Yang, M. Karamanoglu, and X. He, “Flower pollination algorithm: a novel approach for multiobjective optimization,” Engineering Optimization, vol. 46, no. 9, pp. 1222–1237, 2014.

E. Nabil, “A modified flower pollination algorithm for global optimization,” Expert Systems with Applications, vol. 57, pp. 192–203, 2016.

N.-D. Hoang, D. Tien Bui, and K.-W. Liao, “Groutability estimation of grouting processes with cement grouts using Differential Flower Pollination Optimized Support Vector Machine,” Applied Soft Computing, vol. 45, pp. 173–186, 2016.

Y. Zhou, R. Wang, and Q. Luo, “Elite opposition-based flower pollination algorithm,” Neurocomputing, vol. 188, pp. 294–310, 2016.

R. Salgotra and U. Singh, “Application of mutation operators to flower pollination algorithm,” Expert Systems with Applications, vol. 79, pp. 112–129, 2017.

A. Y. Abdelaziz, E. S. Ali, and S. M. Abd Elazim, “Combined economic and emission dispatch solution using Flower Pollination Algorithm,” International Journal of Electrical Power & Energy Systems, vol. 80, pp. 264–274, 2016.

R. Wang, Y. Zhou, S. Qiao, and K. Huang, “Flower pollination algorithm with bee pollinator for cluster analysis,” Information Processing Letters, vol. 116, no. 1, pp. 1–14, 2016.

W. Zhang, Z. Qu, K. Zhang, W. Mao, Y. Ma, and X. Fan, “A combined model based on CEEMDAN and modified flower pollination algorithm for wind speed forecasting,” Energy Conversion and Management, vol. 136, pp. 439–451, 2017.

S. Xu, Y. Wang, and F. Huang, “Optimization of multi-pass turning parameters through an improved flower pollination algorithm,” The International Journal of Advanced Manufacturing Technology, vol. 89, no. 1-4, pp. 503–514, 2017.

R. Salgotra and U. Singh, “A novel bat flower pollination algorithm for synthesis of linear antenna arrays,” Neural Computing and Applications, pp. 1–14, 2016.

F. van den Bergh and A. P. Engelbrecht, “A cooperative approach to participle swam optimization,” IEEE Transactions on Evolutionary Computation, vol. 8, no. 3, pp. 225–239, 2004.

J. Wang, B. Zhou, and S. Zhou, “An Improved Cuckoo Search Optimization Algorithm for the Problem of Chaotic Systems Parameter Estimation,” Computational Intelligence and Neuroscience, vol. 2016, Article ID 2959370, 8 pages, 2016.

L.-Y. Chuang, S.-W. Tsai, and C.-H. Yang, “Chaotic catfish particle swarm optimization for solving global numerical optimization problems,” Applied Mathematics and Computation, vol. 217, no. 16, pp. 6900–6916, 2011.

L.-Y. Chuang, S.-W. Tsai, and C.-H. Yang, “Catfish particle swarm optimization,” in Proceedings of the IEEE Swarm Intelligence Symposium (SIS '08), IEEE, St. Louis, Mo, USA, September 2008.

S. G. de-los-Cobos-Silva, M. A. Gutierrez-Andrade, R. A. Mora-Gutierrez et al., “An efficient algorithm for unconstrained optimization,” Mathematical Problems in Engineering, vol. 2015, Article ID 178545, 17 pages, 2015.

S. Tuo, L. Yong, F. Deng, Y. Li, Y. Lin, and Q. Lu, “HSTLBO: A hybrid algorithm based on Harmony Search and Teaching-Learning- Based Optimization for complex highdimensional optimization problems,” PLoS ONE, vol. 12, no. 4, Article ID e0175114, 2017.

W.-F. Gao, S.-Y. Liu, and L.-L. Huang, “A novel artificial bee colony algorithm based on modified search equation and orthogonal learning,” IEEE Transactions on Cybernetics, vol. 43, no. 3, pp. 1011–1024, 2013.

A. Draa, “On the performances of the flower pollination algorithm—qualitative and quantitative analyses,” Applied Soft Computing, vol. 34, pp. 349–371, 2015.

J. Niu, W. Zhong, Y. Liang, N. Luo, and F. Qian, “Fruit fly optimization algorithm based on differential evolution and its application on gasification process operation optimization,” Knowledge-Based Systems, vol. 88, pp. 253–263, 2015.

L. Wu, C. Zuo, and H. Zhang, “A cloud model based fruit fly optimization algorithm,” Knowledge-Based Systems, vol. 89, pp. 603–617, 2015.

A. Yadav and K. Deep, “Constrained optimization using gravitational search algorithm,” National Academy of Science Letters, vol. 36, no. 5, pp. 527–534, 2013.

N. Hansen and A. Ostermeier, “Completely derandomized self-adaptation in evolution strategies,” Evolutionary Computation, vol. 9, no. 2, pp. 159–195, 2001.

Y. Wang, Z. Cai, and Q. Zhang, “Enhancing the search ability of differential evolution through orthogonal crossover,” Information Sciences, vol. 185, pp. 153–177, 2012.

Q.-K. Pan, P. N. Suganthan, M. F. Tasgetiren, and J. J. Liang, “A self-adaptive global best harmony search algorithm for continuous optimization problems,” Applied Mathematics and Computation, vol. 216, no. 3, pp. 830–848, 2010.

J. J. Liang, A. K. Qin, P. N. Suganthan, and S. Baskar, “Comprehensive learning particle swarm optimizer for global optimization of multimodal functions,” IEEE Transactions on Evolutionary Computation, vol. 10, no. 3, pp. 281–295, 2006.

J. Derrac, S. García, D. Molina, and F. Herrera, “A practical tutorial on the use of nonparametric statistical tests as a methodology for comparing evolutionary and swarm intelligence algorithms,” Swarm and Evolutionary Computation, vol. 1, no. 1, pp. 3–18, 2011.

D. Shilane, J. Martikainen, S. Dudoit, and S. J. Ovaska, “A general framework for statistical performance comparison of evolutionary computation algorithms,” Information Sciences, vol. 178, no. 14, pp. 2870–2879, 2008.