Abstract

This paper presents a multiobjective differential evolution algorithm with multiple trial vectors. For each individual in the population, three trial individuals are produced by the mutation operator. The offspring is produced by using the crossover operator on the three trial individuals. Good individuals are selected from the parent and the offspring and then are put in the intermediate population. Finally, the intermediate population is sorted according to the Pareto dominance relations and the crowding distance, and then the outstanding individuals are selected as the next evolutionary population. Comparing with the classical multiobjective optimization algorithm NSGA-II, the proposed algorithm has better convergence, and the obtained Pareto optimal solutions have better diversity.

1. Introduction

Multiobjective optimization problems (MOPs) are different from single objective optimization problems (SOPs). For MOPs, the objective functions are often conflict, so the best solution often does not exist. It is difficult to find the optimal solution. The MOPs need to find a noninferior solution set that is called Pareto optimal solution set (or nondominated optimal solution set). The key is to find a solution set which is as close to the Pareto front and uniformly distributed as possible. In the past ten years, evolutionary algorithms have been widely used for solving multiobjective optimization problems. The typical algorithm contains NSGA [1], NSGA-II [2], SPEA [3], SPEA2 [4], and so on.

Differential evolution (DE) [5] is an important branch of the evolutionary algorithms. Because of its easiness to use and robustness, it has been widely applied in many fields. The basic DE algorithm is a greedy algorithm and is used to solve the SOPs. The individual choice is based on the objective function value. In solving MOPs, the objective function value is a vector value and the individual choice is based on the vector value. Some scholars have improved DE algorithm to solve MOPs. Abbass et al. [6] proposed a differential evolution algorithm based on the Pareto front’s (PDE) to solve MOPs. Later, the PDE algorithm is improved to an adaptive PDE algorithm (SPDE) [7]. Madavan [8] proposed the differential evolution algorithm based on the Pareto (PDEA). Xue et al. [9] and Robi and Filipi [10] and Qian and Li [11] proposed the different kind of multiobjective differential evolution algorithm. Gong and Cai [12] proposed an improved multiobjective differential evolution based on the Pareto-adaptive πœ€-dominance and the orthogonal design.

Here, a multiobjective differential evolution algorithm with multiple trial vectors (MTVDE) is proposed. In this algorithm, for each individual in the parent, three different mutation operators and a crossover operator are used to produce three trial individuals. First, we compare the three trial individuals. If an individual Pareto-dominate another, the better one is retained. If two individuals do not dominate each other, both two individuals are retained. Secondly, retained trial individuals compare with the parent individual: if an individual Pareto-dominate another, put the nondominated individual in the intermediate population, and if the two individuals do not dominate each other, two individuals are put in the intermediate population. Finally, in the intermediate population, the individuals are sorted according to the Pareto dominance relations and the crowding distance. We eliminate some low-quality individuals from the intermediate population and retain some fine individuals to form the next evolutionary population. The individuals are sorted according to the nondominated relations, and individuals with low ordinal value are better individuals. When individuals are with the same ordinal, the individual of larger crowding distance is better than the individual of smaller crowding distance.

Below, we give several concepts related to this paper. Because the maximum optimization problems and minimum optimization problem can be transformed into each other, here we only consider the minimum multiobjective optimization problem.

Definition 2.1 (multiobjective optimization problems, MOPs). The MOPs are described as follows:𝑓min𝑦=𝑓(π‘₯)=1(π‘₯),𝑓2(π‘₯),…,π‘“π‘˜ξ€Έ,𝑔(π‘₯)s.t.𝑔(π‘₯)=1(π‘₯),𝑔2(π‘₯),…,𝑔𝑙(ξ€Έβ„Žξ€·β„Žπ‘₯)≀0,(π‘₯)=𝑙+1(π‘₯),β„Žπ‘™+2(π‘₯),…,β„Žπ‘šξ€Έξ€·π‘₯(π‘₯)=0,π‘₯=1,π‘₯2,…,π‘₯π‘›ξ€Έξ€·π‘¦βˆˆπ‘‹,𝑦=1,𝑦2,…,π‘¦π‘˜ξ€Έβˆˆπ‘Œ,(2.1) where π‘¦βˆˆπ‘…π‘˜ indicates the target vector, π‘₯βˆˆπ‘…π‘› indicates the decision vector, 𝑋 indicates decision space of the decision vector π‘₯, β€‰β€‰π‘Œ indicates the target space of the target vector 𝑦.

Definition 2.2 (the dominance relationship of the target vector). The target vector 𝑒=(𝑒1,𝑒2,…,π‘’π‘˜) is better than 𝑣=(𝑣1,𝑣2,…,π‘£π‘˜) if and only if for all π‘–βˆˆ(1,2,…,π‘˜)  𝑒𝑙≀𝑣𝑙 and there exists at least one π‘–βˆˆ(1,2,…,π‘˜) such that 𝑒𝑖<𝑣𝑖 was established, then the target the vector 𝑒 Pareto better than 𝑣, or 𝑣 Pareto inferior to 𝑒.

Definition 2.3 (decision vector relations of domination). If the decision vector 𝑧=(𝑧1,𝑧2,…,𝑧𝑛) Pareto-dominates 𝑀=(𝑀1,𝑀2,…,𝑀𝑛) if and only if 𝑓(𝑧) Pareto is superior to 𝑓(𝑀), we call the decision vector 𝑧 Pareto-dominating 𝑀 or the decision vector 𝑀 is Pareto dominated by 𝑧.

Definition 2.4 (Pareto optimal solution). Decision vector π‘₯π‘’βˆˆπΉ (𝐹 is the feasible solution set) is a Pareto optimal solution, if and only if an individual does not exist in the feasible solution set 𝐹 dominate π‘₯𝑒, then π‘₯𝑒 is called the MOPs’ Pareto optimal solution, or π‘₯𝑒 is called the MOPs’ nondominated optimal solution. The set of all Pareto optimal solution is known as the MOPs’ Pareto optimal solution set or nondominated optimal solution set.

Definition 2.5 (Pareto front). For given MOPs, Pareto optimal solution set corresponding to the objective function value vector is known as the MOPs’ Pareto front. Therefore, our task is to make the current nondominated optimal solution set as close as possible to the theoretical Pareto optimal solution set, from the view of Pareto front is to ask the Pareto front as possible as close to the theoretical Pareto front and uniformly distributed.

Definition 2.6 (individual nondominant relationship sort, INDR). There are 𝑛 individuals in the population 𝑃. For each individual π‘₯𝑖,𝑖=1,2,…,𝑛, 𝑆𝑖 represents the set of individuals that are dominated by π‘₯𝑖, 𝑛𝑖 represents the number of individuals dominating the individual π‘₯𝑖. Finally, if 𝑛𝑖=0, then π‘₯𝑖 belongs to the first level. The sequence of π‘₯𝑖 is rank𝑖=1, π‘₯𝑖 joined to 𝐹1 (𝐹1 indicates the individual set of ordinal value is 1). The counter of the initial sequence value rank=1, if 𝐹rankβ‰ πœ™, (𝐹rank represents the set of individuals’ sequence value rank=1) each individual π‘₯𝑖 in 𝐹rank, each individual π‘₯𝑖,𝑛𝑗=π‘›π‘—βˆ’1 in the corresponding 𝑆𝑖. Finally, if 𝑛𝑖=0, then π‘₯𝑗 belongs to the rank+1 level. The sequence value of π‘₯𝑗 is rank𝑗=rank+1. Update sequence value’s counter rank=rank+1, π‘₯𝑗 joined to 𝐹rank. As a result, we can calculate the ordinal value of each individual in the population 𝑃.

Definition 2.7 (the same level of individuals’ crowding distance) (ICD). Let 𝐼 be a set of individuals of a certain grade. All the target π‘š(π‘š=1,2,…) individuals are sorted according to the objective function value in 𝐼. The first and the last individuals’ crowding distances are infinite. The other individuals’ crowding distance is calculated as subtract the two neighbor individuals’ objective function and then square it. Then sum the crowding distance on all objective functions as the individuals’ crowding distance. The individuals are sorted according to crowding distance in the same level.

3. Multiobjective Differential Evolution Algorithm with Multiple Trial Vectors (MTVDE)

3.1. The Mutation Operation

Mutation components are difference vectors of the parent generation. Each vector is generated by the different individuals in the parent population. The mutation operation on the basis of the difference vector and its equation is 𝑣𝑖1𝑑=π‘₯𝑖𝑑π‘₯+πΉπ‘Ÿ1π‘‘βˆ’π‘₯π‘Ÿ2𝑑,𝑣𝑖2𝑑=π‘₯π‘Ÿ1𝑑π‘₯+πΉπ‘Ÿ2π‘‘βˆ’π‘₯π‘Ÿ3𝑑,𝑣𝑖3𝑑=π‘₯𝑖𝑑π‘₯+πΉπ‘Ÿ1π‘‘βˆ’π‘₯π‘Ÿ2𝑑π‘₯+πΉπ‘Ÿ3π‘‘βˆ’π‘₯π‘Ÿ4𝑑,(3.1) where 𝑣𝑖1𝑑,𝑣𝑖2𝑑,𝑣𝑖3𝑑 are the mutated individuals, π‘₯𝑖𝑑 is individual of parent population. π‘₯π‘Ÿ1𝑑,π‘₯π‘Ÿ2𝑑,π‘₯π‘Ÿ3𝑑,π‘₯π‘Ÿ4𝑑 are different from each other, and they are different from π‘₯𝑖𝑑. 𝐹∈(0,2] is the scaling factor. It indicates the influence degree of the difference vector to the offspring. From the mutation operator, each individual in parent population produces three individuals through the mutation operator, which can enhance the diversity of the population.

The value of 𝐹 has a certain influence on the algorithm performance. If 𝐹 is too large, the convergence rate slows, and the algorithm runs longer. If 𝐹 is too small, the diversity of the population decreases, according to experimental tests, and 𝐹 is often set to 0.5.

3.2. Crossover Operator

The mutated individual 𝑣𝑖(𝑑+1),(𝑖=𝑖1,𝑖2,𝑖3), and the individual π‘₯𝑖(𝑑) in parent population use the crossover operator to generate the trial individual 𝑒𝑖(𝑑+1),(𝑖=𝑖1,𝑖2,𝑖3). The crossover operator is expressed as 𝑒𝑖𝑗𝑣(𝑑+1)=𝑖𝑗π‘₯(𝑑+1),if(rand(0,1)≀CR)or(𝑗=rand𝑖(1,𝐷)),𝑖𝑗(𝑑),otherwise,(3.2) where rand(0,1) is an uniformly distributed random number between (0,1), rand𝑖(1,𝐷) is the integer randomly selected from {1,2,…,𝐷}, which can insure at least one 𝑒𝑖(𝑑+1) is from 𝑣𝑖(𝑑+1). CR∈[0,1] is the crossover probability. It is used to control the variable in 𝑒𝑖(𝑑+1) to be from 𝑣𝑖(𝑑+1) or π‘₯𝑖(𝑑). If CR=1, then 𝑒𝑖(𝑑+1)=𝑣𝑖(𝑑+1).

3.3. Selecting Operation

For MOPs, this paper uses the following criteria to select the next evolution population.(1)For each individual in the parent population, three different mutated operators and a crossover operator are used to produce three trial individuals. For the three trial individuals and the parent individual, the one who Pareto-dominates another is retained in the intermediate population. If the two individuals do not dominate each other, both are retained.(2)Some low-quality individuals in the intermediate population need elimination. Individuals are sorted in the intermediate population according to the Pareto dominance relations and the crowding distance of individuals. First of all, the individuals are divided into several levels according to the non-dominant relations in the intermediate population. Individuals in the same level are sorted according to the crowding distance. We choose the former NP individuals to form the next evolution population.

3.4. MTVDE Description of the Algorithm

Step 1. Set the basic parameters: the population size NP, the scaling factor 𝐹, the maximum evolution generation, and the crossover probability factor CR.

Step 2. Initialize the population.

Step 3. Mutation is according to the mutation operation (3.1) to generate three variation individuals.

Step 4. Crossover is according to the crossover operation (3.2) to generate three test individuals.

Step 5. Select the next evolution population.

Step 6. If the maximum iteration is reached, stop and output optimal solution, otherwise return to Step 3.

4. Numerical Experiments

4.1. Algorithm Performance Evaluation Criteria

Multiobjective optimization algorithm performance can be evaluated by two criteria.(1)The obtained nondominated optimal solution set needs to be as close as possible to the true Pareto front.(2)The obtained nondominated optimal solution set need as possible as uniformly distribute to the true Pareto front.

The two indexes are used to test the convergence and distribution of the solution set, respectively. The definitions of the approximation index and the uniformity index are given below.

(a) Approximation index is defined as follows: βˆ‘π›Ύ=𝑛𝑖=1𝑑𝑖𝑛,(4.1) where 𝑛 is the number of vectors in the set of nondominated solutions found so far, 𝑑𝑖 is the Euclidean distance (measured in objective space) between each of these solutions and the nearest member of the Pareto optimal set. 𝑑𝑖 is calculated as 𝑑𝑖=min{|π‘‹π‘–βˆ’π‘Œπ‘—|,𝑗=1,2,…,𝑁}, where 𝑁 denotes the total number of the true Pareto front vectors, 𝑋𝑖 denotes the nondominated optimal solutions set, π‘Œπ‘— denotes the true Pareto front, and |β‹…| denotes Euclidean distance. The value of 𝛾 is smaller, the degree of algorithm approximating to true Pareto front is higher. It is clear that a value 𝛾=0 indicates that all the generated elements are in the Pareto front.

(b) The uniformity index is defined as follows: 𝑑Δ=𝑓+𝑑𝑙+βˆ‘π‘›βˆ’1𝑖=1|||π‘‘π‘–βˆ’π‘‘|||𝑑𝑓+𝑑𝑙+(π‘›βˆ’1)𝑑,(4.2) where 𝑑𝑖 is the Euclidean distance between neighboring solutions in the obtained nondominated solutions set and 𝑑 is the mean of all 𝑑𝑖. The parameters 𝑑𝑓 and 𝑑𝑙 are the Euclidean distances between the extreme solutions and the boundary solutions of the obtained nondominated set. 𝑑𝑓 is calculated as 𝑑𝑓=|π‘‹π‘“βˆ’π‘Œπ‘“|, where 𝑋𝑓 is the leftmost vector of obtained nondominated optimal target vector, π‘Œπ‘“ is the leftmost vector of theoretical Pareto front. 𝑑𝑙 is calculated as 𝑑𝑙=|π‘‹π‘™βˆ’π‘Œπ‘™|, where 𝑋𝑙 is the rightmost vector of obtained nondominated optimal target vector, π‘Œπ‘“ is the rightmost vector of theoretical Pareto front, |β‹…| denotes Euclidean distance. The value of Ξ” is smaller, the degree of obtained nondominated solutions’ diversity and uniform distribution is better.

4.2. Numerical Experiments and Analysis

In order to know how competitive the MTVDE algorithm was, it was compared with NSGA-II. In algorithm NSGA-II, πœ‚π‘=20, πœ‚π‘š=20 Pool size = 100, Tour size = 2. In MTVDE algorithm, CR = 0.9 except the problem ZDT4 that CR = 0.3. For all test functions, the population size of the two algorithms is taken as 100, and the number of iterations is taken as 250. Figures 1, 2, 3, 4, 5, 6, 7 and 8 show the results of the MTVDE algorithm by testing eight multiobjective functions. It can be seen from the figures the MTVDE algorithm produces a more uniform solution, and the solution quality is better than NSGA-II.

From Tables 1, 2, 3, 4, 5 and 6 eight testing functions are chosen to test the approximation index, uniformity index (mean value and variance in 10 runs). For the first five functions, the MTVDE algorithm is compared with the five classic algorithms in [8, 9, 11, 12]. For the rest three functions, the MTVDE algorithm is compared with NSGA2.

N/A denotes the algorithm does not calculate the index; the PDEA algorithm in [7] calculates the index GD (generational distance) instead of calculating the index (the convergence metric). The MODE algorithm in [7] did not calculate the index (diversity metric). We can be seen from Tables 1–6 that MTVDE algorithm has better convergence solutions except the problems ZDT1, ZDT2, and SCH.

In this paper, the population size is 250. Through experiments, we found that the increasing of population size has no effect on performance of the algorithm but only can increase the running time. In order to detect the impact of the scaling factor and the crossover probability on performance of algorithm, we make 50 times independent experiments for problem SCH. In order to test the impact of 𝐹 and CR on the algorithm performance, it can be found that the 𝐹 and CR have little effect on the algorithm performance by the testing data. Through comparison, 𝐹=0.5, CR = 0.9 results are a little better, but the algorithm performance (approximation index and uniformity index) is not particularly sensitive to the values of 𝐹 and CR (Table 7).

5. Summary

In MTVDE algorithm, the improved DE algorithm is used to solve MOPs. The main difference between MTVDE algorithm and other MOEA algorithms is the three test vectors and the new select method. Eight benchmark functions are used to test the MTVDE algorithm. Experimental results show that MTVDE algorithm is better than most MOEA. In order to find the best solution, different values of crossover probability are tested, the results of ZDT4 are very sensitive to the crossover probability (crossover probability is 0.3 better results). In short, the algorithm in this paper can effectively converge to the Pareto front of the problem and maintain the diversity of the Pareto optimal solution set. It is an effective algorithm for solving multiobjective optimization problems. In the future work, we intend to use MTVDE algorithm or appropriate improved MTVDE algorithms for solving other complex constrained MOPs.

Acknowledgments

The work is supported by the Foundations of National Natural Science China under Grant no. 60962006 and by the Foundations of Research Projects of State Ethnic Affairs Commission.