有一種優雅的方式來調用fminsearch
優化函數的n個輸出?或將一個需要定義返回原函數的n個輸出新的功能和應用fminsearch
這一新功能呢?fminsearch優化n個輸出在Matlab
編輯的澄清:
即下式給出:
函數[OUT1,OUT2] = MYFUNC(X)
%適當的代碼
端
什麼是最簡單的找到最小化out2的x值的方法?
有一種優雅的方式來調用fminsearch
優化函數的n個輸出?或將一個需要定義返回原函數的n個輸出新的功能和應用fminsearch
這一新功能呢?fminsearch優化n個輸出在Matlab
編輯的澄清:
即下式給出:
函數[OUT1,OUT2] = MYFUNC(X)
%適當的代碼
端
什麼是最簡單的找到最小化out2的x值的方法?
如果你的函數調用foo
:
function foo(i,...,x)
end
您可以定義一個名爲功能:
function foo_x(x)
foo(...,x);
end
或者使用匿名函數:
@(x) foo(...,x)
,並把它傳遞給fminsearch 。
還有另一種方法,這是正在(AB)經常使用的,使用本地功能分配的輸入。我不推薦它,因爲它打破了很多好的軟件工程實踐。
感謝您的回覆!看來你在尋找優化單輸出功能,針對特定的輸入,而我試圖優化多輸出功能,但只有一個輸出。即我有函數[OUT1,OUT2] = MYFUNC(x)和我想找到x的最小化OUT2的值。再次感謝! – John
此:http://stackoverflow.com/a/1344794/3139711可能是一種選擇,但如果這是更優雅比你的意圖來定義一個新的功能是開放的爭端。 – knedlsepp
我看到的是以前的帖子,但就像你說的,這是相當類似定義一個新的功能(只是更普遍適用)。我希望能有更多的單線解決方案,但也許這是不可能的。 – John