Abstract

Differential evolution (DE) is a population-based stochastic search algorithm which has shown a good performance in solving many benchmarks and real-world optimization problems. Individuals in the standard DE, and most of its modifications, exhibit the same search characteristics because of the use of the same DE scheme. This paper proposes a simple and effective heterogeneous DE (HDE) to balance exploration and exploitation. In HDE, individuals are allowed to follow different search behaviors randomly selected from a DE scheme pool. Experiments are conducted on a comprehensive set of benchmark functions, including classical problems and shifted large-scale problems. The results show that heterogeneous DE achieves promising performance on a majority of the test problems.

1. Introduction

Differential evolution (DE) [1] is a well-known algorithm for global optimization over continuous search spaces. Although DE has shown a good performance over many optimization problems, its performance is greatly influenced by its mutation scheme and control parameters (population size, scale factor, and crossover rate). To enhance the performance of DE, many improved DE variants have been proposed based on modified mutation strategies [2, 3] or adaptive parameter control [46].

The standard DE and most of its modifications [710] make use of homogeneous populations where all of the individuals follow exactly the same behavior. That is, individuals implement the same DE scheme, such as DE/rand/1/bin and DE/best/1/bin. The effect is that individuals in the population behave with the same exploration and/or exploitation characteristics [11]. An ideal optimization algorithm should balance exploration and exploitation during the search process. Initially, the algorithm should concentrate on exploration. As the iteration increases, it would be better to use exploitation to find more accurate solutions. However, it is difficult to determine when the algorithm should switch from an explorative behavior to an exploitative behavior. To tackle this problem, a new concept of heterogeneous swarms [11] is proposed and applied to particle swarm optimization (PSO) [12, 13], where particles in the swarm use different velocity and position update rules. Therefore, the swarm may consist of explorative particles as well as exploitative particles. This makes the heterogeneous PSO have the ability to balance exploration and exploitation during the search process.

In this paper, a simple and effective heterogeneous DE (HDE) algorithm is proposed inspired by the idea of heterogeneous swarms [11]. In HDE, individuals will be allocated to different search behaviors randomly selected from a DE scheme pool. However, the concept of heterogeneous swarms used in DE is not new. Qin et al. [6] proposed a self-adaptive DE (SaDE), where individuals are also allowed to implement different mutation schemes according to a complex probability model. Gong et al. [14] combined a strategy adaptation mechanism with four mutation strategies proposed in JADE [3]. For other self-adaptive DE variants [8], the search characteristics of individuals dynamically change according to the adaptation of the control parameters (scale factor and/or crossover rate). The HDE proposed in this paper differs from the above DE variants. In HDE, the behaviors are randomly assigned from a DE scheme pool. By the suggestions of heterogeneous PSO [11], two heterogeneous models are proposed. This first one is static HDE (sHDE), where the randomly selected behaviors are fixed during the evolution. The second one is dynamic HDE (dHDE), where the behaviors can randomly change during the search process. Experimental studies are conducted on a comprehensive set of benchmark functions, including classical problems and shifted large-scale problems. Simulation results demonstrate the efficiency and effectiveness of the proposed heterogeneous DE.

The rest of the paper is organized as follows. In Section 2, the standard DE algorithm is briefly introduced. The HDE is proposed in Section 3. Experimental simulations, results, and discussions are presented in Section 4. Finally, the work is concluded in Section 5.

2. Differential Evolution

There are several variants of DE [1], which use different mutation strategies and/or crossover schemes. To distinguish these different DE schemes, the notation “DE///” is used, where “DE” indicates the DE algorithm, “” denotes the vector to be mutated, “” is the number of difference vectors used in the mutation, and “” stands for the type of crossover scheme, exponential (exp) or binomial (bin). The following section discusses the mutation and crossover operations.

2.1. Mutation

For each vector at generation , this operation creates mutant vectors based on the current parent population. The following are five well-known variant mutation strategies:(1)DE/rand/1 (2)DE/best/1 (3)DE/current-to-best/1 (4)DE/rand/2 (5)DE/best/2 where the indices , , , , and are mutually different random indices chosen from the set , is the population size, and all are different from the base index . The scale factor is a real number that controls the difference vectors. is the best vector in terms of fitness value at the current generation .

2.2. Crossover

Similar to EAs, DE also employs a crossover operator to build trial vectors by recombining the current vector and the mutant one . The trail vector is defined as follows: where is the predefined crossover probability, is a uniform random number within for the th dimension, and is a random index.

2.3. Selection

After the crossover, a greedy selection mechanism is used to select the better one from the parent vector and the trail vector according to their fitness values . Without losing of generality, this paper only considers minimization problems. If, and only if, the trial vector is better than the parent vector , then is set to ; otherwise, we keep the same with :

3. Heterogeneous DE

In the standard DE and most of its modifications, individuals in the population behave with the same search characteristics, exploration, and/or exploitation, because of the use of the same DE scheme. The effect is that the algorithms could hardly balance exploration and exploitation during the search process. Inspired by the heterogeneous swarms [11], a simple and effective heterogeneous DE (HDE) algorithm is proposed in this paper. Compared to DE and most of its variants, individuals in HDE are allowed to implement different behaviors.

To implement different DE schemes in HDE, we need to address two questions. First, which DE scheme should be chosen to construct the DE scheme pool? Second, how do we assign DE schemes to individuals?

As mentioned before, there are several DE schemes, and different DE schemes have different search characteristics. In this paper, three different DE schemes are chosen to construct the DE scheme pool: DE/rand/1/bin; DE/best/1/bin; and DE/BoR/1/bin [16]. The first two schemes are two basic DE strategies proposed in [1], and the last one was recently proposed in [16], where a new mutation strategy called “best-of-random” (BoR) is defined as follows: where the individuals , , and are randomly chosen from the current population, , and is the best one of them; that is, .

There are two reasons for choosing these DE schemes. First, these three DE schemes are very simple and easy to implement. Second, each of them has different search characteristics. For the DE/rand/1/bin, it obtains higher population diversity. DE/best/1/bin shows faster convergence speed. The last one provides a middle phase between the first two DE schemes. Note that this paper only chooses three DE schemes to construct the DE scheme pool and other DE schemes can also be possibly used.

Figure 1 presents the encoding method in HDE, where denotes the employed DE scheme for the th individual. In this paper, ; that is, indicates the DE/rand/1/bin scheme, denotes the DE/best/1/bin scheme, and stands for the DE/BoR/1/bin scheme.

In order to address the second question, two different heterogeneous models, namely, static HDE (sHDE) and dynamic HDE (dHDE), are used to assign DE schemes to individuals [11].(i)In the static HDE (sHDE), DE schemes are randomly assigned to individuals in population initialization. The assigned DE schemes do not change during the search process.(ii)In the dynamic HDE (dHDE), DE schemes are randomly assigned to individuals during initialization. As the iteration increases, the assigned DE schemes of individuals are not fixed. They can randomly change during the search process. An individual randomly selects a new DE scheme from the DE scheme pool when the individual fails to improve its objective fitness value. In the standard DE and its variants, the objective fitness value of each individual satisfies . If the new generated individual (trail vector ) could not improve its previous position (), it may indicate early stagnation. This can be addressed by assigning a new DE scheme to the individual.

The main steps of dynamic heterogeneous DE (dHDE) are presented in Algorithm 1, where is the current population, is the number of fitness evaluations, and is the maximum number of . For static HDE (sHDE), please delete line 21 in Algorithm 1.

(1) Randomly initialize the population including the variables and ID;
(2) Evaluate the objective fitness value of each individuals in ;
(3) FEs =   ;
(4) while FEs ≤ MAX_FEs do
(5) for   to   do
(6)  if     then
(7)   Use DE/rand/1/bin to generate a trail vector ;
(8)  end
(9)  if     then
(10)   Use DE/best/1/bin to generate a trail vector ;
(11)  end
(12)  if     then
(13)   Use DE/BoR/1/bin to generate a trail vector ;
(14)  end
(15)   Evaluate the objective fitness value of ;
(16)   FEs++;
(17)  if f  ≤   f   then
(18)   
(19)  end
(20)  else
  /*For static HDE (sHDE), please delete lines 20 22*/
(21)   Randomly assign a new different DE scheme to , (change the value of );
(22)  end
(23)  end
(24) end

4. Experimental Verifications

This section provides experimental studies of HDE on 18 well-known benchmark optimization problems. According to the properties of these problems, two series of experiments are conducted: comparison of HDE on classical optimization problems and comparison of HDE on shifted large-scale optimization problems.

4.1. Results on Classical Optimization Problems

In this section, 12 classical benchmark problems are used to verify the performance of HDE. These problems were considered in [2, 5, 1719]. Table 1 presents a brief description of these benchmark problems. All the problems are to be minimized.

Experiments are conducted to compare HDE with other six DE variants. The involved algorithms are listed below:(i)DE/rand/1/bin,(ii)DE/best/1/bin,(iii)DE/BoR/1/bin [16],(iv)self-adapting DE (jDE) [5],(v)DE with neighborhood search (NSDE) [20],(vi)DE using neighborhood-based mutation (DEGL) [2],(vii)the proposed sHDE and dHDE.

In the experiments, we have two series of comparisons: comparison of sHDE/dHDE with basic DE schemes and comparison of sHDE/dHDE with state-of-the-art DE variants. The first comparison aims to check whether the heterogeneous method is helpful to improve the performance of DE. The second comparison investigates whether the proposed approach is better or worse than some recently proposed DE variants.

For these two comparisons, we use the same parameter settings as follows. For the three basic DE schemes (DE/rand/1/bin, DE/best/1/bin, and DE/BoR/1/bin) and sHDE/dHDE, the control parameters, and CR, are set to 0.5 and 0.9, respectively [5]. For jDE, NSDE, and DEGL, the parameters and CR are self-adaptive. For all algorithms, the population size () and maximum number of FEs are set to and , respectively [2]. All the experiments are conducted 30 times, and the mean error fitness values are reported.

4.1.1. Comparison of HDE with Basic DE Schemes

The comparison results of HDE with the three basic DE schemes are presented in Table 2, where “Mean” denotes the mean error fitness values. From the results, sHDE and dHDE outperform other three basic DE schemes on a majority of test problems. For unimodal problems (), DE/best/1/bin shows faster convergence than other algorithms for the attraction of the global best individual. For and , all the algorithms obtain similar performance. DE/rand/1/bin provides high population diversity but slows down convergence rate. That is why DE/rand/1/bin performs better than DE/best/1/bin on most multimodal problems, but worse on unimodal problems. DE/BoR/bin/1 is a middle phase of DE/rand/1/bin and DE/best/1/bin. It obtains better performance than the other two basic DE schemes. For the heterogeneity of these basic DE schemes, sHDE and dHDE significantly improve the performance of DE. For unimodal problems, DE/best/1/bin obtains the best performance, while sHDE and dHDE perform better than DE/rand/1/bin and DE/BoR/1/bin. For multimodal problems, DE/best/1/bin is the worst algorithm, while sHDE and dHDE obtain better performance than other algorithms.

For the comparison of sHDE and dHDE, sHDE performs better on 3 problems, while dHDE achieves better results on 5 problems. For the remaining 4 problems, both of them could search the global optimum. Although the dynamic heterogeneous model improves the performance of HDE on many problems, it may lead to premature convergence. In the dHDE, if the current individual could not improve its fitness value, a new DE scheme is assigned to the individual. If the new scheme is DE/best/1/bin, the individual will be attracted by the global best individuals. This will potentially run the risk of premature convergence.

4.1.2. Comparison of HDE with Other State-of-the-Art DE Variants

The comparison results of HDE with other three state-of-the-art DE variants are presented in Table 3, where “Mean” denotes the mean error fitness values. From the results, sHDE and dHDE perform better than other three DE algorithms on the majority of test problems. dHDE outperforms jDE and NSDE on all test problems except for . On this problem, dHDE falls into the local minima, while sHDE could successfully solve it. dHDE achieves better results than DEGL on 9 problems, while DEGL performs better than dHDE on the remaining 3 problems.

In order to compare the performance of multiple algorithms on the test suite, we conducted Friedman test according to the suggestions of [21]. Table 4 shows the average ranking of jDE, NSDE, DEGL, sHDE, and dHDE. As seen, the performance of the five algorithms can be sorted by average ranking into the following order: dHDE, sHDE, DEGL, jDE, and NSDE. The best average ranking was obtained by the dHDE algorithm, which outperforms the other four algorithms.

4.2. Results of HDE on Shifted Large-Scale Optimization Problems

To verify the performance of HDE on complex optimization problems, this section provides experimental studies of HDE on 6 shifted large-scale problems. These problems were considered in CEC 2008 special session and competition on large-scale global optimization [15]. Table 5 presents a brief descriptions of these benchmark problems. All the problems are to be minimized.

Experiments are conducted to compare four DE algorithms including the proposed sHDE and dHDE on 6 test problems with . The involved algorithms are listed below:(i)opposition-based DE (ODE) [22],(ii)modified DE using Cauchy mutation (MDE) [23],(iii)the proposed sHDE and dHDE.

To have a fair comparison, all the four algorithms use the same parameter settings by the suggestions of [22]. The population size is set to . The control parameters, and CR, are set to 0.5 and 0.9, respectively [22]. For ODE, the rate of opposition is 0.3. The maximum number of FEs is . All the experiments are conducted 30 times, and the mean error fitness values are reported.

Table 6 presents the comparison results of HDE with ODE and MDE on shifted large-scale problems. As seen, sHDE and dHDE outperform ODE and MDE on four problems. The static heterogeneous model slightly improves the final solutions of DE, while the dynamic model significantly improves the results on and . However, the two heterogeneous models do not always work. For some problems, sHDE and/or dHDE perform worse than ODE and MDE. The possible reason is that the heterogeneous models may hinder the evolution. For the static model, the entire population is divided into three groups. Each group uses a different basic DE scheme to generate new individuals. Though these groups share the search information of the entire population, each group with small population may obtain slow convergence rate. As mentioned before, the dynamic heterogeneous model runs the risk of premature convergence.

5. Conclusion

In the standard DE and most of its modifications, individuals follow the same search behavior for using the same DE scheme. The effect is that the algorithms could hardly balance explorative and exploitative abilities during the evolution. Inspired by the heterogeneous swarms, a simple and effective heterogeneous DE (HDE) is proposed in this paper, where individuals could follow different search characteristics randomly selected from a DE scheme pool. To implement the HDE, two heterogeneous models are proposed, one static, where individuals do not change their search behaviors, and a dynamic model where individuals may change their search behaviors. Both versions of HDE initialize individual behaviors by randomly selecting DE schemes from a DE scheme pool. In the dynamic HDE, when an individual does not improve its fitness value, a new different DE scheme is randomly selected from the DE scheme pool.

To verify the performance of HDE, two types of benchmark problems, including classical problems and shifted large-scale problems, are used in the experiments. Simulation results show that the proposed sHDE and dHDE outperform the other eight DE variants on a majority of test problems. It demonstrates that the heterogeneous models are helpful to improve the performance of DE.

For the dynamic heterogeneous model, the frequency of changing new DE schemes may affect the performance of dHDE. More experiments will be investigated. The concept of heterogeneous swarms can be applied to other evolutionary algorithms to obtain good performance. Future research will investigate different algorithms based on heterogeneous swarms. Moreover, we will try to apply our approach to some real-world problems [24, 25].

Conflict of Interests

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

Acknowledgments

This work is supported by the Humanity and Social Science Foundation of Ministry of Education of China (no. 13YJCZH174), the National Natural Science Foundation of China (nos. 61305150, 61261039, and 61175127), the Science and Technology Plan Projects of Jiangxi Provincial Education Department (no. GJJ13744 and GJJ13762), and the Foundation of State Key Laboratory of Software Engineering (no. SKLSE2012-09-19).