-
Notifications
You must be signed in to change notification settings - Fork 122
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
Adding NSGA3 #406
base: master
Are you sure you want to change the base?
Adding NSGA3 #406
Conversation
@mlpack-jenkins test this please |
* | ||
* @tparam MatType Type of matrix to optimize. | ||
* @param population The elite population. | ||
* @param objectives The set of objectives. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There is no objectives parameter.
* @param parentA First parent from elite population. | ||
* @param parentB Second parent from elite population. | ||
*/ | ||
void Crossover(MatType& childA, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The lowerBound and upperBound parameter description from above, have to be added here.
* @param child The candidate whose coordinates are being modified. | ||
* @param objectives The set of objectives. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No child or objectives parameters, but mutationRate.
for (size_t i = 0; i < front.size(); i++) | ||
{ | ||
size_t ind = front[i]; | ||
|
||
pa = (calculatedObjectives[ind] - pointA); | ||
double t = arma::dot(pa, ba) / arma::dot(ba, ba); | ||
distancesTemp[i] = arma::accu(arma::pow((pa - t * ba), 2)); | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The indentation is off here.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you update the documentation and history?
Hey @zoq I have added a few more changes that should make nsga3 faster especially the |
This PR is an implementation of the NSGA3 algorithm mentioned in the following paper : An Evolutionary Many-Objective Optimization
Algorithm Using Reference-Point-Based
Nondominated Sorting Approach,
Part I: Solving Problems With Box Constraints