我希望通过fmincon
最小化功能:
[param, fval]=fmincon(@(param) functionfile(param, additional inputs), ...);
但是,除了参数和函数值之外,我还希望从fmincon
调用的函数中获取一些其他内容。
我不想使用全局变量。还有其他办法吗?
答案 0 :(得分:0)
问题是fmincon
在迭代过程中一遍又一遍地调用你的函数。因此,您应该指定,当您希望返回的内容时,特别是,如果它随params
如果您想要获得的东西是固定值 - 您应该在额外的函数调用之前或之后要求它。
如果你的东西只是固定数字,你可以将它们包含在函数的输出中,以便它们出现在fval
中。但是,这样做会导致性能下降。