How can I define fitness limit for multiple objectives when using gamultiobj

1 Ansicht (letzte 30 Tage)
Hello, please pardon my rusty matlab skills...
In working with single objective genetic optimization tool, I am able to define limit on the fitness function using:
opts.FitnessLimit = -100;
[x,fval] = ga(@objfunEff,nvars,A,B,Aeq,Beq,lb,ub,@confun,IntCon,opts);
However, I am working on multiobjective functions using gamultiobj but I do not know how to the fitness limit for the fitness functions.
I know this is not right, but this describes what I want to do
opts.FitnessLimit (1) = -100; %fitness limit for f(1)
opts.FitnessLimit (2) = -10; %fitness limit for f(2)
[x,fval] = ga(@objfunEff,nvars,A,B,Aeq,Beq,lb,ub,@confun,IntCon,opts);
Any help or link would be appreciated.

Akzeptierte Antwort

Alan Weiss
Alan Weiss am 29 Apr. 2021
You can set Nonlinear Constraints in gamultiobj to keep the objective functions within the limits you like. Or you can simply postprocess the resulting Pareto set to discard all points that do not satisfy your constraints. But, of course, that might cause you to end up with too few points.
Alan Weiss
MATLAB mathematical toolbox documentation

Weitere Antworten (0)

Kategorien

Mehr zu Multiobjective Optimization finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by