- 本系列笔记(更新中): https://blog.csdn.net/qq_21149391/category_11891398.html
- 关于仿射集, 凸集, 凸锥, 超平面, 半空间, 欧氏球, 椭球, 范数球, 范数锥, 多面体, 单纯形, 半正定锥的介绍在这篇文章里: 【Boyd 凸优化】2. Convex sets 凸集 - 定义
有些专有名词的中文版真是一言难尽
1. Operations that preserve convexity 保留凸性的运算
这节介绍了 4 种集合的运算, 经过这些运算后的集合仍是 convex set.
1.1 Intersection 交集
一系列 convex sets 的交集仍是 convex set.
- 例1: 多面体 (polyhedron) 是有限个半空间 (halfspaces) 与超平面 (hyperplanes) 的交集, 半空间与超平面都是 convex, 所以多面体也是 convex.
- 例2: 半正定锥 (positive semidefinite cone)
S
+
n
\mathbf{S}_+^n
S+n 可以表示为:
S + n = ⋂ z ≠ 0 { X ∈ S n ∣ z T X z ≥ 0 } \mathbf{S}^n_{+} =\bigcap_{z\neq 0} \{X\in \mathbf{S}^n| z^TXz \geq 0\} S+n=z=0⋂{X∈Sn∣zTXz≥0}
其中, S n \mathbf{S}^n Sn 为全部大小为 n × n n \times n n×n 的对称矩阵的集合, z z z 为任意不为 0 0 0 的 n n n 维向量. 而 { X ∈ S n ∣ z T X z ≥ 0 } \{X\in \mathbf{S}^n| z^TXz \geq 0\} {X∈Sn∣zTXz≥0} 是 S n \mathbf{S}^n Sn 中的半空间, 所以 S + n \mathbf{S}_+^n S+n 是无限个半空间的交集, 因此是 convex. - 例3: 考虑下述集合:
S = { x ∈ R m ∣ ∣ p ( t ) ∣ ≤ 1 for ∣ t ∣ ≤ π / 3 } S = \{x\in\mathbb{R}^m | |p(t)|\leq 1 \;\; \text{ for } \;\; |t|\leq \pi/3\} S={x∈Rm∣∣p(t)∣≤1 for ∣t∣≤π/3}
其中, p ( t ) = x 1 cos t + . . . + x m cos m t p(t) = x_1 \cos t + ... + x_m \cos mt p(t)=x1cost+...+xmcosmt. 若令 c t = ( cos t , cos 2 t , . . . , cos m t ) c_t = ( \cos t, \cos 2t,... ,\cos mt) ct=(cost,cos2t,...,cosmt), 那么 S S S 可表示为 S = ⋂ ∣ t ∣ ≤ π / 3 S t S=\bigcap_{|t|\leq \pi/3} S_t S=⋂∣t∣≤π/3St, 其中 S t S_t St 的形式为:
S t = { x ∣ − 1 ≤ c t T x ≤ 1 } S_t= \left\{ x| -1 \leq c_t^T x \leq 1 \right\} St={x∣−1≤ctTx≤1}
S t S_t St 为 slab, [不知道怎么翻译, 关于 slab 的介绍参考 wikipedia: https://en.wikipedia.org/wiki/Slab_(geometry)], 是 convex set. 因此 S S S 也是 convex. - 例4: 任意 closed convex set 都可表示为无限个半平面的交集.
1.2 Affine functions 仿射变换
1) 定义与性质
- 定义:
函数 f : R n → R m f:\mathbb{R}^n\rightarrow \mathbb{R}^m f:Rn→Rm 如果有以下形式, 则称为 affine function 或 affine mapping:
f ( x ) = A x + b f(x) = Ax + b f(x)=Ax+b
其中 A ∈ R m × n , b ∈ R m A\in \mathbb{R}^{m\times n}, b\in \mathbb{R}^m A∈Rm×n,b∈Rm. 所以 affine function 是一个线性映射和一个常数的相加. - 性质1:
若 S ⊆ R n S \subseteq \mathbb{R}^n S⊆Rn 是一个 convex set, f : R n → R m f:\mathbb{R}^n\rightarrow \mathbb{R}^m f:Rn→Rm 是一个 affine function, 那么 S S S 在 f f f 之下的像 (image) 仍是 convex set. 其中 image 的形式为:
f ( S ) = { f ( x ) ∣ x ∈ S } f(S) = \{f(x)|x\in S\} f(S)={f(x)∣x∈S} - 性质2:
若 C ⊆ R m C \subseteq \mathbb{R}^m C⊆Rm 是一个 convex set, f : R m → R n f:\mathbb{R}^m\rightarrow \mathbb{R}^n f:Rm→Rn 是一个 affine function, 那么 S S S 在 f f f 之下的原像 (inverse image) 仍是 convex set. 其中 inverse image 的形式为:
f − 1 ( S ) = { x ∈ R n ∣ f ( x ) ∈ C } f^{-1}(S) = \{x\in\mathbb{R}^n|f(x)\in C\} f−1(S)={x∈Rn∣f(x)∈C}
2) 例子
- scaling 与 translation:
若 S S S 是 convex, 那么 S S S 经过 scaling 或 translation 后仍是 convex.
scaling 表示尺度变换或大小变换:
α S = { α x ∣ x ∈ S } \alpha S = \{\alpha x | x \in S\} αS={αx∣x∈S}
translation 表示平移变换:
S + a = { x + a ∣ x ∈ S } S + a= \{x + a| x \in S\} S+a={x+a∣x∈S}
其中 S ⊆ R n , α ∈ R , a ∈ R n S \subseteq \mathbb{R}^n, \alpha \in \mathbb{R}, a\in \mathbb{R}^n S⊆Rn,α∈R,a∈Rn. - projection 映射:
若 S ⊆ R m × R n S\subseteq \mathbb{R}^{m} \times \mathbb{R}^{n} S⊆Rm×Rn 是 convex, 那么 S S S 在其某些轴上的投影仍是 convex:
T = { x 1 ∈ R m ∣ ( x 1 , x 2 ) ∈ S for some x 2 ∈ R n } T = \{x_1 \in\mathbb{R}^{m}| (x_1,x_2) \in S \;\;\text{ for some }\;\; x_2 \in\mathbb{R}^{n}\} T={x1∈Rm∣(x1,x2)∈S for some x2∈Rn} - sum 集合的加法:
若 S 1 , S 2 S_1, S_2 S1,S2 为两个 convex sets, 那么它们的 sum 仍是 convex:
S 1 + S 2 = { x 1 + x 2 ∣ x 1 ∈ S 1 , x 2 ∈ S 2 } S_1+S_2 = \{x_1+x_2 | x_1 \in S_1, x_2\in S_2\} S1+S2={x1+x2∣x1∈S1,x2∈S2}
注意加法与集合的迪卡尔积 (Cartesian product) 的区别:
S 1 × S 2 = { ( x 1 , x 2 ) ∣ x 1 ∈ S 1 , x 2 ∈ S 2 } S_1 \times S_2 = \{(x_1,x_2) | x_1 \in S_1, x_2\in S_2\} S1×S2={(x1,x2)∣x1∈S1,x2∈S2} - partial sum 部分和:
若 S 1 , S 2 ∈ R m × R n S_1, S_2 \in \mathbb{R}^{m} \times \mathbb{R}^{n} S1,S2∈Rm×Rn 为两个 convex sets, 那么它们的 partial sum 仍是 convex:
S = { ( x , y 1 + y 2 ) ∣ ( x , y 1 ) ∈ S 1 , ( x , y 2 ) ∈ S 2 } S = \{(x, y_1+y_2)| (x,y_1)\in S_1, (x,y_2)\in S_2 \} S={(x,y1+y2)∣(x,y1)∈S1,(x,y2)∈S2} - 线性矩阵不等式的解集:
{ x ∣ A ( x ) ⪯ B } A ( x ) = x 1 A 1 + . . . + x m A m \{x| A(x) \preceq B \}\\ A(x)=x_1 A_1+...+ x_mA_m {x∣A(x)⪯B}A(x)=x1A1+...+xmAm
其中 B , A i ∈ S m B, A_i \in \mathbf{S}^m B,Ai∈Sm. 其中, 约束条件部分称为线性矩阵不等式 linear matrix inequality (LMI).
LMI 的解集是 S + n \mathbf{S}_+^n S+n 在 f ( x ) = B − A ( x ) f(x)=B-A(x) f(x)=B−A(x) 下的原像, 所以是 convex. - Hyperbolic cone 双曲锥:
{ x ∣ x T P x ≤ ( c T x ) 2 , c T x ≥ 0 } \{x| x^T Px \leq (c^T x)^2, c^T x\geq 0\} {x∣xTPx≤(cTx)2,cTx≥0}
其中 P ∈ S + n , c ∈ R n P\in\mathbf{S}_+^n, c\in\mathbb{R}^n P∈S+n,c∈Rn. 形状类似类似于漏斗. 它是下述二阶锥 second-order cone 在 f ( x ) = ( P 1 / 2 x , c T x ) f(x)=(P^{1/2}x, c^Tx) f(x)=(P1/2x,cTx) 下的原像, 所以是 convex.
{ ( z , t ) ∣ z T z ≤ t 2 , t ≥ 0 } \{(z,t)|z^T z \leq t^2, t\geq 0\} {(z,t)∣zTz≤t2,t≥0}
1.3 Perspective function 透视函数
Prespective function
P
:
R
n
+
1
→
R
n
P:\mathbb{R}^{n+1}\rightarrow \mathbb{R}^n
P:Rn+1→Rn 有以下形式:
P
(
z
,
t
)
=
z
t
,
d
o
m
P
=
{
(
x
,
t
)
∣
t
>
0
}
P(z,t) = \frac{z}{t},\;\;\;\;\;\; \mathbf{dom }P=\{(x,t)|t>0\}
P(z,t)=tz,domP={(x,t)∣t>0}
透视函数的输入由两个元素组成, 一个
n
n
n 维向量
x
x
x 和一个正实数
t
t
t, 函数的操作是用第一个元素除以第二个元素, 所以输出会少一个维度, 因为输出是一个
n
n
n 维向量.
- 如果
C
⊆
d
o
m
P
C\subseteq \mathbf{dom }\;P
C⊆domP 是 convex set, 那么
C
C
C 在
P
P
P 下的像和原像仍是 convex:
P ( C ) = { P ( x ) ∣ x ∈ C } P − 1 ( C ) = { x ∣ P ( x ) ∈ C } P(C)=\{P(x)|x\in C\}\\ P^{-1}(C)=\{x|P(x)\in C\} P(C)={P(x)∣x∈C}P−1(C)={x∣P(x)∈C} - 直观例子: 考虑在三维空间中的针孔相机, 如下图, 上方四个黑点表示光源 (如点 a a a), x 3 = 0 x_3 = 0 x3=0 是一个平面, 中间有一个孔用于光的映射. 其中上方的光源经过针孔映射到下方的 x 3 = − 1 x_3=-1 x3=−1 平面上 (如点 a ′ a' a′). 此时的映射就是一种透视函数, 即 a ′ = f ( a , c ) = a / c a'=f(a, c) = a/c a′=f(a,c)=a/c, 其中 c c c 是一个标量, 与光源的位置和 x 3 x_3 x3 平面的位置相关.
1.4 Linear-fractional function 线性分段函数
Linear-fractional function (又称 projective function)
f
:
R
n
→
R
m
f:\mathbb{R}^{n}\rightarrow \mathbb{R}^{m}
f:Rn→Rm 有以下形式:
f
(
x
)
=
A
x
+
b
c
T
x
+
d
,
d
o
m
f
=
{
x
∣
c
T
x
+
d
>
0
}
f(x)=\frac{Ax+b}{c^Tx+d} ,\;\;\;\;\;\; \mathbf{dom }\;f=\{x|c^Tx+d>0\}
f(x)=cTx+dAx+b,domf={x∣cTx+d>0}
其中,
A
∈
R
m
×
n
,
b
∈
R
m
,
c
∈
R
n
,
d
∈
R
A\in \mathbb{R}^{m\times n}, b\in\mathbb{R}^{m}, c\in \mathbb{R}^{n}, d\in\mathbb{R}
A∈Rm×n,b∈Rm,c∈Rn,d∈R
若令 affine function
g
=
[
A
c
T
]
x
+
[
b
d
]
g=\begin{bmatrix}A\\ c^T\end{bmatrix} x +\begin{bmatrix}b\\ d\end{bmatrix}
g=[AcT]x+[bd], 那么
f
f
f 可表示为透视函数
P
:
R
m
+
1
→
R
m
P:\mathbb{R}^{m+1}\rightarrow \mathbb{R}^{m}
P:Rm+1→Rm 与
g
:
R
n
→
R
m
+
1
g:\mathbb{R}^{n}\rightarrow \mathbb{R}^{m+1}
g:Rn→Rm+1 的复合, 即:
f
=
P
∘
g
f = P \circ g
f=P∘g
- 如果
C
⊆
d
o
m
f
C\subseteq \mathbf{dom }\;f
C⊆domf 是 convex set, 那么
C
C
C 在
f
f
f 下的像和原像仍是 convex:
f ( C ) = { f ( x ) ∣ x ∈ C } f − 1 ( C ) = { x ∣ f ( x ) ∈ C } f(C)=\{f(x)|x\in C\}\\ f^{-1}(C)=\{x|f(x)\in C\} f(C)={f(x)∣x∈C}f−1(C)={x∣f(x)∈C} - 例子: 考虑下述 linear-fractional function:
f ( x ) = x x 1 + x 2 + 1 , d o m f = { ( x 1 , x 2 ) ∣ x 1 + x 2 + 1 > 0 } f(x)=\frac{x}{x_1+x_2+1} , \;\;\;\mathbf{dom }\; f = \{(x_1,x_2)|x_1+x_2+1>0\} f(x)=x1+x2+1x,domf={(x1,x2)∣x1+x2+1>0}
输入空间和输出空间都是 R 2 \mathbb{R}^2 R2, f f f 的定义域边界为 x 1 + x 2 + 1 = 0 x_1+x_2+1=0 x1+x2+1=0, 即下面左图中的虚线, d o m f \mathbf{dom }\; f domf 为虚线的右上方. 考虑一个在 d o m f \mathbf{dom }\; f domf 中的集合 C C C 如左图所示, 它在 f f f 下的像如右图, 右图中的虚线为 f − 1 f^{-1} f−1 的定义域边界.
2. Generalized inequalities 广义不等式
Generalized inequalities 可以用 proper cones 来定义, 所以先介绍 proper cones.
2.1 Proper Cones 正常锥
定义:
如果锥 cone
K
⊆
R
n
K\subseteq \mathbb{R}^n
K⊆Rn 满足以下四个条件, 那么
K
K
K 被称为 proper cone:
- K K K is convex
-
K
K
K is closed:
closed 表示 K K K 包含其边界, 类似于开区间与闭区间中的 “闭” -
K
K
K is solid:
solid 表示 K K K 的 interior 非空, interior 指的是集合中的最大开集; nonsolid 则表示集合的点都在边界上, 无 interior. 可以看以下介绍:
https://blog.csdn.net/robert_chen1988/article/details/83502950
https://www.youtube.com/watch?v=5HIyAdS0Pe8 - K is pointed
poined 表示 K K K 中无直线, 若向量 x ∈ K x\in K x∈K 且 − x ∈ K -x\in K −x∈K, 那么 x = 0 x=0 x=0. 可以看以下介绍, 有例图:
https://math.stackexchange.com/questions/2136079/what-is-a-pointed-cone-intuitively-how-could-one-visualize-it
例子:
- 非负象限 non-negative orthant K = R + n = { x ∈ R n ∣ x i ≥ 0 , i = 1 , . . . , n } K=\mathbf{R}^n_+=\{x\in\mathbb{R}^n|x_i\geq 0, i=1,...,n \} K=R+n={x∈Rn∣xi≥0,i=1,...,n}. (如二维空间中的第一象限, 包含边界)
- 半正定锥 positive semidefinite cone K = S + n K=\mathbf{S}^n_+ K=S+n.
-
[
0
,
1
]
[0,1]
[0,1] 上的非负多项式 non-negative polynomials
K
=
{
x
∈
R
n
∣
x
1
+
x
2
t
+
x
3
t
2
+
.
.
.
+
x
n
t
n
−
1
≥
0
,
t
∈
[
0
,
1
]
}
K=\{x\in\mathbb{R}^n| x_1+x_2t+x_3t^2+...+x_n t^{n-1}\geq 0, t\in[0,1]\}
K={x∈Rn∣x1+x2t+x3t2+...+xntn−1≥0,t∈[0,1]}
多项式的图像有点难理解, 不过考虑二维空间中的会很直观, 此时 K K K 的边界是 x 1 + t x 2 = 0 x_1 +t x_2 =0 x1+tx2=0, t t t 决定了边界的斜率, K K K 既是半空间又是凸锥, 且是 closed, solid. 因为定义域给了限制 x 1 , x 2 ∈ [ 0 , 1 ] x_1, x_2 \in [0,1] x1,x2∈[0,1], 所以也是 pointed.
2.2 Generalized inequalities
定义:
- 关于正常锥
K
K
K 的 nonstrict generalized inequalities:
x ⪯ K y ⇔ y ⪰ K x ⇔ y − x ∈ K x \preceq_K y \;\;\; \Leftrightarrow \;\;\; y \succeq_K x \;\;\; \Leftrightarrow \;\;\; y-x \in K x⪯Ky⇔y⪰Kx⇔y−x∈K - 关于正常锥
K
K
K 的 strict generalized inequalities:
x ≺ K y ⇔ y ≻ K x ⇔ y − x ∈ i n t K x \prec_K y \;\;\; \Leftrightarrow \;\;\; y \succ_K x \;\;\; \Leftrightarrow \;\;\; y-x \in \mathbf{int}K x≺Ky⇔y≻Kx⇔y−x∈intK
符号 i n t K \mathbf{int}K intK 表示 K K K 的 interior, 也就是说 y − x y-x y−x 在 K K K 的内部而非边界上.
符号 ≺ K , ⪯ K \prec_K, \preceq_K ≺K,⪯K 称为 (strick) partial ordering 或 generalized inequality. 当在一维空间中, 如 K = R + K=\mathbf{R}_+ K=R+ (非负实数), (strick) partial ordering 等价于 < < < 和 ≤ \leq ≤.
例子:
- 当 K = R + n K = \mathbf{R}^n_+ K=R+n 非负象限时, x ⪯ R + n y ⇔ x i ≤ y i , i = 1 , . . . , n x \preceq_{\mathbf{R}^n_+} y \Leftrightarrow x_i\leq y_i, i = 1,..., n x⪯R+ny⇔xi≤yi,i=1,...,n, 此时称为 componentwise inequality.
- 当 K = S + n K = \mathbf{S}^n_+ K=S+n 半正定锥时, X ⪯ S + n Y ⇔ Y − X X \preceq_{\mathbf{S}^n_+} Y \Leftrightarrow Y - X X⪯S+nY⇔Y−X 是半正定的, 此时称为 matrix inequality.
性质:
generalized inequality
⪯
K
\preceq_K
⪯K 有以下性质, 这些性质与一维空间中的
≤
\leq
≤ 相似:
- 加法:
x ⪯ K y , u ⪯ K v ⇒ x + u ⪯ K y + v x \preceq_K y, \;\;\; u\preceq_K v \;\;\; \Rightarrow \;\;\;x+u \preceq_K y+v x⪯Ky,u⪯Kv⇒x+u⪯Ky+v - 传递性:
x ⪯ K y , y ⪯ K z ⇒ x ⪯ K z x \preceq_K y, \;\;\; y\preceq_K z\;\;\; \Rightarrow \;\;\; x \preceq_K z x⪯Ky,y⪯Kz⇒x⪯Kz - scaling:
x ⪯ K y , α ≥ 0 ⇒ α x ⪯ K α y x \preceq_K y, \;\;\; \alpha \geq 0 \;\;\; \Rightarrow \;\;\; \alpha x \preceq_K \alpha y x⪯Ky,α≥0⇒αx⪯Kαy - reflexive:
x ⪯ K x x \preceq_K x x⪯Kx - antisymmetric 非对称的:
x ⪯ K y , y ⪯ K x ⇒ x = y x \preceq_K y, \;\;\; y\preceq_K x\;\;\; \Rightarrow \;\;\; x = y x⪯Ky,y⪯Kx⇒x=y - 极限:
x i ⪯ K y i for i = 1 , 2 , . . and lim i → ∞ x i = x , lim i → ∞ y i = y ⇒ x ⪯ K y x_i \preceq_K y_i \text{ for } i=1,2,..\\ \text{and } \lim_{i\rightarrow \infty} x_i = x, \lim_{i\rightarrow \infty} y_i = y \\ \Rightarrow x \preceq_K y xi⪯Kyi for i=1,2,..and i→∞limxi=x,i→∞limyi=y⇒x⪯Ky
3. Separating and supporting hyperplanes 分离超平面与支撑超平面
3.1 Separating hyperplane theorem 超平面分离定理
Thm. 若 C C C 和 D D D 为两个非空 (nonempty) 且不相交 (disjoint) 的 convex sets, 那么一定存在 a ≠ 0 a \neq 0 a=0 和 b b b 使得全部 C C C 中的点满足 a T x ≤ b a^T x\leq b aTx≤b 且全部 D D D 中的点满足 a T x ≥ b a^T x\geq b aTx≥b. 即, 存在一个超平面分 { x ∣ a T x = b } \{x|a^Tx=b\} {x∣aTx=b} 将两个集合分离 ( the hyperplane separates C C C and D D D ). 这个超平面被称为 C C C 和 D D D 的 separating hyperplane.
![](https://i-blog.csdnimg.cn/blog_migrate/0e818a9fe8d59ea41184a3da440343a4.png)
- Strict separation: 若上述 a ≠ a\neq a= 和 b b b 使得全部 C C C 中的点满足 a T x < b a^T x < b aTx<b 且全部 D D D 中的点满足 a T x > b a^T x > b aTx>b, 那么称超平面 { x ∣ a T x = b } \{x|a^Tx=b\} {x∣aTx=b} 严格分离了这两个集合.
3.2 Supporting hyperplanes 支撑超平面
定义:
若
C
⊆
R
n
C \subseteq \mathbb{R}^n
C⊆Rn 且
x
0
x_0
x0 为
C
C
C 边界上的一点 (用
bd
C
\textbf{bd }C
bd C 表示
C
C
C 的边界集合, 即
x
0
∈
bd
C
x_0\in \textbf{bd }C
x0∈bd C), 若存在非零向量
a
≠
0
a\neq 0
a=0 对任意
x
∈
C
x\in C
x∈C 满足
a
T
x
≤
a
T
x
0
a^T x \leq a^T x_0
aTx≤aTx0, 那么超平面
{
x
∣
a
T
x
=
a
T
x
0
}
\{x|a^Tx=a^T x_0\}
{x∣aTx=aTx0} 被称作
C
C
C 在点
x
0
x_0
x0 处的 supporting hyperplane.
在二维空间中,
C
C
C 在点
x
0
x_0
x0 处的 supporting hyperplane 就是
C
C
C 的边界在点
x
0
x_0
x0 处的切线, 但注意下图中
C
C
C 左侧凹陷部分虽然有切线, 但是没有 supporting hyperplane, 因为这时的切线会与集合相交, 上述定义中的不等式不成立.
Thm. (supporting hyperplane theorem)
如果集合
C
C
C 是 convex set, 那么
C
C
C 在任意边界点上都有 supporting hyperplane.
3.2 与 3.3 节的两个定理十分直观, 书中给了证明.