为什么 fgoalattain 内置函数在 MATLAB 中不起作用?
Why is fgoalattain built-in function not working in MATLAB?
我正在尝试在 MATLAB 中调用 fgoalattain
函数(使用目标实现算法计算函数最小值)。根据文档,它应该如下所示:
[X,FVAL,ATTAINFACTOR] = FGOALATTAIN(@objf_1,x0,goal,weight)
其中 @objf_1
是 objf_1
m 文件中定义的函数的函数句柄,其余是我自己设置的一些参数。它们在任何情况下都不重要,因为显然 MATLAB 对该函数有问题,因为它抛出:
>> rospar_4
Undefined function 'fgoalattain' for input arguments of type 'function_handle'.
Error in rospar_4 (line 29)
[X,FVAL,ATTAINFACTOR] = fgoalattain(@objf_1,x0,goal,weight)
但是,我已经知道该函数在另一个 MATLAB 版本 - R2011b(我使用的是 R2012b)上运行良好,但第一个参数为 char
:
[X,FVAL,ATTAINFACTOR] = fgoalattain('objf_1',x0,goal,weight)
如果我尝试在我的系统中这样调用它,错误几乎是一样的:
>> rospar_4
Undefined function 'fgoalattain' for input arguments of type 'char'.
Error in rospar_4 (line 29)
[X,FVAL,ATTAINFACTOR] = fgoalattain('objf_1',x0,goal,weight)
知道我是怎么得到这个的吗?
不是内置函数。您需要安装 Optimization toolbox.
我正在尝试在 MATLAB 中调用 fgoalattain
函数(使用目标实现算法计算函数最小值)。根据文档,它应该如下所示:
[X,FVAL,ATTAINFACTOR] = FGOALATTAIN(@objf_1,x0,goal,weight)
其中 @objf_1
是 objf_1
m 文件中定义的函数的函数句柄,其余是我自己设置的一些参数。它们在任何情况下都不重要,因为显然 MATLAB 对该函数有问题,因为它抛出:
>> rospar_4
Undefined function 'fgoalattain' for input arguments of type 'function_handle'.
Error in rospar_4 (line 29)
[X,FVAL,ATTAINFACTOR] = fgoalattain(@objf_1,x0,goal,weight)
但是,我已经知道该函数在另一个 MATLAB 版本 - R2011b(我使用的是 R2012b)上运行良好,但第一个参数为 char
:
[X,FVAL,ATTAINFACTOR] = fgoalattain('objf_1',x0,goal,weight)
如果我尝试在我的系统中这样调用它,错误几乎是一样的:
>> rospar_4
Undefined function 'fgoalattain' for input arguments of type 'char'.
Error in rospar_4 (line 29)
[X,FVAL,ATTAINFACTOR] = fgoalattain('objf_1',x0,goal,weight)
知道我是怎么得到这个的吗?
不是内置函数。您需要安装 Optimization toolbox.