-
Notifications
You must be signed in to change notification settings - Fork 0
Add NSGA2 and NRMSE #7
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
Conversation
LGTM! I'll do some testing and merge asap |
I'm having a bit of trouble getting the nsde to work, I haven't tried the other one's yet.
work for you? I think it's because of |
It works perfectly with NRMSE. I only used that GoF, because it performs best according to the literature. Do you have an idea where to calculate the relative Error of each parameter combination und put the results into the csv-files? I would like to have the error of distance, speed and acceleration of each combinations to compare different GoFs and results. |
@Domsall can you check if 3f787fe works for you? I changed the MOP factory so that mulitple measures of performance can be either summed or returned as tuple, the latter being used for pymoode & pymoo. Those should now work with theil's U and the others. Do you mean you want not only the summed error (Error(distance)+Error(acceleration)), but rather separate entries for each measure of performance error per iteration, do I understand correctly?
you want somewhat this:
If not, please make an example csv header and result for the desired entries. |
To your second bullet point: |
The other changes: Looks great, should work like that. I will test and compare after you added the relative Error and merged everything. |
So for NRMSE with distance and acceleration as measures of performance, you mean relataive to their total error
? |
Giving it more thought, I think the best idea is to simply always output the corresponding distance/speed/acceleration error of the chosen GOF next to the weightedError. That way any relative error can be calculated after the optimization. EDIT: These errors are already in "all_results", so there may be no need to change anything |
To use nsga2, we need to add pymoo or a newer pygad-solution.
I found a bug using the pygad-solution that I could only solve by changing the pygad code: ahmedfgad/GeneticAlgorithmPython#261
I also added many parameters to the command line for the possibility of changing the values without changing the code.
Solves #10