MATLAB Answers

Mathi
0

How can I find a Pareto optimal using weighted sum method in Multi objective optimization ?

Asked by Mathi
on 19 Aug 2019
Latest activity Answered by Alan Weiss
on 22 Aug 2019
Hi All,
I am new to the MOOP problem. I would like to find out pareto optimal front using weighted sum method. So I tried the following code,
objective1=x3+y2;
objective2=y2-4x;
x0=[1,1];
w1=linspace(0,1,N);
w2=1-w1;
sol=nan(3,N);
for i=1:N
FWS=@(x) w1(i)* (x).^3 +(y).^2 + w2(i)* (y).^2 - 4x;
%sol(:,i)=fminunc(FWS,x0(:));
[x,fval] = fminunc(FWS,x0);
end
Finally I got the error like,
Error using fminunc (line 368)
Supplied objective function must return a scalar value.
Can anyone help me to clear this problem really appreciated?
Thanks

  0 Comments

Sign in to comment.

1 Answer

Answer by Alan Weiss
on 22 Aug 2019

There are several approaches to finding Pareto fronts. This example uses fgoalattain, but you can easily modify it to use fminunc.
Alan Weiss
MATLAB mathematical toolbox documentation

  0 Comments

Sign in to comment.