Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement the NSGA-III algorithm #569

Draft
wants to merge 21 commits into
base: master
Choose a base branch
from
Draft

Implement the NSGA-III algorithm #569

wants to merge 21 commits into from

Conversation

pmslavin
Copy link
Contributor

@pmslavin pmslavin commented Apr 4, 2024

This merge adds the NSGA-III algorithm to PagMo2, as described in Deb & Jain, 2014 doi: 10.1109/TEVC.2013.2281535.

The algorithm's behavior has been verified with a range of problems from the DTLZ and ZDT test suites along with a real-world water resource allocation problem. Unit tests are provided.

Note that this is in Draft status at the moment:

  • Further docstrings are required.
  • Class nsga3 methods should be accompanied by comments describing the section of Deb & Jain, 2014 they relate to.

@jschueller
Copy link
Contributor

sounds cool, maybe rebase to current master so it could pass the tests

@pmslavin
Copy link
Contributor Author

Thanks Julien, I'll do that. There are also some docstrings missing and a few inconsistencies in the nsga3 constructor arguments with respect to other algorithms, so I'll correct those at the same time.

@kmlyn
Copy link

kmlyn commented Dec 20, 2024

@pmslavin Is there any chance that this work is continued soon? It would be great to have NSGA3 available. U-NSGA3 Seada & Deb, 2015 would be even better.

@pmslavin
Copy link
Contributor Author

Yes @kmlyn, it's good to hear there's interest in this feature. Apologies for the delay in progressing this, I've been on other projects for a while but plan to make progress with this and the associated Pygmo update in the next few weeks. I agree that a U-NSGA3 option would be nice too so I'll take a look at implementing that when this feature is complete.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants