序列二次規劃法
序列二次規劃演算法
1 序列二次規劃法簡介
非線性規劃問題是目標函式或約束條件中包含非線性函式的規劃問題。一般
說來,解非線性規劃要比解線性規劃問題困難得多。而且,也不像線性規劃有單
純形法這一通用方法,非線性規劃目前還沒有適於各種問題的一般演算法,各個方
法都有自己特定的適用範圍。當目標函式和約束條件具有良好的分析性質時,人
們喜歡用間接法分析與求解約束最優化問題。利用間接法求解最優化問題的途徑
一般有兩種,另一種途徑是在可行域內使目標函式下降的迭代點法,如可行點法。
另一種是利用目標函式和約束條件構造增廣目標函式,藉此將約束最優化問題轉
化為無約束最優化問題,然後利用求解無約束最優化問題的方法間接求解新目標
函式的區域性最優解或穩定點,如人們所熟悉的懲罰函式法,乘子法和序列二次規
划等。序列二次規劃演算法是目前公認的求解約束非線性優化問題的最有效方法之
一,與其它優化演算法相比,其最突出的優點是收斂性好、計算效率高、邊界搜尋
能力強,受到了廣泛重視及應用。但其迭代過程中的每一步都需要求解乙個或多
個二次規劃子問題。一般地,由於二次規劃子問題的求解難以利用原問題的稀疏
性、對稱性等良好特性,隨著問題規模的擴大,其計算工作量和所需存貯量是非
常大的。因此,目前的序列二次規劃方法一般只適用於中小型問題。另外,由於
大型二次規劃問題的求解通常使用迭代法,所需解的精度越高,花費的時間就越
多,穩定性也就越差,相對線性方程組的求解理論來說,二次規劃的求解是不完
善的。2 序列二次規劃的研究
最優化理論及方法是乙個具有廣泛應用背景的研究領域。它研究諸如從眾多
的方案中選出最優方案等問題,常見的各種模型如線性規劃,二次規劃,非線性
規劃,多目標規劃等。最優化理論及方法已經在經濟計畫,工程設計,生產管理,
交通運輸等領域得到了廣泛的應用,吸引了很多學者的研究。
一般非線性約束的數學規劃問題是:
min f (x )
s. t . gu (x ) 0 (u 1,2,..., p )
h ( x ) 0 (v 1,2,..., m)
v其中x r n 是決策變數,f (x ) 是目標函式,gu (x ) ,h (x ) 分別是不等
v式約束函式和等式約束函式。
在求解上述問題的諸多演算法中序列二次規劃(sqp)是最有效的一類方法之一" 由
於它具有超線性收斂速度,對它的研究一直是非線性規劃的乙個熱點,許
多學者對它進行了研究和改進"
序列二次規劃(sqp )演算法最早由 wilson (1963)提出。wilson 提出了
newton-sqp 方法。60 年代末和70 年代初,隨著解無約束優化問題的擬newton
法的發展,擬 newton-sqp 演算法的研究引起了學者們的高度重視。
polomares-mangasarian (1976)提出了一類擬newton-sqp 方法。在該類方法中,
他採用對lagrange 函式的整體hesse 矩陣(即既對x 又對lagrange 乘子的hesse
矩陣)的近似進行修正的方法來修正。han (1976,1977)證明了 psb-sqp 和
bfgs-sqp 方法的區域性收斂性。而且,若採用精確罰函式進行搜尋,則演算法具有
全域性收斂性。自此,sqp 演算法的研究受到了廣泛的重視。迄今為止,sqp 演算法
的研究工作已取得了豐碩的成果。
sqp 演算法的主要優點之一是它的全域性收斂性和區域性超線性收斂性。為使演算法
h具有全域性收斂性,通常要求子問題 (qp )中的矩陣 對稱正定。使得 (qp )產
h生的方向 是某個效益函式的下降方向。另一方面,若矩陣 對稱正定,則子
s問題 (qp )是一
數學建模 二次規劃
若該線性規劃的目標函式為自變數x的二次函式,約束條件全是線性的,則為二次規劃。在matlab中表達的二次規劃的數學模型如下 mi n12x hx f xs t.ax bae qx b eqlb x u b 其中,f和b是列向量,a是相應維數的矩陣,h實對稱矩陣。matlab中求解二次規劃的命令如下 ...
二次學習動態規劃
最近在看一本經典的程式設計師書籍 程式設計之美 裡面有一道買書的演算法題,書中指導使用動態規劃去解決該問題,雖然一年前有那麼幾天看似深入的學習了一下動態規劃,但這次看完書上的解釋之後還是不太清楚如何寫 去解決買書問題,所以用文章的方式再次記錄一遍自己學習動態規劃與解決買書問題的過程。動態規劃是通過把...
python求解二次規劃問題
python中支援convex optimization 凸規劃 的模組為cvxopt,其安裝方式為 pip install cvxopt二次型 二次型 quadratic form n個變數的二次多項式稱為二次型,即在乙個多項式中,未知數的個數為任意多個,但每一項的次數都為2的多項式。其基本形式如...