【第1章】凸集——几种重要的凸集


Date: 2020/04/11
Editor:任于帅(Jesse)
Contact: [email protected]


2.几种重要的凸集

本节讲述一些重要凸集的概念,首先介绍一些简单的例子,我们不妨先来看一些特例:

  • C={x}C=\{x \} 单点
  • 点是仿射集,凸集,原点是凸锥
  • 空集是仿射集,凸集,凸锥

下面再来看几种重要的凸集:

  • RnR^n 仿射集、凸集、凸锥
  • RnR^n空间的子空间 仿射集、凸集、凸锥
  • 任意直线 仿射集、凸集、凸锥(过原点)
  • 任意线段 仿射集(点)、凸集、凸锥(原点)
  • {x0+θvθ0}\{x_0+\theta v|\theta\ge0\} x0Rnx_0\in R^n θR\theta \in R - vRnv\in R^n 射线 仿射集(v=0缩减为一个点) 、凸集、凸锥(过原点)

2.1 超平面与半空间

超平面
定义: {xaTx=b}\{x|a^Tx=b\} x,aRnx,a\in R^n, bRb\in R, a0a\neq0
性质: 仿射集、凸集、凸锥(过原点)

半空间
定义: aTxb,aTxba^Tx\le b,\quad a^Tx\ge b
性质: 凸集、凸锥(过原点b=0)

从上述对超平面和半空间集合表达式定义形式很难直观的感受定义与性质,下面我们通过在二维平面中的例子来理解一下超平面与半空间的几何意义,如下图所示:

  • 红色直线(不过原点)称之为一个二维平面上的超平面,具有直线集合所有的性质,属于仿射集、凸集;
  • 蓝色直线(过原点)为红色直线的特例,除了是仿射集/凸集之外,还是个凸锥;
  • 红色直线把二维平面分成了1和2两个空间,这两个空间称为半空间,并且满足凸集的定义,因此是半空间是凸集;
  • 与超平面一样,当超平面过原点时,半空间也满足凸锥的定义,此时半空间也是个凸锥;

【第1章】凸集——几种重要的凸集

2.2 球和椭球

同样以二维平面上的圆和椭圆去理解比较容易理解,这里就不做赘述,只给出简单定义:

定义:
B(xc,r)={xxxc2r}={x(xxc)T(xxc)r} B(x_c,r)=\{x\:|\parallel x-x_c \parallel _2 \:\le r\}=\{x\:|\sqrt{(x-x_c)^T(x-x_c)}\le r\}
性质: 凸集 仿射集(r=0) 凸锥(r=0 & 原点)
椭球:
定义: (对称正定矩阵几何)
ξ(xc,P)={x(xxcT)P1(xxc)1}xcRnPS++n \xi(x_c,P)=\{x\:| (x-x_c^T)P^{-1}(x-x_c) \:\le 1\} \: x_c\in R^n \: P\in S_{++}^{n}
性质: 凸集

假设:P=r2InP=r^2I_n, r0r\neq0 奇异值大于0

A矩阵 ATAA^TA 特征值: eig(ATA)0eig(A^TA) \ge0 奇异值:eig(ATA)\sqrt{eig(A^TA)}

PP 奇异值对应椭球半轴长

例子:
ξ={xxT(4001)1x1}={(x1,x2)14x12+x221} \begin{aligned} \xi &=\{x\:| x^T\begin{pmatrix} 4 & 0\\ 0 & 1 \end{pmatrix}^{-1}x \:\le 1\}\\ &=\{(x_1,x_2)|\frac{1}{4}x_1^2+x_2^2 \le 1\} \end{aligned}

2.3 多面体(关注单纯形)

多面体:可以简单的理解为超平面与半空间的交集,数学表达式如下:
P={xajTxbji=1mcjTx=dji=1m} P=\Bigg\{x\:\mid \begin{aligned} a_j^Tx \le b_j\qquad i=1\cdots m\\ c_j^Tx = d_j \qquad i=1\cdots m\\ \end{aligned}\Bigg\}
其中有界多面体为凸集 ,如下图中集合P(阴影部分:由五条直线与其分割形成的相应半空间的交集)所示:

【第1章】凸集——几种重要的凸集

单纯形定义:

RnR^n空间中选择v0vkv_0\cdots v_kk+1k+1个点,v1v0,,vkv0v_1-v_0,\cdots,v_k-v_0线性无关,则与上述点相关的单纯形为:

C=Conv{v0vk}={θ0v0+θ1v1+θ2v2++θkvkθ0θk0,θ0++θk=1}C=Conv\{v_0\cdots v_k\}=\{\theta_0v_0+\theta_1v_1 + \theta_2v_2 + \cdots + \theta_kv_k \:|\: \theta_0 \cdots \theta_k \ge 0,\:\theta_0 +\cdots +\theta_k = 1 \}

例子:

  • RR 一维空间, 两个点单纯形为两点连接线段,
  • R2R^2 二维空间, 两个点单纯形为两点连接线段, 三个点为两个向量围成的三角形, 四个点无法满足线性无关的三个向量
  • R3R^3 三维空间,四个点单纯形为一个四面体

证明:单纯形是多面体的一种

xCRnx\in C \in R^n CC为单纯形 xx \Leftrightarrow θ0v0+θ1v1+θ2v2++θkvk\theta_0v_0 + \theta_1v_1 + \theta_2v_2 + \cdots + \theta_kv_k

θ0θk0,θ0++θk=1\theta_0 \cdots \theta_k \ge 0,\:\theta_0 +\cdots +\theta_k = 1. v1v0,,vkv0v_1-v_0,\cdots,v_k-v_0线性无关

首先定义下面两个向量:

[θ1θk]T=y[\theta_1 \cdots \theta_k]^T=y, y0y\ge0, 1Ty11^Ty\le1,

[v1v0,,vkv0]=BRn×k[v_1-v_0, \cdots, v_k-v_0]=B\in R^{n\times k}

因此:

XCX=θ0v0+θ1v1+θ2v2++θkvk=v0+θ1(v1v0)++θk(vkv0)=v0+By\begin{aligned} X \in C \Leftrightarrow X &=\theta_0v_0 + \theta_1v_1 + \theta_2v_2 + \cdots + \theta_kv_k\\ &= v_0 + \theta_1(v_1-v_0)+ \cdots + \theta_k(v_k-v_0) \\ &= v_0 +By\\ \end{aligned}

B包含k个线性无关的向量,因此:rank(B)=k(kn)rank(B)=k \quad (k \le n)

B是列满秩矩阵,可以转换成:[Ik0]\begin{bmatrix} I_k \\[0.3em] 0\end{bmatrix}

存在一个非奇异矩阵A=[A1A2]Rn×nA=\begin{bmatrix}A_1 \\[0.3em] A_2\end{bmatrix} \in R^{n \times n}使得AB=[A1A2]B=[Ik0]AB=\begin{bmatrix}A_1 \\[0.3em] A_2\end{bmatrix}B =\begin{bmatrix} I_k \\[0.3em] 0\end{bmatrix}

X=v0+ByX=v_0+By 左右两边同乘以AA 的:

AX=Av0+AByAX =Av_0+ABy \Leftrightarrow [A1A2]X=[A1A2]v0+[A1BA2B]y\begin{bmatrix}A_1 \\[0.3em] A_2\end{bmatrix}X=\begin{bmatrix}A_1 \\[0.3em] A_2\end{bmatrix}v_0+\begin{bmatrix}A_1B \\[0.3em] A_2B \end{bmatrix}y \Leftrightarrow {A1X=A1v0+yA2X=A2v0\begin{cases} A_1X=A_1v_0+y \\ A_2X=A_2v_0 \\ \end{cases}

\Leftrightarrow {A1XA1v01TA1X1+1TA1v0A2X=A2v0\begin{cases} A_1X &\ge A_1v_0 \\ 1^TA_1X &\le 1+ 1^TA_1v_0 \\ A_2X &=A_2v_0 \\ \end{cases}

两个线性不等式和一个线性等式=多面体

2.4 半正定锥

对称矩阵集合 Sn={XRn×nX=XT}S^n=\{X\in R^{n\times n}|X=X^T\} 凸集 凸锥

对称半正定矩阵集合 S+n={XRn×nX=XT,X0}S_{+}^n=\{X\in R^{n\times n}|X=X^T,\: X \succeq 0\} 其中X0X \succeq 0表示特征值大于等于0 凸集 凸锥

对称正定矩阵集合 S++n={XRn×nX=XT,X0}S_{++}^n=\{X\in R^{n\times n}|X=X^T,\: X \succ 0\} 其中X0X \succ 0表示XX是正定矩阵 凸集 非凸锥

证明 S+nS_{+}^n 是凸集、凸锥

θ1,θ20\forall \theta_1, \: \theta_2 \: \ge 0 A,BS+n\forall \: A, \: B \in S_{+}^n 证明 θ1A+θ2BS+n\theta_1A+\theta_2B \in S_+^n 即证明 θ1A+θ2B\theta_1A+\theta_2B 对称半正定

如果A,BA, B是半正定矩阵,则对于XRn\forall X\in R^n, XTAX0XTBX0\begin{aligned} X^TAX &\ge 0 \\ X^TBX &\ge 0 \\ \end{aligned}

由上可知证明半正定即证明 XT(θ1A+θ2B)X0=XTθ1AX+XTθ2BX0X^T(\theta_1A+\theta_2B)X \ge 0=X^T \theta_1AX+X^T \theta_2BX \ge 0

因此得证

考虑简单情况:

n=1n=1 时,S+n=R+S_+^n=R_+ S++n=R++S_{++}^n=R_{++} Sn=RS^n=R 可知对称正定矩阵S++nS_{++}^n不包含原点,因此非凸锥


S+nS_+^n n=2n=2 S+n={[xyyz]x0,z0,xzy2}S_+^n=\Bigg\{\begin{bmatrix} x&y \\[0.3em] y&z\end{bmatrix} | x \ge 0,\:z\ge0,\: xz\ge y^2 \Bigg\} 二维矩阵空间与xyz 三维空间可以对应起来, 如下图所示:

交集

S1,S2S_1,S_2为凸集,则S1S2S_1 \bigcap S_2为凸

SaS_a为凸集,aA\forall a\in AaASa\mathop{\bigcap} \limits_{a\in A} S_a为凸集

【第1章】凸集——几种重要的凸集

2.5参考

1、Stephen Boyd 、Lieven Vandenberghe——《Convex Optimization》)
2、中科大凌青凸优化 (https://www.bilibili.com/video/BV1Jt411p7jE?)