拉格朗日對偶函數


對偶函數

優化問題的形式

注意原問題不一定凸

\[\min f_0(x)\\ \begin{align*} s.t. \ &f_i(x) \le 0 \quad &i=1,2,\cdots,m\\ &h_i(x)=0 \quad &i=1,2,\cdots,p \end{align*} \]

拉格朗日函數形式

\[L(x,\lambda,\nu)=f_0(x)+\sum_{i=1}^m \lambda_i f_i(x)+\sum_{i=1}^p \nu_i h_i(x) \]

對偶函數的定義

\[g(\lambda,\nu)=\inf_{x \in D}(f_0(x)+\sum_{i=1}^m \lambda_i f_i(x)+\sum_{i=1}^p \nu_i h_i(x)) \]

根據對偶函數的定義可知,對偶函數是拉格朗日函數在把\(\lambda\)\(\nu\)當做常量,\(x\)變化時的最小值

注意:對偶問題則是

\[\max_{\lambda,\nu}g(\lambda,\nu) \]

這里要着重說一下:對偶函數和對偶問題的區別
它們是非常不一樣的概念,問題是為了求最值,而函數就是個f

對偶函數的性質

對偶函數一定是凹函數

逐點上確界 pointwise supremum

如果對於\(\forall y \in A,f(x,y)\)關於\(x\)是凸函數,那么函數\(g(x)=\sup_{y \in A} f(x,y)\)關於\(x\)是凸函數
同理,一組凹函數逐點下確界是凹函數

數學證明可以看這個博客

大概的思路就是對偶函數中最小化之后\(x\)已經是個定值,此時對偶函數\(g(\lambda,\nu)\)是相對於變量\(\lambda,\nu\)的一簇仿射函數,仿射函數是既凹又凸的,那么就利用其凹性,一簇仿射函數的下界就是一個凹函數。
也可以從下圖直觀的看出:

對偶函數的最優解$\le$原函數最優解

\[\forall \lambda_i \succeq 0,\forall \nu \quad g(\lambda,\nu) \le P^* \]

一定要有\(\lambda_i \succeq 0\)這個條件

即對偶函數求得的函數值是原問題最優值的下界
這里再強調一遍:不等式左邊是函數,不等式右邊是問題的最優值

很好證明,因為

\[\begin{align*} &\sum_{i=1}^m \lambda_i f_i(x^*)+\sum_{i=1}^p \nu_i h_i(x^*) \le 0, \quad 其中x為原問題最優解\\ &f_0(x^*)=P^*\\ \therefore \quad &L(x^*,\lambda,\nu)=f_0(x^*)+\sum_{i=1}^m \lambda_i f_i(x^*)+\sum_{i=1}^p \nu_i h_i(x^*) \le P^*\\ \therefore \quad &g(\lambda,\nu) \le P^* \end{align*} \]

對偶問題

再看一次對偶問題

\[\begin{align*} \max_{\lambda,\nu}g(\lambda,\nu)=&\max_{\lambda,\nu}\min_{x}L(x,\lambda,\nu)\\ =&\max_{\lambda,\nu} f_0(x)+\sum_{i=1}^k \lambda f_i(x)+\sum_{i=1}^l \nu h_i(x)\\ \end{align*} \]

對偶函數是從拉格朗日函數轉換過來的,只跟\(\lambda,\nu\)相關的函數,不是一個問題(不需要得到最值什么的)

對偶問題利用對偶函數一定\(\le\)原問題最優解的性質,進而去求解對偶函數的最大值\(D^*\),將原問題通過對偶函數(凹函數)轉化為求解對偶問題(凸優化問題)

為什么費盡周折的去轉化成對偶問題呢?

因為無論原問題是否為凸優化問題,轉化成的對偶問題一定是凸優化問題

為什么要轉化成凸優化問題就不必多說了,具體可看凸優化問題的特性:局部最優解必是全局最優解

相關鏈接:拉格朗日對偶問題


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM