File Exchange

image thumbnail


version (15.2 KB) by Yarpiz
Implementation of Non-dominated Sorting Genetic Algorithm III in MATLAB


Updated 11 Dec 2016

View License

This a MATLAB implementation of NSGA-III. Jan and Deb, extended the well-know NSGA-II to deal with many-objective optimization problem, using a reference point approach, with non-dominated sorting mechanism. The newly developed algorithm is simply called: NSGA-III. The main reference paper is available here:
For more information, see following link:

Cite As

Yarpiz (2020). NSGA-III in MATLAB (, MATLAB Central File Exchange. Retrieved .

Comments and Ratings (12)

Zehua Dai

I am sorry to find that I cannot obtain a pareto surface by this algorithm. I found the reference points Zr is not used at all.



Can this arithmetic solve constrainted MOPs?Thank you!

Vipin Das P

anubhav goyal

monika roopak

please inform how to change objective function in the code, i changed mop function but it gives error for 4 objective functions


Why wasn't simulated binary crossover (SBX) used. It was used in the actual paper but not in this code.


Sir, Can u please provide the same code for image clustering.

ashkan ha

ashkan ha

this code is not correct
this matlab nsga3 code normalizes entire population but according to the reference article, we must normalizes St population
( page 5 and 6 article :An Evolutionary Many-Objective Optimization
Algorithm Using Reference-point Based
Non-dominated Sorting Approach,
Part I: Solving Problems with Box Constraints)
at the code ( [pop, params] = NormalizePopulation(pop, params); ) it s the part that u must check

this is one of problem of this code


Can this arithmetic solve constrainted problems?Thank you!

Maowei He

Thank you, I just need it.

MATLAB Release Compatibility
Created with R2015b
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!