fminsearch 多个参数 matlab
fminsearch multiple parameters matlab
我正在尝试将 fminsearch 与多个参数一起使用,但我什至无法让它与两个参数一起使用。我也试过在 matlab 中使用优化工具,但后来我得到:
Optimization running.
Error running optimization.
Not enough input arguments.
我是做什么的:
fval = fminsearch(@g,[1 1])
函数 g 如下所示:
function r=g(x,y)
r=x.^3+3*x*y.^2+12*x*y;
end
但我明白了:
Error using g (line 2)
Not enough input arguments.
Error in fminsearch (line 190)
fv(:,1) = funfcn(x,varargin{:});
您的函数 g
接受两个输入,x
和 y
,但是您提供 fminsearch
一个输入,向量 [1 1]
。您需要重写它,以便 fminsearch
只需要一个向量作为输入,然后该向量被分成两个数字以输入到 g
.
fminsearch(@(v) g(v(1),v(2)),[1 1])
这将生成一个匿名函数,该函数将向量作为输入 (v
),然后使用第一个元素 (v(1)
) 作为 g
的第一个输入,第二个元素作为第二个输入。
我正在尝试将 fminsearch 与多个参数一起使用,但我什至无法让它与两个参数一起使用。我也试过在 matlab 中使用优化工具,但后来我得到:
Optimization running.
Error running optimization.
Not enough input arguments.
我是做什么的:
fval = fminsearch(@g,[1 1])
函数 g 如下所示:
function r=g(x,y)
r=x.^3+3*x*y.^2+12*x*y;
end
但我明白了:
Error using g (line 2)
Not enough input arguments.
Error in fminsearch (line 190)
fv(:,1) = funfcn(x,varargin{:});
您的函数 g
接受两个输入,x
和 y
,但是您提供 fminsearch
一个输入,向量 [1 1]
。您需要重写它,以便 fminsearch
只需要一个向量作为输入,然后该向量被分成两个数字以输入到 g
.
fminsearch(@(v) g(v(1),v(2)),[1 1])
这将生成一个匿名函数,该函数将向量作为输入 (v
),然后使用第一个元素 (v(1)
) 作为 g
的第一个输入,第二个元素作为第二个输入。