MATLAB Answers

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

40 ビュー (過去 30 日間)
Mathi
Mathi 2019 年 8 月 19 日
Answered: Alan Weiss 2019 年 8 月 22 日
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 件のコメント

サインイン to comment.

件の回答 (1)

Alan Weiss
Alan Weiss 2019 年 8 月 22 日
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 件のコメント

サインイン to comment.

サインイン してこの質問に回答します。


Translated by