update cvx post

This commit is contained in:
2024-06-11 20:10:20 +08:00
parent 9e9b00b0dd
commit abbc0da71b
6 changed files with 90 additions and 109 deletions
+85 -3
View File
@@ -27,13 +27,15 @@ $
\newcommand{\bfS}{\mathbf{S}}
\newcommand{\TT}{\mathrm{T}}
\newcommand{\H}{\mathcal{H}}
\newcommand{\E}{\mathcal{E}}
\def\dom{\mathop{\bf dom}}
$  本文将描述一些保凸运算,利用保凸运算可以使用凸集构造出其他凸集。这些运算与[*Part 1.2 凸集—一些重要的凸集*](https://josh-gao.top/posts/9293b739.html)中描述的凸集的简单例子一起构成了凸集的演算,可以用来确定或构建集合的凸性。
# 1. 交集
  交集运算是保凸的:如果 $S_1$ 和 $S_2$ 是凸集,那么 $S_1 \cap S_2$ 也是凸集。这个性质可以扩展到无穷个集合的交:如果对于任意 $\alpha\in A$,$S_\alpha$ 都是凸的,那么 $\displaystyle \bigcap_{\alpha \in A} S_\alpha$ 也是凸集。(子空间、仿射集合和凸锥对与任意交运算也是封闭的。)举一个简单的例子,多面体是半空间和超平面(它们都是凸集)的交集,因而是凸的。
> **举例** 半正定锥 $\bfS^n_+$ 可以表示为,
> **举例** 半正定锥 $\bfS^n_+$ 可以表示为
>
> $$
> \bigcap_{z\ne 0} \left\{ X \in \bfS^n\ \middle|\ z^\TT Xz \geqslant 0 \right\}
@@ -79,7 +81,7 @@ $$
# 2. 仿射函数
  函数 $f: \bfR^n \to \bfR^m$ 是**仿射**(*affine*)的,如果它是一个线性函数和一个常数的和,即具有 $f(x) = Ax+ b$ 的形式,其中 $A \in \bfR^{m\times n}$,$b \in \bfR^m$。假设 $S \subseteq \bfR^n$ 是凸的,并且 $f: \bfR^n \to \bfR^m$ 是仿射函数。那么,$S$ 在 f$ 下的象
  函数 $f: \bfR^n \to \bfR^m$ 是**仿射**(*affine*)的,如果它是一个线性函数和一个常数的和,即具有 $f(x) = Ax+ b$ 的形式,其中 $A \in \bfR^{m\times n}$,$b \in \bfR^m$。假设 $S \subseteq \bfR^n$ 是凸的,并且 $f: \bfR^n \to \bfR^m$ 是仿射函数。那么,$S$ 在 $f$ 下的象
$$
f(S) = \left\{ f(x)\ \middle|\ x\in S \right\}
@@ -93,7 +95,7 @@ $$
是凸的。
  两个简单的例子是**伸缩**(*scaling*)和**平移**(*translation*)。如果 $S \subseteq \bfR^n$ 是凸集,$\alpha \in \bfR^n$ 并且 $a \in \bfR^n$,那么,集合 $\alpha S$ 和 $S+a$ 是凸的,其中
  两个简单的例子是**伸缩**(*scaling*)和**平移**(*translation*)。如果 $S \subseteq \bfR^n$ 是凸集,$\alpha \in \bfR$ 并且 $a \in \bfR^n$,那么,集合 $\alpha S$ 和 $S+a$ 是凸的,其中
$$
\alpha S = \left\{ \alpha x\ \middle|\ x \in S \right\},\qquad S + a = \left\{ x + a\ \middle|\ x \in S \right\}
@@ -129,6 +131,86 @@ $$
其中 $x\in\bfR^n$,$y_i \in \bfR^m$。$m=0$ 时,部分和给出了 $S_1$ 和 $S_2$的交集;$n=0$ 时,部分和等于集合之和。凸集的部分和是凸集。
> **举例** **多面体**。$\{ x\ |\ Ax \preceq b, Cx = d \}$ 可以表示为非负象限和原点的 Cartesian 乘积在仿射函数 $f(x) = (b -Ax, d - Cx)$ 下的原象:
>
> $$
> \{x\ |\ Ax\preceq b, Cx = d\} = \{ x\ |\ f(x) \in \bfR^m_+ \times \{0\}\}
> $$
> **举例** **线性矩阵不等式的解**。条件
>
> $$\begin{equation}
> A(x) = x_1 A_1 + \cdots + x_nA_n \preceq B
> \end{equation}$$
>
> 称为关于 $x$ 的**线性矩阵不等式**(*Linear Matrix Inequality, LMI*),其中 $B,A_i \in \bfS^m$(注意它与有序线性不等式
>
> $$
> a^\TT x = x_1a_1+\cdots x_na_n \leqslant b
> $$
>
> 的相似性,其中 $b,a_i\in \bfR$。)
>
> 线性矩阵不等式的解 $\{ x\ |\ A(x) \preceq B\}$ 是凸集。事实上,它是半正定锥在由 $f(x) = B-A(x)$ 给定的仿射映射 $f: \bfR^n \to \bfS^m$ 下的原象。
> **举例** **双曲锥**。集合
>
> $$
> \{ x\ |\ x^\TT Px \leqslant (c^\TT x) ^2, c^\TT x \geqslant 0 \}
> $$
>
> 是凸集,其中 $P\in\bfS^n_+$,$c\in\bfR$ 这是因为它是二阶锥
>
> $$
> \{ (z,t)\ |\ z^\TT z \leqslant t ^2 , t \geqslant 0 \}
> $$
>
> 在仿射函数 $f(x) = (P^{1/2}x,c^\TT x)$ 下的原象。
> **举例** **椭球**。椭球
>
> $$
> \E = \{ x\ |\ (x-x_c)^\TT P^{-1} (x-x_c) \leqslant 1 \}
> $$
>
> 是单位 Euclid 球 $\{ u\ |\ \|u\|_2 \leqslant 1 \}$ 在仿射映射 $f(u) = P^{1/2}u + x_c$ 下的象, 其中 $P \in \bfS^n_{++}$。(同时也是单位球在仿射映射 $g(x) = P^{-1/2}(x — x_c)$ 下的原象。)
# 3. 线性分式及透视函数
  本节将讨论一类称为**线性分式**(*linear-fractional*)的函数,它比仿射函数更普遍,并且仍然保凸。
## 3.1 透视函数
  定义 $P:\bfR^{n+1}\to\bfR^n$ 为**透视函数**(*perspective function*),其定义域为 $\dom P = \bfR^n \times \bfR_{++}$。(此处的 $\bfR_{++}$ 表示正实数集合,即 $\bfR_{++} = \{ x\in\bfR\ |\ x > 0 \}$。)透视函数对向量进行伸缩(scale),或称为规范化(normalize),使得最后一维分量为1 并舍弃之。
> **注释** 我们用小孔成象来解释透视函数。($\bfR^3$ 中的)小孔照相机由一个不透明的水平面 $x_3 = 0$ 和一个在原点的小孔组成,光线通过这个小孔在 $x_3 = -1$ 呈现出一个水平图像。在相机上方 $x(x_3 > 0)$ 处的一个物体,在相平面的点 $=(x_1/x_3,x_2/x_3,1)$ 处形成一个图像。忽略象点的最后一维分量(因为它恒等于 $-1$),$x$ 处的点的象在象平面上呈现于 $y=-(x_1/x_3,x_2/x_3)$ 处。[图 15](#图15)显示了这个过程。
>
> <a id="图15"></a>
>
> ![图 15.透视函数的小孔成象解释。深色的水平直线表示 $\bfR^3$ 中的平面 $x_3 = 0$,除了在原点处有一个小孔外,它是不透光的。平面之上的物体或光源呈现在浅色水平直线所示的象平面 $x_3 = -1$ 上。源位置向其象位置的映射对应于透视函数。](../images/post/2024-06-08-josh-cvx-1-3/2024-06-08-josh-cvx-1-3-150-PinHoleCameraInterpretationOfPerspectiveFuncation.png){width=500px}
&emsp;&emsp;如果 $C \subseteq \dom P$ 是凸集,那么它的象
$$
P(C) = \{ P(x)\ |\ x\in C \}
$$
也是凸集。这个结论很直观:通过小孔观察一个凸的物体,可以得到凸的象。为解释这个事实,我们将说明在透视函数作用下,线段将被映射成线段。(也可以这样理解,通过小孔,一条线段的象是一条线段。)假设 $x = (\tilde{x},x_{n+1}), y = (\tilde{y}, y_{n+1}) \in \bfR^{n+1}$,并且 $x_{n+1}>0, y_{n+1}>0$ 。那么,对于 $0 \leqslant \theta \leqslant 1$
$$
P(\theta x + (1-\theta)y) = \frac{\theta\tilde{x}+ (1-\theta)\tilde{y}}{\theta x_{n+1} + (1-\theta)y_{n+1}} = \mu P(x) + (1-\mu) P(x)
$$
其中
$$
\mu = \frac{\theta x_{n+1}}{\theta x_{n+1} + (1-\theta) y_{n+1}}\in[0,1]
$$
$\theta$ 和 $\mu$ 之间的关系是单调的:当 $\theta$ 在 $0$、$1$ 间变化时(形成线段 $[x,y]$),$μ$ 也在 $0$、$1$ 间变化(形成线段 $[P(x),P(y)]$。这说明 $P([x,y]) = [P(x),P(y)]$。
&emsp;&emsp;现在假设 $C$ 是凸的,并且有 $C \subseteq \dom P$(即对于所有 $x\in C$,$x_{n+1} > 0$) 及 $x,y\in C$。为显示 $P(C)$ 的凸性,需要说明线段 $[P(x), P(y)]$ 在 $P(C)$ 中。这条线段是线段 $[x,y]$ 在 $P$ 的象,因而属于 $P(C)$。
# 参考文献
1. Stephen P. Boyd and Lieven Vandenberghe, *Convex optimization*. Cambridge, UK: Cambridge University Press, 2004.