Can someone explain to me what are the main differences of the currently available multi-objective optimization plugins (Tunny, Opossum, and Wallacei)?
I read their documentations, but as a novice to this domain, I am now even more stumbled than when I started reading You’d almost need a PhD to understand it seems. So for me choosing one almost seems arbitrary.
Is there like a rule of thumb to choose one of them?
And how do you best select the machine learning algorithm (RBFMOpt, MACO, NSGA-2, etc…)
The context I want to use if for is a daylight simulation with multiple constraints.
I am a developer for Tunny.
First I will answer your last question.
Only Tunny supports optimizations with constraints among the plug-ins listed.
Next, regarding the algorithm to be used, I recommend using NSGA-2 when the objective function is more than 3 or when there are more than 10 variables.
NSGA-2 is a good first choice because it can be applied to a relatively wide range of methods. For that reason, Tunny, opossum, and Wallacei all support this algorithm.
Bayesian optimization in Tunny and RBFMOpt in Opossum are algorithms that may be able to find optimal solutions faster than NSGA-2 when the objective function and variables are smaller than the above.
Sorry the Tunny documentation is confusing. I will do my best to improve it.
Attached is a simple example of constrained optimization using Tunny.
Note that Tunny’s constraints include results that do not satisfy the constraints, as shown in the result image below.
However, Tunny finds more solutions that satisfy the constraints, as shown in the following graph of results with and without constraints.
This is because learning to determine the next optimization search point also requires the “constraints not satisfied” information.
Tunny’s constraint is considered satisfied if the value input in “Constraint” is less than or equal to zero.
with constraint (Gray points are those that do not satisfy the constraint)
can we start optimization with tunny with a boolean toogle?
Unfortunately, it is not possible at the moment, as various settings need to be specified in the UI when optimising. But it can be added to the development items.
Can you give me more details on the intended use?
I am also desperately need any of optimalization plugin which can be triggered by boolean for instance. I see equivalent in Zombie Kangaroo solver. You set up the problem and fitness and then component give you result/s and you can postprocess it further even loop it.