椭圆是一个凸集的证明
椭圆是一个凸集的证明常见的凸集椭圆是凸集的证明从 norm 的角度去看 ellipsoid常见的凸集我们在 Affine set 和 convex set 的定义 一文中讲解了凸集(convex set)的概念。我们先来回顾一下凸集的定义:如果连接集合 CCC 当中的任何两点构成的线段也在集合 CCC 之中,那么我们就说集合 CCC 是一个 convex set。或者我们用数学的语言来描述:对于集
椭圆是一个凸集的证明
常见的凸集
我们在 Affine set 和 convex set 的定义 一文中讲解了凸集(convex set)的概念。我们先来回顾一下凸集的定义:
如果连接集合 C C C 当中的任何两点构成的线段也在集合 C C C 之中,那么我们就说集合 C C C 是一个 convex set。
或者我们用数学的语言来描述:
对于集合 C C C 中的任何 x 1 , x 2 x_1, x_2 x1,x2,对任意 0 ≤ θ ≤ 1 0 \leq \theta \leq 1 0≤θ≤1,如果我们有 θ x 1 + ( 1 − θ ) x 2 ∈ C \theta x_1 + (1 - \theta) x_2 \in C θx1+(1−θ)x2∈C。我们就说这个集合是一个凸集合 (convex set)。
一些常见的是凸集的集合可以总结如下:
- 空集 ∅ \empty ∅。
- 只有一个元素的集合 { x 0 } \{x_0\} {x0}。
- 整个 R n \mathbb{R}^n Rn 空间。
- 任意直线。
- 任意线段。
- R n \mathbb{R}^n Rn 中的任意线性空间。
上述的6个例子都是较为明显的凸集合的例子。在本文中我们将要重点看另外一个常见的例子,椭圆(ellipsoid)。
我们容易想象到,如果连接椭圆中的任意两点,那么得到的线段也将在椭圆中,所以椭圆自然是一个凸集合。
但是我们怎么从数学上严格得证明椭圆是一个凸集合呢?这就是本文将要讨论的问题。
椭圆是凸集的证明
从定义上证明椭圆是一个凸集合
我们先来看椭圆集合的数学定义。我们用集合
E = { x ∣ ( x − x c ) T P − 1 ( x − x c ) ≤ 1 } \mathscr{E} =\{x \vert (x - x_c)^T P^{-1} (x - x_c) \leq 1 \} E={x∣(x−xc)TP−1(x−xc)≤1}
表示椭圆。其中 P P P 是一个对称正定的矩阵。通常我们用 P ≻ 0 P \succ 0 P≻0 表示矩阵 P P P 是正定的。 x c ∈ R n x_c \in \mathbb{R}^n xc∈Rn 称为椭圆的中心。
下面我们从定义上去证明 E \mathscr{E} E 这个集合是凸集合。
对于 ∀ x , y ∈ E \forall x, \, y \in \mathscr{E} ∀x,y∈E,以及任意 0 ≤ θ ≤ 1 0 \leq \theta \leq 1 0≤θ≤1,我们想要证明 θ x + ( 1 − θ ) y \theta x + (1 - \theta) y θx+(1−θ)y 也属于集合 E \mathscr{E} E。
因为 x , y ∈ E x, \, y \in \mathscr{E} x,y∈E,所以我们有
( x − x c ) T P − 1 ( x − x c ) ≤ 1 , ( y − x c ) T P − 1 ( y − x c ) ≤ 1 (x - x_c)^T P^{-1} (x - x_c) \leq 1, \\ (y - x_c)^T P^{-1} (y - x_c) \leq 1 (x−xc)TP−1(x−xc)≤1,(y−xc)TP−1(y−xc)≤1.
我们希望证明
( θ x + ( 1 − θ ) y − x c ) T P − 1 ( θ x + ( 1 − θ ) y − x c ) ≤ 1 ( ∗ ) (\theta x + (1 - \theta) y -x_c)^T P^{-1} (\theta x + (1 - \theta) y -x_c) \leq 1 \hspace{5cm} (*) (θx+(1−θ)y−xc)TP−1(θx+(1−θ)y−xc)≤1(∗)
我们把 ( ∗ ) (*) (∗) 式的左边展开,我们可以得到
LHS = θ 2 ( x − x c ) T P − 1 ( x − x c ) + ( 1 − θ ) 2 ( y − x c ) T P − 1 ( y − x c ) + ( 1 − θ ) θ ( y − x c ) T P − 1 ( x − x c ) + θ ( 1 − θ ) ( x − x c ) T P − 1 ( y − x c ) ≤ θ 2 + ( 1 − θ ) 2 + 2 θ ( 1 − θ ) ( x − x c ) T P − 1 ( y − x c ) \begin{aligned}\text{LHS} = & \theta^2 (x-x_c)^T P^{-1} (x - x_c) + \\ &(1 - \theta)^2 (y - x_c)^T P^{-1} (y - x_c) + \\ & (1 - \theta) \theta (y - x_c)^T P^{-1} (x - x_c) + \\ & \theta (1 - \theta) (x - x_c)^T P^{-1} (y - x_c) \\ \leq & \theta^2 + (1 - \theta)^2 + 2 \theta (1 - \theta) (x - x_c)^T P^{-1} (y - x_c) \end{aligned} LHS=≤θ2(x−xc)TP−1(x−xc)+(1−θ)2(y−xc)TP−1(y−xc)+(1−θ)θ(y−xc)TP−1(x−xc)+θ(1−θ)(x−xc)TP−1(y−xc)θ2+(1−θ)2+2θ(1−θ)(x−xc)TP−1(y−xc).
这里我们应用了 P − 1 = ( P − 1 ) T P^{-1} = \left( P^{-1} \right)^T P−1=(P−1)T,并且 ( y − x c ) T P − 1 ( x − x c ) = ( x − x c ) T P − 1 ( y − x c ) (y - x_c)^T P^{-1} (x - x_c) =(x - x_c)^T P^{-1} (y - x_c) (y−xc)TP−1(x−xc)=(x−xc)TP−1(y−xc)。
所以为了证明 LHS ≤ 1 \text{LHS} \leq 1 LHS≤1,我们只须要证明 ( y − x c ) T P − 1 ( x − x c ) ≤ 1 (y - x_c)^T P^{-1} (x - x_c) \leq 1 (y−xc)TP−1(x−xc)≤1 即可。
因为 P ≻ 0 P \succ 0 P≻0 并且 P P P 是对称的,我们有 P − 1 P^{-1} P−1 也是正定对称的。
那么,怎么证明 P − 1 P^{-1} P−1 也是正定对称的呢?
首先,因为 P P P 是对称的,所以 P − 1 P^{-1} P−1 也是对称的。下面我们去证明 P − 1 P^{-1} P−1 是正定的,即对于 ∀ x ∈ R n \forall x \in \mathbb{R}^n ∀x∈Rn 且 x ≠ 0 x \neq \mathbf{0} x=0,我们须要证明 x T P − 1 x > 0 x^T P^{-1} x > 0 xTP−1x>0。因为 P P P 是可逆的,所以对于 x x x,我们能找到一个向量 y ∈ R n y \in \mathbb{R}^n y∈Rn,使得 x = P y x = P y x=Py。因为 x ≠ 0 x \neq \mathbf{0} x=0,所以 y ≠ 0 y \neq \mathbf{0} y=0。 于是, x T P − 1 x = y T P T P − 1 P y = y T P y > 0 \displaystyle x^T P^{-1} x = y^T P^T P^{-1} P y = y^T P y > 0 xTP−1x=yTPTP−1Py=yTPy>0。从而 P − 1 P^{-1} P−1 也是正定的。
证明了 P − 1 P^{-1} P−1 是正定的,我们可以把 P − 1 P^{-1} P−1 写成 P − 1 = U Λ U T P^{-1} =U \Lambda U^T P−1=UΛUT,其中 U U U 是正交化(orthogonal)矩阵,即 U T U = I U^T U = I UTU=I。 Λ \Lambda Λ 是一个对角矩阵,且对角线的元素均大于 0。 从而我们可以定义 ( P − 1 ) 1 / 2 = U Λ 1 / 2 U T (P^{-1})^{1/2} = U \Lambda^{1/2} U^T (P−1)1/2=UΛ1/2UT。
现在我们来看 ( y − x c ) T P − 1 ( x − x c ) (y - x_c)^T P^{-1} (x - x_c) (y−xc)TP−1(x−xc),
( y − x c ) T P − 1 ( x − x c ) = ( y − x c ) T ( P − 1 ) 1 / 2 ( P − 1 ) 1 / 2 ( x − x c ) (y - x_c)^T P^{-1} (x - x_c) =(y - x_c)^T (P^{-1})^{1/2} (P^{-1})^{1/2} (x - x_c) (y−xc)TP−1(x−xc)=(y−xc)T(P−1)1/2(P−1)1/2(x−xc)。
根据 Cauch-Schwartz 不等式, ∣ ∣ x y ∣ ∣ 2 ≤ ∣ ∣ x ∣ ∣ 2 ∣ ∣ y ∣ ∣ 2 \vert \vert xy \vert \vert^2 \leq \vert \vert x \vert \vert^2 \vert \vert y \vert \vert^2 ∣∣xy∣∣2≤∣∣x∣∣2∣∣y∣∣2
我们有, ∣ ∣ [ ( y − x c ) T ( P − 1 ) 1 / 2 ] [ ( P − 1 ) 1 / 2 ( x − x c ) ] ∣ ∣ 2 ≤ ∣ ∣ ( P − 1 ) 1 / 2 ( y − x c ) ∣ ∣ 2 ⋅ ∣ ∣ ( P − 1 ) 1 / 2 ( x − x c ) ∣ ∣ 2 ≤ 1 ⋅ 1 = 1 \bigg| \bigg| \left[ (y - x_c)^T (P^{-1})^{1/2} \right] \left[ (P^{-1})^{1/2} (x - x_c) \right] \bigg| \bigg|^2 \\ \leq || (P^{-1})^{1/2} (y - x_c)||^2 \cdot || (P^{-1})^{1/2} (x - x_c) ||^2 \\ \leq 1 \cdot 1 = 1 [(y−xc)T(P−1)1/2][(P−1)1/2(x−xc)] 2≤∣∣(P−1)1/2(y−xc)∣∣2⋅∣∣(P−1)1/2(x−xc)∣∣2≤1⋅1=1
其中最后一个不等式来自于 x , y ∈ E x, y \in \mathscr{E} x,y∈E,即
( x − x c ) T P − 1 ( x − x c ) ≤ 1 , ( y − x c ) T P − 1 ( y − x c ) ≤ 1 (x - x_c)^T P^{-1} (x - x_c) \leq 1, \\ (y - x_c)^T P^{-1} (y - x_c) \leq 1 (x−xc)TP−1(x−xc)≤1,(y−xc)TP−1(y−xc)≤1.
这样我们就证明了对任意 0 ≤ θ ≤ 1 0 \leq \theta \leq 1 0≤θ≤1, θ x + ( 1 − θ ) y \theta x + (1 - \theta) y θx+(1−θ)y 也属于集合 E \mathscr{E} E。
于是,我们就从数学上证明了椭圆集合是一个凸集合。
从 norm 的角度去看 ellipsoid
下面,我们来看如何从 norm 的角度去看椭圆。
如果 || ⋅ \cdot ⋅ || 是 R n \mathbb{R}^n Rn 上的一个 norm,那么对应于 || ⋅ \cdot ⋅ || 的 norm ball 定义为集合 { x ∣ ∣ ∣ x − x c ∣ ∣ < = r } \{x \vert \hspace{2mm} ||x - x_c|| <= r \} {x∣∣∣x−xc∣∣<=r}。其中 x c x_c xc 称为 norm ball 的中心, r r r 称为 norm ball 的半径。
我们可以证明 norm ball 是一个凸集合。
对于不熟悉 norm 定义的读者,我们先来快速回顾一下 norm 的定义。
如果 ∣ ∣ ⋅ ∣ ∣ || \cdot || ∣∣⋅∣∣ 满足下面三个性质,那么 ∣ ∣ ⋅ ∣ ∣ || \cdot || ∣∣⋅∣∣ 就称为 norm。
- 对于任意的 x ∈ R n x \in \mathbb{R^n} x∈Rn, ∣ ∣ x ∣ ∣ ≥ 0 || x || \geq 0 ∣∣x∣∣≥0, ∣ ∣ x ∣ ∣ = 0 ||x || = 0 ∣∣x∣∣=0 当且仅当 x = 0 x = 0 x=0.
- ∣ ∣ c x ∣ ∣ = c ⋅ ∣ ∣ x ∣ ∣ || c x || = c \cdot ||x|| ∣∣cx∣∣=c⋅∣∣x∣∣,对于任意 c ∈ R , c > 0 c \in R, c > 0 c∈R,c>0.
- 三角不等式,即 ∣ ∣ x + y ∣ ∣ ≤ ∣ ∣ x ∣ ∣ + ∣ ∣ y ∣ ∣ || x + y || \leq ||x|| + || y || ∣∣x+y∣∣≤∣∣x∣∣+∣∣y∣∣.
于是,对于 norm ball, 即集合 C = { x ∣ ∣ ∣ x − x c ∣ ∣ < = r } C = \{x \vert \hspace{2mm} ||x - x_c|| <= r \} C={x∣∣∣x−xc∣∣<=r},如果有 x , y ∈ C x, \, y \in C x,y∈C,以及 0 ≤ θ ≤ 1 0 \leq \theta \leq 1 0≤θ≤1,那么
∣ ∣ θ x + ( 1 − θ ) y − x c ∣ ∣ = ∣ ∣ θ ( x − x c ) + ( 1 − θ ) ( y − x c ) ∣ ∣ ≤ ∣ ∣ θ ( x − x c ) ∣ ∣ + ∣ ∣ ( 1 − θ ) ( y − x c ) ∣ ∣ ≤ θ r + ( 1 − θ ) r = r \begin{aligned}|| \theta x + (1 - \theta) y - x_c || &= || \theta(x - x_c) + \\ & (1 - \theta) (y - x_c) || \\ & \leq || \theta (x - x_c) || + ||(1 - \theta) (y - x_c)|| \\ & \leq \theta r + (1 - \theta)r = r \end{aligned} ∣∣θx+(1−θ)y−xc∣∣=∣∣θ(x−xc)+(1−θ)(y−xc)∣∣≤∣∣θ(x−xc)∣∣+∣∣(1−θ)(y−xc)∣∣≤θr+(1−θ)r=r
从而 θ x + ( 1 − θ ) y \theta x + (1 - \theta) y θx+(1−θ)y 也属于集合 C C C。即 C C C 是一个 convex set。
为了从 norm 的角度去看椭圆这个集合,我们先来看 Mahalanobis norm。
Mahalanobis norm
我们定义 Mahalanobis norm 为 ∣ ∣ x ∣ ∣ p = x T P x ||x||_p = \sqrt{x^T P x} ∣∣x∣∣p=xTPx。其中 x ∈ R n x \in \mathbb{R}^n x∈Rn, P P P 是对称的,且 P ≻ 0 P \succ 0 P≻0,即 P P P 是对称正定的。
我们先证明 Mahalanobis norm 是一个 norm。
- 如果 ∣ ∣ x ∣ ∣ p = 0 ||x||_p = 0 ∣∣x∣∣p=0,那么 x T P x = 0 x^T P x = 0 xTPx=0。而根据 P ≻ 0 P \succ 0 P≻0,当 x T P x = 0 x^T P x = 0 xTPx=0 时,我们有 x = 0 x = 0 x=0.
- 对于任意 c ∈ R , c > 0 c \in R, c > 0 c∈R,c>0, ∣ ∣ c x ∣ ∣ p = c x T P x = c ∣ ∣ x ∣ ∣ p ||c x||_p =c \sqrt{x^T P x} = c ||x||_p ∣∣cx∣∣p=cxTPx=c∣∣x∣∣p。
- 三角不等式。根据 Mahalanobis norm 的定义,我们有 ∣ ∣ x + y ∣ ∣ p 2 = ( x + y ) T P ( x + y ) = x T P x + y T P y + x T P y + y T P x = x T P x + y T P y + 2 x T P y || x + y||_p^2 = (x + y)^T P (x + y) =x^TPx + y^TPy + x^TPy + y^TPx = x^TPx + y^TPy +2x^TPy ∣∣x+y∣∣p2=(x+y)TP(x+y)=xTPx+yTPy+xTPy+yTPx=xTPx+yTPy+2xTPy. 因为 P P P 是对称且正定的,所以我们可以将 P P P 写成 P = U Λ U T P =U\Lambda U^T P=UΛUT. 其中 U U U 是正交化矩阵,即 U T U = I U^TU = I UTU=I, Λ \Lambda Λ 是对角矩阵,对角线上的元素都是正的。类似于之前的讨论,我们可以定义 P 1 / 2 = U Λ 1 / 2 U T P^{1/2} = U \Lambda^{1/2} U^T P1/2=UΛ1/2UT. 从而,
∣ ∣ x + y ∣ ∣ p 2 = ∣ ∣ x ∣ ∣ p 2 + ∣ ∣ y ∣ ∣ p 2 + 2 x T P 1 / 2 P 1 / 2 y ≤ ∣ ∣ x ∣ ∣ p 2 + ∣ ∣ y ∣ ∣ p 2 + 2 ∣ x T P 1 / 2 P 1 / 2 y ∣ ≤ ∣ ∣ x ∣ ∣ p 2 + ∣ ∣ y ∣ ∣ p 2 + 2 ∣ ∣ P 1 / 2 x ∣ ∣ 2 ⋅ ∣ ∣ P 1 / 2 y ∣ ∣ 2 = ∣ ∣ x ∣ ∣ p 2 + ∣ ∣ y ∣ ∣ p 2 + 2 ∣ ∣ x ∣ ∣ p ⋅ ∣ ∣ y ∣ ∣ p \begin{aligned}||x + y||_p^2 &= ||x||_p^2 + ||y||_p^2 + 2 x^T P^{1/2} P^{1/2}y \\ & \leq ||x||_p^2 + ||y||_p^2 + 2 | x^T P^{1/2} P^{1/2}y | \\ & \leq ||x||_p^2 + ||y||_p^2 + 2 ||P^{1/2}x||_{2} \cdot ||P^{1/2}y||_{2} \\ &= ||x||_p^2 + ||y||_p^2 + 2 ||x||_p \cdot ||y||_p \end{aligned} ∣∣x+y∣∣p2=∣∣x∣∣p2+∣∣y∣∣p2+2xTP1/2P1/2y≤∣∣x∣∣p2+∣∣y∣∣p2+2∣xTP1/2P1/2y∣≤∣∣x∣∣p2+∣∣y∣∣p2+2∣∣P1/2x∣∣2⋅∣∣P1/2y∣∣2=∣∣x∣∣p2+∣∣y∣∣p2+2∣∣x∣∣p⋅∣∣y∣∣p
所以三角不等式成立。
这里倒数第二步的不等式用到了 Cauch-Schwartz 定理。
我们证明了 Mahalanobis norm 确实是一个 norm。那么它与椭圆有什么关系呢?
椭圆是一个 norm ball
实际上,椭圆就是在 Mahalanobis norm 下的一个 norm ball。因为在 Mahalanobis norm 下,一个 norm ball 就定义为:
C = { x ∣ ∣ ∣ x − x c ∣ ∣ p ≤ r } C = \{x \vert \hspace{2mm} ||x - x_c||_p \leq r \} C={x∣∣∣x−xc∣∣p≤r} ,
即 C = { x ∣ ( x − x c ) T P ( x − x c ) ≤ r } C = \{x \vert \hspace{2mm} \sqrt{(x - x_c)^T P (x - x_c) } \leq r \} C={x∣(x−xc)TP(x−xc)≤r}。
取 r = 1 r = 1 r=1,我们就得到了椭圆的定义。所以,椭圆就是在 Mahalanobis norm 下的一个 norm ball。而我们之前证明了 Mahalanobis norm 是一个 norm,并且任意 norm 上的 norm ball 都是一个凸集合。自然得,椭圆也是凸集合。
从仿射的角度看椭圆
参考文献
Convex optimization, Chapter 1, Stephen Boyd, Lieven Vandenberghe, Cambridge University Press, (2004)
更多推荐

所有评论(0)