Code Monkey home page Code Monkey logo

nsga2's People

Contributors

kamilmielnik avatar sp4ghet avatar wreszelewski avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

nsga2's Issues

Question about crowding distance calculation

Hello,
I am very interested in your code and I may use it during my work on the PHD thesis if you have no problem.
Actually I am new in this domain (NSGA 2 algorithm and related concepts) and I am trying to understand the code.
During my research about NSGA 2 algorithm I found that the crowding distance for individuals (other than the first and last one) is the difference of the objective value of two closet neighbors.
But in your code, you calculated the crowding distance of an individual by the difference of the crowding distance of two closet neighbors.
Can you explain please?

Thank you in advance for your time.

Crowding Distance Calculation different from paper

I believe the crowding distance calculation is different from the one in the NSGA-II(Deb, 2000) paper.

The offending line of code is here, and looks like:

front[index].crowding_distance = (front[index+1].crowding_distance - front[index-1].crowding_distance) / (self.problem.max_objectives[m] - self.problem.min_objectives[m])

However, in (Deb 2000), the crowding distance is calculated as follows:

image

The last line would correspond to the above code.
Is there a particular reasoning behind this? Thanks.

using nsga2 for any function minimization

Hi, I know this cannot be called an issue but I really need your help.
I have a multiobjective problem that consists of minimizing 2 functions f1 and f2. each of the two function take a vector X as argument. X will be a list or an np.array ... how can I use this nsga2 algorithm to optimize those two functions.
Thank you!

Question regarding test problems

This might not fit under issues, but I hope you can help me anyways. I am exploring the option of using this code for a project at my university. (First of, is this ok?)
If I am to use it, I need to implement test problem ZDT6. What I am wondering is how you are able to calculate the perfect pareto front for problems 1, 2 and 3? How would I then do this for ZDT6?
I also have a bit of trouble understanding the hypervolume metric. Firstly, why do you choose 11, 11 as a reference point? Is this just random, and unimportant as long as the reference point is the same for all hypercubes? Lastly, how do you calculate the max hypervolume? Is this just the hypervolume for the pareto optimal set?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.