2011-06-01 37 views

回答

5

http://numlua.luaforge.net/看起來很有趣,但似乎沒有最小化。最有希望的鉛似乎是Lua wrapper for GSL,其中包括各種multidimensional minimization algorithms

With derivatives - BFGS(method="BFGS"optim)和兩個共軛梯度方法(弗萊徹-穿過和波拉克-Ribiere),其是兩種可用於optimmethod="CG"的三個選項。 Without derivatives - Nelder-Mead單純形(method="Nelder-Mead",默認optim)。

更具體地說,請參閱here以瞭解涵蓋最小化的Lua shell文檔。

我@Zack同意,你應該嘗試,如果在所有可能利用現有的實現,而且你可能需要多一點背景知識知道哪些算法將是您的特定問題很有...

+0

我需要BFGS – Skeen 2011-06-02 12:52:07

+0

然後你們全都定下來了,只要我指出的上面的包裝就像廣告一樣。 – 2011-06-02 13:16:28

5

的r實施optim實際上不是在R寫入如果你輸入「的Optim」在提示符沒有括號,它會dump出來函數的定義,你可以看到一些錯誤後檢查和參數混洗它調用一個例程(用C和/或Fortran編碼)來完成所有的實際工作。

所以你最好的選擇是找到一個用於數學優化的C庫 - 對不起,我沒有任何建議 - 並將其包裝到Lua中。我懷疑有人爲此編寫了native-Lua代碼,並且我會而不是建議嘗試自己編寫代碼;有效地進行數學優化仍然是基礎研究的一個活躍領域,而迄今爲止最好的算法實現起來並不輕鬆。