当前位置: 首页 > news >正文

凸优化:常见的优化问题,偏统计视角

凸优化问题

概述

  • 优化问题的一般描述
  • 可微函数的一阶最优准则
  • 线性规划(例如基追踪,Dantzig变量选择,Chebyshev不等式)
  • 二次优化(例如最小二乘,LASSO,岭回归,投资组合,支持向量机)
  • 半定规划(例如低秩矩阵恢复)

优化问题的描述

一个优化问题可以如下表示:

min⁡ f(x)s.t. gi(x)≤0,i=1,...,mhi(x)=0,i=1,...,p \begin{aligned} \min\ &f(x)\\ \text{s.t.}\ &g_i(x)\le 0,\quad i=1,...,m\\ & h_i(x)= 0,\quad i=1,...,p \end{aligned} min s.t. f(x)gi(x)0,i=1,...,mhi(x)=0,i=1,...,p

  • fff是目标函数
  • 优化问题的定义域:
    D=domf ∩ ⋂i=1mdom gi ∩ ⋂i=1pdom hiD=\text{dom}f\ \cap\ \bigcap_{i=1}^{m} \text{dom}\ g_i\ \cap\ \bigcap_{i=1}^{p} \text{dom}\ h_iD=domf  i=1mdom gi  i=1pdom hi

x∈Dx\in DxD,称xxx是可行的,所有可行点的集合称为可行集(域)(当优化问为凸优化问题时,其为凸集,因为凸函数的定义域及其下水平集是凸集,而凸集的交集为凸集)

  • 在可行域上,f(x)f(x)f(x)的最小值称作最优值,记作f⋆f^\starf

  • x⋆∈Dx^\star \in DxD,并且f(x⋆)=f⋆f(x^\star)=f^\starf(x)=f,称x⋆x^\starx为最优解。注意,最优解可能不止一个,所有最优点构成的集合称作为最优集

  • xxx是可行的,且满足f(x)≤f⋆+ϵf(x)\le f^\star + \epsilonf(x)f+ϵ,称xxxϵ−\epsilon-ϵ次优解

  • 若存在R>0R>0R>0,使得可行点xxx对所有可行的yyy,在满足∥x−y∥≤R\|x-y\|\le RxyR时,有f(x)≤f(y)f(x)\le f(y)f(x)f(y),此时称xxx为局部最优解
    在这里插入图片描述

可微函数fff的最优性准则(一阶)

对于一个目标函数可微的凸优化问题:
min⁡f(x),s.t. x∈D\min f(x),\quad s.t.\ x\in Dminf(x),s.t. xD
其中DDD为可行集,当且仅当可行点x⋆x^\starx满足∇fT(x⋆)(y−x⋆)≥0,∀y∈D\nabla f^T(x^\star)(y-x^\star)\ge 0,\quad \forall y\in DfT(x)(yx)0,yD,称x⋆x^\starx为最优解。

对于无约束优化,上述最优性条件可化简为:
∇f(x⋆)=0\nabla f(x^\star)=0f(x)=0

在这里插入图片描述

备注
虚线为目标函数f0f_0f0的等值曲线(三维就是地图上常见的等高线),从支撑超平面的角度来看,−∇f(x⋆)-\nabla f(x^\star)f(x)x⋆x^\starx处定义了可行集的一个支撑超平面,也是该函数值下降的最速方向。

凸优化问题

f,gi,i=1,...,mf,g_i,i=1,...,mf,gi,i=1,...,m都是凸函数,等式约束是仿射约束(仿射函数既是凸函数也是凹函数),即hi(x)=aiTx−bi,i=1,...,ph_i(x)=a^T_ix-b_i,i=1,...,phi(x)=aiTxbi,i=1,...,p,上述优化问题是凸优化问题。对于凸优化问题,局部最小值,即是全局最小值。

备注
一个凸优化问题是在一个凸集上极小化一个凸函数。

线性规划(目标和约束都是仿射函数)

一般形式的线性规划问题如下:

min⁡ cTx+ds.t. Gx⪯hAx=b \begin{aligned} \min\ &c^Tx+d\\ \text{s.t.}\ &Gx\preceq h\\ & Ax=b \end{aligned} min s.t. cTx+dGxhAx=b

其中x∈Rnx\in R^nxRn是决策变量,G∈Rm×n,A∈Rp×nG\in R^{m\times n},A\in R^{p\times n}GRm×n,ARp×n

备注
截距d可以省略

在这里插入图片描述

此外线性规划还有以下两种常见变化形式:

  1. 不等式约束仅为决策变量的非负约束,又称之为标准形式

min⁡ cTxs.t. x⪰0Ax=b \begin{aligned} \min\ &c^Tx\\ \text{s.t.}\ &x\succeq 0\\ & Ax=b \end{aligned} min s.t. cTxx0Ax=b

  1. 引入松弛变量sis_isi,将一般线性规划转换为标准形式的线性规划

min⁡ cTxs.t. Gx+s=hAx=bs⪰0 \begin{aligned} \min\ &c^Tx\\ \text{s.t.}\ &Gx+s= h\\ & Ax=b\\ &s\succeq 0 \end{aligned} min s.t. cTxGx+s=hAx=bs0

接着可以将xxx表示成正部x+⪰0x^+\succeq 0x+0和负部x−⪰0x^-\succeq0x0,即x=x+−x−,∣x∣=x++x−x=x^+-x^-,|x|=x^++x^-x=x+x,x=x++x

min⁡ cTx+−cTx−s.t. Gx+−Gx−+s=hAx+−Ax−=bs⪰0,x+⪰0,x−⪰0 \begin{aligned} \min\ &c^Tx^+-c^Tx^-\\ \text{s.t.}\ &Gx^+-Gx^-+s= h\\ & Ax^+-Ax^-=b\\ &s\succeq 0,x^+\succeq 0,x^-\succeq0 \end{aligned} min s.t. cTx+cTxGx+Gx+s=hAx+Ax=bs0,x+0,x0

示例

基追踪(压缩感知中的一个问题)

给定y∈Rn,X∈Rn×py\in R^n,X\in R^{n\times p}yRn,XRn×p,其中p>np>np>n,寻求欠定线性系统Xβ=yX\beta=y=y的稀疏解

min⁡β∥β∥0subject toXβ=y \begin{aligned} &\min_{\large\beta}&&\|\beta\|_0\\ &\mathrm{subject~to}&&X\beta=y \end{aligned} βminsubject toβ0=y

由于0范数不是凸函数,原问题非凸,为此可以用l1l_1l1范数近似0范数,此问题称为基追踪问题

min⁡β∥β∥1subject toXβ=y \begin{aligned} &\min_{\large\beta}&&\|\beta\|_1\\ &\mathrm{subject~to}&&X\beta=y \end{aligned} βminsubject toβ1=y

为了将其转换为线性规划问题,引入新的变量z∈Rpz\in R^pzRp,使得每个∣βi∣|\beta_i|βi都对应一个ziz_izi,那么原问题可改写如下:

min⁡β,z1Tzsubject toz≥βz≥−βXβ=y \begin{aligned} &\min_{\beta,z}&&1^Tz\\ &\mathrm{subject~to}&&z\geq\beta\\ &&&z\geq-\beta\\ &&&X\beta=y \end{aligned} β,zminsubject to1Tzzβzβ=y

即写成了标准的线性规划形式。

Dantzig 变量选择

现在允许不精确的等式约束Xβ≈yX\beta\approx yy,Dantzig 变量选择:

min⁡β∥β∥1subject to∥XT(y−Xβ)∥∞≤λ \begin{aligned} &\min_{\large\beta}&&\|\beta\|_1\\ &\mathrm{subject~to}&&\|X^T(y-X\beta)\|_\infty\leq\lambda \end{aligned} βminsubject toβ1XT(y)λ

其中λ≥0\lambda\ge 0λ0是一个惩罚参数,该约束刻画了特征与残差的相关性,使得解的特征不过度解释残差。并且该约束是LASSO对偶问题的KKT条件,该解也确保了解的稀疏性。按照上述改写成线性规划问题:

min⁡z1Tzsubject toz≥βz≥−β−λ1≤XT(y−Xβ)≤λ1 \begin{aligned} &\min_{z}&&1^Tz\\ &\mathrm{subject~to}&&z\geq\beta\\ &&&z\geq-\beta\\ &&&-\lambda\mathbf{1}\le X^T(y-X\beta)\le \lambda\mathbf{1} \end{aligned} zminsubject to1Tzzβzβλ1XT(y)λ1

转换成线性规划问题方便求解。

Chebyshev不等式

考虑离散型随机变量XXX的概率分布:Pi=P(X=ui), i=1,...,nP_i=P(X=u_i),\ i=1,...,nPi=P(X=ui), i=1,...,n,因此由该离散型随机变量概率分布组成的向量满足P⪰0,1TP=1P\succeq 0,\mathbf{1}^TP=1P0,1TP=1。设uiu_iui是固定且已知的,但分布PPP未知,若函数fffXXX的函数(默认是可测函数),则Ef=∑i=1nf(ui)×PiEf=\sum_{i=1}^nf(u_i)\times P_iEf=i=1nf(ui)×Pi,是关于PPP的线性函数,若SSSRRR的子集,那么P(X∈S)=∑ui∈SPiP(X\in S)=\sum_{u_i\in S}P_iP(XS)=uiSPi也是PPP的线性函数。尽管PPP未知,假设知道XXX的函数期望的上下界:
αi≤aiTP≤βi, i=1,...,m\alpha_i\le a_i^TP\le \beta_i,\ i=1,...,mαiaiTPβi, i=1,...,m

此时求Ef0(x)=a0TPEf_0(x)=a_0^TPEf0(x)=a0TP的下界:

min⁡Pa0TPsubject toP⪰0,1TP=1αi≤aiTP≤βi, i=1,...,m \begin{aligned} &\min_{\large P}&&a_0^TP\\ &\mathrm{subject~to}&&P\succeq0,\mathbf{1}^TP=1\\ &&&\alpha_i\le a_i^TP\le \beta_i,\ i=1,...,m \end{aligned} Pminsubject toa0TPP0,1TP=1αiaiTPβi, i=1,...,m

该问题给出满足约束下,Ef0(x)Ef_0(x)Ef0(x)取得最小值时的分布PPP

二次优化

二次优化(QP)问题的描述如下:

min⁡x(1/2)xTPx+qTx+rsubject toGx⪯hAx=b \begin{aligned} &\min_{\large x}&&(1/2)x^TPx+q^Tx+r\\ &\mathrm{subject~to}&& Gx\preceq h\\ &&& Ax=b \end{aligned} xminsubject to(1/2)xTPx+qTx+rGxhAx=b

其中目标函数是优化变量的二次型,P∈S+nP\in S^n_+PS+n

在这里插入图片描述

当不等式约束为也为优化变量的二次型时,称之为二次约束二次规划(QCQP)

subject to(1/2)xTPix+qiTx+ri≤0, i=1,...,mAx=b \begin{aligned} &\mathrm{subject~to}&& (1/2)x^TP_ix+q_i^Tx+r_i\le 0,\ i=1,...,m\\ &&& Ax=b \end{aligned} subject to(1/2)xTPix+qiTx+ri0, i=1,...,mAx=b

其中Pi∈S+n, i=1,...,mP_i\in S^n_+,\ i=1,...,mPiS+n, i=1,...,m

示例

最小二乘

min⁡β∥y−Xβ∥22=βTXTXβ−2yTXβ+yTy\min_{\large \beta}\|y-X\beta\|_2^2=\beta^TX^TX\beta-2y^TX\beta+y^Tyβminy22=βTXT2yT+yTy

XTX⪰0X^TX\succeq 0XTX0时,其是关于β\betaβ的无约束二次规划问题。可以对优化变量增加约束,有约束最小二乘

min⁡β∥y−Xβ∥22subject toli≤βi≤ui,i=1,...,p \begin{aligned} &\min_{\large \beta}&&\|y-X\beta\|_2^2\\ &\mathrm{subject~to}&& l_i\le\beta_i\le u_i,\quad i=1,...,p \end{aligned} βminsubject toy22liβiui,i=1,...,p

LASSO

给定y∈Rn,X∈Rn×py\in R^n,X\in R^{n\times p}yRn,XRn×p,LASSO问题描述如下:

min⁡β∥y−Xβ∥22subject to∥β∥1≤s \begin{aligned} &\min_{\large\beta}&&\|y-X\beta\|_2^2\\ &\mathrm{subject~to}&&\|\beta\|_1\leq s \end{aligned} βminsubject toy22β1s

表示成等价的惩罚形式:
min⁡β12∥y−Xβ∥22+λ∥β∥1\min_\beta\frac{1}{2}\|y-X\beta\|_2^2+\lambda\|\beta\|_1βmin21y22+λβ1

引入β\betaβ的正部β+\beta^+β+和负部β−\beta^-β,得到:

min⁡β+,β−12∥y−Xβ++Xβ−∥22+λ1Tβ++λ1Tβ−subject toβ+,β−≥0 \begin{aligned} &\min_{\beta^+,\beta^-}&&\frac{1}{2}\|y-X\beta^+ +X\beta^-\|_2^2+\lambda\mathbf{1}^T\beta^++\lambda\mathbf{1}^T\beta^-\\ &\mathrm{subject~to}&&\beta^+,\beta^-\ge 0 \end{aligned} β+,βminsubject to21yXβ++Xβ22+λ1Tβ++λ1Tββ+,β0

岭回归

可化简成二次约束的二次优化问题。

投资组合

现有nnn种待投资的资产,令xix_ixi表示一定时期内持有资产iii的数量(美元),pip_ipi为第iii个资产相对之前一个时期内的相对价格变动,p∈Rnp\in R^npRn为随机变量,均值向量pˉ\bar{p}pˉ和协方差Σ\SigmaΣ已知,那么有一种投资策略,在极小化总的风险(Cov(xTp)=xTΣxCov(x^Tp)=x^T\Sigma xCov(xTp)=xTΣx)的同时,保证一定的收益即可如下转换为二次规划问题:

min⁡xxTΣxsubject topˉTx≥rmin⁡(表示平均收益下限)1Tx=B(表示投资总额)x≥0 \begin{aligned} &\min_{x}&&x^T\Sigma x\\ &\mathrm{subject~to}&&\bar{p}^Tx\ge r_{\min}(\text{表示平均收益下限})\\ &&&\mathbf{1}^Tx=B(\text{表示投资总额})\\ &&&x\ge 0 \end{aligned} xminsubject toxTΣxpˉTxrmin(表示平均收益下限)1Tx=B(表示投资总额)x0

支持向量机

给定数据点y∈{−1,1}n,X∈Rn×py\in \{-1,1\}^n,X\in R^{n\times p}y{1,1}n,XRn×p,支持向量机问题可以描述如下:

min⁡β,β0,ξ12∥β∥22+C∑i=1nξisubject toξi≥0,i=1,…,nyi(xiTβ+β0)≥1−ξi,i=1,…,n \begin{aligned} &\min_{\beta,\beta_0,\xi}&&\frac{1}{2}\|\beta\|_2^2+C\sum_{i=1}^n\xi_i\\ &\mathrm{subject~to}&&\xi_i\geq0,i=1,\ldots,n\\ &&&y_i(x_i^T\beta+\beta_0)\geq1-\xi_i,i=1,\ldots,n \end{aligned} β,β0,ξminsubject to21β22+Ci=1nξiξi0,i=1,,nyi(xiTβ+β0)1ξi,i=1,,n

其中ξi\xi_iξi为松弛变量,允许有误分点,但是误分点不宜太多,因此用∑i=1nξi\sum_{i=1}^n \xi_ii=1nξi控制误分程度。很明显上述问题也是一个二次规划问题。

半定规划

半定规划是线性规划在矩阵空间中通过广义不等式的推广。目标函数和约束函数均是关于矩阵的线性函数。

备注
由于是在正常锥中定义的广义不等式,半定规划也是锥规划中正常锥取作S+nS^n_+S+n的特例。

其一般形式如下:

min⁡xcTxsubject tox1F1+⋯+xnFn⪯F0Ax=b \begin{aligned} &\min_x&&c^Tx\\ &\mathrm{subject~to}&&x_1F_1+\cdots+x_nF_n\preceq F_0\\ &&&Ax=b \end{aligned} xminsubject tocTxx1F1++xnFnF0Ax=b

其中Fj∈Sn,j=0,...,nF_j\in S^n,j=0,...,nFjSn,j=0,...,nA∈Rm×n,c∈Rn,b∈RmA\in R^{m\times n}\mathrm{,}c\in R^n\mathrm{,}b\in R^mARm×n,cRn,bRm

Fj,j=0,...,nF_j,j=0,...,nFj,j=0,...,n为对角矩阵时,其退化为一般线性规划问题。对比线性规划的标准型,可通过如下构造得到半定规划的标准型:

引入松弛变量SSS,将半定规划的线性矩阵不等式转换为等式
S=F0−∑i=1nxiFi,S⪰0S=F_0-\sum_{i=1}^nx_iF_i,\quad S\succeq0S=F0i=1nxiFi,S0

将原始变量xxx和松弛变量SSS组合成一个更大的半正定矩阵。
X=(diag⁡(x)00S),X⪰0X=\begin{pmatrix}\operatorname{diag}(x)&0\\0&S\end{pmatrix},\quad X\succeq0X=(diag(x)00S),X0


C=(diag(c)000)C=\begin{pmatrix}\mathrm{diag}(c)&0\\0&0\end{pmatrix}C=(diag(c)000)
使得原目标函数可以转换为:
C⋅X=cTxC\cdot X=c^TxCX=cTx
其中C⋅X=Tr(CXT)C\cdot X=Tr(CX^T)CX=Tr(CXT)表示矩阵内积。

再来看线性等式约束的转换,设AAA的第iii行为aiTa_i^TaiT,构造如下矩阵AiA_iAi
Ai=(diag⁡(ai)000),Ai⋅X=aiTx=biA_i=\begin{pmatrix}\operatorname{diag}(a_i)&0\\0&0\end{pmatrix},\quad A_i\cdot X=a_i^Tx=b_iAi=(diag(ai)000),AiX=aiTx=bi

综上可得到半定规划的标准形式:

min⁡X<C,X>subject to<Ai,X>=bi, i=1,...,mX⪰0 \begin{aligned} &\min_X&&<C,X>\\ &\mathrm{subject~to}&&<A_i,X>=b_i,\ i=1,...,m\\ &&&X\succeq 0 \end{aligned} Xminsubject to<C,X><Ai,X>=bi, i=1,...,mX0

示例

低秩矩阵恢复

现实生活中电影评级的缺失矩阵恢复可以看作是一类低秩矩阵恢复问题。假定一个矩阵MMM,其中行变量为用户,列变量为各种电影。其中元素Mi,jM_{i,j}Mi,j是第i个用户对第j部电影的评分。显然当待评分电影较多时,不可能所有人都看完了全部的电影并评分,因此评分矩阵MMM中会有较多的缺失值。为了预测这些缺失值,可以这样考虑,首先记MMM中所有非缺失元素元素下角标的集合为Ω\OmegaΩ,再假定用来恢复的矩阵XXX,当MMM中第(i,j)(i,j)(i,j)个元素未缺失时,令Xi,j=Mi,jX_{i,j}=M_{i,j}Xi,j=Mi,j,显然满足该条件的矩阵XXX有很多个,可以再作如下假定,假设两部电影类型相似,他们收获的评分也会相似,此时MMM不是列满秩。同理,假设两个用户喜欢看相同类型的电影,他们对各电影的评分也会相似,此时MMM不是行满秩。综上,MMM中可能存在低秩结构,因此寻找一个低秩矩阵XXX近似(恢复)MMM是比较合适的:

min⁡X∈Rm×nrank⁡(X)subject toXij=Mij,(i,j)∈Ω \begin{aligned} &\min_{X\in R^{m\times n}}&&\operatorname{rank}(X)\\ &\mathrm{subject~to}&&X_{ij}=M_{ij},(i,j)\in\Omega \end{aligned} XRm×nminsubject torank(X)Xij=Mij,(i,j)Ω

由于目标秩不是凸函数,是一个NP难的问题,类比稀疏优化中将l0l_0l0范数用l1l_1l1范数近似,而rank(X)也表示矩阵X中非零奇异值个数。因此这里可以将目标函数用XXX的核范数近似,∥X∥∗=∑iσi(X)\|X\|_*=\sum_{i}\sigma_i(X)X=iσi(X),矩阵XXX奇异值的和。

min⁡X∈Rm×n∥X∥∗subject toXij=Mij,(i,j)∈Ω \begin{aligned} &\min_{X\in R^{m\times n}}&&\|X\|_*\\ &\mathrm{subject~to}&&X_{ij}=M_{ij},(i,j)\in\Omega \end{aligned} XRm×nminsubject toXXij=Mij,(i,j)Ω

接下来尽可能转换为半定规划的形式(转换为标准形式较复杂,略)。对于(i,j)∈Ω(i,j)\in\Omega(i,j)Ω,定义Ak∈Rm×nA_k\in R^{m\times n}AkRm×n,其第(l,m)(l,m)(l,m)个元素如下:
(Ak)lm={1当(l,m)=(i,j)0其他(A_k)_{lm}=\begin{cases}1&\text{当}(l,m)=(i,j)\\0&\text{其他}\end{cases}(Ak)lm={10(l,m)=(i,j)其他

因此有:
Ak∙X=tr⁡(AkTX)=XijA_k\bullet X=\operatorname{tr}(A_k^TX)=X_{ij}AkX=tr(AkTX)=Xij

原等式约束可写作如下形式:
A(X)=(A1∙X⋮Ap∙X)=(Mi1j1⋮Mipjp)=bA(X)=\begin{pmatrix}A_1\bullet X\\\vdots\\A_p\bullet X\end{pmatrix}=\begin{pmatrix}M_{i_1j_1}\\\vdots\\M_{i_pj_p}\end{pmatrix}=bA(X)=A1XApX=Mi1j1Mipjp=b

http://www.dtcms.com/a/309281.html

相关文章:

  • cesium FBO(四)自定义相机渲染到Canvas(离屏渲染)
  • android APT技术
  • 今日链表系列
  • 京东零售在智能供应链领域的前沿探索与技术实践
  • X2Doris是SelectDB可视化数据迁移工具,安装与部署使用手册,轻松进行大数据迁移
  • Blender 智能模型库 | 人物·建筑·场景·机械等 近万高精度模型
  • 无人机自动跟随模块技术分析
  • SpringMVC的高级特性
  • 机密计算与AI融合:安全与智能的共生架构
  • 《B3611 【模板】传递闭包》
  • 编程与数学 03-002 计算机网络 17_云计算与网络
  • Java 日期时间处理:分类、用途与性能分析
  • macOS卸载.net core 8.0
  • HarmonyOS】鸿蒙应用开发中常用的三方库介绍和使用示例
  • 代码随想录算法训练营第三十八天
  • NLP 和 LLM 区别、对比 和关系
  • MT Photos图库部署详解:Docker搭建+贝锐蒲公英异地组网远程访问
  • 卸油作业安全设施漏检率↓76%!陌讯多模态融合算法实战解析
  • [AI8051U入门第十二步]W5500-Modbus TCP从机
  • 浏览器【详解】内置Observer(共五种,用于前端监控、图片懒加载、无限滚动、响应式布局、生成安全报告等)
  • 算法26. 删除有序数组中的重复项
  • 宝塔网站如何禁止使用IP访问
  • Shell脚本批量检测IP的443端口联通性
  • ai项目多智能体
  • 【从0开始学习Java | 第11篇】String、StringBuilder与StringBuffer
  • 微信小程序转Vue2组件智能提示词
  • 隧道安全监测哪种方式好?精选方案与自动化监测来对比!
  • 11.Layout-Pinia优化重复请求
  • C++赋值运算符重载
  • PHP Zip 文件操作详解