數值優化(Numerical Optimization)學習系列-懲罰和增廣拉格朗日方法(Augmented Lagrangian Methods)

概述

求解帶約束的最優化問題,一類很重要的方法就是將約束添加到目標函數中,從而轉換爲一系列子問題進行求解,最終逼近最優解。關鍵問題是如何將約束進行轉換。本節主要介紹
1. 二次懲罰方法
2. 非平滑懲罰方法
3. 增廣拉格朗日方法

二次懲罰方法

動機

帶約束問題如果轉換爲目標函數加上一個對約束的懲罰項,則問題轉換爲一個無約束問題。
轉換後的問題可以通過懲罰項的係數進行控制,一個比較常見的懲罰函數就是二次懲罰。

等式約束的最優化問題

等式約束問題可以表示爲

min f(x)s.t ci(x)=0,iE
添加一個二次懲罰項,則有
Q(x;μ)=f(x)+μ2iEc2i(x)
其中μ 是懲罰參數,直觀上只要增加懲罰參數的值就可以逼近原始問題的最優解。
在實際中,對於某個懲罰參數μ 只要幾步無約束最優化問題,不需要尋找最優解。

一般化約束最優化問題

一般化約束最優化問題表示爲

minf(x)s.tci(x)=0 iE     ci(x)0 iI
添加懲罰項係數結果爲
Q(x;μ)=f(x)+μ2iEc2i(x)+μ2iI([ci(x)])2
其中ci(x) 表示當該值大於0時,結果爲0,否則爲ci(x)

二次懲罰項通用框架

這裏寫圖片描述

1.參數μ 的選擇可以根據無約束問題的優化難度進行確定,如果很容易優化則可以μk+1=μk ,否則可以選擇μk+1=μk
2. 定理:如果轉換後的問題Q(x;μk) 每一步都計算最優解,並且當μk 時能夠接近原始問題的最優解。

非平滑懲罰函數

有些懲罰函數是精確的,即懲罰項參數μ 達到一定值時轉換後的問題的最優解就是原始問題的最優解,其中l1懲罰項就是精確的,表示如下

ϕ1(x;μ)=f(x)+μiE|ci(x)|+μiE|ci(x)|

通用求解框架

這裏寫圖片描述

增廣拉格朗日方法

動機

增廣拉格朗日方法在拉格朗日方法的基礎上添加了二次懲罰項,從而使得轉換後的問題能夠更容易求解,不至於因條件數變大不好求。則轉換後的問題爲

L(x,λ;μ)=f(x)iEλici(x)+μ2iEci(x)2

在第K步迭代過程中,固定懲罰項參數μλk ,此時優化x,根據最優化條件有
xL=f(x)iE(λkiμkci(x))ci(x)=0

對比最優性條件,應該有f(x)=0;λ=λkiμkci(x) ,從而很自然的可以將λk+1=λkiμkci(x)

等式約束通用框架

這裏寫圖片描述

實際應用

在實際中,增廣拉格朗日方法可以很有效的處理邊界約束和線性約束最優化問題。

總結

瞭解通過將約束轉換爲懲罰項添加到目標函數上的方法,瞭解增廣拉格朗日方法的動機。

發佈了59 篇原創文章 · 獲贊 123 · 訪問量 26萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章