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

False definition of Non Dominated Sorting brick #2

Open
reyman opened this issue Mar 26, 2015 · 0 comments
Open

False definition of Non Dominated Sorting brick #2

reyman opened this issue Mar 26, 2015 · 0 comments
Labels

Comments

@reyman
Copy link

reyman commented Mar 26, 2015

It seems the non dominated elitism used by NSGA2 implementation in MGO is not correct.

Actually the different front are builded using information based on the number of domination, this is another type of existing sorting, but do not correspond to the NDS or Non Dominated Sorting used by NSGA2

In NDS, at each step of the loop we take only the solution with dominated = 0 (cf the non dominated solution) to make a new front, then we remove this population selected, and then recompute a new non dominated front based on this new cutted population. etc.

Actually population are not removed, and not recomputed.

Only the last front is tested using diversity metric, this code seems correct in mgo.

Another point perhaps, it seems the NDS is realized on population + offspring on line 67

NonDominatedElitism(this)(filter(oldGeneration ++ offspring), mu)

But it's more a properties of NSGA2 than a generic properties from NDS.In the case of NSGA1, the non dominated sorting operate only on offspring population (so the NDS can be without elitism). Perhaps it can be a good idea to move this properties in another brick.

@reyman reyman added the bug label Mar 26, 2015
@reyman reyman assigned reyman and romainreuillon and unassigned reyman and romainreuillon Mar 26, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants