【发布时间】:2013-01-31 15:35:41
【问题描述】:
我想通过fmincon最小化一个函数:
[param, fval]=fmincon(@(param) functionfile(param, additional inputs), ...);
但是,除了最小的参数和函数值,我想从fmincon调用的函数中取回一些其他的东西。
我不想使用全局变量。有没有其他方法可以做到这一点?
【问题讨论】:
标签: matlab
我想通过fmincon最小化一个函数:
[param, fval]=fmincon(@(param) functionfile(param, additional inputs), ...);
但是,除了最小的参数和函数值,我想从fmincon调用的函数中取回一些其他的东西。
我不想使用全局变量。有没有其他方法可以做到这一点?
【问题讨论】:
标签: matlab
一个问题是fmincon 在一个迭代过程中一遍又一遍地调用你的函数。所以你应该指定,当你希望你的东西返回时,特别是它是否随着params而改变
如果您想要返回的东西是一个固定值 - 您应该在额外的函数调用之前或之后要求它。
如果你的东西只是固定数字,你可以将它们包含在函数的输出中,这样它们就会出现在fval 中。但是,这样做会导致性能下降。
【讨论】: