Writing fitness function in multi objective GA

조회 수: 1 (최근 30일)
Hari
Hari 2022년 5월 25일
답변: M Mirrashid 2022년 6월 5일
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

채택된 답변

Walter Roberson
Walter Roberson 2022년 5월 25일
mobj = @(x) [fun1(x); fun2(x) ]
  댓글 수: 7
Walter Roberson
Walter Roberson 2022년 5월 27일
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 2022년 6월 4일
Yes, I tried again. The second approach worked this time. Thanks!!

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

M Mirrashid
M Mirrashid 2022년 6월 5일

카테고리

Help CenterFile Exchange에서 Solver-Based Optimization Problem Setup에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by