漫步凸分析三——凸集代数
有许多种代数运算可以保留凸性。
例如,如果CC是RnR^n中的凸集,那么所有平移操作C+aC+a和标量乘法λC\lambda C同样是凸集,其中
\lambda C=\{\lambda x|x\in C\}
从几何上看,如果λ>0\lambda>0,那么λC\lambda C就是CC伸缩λ\lambda倍得到的图像。
过原点CC的对称反射是−C=(−1)C-C=(-1)C,对于凸集CC,如果−C=C-C=C,我们就说这个凸集是对称的。这样的凸集(如果非空)一定包含原点,因为它除了包含每个向量xx和−x-x外,还包含xx与−x-x之间的线段。对称的非空凸锥是子空间(定理2.7)。
定理3.1 如果C1,C2C_1,C_2是RnR^n中的凸集,那么他们的和C1+C2C_1+C_2依然是凸集,其中
C_1+C_2=\{x_1+x_2|x_1\in C_1,x_2\in C_2\}
证明:令x,yx,y是C1+C2C_1+C_2中的点,那么存在x1,y1∈C1,x2,y2∈C2x_1,y_1\in C_1,x_2,y_2\in C_2使得
x=x_1+x_2,\quad y=y_1+y_2
对于0<λ<10,我们有
(1-\lambda)x+\lambda y=[(1-\lambda)x_1+\lambda y_1]+[(1-\lambda)x_2+\lambda y_2]
然后利用C1,C2C_1,C_2的凸性
(1-\lambda)x_1+\lambda y_1\in C_1,\quad (1-\lambda)x_2+\lambda y_2\in C_2
可以得出(1−λ)x+λy(1-\lambda)x+\lambda y属于C1+C2C_1+C_2。||||
我们举例说明,如果C1C_1是任意凸集,C2C_2是非负象限,那么
\begin{align*} C_1+C_2 &=\{x_1+x_2|x_1\in C_1,x_2\geq0\}\\ &=\{x|\exists x_1\in C_1,x_1\leq x\} \end{align*}
根据定理3.1,当C1C_1是凸集时,后面的集合是凸的。
根据定义,集合CC为凸意味着
(1-\lambda)C+\lambda C\subset C,\quad 0
我们一会儿会看到,对于凸集而言等式的情况也是成立的。一个集合KK,当且仅当对于所有λ>0\lambda>0时,λK⊂K\lambda K\subset K恒成立,那么这个集合就是凸锥,并且K+K⊂KK+K\subset K(定理2.6)。
如果C1,…,CmC_1,\ldots,C_m是凸集,那么下面的线性组合也是凸集
C=\lambda_1C_1+\cdots+\lambda_mC_m
自然得,当λ1≥0,…,λm≥0\lambda_1\geq0,\ldots,\lambda_m\geq0并且λ1+⋯+λm=1\lambda_1+\cdots+\lambda_m=1时,上面的线性组合CC叫做C1,…,CmC_1,\ldots,C_m的凸组合,从几何上讲,我们可以将CC 看成C1,…,CmC_1,\ldots,C_m的某个混合物,例如,令C1,C2C_1,C_2分别是R2R^2中的三角形和圆盘,当λ\lambda从0到1变化时
C=(1-\lambda)C_1+\lambda C-2
从三角形变到有圆角的三角形,圆的主导地位不断增加,最终变成一个圆盘。
为了几何上更加直观,有时可以将C1+C2C_1+C_2看成所有平移x1+C2x_1+C_2的并,其中x1x_1在C1C_1上变化。
对于集合的加法和标量乘法,哪些代数法则是有效的呢?简单老说,及时不是凸的,下面的法则都是成立的
\begin{align*} C_1+C_2 &=C_2+C_1\\ (C_1+C_2)+C_3 &=C_1+(C_2+C_3)\\ \lambda_1(\lambda_2C) &=(\lambda_1\lambda_2)C\\ \lambda(C_1+C_2) &=\lambda C_1+\lambda C_2 \end{align*}
只包含0的凸集是加法操作的恒等元素,如果集合包含的元素超过一个,那么加法逆是不存在的;通常我们可以说当C≠∅C\neq\emptyset时,0∈[C+(−C)]0\in[C+(-C)]
下面介绍的定理是集代数中依赖凸的一个重要法则,这个分配律满足实际上等价于集合CC是凸的,因为这个法则暗含着0≤λ≤10\leq\lambda\leq1时λC+(1−λ)C\lambda C+(1-\lambda)C含于CC。
定理3.2 如果CC是凸集并且λ1≥0,λ2≥0\lambda_1\geq0,\lambda_2\geq0,那么
(\lambda_1+\lambda_2)C=\lambda_1C+\lambda_2C
证明:无论CC是否为凸集,包含⊂\subset都是成立的。从凸关系
C\supset(\lambda_1)/(\lambda_1+\lambda_2))C+(\lambda_2/(\lambda_1+\lambda_2))C
中我们可以得出反向包含成立,这里假设λ1+λ2>0\lambda_1+\lambda_2>0,然后两边乘以λ1+λ2\lambda_1+\lambda_2即可得出。如果λ1\lambda_1或λ2\lambda_2是0,定理明显成立。||||
从这个定理我们可以得出当CC是凸集时,C+C=2C,C+C+C=3CC+C=2C,C+C+C=3C 等等。
给定RnR^n中的两个凸集C1,C2C_1,C_2,有唯一一个既含于C1C_1 又含于C2C_2的最大凸集,即C1∩C2C_1\cap C_2,还有唯一一个即包含C1C_1又包含C2C_2的最小凸集,即(C1∪C2)(C_1\cup C_2)。这个结论不知限于一对集合,对于任意的{Ci,i∈I}\{C_i,i\in I\}结论都是成立的,换句话说,在包含的自然偏序下RnR^n中所有凸集就是完备格(complete lattice)。
定理3.3 令{Ci|i∈I}\{C_i|i\in I\}是RnR^n中任意凸集组成的集合,并且令CC表示这个集合并的凸包,那么
C=\cup\{\Sigma_{i\in I}\lambda_i C_i\}
其中这个并包含所有有限的凸组合(即选择所有系数λi\lambda_i的非负值,使得只有有限个为非零并且相加为1)。
证明:根据定理2.3,CC是所有凸组合x=μ1y−1+⋯+μmymx=\mu_1y-1+\cdots+\mu_my_m的集合,其中向量y1,…,ymy_1,\ldots,y_m属于集合CiC_i的并。实际上,我们通过取系数为非零并且来自不同集合CiC_i的向量的组合就能得到CC,因为那些系数为零的向量可以从组合中忽略掉,而且如果两个正系数的向量属于同一个集合CiC_i,用y1,y2y_1,y_2表示,那么μ1y1+μ2y2\mu_1y_1+\mu_2y_2可以用μy\mu y代替,其中μ=μ1+μ2\mu=\mu_1+\mu_2
y=(\mu_1/\mu)y_1+(\mu_2/\mu)y_2\in C_i
因此CC就是形如
\mu_1C_{i_1}+\cdots+\mu_mC_{i_m}
有限凸组合的并,其中i1,…,imi_1,\ldots,i_m是不同的。除了符号不一样外,它和定理中描述的并是一样的。||||
给定任意从RnR^n到RmR^m的线性变换AA,习惯上我们定义
\begin{align*} AC &=\{Ax|x\in C\}\quad for\quad C\subset R^n\\ A^{-1}D &=\{x|Ax\in D\}\quad for\quad D\subset R^m \end{align*}
我们称ACAC为AA下CC的像(image),A−1DA^{-1}D为AA下DD 的原像(inverse image),事实证明这个操作保留凸性。(注意线性变换的逆只有在单值映射时才存在,而这里的符号A−1DA^{-1}D跟它是不同的)
定理3.4 令AA是从RnR^n到RmR^m的线性变换,那么对于RnR^n 中的所有凸集CC,ACAC是RmR^m中的凸集,对于RmR^m中的所有凸集DD,A−1DA^{-1}D是RnR^n中的凸集。
推论3.4.1 凸集CC在子空间LL上的正交投影是一个凸集。
证明:映射到LL上的正交投影是线性变换,它对每一个点xx 分配唯一的一个y∈Ly\in L使得(x−y)⊥L(x-y)\perp L。||||
定理3.4中A−1DA^{-1}D为凸的一种解释是当yy在一个凸集上变化时,联立线性方程组Ax=yAx=y的解xx也会在一个凸集上变化,如果D=K+aD=K+a,其中KK是RnR^n中的非负象限,a∈Rma\in R^m,那么A−1DA^{-1}D是向量xx的集合,它使得Ax≥aAx\geq a,即RnR^n中某个线性不等式组的解集。如果CC是RnR^n中的非负象限,那么ACAC 是向量y∈Rmy\in R^m的集合,它使得等式Ax=yAx=y 有一个解x≥0x\geq0。
定理3.5 令C,DC,D分别是Rm,RpR^m,R^p中的凸集,那么
C\oplus D=\{x={y,z}|y\in C,z\in D\}
是Rm+pR^{m+p}的凸集。
定理3.5中的集合称为C,DC,D的直和(direct sum)。对于平常的和C+DC+D,其中C⊂Rn,D⊂RnC\subset R^n,D\subset R^n,如果每个向量x∈C+Dx\in C+D可以唯一地表示成x=y+zx=y+z 的形式,其中y∈C,z∈Dy\in C,z\in D,那么我们也称它为直和。对于对称凸集C−C,D−DC-C,D-D,当且仅当他们在RnR^n中的公共元素只有零向量时他们的和才是直和。(这就表明RnR^n可以表示成两个子空间的直和,一个包含CC,另一个包含DD)
定理3.6 令C1,C2C_1,C_2是Rm+pR^{m+p}的凸集,CC是向量x=(y,z)x=(y,z)的集合(其中y∈Rm,z∈Rpy\in R^m,z\in R^p)使得存在向量z1,z1z_1,z_1,他们满足(y,z1)∈C1,(y,z2)∈C2,z1+z2=z(y,z_1)\in C_1,(y,z_2)\in C_2,z_1+z_2=z,那么CC是Rm+pR^{m+p}中的凸集。
证明:令(y,z)∈C(y,z)\in C,其中z1,z2z_1,z_2如定理中所示,同样设(y′,z′),z′1,z′2(y^{'},z^{'}),z_1^{'},z_2^{'},那么对于0≤λ≤10\leq\lambda\leq1,y′′=(1−λ)y+λy′,z′′=(1−λ)z+λz′y^{''}=(1-\lambda)y+\lambda y^{'},z^{''}=(1-\lambda)z+\lambda z^{'},我们有
\begin{align*} (y^{''},(1-\lambda)z_1+\lambda z_1^{'}) &=(1-\lambda)(y,z_1)+\lambda(y^{'},z_1^{'})\in C_1\\ (y^{''},(1-\lambda)z_2+\lambda z_2^{'}) &=(1-\lambda)(y,z_2)+\lambda(y^{'},z_2^{'})\in C_2\\ z^{''}=(1-\lambda)(z_1&+z_2)+\lambda(z_1^{'}+z_2^{'})\\ =((1-\lambda)z_1&+\lambda z_1^{'}+(1-\lambda)z_2+\lambda z_2) \end{align*}
因此向量
(1-\lambda)(y,z)+\lambda(y^{'},z^{'})=(y^{''},z^{''})
属于CC。||||
注意到定理3.6描述的是Rm+pR^{m+p}中凸集的某个交换(commutative)和结合(associative)运算,有无限多种方法在RnR^n 上引入线性坐标系,然后相对于每个坐标系将每个向量表示成y∈Rm,z∈Rpy\in R^m,z\in R^p,每种方式可以得到定理3.6 描述的运算(如果RnR^n分解成子空间直和的方式不同,那么运算就不同),这种类型的运算称作部分加(partial addition),平常的加法(即形如C1+C2C_1+C_2的运算)可以看成定理3.6 中m=0m=0 的极端情况,而交(即形如C1∩C2C_1\cap C_2的运算)对应于p=0p=0。 这两种极端情况之间有无限多种RnR^n中所有凸集类的部分和,每一个都是一种交换,结合二元运算。
刚刚提到的无限多种运算似乎非常随意,但是通过更特殊地考虑,我们可以列出四种运算做为自然运算。回忆一下,对于RnR^n中的每个凸集CC,在Rn+1R^{n+1} 中有一个凸锥KK包含原点并且有一个横截面是CC,即由{(1,x)|x∈C}\{(1,x)|x\in C\}生成的凸锥,这个对应关系是一对一的。这类锥KK由这样的凸锥组成,这些凸锥和半空间{(λ,x)|λ≤0}\{(\lambda,x)|\lambda\leq0\}只有唯一的公共点(0,0)(0,0)。保留Rn+1R^{n+1}中这类锥的运算对应于RnR^n中凸集的运算,Rn+1R^{n+1}变成(λ,x)(\lambda,x)的分解操作可以将我们的注意力集中到Rn+1R^{n+1}上的四种部分和运算,也就是只在xx上进行加法运算,只在λ\lambda上进行加法运算,以及两种极端情况,即在λ,x\lambda,x上同时进行加法运算,同时都不进行加法运算。这四种运算明显保留了问题中的那类凸锥KK。
现在让我们看看对于凸集而言部分和的四种运算意味着什么。假设K1,K2K_1,K_2分别对应于凸集C1,C2C_1,C_2,如果我们只对K1,K2K_1,K_2上的xx执行加法运算,当且仅当对于(1,x1)∈K1,(1,x2)∈K2(1,x_1)\in K_1,(1,x_2)\in K_2,等式x=x1+x2x=x_1+x_2恒成立时,(1,x)(1,x) 产生的KK,因此对应于KK的凸集是C=C1+C2C=C_1+C_2。如果我们对两部分都执行部分和运算,当且仅当(λ1,x1)∈K1,(λ2,x2)∈K2(\lambda_1,x_1)\in K_1,(\lambda_2,x_2)\in K_2,等式x=x1+x2,1=λ1+λ2x=x_1+x_2,1=\lambda_1+\lambda_2恒成立时,(1,x)(1,x)属于KK,因此CC是集合λ1C1+λ2C2\lambda_1C_1+\lambda_2C_2的并,其中λ1≥0,λ2≥0,λ1+λ2=1\lambda_1\geq0,\lambda_2\geq0,\lambda_1+\lambda_2=1,根据定理3.3我们知道,这实际就是conv(C1∪C2)(C_1\cup C_2)。λ,x\lambda,x上都不进行加法运算和K1,K2K_1,K_2去交集是一样的,明显对应于形式C1∩C2C_1\cap C_2。剩下的那个运算就是只在λ\lambda上进行加法运算,当且仅当(λ1,x)∈K1,(λ2,x)∈K2(\lambda_1,x)\in K_1,(\lambda_2,x)\in K_2时,其中λ1≥0,λ2≥0,λ1+λ2=1\lambda_1\geq0,\lambda_2\geq0,\lambda_1+\lambda_2=1,(1,x)∈K(1,x)\in K,因此
\begin{align*} C &=\cup\{\lambda_1C_1\cap\lambda_2C_2|\lambda_i\geq0,\lambda_1+\lambda_2=1\}\\ &=\cup\{(1-\lambda)C_1\cap \lambda C_2|0\leq\lambda\leq1\} \end{align*}
我们用C1#C2C_1\#C_2,运算#\#叫做逆加法(inverse addition)。
定理3.7 如果C1,C2C_1,C_2是RnR^n中的凸集,那么他们的逆和C1#C2C_1\#C_2也是凸集。
逆和是RnR^n中所有凸集的一个交换,结合二元运算,它类似于平常的加法(可以用逐点运算来表示),为了说明这个,我们首先注意到C1#C2C_1\#C_2由所有形如
x=\lambda x_1=(1-\lambda)x_2,\quad 0\leq\lambda\leq1,\quad x_1\in C_1,\ x_2\in C_2
的向量xx组成。这样的表达式需要x1,x2,xx_1,x_2,x在同一条射线{αe|α>0}\{\alpha e|\alpha>0\}上,事实上,对于α1≤0,α2≤0\alpha_1\leq0,\alpha_2\leq0,我们有x1=α1e,x2=α2ex_1=\alpha_1e,x_2=\alpha_2e并且
x=[\alpha_1\alpha_2/(\alpha_1+\alpha_2)]e=(\alpha_1^{-1}+\alpha_2^{-1})^{-1}e
(如果α1=0\alpha_1=0或者α2=0\alpha_2=0,那么最后那个系数可能理解为0),实际上这里的xx只依赖与x1,x2x_1,x_2,而不是ee的选择。我们可能称它为x1,x2x_1,x_2 的逆和,用x1#x2x_1\#x_2表示,向量的逆加法是交换和结合的扩展。
C_1\#C_2=\{x_1\#x_2|x_1\in C_1,x_2\in C_2\}
和C1+C2C_1+C_2是并行的。
我们讨论的所有运算明显保留了RnR^n中所有凸锥,当然除了平移运算外。因此当K1,K2,KK_1,K_2,K是凸锥时,集合K1+K2,K1#K2,conv(K1∪K2),K1∩K2,K1⊕K2,AK,A−1K,λKK_1+K_2,K_1\#K_2,\text{conv}(K_1\cup K_2),K_1\cap K_2,K_1\oplus K_2,AK,A^{-1}K,\lambda K是凸锥,正标量乘法对锥来说是很平凡的运算:对于λ>0\lambda>0,我们有λK=K\lambda K=K,由于这个原因,在这种情况下,加法和逆加法基本简化为格运算。
定理3.8 如果K1,K2K_1,K_2是包含原点的凸锥,那么
\begin{align*} K_1+K_2 &=\text{conv}(K_1\cup K_2)\\ K_1\#K_2 &=K_1\cap K_2 \end{align*}
证明:根据定理3.3,conv(K1∪K2)(K_1\cup K_2)是(1−λ)K1+λK2(1-\lambda)K_1+\lambda K_2的并,其中λ∈[0,1]\lambda\in[0,1],当0<λ<10时,后面那个集合变为K1+K2K_1+K_2,当λ=0\lambda=0时变为K1K_1,λ=1\lambda=1时变为K2K_2。因为0∈K1,0∈K2,K1+K20\in K_1,0\in K_2,K_1+K_2既包含K1K_1又包含K2K_2,因此conv(K1∪K2)(K_1\cup K_2)和K1+K2K_1+K_2是一致的。同样地,K1#K2K_1\#K_2是(λK1)∩(1−λ)K2(\lambda K_1)\cap(1-\lambda)K_2 的交,其中λ∈[0,1]\lambda\in[0,1],当0<λ<10 时,后面那个集合变成K1∩K2K_1\cap K_2,当λ=0\lambda=0或λ=1\lambda=1时{0}⊂K1∩K2\{0\}\subset K_1\cap K_2,因此K1#K2=K1∩K2K_1\#K_2=K_1\cap K_2。||||
这里我们提出另一个很有趣的结构。给定RnR^n中两个不同的点x,yx,y,半线{(1−λ)x+λy|λ≥1}\{(1-\lambda)x+\lambda y|\lambda\geq1\} 可以看成光源在xx处时yy的阴影,而yy在集合CC上变化时得到半线的并就是CC的阴影,这表明对于RnR^n中任意不相交的子集C,SC,S,我们可以定义CC相对于SS的本影(umbra)为
\cap_{x\in S}\cup_{\lambda\geq1}\{(1-\lambda)x+\lambda C\}
CC相对于SS的半影(penumbra)为
\cup_{x\in S}\cup_{\lambda\geq1}\{(1-\lambda)x+\lambda C\}
如果CC是凸的,那么本影就是凸的,如果C,SC,S都是凸的,那么半影是凸的。
附:
本影(umbra):发光体(非点光源)所发出光线被非透明物体阻挡后,在屏幕(或其他物体)上所投射出来完全黑暗的区域。此处发光体的光线完全被物体阻挡,而没有任何光线到达。
半影(penumbra):天体本影周围有部分光通过的影区。呈圆锥形,顶端指向太阳。其边界同月球(或地球)、太阳相内切。在半影区内只能见到部分太阳。当月球半影扫过地球时,便发生日偏食。在影像上,半影是通过观察影像来认识物体的主要障碍,半影又称为模糊阴影。
图1
图2 本影(A)和半影(B)
漫步凸分析三——凸集代数相关推荐
- 漫步凸分析六——凸集的相对内点
根据定义,RnR^n中点x,yx,y之间的欧几里得距离是 d(x,y)=|x−y|=⟨x−y,x−y⟩1/2 d(x,y)=|x-y|=\langle x-y,x-y\rangle^{1/2} 函数d ...
- UA SIE545 优化理论基础1 凸分析3 凸集与凸包
UA SIE545 优化理论基础1 凸分析3 凸集与凸包 基本概念与性质 凸集 凸组合 凸包 基本概念与性质 凸集 考虑数域FFF上的线性空间VVV. 定义一 凸集(convex set).S⊂VS ...
- 漫步凸分析七——凸函数闭包
线性函数的凸性是代数性质(线性)的结果,而对于凸函数,事情就没那么简单了,但是凸函数本身依然有许多拓扑性质,通过将凸集的闭包和相对内点理论应用到凸函数的上境图或水平集上可以推出这些结论.有一个基本的结 ...
- 漫步凸分析五——函数运算
对于已知的凸函数,我们如何对他们进行使得产生的函数依然是凸的呢?目前已经证明了许多运算是保留凸性的,某些运算与平常分析中的运算是类似的,像函数的逐点加法,还有一些运算出自几何动机,像取函数集的凸包.通 ...
- 漫步微积分三十——定积分的性质
代数和几何面积 在前面的章节我们考虑了曲线y=f(x)y=f(x)下方和x=a,x−bx=a,x-b之间围成区域的面积,还有两个假设分别是(1)f(x)≥0;(2)a<b(1)f(x)\geq ...
- 聊一聊数学中的基本定理(三)——代数基本定理
早点关注我,精彩不错过! 在前面两篇文章中,我们聊透了算术基本定理的证明和意义,相关内容请戳: 聊一聊数学中的基本定理(二)--算术基本定理的价值 聊一聊数学中的基本定理(一)--算术基本定理的证明 ...
- 漫步凸分析十一——分离定理
令C1,C2C_1,C_2是RnR^n中的非空集合,有一个超平面HH,如果C1C_1含于其中的一个闭半空间而C2C_2含于相对立的闭半空间,那么我们称HH分离(separate)C1,C2C_1,C_ ...
- 漫步最优化三——优化算法的一般结构
你的出现,让我的眼中,心中有了蔚蓝的天空:\textbf{你的出现,让我的眼中,心中有了蔚蓝的天空:} 你的出现,让梦的城堡,殿堂留住美好的时光.\textbf{你的出现,让梦的城堡,殿堂留住美好的时 ...
- 漫步凸分析八——回收锥与无界
RnR^n中的有界闭子集通常比无界的更容易处理,然而,当集合为凸时,无界的困难度就下降很多,这实在是一大幸事,因为我们考虑的许多集合像上境图从他们的性质可知是无界的. 根据我们的直观理解,无界闭凸集在 ...
最新文章
- [Android应用]《花界》V1.0 正式版隆重发布!
- CentOS 6.2 yum安装配置lnmp服务器(Nginx+PHP+MySQL)
- 项目中除了需求外还需要知道的问题
- NUMA架构和Java
- GitHub仓库项目添加Python语言类别
- 也谈基于Web的含工作流项目的一般开发流程
- Oracle不打算修复这两个iPlanet信息泄漏和注入漏洞
- mysql innodbdatahomedir_mysql gtid复制
- Android系统在新进程中启动自定义服务过程(startService)的原理分析
- electron 软件 出现进程 XXX 可能无法关闭 解决方法
- linux vi命令详解 修改几行,Linux系统——Vi命令讲解
- 这些孩子对计算机游戏上瘾英语,沉迷网络游戏高中英语作文
- 霸榜11个月,神车MINI EV进退两难!
- c语言中max的用法。
- Containerd shim 原理深入解读
- 学会这个小技巧,SSH 会话连接永远不超时!
- 有这两款手机拍照扫描软件,去哪都可以轻松使用
- 哪里有日语50音图的发音啊?
- 自动化运维为什么是必须的?
- 网页登陆界面,如何测试?
热门文章
- [Spring实战系列](6)配置Spring IOC容器的Bean
- sqlserver 遇到以零作除数错误的处理 不报错的解决方法
- 项目管理工具比较-redmine vs trac
- 购买原装三星内存注意事项
- 科普文:服务器上如何 Node 多版本共存 #31
- 爬虫使用urllib库报错urllib.error.URLError: 「urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate veri
- Java项目构建管理Maven的安装与配置
- Dockerfile 文件结构、docker镜像构建过程详细介绍
- C#开发笔记之13-如何用C#分隔字符串并返回字符串数组?
- C#LeetCode刷题-随机数