二次优化问题

二次优化问题

定义

当凸优化问题的目标函数是凸二次型并且约束函数为仿射时,该问题被称为二次规划(Quadratic Program, QP)。二次规划问题可以表示为

minimize12xPx+qx+rsubject toGxhAx=b \begin{aligned} \mathrm{minimize} \quad & \frac{1}{2} x^{\top}Px + q^{\top}x + r \\ \mathrm{subject\ to} \quad & Gx \preceq h \\ \quad & Ax = b \end{aligned}

其中 PS+nP \in \mathbf{S}^n_+GRp×nG \in \mathbf{R}^{p \times n}。可以用下图来表示二次规划问题。

二次约束二次规划

如果不仅是目标函数,而且不等式约束也是凸二次型,即

minimize12xPx+qx+rsubject to12xPix+qix+ri0Ax=b \begin{aligned} \mathrm{minimize} \quad & \frac{1}{2} x^{\top}Px + q^{\top}x + r \\ \mathrm{subject\ to} \quad & \frac{1}{2} x^{\top}P_ix + q^{\top}_ix + r_i \leqslant 0 \\ \quad & Ax = b \end{aligned}

则称这一问题为二次约束二次规划(Quadratically Constrained Quadratic Program, QCQP)

线性规划是二次规划的特例,即取 P=0P = 0。二次规划是二次约束二次规划的特例,令 Pi=0P_i = 0 即可。

举例

最小二乘及回归

Axb22=xAAx2bAx+bb \| Ax - b \|^2_2 = x^{\top}A^{\top}Ax - 2b^{\top}Ax + b^{\top}b

上面的凸二次函数是一个(无约束的)二次规划。我们在很多领域都会看到类似的式子,有些地方会称其为回归分析或者最小二乘逼近。这个问题很简单,可以求出其解析解 x=Abx = A^{\dagger} b

二阶锥规划

minimizefxsubject toAix+bi2cix+di,i=1,,mFx=g \begin{aligned} \mathrm{minimize} \quad & f^{\top}x \\ \mathrm{subject\ to} \quad & \| A_ix + b_i \|_2 \leqslant c_i^{\top}x + d_i, \quad i = 1,\cdots,m \\ \quad & Fx = g \end{aligned}

称上述问题为二阶锥规划(Second-Order Cone Program, SOCP),其中 xRnx \in \mathbf{R}^n 是优化变量,AiRni×nA_i \in \mathbf{R}^{n_i \times n}FRp×nF \in \mathbf{R}^{p \times n}。并且我们称约束

Ax+b2cx+d \| Ax + b \|_2 \leqslant c^{\top}x + d

为二阶锥约束。

ci=0c_i = 0 时,SOCP 等同于 QCQP。当 Ai=0A_i = 0 时,SOCP 退化为(一般的)线性规划。