1. 程式人生 > >【Convex Optimization (by Boyd) 學習筆記】Chapter 2 - Convex sets(1) 仿射集&凸集

【Convex Optimization (by Boyd) 學習筆記】Chapter 2 - Convex sets(1) 仿射集&凸集

I. 仿射凸集(Affine and convex sets)

1. 線與線段

假設\(R^n\)空間內兩點\(x_1,x_2\, (x_1≠x_2)\),那麼\(y=\theta x_1+(1-\theta)x_2, \theta∈R\)表示從x1到x2的線。而當\(0≤\theta≤1\)時,表示x1到x2的線段。

image.png

2.仿射集

  • 仿射集(Affine sets) 定義:

    假設有一個集合\(C∈R^N\),如果通過集合C中任意兩個不同點之間的直線 (上的任何點) 仍在集合C中,那麼稱集合C是仿射的;
    也就是說\(\forall x_1,x_2∈R,\theta∈R\)

    ,有\(\theta x_1+(1-\theta)x_2∈C\)

推論:

如果\(C\)是一個仿射集,且\(x_1,...,x_n∈C,\theta_1+...+\theta_k=1\),那麼點\(\theta_1x_1+...+\theta_kx_k\)也屬於\(C\)

  • 仿射包(Affine Hull)
    仿射集\(C\)中各個點之間的組合的集合稱為\(C\)affine hull,用\(aff \, \, C\)表示且有:
    \[aff \,\, C=\{\theta_1x_1+...+\theta_kx_k|x_1,...,x_k∈C,\theta_1+...=\theta_k=1\}\]

仿射包是包含仿射集\(C\)的最小仿射集,也就是說對於任何滿足\(C\subseteq{S}\)的仿射集S,都有\(aff \,\,C\subseteq S\)

3. 仿射維度(Affine Dimension)&相對內部(Relative Interior)

  • 仿射維度

    將仿射包的維度定義為仿射集\(C\)的維度。

  • 相對內部

    \(relint \,\,C\)表示,簡單理解就是閉仿射包(closure C, 用\(cl\,\,C\)表示) 的內部即為相對內部。即需要滿足如下:
    \[relint\,\,C=\{x∈C|B(x,r)\bigcap aff \,\,C\subseteq{C} \,\,\,\,for \,\,some\,\,r>0\}\]


    上面等式中的\(B(x,r)=\{y| \|y-x\|≤r\}\)表示相對邊界(relative boundry),用\(cl\,\,C /\ relint\,\,C\)表示,x可以理解為球的中心點,r表示半徑

4. 凸集(Convex sets)

凸集定義:

如果集合\(C\)中的任意兩點之間的線段(上的所有點)在\(C\)上,也就是說如果\(\forall{x_1,x_2∈C},0≤\theta≤1\),都有\(\theta x_1+(1-\theta)x_2∈C\),那麼集合\(C\)為凸集。

注意要區分凸集仿射集定義,前者是線段,後者是直線

affine hull類似,凸集也有convex hull (conv C) 凸包,其定義如下:

\[conv\,\,C=\{\theta_1x_1+...+\theta_kx_k|x_i∈C,\theta_i≥0,i=1,...,k,\theta_1+...=\theta_k=1\}\]

image.png

5. 圓錐(Cones)&凸錐(Convex cones)

  • Cone的定義

    一個集合\(C\)中任意元素\(x\),如果滿足\(\theta x∈C,\theta≥0\),則稱\(C\)cone或者nonnegative homogeneous(非負齊次)

  • Convex Cone定義

    如果一個集合\(C\)是凸的,而且是一個cone,也就是說如果\(\forall{x_1,x_2∈C},\theta_1,\theta_2≥0\),都有\[\theta_1 x_1+\theta_2 x_2∈C \tag{5.1}\],那麼我們稱\(C\)為凸錐(convex cone)

由上面公式(5.1)可知該形式的點在一個以0為頂點,經過\(x_1,x_2\)的扇形區域。如下圖示

image.png

  • conic hull(錐包) 定義

    集合\(C\)的conic hull是指所有點的conic combination的集合,即
    \[\{\theta_1x_1+...+\theta_kx_k|x_i∈C,\theta_i≥0,i=1,...,k\}\]

6. 小結

在開始下一屆之前有必要對本節內容做一下總結,以便有更清晰的理解。總結參考仿射集、凸集、仿射包、凸包

  • 仿射集(affine set)、凸集(convex set)
    這兩個概念是對集合本身性質的描述,先看他們的定義:
    集合S是仿射\(\Leftrightarrow\) 對任意\(x,y\in S, \theta \in R\),有\(\theta x+(1-\theta )y\in S\)
    集合S是\(\Leftrightarrow\) 對任意\(x,y\in S, 0\leq \theta \leq 1\),有\(\theta x+(1-\theta )y\in S\)
  • 仿射包(affine hull)、凸包(convex hull)
    這兩個概念是對已有集合生成新的集合的方法,同樣看定義:
    集合S的仿射包\(aff\,\,S = \left\{ \sum_{i}^{n}{\theta_{i} x_{i} } | x_{i}\in S, \sum_{i}^{n}{\theta_{i}}=1 \right\}\)
    集合S的凸包\(conv\,\,S = \left\{ \sum_{i}^{n}{\theta_{i} x_{i} } | x_{i}\in S, \theta _{i}\geq 0 , \sum_{i}^{n}{\theta_{i}}=1 \right\}\)

根據上面的總結可以知道相對於凸集的定義,仿射集要求更嚴苛,因為凸集只需要是線段即可(因為\(0\leq \theta \leq 1\)),而仿射集需要是直線。注意這裡只是說仿射集要求更加嚴苛,但是條件更嚴苛並不等同於仿射集就是凸集的子集。

為了更好地理解他們之間的關係下面舉一個例子,以一維空間為例:

假設這條直線用\(L:y=0\)表示。我們可以知道\(L\)即為仿射集,因為該直線上任意兩點組成的直線依舊在\(L\)上。

那麼凸集呢?我們可以看到下圖中\(L_1,L_2,L\)都是凸集。

此時你還會討論仿射集和凸集哪一個是是子集的問題嗎?因為誰也不是誰的子集,但是以上面的例子為例,如果你只取其中的一個凸集\(L_2\),那麼很顯然凸集\(L_2\)是仿射集\(L\)的子集。但是在沒有特定說明的前提下討論誰是誰的子集是不準確的。

另外需要知道的是仿射集其實也是凸集,但是凸集不一定是仿射集。(這裡面有概念之間的巢狀,需要好好理解定義)

另外子集的問題,其實準確的說是在討論仿射包和凸包之間的關係,由上面的例子可以知道包含所有仿射集的集合是包含所有凸集的集合的子集,因為一個仿射集是一個凸集。



MARSGGBO原創





2018-12-25