Writing fitness function in multi objective GA

1 vue (au cours des 30 derniers jours)
Hari
Hari le 25 Mai 2022
If I need to go for a multi objective optimisation in GA, how can I bring in the two objectives in a custom made fitness function. Can someone explain in the context of the travelling salesman problem described here : https://in.mathworks.com/help/gads/custom-data-type-optimization-using-ga.html

Réponse acceptée

Walter Roberson
Walter Roberson le 25 Mai 2022
mobj = @(x) [fun1(x); fun2(x) ]
  7 commentaires
Walter Roberson
Walter Roberson le 27 Mai 2022
I am not getting a problem in my tests ?
fun1 = @(x) sin(pi*x(:,1)) + sinh(x(:,2));
fun2 = @(x) cos(pi*x(:,1)) + cosh(x(:,2));
mobj = @(x) [ fun1(x), fun2(x) ];
nvars = 2;
lb = [-pi -pi];
ub = [pi pi];
options1 = optimoptions(@gamultiobj, 'UseVectorized', false);
[Y1, fval1] = gamultiobj(mobj, nvars, [], [], [], [], lb, ub, [], options1);
Optimization terminated: average change in the spread of Pareto solutions less than options.FunctionTolerance.
options2 = optimoptions(@gamultiobj, 'UseVectorized', true);
[Y2, fval2] = gamultiobj(mobj, nvars, [], [], [], [], lb, ub, [], options1);
Optimization terminated: average change in the spread of Pareto solutions less than options.FunctionTolerance.
Hari
Hari le 4 Juin 2022
Yes, I tried again. The second approach worked this time. Thanks!!

Connectez-vous pour commenter.

Plus de réponses (1)

M Mirrashid
M Mirrashid le 5 Juin 2022

Catégories

En savoir plus sur Solver-Based Optimization Problem Setup dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by