Mathematical Problems in Engineering
Volume 2015 (2015), Article ID 375902, 17 pages
http://dx.doi.org/10.1155/2015/375902

Research Article

A Hybrid Mutation Chemical Reaction Optimization Algorithm for Global Numerical Optimization

Ransikarn Ngambusabongsopa,¹ Zhiyong Li,¹ and Esraa Eldesouky1,2

¹College of Computer Science and Electronic Engineering, Hunan University, Changsha 410082, China
²Faculty of Computers and Informatics, Suez Canal University, Ismailia 41522, Egypt

Received 10 August 2015; Accepted 29 September 2015

Academic Editor: Julien Bruchon

Copyright © 2015 Ransikarn Ngambusabongsopa et al. 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.

This paper proposes a hybrid metaheuristic approach that improves global numerical optimization by increasing optimal quality and accelerating convergence. This algorithm involves a recently developed process for chemical reaction optimization and two adjustment operators (turning and mutation operators). Three types of mutation operators (uniform, nonuniform, and polynomial) were combined with chemical reaction optimization and turning operator to find the most appropriate framework. The best solution among these three options was selected to be a hybrid mutation chemical reaction optimization algorithm for global numerical optimization. The optimal quality, convergence speed, and statistical hypothesis testing of our algorithm are superior to those previous high performance algorithms such as RCCRO, HP-CRO2, and OCRO.

1. Introduction

Various optimization approaches have been used to solve existing global optimization problems in science, engineering, and related fields. Evolutionary algorithms (EAs), inspired by the biological evolution and social behavior of organisms, are the most powerful among optimization frameworks. Several EAs have been successfully used to solve global optimization problems. Genetic algorithms (GAs) [1, 2] were developed based on the natural process of evolution. Particle swarm optimization (PSO) [3] was inspired by the social behavior of bird flocking or fish schooling. Memetic algorithms (MAs) [4] are similar to GAs except that MAs initiate a local search before undergoing the evolutionary process [5]. Ant colony optimization [6] resembles PSO based on the capability of ants to find the shortest route between their nest and a food source. Artificial bee colony [7, 8] was inspired by the echolocation behavior of bees. Harmony search [9] was based on the natural musical performance of a musician searching for an optimal state of harmony.

A recent study has proposed a new chemical reaction-inspired EA named “chemical reaction optimization” [10, 11]. CRO is a low-latency algorithm that mimics molecular interactions in chemical reactions to reach a low-energy stable state. An effective version of CRO is the real-coded chemical reaction optimization (RCCRO) [12], which can process a large set of continuous problems [13–17]. HP-CRO, a hybrid algorithm based on PSO and CRO, produces more distinguished results compared with RCCRO [18]. However, orthogonal chemical reaction optimization (OCRO) algorithms for global numerical optimization problems [19] are the best when compared with RCCRO and HP-CRO. OCRO is efficient in solving high-dimension functions but not in solving low-dimensional functions.

The current study proposes a hybrid mutation chemical reaction optimization algorithm for global numerical optimization (MCRO). This strategy can be used to solve high-dimension and low-dimension functions better and faster. The proposed framework combines CRO with a turning operator and a mutation operator. Our algorithm was determined by choosing the best solution that estimates the performance of the combination with three types of mutation operators (uniform, nonuniform, and polynomial).

This paper is organized as follows. Section 2 provides a brief review of preliminary studies on CRO and mutation operator. Section 3 presents the proposed approach: MCRO. Section 4 describes the evaluation methods and simulation results and discusses the comparisons of algorithms. Section 5 concludes this paper and suggests proposals for future work.

2. Preliminary

2.1. Optimization

In science, mathematics, engineering, and other related fields, optimization is the selection of an optimal solution from a set of feasible alternatives. In general, an optimization problem includes minimizing or maximizing a function by systematically selecting input values from a given feasible set [20]. The problem function is scalar, where a variable demonstrates a particular solution and is usually a vector of components. The components specify the dimensions of . An optimization problem can be subjected to a vector of constraints that limits the feasible region, where corresponds to the total number of constraints [12]. The aim of optimization is to generate the optimal solution and manage the convergence speed of a problem function. Our research focuses on function minimization; the goal of minimum optimization is to find the minimum solution and , .

2.2. CRO

In principle, chemical reactions are governed by two rules of thermodynamics. First, energy cannot be created or destroyed but can be transformed from one entity to another; second, the entropy of a system tends to increase, where entropy is the measure of the degree of disorder [21]. CRO was inspired by the nature of chemical reactions and mimics the interactions of molecules in a chemical reaction to reach a low-energy stable state. Potential energy is the energy stored in a molecule with respect to its molecular configuration; the system becomes disordered when potential energy is converted to other forms [11]. Molecules stored in a container are vital to the manipulation of agents. Each molecule contains a profile that includes several attributes, such as molecular structure (), current potential energy (), and current kinetic energy (). In CRO reaction, the initial reactants in high-energy states incur a sequence of collisions. Molecules collide either with other molecules or with the walls of the container, pass through energy barriers, and become the final products in low-energy stable states. Four types of elementary CRO reactions capture the transition of high-energy molecules to stable states [10].

On-wall ineffective collision is the reaction created when a molecule hits the wall of a container and then bounces back. This reaction only slightly changes the molecular structure when occurs. The modification of molecular structure is processed by neighborhood search operator as ∖in neighborhood (). The central energy buffer is updated by extracting and storing a certain portion of its KE. The profile of the molecule is updated as , where is a random number that . The new is calculated using the new or .

Intermolecular ineffective collision refers to two or more molecules that collide with each other and then separate. The profiles of the molecules and the central energy buffer are updated when . The number of molecules is unaltered after the collision, but the molecular structures are produced from their own neighborhoods by neighborhood search operator. Similar to on-wall ineffective collision, this reaction also slightly changes the molecular structure.

Decomposition occurs when a molecule hits the wall of a container and then splits into two or more molecules. This elementary reaction is applied to finish local search and to explore other regions. The profiles of the molecules and the central energy buffer are updated when and when the energy buffer is sufficient. This reaction significantly alters the molecular structures of the resultant molecules.

Synthesis represents the situation when two or more molecules collide and mingle to a single molecule. The profiles of the molecules and the central energy buffer are updated when . This reaction strongly and significantly alters the resultant molecular structure.

The algorithm of CRO is shown as Algorithm 1 [12]. On-wall and intermolecular ineffective collisions are local searches, whereas decomposition and synthesis are global searches.

     Input: Objective function , constraints, and the dimensions of the problem

(1) /initialization phase/

(2) Assign parameter value to PopSize, InitialKE, StepSize, buffer, KELossRate, On-wallColl,

(3) DecThres, SynThres, The set of molecules in this Container are molecules

(4)  for each of the molecule do

(5)     Assign a random solution to the molecular structure . Calculate the PE by () and evaluate.

(6)     Assign the KE with InitialKE

(7) end for

(8) /Iterations phase/

(9)  while (the stopping criteria not met) do

(10)         Get randomly in interval

(11)         if () then

(12)                 select a molecule from Container Randomly

(13)                 if (Decomposition criterion met) then

(14)                  Decomposition

(15)                   if Success then Add a new molecule to Container

(16)                 else

(17)                  On-wallIneffectiveCollision

(18)                 end if

(19)         else

(20)                 select two molecule and from Container Randomly

(21)                 if (Synthesis criterion met) then

(22)                      Synthesis

(23)                       if Success then Remove molecule from Container

(24)                 else

(25)                      Inter-molecularIneffectiveCollision

(26)                 end if

(27)         end if

(28)         evaluate and keep any new minimum solution

(29) end while

(30) /The Output phase/

(31)  Output the best solution and its function value.

Algorithm 1: Chemical reaction optimization (CRO).

2.3. Mutation Operator

Mutation is a natural process that changes a DNA sequence to a new variation endowing individual survival advantages in biology. Mutation operator, which has been applied to GAs, simulates the natural biological evolution of species by exchanging information and producing offspring chromosomes [1, 2]. In GAs, mutation operator is designed to work on an individual chosen; this individual is randomly selected or chosen by defined condition. The new gene value is modified based on user-definable probability or other conditions such as a distribution. GAs containing mutation can widely maintain offspring chromosomes, instead of being limited to the genes available in the initial population. Therefor GAs with mutation can generate better solution and prevent premature convergence compared to GAs without mutation.

The concept of MCRO is initialed by supposing that advantage of mutation operator would empower global numerical optimization while combining with CRO. Then we reformed the mutation operator algorithm in accordance with CRO infrastructure, such as replacing an individual in GAs by a molecule (), assigning probability and distribution similar to user-definable probability or condition in GAs, and changing gene value of GAs with molecular structure (). In CRO, a molecular structure contains amount number of moles and a pair of moles is presented as a set of , where is the number of moles. Mutation operator algorithm generates the new molecular structure () based on mutation operator formula relating to mutation type. There are many types of mutation and these types depend on the representation itself. Several mutation types are proposed such as uniform, nonuniform [22], and polynomial mutations [23, 24]. The mutation operator algorithm is demonstrated as Algorithm 2.

        Input: a molecular structure of solution

(1)  Assign probability , distribution ,  = Number of moles

         = function upper bound; = function lower Bound

(2)  For   to   do

(3)         Get randomly in interval

(4)         If    then

(5)                  = do mutation operator Formula

(6)                 If    then  

(7)                 If    then  

(8)         End if

(9)  End For

(10) Output a new molecular structure = 

Algorithm 2: Mutation operator algorithm.

3. Proposed Approach: MCRO

Mutation chemical reaction optimization (MCRO), which is the improved hybrid of CRO and two adjustment operators, generates various molecular structures to produce high-quality results and accelerate convergence. The turning operator and the mutation operator will be explained in this section.

3.1. Turning Operator

Turning operator is a new operator that is merged into a subalgorithm named neighborhood search operator or . Neighborhood search operator is used in three types of elementary reactions (on-wall ineffective collision, intermolecular ineffective collision, and decomposition) to transform the molecular structure from the neighborhood of the operand [12]. The new molecular structures of the solution are calculated as Formula (1), and turning operator is generated once for an objective function () by using Formula (2). This new operator can highly improve the optimal quality and reliability of the algorithm:

3.2. Mutation Operator

Mutation operator is migrated into MCRO to improve solution diversity and accelerate convergence by generating various molecular structures. These structures are generated by using the processing mutation formula. This action increases the probability of finding the optimal solution and avoids being trapped into a local optimal solution; therefore, it accelerates convergence. In our research, the best mutation operator that matches our algorithm was selected from three types of mutation operators (uniform, nonuniform, and polynomial).

Uniform and nonuniform mutations are presented in basic GAs and their extending development of algorithm [22, 25]. Polynomial mutation is a popular one that was first introduced in Nondominated Sorting Genetic Algorithm (NSGA) and NSGA-II [23, 24]. Uniform, nonuniform, and polynomial mutations are calculated as Formulas (3), (4), and (5), respectively. As mutation operator algorithm mentioned in Section 2.3, input data is a set of molecular structures presented as , where is the number of moles, is a member of , . Likewise output data is a set of molecular structures presented as . According to opportuneness, the variable names such as and maybe present differently when they appear in other algorithms such as , , , and :

Generally, the optimization method consists of three phases: initialization, iteration, and output, which are all included in our proposed approach. We applied mutation operator to the initialization and iteration phases of the algorithm. A mutation operator was applied to each new molecule in the initialization phase. In the iteration phase, we processed mutation operator in all types of elementary reaction, namely, on-wall ineffective collision, intermolecular ineffective collision, decomposition, and synthesis. Mutation operator was incorporated to change the molecular structure. We compared the results before and after the performance of mutation operator and selected the better result. We believe mutation is one potential component to improve the performance of MCRO, since mutation operator can spread the search space by randomly sampling new points. Furthermore this mutation operator algorithm increases the chance of generating more powerful result not less than twice of original CRO for every elementary reaction. Following are the four elementary reactions’ explanations.

In on-wall ineffective collision of MCRO, a molecule is chosen. The first new molecular structure () of is generated by neighborhood search operator which includes turning operator as mentioned in Section 3.1 and then the first fitness or is calculated by . The new is generated and buffer is updated when the condition occurs. Next the second new molecular structure () is produced by computing mutation operator algorithm and then the second fitness or tempPE is calculated by . The profile of molecule M is updated as the best solution by comparing the first fitness () and the second fitness (tempPE). Therefore this action contains two probabilities and achieves the best solution for each time while there is only one choice for original CRO. The on-wall ineffective collision of MCRO is shown in Algorithm 3.

Input: a molecule and buffer

(1) Obtain   with turning operator

(2) Calculate by

(3)  if    then

(4)      Get randomly in interval

(5)      

(6)      Update

(7)       do  Mutation of    to  

(8)       Calculate  the tempPE by  

(9)    if  tempPE  better than    then  Replace    with  ,   with tempPE

(10) Update the profile of by , and

(11) end if

Output   and

Algorithm 3: On-wall ineffective collision of MCRO.

Intermolecular ineffective collision of MCRO algorithm starts by selecting two molecules and . Subsequently, neighborhood search operator with turning operator transforms the molecular structures of and from and to and , respectively, and evaluates by and by . The new are generated as when occurs. Furthermore, the algorithm executes mutation operator to build two new molecular structures, and , and processes fitness of two molecules tempPE₁ by () and tempPE₂ by (). Meanwhile, the best fitness between and tempPE₁ is selected to be the optimal solution of , similar to the optimal solution of is the best fitness between and tempPE₂, and then the profiles of molecules and are updated. Prove that there are two choices to estimate the most outstanding result for this reaction that acted to a molecule; therefor this elementary reaction of MCRO consists of four chances to meet the optimum solution for a time, while the same reaction of original CRO is just giving two choices (one choice for a molecule). Algorithm 4 illustrates intermolecular ineffective collision of MCRO algorithm.

      Input: molecules ,

(1) Obtain and   with turning operator

(2) Calculate and

(3) 

(4)  if    then

(5)      Get randomly in interval

(6)       and

(7)  end if

(8)  do  Mutation of     to     and     to  

(9)    Calculate  the   by   and   by 

(10) If   better than : Replace with and with

(11) If   better than : Replace with and with

(12) Update the profile of by , and

(13) Update the profile of by , and

(14) Output   and

Algorithm 4: Intermolecular ineffective collision of MCRO.

Decomposition of MCRO algorithm begins by selecting a molecules from container. Copy a molecular structure (ω) of to two new variables and . Next the molecular structures and are transformed to and , respectively, by computing neighborhood search operator (with turning operator), and furthermore evaluate the fitness as and the fitness as . The profiles of molecules are updated when as follows: set and when is randomly in interval and a new molecule is created. In case of not () and the energy buffer is sufficient set = (temp1 + buffer) × and , when , , , and are randomly in interval ; in addition the central energy buffer is updated and a new molecule is created. If there exists a new molecule (Success = TRUE), the two new molecular structures and are established by operated mutation operator algorithm and then the fitness of tempPE₁ and tempPE₂ are evaluated by f(tempω ₁) and f(tempω ₂), respectively. The first minimum fitness chooses the best one from or tempPE₁, and the second minimum fitness selects the best one between and tempPE₂. Furthermore profiles of and are updated. This concludes that there are four opportunities to reach the best result in decomposition of MCRO similar to intermolecular ineffective collision of MCRO; in other words, they are twice the same reaction in original CRO. Decomposition of MCRO is represented as Algorithm 5.

       Input: A molecule and buffer

(1) Obtain and from

(2) Obtain and   with turning operator

(3) Calculate and

(4) 

(5) 

(6)  if    then

(7)         Get randomly in interval

(8)           and  

(9)         Create new molecules

(10)         else if    then

(11)                     Get , , , and randomly in interval

(12)                     

(13)                     

(14)                     Update

(15)                     Create new molecules

(16)         end if

(17) else

(18)         

(19) end if

(20) If Success = TRUE

(21)         do  Mutation of     to     and     to  

(22)         Calculate  the     by     and     by  

(23)         If    better than   then   Replace     with     and     with  

(24)         If    better than   then   Replace     with     and     with  

(25)         Assign , , to the profile of

(26)         Assign , , to the profile of

(27) end if

(28) Output   and , and

Algorithm 5: Decomposition of MCRO.

In synthesis of MCRO algorithm, two molecules and are chosen. Secondly, neighborhood search operator (with turning operator) generated the two molecular structures of and from and to and , respectively, and the first fitness or is calculated by . Subsequently, the new is computed when as . Afterward mutation operator algorithm generates to , and the fitness generated by mutation operator algorithm or tempPE is calculated by . Finally the profile of molecule is updated by choosing the best solution between the fitness () and the fitness generated by mutation operator (tempPE). There are two probabilities included in this elementary reaction while synthesis of original CRO provides only one. Synthesis of MCRO algorithm is presented as Algorithm 6.

      Input: molecules

(1) Obtain from and from

(2) Calculate

(3)  if    then

(4)      

(5)      

(6)       do  Mutation of to

(7)       Calculate  the tempPE by

(8)       if  tempPE better than then   Replace with and with tempPE

(9)      Assign    and to the profile of

(10) else

(11)      

(12) end if

(13) Output  and

Algorithm 6: Synthesis of MCRO.

4. Simulation Results and Discussion

4.1. Benchmarks and Parameters

The proposed MCRO was simulated to solve the 23 objective functions based on RCCRO [12]. The benchmark objective functions are classified into three categories, as shown in Table 1.

Table 1: The benchmark objective functions.

Objective function
Number of molecules
Lower-upper bound

Name

Category I

30

0
Sphere model

30

0
Schwefel’s problem 2.22

30

0
Schwefel’s problem 1.2

30

0
Schwefel’s problem 2.21

30

0
Generalized Rosenbrock’s function

30

0
Step function quartic

30

0
Function with noise

Category II

30

Generalized Schwefel’s problem 2.26

30

0
Generalized Rastrigin’s function

30

0
Ackley’s function

30

0
Generalized Griewank function

30

0
Generalized penalized functions

30

0

Remark: in and ,  

Category III

1
Shekel’s foxholes function

4

0.0003075
Kowalik’s function

2

Six-hump camel-back function

2

Branin function

2

Goldstein-Price function

3

Hartman’s family

6

4

Shekel’s family

4

4

Category  I (High-Dimensional Unimodal Functions). Category  I is composed of high-dimensional functions and includes 30 molecules in each container. These functions are easy to solve because each objective function has only one global minimum.

Category  II (High-Dimensional Multimodal Functions). Category  II provides high-dimensional functions and includes 30 molecules in each container. These functions consist of many local minimums and can solve the most difficult problem.

Category  III (Low-Dimensional Multimodal Functions). Category  III includes low-dimensional functions . In each container of functions, , , , and contain 2 molecules; , , , and contain 4 molecules; contains 3 molecules; and contains 6 molecules. These functions comprise several local minimums.

Several parameters contained in MCRO include the main algorithm and the mutation operator parameters. Table 2 illustrates the main parameters in our simulations: popsize InitialKE, buffer, KELossRate, On-wallColl, DecThres, SynThres, and StepSize.

Table 2: MCRO parameters.

Parameter
popsize
InitialKE
Buffer
KELossRate
On-wallColl
DecThres
SynThres

Category I ()
10
1000
0
0.1
0.2
150000
10

Category II ()
20
10000000
100000
0.1
0.2
150000
10

Category III ()
100
1000
0
0.1
0.2
150000
10

The mutation operator parameters in our experiment are probability and DistributionIndex. We set probability = 0.6 and DistributionIndex = 0.9 for every objective function.

4.2. MCRO Solution

To obtain the most appropriate MCRO solution, we considered three types of mutation operators: polynomial, uniform, and nonuniform. Our approach estimates start with alloyed CRO with turning operator, consequently integrating mutation operator to the algorithm. The first, second, and third options are the algorithms with polynomial, uniform, and nonuniform mutations, respectively. We generated the results of these three solutions by running each objective function 25 times. The optimal quality of the solution of each function is the mean of the best global minimum at 25 repeats. If the means of the results are equal, the second key for comparison is the standard deviation. All simulations included in Section 4.3 are performed on the same personal computer and same computing environment with computer Intel Core i7, CPU 3.10 GHz, and Ram 4 GB.

Table 3 compares the results of Category  I functions for the three solutions. All of the solutions yield good results for , , , , and . The algorithm with polynomial mutation is the leader for , and the algorithm with uniform mutation generates the best result for . The average result of Category  I functions is the same for the three solutions.

Table 3: Comparisons of the result of the three solutions for Category I () (the best results are marked in bold).

Function
Result of
Algorithm with mutation

Polynomial
Uniform
Nonuniform

Mean
0
0
0

StDev.
0
0
0

Rank
1
1
1

Mean
0
0
0

StDev.
0
0
0

Rank
1
1
1

Mean
0
0
0

StDev.
0
0
0

Rank
1
1
1

Mean
0
0
0

StDev.
0
0
0

Rank
1
1
1

Mean

StDev.

Rank
1
3
2

Mean
0
0
0

StDev.
0
0
0

Rank
1
1
1

Mean

StDev.

Rank
3
1
2

Average rank
()
1.29
1.29
1.29

Rank
()
1
1
1

Table 4 compares the results of Category  II functions for the three solutions. The results of the three solutions are as good as those of the two other solutions in , , and . The solution with polynomial mutation performs best for and . The solution with nonuniform mutation generates the best result for . The average result of high-dimensional multimodal functions is led by the solution combined with polynomial mutation, nonuniform mutation, and then uniform mutation.

Table 4: Comparisons of the result of the three solutions for Category II () (the best results are marked in bold).

Function
Result of
Algorithm with mutation

Polynomial
Uniform
Nonuniform

Mean

StDev.

Rank

Mean

StDev.

Rank

Mean

StDev.

Rank

Mean

StDev.

Rank

Mean

StDev.

Rank

Mean

StDev.

Rank

Average rank
()

Rank
()

Table 5 compares the results of Category  III functions. The solution with polynomial mutation computes the best result for , , , , and . Meanwhile, the solution with uniform mutation is the leader for , , , , and , and the solution with nonuniform mutation performs best for. The polynomial solution does not generate the best result for the remaining functions, but it produces close results to those of the leader for the first five functions. The average ranking of Category  III functions for the three solutions in order of solution is polynomial mutation, uniform mutation, and nonuniform mutation.

Table 5: Comparisons of the result of the three solutions for Category III () (the best results are marked in bold).

Function
Result of
Algorithm with mutation

Polynomial
Uniform
Nonuniform

Mean

StDev.

Rank

Mean

StDev.

Rank

Mean

StDev.

Rank

Mean

StDev.

Rank

Mean

StDev.

Rank

Mean

StDev.

Rank

Mean

StDev.

Rank

Mean

StDev.

Rank

Mean

StDev.

Rank

Mean

StDev.

Rank

Average rank
()

Rank
()

Overall rank
()

Rank
()

The overall ranking is shown in the bottom of Table 5. The solution with polynomial mutation derives the most excellent results, followed successively by uniform mutation and nonuniform mutation. Hence, we prefer polynomial mutation operator for MCRO.

4.3. Experimental Method and Results

The aim of the present experiment is to evaluate the performance of MCRO by comparing it with three previously published algorithms: RCCRO4 [12], the best version of RCCRO; HP-CRO2 [18], the best version of HP-CRO and a hybrid of CRO and PSO; and OCRO [19], which represents the best results among the three algorithms. We generated the result for MCRO, OCRO, HP-CRO2, and RCCRO4 by running each objective function 25 times.

We provided three experiment methods to evaluate the capability of comparison algorithms. These three methods were evaluated for optimal solution quality, convergence speed, and statistical hypothesis testing.

(1) Optimal Solution Quality Evaluation. For each objective function, the optimal solution or the best global minimum is the most important result in each runtime. In a computing time, each round of iteration contains the local minimum as a result. Consequently, if the current global minimum is worse than the local minimum, then the current global minimum is replaced by the local minimum. The best global minimum at each computing time is generated when the program meets the stop condition of MCRO and other optimization algorithms. The mean of the best global minimum at 25 computing times is the optimal solution of each function. If the optimal solutions of the competitors are equal, then the second key for comparison is the standard deviation. The following optimal solution quality evaluations are demonstrated.

Table 6 presents the optimal solution quality evaluation of MCRO, OCRO, HP-CRO2, and RCCRO4 for high-dimensional unimodal functions or Category  I (). MCRO performs best for , , , , , and but not for . MCRO and OCRO are the best for , , , and ; HP-CRO2 and RCCRO4 derive the same results as MCRO and OCRO for . RCCRO4 generates the best result for . The ranking of optimal solution quality for Category  I functions in descending order is as follows: MCRO, OCRO, HP-CRO2, and RCCRO4.

Table 6: Optimal solution quality for Category I () (the best results are marked in bold).

Function
FEs
Result of
MCRO
OCRO
HP-CRO2
RCCRO4

150000
Mean

StDev.

Rank

150000
Mean

StDev.

Rank

250000
Mean

StDev.

Rank

150000
Mean

StDev.

Rank

150000
Mean

StDev.

Rank

150000
Mean

StDev.

Rank

150000
Mean

StDev.

Rank

Average
Rank
()

Rank

()

Table 7 compares the optimal solution quality for Category  II functions. MCRO performs best for , , , and ; OCRO generates the same results as MCRO for , , and ; HP-CRO2 is the best for ; RCCRO4 has the best result for . The ranking of optimal solution quality for Category  II functions in descending order is the same as that for Category  I.

Table 7: Optimal solution quality for Category II () (the best results are marked in bold).

Function
FEs
Result of
MCRO
OCRO
HP-CRO2
RCCRO4

150000
Mean

StDev.

Rank

250000
Mean

StDev.

Rank

150000
Mean

StDev.

Rank

150000
Mean

StDev.

Rank

150000
Mean

StDev.

Rank

150000
Mean

StDev.

Rank

Average
Rank
()

Rank

()

Table 8 compares the results of Category  III functions. MCRO is the best in this category because it generates the best results for 8/10 functions: , , , , , , , and . MCRO is followed by OCRO, which is the best for . HP-CRO2, which generates the best result for , is in third rank, followed by RCCRO4 in fourth rank. The ranking of optimal solution quality for Category  III functions in descending order is the same as that for Categories I and II.

Table 8: Optimal solution quality for Category II () (the best results are marked in bold).

Function
FEs
Result of
MCRO
OCRO
HP-CRO2
RCCRO4

7500
Mean

StDev.

Rank

250000
Mean

StDev.

Rank

1250
Mean

StDev.

Rank

5000
Mean

StDev.

Rank

10000
Mean

StDev.

Rank

4000
Mean

StDev.

Rank

7500
Mean

StDev.

Rank

10000
Mean

StDev.

Rank

10000
Mean

StDev.

Rank

10000
Mean

StDev.

Rank

Average
Rank
()

Rank

()

Average rank

()
1.39
2.13
2.78
3.17

Overall Rank

()
1
2
3
4

The overall ranking presented at the bottom of Table 8 shows that MCRO performs best in the optimal solution quality evaluation. MCRO is followed successively by OCRO, HP-CRO2, and RCCRO4.

(2) Convergence Speed Evaluation. Convergence speed is an essential issue that indicates the performance of algorithms in optimization. In our experiment, the convergence speed of the algorithm was calculated by counting the number of iterations (FEs) before the algorithm converges with the accepted result. The accepted result is the results given there are the average FEs needed to reach the threshold expressed as acceptable solutions for each objective function such as acceptable solution of is , the robust algorithm has to generate the result at lease not worse than accepted result. The algorithm with fewer FEs is more powerful than that with greater FEs. Table 9 compares the convergence speeds of the algorithms. MCRO demonstrates the fastest convergence speed for all functions, except for , where HP-CRO2 is the best, and for and , where OCRO is the best. In addition, the distance between MCRO and the second best of each function is significant. For , , , , , and , MCRO converges the accepted results with 691, 819, 338, 896, 1056, and 314 FEs, respectively, whereas OCRO, respectively, has 23253, 25053, 31245, 65200, 64947, and 2818 FEs for the same functions. For , MCRO and RCCRO4 undergo 28 and 4721 FEs, respectively. The convergence speed ranking of comparison algorithms for all objective functions from fastest to slowest is as follows: MCRO, OCRO, HP-CRO2, and RCCRO4.

Table 9: Convergence speed (the best results are marked in bold).

Function
Accept
MCRO
OCRO
HP-CRO2
RCCRO
Function
Accept
MCRO
OCRO
HP-CRO2
RCCRO

691
23253
138711
x

29767
95685
51597
81992

Rank
1
2
3
4
Rank
1
4
2
3

334
2620
105625
x

314
2818
2996
3354

Rank
1
2
3
4
Rank
1
2
3
4

819
25053
237038
x

2075
44535
56843
90405

Rank
1
2
3
4
Rank
1
2
3
4

338
31245
128103
x

166
651
752
937

Rank
1
2
3
4
Rank
1
2
3
4

1251
6732
23608
120316

1544
3849
3419
2935

Rank
1
2
3
4
Rank
1
4
3
2

704
4695
29235
97733

5239
8444
7555
x

Rank
1
2
3
4
Rank
1
3
2
4

349
9471
107379
48223

2324
2011
2331
2703

Rank
1
2
4
3
Rank
2
1
3
4

6741
53688
4306
11499

2469
6233
5643
3662

Rank
2
4
1
3
Rank
1
4
3
2

909
3928
103567
138790

8232
6143
7278
6220

Rank
1
2
3
4
Rank
4
1
3
2

895
65200
74078
x

28
5419
7604
4721

Rank
1
2
3
4
Rank
1
3
4
2

1
1056
64947
x
x

3796
5974
7210
4745

Rank
1
2
3
3
Rank
1
3
4
2

15711
75733
28990
89666

Rank
1
3
2
4

Average
(Rank)
1.22
2.43
2.91
3.35

Rank

1
3
4
2

After evaluating the convergence speed on the basis of iteration number, we evaluated the same parameter in MCRO, OCRO, HP-CRO2, and RCCRO4 by drawing a convergence curve for specific functions (, , , , , and ) in a particular run. MCRO remains the most advantageous among the four algorithms.

(3) Statistical Hypothesis Testing. Friedman test [26], a well-known nonparametric statistical test, was used to assess the statistical hypothesis. Friedman test evaluates the differences or equality of results among competitor algorithms. We calculated the Friedman statistic according to distribution with degrees of freedom. Then, we estimated the value according to normal approximations. The Friedman statistic is presented as Formula (6). Parameter is the number of objective functions, which is 23 in our test. represents the number of comparison algorithms. In this case, we compared our proposed algorithm MCRO with three previous algorithms (OCRO, HP-CRO2, and RCCRO4); hence . Friedman rank or is searching by transforming the quality results of MCRO, OCRO, HP-CRO2, and RCCRO4 to ranks for each objective function (). In cases of equal ranks, the average ranks are assigned:

Table 10 demonstrates the results of Friedman rank test in terms of the comparison of optimal solution quality and convergence speed. MCRO achieves the best rank in the statistic test comparing both the optimal solution quality and the convergence speed on the basis of the corresponding Friedman ranks 1.59 and 1.22, the statistic values 21.76398 and 35.96694, and the values and . In addition, the results explicitly display significant differences across the competing algorithms. In multiple comparisons, the post hoc test was utilized to compare a set of algorithms with a control algorithm (best algorithm). The post hoc test starts with finding the test statistic of the th and th algorithms, which is processed using Formula (7). Consider

where and are the Friedman ranks of the compared algorithms.

Table 10: Result of Friedman test.

Algorithm
Friedman ranks
Friedman ranks

Optimal result quality
Convergence

MCRO
1.59
1.22

OCRO
2.33
2.43

HP-CRO2
2.85
2.93

RCCRO4
3.24
3.41

Statistic
21.76398
35.96694

value

The unadjusted value was calculated using the value from the table of normal distribution . The value was then compared with an appropriate level of significance . In the present study, the following three computing procedures were applied to obtain the adjusted values (APVs): Bonferroni-Dunn procedure [27] presented as Formula (8), Holm procedure [28] assigned as Formula (9), and Hochberg procedure [29] expressed as Formula (10). Subscripts and are indexes that each corresponds to a concrete hypothesis, and is the -value obtained for the th hypothesis.

The Bonferroni-Dunn procedure adjusts the value through a single step:

The Holm procedure adjusts the value in a step-down manner:

The Hochberg procedure adjusts the value in a step-up direction:

The results of the APVs for the Friedman test are shown in Table 11, where the control algorithm is the proposed algorithm MCRO. These results comprise the value, unadjusted values, and APVs that were extracted using the post hoc procedures and computed using the three procedures. We compared the results for both optimal solution quality and convergence speed. MCRO is superior to RCCRO4, HP-CRO2, and OCRO in all post hoc procedures considered.

Table 11: Adjusted values for the Friedman test (control algorithm: MCRO).

Compare method
Algorithm

Unadjusted
value
Bonferroni-Dunn
Holm
Hochberg

Result quality (StDev.)
RCCRO4

HP-CRO2

OCRO

Convergence
RCCRO4

HP-CRO2

OCRO

(4) Computation Time. Normally, the numbers of computation times are often proportional to capability of computer. Unlike the other results such as optimal solution quality and convergence speed, although the simulations perform on various personal computers, these results are very approximate. Hence our experiments disregard using the computation time as an evaluation method. However, the computation times appearing in Table 12 indicate that, in our simulated situation, the computer times for these four comparison algorithms are closed.

Table 12: Computation times.

Function
Time to reach the best global optimum (sec.)

MCRO
OCRO
HP-CRO2
RCCRO4

0.0668
0.0050
0.0052
0.0063

0.0069
0.0066
0.0056
0.0068

0.0202
0.0073
0.0086
0.0095

0.0070
0.0076
0.0065
0.0123

0.0244
0.0102
0.0112
0.0165

0.0105
0.0098
0.0149
0.0088

0.0123
0.0274
0.0074
0.0553

0.0133
0.0528
0.0621
0.0433

0.0263
0.0324
0.0494
0.0335

0.0162
0.0195
0.0295
0.0443

0.0231
0.472
0.0547
0.0335

0.0238
0.0275
0.0288
0.0553

0.0255
0.0287
0.0301
0.0295

0.0007
0.0009
0.0009
0.0308

0.0165
0.0151
0.0156
0.0152

<0.0001
0.0005
0.0005
0.0005

<0.0001
0.0005
0.0009
0.0005

0.0002
0.0007
0.0007
0.0007

0.0001
0.0010
0.0010
0.0009

0.0005
0.0012
0.0011
0.0013

0.0005
0.0005
0.0005
0.0006

0.0006
0.0008
0.0008
0.0006

0.0008
0.0008
0.0009
0.0007

4.4. Discussion

Section 4.2 recommends that the best MCRO solution is the combination of CRO, turning operator, and polynomial mutation operator. The solution with polynomial mutation obtains the most appropriate results over uniform and nonuniform mutations.

The experimental results in Section 4.3 substantiate that MCRO is more powerful than OCRO, HP-CRO2, and RCCRO4. MCRO can generate the best result on most of the 23 objective functions (see Figure 1). We determined several issues, such as optimal solution quality, convergence speed, and statistical hypothesis testing, to evaluate algorithm performance. Table 6 shows that MCRO can generate the best optimal solution for all high-dimensional unimodal functions. We can obtain the optimal solution 0 (equal ) and StdDev 0 for five functions (, , , , and ). MCRO achieves the best average rank in solving high-dimensional multimodal functions (Table 7) and performs the optimal solution 0 (equal ) and StdDev 0 for two functions ( and ). For low-dimensional functions (Table 8), the results of MCRO are close to the true optimal, indicating that this algorithm is outstanding and consistent. Moreover, some comparison algorithms can generate the same results as MCRO in solving several objective functions, but MCRO converges faster than the other algorithms (Table 10).

Figure 1

5. Conclusions and Future Work

This paper presents a hybrid optimization algorithm MCRO that solves global numerical optimization problems by combining CRO with turning and mutation operators. The most excellent MCRO framework is the utilization of the solution with polynomial mutation. Therefore, we provide polynomial mutation operator into our proposed approach. Our algorithm is advantageous because the nature of CRO is suitable for global numerical optimization, and turning operator is a perfect method to improve optimal solution quality and algorithm reliability. Furthermore, polynomial mutation operator accelerates algorithm convergence. To analyze the evaluation results, we compared the results of MCRO and other previously published algorithms (OCRO, HP-CRO2, and RCCRO4) in terms of optimal solution quality, convergence speed, and statistical hypothesis testing. There results indicate that MCRO is superior to other algorithms in solving global numerical optimization problems. Several potential parameters such as Popsize, InitialKE, buffer, KELossRate, On-wallColl, DecThres, SynThre, StepSize, probability, and DistributionIndex were also discussed.

MCRO is useful in solving global numerical optimization problems with high-dimensional unimodal, high-dimensional multimodal, and low-dimensional functions. However, whether or not MCRO will also be excellent for solving other problem types is unclear. Hence, the applicability of MCRO to other problem types requires further research and consideration.

Our future work will focus on investigating the applicability of MCRO to other numerical optimization problems and practical engineering optimization problems. We also intend to develop a new hybrid metaheuristic approach to solve optimization problems.

Conflict of Interests

The authors declare that there is no conflict of interests regarding the publication of this paper.

Acknowledgments

This work was partially supported by the National Natural Science Foundation of China (Grant nos. 61173107 and 91320103), the National High Technology Research and Development Program of China (Grant no. 2012AA01A301-01), the Special Project on the Integration of Industry, Education and Research of Guangdong Province, China (Grant no. 2011A091000027), and the Project on the Integration of Industry, Education and Research of Guangdong Province, China.

References

D. E. Goldberg, Genetic Algorithms in Search, Optimization and Machine Learning, Addison-Wesley Longman, Boston, Mass, USA, 1989.

J. H. Holland, Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control and Artificial Intelligence, MIT Press, Cambridge, Mass, USA, 1992.

J. Kennedy and R. Eberhart, “Particle swarm optimization,” in Proceedings of the IEEE International Conference on Neural Networks, vol. 4, pp. 1942–1948, December 1995.

R. Dawkins, The Selfish Gene, Oxford University Press, Oxford, UK, 1976.

P. Merz and B. Freosleben, “A genetic local search approach to the quadratic assignment problem,” in Proceedings of the of the 7th International Conference on Genetics Algorithms, pp. 465–472, San Diego, Calif, USA, 1997.

D. Karaboga, “An idea based on honey bee swarm for numerical optimization,” Tech. Rep. TR06, Computer Engineering Department, Engineering Faculty, Erciyes University, 2005.

M. Dorigo, V. Maniezzo, and A. Colorni, “Ant system: optimization by a colony of cooperating agents,” IEEE Transactions on Systems, Man, and Cybernetics, Part B: Cybernetics, vol. 26, no. 1, pp. 29–41, 1996.

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.

Z. W. Geem, J. H. Kim, and G. V. Loganathan, “A new heuristic optimization algorithm: harmony search,” Simulation, vol. 76, no. 2, pp. 60–68, 2001.

A. Y. S. Lam and V. O. K. Li, “Chemical-reaction-inspired metaheuristic for optimization,” IEEE Transactions on Evolutionary Computation, vol. 14, no. 3, pp. 381–399, 2010.

A. Y. S. Lam and V. O. K. Li, “Chemical reaction optimization: a tutorial,” Memetic Computing, vol. 4, no. 1, pp. 3–17, 2012.

A. Y. S. Lam, V. O. K. Li, and J. J. Q. Yu, “Real-coded chemical reaction optimization,” IEEE Transactions on Evolutionary Computation, vol. 16, no. 3, pp. 339–353, 2012.

A. Y. S. Lam, J. Xu, and V. O. K. Li, “Chemical reaction optimization for population transition in peer-to-peer live streaming,” in Proceedings of the IEEE Congress on Evolutionary Computation (CEC '10), pp. 1–8, IEEE, Barcelona, Spain, July 2010.

J. Xu, A. Y. S. Lam, and V. O. K. Li, “Chemical reaction optimization for the grid scheduling problem,” in Proceedings of the IEEE International Conference on Communications (ICC '10), pp. 1–5, Cape Town, South Africa, May 2010.

J. Xu, A. Y. Lam, and V. O. Li, “Parallel chemical reaction optimization for the quadratic assignment problem,” in Proceedings of the International Conference on Genetic and Evolutionary Methods (GEM '10), pp. 125–131, Las Vegas, Nev, USA, July 2010.

J. Xu, A. Y. S. Lam, and V. O. K. Li, “Chemical reaction optimization for task scheduling in grid computing,” IEEE Transactions on Parallel and Distributed Systems, vol. 22, no. 10, pp. 1624–1631, 2011.

J. J. Q. Yu, A. Y. S. Lam, and V. O. K. Li, “Evolutionary artificial neural network based on chemical reaction optimization,” in Proceedings of the IEEE Congress on Evolutionary Computation (CEC '11), pp. 2083–2090, IEEE, New Orleans, La, USA, June 2011.

T. T. Nguyen, Z. Y. Li, S. W. Zhang, and T. K. Truong, “A Hybrid algorithm based on particle swarm and chemical reaction optimization,” Expert Systems with Applications, vol. 41, no. 5, pp. 2134–2143, 2014.

Z. Y. Li, Z. Li, T. T. Nguyen, and S. M. Chen, “Orthogonal chemical reaction optimization algorithm for global numerical optimization problems,” Expert Systems with Applications, vol. 42, no. 6, pp. 3242–3252, 2015.

Wikipedia, “Mathematical optimization,” http://en.wikipedia.org/wiki/Numerical_optimization

E. Guggenheim, Thermodynamics: An Advanced Treatment for Chemists and Physicists, Wiley, North Holland, 5th edition, 1967.

X. Zhao, X.-S. Gao, and Z.-C. Hu, “Evolutionary programming based on non-uniform mutation,” Applied Mathematics and Computation, vol. 192, no. 1, pp. 1–11, 2007.

M. Hamdan, “On the disruption-level of polynomial mutation for evolutionary multi-objective optimisation algorithms,” Computing and Informatics, vol. 29, no. 5, pp. 783–800, 2010.

K. Deb, S. Agrawal, A. Pratab, and T. Meyarivan, “A fast and elitist multiobjective genetic algorithm: NSGA-II,” IEEE Transactions on Evolutionary Computation, vol. 6, no. 2, pp. 182–197, 2002.

S. Cathabard, P. K. Lehre, and X. Yao, “Non-uniform mutation rates for problems with unknown solution lengths,” in Proceedings of the 11th Workshop Proceedings on Foundations of Genetic Algorithms (FOGA '11), pp. 173–180, ACM, Schwarzenberg, Austria, January 2011.

J. Derrac, S. Garcia, D. Molina, and F. Herrara, “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–19, 2011.

O. J. Dunn, “Multiple comparisons among means,” Journal of the American Statistical Association, vol. 56, no. 293, pp. 52–64, 1961.

S. Holm, “A simple sequentially rejective multiple test procedure,” Scandinavian Journal of Statistics, vol. 6, no. 2, pp. 65–70, 1979.

Y. Hochberg, “A sharper Bonferroni procedure for multiple tests of significance,” Biometrika, vol. 75, no. 4, pp. 800–802, 1988.