轉自:彬彬有禮的專欄
題目:最優化問題簡介
一年多學習以來,無論是前面學習壓縮感知,還是這半年學習機器學習,一直離不開最優化,比如壓縮感知的基追蹤類重構算法,核心問題就是一個優化問題,而機器學習中的很多算法也需要最優化的知識,比如支持向量機算法。看來必須得把最優化的基本內容學習一下了,不求理解的有多麼深,至少要知道怎麼用。其實前面已經寫過一篇與最優化相關的內容了,就是《壓縮感知中的數學知識:凸優化》這篇。
從本篇起,開始學習一些有關最優化的基礎知識,重點是瞭解概念和如何應用。本篇是參考文獻第1.1節的一個摘編或總結,主要是把一些概念集中起來,可以隨時查閱。
1、一般形式
最優化問題的數學模型的一般形式爲(以下稱爲最優化數學模型):
其中,和爲連續函數,通常還要求連續可微。稱爲決策變量,爲目標函數,爲約束函數,爲等式約束,爲不等式約束,並記等式約束的指標集爲,不等式約束的指標集爲。和分別是英文單詞minimize(極小化)和subject to(受約束)的縮寫。
2、概念
如果點滿足最優化數學模型中的所有約束條件就稱爲可行點(Feasible Point),所有可行點的全體稱爲可行域(Feasible Region),用表示。在一個可行點考慮不等式約束,如果有,就稱不等式約束在點考慮不等式約束是有效約束或起作用約束(active constraint),並稱可行點位於約束的邊界;如果有,就稱不等式約束在點是無效約束或不起作用約束(inactive constraint);對於一個可行點,如果沒有一個不等式約束是有效的,就稱是可行域的內點,不是內點的可行點就是可行域的邊界點。顯然在邊界點至少有一個不等式約束是有效約束,當存在等式約束時,任何可行點都要滿足等式約束,因此不可能是等式約束的內點。如果一個可行點滿足,則稱爲最優化問題的全局最優解(或總體最優解);如果可行點滿足,則稱爲最優化問題的嚴格全局最優解(或嚴格總體最優解);對於可行點,如果存在一個鄰域使得成立,則稱爲最優化問題的局部最優解,其中是一個小的正數;對於可行點,如果存在一個鄰域使得成立,則稱爲最優化問題的嚴格局部最優解。如下圖所示,點是嚴格全部極小解,和則是局部極小解,其中是嚴格局部極小解,而是非嚴格局部極小解。(注:附近有一段線是水平的)
一般常見的最優化方法只適用於確定最優化問題的局部最優解,有關確定全局最優解的最優化方法屬於最優化問題的另一個領域——全局最優化。然而,如果最優化問題的目標函數是凸的,而可行域是凸集,則問題的任何最優解(不一定唯一)必是全局最優解,這樣的最優化問題又稱爲凸規劃。進一步,對於凸集上的嚴格凸函數的極小化問題,存在唯一的全局最優解。
3、分類
1)約束最優化問題
只要在問題中存在任何約束條件,就稱爲約束最優化問題。
只有等式約束時,稱爲等式約束最優化問題,數學模型爲:
只有不等式約束時,稱爲不等式約束最優化問題,數學模型爲:
既有等式約束,又有不等式約束,則稱爲混合約束優化問題(或一般約束優化問題);
把簡單界約束優化問題稱爲盒式約束優化問題(或有界約束優化問題),數學模型爲:
2)無約束最優化問題
如果問題中無任何約束條件,則稱爲無約束最優化問題,數學模型爲:
3)連續與離散最優化問題
決策變量的取值是連續的,稱爲連續最優化問題;
決策變量的取值是離散的,稱爲離散最優化問題,又稱爲組合最優化問題。如整數規劃、資源配置、郵路問題、生產安排等問題都是離散最優化問題的典型例子,求解難度比連續最優化問題更大。
4)光滑與非光滑最優化問題
如果最優化數學模型中的所有函數都連續可微,則稱爲光滑最優化問題;
只要有一個函數非光滑,則相應的優化問題就是非光滑最優化問題。
5)線性規劃問題
對於連續光滑最優化問題,如果最優化數學模型中的所有函數都是決策變量的線性函數,則稱爲線性規劃問題。線性規劃問題的一般形式爲:
其中。矩陣向量形式爲
其中,
,
6)二次規劃問題
對於連續光滑最優化問題,如果最優化數學模型中的目標函數是決策變量的二次函數,而所有約束都是決策變量的線性函數,則稱爲二次規劃問題。二次規劃問題的一般形式爲:
其中,爲純量,爲階對稱矩陣。如果爲半正定矩陣,則稱此規劃爲凸二次規劃,否則爲非凸規劃。對於非凸規劃,由於存在比較多的駐點,求解比較困難。
7)非線性最優化問題
只要最優化數學模型中的函數有一個關於決策變量是非線性的,則稱爲非線性最優化問題。
非線性最優化問題是最一般的最優化問題,而線性規劃和二次規劃問題卻是相當重要的特殊的最優化問題,因爲在實際中形成的許多最優化問題都是線性規劃問題或二次規劃問題,而且在用迭代法求非線性最優化問題的最優解時我們常常用線性規劃或二次規劃來局部近似原非線性最優化問題,並通過求所得近似問題的最優解來對已有最優解的估計進行改進。