我有五個值,A,B,C,d和E算法多維優化/求根/東西
鑑於約束A + B + C + d + E = 1,以及五個功能F(A),F(B),F(C),F(D),F(E),我需要求解A到E,使得F(A)= F(B)= F(C)= F(D)= F(E)。
這是最好的算法/方法是什麼?我不在乎自己是否必須自己寫,我只想知道在哪裏看。
編輯:這些是非線性函數。除此之外,他們不能被定性。其中一些最終可能會從數據表中插入。
我有五個值,A,B,C,d和E算法多維優化/求根/東西
鑑於約束A + B + C + d + E = 1,以及五個功能F(A),F(B),F(C),F(D),F(E),我需要求解A到E,使得F(A)= F(B)= F(C)= F(D)= F(E)。
這是最好的算法/方法是什麼?我不在乎自己是否必須自己寫,我只想知道在哪裏看。
編輯:這些是非線性函數。除此之外,他們不能被定性。其中一些最終可能會從數據表中插入。
這個問題沒有一般的答案。找不到解決方案任何方程。正如蘭斯羅伯茨所說,你必須更多地瞭解這些功能。只是幾個例子
在你能解決問題之前,你真的需要更多地瞭解你正在學習的功能。
ALGENCAN(TANGO的一部分)真的很不錯。也有Python綁定。
http://www.ime.usp.br/~egbirgin/tango/codes.php - 「這完全不使用矩陣操作和,因此,能夠解決中等計算機時間非常大的問題,一般的算法是增廣拉格朗日類型的一般非線性規劃......」
方程
A + B + C + D + E = 1
F(A) = F(B) = F(C) = F(D) = F(E)
的http://pypi.python.org/pypi/TANGO%20Project%20-%20ALGENCAN/1.0
一種解決方案是採取A,B,C,d和E都等於1/5。不知道是否雖然這是你想要的...
新增約翰的評論(感謝!)
假設第二個公式應爲F1(A)= F2(B)= F3(C)後, = F4(D)= F5(E),我會用Newton-Raphson方法(參見Martijn的答案)。您可以通過設置E = 1 - A - B - C - D來消除一個變量。在迭代的每一步中,您都需要解出一個4x4系統。最大的問題可能是從哪裏開始迭代。一種可能是從一個隨機點開始,做一些迭代,如果你沒有到達任何地方,選擇另一個隨機點並重新開始。
請記住,如果你真的不知道有關該功能的任何內容,那麼就不需要解決方案。
解決了問題的問題,但不是這意味着什麼。這聽起來像問題應該說F_1(A)+ F_2(B)+ ... – 2009-08-21 11:44:15
我會先嚐試粒子羣優化。這是很容易實施和調整。請參閱Wiki頁面。
正如其他人已經發布,我們確實需要一些關於功能的更多信息。但是,鑑於此,我們仍然可以嘗試使用標準的非線性編程工具箱解決以下問題。
min k
st。
A + B + C + d + E = 1
F1(A) - K = 0
F2(B) - K = 0
F3(C)-k = 0
F4(d) - K = 0
F5(E)-k = 0
現在,我們可以在我們希望,如罰方法的任何方式解決這個
分鐘K +畝*總和(FI(X_I) - k)的^ 2 st
A + B + C + D + E = 1
或簡單的SQP或內點法。
更多細節,我可以幫助建議一個好方法。
m
+1。我喜歡這種方法。 – 2010-12-11 23:39:16
Google OPTIF9 or ALLUNC。我們使用這些來進行一般優化。
您可以像其他人提到的那樣使用標準搜索技術。在搜索時可以使用它進行一些優化。首先,你只需要解決A,B,C,D,因爲1-E = A + B + C + D。 (A)= F(B)= F(C)= F(D),那麼你可以搜索A.一旦你得到F(A),你可以求解B,C,如果可能的話。如果無法解決這些功能,則需要繼續搜索每個變量,但是現在您的搜索範圍有限,因爲A + B + C + D < = 1.
如果您的搜索是離散的並且有限,上述優化應該工作得很好。
這些函數都是隨着它們的參數單調增加的。除此之外,他們不能被定性。結果表明:
1)以A = B = C = D = E = 1/5開始
2)計算F1(A)到F5(E),並重新計算A到E使每個函數等於該總和除以5(平均值)。
3)通過E重新縮放新的A,以使它們總和爲1,並通過F5重新計算F1。
4)重複,直到滿意。
它收斂速度驚人快 - 只是幾次迭代。當然,每次迭代都需要步驟2的5個根發現。
您需要指定它們的功能類型。線性,二次型,指數型,三角型等 – 2009-08-21 05:45:18
爲了不使人混淆,你應該給你的函數名稱不同。 – starblue 2009-08-21 09:44:41
你的價值觀A ... E也被限制爲非負面的?在許多問題中,當值被限制爲1時,它們也被限制爲不是負面的。還有其他限制嗎? – 2009-08-21 11:51:26