求解答~fminco​n估计目标函数参数,​输入参数太多,运行出​错。

function f= HC_IDF_oneF(par,x,y,b)
A0=par(1);
A=par(2:4);
B=par(5);
C=par(6:8);
AA=par(9:17);
AB=par(18:20);
AC=par(21:29);
BB=par(30);
BC=par(31:33);
CC=par(34:42);
f=A0+x(1,:)*A+y(1,:)*B+b(1,:)*C+1/2*kron(x(1,:),x(1,:))*AA+1/2*kron(y(1,:),y(1,:))*BB+1/2*kron(b(1,:),b(1,:))*CC+kron(x(1,:),y(1,:))*AB+kron(x(1,:),b(1,:))*AC+kron(y( 1,:),b(1,:))*BC;
目标函数
[par,fval]=fmincon(@(par)HC_IDF_oneF(par,x,y,b,T),par0,[],[],[],[],[],[],@(par)HC_IDF_oneF_Const18(par,x,y,b,T),option);
变量X三个 Y一个 非期望产出3个
错误使用 HC_IDF_oneF
输入参数太多。
出错 yingzijiage1>@(par)HC_IDF_oneF(par,x,y,b,T)
出错 fmincon (line 535)
initVals.f = feval(funfcn{3},X,varargin{:});
出错 yingzijiage1 (line 20)
[par,fval]=fmincon(@(par)HC_IDF_oneF(par,x,y,b,T),par0,[],[],[],[],[],[],@(par)HC_IDF_oneF_Const18(par,x,y,b,T),option);
原因:
Failure in initial objective function evaluation. FMINCON cannot continue.

 Accepted Answer

0 votes

[par,fval]=fmincon(@(par)HC_IDF_oneF(par,x,y,b,T),par0,[],[],[],[],[],[],@(par)HC_IDF_oneF_Const18(par,x,y,b,T),option);错在这里啦,你调用HC_IDF_oneF的时候多输入了一个T,在function定义的时候并没有T,所以多一个输入

More Answers (0)

Categories

Find more on 手动优化性能 in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!