锥,凸锥,二阶锥,二阶锥规划

优化理论稍微深入些,就会涉及到锥这个概念,甚至还有专门的锥优化这个研究领域。我一直很奇怪锥到底是什么,准备查阅相关资料,将自己的理解写到博客里面。

文章目录

      • 1. 锥(cone)
      • 2. 凸锥(convex cone)
      • 3. 标准锥(norm cone)
      • 4. 二阶锥(second order cone)
      • 5. 二阶锥规划(second order cone programming,SOCP)
        • 5.1 二次凸规划

1. 锥(cone)

  • 对于一个向量空间 V V V 与它的一个子集 C C C,如果子集 C C C 中的任意一点 x x x 与 任意正数 a a a, 其乘积 a x ax ax 仍然属于子集 C C C, 则称 C C C 为一个锥。

若向量空间为3维,满足定义的图像确实像一个锥,我猜这应该是它叫锥的原因。
锥,凸锥,二阶锥,二阶锥规划_第1张图片

根据定义,一个锥总是无界的。

2. 凸锥(convex cone)

  • 若一个锥 C C C 中任意两点 x x x y y y,以及任意两个正数 a a a b b b, 都有 a x + b y ax+by ax+by 属于 C C C, 则该锥为凸锥。

显然上图也是一个凸锥。根据定义,凸锥的范围比凸集更大(凸锥必是凸集,凸集不一定是凸锥),因为它没有要求 a + b = 1 a+b=1 a+b=1凸锥首先是一个凸集
是否存在一个不是凸锥的锥?典型的例子:
y = ∣ x ∣ y=|x| y=x
一个点 (-2, 2), 另一个点 (1,1), 它们的和 (-1, 3)不在图形里。它的图形:
锥,凸锥,二阶锥,二阶锥规划_第2张图片
但是 y ≥ ∣ x ∣ y\geq |x| yx 就是一个凸锥

3. 标准锥(norm cone)

一个 n 维标准锥是满足下列条件的集合:
C = { ( x , t ) ∣ ∥ x ∥ ≤ t , x ∈ R n − 1 , t ∈ R } C=\left\{(x, t)\mid \|x\|\leq t, x\in\mathbb{R^{n-1}}, t\in\mathbb{R}\right\} C={(x,t)xt,xRn1,tR}
标准锥是一个凸锥。(标准锥里面的变量不仅包括 x x x,还包括 t t t.)

4. 二阶锥(second order cone)

二阶锥规划是一种非常特殊的非线性优化,有非常高效的求解算法,非常有必要了解一下什么是二阶锥。所谓二阶是指锥里面用到的是二范数,下面的表达式表示一个二阶锥。
∥ A x + b ∥ 2 ≤ c T x + d \|Ax+b\|_2\leq c^Tx+d Ax+b2cTx+d

二阶锥相当于对标准锥 C = { ( x , t ) ∣ ∥ x ∥ 2 ≤ t , t ≥ 0 } C=\{(x,t)\mid \|x\|_2\leq t, t\geq 0\} C={(x,t)x2t,t0} 做了一个仿射变换:
∥ A x + b ∥ 2 ≤ c T x + d ⟺ ( A x + b , c T x + d ) ∈ C \|Ax+b\|_2\leq c^Tx+d\Longleftrightarrow\Big(Ax+b, c^Tx+d\Big)\in C Ax+b2cTx+d(Ax+b,cTx+d)C
根据仿射变换的性质,变换后凹凸性不变,因此二阶锥仍然是一个凸锥。
注:对向量 x x x 仿射变换(相当于将一个图形平移,或变大变小,或旋转,或倒影): y = A x + b y=Ax+b y=Ax+b,其中 A x Ax Ax 表示对 x x x 变大或变小或旋转倒影,而 + b +b +b 表示平移。

5. 二阶锥规划(second order cone programming,SOCP)

很多问题都可以转化为二阶锥规划来求解,而二阶锥规划能够使用内点法很快求解。

5.1 二次凸规划

二次规划可以转化为二阶锥规划。一个二次凸规划表达式:
X T A X + q T x + c ≤ 0 X^TAX+q^Tx+c\leq 0 XTAX+qTx+c0
转化成下面的二阶锥:
∥ A 1 / 2 x + 1 2 A − 1 / 2 q ∥ 2 ≤ − 1 4 q T A − q − c \left\|A^{1/2}x+\frac{1}{2}A^{-1/2}q\right\|^2\leq -\frac{1}{4}q^{T}A^-q-c A1/2x+21A1/2q241qTAqc
就能使用二阶锥规划求解了。

你可能感兴趣的:(最优化理论)