fmincon:Supplied objective function must return a scalar value.

1 回表示 (過去 30 日間)
Ylenia Placella
Ylenia Placella 2020 年 11 月 15 日
コメント済み: Ylenia Placella 2020 年 11 月 15 日
%constraints c and ceq
for h=linspace(h_min,h_max,69);
x=zeros(N,1);
c=h-x(1)'*D*x(2);
end
function [c,ceq]= contr (x)
ceq=[];
c=c;
end
%function to optimize
[T,N]=size(RR)
629 69
f=@(x)x(1)'*sigma*x(2);
nonlcon=@contr;
Aeq=ones(1,N);
beq=1;
l_b=[];
u_b=[];
x0=ones(N,1);
A=[];
b=[];
sigma_2rao = zeros(1,length(h));
sigma_2rao(1)=var_min;
x_rao=zeros(N,length(h));
for h=linspace(h_min,h_max,69)
[x_rao(:,h),sigma_2rao(h)] = fmincon(f,x0,A,b,Aeq,beq,l_b,u_b,nonlcon);
end
  4 件のコメント
Walter Roberson
Walter Roberson 2020 年 11 月 15 日
f = @(x)x*sigma*x';
x0 = ones(1,N);
Ylenia Placella
Ylenia Placella 2020 年 11 月 15 日
I changed the codes like you said.
Now I have this error:
Unrecognized function or variable 'contr'.
Error in fmincon (line 649)
[ctmp,ceqtmp] =
feval(confcn{3},X,varargin{:});
Error in funzionerao_14 (line 15)
[x_rao(:,h),sigma_2rao(h)] =
fmincon(f,x0,A,b,Aeq,beq,l_b,u_b,nonlcon);

サインインしてコメントする。

回答 (0 件)

カテゴリ

Help Center および File ExchangeNonlinear Optimization についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by