凸集和凸函数
今天是春分,春分快乐~
—— 谁把春光,平分一半,最惜今朝。
1. 凸集
1.1 凸集的定义
设集合 D⊂Rn ,如果对于任意的 x,y∈D 与任意的 α∈[0,1],有 αx+(1−α)y∈D ,则称 D 是凸集(convexset)。
凸集的几何意义是:如果两个点属于此集合,则这两点连线上的 任意一点均属于此集合。
定义推广:D 是凸集的充分必要条件是:
对任意∀m⩾2,∀x1,x2,⋯,xm∈D,∀α1,α2,⋯,αm ,其中 αi⩾0 (i=1,2,⋯,m) 且 ∑i=1mαi=1 ,均有:
α1x1+α2x2+⋯+αmxm∈D
1.2 凸集的性质
设 D1,D2⊂Rn 是凸集, α∈R ,则有:
- D1∩D2={x∣x∈D1,x∈D2} 是凸集。
- αD1={αx∣x∈D1} 是凸集。
- D1+D2={x+y∣x∈D1,y∈D2} 是凸集。
- D1−D2={x−y∣x∈D1,y∈D2} 是凸集。
注意:这里要明确一点凸集的加减法和集合中的加减法完全是两件事情,比如说即使 D1=D2 ,那么 D1−D2=∅ ,甚至结果的测度要比原来的 D1 更大。给出其中一个性质的证明有利于更好地理解凸集加减法的运算:
证明:设 D1,D2⊂Rn 是凸集,则 D1+D2={x+y∣x∈D1,y∈D2} 也是凸集。
不妨设:$\boldsymbol{D}_1 + \boldsymbol{D}_2 = \boldsymbol{Z} $ ,任取 z∈Z,z′∈Z ,则有:
x+y=z,x′+y′=z′
其中 x,x′∈D1;y,y′∈D2
所以对于任意 α∈[0,1] 有:αz+(1−α)z′=α(x+y)+(1−α)(x′+y′)=αx+(1−α)x′+αy+(1−α)y′
而 αx+(1−α)x′∈D1 , αy+(1−α)y′∈D2。
所以:αz+(1−α)z′∈D1+D2=Z 。
1.3 内点、边界、闭包
内点:给定 D⊂Rn,x∈Rn 。若存在 x 的 δ 邻域 Nδ(x)={y∣∥y−x∥<δ}⊂ D ,则称 x 为 D 的内点; 所有内点组合成的集合记为 intD 。
边界:若 x 的任意 δ 邻域 Nδ(x )既包含 D 中的点, 又包含不属于 D 的点, 则称 x 为 D 的边界点; 所有边界点组成的集合记为 ∂D 。
闭包:若对任意 δ>0 均有 Nδ(x)∩D=∅, 则称 x 属于集合的闭包, 记为 x∈clD 。
根据以上定义可知,集合 D 的闭包 cD=D∪∂D, 它是包含集合 D 的最小的闭集。
2. 投影定理
设 D⊂Rn 是非空闭凸集, y∈Rn 且 y∈/D, 则
(1) 存在唯一的一点 x∈D, 使得 x∈D 是 y 到 D 的距离最小的点(距离大于 0 ),即有 :
∥x−y∥=min{∥x−y∥∣x∈D}>0
(2) x∈D 是 y 到 D 的距离最小的点的充要条件是 (x−x)T(x−y)⩾ 0,∀x∈D
3. 凸集的分离定理
先回顾一下什么是超平面(Hyperplane),超平面指的是比所处空间少一个维度的子空间。超平面H的方程如下:
H={x∈Rn:uTx=v}
也可以写成:在超平面H内一点 a 和任一点 x。 u 为点 x 处的法向量,将满足 uT(x−a)=0 于是有:
H={x∈Rn:uT(x−a)=0}
若 uTx≥v 则表明点 x 在超平面H的正面,若uTx≤v 则表明点 x 在超平面 H 的背面。
现在再给定两个集合 S1 ,S2,
如果 uTx1≥v ,∀x1∈S1 ; uTx1≤v, ∀x2∈S2 ,则称 H 分离 S1 和 S2。如下图所示:
图中超平面H的式子为uTx1=v,集合S1中的任意点代入方程后都在正面(或面上),集合S2中的任意点代入方程后都在背面(或面上),所以超平面H分离开了集合S1和S2。
3.1 点和凸集的分离定理(基本分离定理)
定理
设 D⊂Rn 是非空闭凸集, y∈Rn,y∈/D, 则存在非零向量 α∈Rn,β∈R 满足 αTx⩽β<αTy,∀x∈D
这个定理表明如果在空间Rn内存在一个凸集D,凸集外有一点y,那么可以找到一个超平面 αTx=β 将凸集D和点y分离开。
证明思路:
利用投影定理,在凸集中找到距离点$ \boldsymbol{y}$ 最近的点 x,然后做切平面(极限情况),即可分离。
推论1
设 D⊂Rn 是非空凸集, y∈∂D, 则存在非零向量 α∈Rn 满足 αTx⩽αTy,∀x∈clD
推论2
设 D⊂Rn 是非空凸集, y∈/D, 则存在非零向量 α∈Rn 满足 αTx⩽αTy,∀x∈clD
cl 是闭包, ∂ 是边界。
3.2 支撑超平面定理
定理
设 D⊂Rn 是非空凸集, x∈∂D, 则存在非零向量 α∈Rn, 使得 αTx⩽αTx,∀x∈clD; 此时也称超平面 H={x∈Rn∣αT(x−x)=0} 为集合 D 在 x 处的支撑超平面。
cl 是闭包, ∂ 是边界。
从其他角度理解支撑超平面:
下图为一个示意图:
3.3 支撑分离定理(边界点与凸集的分离)
定理
若 S 为 Rn 中的非空凸集 (不需要为闭集),令 x∈∂S ,则存在过点 x 的 S 的支撑超平面。
3.4 凸集和凸集的分离定理(超平面分离定理)
定理
设 D1,D2⊂Rn 是非空凸集,且 D1∩D2=∅ 则存在非零向量 α 使得:
inf{αTx∣x∈D1}⩾sup{αTx∣x∈D2}
inf表示下确界(infimum),sup表示上确界(supremum)
这个定理表明如果在空间Rn内存在两个没有交集的凸集D1和D2,那么可以找到一个平面将这两个凸集分隔开。
证明思路:
由于凸集没有交集,所以D1−D2一定不包含0这个点,根据这个特殊的点利用点和凸集的分离定理即可证明。
证明: 令 D′=D2−D1={z∣z=x2−x1,x1∈D1,x2∈D2},由于 D1,D2 非空, 所以 D′ 非空, 由于 D1∩D2=∅, 所以 0∈/D′, 0∈∂D′,根据点与凸集的分离定理的推论可知存在非零向量 α, 使得对每一个 z∈D′ 都有 αT(z−0)=αTz⩽0, 即
αTx1⩾αTx2,∀x1∈D1,x2∈D2
4.凸函数
4.1 凸函数的定义
设 D⊂Rn 是非空凸集, f(x) 是定义在 D 上的函数, 如果对任 意的 x1,x2∈D,α∈(0,1) 都有 f(αx1+(1−α)x2)⩽ αf(x1)+(1−α)f(x2), 则称 f 是 D 上的凸函数(convexfunction)。
凸函数的定义和詹森 (Jensen) 不等式是相同的。
注意这个定义包含了两个条件。
更进一步地,如果对任意的 x1,x2∈D,α∈(0,1) 都有 f(αx1+(1−α)x2)< αf(x1)+(1−α)f(x2), 则称 f 是 D 上的严格凸函数(strictlyconvexfunction)。
4.2 凸函数的几何意义
下图是一个凸函数:
凸函数的几何意义在于,定义域中任意两点连线组成的线段都在这两点的函数曲线(面)上方。
下列函数均为 Rn 上的凸函数:
-
f(x)=cTx
-
f(x)=∥x∥
-
f(x)=xTAx, 其中 A 为对称正定矩阵
4.3 凸函数的α水平集
f(x) 是定义在 D⊂Rn 上的函数, α∈R, 集合 Dα={x∣f(x)⩽ α,x∈D} 称作 f 函数的 α 水平集(levelset)。
实质上就是一个函数满足一定条件时的定义域上的一系列点的集合。
一个例子,如下图所示:
性质
凸函数的任意 α 下水平集都是凸集。
注意:某个函数的下水平集都是凸集,但这个函数却不一定是凸函数 (如: f(x)=−ex )。
5. 凸函数的判别定理
判别定理1
定义在 Rn 上的 f(x) 为凸函数的充要条件是对于任意 x,y∈Rn, 一元函数 ϕ(α)=f(x+αy) 是关于 α 的凸函数。
判别定理2
(一阶条件) 设 D⊂Rn 是非空开凸集, f:D⊂Rn→R, 且 f(x) 在 D 上一阶连续可微,则 f(x) 是 D 上的凸函数的充要条件是:
f(y)⩾f(x)+∇f(x)T(y−x),∀x,y∈D
一阶条件的几何意义:凸函数永远位于其切线的上方 ,如下图所示:
事实上,f(y)=f(x)+∇f(x)T(y−x) 就是函数 f 在点 x 处的一阶泰勒近似,那么上述条件就说明了对于凸函数而言,其任意位置处的一阶泰勒展开总是其本身的全局下界。而泰勒展开描述的是函数 f 的局部性质,由此我们得到有关凸函数的一个重要性质:凸函数是一类可以由局部信息推导出全局信息的函数。
一阶条件的引申:设 D⊂Rn 是非空开凸集, f:D⊂Rn→R, 且 f(x) 在 D 上一阶连续可微, 则 f(x) 是 D 上的严格凸函数的充要条件是:
f(y)>f(x)+∇f(x)T(y−x),∀x,y∈D 且 x=y
判别定理3
设 D⊂Rn 是非空开凸集, f:D⊂Rn→R, 且 f(x) 在 D 上二阶连续可微,则 f(x) 是 D 上的凸函数的充要条件是:f(x) 的Hesse矩阵 ∇2f(x) 在 D 上是半正定的。
判别定理4
设 D⊂Rn 是非空开凸集, f:D⊂Rn→R, 且 f(x) 在 D 上二阶连续可微, 则:
- f(x) 的Hesse矩阵 ∇2f(x) 在 D 上正定 ⇒f(x) 是 D 上的严格凸函数;
- f(x) 是 D 上的严格 凸函数 ⇒f(x) 的Hesse矩阵 ∇2f(x) 在 D 上半正定。
几个反例:y=x4,x∈R,y=x6,x∈R 。
导致充分严格凸函数与严格正定不构成互为充要条件的原因:
对于 α>0, 如果当 α→0 时 o(α)>0 且 o(α)→0, 则有
f(x)+αo(α)<0,∀x∈Rn⇒f(x)<0,∀x∈Rnf(x)+αo(α)>0,∀x∈Rn⇒f(x)⩾0,∀x∈Rnf(x)+αo(α)⩽0,∀x∈Rn⇒f(x)<0,∀x∈Rnf(x)+αo(α)⩾0,∀x∈Rn⇒f(x)⩾0,∀x∈Rn