NSGA-II — Non-dominated Sorting Genetic Algorithm II
Non-dominated Sorting Genetic Algorithm II · Also known as: NSGA2, Non-dominated Sorting GA II, NSGA-II — Çok Amaçlı Evrimsel Optimizasyon
NSGA-II (Non-dominated Sorting Genetic Algorithm II) is the standard reference algorithm for multi-objective evolutionary optimisation, introduced by Deb, Pratap, Agarwal and Meyarivan in 2002. Rather than collapsing multiple conflicting objectives into a single score, it evolves a population of candidate solutions across generations and returns a set of Pareto-optimal trade-off solutions — the Pareto front — using fast non-dominated sorting and a crowding distance metric to preserve diversity.
Read the full method
Sign in with a free account to read this section.
Method map
The neighbourhood of related methods — select a node to explore.
When to use it
NSGA-II applies whenever a problem has two or more conflicting objective functions that cannot be merged into a single criterion without loss of information. The decision variables can be continuous, binary, or categorical, and no distributional assumption on the objective landscape is required. The algorithm suits engineering design, resource allocation, scheduling, and portfolio problems where a spectrum of trade-off solutions is more useful than a single optimum. A sufficient number of generations (typically several hundred or more) is needed to achieve good front coverage; running too few generations is the main failure mode.
Strengths & limitations
- Produces a diverse set of Pareto-optimal trade-off solutions in a single run, avoiding the need to repeat optimisation with different weights.
- Fast non-dominated sorting runs in O(MN²) time (M objectives, N population size), making it tractable for moderate problem sizes.
- Elitist selection ensures that good solutions found early are never discarded.
- Applicable to continuous, binary, and categorical decision variables without distributional assumptions.
- Widely validated across engineering, operations research, and computational science domains.
- Performance degrades as the number of objectives grows beyond three or four — crowding distance becomes a poor diversity measure in high dimensions.
- Requires careful tuning of population size and generation count; too few generations prevents adequate front coverage.
- Evaluating objective functions that involve expensive simulations makes the algorithm computationally costly.
- Results are stochastic: different random seeds can yield different Pareto fronts, so multiple runs and statistical comparison (e.g. hypervolume) are recommended.
Frequently asked
How many generations does NSGA-II need?
There is no universal rule, but running fewer than a few hundred generations typically produces an incomplete Pareto front. A practical approach is to plot the hypervolume indicator across generations and stop when it stabilises. If computational budget prevents this, a weighted single-objective optimiser is a safer alternative.
What is the Pareto front?
The Pareto front is the set of solutions where no improvement on one objective is possible without worsening at least one other. NSGA-II approximates this front, giving you the full menu of balanced compromises rather than a single answer.
Can NSGA-II handle more than two objectives?
Yes, but crowding distance — the diversity mechanism — becomes less effective as the number of objectives exceeds three or four (the 'many-objective' regime). For problems with five or more objectives, NSGA-III or decomposition-based algorithms such as MOEA/D are generally preferred.
Is NSGA-II deterministic?
No. The genetic operators and initial population involve randomness, so different runs with different random seeds can yield different Pareto-front approximations. Best practice is to run the algorithm multiple times and compare front quality using the hypervolume indicator.
Sources
- Deb, K., Pratap, A., Agarwal, S. & Meyarivan, T. (2002). A Fast and Elitist Multiobjective Genetic Algorithm: NSGA-II. IEEE Transactions on Evolutionary Computation, 6(2), 182-197. DOI: 10.1109/4235.996017 ↗
- Zitzler, E., Deb, K. & Thiele, L. (2000). Comparison of Multiobjective Evolutionary Algorithms: Empirical Results. Evolutionary Computation, 8(2), 173-195. DOI: 10.1162/106365600568202 ↗
How to cite this page
ScholarGate. (2026, June 1). Non-dominated Sorting Genetic Algorithm II. ScholarGate. https://scholargate.app/en/optimization/nsga2
Which method?
Set this method beside its closest kin and read them side by side — the library lays the books on the table; the choice is yours.
- Ant Colony OptimizationOptimization↔ compare
- Differential EvolutionOptimization↔ compare
- Genetic AlgorithmOptimization↔ compare
- Particle Swarm OptimizationOptimization↔ compare