1

有没有一种优雅的调用方式fminsearch来优化函数的第 n 个输出?还是需要定义一个新函数来返回原始函数的第 n 个输出并应用于fminsearch这个新函数?

为澄清而编辑:

即给出:

函数 [out1, out2] = myfunc(x)

% 合适的代码

结尾

找到最小化 out2 的 x 值的最简单方法是什么?

4

1 回答 1

0

如果您的函数被调用foo

function foo(i,...,x)

end

您可以定义一个命名函数:

function foo_x(x)
   foo(...,x);
end

或者使用匿名函数:

@(x) foo(...,x)

并将其传递给 fminsearch。


还有另一种经常(ab)使用的方法,使用本地函数来分配输入。我不推荐它,因为它破坏了很多好的软件工程实践。

于 2014-12-24T07:08:02.533 回答