一、范数
1.1 向量范数
定义2.1(范数)
称一个从向量空间 R n \mathbb{R}^n Rn到实数域 R \mathbb{R} R的非负函数|| ⋅ \cdot ⋅||为范数,如果它满足:
- 正定性:对于所有的 v ∈ R v\in\mathbb{R} v∈R,有 ∥ v ∥ ≥ 0 \Vert v\Vert\ge 0 ∥v∥≥0,且 ∥ v ∥ = 0 \Vert v\Vert=0 ∥v∥=0当且仅当 v = 0 v=0 v=0
- 齐次性:对于所有的 v ∈ R v\in\mathbb{R} v∈R和 α ∈ R \alpha\in\mathbb{R} α∈R,有 ∥ α v ∥ = ∣ α ∣ ∥ v ∥ \Vert\alpha v\Vert=|\alpha|\Vert v\Vert ∥αv∥=∣α∣∥v∥
- 三角不等式:对于所有的 v , w ∈ R v,w\in\mathbb{R} v,w∈R,有 ∥ v + w ∥ ≤ ∥ v ∥ + ∥ w ∥ \Vert v+w\Vert\le\Vert v\Vert+\Vert w\Vert ∥v+w∥≤∥v∥+∥w∥
最常用的向量范数为 ℓ p \ell_p ℓp范数( p ≥ 1 p\ge1 p≥1):
∥ v ∥ p = ( ∣ v 1 ∣ p + ∣ v 2 ∣ p + ⋯ + ∣ v n ∣ p ) 1 p \Vert v\Vert_p=(|v_1|^p+|v_2|^p+\dots+|v_n|^p)^{1\over p} ∥v∥p=(∣v1∣p+∣v2∣p+⋯+∣vn∣p)p1
当 p = ∞ p=\infty p=∞时, ℓ ∞ \ell_{\infty} ℓ∞范数定义为:
∥ v ∥ ∞ = max i ∣ v i ∣ \Vert v\Vert_{\infty}=\max\limits_{i}|v_i| ∥v∥∞=imax∣vi∣
注意,在不引起歧义的情况下,有时候省略 ℓ 2 \ell_2 ℓ2范数的角标,直接记为 ∥ ⋅ ∥ \Vert\cdot\Vert ∥⋅∥。在最优化问题算法构造和分析中,也常常遇到由正定矩阵 A A A诱导的范数,即 ∥ x ∥ A = def x T A x \Vert x\Vert_A\overset{\text{def}}{=}\sqrt{x^TAx} ∥x∥A=defxTAx。
对向量的 ℓ 2 \ell_2 ℓ2范数,我们有最常用的柯西不等式:
命题2.1(柯西不等式)
设 a , b ∈ R n a,b\in\mathbb{R}^n a,b∈Rn,则:
∣ a T b ∣ ≤ ∥ a ∥ 2 ∥ b ∥ 2 |a^Tb|\le\Vert a\Vert_2\Vert b\Vert_2 ∣aTb∣≤∥a∥2∥b∥2
等号成立当且仅当a与b线性相关
1.2 矩阵范数
和向量范数相似,矩阵范数是定义在矩阵空间上的非负函数,并且满足正定性、齐次性和三角不等式。向量的 ℓ p \ell_p ℓp范数可以比较容易地推广到矩阵的 ℓ p \ell_p ℓp范数,常用 p = 1 , 2 p=1,2 p=1,2的情形。当 p = 1 p=1 p=1时,矩阵 A ∈ R m × n A\in\mathbb{R}^{m\times n} A∈Rm×n的 ℓ 1 \ell_1 ℓ1范数定义为:
∥ A ∥ 1 = ∑ i = 1 m ∑ j = 1 n ∣ a i j ∣ \Vert A\Vert_1=\sum\limits_{i=1}^{m}\sum\limits_{j=1}^{n}|a_{ij}| ∥A∥1=i=1∑mj=1∑n∣aij∣
即 ∥ A ∥ 1 \Vert A\Vert_1 ∥A∥1为 A A A中所有元素绝对值的和。当p=2时,此时得到的是矩阵的Frobenius范数(下称 F F F 范数),记为 ∥ A ∥ F \Vert A\Vert_F ∥A∥F。它可以看成是向量的 ℓ 2 \ell_2 ℓ2范数的推广,即所有元素平方和开根号:
∥ A ∥ F = T r ( A A T ) = ∑ i , j a i j 2 ( 2.1.1 ) \Vert A\Vert_F=\sqrt{Tr(AA^T)}=\sqrt{\sum\limits_{i,j}a_{ij}^2} \quad(2.1.1) ∥A∥F=Tr(AAT)=i,j∑aij2(2.1.1)
这里, T r ( X ) Tr(X) Tr(X)表示方阵 X X X的迹。矩阵的 F F F范数具有正交不变性,即对于任意的正交矩阵 U ∈ R m × m , V ∈ R n × n U\in\mathbb{R}^{m\times m},V\in\mathbb{R}^{n\times n} U∈Rm×m,V∈Rn×n,我们有:
∥ U A V ∥ F 2 = T r ( U A V V T A T U T ) = T r ( U A A T U T ) = T r ( A A T U T U ) = T r ( A A T ) = ∥ A ∥ F 2 \Vert UAV\Vert^2_F=Tr(UAVV^TA^TU^T)=Tr(UAA^TU^T)=Tr(AA^TU^TU)=Tr(AA^T)=\Vert A\Vert^2_F ∥UAV∥F2=Tr(UAVVTATUT)=Tr(UAATUT)=Tr(AATUTU)=Tr(AAT)=∥A∥F2
其中第三个等号成立是因为 T r ( A B ) = T r ( B A ) Tr(AB)=Tr(BA) Tr(AB)=Tr(BA)
除了从向量范数直接推广以外,矩阵范数还可以由向量范数诱导出来,一般称这种范数为算子范数。给定矩阵
1.3 矩阵内积
对于矩阵空间 R m × n \mathbb{R}^{m\times n} Rm×n的两个矩阵A和B,除了定义它们各自的范数以外,我们还可以定义它们之间的内积。范数一般用来衡量矩阵的模的大小,而内积一般用来表征两个矩阵(或其张成的空间?)之间的夹角。这里,我们介绍一种常用的内积——Frobenius内积。 m × n m\times n m×n矩阵A和B的Frobenius内积定义为:
⟨ A , B ⟩ = d e f T r ( A B T ) = ∑ i = 1 m ∑ j = 1 n a i j b i j \langle A,B\rangle\overset{def}{=}Tr(AB^T)=\sum\limits_{i=1}^m\sum\limits_{j=1}^na_{ij}b_{ij} ⟨A,B⟩=defTr(ABT)=i=1∑mj=1∑naijbij
易知其为两个矩阵逐分量相乘的和,因而满足内积的定义。当A=B时, ⟨ A , B ⟩ \langle A,B\rangle ⟨A,B⟩等于矩阵A的F范数的平方。
和向量范数相似,我们也有矩阵范数对应的柯西不等式:
二、导数
2.1 梯度与海瑟矩阵
定义2.2(梯度)
给定函数 f : R n → R f:\mathbb{R}^n\to\mathbb{R} f:Rn→R,且点 f f f在点 x x x的一个邻域内有意义,若存在向量 g ∈ R n g\in\mathbb{R}^n g∈Rn满足:
lim p → 0 f ( x + p ) − f ( x ) − g T p ∥ p ∥ = 0 ( 2.2.1 ) \lim\limits_{p\to0}\frac{f(x+p)-f(x)-g^Tp}{\Vert p\Vert}=0\quad\quad(2.2.1) p→0lim∥p∥f(x+p)−f(x)−gTp=0(2.2.1)
其中 ∥ ⋅ ∥ \Vert\cdot\Vert ∥⋅∥是任意的向量范数,就称 f f f在点 x x x处可微。此时 g g g称为 f f f在点 x x x处的梯度,记作 ∇ f ( x ) \nabla f(x) ∇f(x)。如果对区域 D D D上的每一个点 x x x都有 ∇ f ( x ) \nabla f(x) ∇f(x)存在,则称 f f f在 D D D上可微。
若 f f f在点 x x x处的梯度存在,在(2.2.1)式中令 p = ϵ e i p=\epsilon e_i p=ϵei, e i e_i ei是第 i i i个分量为1的单位向量,可知 ∇ f ( x ) \nabla f(x) ∇f(x)的第 i i i个分量为 ∂ f ( x ) ∂ x i \frac{\partial f(x)}{\partial x_i} ∂xi∂f(x)。因此,
∇ f ( x ) = [ ∂ f ( x ) ∂ x 1 , ∂ f ( x ) ∂ x 2 , … , ∂ f ( x ) ∂ x n T ] \nabla f(x)=[\frac{\partial f(x)}{\partial x_1},\frac{\partial f(x)}{\partial x_2},\dots,\frac{\partial f(x)}{\partial x_n}^T] ∇f(x)=[∂x1∂f(x),∂x2∂f(x),…,∂xn∂f(x)T]
如果只关心对一部分变量的梯度,可以通过对 ∇ \nabla ∇加下标来表示。例如, ∇ x f ( x , y ) \nabla_xf(x,y) ∇xf(x,y)表示将 y y y视为常数时 f f f关于 x x x的梯度。
对应于一元函数的二阶导数,对于多元函数我们可以定义其海瑟矩阵:
定义2.3(海瑟矩阵)
如果函数 f ( x ) : R n → R f(x):\mathbb{R}^n\to\mathbb{R} f(x):Rn→R在点 x x x处的二阶偏导数 ∂ 2 f ( x ) ∂ x i ∂ x j i , j = 1 , 2 , … , n \frac{\partial^2f(x)}{\partial x_i\partial x_j} \quad i,j=1,2,\dots,n ∂xi∂xj∂2f(x)i,j=1,2,…,n都存在,则:
∇ 2 f ( x ) = [ ∂ 2 f ∂ x 1 2 ∂ 2 f ∂ x 1 ∂ x 2 … ∂ 2 f ∂ x 1 ∂ x n ∂ 2 f ∂ x 2 ∂ x 1 ∂ 2 f ∂ x 2 2 … ∂ 2 f ∂ x 2 ∂ x n ⋮ ⋮ ⋱ ⋮ ∂ 2 f ∂ x n ∂ x 1 ∂ 2 f ∂ x n ∂ x 2 … ∂ 2 f ∂ x n 2 ] \nabla^2f(x)=\begin {bmatrix} {\partial ^2f \over \partial x_1^2}& {\partial ^2f \over \partial x_1 \partial x_2}& \dots & {\partial ^2f \over \partial x_1 \partial x_n} \\ {\partial ^2f \over \partial x_2 \partial x_1}& {\partial ^2f \over \partial x_2^2}& \dots & {\partial ^2f \over \partial x_2 \partial x_n}\\ \vdots & \vdots &\ddots & \vdots \\ {\partial ^2f \over \partial x_n \partial x_1}& {\partial ^2f \over \partial x_n \partial x_2} & \dots & {\partial ^2f \over \partial x_n^2} \end {bmatrix} ∇2f(x)=⎣⎢⎢⎢⎢⎢⎡∂x12∂2f∂x2∂x1∂2f⋮∂xn∂x1∂2f∂x1∂x2∂2f∂x22∂2f⋮∂xn∂x2∂2f……⋱…∂x1∂xn∂2f∂x2∂xn∂2f⋮∂xn2∂2f⎦⎥⎥⎥⎥⎥⎤
称为 f f f在点 x x x处的海瑟矩阵。
当 ∇ 2 f ( x ) \nabla^2f(x) ∇2f(x)在区域 D D D上的每个点 x x x处都存在时,称 f f f在 D D D上二阶可微。若 ∇ 2 f ( x ) \nabla^2f(x) ∇2f(x)在 D D D上还连续,则称 f f f在 D D D上二阶连续可微,可以证明此时海瑟矩阵是一个对称矩阵。
当 f : R n → R m f:\mathbb{R}^n\to\mathbb{R}^m f:Rn→Rm是向量值函数时,我们可以定义它的雅克比矩阵 J ( x ) ∈ R n × m J(x)\in\mathbb{R}^{n\times m} J(x)∈Rn×m,它的第 i i i行是分量 f i ( x ) f_i(x) fi(x)梯度的转置,即:
J ( x ) = [ ∂ f 1 ∂ x 1 ∂ f 1 ∂ x 2 … ∂ f 1 ∂ x n ∂ f 2 ∂ x 1 ∂ f 2 ∂ x 2 … ∂ f 2 ∂ x n ⋮ ⋮ ⋱ ⋮ ∂ f m ∂ x 1 ∂ f m ∂ x 2 … ∂ f m ∂ x n ] J(x)=\begin {bmatrix} {\partial f_1 \over \partial x_1}& {\partial f_1 \over \partial x_2}& \dots & {\partial f_1 \over \partial x_n} \\ {\partial f_2 \over \partial x_1}& {\partial f_2 \over \partial x_2}& \dots & {\partial f_2 \over \partial x_n}\\ \vdots & \vdots &\ddots & \vdots \\ {\partial f_m \over \partial x_1}& {\partial f_m \over \partial x_2} & \dots & {\partial f_m \over \partial x_n} \end {bmatrix} J(x)=⎣⎢⎢⎢⎢⎡∂x1∂f1∂x1∂f2⋮∂x1∂fm∂x2∂f1∂x2∂f2⋮∂x2∂fm……⋱…∂xn∂f1∂xn∂f2⋮∂xn∂fm⎦⎥⎥⎥⎥⎤
注意,梯度 ∇ f ( x ) \nabla f(x) ∇f(x)的雅克比矩阵就是 f ( x ) f(x) f(x)的海瑟矩阵。
多元函数的泰勒展开如下:
定理2.1:
设 f : R n → R f:\mathbb{R}^n\to\mathbb{R} f:Rn→R是连续可微的, p ∈ R n p\in\mathbb{R}^n p∈Rn为向量,那么:
f ( x + p ) = f ( x ) + ∇ f ( x + t p ) T p f(x+p)=f(x)+\nabla f(x+tp)^Tp f(x+p)=f(x)+∇f(x+tp)Tp
其中 0 < t < 1 0<t<1 0<t<1。进一步地,如果 f f f是二阶连续可微的,则:
∇ f ( x + p ) = ∇ f ( x ) + ∫ 0 1 ∇ 2 f ( x + t p ) p d t \nabla f(x+p)=\nabla f(x)+\int_0^1\nabla^2f(x+tp)p dt ∇f(x+p)=∇f(x)+∫01∇2f(x+tp)pdt
f ( x + p ) = f ( x ) + ∇ f ( x ) T p + 1 2 p T ∇ 2 f ( x + t p ) p f(x+p)=f(x)+\nabla f(x)^Tp+\frac{1}{2}p^T\nabla^2f(x+tp)p f(x+p)=f(x)+∇f(x)Tp+21pT∇2f(x+tp)p
其中 0 < t < 1 0<t<1 0<t<1
最后我们介绍一类特殊的可微函数——梯度利普希茨(Lipschitz)连续的函数。该类函数在很多优化算法收敛证明中起着关键作用。
定义2.4(梯度利普希茨(Lipschitz)连续)
给定可微函数 f f f,若存在 L > 0 L>0 L>0,对任意的 x , y ∈ d o m f x,y\in dom f x,y∈domf有:
∥ ∇ f ( x ) − ∇ f ( y ) ∥ ≤ L ∥ x − y ∥ \Vert\nabla f(x)-\nabla f(y)\Vert\le L\Vert x-y\Vert ∥∇f(x)−∇f(y)∥≤L∥x−y∥
则称 f f f是梯度利普希茨连续的,相应利普希茨常数为 L L L,有时也简记为梯度 L L L-利普希茨连续或 L L L-光滑。
梯度利普希茨连续表明 ∇ f ( x ) \nabla f(x) ∇f(x)的变化可以被自变量 x x x的变化所控制,满足该性质的函数具有很多很好的性质,一个重要的性质是使其具有二次上界。
引理2.1(二次上界)
设可微函数 f ( x ) f(x) f(x)的定义域 d o m f = R n dom f=\mathbb{R}^n domf=Rn,且为梯度 L − L- L−利普希茨连续的,则函数 f ( x ) f(x) f(x)有二次上界:
f ( y ) ≤ f ( x ) + ∇ f ( x ) T ( y − x ) + L 2 ∥ y − x ∥ 2 , ∀ x , y ∈ d o m f ( 2.2.3 ) f(y)\le f(x)+\nabla f(x)^T(y-x)+\frac{L}{2}\Vert y-x\Vert^2,\forall x,y\in dom f\quad(2.2.3) f(y)≤f(x)+∇f(x)T(y−x)+2L∥y−x∥2,∀x,y∈domf(2.2.3)
引理2.1实际上指的是 f ( x ) f(x) f(x)可被一个二次函数上界所控制,即要求 f ( x ) f(x) f(x)的增长速度不超过二次。实际上,该引理对 f ( x ) f(x) f(x)定义域的要求可减弱为 d o m f dom f domf是凸集(见定义2.13),此条件的作用是保证证明中的 g ( t ) g(t) g(t)当 t ∈ [ 0 , 1 ] t\in[0,1] t∈[0,1]时是有定义的。
若 f f f是梯度利普西茨连续的,且有一个全局极小点 x ∗ x^* x∗,一个重要的推论就是我们能够利用二次上界(2.2.3)来估计 f ( x ) − f ( x ∗ ) f(x)-f(x^*) f(x)−f(x∗)的大小,其中 x x x可以是定义域中的任意一点。
推论2.1
设可微函数 f ( x ) f(x) f(x)的定义域为 R n \mathbb{R}^n Rn且存在一个全局极小点 x ∗ x^* x∗,若 f ( x ) f(x) f(x)为梯度 L L L-利普西茨连续的,则对任意的 x x x有:
1 2 L ∥ f ( x ) ∥ 2 ≤ f ( x ) − f ( x ∗ ) ( 2.2.5 ) \frac{1}{2L}\Vert f(x)\Vert^2\le f(x)-f(x^*)\quad(2.2.5) 2L1∥f(x)∥2≤f(x)−f(x∗)(2.2.5)
3 广义实值函数
数学分析课程中给出了函数的基本概念:函数是从向量空间 R n \mathbb{R}^n Rn到实数域 R \mathbb{R} R的映射。而在最优化领域,经常涉及对某个函数其中的一个变量取 inf(sup) \text{inf(sup)} inf(sup)操作,这导致函数的取值可能为无穷。为了能够更方便地描述优化问题,我们需要对函数的定义进行某种扩充。
定义 2.6 (广义实值函数)令 R ‾ = d e f R ∪ { ± ∞ } \overline{\mathbb{R}}\overset{def}{=}\mathbb{R}\cup\{\pm\infty\} R=defR∪{±∞}为广义实数空间,则映射 f : R n → R ‾ f:\mathbb{R}^n\to\overline{\mathbb{R}} f:Rn→R称为广义实值函数。
从广义实值函数的定义可以看出,其值域多了两个特殊的值
±
∞
\pm\infty
±∞
。和数学分析一样,我们规定:
− ∞ < a < + ∞ , ∀ a ∈ R -\infty<a<+\infty,\quad \forall a\in\mathbb{R} −∞<a<+∞,∀a∈R
以及
( + ∞ ) + ( + ∞ ) = + ∞ , + ∞ + a = + ∞ , ∀ a ∈ R (+\infty)+(+\infty)=+\infty,\quad+\infty+a=+\infty,\forall a \in \mathbb{R} (+∞)+(+∞)=+∞,+∞+a=+∞,∀a∈R
3.1 适当函数
适当函数是一类很重要的广义实值函数,很多最优化理论都是建立在
适当函数之上的.
定义 2.7 (适当函数)
给定广义实值函数 f f f 和非空集合 X \mathcal{X} X.如果存在 x ∈ X x\in\mathcal{X} x∈X 使得 f ( x ) < + ∞ f(x)<+\infty f(x)<+∞,并且对任意的 x ∈ X x\in\mathcal{X} x∈X,都有 f ( x ) > − ∞ f(x)>-\infty f(x)>−∞,那么称函数 f f f 关于集合 X \mathcal{X} X 是适当的.
概括来说,适当函数
f
f
f 的特点是“至少有一处取值不为正无穷”,以及
“处处取值不为负无穷”.对最优化问题
min
x
f
(
x
)
\min\limits_{x}f(x)
xminf(x),适当函数可以帮助去掉一些我们不感兴趣的函数,从而在一个比较合理的函数类中考虑最优化问题. 我们约定:在本书中若无特殊说明,定理中所讨论的函数均为适当函数.
对于适当函数 f f f,规定其定义域
dom f = { x ∣ f ( x ) < + ∞ } \text{dom} f=\{x|f(x)<+\infty\} domf={x∣f(x)<+∞}
正是因为适当函数的最小值不可能在函数值为无穷处取到,因此 dom f \text{dom} f domf的定义方式是自然的。
4 凸集
4.1 凸集的相关定义
对于 R n \mathbb{R}^n Rn中的两个点 x 1 ≠ x 2 x_1\ne x_2 x1=x2,形如:
y = θ x 1 + ( 1 − θ ) x 2 = x 2 + θ ( x 1 − x 2 ) y=\theta x_1+(1-\theta)x_2=x_2+\theta(x_1-x_2) y=θx1+(1−θ)x2=x2+θ(x1−x2)
的点形成了过点 x 1 x_1 x1和 x 2 x_2 x2的直线,当 0 ≤ θ ≤ 1 0\le\theta\le1 0≤θ≤1时,这样的点形成了连接点 x 1 x_1 x1与 x 2 x_2 x2的线段。
定义2.12
如果过集合 C C C中任意两点的直线都在 C C C内,则称 C C C为仿射集,即:
x 1 , x 2 ∈ C ⟹ θ x 1 + ( 1 − θ ) x 2 ∈ C , ∀ θ ∈ R x_1,x_2\in C\Longrightarrow\theta x_1+(1-\theta)x_2\in C,\forall\theta\in\mathbb{R} x1,x2∈C⟹θx1+(1−θ)x2∈C,∀θ∈R
线性方程组 A x = b Ax=b Ax=b的解集是仿射集(反之任何仿射集都可以表示成一个线性方程组的解集),证明如下:
首先用公式对问题进行表示:
C = { x ∣ A x = b } , A ∈ R m × n , b ∈ R m , x ∈ R n C=\{x|Ax=b\},A\in\mathbb{R}^{m\times n},b\in\mathbb{R}^m,x\in\mathbb{R}^n C={x∣Ax=b},A∈Rm×n,b∈Rm,x∈Rn
证明过程如下:
∀ x 1 , x 2 ∈ C , A x 1 = b , A x 2 = b , θ ∈ R A ( θ x 1 + ( 1 − θ ) x 2 ) = θ A x 1 + ( 1 − θ ) A x 2 = θ b + ( 1 − θ ) b = b ∴ ∀ θ ∈ R , x 1 + ( 1 − θ ) x 2 ∈ C \forall x_1,x_2\in C,Ax_1=b,Ax_2=b,\quad\theta\in\mathbb{R}\\A(\theta x_1+(1-\theta)x_2)=\theta Ax_1+(1-\theta)A x_2=\theta b+(1-\theta)b=b\\\therefore \forall\theta\in\mathbb{R},x_1+(1-\theta)x_2\in C ∀x1,x2∈C,Ax1=b,Ax2=b,θ∈RA(θx1+(1−θ)x2)=θAx1+(1−θ)Ax2=θb+(1−θ)b=b∴∀θ∈R,x1+(1−θ)x2∈C
从上面的证明就得到了任何一个线性方程组的解集一定是一个仿射集。
定义2.13
如果连接集合 C C C中任意两点的线段都在 C C C内,则称 C C C为凸集,即:
x 1 , x 2 ∈ C ⟹ θ x 1 + ( 1 − θ ) x 2 ∈ C , ∀ 0 ≤ θ ≤ 1 x_1,x_2\in C\Longrightarrow\theta x_1+(1-\theta)x_2\in C,\forall0\le\theta\le1 x1,x2∈C⟹θx1+(1−θ)x2∈C,∀0≤θ≤1
从仿射集的定义容易看出仿射集都是凸集。下面给出一些凸集和非凸集的例子:
例2.2 在图2.4中,(a)为凸集,(b)©为非凸集,其中©不包含部分边界点:
从凸集可以引出凸组合和凸包等概念.形如
x = θ 1 x 1 + θ 2 x 2 + ⋯ + θ k x k , θ 1 + θ 2 + ⋯ + θ k = 1 , θ i ≥ 0 , i = 1 , 2 , … , k x=\theta_1x_1+\theta_2x_2+\cdots+\theta_kx_k,\\\theta_1+\theta_2+\cdots+\theta_k=1,\quad \theta_i\ge0,i=1,2,\dots,k x=θ1x1+θ2x2+⋯+θkxk,θ1+θ2+⋯+θk=1,θi≥0,i=1,2,…,k
的点称为 x 1 , x 2 , ⋯ , x k x_1, x_2,\cdots , x_k x1,x2,⋯,xk 的凸组合.集合 S 中点所有可能的凸组合构成的集合称作 S 的凸包,记作 convS.实际上,convS 是包含 S 的最小的凸集.如图2.5所示,左边的为离散点集的凸包,右边的为扇形的凸包.
若在凸组合的定义中去掉
θ
i
≥
0
\theta_i\ge0
θi≥0 的限制,我们可以得到仿射包的概念.
定义2.14(仿射包) :设 S \mathcal{S} S 为 R n \mathbb{R}^n Rn 的子集,称如下集合为 S 的仿射包:
{ x ∣ x = θ 1 x 1 + θ 2 x 2 + ⋯ + θ k x k , x 1 , x 2 , ⋯ , x k ∈ S , θ 1 + θ 2 + ⋯ + θ k = 1 } \{x|x=\theta_1x_1+\theta_2x_2+\cdots+\theta_kx_k,\quad x_1,x_2,\cdots,x_k\in\mathcal{S},\quad \theta_1+\theta_2+\cdots+\theta_k=1\} {x∣x=θ1x1+θ2x2+⋯+θkxk,x1,x2,⋯,xk∈S,θ1+θ2+⋯+θk=1},记为affine S。
图 2.6 展示了
R
3
\mathbb{R}^3
R3 中圆盘
S
\mathcal{S}
S 的仿射包,其为一个平面.
一般而言,一个集合的仿射包实际上是包含该集合的最小的仿射集,这个概念在之后我们讨论凸问题最优性条件的时候会用到.
形如:
x = θ 1 x 1 + θ 2 x 2 , θ 1 > 0 , θ 2 > 0 x=\theta_1x_1+\theta_2x_2,\quad\theta_1>0,\theta_2>0 x=θ1x1+θ2x2,θ1>0,θ2>0
的点称为点
x
1
,
x
2
x_1,x_2
x1,x2 的锥组合.若集合 S 中任意点的锥组合都在 S 中,则称 S为凸锥,如图2.7所示.
4.2 重要的凸集
下面将介绍一些重要的凸集。这些凸集在实际问题中常常会遇到。
4.2.1 超平面和半空间
任取非零向量 a a a,形如 { x ∣ a T x = b } \{x|a^Tx=b\} {x∣aTx=b}的集合称为超平面,形如 { x ∣ a T x ≤ b } \{x|a^Tx\le b\} {x∣aTx≤b}的集合称为半空间(如图2.8所示):
a
a
a是对应的超平面和半空间的法向量。一个超平面将
R
n
\mathbb{R}^n
Rn分为两个半空间。容易看出,超平面是仿射集和凸集,半空间是凸集不是仿射集。
4.2.2 球、椭球、锥
球和椭球也是常见的凸集。球是空间中到某个点距离(或两者差的范数)小于某个常数的点的集合,并将:
B ( x c , r ) = { x ∣ ∥ x − x c ∥ 2 ≤ r } = { x c + r u ∣ ∥ u ∥ 2 ≤ 1 } B(x_c,r)=\{x|\Vert x-x_c\Vert_2\le r\}=\{x_c+ru|\Vert u\Vert_2\le 1\} B(xc,r)={x∣∥x−xc∥2≤r}={xc+ru∣∥u∥2≤1}
称为中心为 x c x_c xc,半径为 r r r的(欧几里得)球。而形如:
{ x ∣ ( x − x c ) T P − 1 ( x − x c ) ≤ 1 } \{x|(x-x_c)^TP^{-1}(x-x_c)\le1\} {x∣(x−xc)TP−1(x−xc)≤1}
的集合称为椭球,其中 P ∈ S + + n P\in\mathcal{S}^n_{++} P∈S++n(即 P P P对称正定)。椭球的另一种表示为 { x c + A u ∣ ∥ u ∥ 2 ≤ 1 } \{x_c+Au|\Vert u\Vert_2\le1\} {xc+Au∣∥u∥2≤1}, A A A为非奇异的方阵。
在定义一个球时,并不一定要使用欧几里得空间的距离。对于一般的范数,同样可以定义”球“。令 ∥ ⋅ ∥ \Vert\cdot\Vert ∥⋅∥是任意一个范数:
{ x ∣ ∥ x − x c ∥ ≤ r } \{x|\Vert x-x_c\Vert\le r\} {x∣∥x−xc∥≤r}
称为中心为 x c x_c xc,半径为 r r r的范数球。另外,我们称集合
{ ( x , t ) ∣ ∥ x ∥ ≤ t } \{(x,t)|\Vert x\Vert\le t\} {(x,t)∣∥x∥≤t}
为范数锥。欧几里得范数锥也成为二次锥。范数球和范数锥都是凸集。
4.2.3 多面体
我们把满足线性等式和不等式组的点的集合称为多面体,即:
{ x ∣ A x ≤ b , C x = d } \{x|Ax\le b,Cx=d\} {x∣Ax≤b,Cx=d}
其中 A ∈ R m × n , C ∈ R p × n , x ≤ y A\in\mathbb{R}^{m\times n},C\in\mathbb{R}^{p\times n},x\le y A∈Rm×n,C∈Rp×n,x≤y表示向量x的每个分量均小于等于y的对应分量。多面体是有限个半空间和超平面的交集,因此是凸集。
4.2.4 (半)正定锥
4.3 保凸的运算
下面介绍证明一个集合(设为 C C C)为凸集的两种方式。第一种是利用定义:
x 1 , x 2 ∈ C , 0 ≤ θ ≤ 1 ⟹ θ x 1 + ( 1 − θ ) x 2 ∈ C x_1,x_2\in C,0\le\theta\le1\Longrightarrow\theta x_1+(1-\theta)x_2\in C x1,x2∈C,0≤θ≤1⟹θx1+(1−θ)x2∈C
来证明集合 C C C是凸集。第二种方法是说明集合 C C C可由简单的凸集(超平面、半空间、范数球等)经过保凸的运算后得到。为此,我们需要掌握一些常见的保凸运算。下面的两个定理分别说明了取交集和仿射变换这两种运算是保凸的。
定理 2.3 任意多个凸集的交为凸集,即若 C i , i ∈ I C_i,i\in\mathcal{I} Ci,i∈I是凸集,则:
∏ i ∈ I C i \prod\limits_{i\in\mathcal{I}}C_i i∈I∏Ci
为凸集。这里 I \mathcal{I} I是任意指标集(不要求可列)。
定理 2.4 设 f : R n → R m f: \mathbb{R}^n\to\mathbb{R}^m f:Rn→Rm是仿射变换 ( f ( x ) = A x + b , A ∈ R m × n , b ∈ R m ) (f(x)=Ax+b,A\in\mathbb{R}^{m\times n},b\in\mathbb{R}^m) (f(x)=Ax+b,A∈Rm×n,b∈Rm),则:
(1)凸集在 f f f 下的像是凸集:
S ⊆ R n \mathcal{S}\subseteq\mathbb{R}^n S⊆Rn是凸集 ⟹ \Longrightarrow ⟹ f ( S ) = d e f { f ( x ) ∣ x ∈ S } f(\mathcal{S})\overset{def}{=}\{f(x)|x\in\mathcal{S}\} f(S)=def{f(x)∣x∈S}是凸集;
(2) 凸集在 f f f 下的原像是凸集:
C ⊆ R m C\subseteq\mathbb{R}^m C⊆Rm是凸集 ⟹ f − 1 ( C ) = d e f { x ∈ R n ∣ f ( x ) ∈ C } \Longrightarrow f^{-1}(C)\overset{def}{=}\{x\in\mathbb{R}^n|f(x)\in C\} ⟹f−1(C)=def{x∈Rn∣f(x)∈C}是凸集
注意缩放、平移和投影变换都是仿射变换,因此凸集经过缩放、平移或投影的像仍是凸集。利用仿射变换保凸的性质,可以证明线性矩阵不等式的解集
5 凸函数
5.1 凸函数的定义
定义 2.16 设函数 f f f为适当函数,如果 dom f \text{dom} f domf是凸集,且:
f ( θ x + ( 1 − θ ) y ≤ θ f ( x ) + ( 1 − θ ) f ( y ) f(\theta x+(1-\theta)y\le\theta f(x)+(1-\theta)f(y) f(θx+(1−θ)y≤θf(x)+(1−θ)f(y)
对所有 x , y ∈ dom f , 0 ≤ θ ≤ 1 x,y\in\text{dom} f,0\le\theta\le1 x,y∈domf,0≤θ≤1都成立,则称 f f f是凸函数
直观地来看,连接凸函数的图像上任意两点的线段都在函数图像上方,如图2.11所示:
相应地,我们也可以定义凹函数:若 −f 是凸函数,则称 f 是凹函数.
只要改变一下符号,很多凸函数的性质都可以直接应用到凹函数上.另外,如果 dom f 是凸集,且
f ( θ x + ( 1 − θ ) y ) < θ f ( x ) + ( 1 − θ ) f ( y ) f(\theta x+(1-\theta)y)<\theta f(x)+(1-\theta)f(y) f(θx+(1−θ)y)<θf(x)+(1−θ)f(y)
对所有的 x , y ∈ dom f , x ≠ y , 0 < θ < 1 x,y\in\text{dom} f,x\ne y,0<\theta<1 x,y∈domf,x=y,0<θ<1成立,则称 f f f 是严格凸函数.除了严格凸函数以外,还有另一类常用的凸函数:强凸函数.
定义 2.17 (强凸函数)若存在常数 m > 0 m>0 m>0,使得:
待补充 63
5.2 凸函数判定定理
凸函数的一个最基本的判定方式是:先将其限制在任意直线上,然后判
断对应的一维函数是否是凸的.如下面的定理所述,一个函数是凸函数当且仅当将函数限制在任意直线在定义域内的部分上时仍是凸的.
定理 2.8
5.4 凸函数的性质
1 连续性
凸函数不一定是连续函数,但下面这个定理说明凸函数在定义域中内点处是连续的。
定理 2.14 设 f : R n → ( − ∞ , + ∞ ] f:\mathbb{R}^n\to(-\infty,+\infty] f:Rn→(−∞,+∞]为凸函数。对任意点 x 0 ∈ int dom f x_0\in\text{int dom}f x0∈int domf,有 f f f在点 x 0 x_0 x0处连续。这里 int dom f \text{int dom}f int domf表示定义域 dom f \text{dom}f domf的内点。
上面的定理表明凸函数”差不多“是连续的,它的一个直接推论为:
推论 2.3 设 f ( x ) f(x) f(x)是凸函数,且 dom f \text{dom}f domf是开集,则 f ( x ) f(x) f(x)在 dom f \text{dom}f domf上是连续的。
证明:由于开集中所有的点都为内点,利用定理2.14可直接得到结论。