2013-01-31 44 views
1

我想通過fmincon最小化功能:如何從fmincon調用的函數返回多個輸出?

[param, fval]=fmincon(@(param) functionfile(param, additional inputs), ...); 

然而,除了參數,最小的函數值,我想獲得一些其他的東西從fmincon調用函數後面。

我不想使用全局變量。有沒有其他辦法可以做到這一點?

回答

0

問題在於fmincon在迭代過程中一次又一次地調用你的函數。所以你應該指定,當你想要你的東西返回,特別是,如果它改變params

如果你想得到的東西是一個固定值 - 你應該要求它在一個額外的函數調用之前或之後。

如果你的東西只是固定的數字,你可以將它們包含在函數的輸出中,使它們出現在fval。但是,這樣做會降低性能。

相關問題