A Python implementation of the NSGA-III selection algorithm as described in:
- Deb, K., and Jain, H. (2014). An Evolutionary Many-Objective Optimization Algorithm Using Reference-Point-Based Nondominated Sorting Approach, Part I: Solving Problems With Box Constraints. IEEE Transactions on Evolutionary Computation, 18(4), 577–601. doi: 10.1109/TEVC.2013.2281535.
- Jain, H. and Deb, K. (2014). An Evolutionary Many-Objective Optimization Algorithm Using Reference-Point Based Nondominated Sorting Approach, Part II: Handling Constraints and Extending to an Adaptive Approach. IEEE Transactions on Evolutionary Computation, 18(4), 602-622. doi: 10.1109/TEVC.2013.2281534.
nsgaiii
can be used with -as has been developed relying on- the DEAP module.
This code is highly experimental. Contributions and bug fixes are welcome.
nsgaiii
code has been integrated in DEAP as their function selNSGA3
. I recommend you use that implementation as it is actively maintained.
I have prepared a sample Jupyter/IPython notebook that illustrates NSGA-III.
So far, the only form of installation is to clone the project from GitHub,
git clone https://github.com/lmarti/nsgaiii.git
...and then installing it by running:
python setup.py install