预备知识

什么是凸优化?

凸优化需要满足:

  • 1、在最小化(最大化)的要求下;
  • 2、目标函数是一个凸函数(凹函数);
  • 3、同时约束条件所形成的可行域集合是一个凸集。

凸集

若集合CC为凸集,则CC中任意两点间的线段仍然在CC中,也就是说,对于任意x1,x2Cx_1, x_2\in C,都有:
θx1+(1θ)x2C\theta x_1+(1-\theta)x_2\in C
其中,0θ10 \leq \theta \leq1

凸优化问题

凸函数优化之对偶理论

仿射函数

仿射函数,即最高次数为1的多项式函数。常数项为零的仿射函数称为线性函数。

对偶理论

一、原问题转化

对于一般优化问题,如:
minimize   fo(x)s.t.  fi(x)0  for  i=1,2,m        hi(x)=0  for  i=1,2,pminimize\ \ \ f_{o(x)} \\ s.t. \ \ f_{i(x)}\leq0 \ \ for \ \ i=1,2,……m \\ \ \ \ \ \ \ \ \ h_{i(x)}=0 \ \ for \ \ i=1,2,……p
则可以将其转化为拉格朗日函数:
L(x,λ,v)=fo(x)+i=1mλifi(x)+i=1pvihi(x)L_{(x, \lambda,v)}=f_{o(x)}+\sum_{i=1}^{m}\lambda_if_{i(x)}+\sum_{i=1}^{p}v_ih_{i(x)}
其中包含主变量xx和对偶变量λi0,vi\lambda_i\geq0,v_i
如果想固定xx,只通过改变λ\lambdavv来获得上面函数的最大值,即:
maxλ,vL(x,λ,v)=fo(x)+maxλ,v(i=1mλifi(x)+i=1pvihi(x))\mathop{max}\limits_{\lambda,v}L_{(x,\lambda,v)}=f_{o(x)}+\mathop{max}\limits_{\lambda,v}(\sum_{i=1}^{m}\lambda_if_{i(x)}+\sum_{i=1}^{p}v_ih_{i(x)})
因为fi(x)0f_{i(x)}\leq0λi0\lambda_i\geq0,且hi(x)=0h_{i(x)}=0,则:
maxλ,vL(x,λ,v)=fo(x)\mathop{max}\limits_{\lambda,v}L_{(x,\lambda,v)}=f_{o(x)}
所以原本在约束条件下要求的minxfo(x)\mathop{min}\limits_{x} f_{o(x)}可以被转化为求:
p=minx(maxλ,vL(x,λ,v))p^{*}=\mathop{min}\limits_{x}(\mathop{max}\limits_{\lambda,v}L_{(x,\lambda,v)})
而当强对偶条件成立时,这个问题又可以被转化为求:
d=maxλ,v(minxL(x,λ,v))d^{*}=\mathop{max}\limits_{\lambda,v}(\mathop{min}\limits_{x}L_{(x,\lambda,v)})
minxL(x,λ,v)\mathop{min}\limits_{x}L_{(x,\lambda,v)}称为拉格朗日对偶函数,即拉格朗日函数关于xx取得的最小值,设:
g(λ,v)=minxL(x,λ,v)=minx(fo(x)+i=1mλifi(x)+i=1pvihi(x))g_{(\lambda,v)}=\mathop{min}\limits_{x}L_{(x,\lambda,v)}=\mathop{min}\limits_{x}(f_{o(x)}+\sum_{i=1}^{m}\lambda_if_{i(x)}+\sum_{i=1}^{p}v_ih_{i(x)})
那么,g(λ,v)g_{(\lambda,v)}(λ,v)(\lambda,v)的仿射函数L(x,λ,v)L_{(x,\lambda,v)}的逐点下确界,这一定是个凹函数。凸优化学习(一)为什么lagrangr的下确界必然是一个凹函数
x~\tilde{x}是原问题的一个可行点,即fi(x)0f_{i(x)}\leq0hi(x)=0h_{i(x)}=0,根据假设λ0\lambda\geq0,有:
i=1mλifi(x~)+i=1pvihi(x~)0\sum_{i=1}^{m}\lambda_if_{i(\tilde{x})}+\sum_{i=1}^{p}v_ih_{i(\tilde{x})}\leq0
所以:
L(x~,λ,v)=fo(x~)+i=1mλifi(x~)+i=1pvihi(x~)fo(x~)L_{(\tilde{x}, \lambda,v)}=f_{o(\tilde{x})}+\sum_{i=1}^{m}\lambda_if_{i(\tilde{x})}+\sum_{i=1}^{p}v_ih_{i(\tilde{x})}\leq f_{o(\tilde{x})}
因此
g(λ,v)=infxL(x,λ,v)L(x~,λ,v)fo(x~)g_{(\lambda,v)}=\mathop{inf}\limits_{x}L_{(x,\lambda,v)}\leq L_{(\tilde{x},\lambda,v)}\leq f_{o(\tilde{x})}
其中,infxL(x,λ,v)\mathop{inf}\limits_{x}L_{(x,\lambda,v)}是指L(x,λ,v)L_{(x,\lambda,v)}的逐点下确界。
也就是说,dpd^{*}\leq p^{*}是一定的。
至此,我们已经证明了原问题minxfo(x)\mathop{min}\limits_{x} f_{o(x)}可以被转化为求minx(maxλ,vL(x,λ,v))\mathop{min}\limits_{x}(\mathop{max}\limits_{\lambda,v}L_{(x,\lambda,v)}),且由对偶条件进而被转化为求maxλ,v(minxL(x,λ,v))=maxλ,vg(λ,v)\mathop{max}\limits_{\lambda,v}(\mathop{min}\limits_{x}L_{(x,\lambda,v)})=\mathop{max}\limits_{\lambda,v}g_{(\lambda,v)},并且maxλ,vg(λ,v)\mathop{max}\limits_{\lambda,v}g_{(\lambda,v)}是一定小于minxfo(x)\mathop{min}\limits_{x} f_{o(x)}的。

ps:对偶条件

弱对偶:dpd^{*}\leq p^{*},无论原问题是不是凸优化问题,这个式子总是成立的。
强对偶:d=pd^{*}=p^{*}

  • 该条件通常不成立。
  • 对于凸优化问题通常成立。
  • 对于满足SlaterSlater条件的凸优化问题一定成立。
    【注】SlaterSlater条件是指,对于在预备知识模块给出的凸优化问题的定义中的fi(x)f_{i(x)},总存在一点xx,使得fi(x)<0f_{i(x)}<0i=1,2,mi=1,2,……m上均成立。

二、互补松弛性

设原问题和对偶问题的最优解都可以达到且相等(强对偶性成立),令xx^{*}为原问题的最优解,(λ,v)(\lambda^{*},v^{*})为对偶问题的最优解,则:
fo(x)=g(λ,v) =infx(fo(x)+i=1mλifi(x)+i=1pvihi(x))   fo(x)+i=1mλifi(x)+i=1pvihi(x)    fo(x)f_{o(x^{*})}=g_{(\lambda^{*},v^{*})}\\ \quad \quad \quad \quad \ \quad \quad \quad \quad \quad \quad \quad \quad \quad \quad=\mathop{inf}\limits_{x}(f_{o(x)}+\sum_{i=1}^{m}\lambda_i^{*}f_{i(x)}+\sum_{i=1}^{p}v_i^{*}h_{i(x)})\\ \quad \quad \quad \quad \ \ \ \quad \quad \quad \quad \quad \quad \quad \quad \leq f_{o(x^{*})}+\sum_{i=1}^{m}\lambda_i^{*}f_{i(x^{*})}+\sum_{i=1}^{p}v_i^{*}h_{i(x^{*})}\\ \ \ \ \ \leq f_{o(x^{*})}
取等号时,有:
λifi(x)=0i=1,2,m\lambda_i^{*}f_{i(x^{*})}=0 \quad i=1,2,……m
此条件称为互补松弛性,也就是KKT条件。

三、凸问题的KKT条件

当原问题是凸问题时,满足KKT条件的点也是原问题和对偶问题的最优解。也就是说,如果函数fi(x)f_{i(x)}为凸函数,hi(x)h_{i(x)}为仿射函数,x~,λ~,v~\tilde{x},\tilde{\lambda},\tilde{v}是任意满足KKT条件的点。即满足:

  • 问题约束:
    fi(x~)0i=1,2,mf_{i(\tilde{x})}\leq0 \quad i=1,2,……m
    hi(x~)=0i=1,2,mh_{i(\tilde{x})}=0 \quad i=1,2,……m
    λi~0i=1,2,m\tilde{\lambda_i}\geq0 \quad i=1,2,……m
  • 互补松弛性:
    λi~fi(x~)=0i=1,2,m\tilde{\lambda_i}f_{i(\tilde{x})}=0 \quad i=1,2,……m
  • 极值条件:
    xL(x~,λ~,v~)=xfo(x~)+i=1mλ~ixfi(x~)+i=1pv~ixhi(x~)=0\bigtriangledown_xL_{(\tilde{x},\tilde{\lambda},\tilde{v})}=\bigtriangledown_xf_{o(\tilde{x})}+\sum_{i=1}^{m}\tilde{\lambda}_i\bigtriangledown_xf_{i(\tilde{x})}+\sum_{i=1}^{p}\tilde{v}_i\bigtriangledown_xh_{i(\tilde{x})}=0
    那么,x~\tilde{x}(λ~,v~)(\tilde{\lambda},\tilde{v})就分别是原问题和对偶问题的最优解,且结果相同。

相关文章: