1 Introduction

Multiobjective optimization is an area of multiple-criteria decision making, concerning mathematical optimization problems involving more than one objective function to be optimized simultaneously [12]. Multiobjective optimization has been used to many fields of science and engineering, which provides multiple solutions representing the trade-offs among objectives in conflict. Genetic Algorithms have been applied to several classes of Multiobjective Optimization Problems (MOP) and have been shown to be promising for solving such problems efficiently [2, 8,9,10, 13, 16], along with the advantage of evaluating multiple potential solutions in a single iteration because they deal with a population of solutions.

Given the diversity of existing genetic algorithms for solving MOP, named Multiobjective Genetic Algorithms (MOGA), it is necessary to be aware of their benefits and drawbacks. Thereby, this work performs a comparative study among the well-known MOGA NSGA-II [6], a modification of it, the NSGA-DO [15] and the novel MNSGA-DO (Modified Non-Dominated Sorting Genetic Algorithm Distance Oriented), designed as a adjustment of the NSGA-DO. The use of crowding distance by NSGA-II as the selection criterion can prioritize individuals that are farther from the optimal front. A selection process which guide the solutions to converge towards the ideal points along the Pareto front, as proposed by NSGA-DO, have been developed as an alternative to enhance a diversity of solutions. However, the NSGA-DO was developed based on problems with discrete search space. So, when applied to continuous problems, it does not guarantee the assignment of solutions to all the ideal points what might concentrate its set of solutions in specific regions. Another disadvantage is the amount of ideal points, which is proportional to the size of Pareto front. This imbalance between the quantity of ideal points and the number of solutions that need to be selected makes the convergence time-consuming.

In order to overcome these failures, we proposed the Modified Non-Dominated Sorting Genetic Algorithm Distance Oriented (MNSGA-DO). This MOGA calculates the length of Pareto front and then estimates a partition considering the number of solutions to be found, setting the coordinates of the ideal points. In addition, MNSGA-DO assigns one solution to each ideal point, what ensures a diversity of solutions. To perform the proposed comparative analysis, the ZDT family of functions [20] was selected, because it is a broad and popular set of test functions for benchmarking the performance of multiobjective optimization methods. For each NSGA, a study of its convergence and distribution of solutions along the Pareto Front was performed by applying the quality indicators Generational Distance, Inverted Generational Distance and Hypervolume, according to the literature. In order to complement the analysis, the optimal Pareto front were visually compared to the boundaries computed by the three MOGA. Finally, we carried out an analysis of runtime and a statistical evaluation of the results achieved.

2 Multiobjective Optimization Problems

According to [12], a multiobjective optimization problem (MOP) can be defined as follows:

$$\begin{aligned} \begin{array}{ll} Minimize \ \ &{} F(x)= (f_1(x),...,f_m (x))^T \\ subject \ to \ \ &{} g_j (x) \ge 0, j=1,...,J \\ &{} h_k(x) = 0, k=1,...,K\\ &{} x \in \varOmega \end{array} \end{aligned}$$
(1)

where J and K are the numbers of inequality and equality constraints, respectively. \(\varOmega = \varGamma _{i=1}^{n} [a_i,b_i] \subseteq \mathbb {R}^n\) is the space, \(x=(x_1,...,x_n)^T \in \varOmega \) is a candidate solution. \(F:\varOmega \longrightarrow \mathbb {R}^m\) constitutes m conflicting objective functions and \(\mathbb {R}^m\) is called the objective space. The attainable objective set is defined as \(\varTheta = \{F(x)\mid x\in \varOmega , g_j(x) \ge 0, h_k(x) = 0\}\), for \(j\in \{1,...,J\}\) and \(k\in \{1,...K\}\).

\(x^1\) is said to dominate \(x^2\) (denoted as \(x^1 \preceq x^2\)) if and only if \(f_i(x^1) \le f_i(x^2)\) for every \(i \in \{1,...,m\}\) and \(f_l(x^1) < f_l(x^2)\) for at least one index \(l \in \{1,...,m\}\). A solution \(x^*\) is Pareto-optimal to (1) if there is no other solution \(x \in \varOmega \) such that \(x \preceq x^*\). \(F(x^*)\) is then called a Pareto-optimal (objective) vector. The set of all Pareto-optimal solutions is called the Pareto-optimal set (PS). Therefore, the set of all Pareto-optimal vectors, \(EF = \{F(x) \in \mathbb {R}^m \mid x \in PS\}\), is called the efficient front (EF) [14].

3 Multiobjective Genetic Optimization

Genetic algorithms are suitable to solving multiobjective optimization problems because they deal simultaneously with a set of possible solutions (or a population). This allows to find several members of the Pareto optimal set in a single run of the algorithm, instead of having to perform a series of separate runs. Additionally, genetic algorithms are less susceptible to the shape or continuity of the Pareto front [3]. MOGA are usually designed to meet two often conflicting goals: convergence, viewed as minimizing the distances between solutions and the EF, and diversity, which means maximize the spread of solutions along the EF. Balancing convergence and diversity becomes much more difficult in many-objective optimization [12]. MOGA are population-based approaches which initiate with a randomly created population of individuals. Then, the algorithm starts an iterative process that creates a new population at each generation, by the use of operators which simulate the process of natural evolution: selection, crossover and mutation.

Among of all MOGA approaches, the literature shows that the NSGA-II is one of the most used for solving multiobjective optimization problems [9, 10, 16]. Recently, a modification on the NSGA-II was proposed by [15], seeking to improve the diversity of the set of non-dominated solutions. This new MOGA was called Non-Dominated Sorting Genetic Algorithm Distance Oriented (NSGA-DO). In order to refine the NSGA-DO algorithm, we proposed an adjustment on it. A brief description of these approaches, which are evaluated in this work, is presented in Sects. 3.1, 3.2 and 3.3, depicting only the procedures used by the selection operator, that is the point at which the three algorithms differ. A detailed mathematical formulation is left to the references cited.

3.1 NSGA-II

The NSGA-II algorithm is based on an elitist dominance sorting. For each solution i, contained in the population of solutions, two values are calculated: \(nd_i\), the number of solutions that dominate solution i; and \(U_i\), the set of solutions that are dominated by solution i. Solutions with \(nd_i = 0\) are contained in the \(F_1\) front (Pareto front). Then, for each solution j in \(U_i\), the \(nd_j\) is decremented for each i \(\prec \) j, where i \(\in F_1\). If \(nd_j = 0\), then solution j belongs to the next front, in this case, \(F_2\). This procedure is repeated until all solutions are classified in a front. This procedure consists of classifying the solutions of a set M in different fronts \(F_1,F_2,...,F_f\) according to the dominance degree of such solutions. To guarantee diversity at the front, NSGA-II employs an estimate of the density of solutions that surround each individual in the population. Thus, the average distance of the two solutions adjacent to each individual is calculated for all objectives by Crowding Distance selection operator. The suitability of each solution (individual) i is determined by the following values: \(rank_i =\) f, the \(rank_i\) value is equal to the number of the \(F_f\) front to which it belongs; and \(crowdist_i\), the crowding distance value of i. Thus, in the dominance sorting process, a solution i is more suitable than a solution j if: i has a ranking lower than j, that is, \(rank_i < rank_j\); or if both solutions have the same ranking and \(rank_i\) has a higher crowding distance value.

Offspring population and current generation population are combined and the individuals of the next generation are set by dominance sorting process. The new generation is filled by each front subsequently until the number of individuals reach the current population size.

3.2 NSGA-DO

As NSGA-DO is based on NSGA-II, the way it works is similar. The difference between them is due to the selection operator that begins with the estimation of the ideal points in the Pareto front \(F_1\). In order to find the ideal points, the algorithm calculates the length of the Pareto Front and then estimates an uniform partition, setting the coordinates of the ideal points. Thereafter, the selection of solutions to be inserted in the next generation instead of considering the crowding distance as in NSGA-II, considers the tournament distance between each solution of a certain front F and the calculated ideal points, with the aim to enhance the diversity of the solutions.

In order to improve understanding of the difference selection criterion of the closest solution to an ideal point (NSGA-DO) instead of the crowding distance (NSGA-II), consider the following example, presented by [15] and illustrated in Fig. 1. It is possible to observe two representations of the Pareto front, formed by the solutions belonging to the fronts F1 and F2.

Fig. 1.
figure 1

Difference between NSGA-II and NSGA-DO selection operator [15].

Solutions belonging to the front F1 dominate the solutions belonging to the front F2 and are not dominated by any other solution, composing the Pareto-optimal front. The black dots (I1, I2, I3, I4 and I5) represent the ideal points and the gray dots (F1S1, F1S2, F1S3, F1S4, F1S5, F2S1, F2S2, F2S3 and F2S4) represent the solutions found by a MOGA. The f1 and f2 are the conflicting objectives to be optimized.

Assuming that eight solutions would be selected for the next generation of the MOGA, NSGA-II and NSGA-DO would form different solution sets. Initially, all solutions belonging to the front F1 (F1S1, F1S2, F1S3, F1S4, F1S5) would be selected, because the number of solutions on this front is less than the size of population (F\(_{\text {1 SIZE}}<\) N). Up to this point, the NSGA-II solution set is the same as the NSGA-DO solution set, both of which are:

$$\begin{aligned} \mathrm{S}_{\text {NSGA-II}} = \mathrm{S}_{\text {NSGA-DO}} = \{\mathrm{F}_{1}\mathrm{S}_{1}, \mathrm{F}_{1}\mathrm{S}_{2},\mathrm{F}_{1}\mathrm{S}_{3}, \mathrm{F}_{1}\mathrm{S}_{4}, \mathrm{F}_{1}\mathrm{S}_{5}\} \end{aligned}$$

Three solutions will be selected from F2 front (N - F\(_{\text {1 SIZE}}\)). The crowding distance operator from NSGA-II choose solutions with greater distance from its neighbors, in this case, solutions S1 and S4, because they are located at the extremity of front. Solution S2 would be the last one to be chosen because its crowding distance is greater than the one of S3. On the other hand, the solutions chosen by NSGA-DO are those closest to the ideal points. Among the solutions of front F2 the ranking of choice would be S3, S4 and S2, because they have the lowest distance to an ideal point. Therefore, the final solution sets are:

$$\begin{aligned} \mathrm{S}_{\text {NSGA-II}} = \{\mathrm{F}_{1}\mathrm{S}_{1}, \mathrm{F}_{1}\mathrm{S}_{2}, \mathrm{F}_{1}\mathrm{S}_{3}, \mathrm{F}_{1}\mathrm{S}_{4}, \mathrm{F}_{1}\mathrm{S}_{5}, \mathrm{F}_{2}\mathrm{S}_{1}, \mathrm{F}_{2}\mathrm{S}_{4}, \mathrm{F}_{2}\mathrm{S}_{2}\}\\ \mathrm{S}_{\text {NSGA-DO}} = \{\mathrm{F}_{1}\mathrm{S}_{1}, \mathrm{F}_{1}\mathrm{S}_{2}, \mathrm{F}_{1}\mathrm{S}_{3}, \mathrm{F}_{1}\mathrm{S}_{4}, \mathrm{F}_{1}\mathrm{S}_{5}, \mathrm{F}_{2}\mathrm{S}_{3}, \mathrm{F}_{2}\mathrm{S}_{4}, \mathrm{F}_{2}\mathrm{S}_{2}\} \end{aligned}$$

3.3 MNSGA-DO

Modified Non-Dominated Sorting Genetic Algorithm Distance Oriented (MNSGA-DO) is an extension of NSGA-DO, with the purpose to improve its performance. In the way NSGA-DO works, it estimates ideal points in the Pareto front based on an uniform partition, proportional to its size, and for each solution of a certain front F, the distance from the ideal points is calculated. Then, these distances are sorted, selecting the S solutions associated with the smallest distances, where S is the number of individuals to reach the current population size. In this way, if the S smallest distances are associated with a single ideal point, the selected solutions will be concentrated in a single region of the front, harming diversity.

Instead of estimating ideal points based on an uniform partition proportional to the size of Pareto front, MNSGA-DO calculates an uniform partition based on the number of solutions to be found, setting the coordinates of the ideal points in the Pareto front \(F_1\), what decrease convergence time by reducing the number of points when calculating distances. To improve the approximation to the Pareto front, MNSGA-DO uses the number of ideal points equal to twice the number of solutions to be selected (2S). Then, it calculates the distances from solutions in F to ideal points, starting from the ends to the center of the Pareto front, switching the selection between the two ends. Moreover, MNSGA-DO does not allow the repetition of the same solution for different points. When a solution has already been associated with a point, MNSGA-DO do not considers this solution to the other ideal points. Thus, MNSGA-DO guarantee the assignment of one different solution to each ideal point, avoiding the concentration of solutions in some of them and ensuring the diversity of the solutions. MNSGA-DO Selection Operator is illustrated in Algorithm 1.

figure a

4 Experimental Setup

For our experiments, the ZDT family of functions [20] was selected, because it is a widely used set of test functions for benchmarking the performance of multiobjective optimization methods. All of the ZDT functions contain two objectives and a particular feature that is representative of a real world optimization problem that could cause difficulty in converging to the Pareto-optimal front [18], as showed in Table 1.

Table 1. ZDT family characteristics.

In this study, 5 out of 6 ZDT functions were considered (ZDT{1–4} and ZDT6) and for each one, 30 runs were conducted using each MOGA, in order to ensure the results were not biased based upon the initial population. We performed our experiments on 2.40 GHz PC with 8 GB RAM and operating system 64 bits. The implementations of MOGAs were done in the Framework JMetal 5 [7] and assumed the following parameters:

Codification: The chromosomes \(Ci=(ci_1,ci_2,...ci_n)\) are encoded as a vector of floating point numbers in which each component of the vector is a variable of the problem.

Initial Population and Stopping Criterion were defined following a grid search procedure [4]. The values tested for the population size were 50, 100, 150 and 200. For the number of fitness function evaluations were considered values 10000, 20000, 25000 and 30000. After these tests, initial population was generated randomly considering population size of 100 individuals and stopping criterion was defined as 25000 fitness function evaluations, in all problems.

Fitness Function: The fitness function for MOP is the objective function F(x) to be minimized. The goal of solving a MOP is to find the Pareto-optimal set or at least a set of solutions close to Pareto-optimal set.

Intermediate Population: Based on [5, 11, 17], we have used Binary Tournament selection, Simulated Binary Crossover (SBX) and Polynomial Mutation. The crossover probability and distribution index were respectively defined as 0.9 and 30. Similarly, the mutation probability was set as 1/n, where n is the number of problem variables, and the mutation distribution index was 20.

The study of convergence and distribution of solutions along the Pareto Front was performed to the MOGAs by applying three well known quality indicators, Generational Distance (GD), Inverted Generational Distance (IGD) and Hypervolume (HV) [1]. The first one measure the convergence and the other indicators can simultaneously measure the convergence and diversity of obtained solutions.

In the following section, the performance of the NSGA-II, NSGA-DO and MNSGA-DO on ZDT test problems is investigated and the results are presented based on the mentioned quality indicators.

5 Experimental Results

As stated in Sect. 4, we have selected five functions from ZDT family to evaluate NSGA-II, NSGA-DO and MNSGA-DO algorithms: ZDT{1–4} and ZDT6. According to the MOGA configurations presented in Sect. 4 and regarding ZDT functions mentioned, we applied the quality indicators GD, IGD and HV, which make a comparison between the set of points sampled from the Pareto-optimal (set mathematically calculated) and the set of points found by the MOGA to be evaluated.

Thirty design variables \(x_i\) were chosen to ZDT{1–4} and ten to ZDT6. Each design variable ranged in value from 0 to 1, except to ZDT4, which the variables ranged from −5 to 5. The numerical results of GD, IGD and Hypervolume are showed in Tables 4, 5 and 6, respectively. The values highlighted in gray means the best for each ZDT function and SD column shows standard deviation.

According to the results, for the quality indicator GD, which only evaluates convergence, NSGA-DO found the best results. For both quality indicators IGD and HV, which simultaneously measure the convergence and diversity, the MNSGA-DO had the best results, except ZDT3 problem, in which the NSGA-II was slightly better. This happens because both NSGA-DO and MNSGA-DO consider the entire extension of Pareto front for the definition of ideal points, not taking into account the gaps of the discontinuous ZDT3 problem. Thereby, ideal points are assigned in infeasible regions of the search space, thus compromising their effectiveness.

In Table 2, the execution time of the algorithms is presented in seconds. NSGA-II performed better than MNSGA-DO. NSGA-DO achieved the worst results, with execution time much higher than the other two multiobjective genetic algorithms.

Table 2. Execution time results.

As the result of a two-objective Pareto optimization study is a set of points on a curve (the Pareto front), we plotted the last fronts from each algorithm with the aim of visualising the results variation. Hence, a visual comparison between the algorithms is performed based on the Pareto fronts. Figures 2, 3, 4, 5 and 6 illustrate the Pareto-optimal, NSGA-II, MNSGA-DO and NSGA-DO fronts of each ZDT function. The x and y axes of all figures represent objectives \(f_1\) and \(f_2\), respectively.

After analysing the fronts, we can observe that the NSGA-II and the MNSGA-DO fronts are very similar comparing to Pareto-optimal front. NSGA-II fronts shows some gaps, what demonstrates that the NSGA-II fronts diversity is worst than MNSGA-DO. On the other side, the NSGA-DO front is very different from Pareto-optimal front. This problem can be attributed to the process of individuals selection to reach the current population size, which consider the increasing sorting of the distances from the solutions to the ideal points. Such sorting can add individuals from a single region of the front in the new population. These individuals, combined with others, generate new individuals with characteristics similar to theirs, leading to agglomeration of solutions in regions of the objective space. In addition, as the NSGA-DO algorithm does not balance the number of solutions selected by each ideal point, one same point can select various solutions and another none.

In order to verify if there is statistical difference among the MOGAs results, we have applied the Wilcoxon signed-rank test [19], with level of significance = 0.05. The statistical results are shown in Table 3, in which one – symbol means the null hypothesis was accepted, and one \(\blacktriangle \) or \(\triangledown \) symbol means the null hypothesis was rejected. The \(\blacktriangle \) symbol indicate that the algorithm from the line was significantly better than the algorithm from the column, and the \(\triangledown \) symbol indicate the opposite. Each –, \(\blacktriangle \) or \(\triangledown \) symbols refers to a function, that is, the first symbol refers to ZDT1 function, the second symbol refers to ZDT2 function, and so on.

Table 3. Statistical comparison on quality indicators GD, IGD and HV.

Based on Table 3, when considering quality indicator GD, the NSGA-DO was significantly better than MNSGA-DO and NSGA-II in almost all functions, only to the ZDT6 function there was not statistical difference among them. Between MNSGA-DO and NSGA-II, MNSGA-DO was better than NSGA-II to ZDT1 and ZDT2 functions, and NSGA-II was better in ZDT3 and ZDT4 functions. Regarding quality indicator IGD, MNSGA-DO and NSGA-II were significantly better than NSGA-DO in all functions. Take into account only MNSGA-DO and NSGA-II, MNSGA-DO was better in almost all functions, except to the ZDT3 function. Considering quality indicator HV, MNSGA-DO and NSGA-II were significantly better than NSGA-DO in all functions, once more. Comparing MNSGA-DO and NSGA-II, they are similar to ZDT3 function, but MNSGA-DO was markedly better in all others. Finally, evaluating execution time, MNSGA-DO and NSGA-II were significantly better than NSGA-DO in all the problems. Regarding MNSGA-DO and NSGA-II, they are similar to ZDT1–3, but MNSGA-DO was worse than NSGA-II to ZDT4 and ZDT6.

Fig. 2.
figure 2

Pareto-optimal, NSGA-II, MNSGA-DO and NSGA-DO from ZDT1 function.

Fig. 3.
figure 3

Pareto-optimal, NSGA-II, MNSGA-DO and NSGA-DO from ZDT2 function.

Table 4. Generational distance results.
Table 5. Inverted generational distance results.
Table 6. Hypervolume results.
Fig. 4.
figure 4

Pareto-optimal, NSGA-II, MNSGA-DO and NSGA-DO from ZDT3 function.

Fig. 5.
figure 5

Pareto-optimal, NSGA-II, MNSGA-DO and NSGA-DO from ZDT4 function.

Fig. 6.
figure 6

Pareto-optimal, NSGA-II, MNSGA-DO and NSGA-DO from ZDT6 function.

6 Conclusion

In this paper we have presented a novel multiobjective genetic algorithm and made a comparison with NSGA-II and NSGA-DO in solving multiobjective optimization problems. In addition, we investigated their performance when applied to the popular ZDT family benchmark, by analysing the convergence and diversity of these MOGAs based on three quality indicators, GD, IGD and HV.

According to statistical results, NSGA-DO was significantly better considering the quality indicator GD, while MNSGA-DO was significantly better taking account the quality indicators IGD and HV. Analysing the Pareto fronts from MOGAs, it was possible to verify that NSGA-DO Pareto front solutions are concentrated in a few points, mainly in ZDT1, ZDT2, ZDT3 and ZDT6 functions. This result can be explained by NSGA-DO individuals selection process, which allow one ideal point select various solutions and another none, leading to agglomeration of solutions in regions of the objective space. On the other side, the MNSGA-DO fronts has better convergence and diversity of the solutions in comparison with NSGA-II.

The NSGA-DO, proposed to improve the distribution of solutions along the Pareto front, fails to overcome the crowding distance of the NSGA-II in continuous problems. As NSGA-DO was developed based on discrete problems, the gaps in Pareto front are not important, what harms its performance in this class of problems. In this context, MNSGA-DO appears as an alternative in solving continuous multiobjective optimization problems and its results demonstrate its feasibility and efficiency.

In future works, we aim to apply MNSGA-DO in solving multiobjective discrete optimization problems and compare it with NSGA-II and NSGA-DO by analysing the convergence and diversity as done in this work. Moreover, we are going to investigate the adjustment of MNSGA-DO regarding problems with discontinuous fronts.