Date: 2020/05/05
Editor:萧潇子(Jesse)
Contact: [email protected]


3.保凸运算

本节给出一些典型的保凸运算,利用这些保凸运算,可以从凸集构造出其他凸集.这些运算与上一节中给出的凸集例子一起构成凸集的演算,可以用来确定或者构建集合的凸性.

3.1交集

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为凸集

3.2仿射函数

关于仿射变换解释可参考这篇博文https://blog.csdn.net/blogshinelee/article/details/90675178

f:RnRmf:\:R^n \rightarrow R^m是仿射的,当f(S)=AX+b\color{red} f(S)=AX+b, ARm×nA\in R^{m\times n}, bRmb\in R^m

SRnS\in R^n为凸集,f:RnRmf:\:R^n \rightarrow R^m仿射,则f(S)={f(X)XS}f(S)=\{f(X)|X\in S \}为凸集

nn维空间中的凸集SS经过线性变换变成mm维空间中的凸集f(S)f(S)

逆仿射映射

g:RkRng:\:R^k \rightarrow R^n为仿射, g1(S)={Xf(X)S}g^{-1}(S)=\{X|f(X) \in S\}

e.g.

缩放与移位是保持凸性的

缩放:αS={αXXS}\alpha S=\{\alpha X|X\in S\}

移位:S+a={X+aXS}S+a=\{X+a|X\in S\}

两个凸集的和是凸的:

S1+S2={x+yxS1,yS2}S_1+S_2=\{x+y|x\in S_1, y\in S_2\}

定义S1×S2={(x,y)xS1,yS2}S_1\times S_2=\{(x,y)|x\in S_1, y\in S_2\}

假定xR,yRx\in R,y\in R, 线性变换 f(x,y)=x+yf(x,y)=x+y,因此两个凸集的和还是凸集

线性矩阵不等式 LMT 解集也是凸集

B,Ai,XiSmB,A_i,X_i\in S^m 对称矩阵

定义函数:A(X)=X1A1++XnAnBA(X)=X_1A_1+\cdots+X_nA_n\preceq B 表示(A(X)B)0(A(X)-B)\preceq 0半负定矩阵

证明{XA(X)B}\{X|A(X)\preceq B\}为凸 XX由很多对称矩阵XiX_i构成

首先定义仿射变换f(X)BA(X)f(X) \triangleq B-A(X) \Rightarrow 由高维矩阵变换到低维矩阵空间

f(X)f(X)每个点是由多个矩阵$X_i 构成,B-A(X)$每个点是一个矩阵

f1(S+n)={XBA(X)0}f^{-1}(S_+^n)=\{X|B-A(X) \succeq 0\}

S+nS_+^n为凸,经过f1(S+n)f^{-1}(S_+^n)逆仿射映射{XBA(X)0}\{X|B-A(X) \succeq 0\}也为凸

由于BA(X)B-A(X)为凸, 也即f(X)f(X)也是凸的,f(X)f(X)逆运算符合仿射运算,所以其解集{XA(X)B}\{X|A(X)\preceq B\}为凸

椭球是球的仿射映射
ξ(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\} \qquad x_c\in R^n \quad P\in S_{++}^{n}(对称正定矩阵几何)

单位球 {uu21}\{u\: |\parallel u \parallel _2 \le 1\}

仿射函数 f(u)=P12u+xcf(u)=P^{\frac{1}{2}} u+x_c 其中(P12)(P12)=P(P^{\frac{1}{2}})(P^{\frac{1}{2}})=P

{f(u)u21}={P12u+xcu21}\{f(u)\:|\parallel u \parallel _2 \le 1\}= \{P^{\frac{1}{2}} u+x_c\:|\parallel u \parallel _2 \le 1\} 定义x=P12u+xcu=P12(xxc)x=P^{\frac{1}{2}} u+x_c\Leftrightarrow u=P^{-\frac{1}{2}}(x-x_c)

\Rightarrow {xP12(xxc)21}\{x\: |\parallel P^{-\frac{1}{2}}(x-x_c) \parallel _2 \le 1\}

\Rightarrow {x(xxc)TP1(xxc)1}\{x\: |(x-x_c)^T P^{-1} (x-x_c) \le 1\}

3.3透视函数

PRn+1RnP\quad R^{n+1} \rightarrow R^{n} 定义域 :dom P=Rn×R++P=R^n \times R_{++} 前n个元素可以在实空间里面任意取值,最后一个元素必须要是正数

定义: P(Z,t)=ZtZRntR++P(Z,t)=\frac{Z}{t} \quad Z\in R^n \quad t\in R_{++}

二维情况下点 (x1,x2)(x_1,x_2) 透过原点与直线 x2=1x_2=-1 的交点 (x1x2,1)=(P(x1,x2),1)(-\frac{x_1}{x_2},-1)=(-P(x_1,x_2),-1)

这里先给出几何意义的解释,可以使用简单的小孔成像原理去理解这个过程,投影的小孔为原点,成像平面为x2=1x_2=-1,二维平面上的点经过投影变成一维直线上的点,如下图所示:
【第1章】凸集——保凸运算

凸集经过透视函数也是凸集

考虑Rn+1R^{n+1}内线段 x=(x~Rn,xn+1R++)x=(\mathop{\tilde{x}}\limits_{\in R^n},\mathop{x_{n+1}}\limits_{\in R_{++}}) y=(y~Rn,yn+1R++)y=(\mathop{\tilde{y}}\limits_{\in R^n},\mathop{y_{n+1}}\limits_{\in R_{++}})

1θ01 \ge\theta \ge 0 线段为 θx+(1θ)y\theta x+(1-\theta)y

证明 线段 经过透视函数 还是线段

xPP(x)x \mathop{\rightarrow} \limits^P P(x) yPP(y)y \mathop{\rightarrow} \limits^P P(y)

θx+(1θ)yPP(θx+(1θ)y)\theta x+(1-\theta)y \mathop{\rightarrow} \limits^P P(\theta x+(1-\theta)y)
P(θx+(1θ)y)=θx~+(1θ)y~θxn+(1θ)yn+1=θxn+1θxn+1+(1θ)yn+1x~xn+1+(1θ)yn+1θxn+1+(1θ)yn+1y~yn+1=μP(x)+(1μ)P(y)1μ0 \begin{aligned} P(\theta x+(1-\theta)y)& = \frac{\theta \tilde{x} + (1-\theta) \tilde{y}}{\theta x_n + (1-\theta)y_{n+1}}\\ &=\frac{\theta x_{n+1}}{\theta x_{n+1}+(1-\theta)y_{n+1}}\frac{\tilde{x}}{x_{n+1}} + \frac{(1-\theta) y_{n+1}}{\theta x_{n+1}+(1-\theta)y_{n+1}}\frac{\tilde{y}}{y_{n+1}}\\ &=\mu P(x)+(1-\mu)P(y) \qquad 1 \ge\mu \ge 0 \end{aligned}
θ,μ\theta, \mu一一映射

任意凸集的反透视函数仍是凸集
P1(C)={(x,t)Rn+1xtC,t>0} P^{-1}(C)=\{(x,t)\in R^{n+1}|\frac{x}{t} \in C, \quad t>0\}
考虑(x,t)P1(C)(x,t)\in P^{-1}(C) (y,s)P1(C)(y,s)\in P^{-1}(C) 0θ10\le \theta \le 1

证明 (θx+(1θ)y,θt+(1θ)s)P1C(\theta x+(1-\theta)y, \theta t+(1-\theta)s) \in P^{-1}C 也就是要证明 :
θx+(1θ)yθt+(1θ)sC \frac{\theta x+(1-\theta)y} {\theta t+(1-\theta)s} \in C

θx+(1θ)yθt+(1θ)s=θtθt+(1θ)sxt+(1θtθt+(1θ)s)ys=μxtC+(1μ)ysCC \begin{aligned} \frac{\theta x+(1-\theta)y} {\theta t+(1-\theta)s} &=\frac{\theta t}{\theta t+(1-\theta)s} \frac{x}{t} + (1-\frac{\theta t}{\theta t+(1-\theta)s})\frac{y}{s}\\ &=\mu \mathop{\frac{x}{t}}\limits_{\in C} + (1-\mu)\mathop{\frac{y}{s}}\limits_{\in C} \\ \Rightarrow \in C \end{aligned}

3.4 线性分数函数(转换后凸性质不变)

线性分式函数由透视函数和仿射函数复合而成

g: RnRm+1R^n \rightarrow R^{m+1}为仿射映射
g(x)=[AC+]x+[bd] g(x)= \begin{bmatrix} A \\[0.3em] C^+ \end{bmatrix} x + \begin{bmatrix} b \\[0.3em] d \end{bmatrix}
其中ARm×n,CRn,bRm,dRA\in R^{m\times n},C\in R^{n}, b\in R^{m}, d\in R

P: Rm+1RmR^{m+1}\rightarrow R^m 透视函数

f:RnRmPgf:\quad R^n \rightarrow R^m \triangleq P\circ g

线性分数函数:
f(x)=Ax+bCTx+ddomf={xCTx+d>0} f(x)=\frac{Ax+b}{C^Tx+d}\quad domf=\{x|C^Tx+d>0\}
例: 两个随机变量的联合概率 \rightarrow 条件概率

uu vv {1n}\{1 \cdots n\} {1m}\{1 \cdots m\}

联合概率Pi,j=P(u=i,v=i)P_{i,j}=P(u=i,v=i)

条件概率 fij=P(u=iv=j)f_{ij}=P(u=i|v=j)

fij=Pijk=1nPkj[010][P1,j,,Pn,j]线\because f_{ij}=\frac{P_{ij}}{\sum^n_{k=1}P_{kj}} \rightarrow \frac{[0 \cdots 1\cdots 0]\rightarrow 点乘下面向量}{[P_{1,j},\cdots,P_{n,j}] \rightarrow 向量相加} \quad 分子分母满足线性变换

从高维变成标量

3.5参考

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

相关文章: