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

1 view (last 30 days)
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

Answers (1)

Alan Weiss
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

Community Treasure Hunt

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

Start Hunting!