International Journal of Computational Intelligence Systems

In this paper, a Gravitational Co-evolution and Opposition-based Optimization (GCOO) algorithm is proposed for solving unconstrained optimization problems. Firstly, under the framework of gravitation based co-evolution, individuals of the population are divided into two subpopulations according to their fitness values (objective function values), i


Introduction
Evolutionary algorithms are a series of problem solving methods based on simulating the natural evolving system, the development of which can be traced back as early as 1950s.Compared with the traditional numerical optimization methods, evolutionary algorithms have many advantages, such as, being unconstrained by the search space limitations or/and the function types, as well function gradient information being unnecessary for optimizing, etc. Evolutionary algorithms have been widely applied to solving optimization problems.The canonical evolutionary algorithms, including genetic algorithms (GA) [1], differential evolution (DE) [2][3], etc., have some common disadvantages, for example, the relatively slow convergence speed, the tendency of being trapped in local optimum/optimums, and the unstable robustness for various of problems.Therefore, these canonical methods need to be improved, since the problems to be solved in the both the real word and the theoretical scope are increasingly complicated.
Evolutionary algorithms are population-based algorithms, and the population usually consists of several to hundreds of individuals, depending on different strategies and applications.The individuals with high fitness values, namely elitist individuals or elites, play important roles in promoting the evolution process [4].Elitist strategy is a method that keeps one or several individuals with the best fitness into offspring generation, unconditionally, which helps the excellent attributes or genes pass down to offspring, to accelerate the convergence speed.The elitist strategy has been applied to many evolutionary algorithms, for instances, the M-elite co-evolutionary algorithm (MECA) [5] keeps 20 elites, while the fireworks algorithm [6] keeps only an elite to maintain the currently most excellent character of the population throughout the evolution.Inspired by the elitist strategy, the population sorting strategy [7] was used to differentiate individuals with different fitness, which could be seen as an enhanced strategy of elitism.D. H. Wolpert and W. G. Macready [8] proposed the no free lunch (NFL) theorem in 1997, which has given us a proof that any two algorithms for solving all the optimization problems could meet an equivalent performance in average.However, their work in 2005 shows that cooperative evolution (co-evolution) is not constrained by the NFL theorem [9], thus, for all the optimization problems, two types of co-evolutionary algorithms may meet that, the average performance of one may be better than the other, which implies that the performance of the co-evolutionary algorithms are of great potential for improvement.
Opposition-based differential evolution (ODE) [10] [11] was firstly proposed by S. Rahnamayan [11], ODE was widely and profoundly researched.In 2007 S. Rahnamayan and H. R. Tizhoosh added a variable jumping rate [12] into it, and in the same year proposed quasi-oppositional differential [13].J. Tang and X. Zhao proposed an improved opposition-based DE [14] in 2010, which studied on the generating method of individuals.In 2011, A. Esmailzadeh and S. Rahnamayan presented the strategy of protective generation jumping [15], i.e., the generation jumping was stopped, iff it did not take effect.
As an improved version of the binary difference gravitational evolution (BDGE), the elitism and gravitational evolution based co-evolutionary algorithm (EGCoEA) [16] highlighted the status of the elitist individuals in the process of evolution, and gave up the process of individuals clustering.In EGCoEA, the search agents were divided into two subpopulations, thus, a subpopulation of elites and another common subpopulation, and they updated via three methods, included two types of mutual updates and an ego update.The evaluation of gravitational measurement (GM) is used to define the relationships of the elites and the common individuals.The update processes followed the following two principles: 1).the elitist individuals dominate the common individuals; 2).the elitist individuals and the common individuals cooperate to evolve.
In this paper, we proposed the gravitational co-evolution and opposition-based optimization (GCOO) algorithm that inherits the general gravitation based frameworks, including the subpopulations division, the calculation of GM values, etc., but with some important regulation, includes using probability parameters to control the update rate.Three essential update operations via gravitational co-evolution are used to update the agents, as well as an operation based on the so called opposition individuals.In order to integrate the gravitational and opposition-based models organically, the parameters and strategies are adjusted based on a series of trial-anderror experiments.
The rest of this paper is organized as follows: Section 2 gives the description of the two critical strategies, and in Section 3 the proposed algorithm is interpreted in detail, followed by a comprehensive series of experimental studies provided in Section 4. Finally, the work is concluded in Section 5, and Appendix I lists all the benchmark functions.

Problem Definition
An unconstrained optimization problem can be generally described as follows.

Gravitational Co-evolution and Oppositionbased Strategies
A population is denoted as

Gravitational Co-evolution Strategy
Gravitation means the attractive force between two objects, which exists between any two objects with masses.The value of gravitation is in proportion to the mass of either object, while in inverse proportion to the distance of them.Calculation of gravitation can be described as , where G stands for gravity constant, 1 m and 2 m stand for the mass of two objects, respectively, and r represents the distance between the two objects.
The idea of solving optimization problems with gravitational model is based on the fact that if the calculated gravitational value is large, there may be two reasons for it, 1) either one or both objects have big masses; 2) the distance between the two objects is small.Obviously the first case is profitable, while the second not only brings benefit for the accuracy, but brings some risk as well, because it may lead to convergence in a local optimal.Inspired by the calculation of gravitation, i.e.,   .The other elites calculate the GM values to the common individuals in the same way, denoted as GM i,j , 1 iM  , 1 j NP M    .Inversely, for each common individual, a GM value to any elitist individual is also calculated.In Fig. 2 we take the common individual circle 1 as an example, where the dot dash lines describe the relationship of common circle 1 with any elitist individual.The relationships established by the gravitational measurements can be seen in two perspectives that no matter the leading roles are the elites or the commons individuals.Gravitational measurement values are calculated by Equation 1.
, , where, i x PopE  , j x PopC  , , ij r is the Euclidean distance between elitist individual i x and common individual j x .A constant 1 K  ensures that the denominator is nonzero.A larger K value will offset the influence of , ij r , which may rule out the large GM value caused by the tiny distance case.Theoretically, the optimal value of K should be: Generally, the random initializations make individuals equivalent, thus, 0 K represents the farthest distance that any two individuals may reach in the search space.However, empirical setting shows that when 1 K  , the influence of , ij r is fairly small, and not local-optimal- oriented.In [17], the authors firstly introduced K in order to guarantee the denominator nonzero, which performs well in optimizing low-dimensional problems.

Opposition-based Strategy
There are particles and antiparticles, i.e., opposite particles in the field of physics, subject and object in philosophy, subject and object in philosophy of science, good and evil in animism, and Yin and Yang symbols in the Taichi, where black and white represent Yin and Yang, respectively, belonging to the Chinese traditional culture.It seems the footprints of the opposition concept can be observed in many areas around us.
The opposition individual in evolutionary algorithms is defined as follows.Suppose a vector , each dimension of which is generated according to the Equation 2.
As shown in Fig. 3, there are three simplest examples of opposition individuals, including one, two and three dimensional cases.In the first case, individual and its opposite are symmetric about the central point.In the second case, opposition of 12 ( , ) . And in the last case, there are two pairs of individuals, thus, 1 P vs. 1 P  , and 2 P vs. 2

Gravitational Co-evolution and Oppositionbased Optimization Algorithm
There are three gravitational-based update methods and one opposition-based operation in the proposed algorithm.For the sake of efficiency improvement, not all the updates or operations are implemented all the time.We bring two methods to control the utilities of updates.The first is for different individuals, the elitists and the commons, different update methods are used; and the second is that a jumping rate is introduced to control the probability of the opposition-based operation.

GCOO Algorithm Description
GCOO proposes three types of update methods, which are inherited from the EGCoEA in framework, but with some modifications, including parameters and strategies in order to adapt to the new algorithm.The three update methods include an ego update of elitist individuals themselves, a mutual compulsory update of common individuals and a cooperation update of common individuals.

The Ego Update of Elitist Individuals
The binary difference strategy [16][18] is used for an ordered elitist subpopulation, and a similar idea is presented in the MECA algorithm, as the cuboid crossover operator II (CCOII) operator [5].As shown in Fig. 4, newly temporary individuals are generated by a two-candidate-mutation, but there are always more than three candidates in the mutation strategies of canonical differential evolution.The ego updates of elitist individuals themselves introduces a probability parameters T R into binary difference proposed in [16] and [18], thus, the current dimension of the temporary individual is generated within a probability of T R , otherwise it is not updated and the original dimension is kept.The purpose of introducing T R is to keep excellent features of elitist individuals better, and it can be described as Equation 3.
, otherwise 1 , , 1 where ,, T , which is generated by elitist individuals i x and j x , (0,1) U stands for a uniformly distributed random decimal between 0 and 1.
The worse individual between the temporary individual , ij T and the current worst elite is eliminated: ,, , ( ) ( ) ,

Common Individuals Update
Common individuals have two types of update methods: a compulsory update and a cooperation update.In the evolutionary process, gravitational measurement values are used to describe the relationship between individuals belonging to the two subpopulations.
For each elitist individual, a common individual that has the minimum gravitational measurement value to the elitist individual is selected, and compulsory update is implemented on the selected common individual.The compulsory updated individual will be completely replaced: either replaced by the elite which has the greatest distance from it, or by a randomly selected elitist individual.
Supposed that a common individual [] j ci has the minimum gravitational measurement value with the elite i x , and then it is to be mandatorily updated: x is the randomly selected elite.R R is the replacement probability parameter, the analysis of which can be found in section 4.1, as well as the temporary probability parameter T R .
For a common individual whom is not to be mandatorily updated, a cooperation update is performed.First, the elite which has the largest GM value from the common individual is searched, and then a cooperation update by the method of binary difference is implemented.The newly produced individuals via the cooperation update still remain part genes of their parent, i.e., the nonmandatory-updated common individuals, and this means an incompletely (the mandatory updated is a complete one) replace process, and it is distinguished to the mandatorily updated.Supposed that a non-mandatoryupdated common individual j c has the largest GM value with the elitist individual i x , and then a binary difference is implemented according to the Equation 6.
where , jk c' is the th(1 ) k k n  dimension of the newly produced ' j c , and other symbols are as stated above.
Fig. 5 shows an example that the elite individual circle 1 with its all calculated GM values GM 1, j , (j=1,2,…,NP-M), among which the smallest is GM 1,2 , i.e., the value between the common individual circle 2 (shadowed) and the elite individual circle 1 calculated according to the Equation 1. Then the common circle 2 will be mandatorily updated according to the Equation 5.After that every elitist individual has eliminated a common individual, there still leave some common individuals survived....

Initialization of Population
elitist subpopulation common subpopulation

Fig. 5 An Example of the Update Process
In the reverse way, we take another example from the view that focuses on common individuals, where suppose the common individual circle 1 survives after the mandatory update, and then common circle 1 obtains the right to choose the elitist individual which has the largest GM value, i.e., elitist circle 2 (shadowed) in Fig. 5, which has the maximal GM value, i.e., GM 2,1 among all the GM i,1 , (i=1,2,…,M) values.Common circle 1 updates itself through the cooperation with elite circle 2 according to the Equation 6.Note that mandatory updates of common individuals are not equivalent to "be deleted", and the survived individual indicates non-mandatory-updated.Since the population is divided into two subpopulations, and common subpopulation size is always greater than the elites, there are always survived individuals in the common subpopulation.

Opposition-based Operation
The opposition-based operation differential evolution is simple and effective, where a constantly jumping rate is used to control in the current generation whether the opposition-based operation is to be implemented.The operation is as well a simple one and we take the elitist subpopulation PopE as an example to illustrate the opposition-based operation.Once the condition is satisfied, and the elitist individuals are ready for the operation.The calculation of opposite individuals can be described as Equation 7. ,,

GCOO Flowchart
Fig. 6 shows the flowchart of GCOO algorithm.The module (1) shows the three update methods which are based on gravitational co-evolution, and the module ( 2) is the opposition-based operation.Note that in the Step 3 of module ( 2), the * Pop represents that the population could be Pop , PopE or PopC , depending on which opposition-based strategy is employed, and it will be discussed in Section 4.2.

Probability Parameters Analysis
The temporary probability parameter for the update of the elitist individuals and the replacement probability parameter for common are introduced to control the performance of the update method in the gravitation based co-evolution.The experiments focus on the alterations that affect the performance of optimization, using the functions F2 and F9 in Appendix I.The data is of the average of 50 independently random trials, and each trial stops when it reaches 300,000 times objective function evaluations.As shown in Fig. 7(a), the average performance of F9 declines as 0.7 T R  , and when 0.9 T R  the result seems unsatisfied.A similar situation happens to F2, where when 0.9 T R  the result starts to become bad.In Fig. 7(a), the overlapped two plots suggest that the change of R R has no influence on optimization of F2 and F9.According to these, we can find that GCOO algorithm is not that sensitive to the change of the probability parameters when R T is less than 0.7, hence, we may empirically set the two parameters as R T = R R =0.5, which is acceptable for most of the optimization problems we meet.

Operation Strategy Analysis
As opposition-based operation is introduced into the population which consists of two subpopulations, we can easily find there are three possible strategies that the opposition-based operation can impact the performance.First one is that only the elitist individuals undergo the opposition-based operation, and we denote it as strategy S1.The second strategy should be that only the common individuals are operated by opposition-based operation, which is denoted as S2.The last one is both the two subpopulations undergo the opposition-based operation, and it is S3.In addition, we set a control group which does not include any opposition operation and we denote it as S0.Under the same of all the conditions, we compare the four strategies, using the functions F5, F9 and F11 in Appendix I.
Obviously, strategy S1 wins in the competitions of all, while S3 is better than S2.The results that strategy S3 obtains are worse than that of S0, which implies it is not workable to apply the opposite operation on the common individuals.

Benchmark Test Settings
A real valued function set F={F1, F2, ..., F15} including 15 well-known benchmark functions is employed to evaluate the performance of GCOO.These 15 functions were used as evaluation tool in [5] and partly in [16].The mathematical forms of these functions can be found in these references.Among the 15 benchmark functions, F1~F5 are unimodal functions; F6 is a one-step function; F7 is a quartic function with noise; F8~F15 are multimodal functions.In the experiment, functions F1~F13 are 30-dimensional, while F14 and F15 are 100-dimensional.
To evaluate the impact of the proposed algorithm, we compare the experimental results found by GCOO with other three benchmark evolutionary algorithms.The designs and parameters settings of algorithms are summarized below.
1) GCOO: there are three parameters to set in GCOO, i.e., the population size 100 NP  , the elitist subpopulation size 20 M  , the jumping rate of opposition operation 0.5 Jr  , and T R = R R =0.5, with the opposition-based operation strategy S1.
2) MECA: the parameters of MECA are set in accordance with that in [5], i.e., the population size 100 NP  , the elitist subpopulation size 20 M  , and the probability of cuboid crossover 0.3 Pcu  .
3) EGCoEA: the parameters of MECA are set in accordance with that in [16], i.e., the population scale Co-published by Atlantis Press and Taylor & Francis Copyright: the authors 4) ODE: the parameters of ODE are set in accordance with that in [10], i.e., the population size 100 NP  , the differential scale factor 0.5 F  , crossover rate 0.9 Cr  , and jumping rate constant 0.3 Jr  , with the mutation strategy of DE/rand/1/bin.The stop criterion is, if the accumulated number of function evaluations exceeds 300,000 times, the iteration stops.For each benchmark function, we carry out 50 independently random experiments on searching for its optimum.

Benchmark Test Results Analysis
Tables 2 to 4 list the experimental results of benchmark test, where the data including the mean function values (MFV) and standard deviations (SD) of the optimization results are collected from an average of 50 independently random experiments.
As can be seen from Table 2, GCOO and ODE find the theoretical minimum values of F1, F2, F3 and F5, performs better than the other algorithms.As for F4, only GCOO finds a relatively satisfied result that the MFV reaches 10 -31 , and the SD reaches 10 -58 .
In Table 3, GCOO obtains the lead results of F6~F9, of which EGCoEA does unsatisfactory for F9, MECA does unsatisfactory for F7 and F8, and ODE for the MFV of F7.For F10, only MECA gets the theoretical minimum value, but the other three can finds a relative satisfied mean result reaching 10 -16 .
In Table 4, where lists the relatively difficult problems to solve, both GCOO and EGCoEA find the relatively best minimum values of F11, F12, F13 and F15.As for F14, MECA find the best solution and GCOO ranks in the second place.Fig. 8 shows the convergence processes of GCOO, EGCoEA and MECA of 50-trial-averaged data of functions F3 and F11.As can be seen form the figure, the proposed algorithm has much higher convergence speed compared with EGCoEA and MECA.As for F3, the GCOO algorithm can calculate it within 150,000 objective function evaluations; while for F11 which requires less than 3,000 evaluations.The converging figures of F3 and F11 are also partly reflected by the data in Tables 2 and 4, where GCOO finds better average results than MECA, while the plots of other comparison cannot be seen from tables because both GCOO and EGCoEA get the same average result when the terminal condition meets.

Conclusions
In this paper, the gravitational co-evolution and opposition-based optimization algorithm was proposed.With the framework of gravitational-based co-evolution, individuals were divided into two subpopulations according to their fitness values, and three types of gravitational-based updates were implemented.With the opposition-based operation, both gravitational-based and opposition-based methods collaborated to find the optimization.Three benchmark algorithms and fifteen benchmark functions were employed to evaluate the performance of GCOO, and the substantial experimental data has shown that the proposed algorithm has better effectiveness and robustness in solving unconstrained optimization problems.
Possible directions for future work include applying the algorithm into other optimization fields, e.g., multiobjective optimization and large-scaled problems, and improving the usage of cooperative strategies and parameters as well.

Appendix I
1. Sphere Model

12 ( 12 (
NP.At the initial stage of an iteration, the population is divided into two subpopulations based on individuals' fitness values.M individuals with relatively better fitness constitute the elitist subpopulation, denoted as

Fig. 1
Fig.1shows a population that is partitioned into two subpopulations.The elitist individuals are on the left of the figure, and they are ordered according to their fitness values.The right part shows the common individuals, satisfied that any common individual's fitness is worse than the worst elitist individual's fitness.

,
we present the values that describe the relationship of two individuals belonging to two different subpopulations, namely the Gravitational Measurement (GM) values, which are calculated only between individuals from two different subpopulations, while individuals in the same subpopulation do not have the GM values.

Fig. 2
Fig. 2 An Example of Gravitational Measurement

1 P 2 PFig. 3
Fig. 3 Illustration of Individuals and the Corresponding Oppositions

1 . 1 .
Fig. 6Flowchart of Gravitational Co-evolution and Opposition-based Optimization Algorithm th i vector of the elitist subpopulation PopE and the opposite elitist subpopulation PopE  , respectively.Consequently, we have a double-sized temporary population { PopE , PopE  }, and the next step is to select M fittest individuals from{ PopE ,  } to form the updated PopE .
Fig. 7 Analysis of Probability Parameters of Solving (a) F3 and (b) F11 with Two Algorithms In summary, we tested GCOO, EGCoEA and MECA by 15 functions and tested ODE by 12 functions.The proposed GCOO ranks in the first of all, because the algorithm finds the most satisfying minimums in 13 out of 15 functions.The solutions that GCOO finds in F10 and F14 both rank the second place.This shows the effectiveness and stability of GCOO, which achieves a distinct improvement of both gravitation-based and opposition-based algorithms.

12 .
Generalized Penalized Function I Co-published by Atlantis Press and Taylor & Francis Copyright: the authors , H. Tizhoosh, and et al. in 2006, which based on the principle of opposition-based learning, collaborated with DE.Since proposed in CEC'2006

Table 1
Analysis of Four Types of Opposition-Based

Table 2
T