algorithmic modeling for Rhino
Dear Robert,
Thank you for the wonderful tool! I am currently developing grasshopper tools that will make sense of the results of that are churned out by Octopus, i.e. visualization tools, as part of my thesis research at the UofC.
One of the things I have been hitting the wall with are the population and mutation strategies. I have gone through multiple papers by Zitzler et al. and I have also thoroughly read your papers but especially the papers by Zitzler are more focused on the conceptual and mathematical basis of the strategies.
My question is when is one strategy more useful than the other in terms of design problems? Meaning, how do I base my choice(s) of a strategy, whether population or mutation strategies and how will each combination effectively alter the resultant solution space?
I appreciate your help!
Thanks,
Yassin
Tags:
Hello Yassin,
thank you for the interest!
I guess you are aware of a little set of tools named Octopus.Explicit which unfold many of the inner functions of Octopus. Could be useful for testing custom strategies.
I m planning to release a slightly updated version including explicit components to calculate the exact hypervolume of a set, the approximated hypervolume contribution of a solution to a set, the current octopus.Loop and a set of auxilliary components. If you want you can have those up front.
In general the strategies of when to apply which parameters and strategies for a GA are very subjective to the project, and often a matter of try-and-error or experience for hard problems. Especially the formulation of the fitness functions can have a great impact on the level of success.
But there ARE some established schemes which proved to yield good results for general benchmark problems, and given that your problem is well defined those should work well.
One could say the choice of which degree of mutation to apply is dependent
- on whether you want mutation to contribute 'new blood' to the GA or if you want to refine solutions with it (as kind of a built-in Hillclimber)
- on the sensitivity of your parameters
Which mutation to apply (HypE or Polynomial ..) in general is a pretty detailed question and does not matter much in most cases, as long as it is approved in stateOfTheArt general purpose algorithms.
But, if you are able to develop custom mutation and crossover operators (and potentially a custom representation itself) for your problem in Octopus.E, performance might go up a lot potentially.
Hope this helps a bit,
Best
Robert
Hi Robert,
Thanks for replying!
I currently have not reached the stage of being able to develop my own custom mutation operators, I am still working on understanding the algorithms that exist. The visualization tools I am developing are simply to explore the solutions that are produced and be able to sort, manipulate, filter, etc. in addition to the objective space in Octopus.
However, following up on what you mentioned regarding which strategies to apply being subjective to each project, I still can't wrap my head around what exactly happens in Octopus. Let me clarify:
I understand how each individual algorithm works in simple terms (SPEA2 & HypE), yet, I don't understand exactly what happens when I choose either of them? Meaning, that SPEA2 as you know, is a 'non-dominance approach' while HypE is an 'indicator-based approach', both use different methods of archive truncation methods - which again I am not sure of when one method is more relevant than the other in a design problem? From what I understand that SPEA2 guarantees the preservation of the boundary solutions while HypE preserves extreme solutions, isn't that the same thing? - correct me if I am wrong!
In terms of mutation strategies, from what I understand, HypE allows for more diversification compared to Polynomial or Alt. Polynomial - again correct me if I am wrong!
Considering the above, is the Octopus essentially allowing the user to work with a "customized" algorithm?
Thanks again,
Yassin
Hi Yassin
Have you had any luck finding answers to your questions?
Cheers
Welcome to
Grasshopper
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
© 2024 Created by Scott Davidson. Powered by