抄书——最优化的理论与方法(5)——数学基础(凸集和凸函数)
以下内容主要抄自抄袁亚湘的《最优化理论与方法》的 1.3 凸集和凸函数
凸性(Convexity)在优化化理论和方法的研究中起着重要作用。
1.3.1 凸集
定义 1.3.1
设集合 S⊂RnS\subset R^nS⊂Rn,如果对于任意 x1,x2∈Sx_1,x_2\in Sx1,x2∈S,有
αx1+(1−α)x2∈S,∀α∈[0,1](1.3.1)\alpha x_1+(1-\alpha)x_2\in S,\quad \forall \alpha\in [0,1]\qquad(1.3.1) αx1+(1−α)x2∈S,∀α∈[0,1](1.3.1)
则称 SSS 是凸集。
这个定义表明,如果 x1,x2∈Sx_1,x_2\in Sx1,x2∈S,则连接 x1x_1x1 和 x2x_2x2 的线段属于 SSS。
图1 凸集与非凸集(左边是凸集,右边是非凸集)
归纳地可以证明,RnR^nRn 的子集 SSS 为凸集当且仅当对任意 x1,x2,⋯ ,xm∈Sx_1,x_2,\cdots,x_m \in Sx1,x2,⋯,xm∈S,有
∑i=1mαixi∈S,(1.3.2)with ∑i=1mαi=1,αi≥0,i=1,⋯ ,m\sum_{i=1}^m \alpha_i x_i \in S,\qquad(1.3.2)\\ \text{with }\sum_{i=1}^m \alpha_i=1,\quad \alpha_i\ge 0, i=1,\cdots,m i=1∑mαixi∈S,(1.3.2)with i=1∑mαi=1,αi≥0,i=1,⋯,m
(1.3.1)中的 x=αx1+(1−α)x2x=\alpha x_1+(1-\alpha)x_2x=αx1+(1−α)x2 称为 x1x_1x1 和 x2x_2x2 的凸组合,(1.3.2)中的 x=∑αixix=\sum\alpha_i x_ix=∑αixi 称为 x1,⋯ ,xnx_1,\cdots,x_nx1,⋯,xn 的凸组合。
例 1.3.2
超平面 H={x∣pTx=α,α∈R}H=\{ x\vert\ p^Tx=\alpha,\alpha\in R\}H={x∣ pTx=α,α∈R} 是凸集,其中 p∈Rnp\in R^np∈Rn 是非零向量,称为超平面的法向量,α\alphaα 为实数。
例 1.3.3
闭半空间 H−={x∣pTx≤β}H^-=\{x \vert \ p^Tx\le \beta\}H−={x∣ pTx≤β} 和 H+={x∣pTx≥β}H^+=\{x \vert \ p^Tx\ge \beta\}H+={x∣ pTx≥β} 为凸集。开半空间 H˚−={x∣pTx<β}\mathring H^-=\{x \vert \ p^Tx\lt \beta\}H˚−={x∣ pTx<β} 和 H˚+={x∣pTx>β}\mathring H^+=\{x \vert \ p^Tx\gt \beta\}H˚+={x∣ pTx>β} 为凸集。
例 1.3.4
射线 S={x∣x0+λd,λ≥0}S=\{x\vert\ x_0+\lambda d,\ \lambda\ge 0\}S={x∣ x0+λd, λ≥0} 为凸集,其中,ddd 是给定的任意非零向量,x0x_0x0 是定点。
对于任意 x1,x2∈Sx_1,x_2 \in Sx1,x2∈S 和每个数 λ∈[0,1]\lambda\in[0,1]λ∈[0,1],有
x1=x0+λ1d,x2=x0+λ2d,λ1,λ2∈[0,1]x_1=x_0+\lambda_1 d,\quad x_2=x_0+\lambda_2 d,\quad \lambda_1,\lambda_2\in [0,1] x1=x0+λ1d,x2=x0+λ2d,λ1,λ2∈[0,1]
因而,
λx1+(1−λ)x2=x0+[λλ1+(1−λ)λ2]dλλ1+(1−λ)λ2≥0\lambda x_1 + (1-\lambda)x_2=x_0+[\lambda\lambda_1+(1-\lambda)\lambda_2]d\\ \lambda\lambda_1+(1-\lambda)\lambda_2\ge 0 λx1+(1−λ)x2=x0+[λλ1+(1−λ)λ2]dλλ1+(1−λ)λ2≥0
故,λx1+(1−λ)x2∈S\lambda x_1 + (1-\lambda)x_2 \in Sλx1+(1−λ)x2∈S.
此外,若 AAA 是 m×nm\times nm×n 矩阵,b∈Rnb\in R^nb∈Rn,则集合
S={x∈Rn∣Ax=b}S=\{x\in R^n \vert Ax=b\} S={x∈Rn∣Ax=b}
是凸集。
由有限个半闭空间的交组成的集合 SSS 叫多面集,表达为
S={x∣piTx≤βi,i=1,⋯ ,m}S=\{x\vert p_i^T x\le \beta_i,\ i=1,\cdots,m\} S={x∣piTx≤βi, i=1,⋯,m}
其中 pip_ipi 是非零向量,βi\beta_iβi 是实数。多面集是闭凸集。由于等式可以用两个不等式表示,所以下面的集合都是多面集的例子:
S={x∣Ax=b,x≥0},S={x∣Ax≥0,x≥0}.S=\{x\vert A x=b,\ x\ge 0\},\\ S=\{x\vert A x\ge 0,\ x\ge 0\}. S={x∣Ax=b, x≥0},S={x∣Ax≥0, x≥0}.
下面的引理叙述了凸集的性质,即两个凸集的交集是凸集,两个凸集的代数和是凸集
。
引理 1.3.5
设 S1S_1S1 和 S2S_2S2 是 RnR^nRn 中的凸集,则
1)S1∩S2S_1\cap S_2S1∩S2 是凸集;
2)S1±S2={x1±x2∣x1∈S1,x2∈S2}S_1 \pm S_2=\{ x_1\pm x_2 \vert\ x_1\in S_1, x_2 \in S_2\}S1±S2={x1±x2∣ x1∈S1,x2∈S2}
从这个引理可知,线性规划和二次规划中的可行域是凸集,因为它是超平面和半空间的交集
。
设 S⊂RnS\subset R^nS⊂Rn,包含子集 SSS 的所有凸集的交叫 SSS 的凸包,记作 conv(S){conv}(S)conv(S),它是包含 SSS 的唯一的最小的凸集。凸包
conv(S){conv}(S)conv(S) 由 SSS 中元素的所有凸组合
组成,
conv(S)={x∣x=∑i=1mαixi,xi∈S,∑i=1mαi=1,αi≥0,i=1,⋯ ,m}(1.3.3){conv}(S)=\left \{ x \left\vert x=\sum_{i=1}^m \alpha_i x_i,\ x_i\in S,\ \sum_{i=1}^m \alpha_i = 1,\ \alpha_i\ge 0, i=1,\cdots,m\right. \right\}\qquad(1.3.3) conv(S)={x∣∣∣∣∣x=i=1∑mαixi, xi∈S, i=1∑mαi=1, αi≥0,i=1,⋯,m}(1.3.3)
RnR^nRn 的子集叫锥,如果它关于正的数乘运算是封闭
的,即当 x∈K,λ>0x\in K,\ \lambda\gt 0x∈K, λ>0 时,λx∈K\lambda x \in Kλx∈K。如果锥 K 也是凸集,则称之为凸锥。例如:
{x=(ξ1,⋯ ,ξn)∣ξ1≥0,⋯ ,ξn≥0},{x=(ξ1,⋯ ,ξn)∣ξ1>0,⋯ ,ξn>0},\{ x=(\xi_1,\cdots,\xi_n)\ \vert \ \xi_1\ge 0,\cdots,\xi_n \ge 0\},\\ \{ x=(\xi_1,\cdots,\xi_n)\ \vert \ \xi_1\gt 0,\cdots,\xi_n \gt 0\}, {x=(ξ1,⋯,ξn) ∣ ξ1≥0,⋯,ξn≥0},{x=(ξ1,⋯,ξn) ∣ ξ1>0,⋯,ξn>0},
和
{x∈Rn∣xTbi≤0,i∈I}\{ x\in R^n \ \vert \ x^Tb_i\le 0, i\in I\} {x∈Rn ∣ xTbi≤0,i∈I}
均是凸锥,在上式中,bi∈Rnb_i\in R^nbi∈Rn,III 是一个任意指标集。
RnR^nRn 的一个子集是凸锥当且仅当它关于加法和正的数乘运算是封闭的
。包含凸集 CCC 的最小凸锥是
K={λx∣λ>0,x∈C}K=\{\lambda x\ \vert\ \lambda \gt 0, x\in C\} K={λx ∣ λ>0,x∈C}
下面叙述开集、闭集、开凸集和闭凸集。
设 x∈Rnx\in R^nx∈Rn,开球 B(x,r)B(x,r)B(x,r) 定义为:
B(x,r)={y∈Rn∣∥y−x∥<r}B(x,r) = \{y\in R^n \ \vert \ \Vert y-x \Vert \lt r \} B(x,r)={y∈Rn ∣ ∥y−x∥<r}
这是一个以 xxx 为中心,以 rrr 为半径的开球。
设 S⊂RnS\subset R^nS⊂Rn,如果存在 r>0r\gt 0r>0,使得 B(x,r)⊂SB(x,r)\subset SB(x,r)⊂S,则称 x∈Rnx\in R^nx∈Rn 是 SSS 的内点。SSS 的所有内点的集合叫 SSS 的内部,用 int(S){int}(S)int(S) 表示。显然,int(S)⊂Sint(S)\subset Sint(S)⊂S。
如果子集 SSS 的每一点都是 SSS 的内点,即 int(S)=Sint(S)=Sint(S)=S,则 SSS 称为开子集。特别,空集 ∅\varnothing∅ 和 nnn维空间 RnR^nRn(全集) 是 RnR^nRn 的开子集。(它们既是开集,又是闭集。
)
设 S⊂RnS\subset R^nS⊂Rn,如果
S∩B(x,r)≠∅,∀r>0S\cap B(x,r) \neq \varnothing, \ \forall r\gt 0 S∩B(x,r)̸=∅, ∀r>0
则 xxx 称为属于S的闭包,即 x∈S‾x\in \overline Sx∈S。显然,S⊂S‾S\subset \overline SS⊂S。
如果 S=S‾S=\overline SS=S,则 SSS 称为闭子集。空集 ∅\varnothing∅ 和 nnn维空间 RnR^nRn(全集) 是 RnR^nRn 的闭子集。直观地说,如果一个子集包含它所有的边界点,则它是闭的。例如:闭球 B‾(x,r)={y∈Rn∣∥y−x∥≤r}\overline B(x,r)=\{y\in R^n \vert \ \Vert y-x\Vert\le r\}B(x,r)={y∈Rn∣ ∥y−x∥≤r} 是闭集。
显然,一个子集是闭的,当且仅当它的补是开的
。
根据上述定义,闭包 S‾\overline SS 可以写为:
S‾={x∈Rn∣limk∥xk−x∥=0,xk∈S}\overline S = \{ x\in R^n \ \vert \ \lim_{k} \Vert x_k-x\Vert=0,\ x_k\in S\} S={x∈Rn ∣ klim∥xk−x∥=0, xk∈S}
什么意思呢?即闭包 S‾\overline SS 集合中的点 xxx 与集合 SSS 的距离为零。
若 S⊂RnS\subset R^nS⊂Rn 是凸集,若它是开的,则称为开凸集;若它是闭的,则称为闭凸集。
定理 1.3.6
如果 C⊂RnC\subset R^nC⊂Rn 是凸集,那么 CCC 的闭包 C‾\overline CC 也是凸集。
在凸集的研究中另一个有用的概念为凸集的极值点和极值方向。
定义 1.3.7
设 S⊂RnS\subset R^nS⊂Rn 是非空凸集,x∈Sx\in Sx∈S,若 xxx 不在 SSS 中任何线段的内部,即,若假设 x=θx1+(1−θ)x2,and x1,x2∈S,θ∈(0,1)x=\theta x_1+(1-\theta)x_2,\text{ and }x_1,x_2\in S,\theta \in (0,1)x=θx1+(1−θ)x2, and x1,x2∈S,θ∈(0,1) 必推出 x=x1=x2x=x_1=x_2x=x1=x2,则称 xxx 是凸集 SSS 的极值点。
显然,多边形的顶点和圆周
上的任意点都是极值点。
定义 1.3.8
设 S⊂RnS\subset R^nS⊂Rn 是闭凸集,ddd 为非零向量,如果对每一个 x∈S,x+λd∈S,∀λ≥0x\in S,x+\lambda d\in S,\forall \lambda\ge 0x∈S,x+λd∈S,∀λ≥0,则称向量 ddd 为 SSS 的方向。又设d1d_1d1 和 d2d_2d2 为 SSS 的两个不同方向。如果 SSS 的方向 ddd 不能表示成该集合的两个不同方向的正的线性组合,即如果 d=λ1d1+λ2d2,λ1,λ2>0d=\lambda_1 d_1+\lambda_2 d_2,\ \lambda_1,\lambda_2 \gt 0d=λ1d1+λ2d2, λ1,λ2>0,必可推出 d1=αd2d_1=\alpha d_2d1=αd2,则称 ddd 为 SSS 的极值方向。
如下图:
图2 极值方向
考虑多面集
S={x∣Ax=b,x≥0}S=\{x\vert \ Ax=b,x\ge 0\} S={x∣ Ax=b,x≥0}
其中 AAA 是 m×nm\times nm×n 矩阵,rank(A)=m,b∈Rm{rank}(A)=m,b\in R^mrank(A)=m,b∈Rm。不失一般性,设 A=[B,N]A=[B,N]A=[B,N],其中 BBB 是 m×mm\times mm×m 非奇异矩阵,NNN 是 m×(n−m)m\times(n-m)m×(n−m) 矩阵。设 xB,xNx_B,x_NxB,xN 分别是对应于 BBB 和 NNN 的向量,
Ax=[BN][xBxN]=BxB+NxN=bAx=[B \ \ N]\left[ \begin{array} {c} x_B \\ x_N\end{array} \right]= Bx_B + Nx_N=b Ax=[B N][xBxN]=BxB+NxN=b
于是,xxx 是多面集 SSS 的极值点的充分必要条件
是
x=[xBxN]=[B−1b0]x=\left[ \begin{array} {c} x_B \\ x_N\end{array} \right]=\left[ \begin{array} {c} B^{-1}b \\ 0\end{array} \right] x=[xBxN]=[B−1b0]
其中,B−1b≥0B^{-1}b \ge 0B−1b≥0。
d≠0d\neq0d̸=0 是 SSS 的一个方向,当且仅当 Ad=0,d≥0Ad=0,d\ge0Ad=0,d≥0。d‾\overline dd 是 SSS 的一个极值方向,当且仅当
B−1aj≤0,对某个 aj是 N 的列,d‾=αd=α(B−1ajej)B^{-1}a_j\le 0,\text{ 对某个 $a_j$ 是 N 的列,}\\ \text{} \\ \overline d=\alpha d=\alpha \left( \begin{array}{c} B^{-1}a_j \\ e_j \end{array}\right) B−1aj≤0, 对某个 aj 是 N 的列,d=αd=α(B−1ajej)
其中 α>0,ej∈Rn−m\alpha \gt 0, e_j \in R^{n-m}α>0,ej∈Rn−m 是单位向量。
1.3.2 凸函数
定义 1.3.9
设 S⊂RnS\subset R^nS⊂Rn 是非空凸集,α∈(0,1)\alpha \in (0,1)α∈(0,1),fff 是定义在 SSS 上的函数。如果对任意 x1,x2∈Sx_1,x_2\in Sx1,x2∈S,有
f(αx1+(1−α)x2)≤αf(x1)+(1−α)f(x2)(1.3.4)f(\alpha x_1+(1-\alpha)x_2)\le \alpha f(x_1)+(1-\alpha) f(x_2) \qquad(1.3.4) f(αx1+(1−α)x2)≤αf(x1)+(1−α)f(x2)(1.3.4)
则称函数 fff 是 SSS 上的凸函数。如果当 x1≠x2x_1\neq x_2x1̸=x2 时(1.3.4)中严格不等式成立,
f(αx1+(1−α)x2)<αf(x1)+(1−α)f(x2)(1.3.5)f(\alpha x_1+(1-\alpha)x_2)\lt \alpha f(x_1)+(1-\alpha) f(x_2) \qquad(1.3.5) f(αx1+(1−α)x2)<αf(x1)+(1−α)f(x2)(1.3.5)
则称函数 fff 是 SSS 上的严格凸函数。如果存在一个常数 c>0c\gt 0c>0,使得对任意 x1,x2∈Sx_1,x_2\in Sx1,x2∈S,有
αf(x1)+(1−α)f(x2)≥f(αx1+(1−α)x2)+cα(1−α)∥x1−x2∥2(1.3.6)\alpha f(x_1)+(1-\alpha) f(x_2)\ge f(\alpha x_1+(1-\alpha)x_2)+c\alpha(1-\alpha)\Vert x_1-x_2\Vert^2\qquad(1.3.6) αf(x1)+(1−α)f(x2)≥f(αx1+(1−α)x2)+cα(1−α)∥x1−x2∥2(1.3.6)
则称 fff 在 SSS 上是一致凸的。
如果 −f-f−f 是 SSS 上的凸(严格凸)函数,则称 fff 是 SSS 上的凹(严格凹)函数。
图3 凸(凹)函数
凸函数有如下性质:
定理 1.3.10
1)设 fff 是定义在凸集 SSS 上的凸函数,实数 α≥0\alpha \ge 0α≥0,则 αf\alpha fαf 也是定义在 SSS 上的凸函数。
2)设 f1,f2f_1,f_2f1,f2 是定义在凸集 SSS 上的凸函数,则 f1+f2f_1+f_2f1+f2,也是定义在 SSS 上的凸函数。
3)设 f1,f2,⋯ ,fmf_1,f_2,\cdots,f_mf1,f2,⋯,fm 是定义在凸集 SSS 上的凸函数,实数 α1,α2,⋯ ,αn≥0\alpha_1,\alpha_2,\cdots,\alpha_n \ge 0α1,α2,⋯,αn≥0,则 ∑i=1mαifi\sum_{i=1}^m \alpha_i f_i∑i=1mαifi 也是定义在 SSS 上的凸函数。
即对正实数乘和加法是封闭的。
如果凸函数是可微的,我们可以用下面的特征描述凸函数,下面的定理刻画了凸函数的一阶特征。
定理 1.3.11
设 S⊂RnS\subset R^nS⊂Rn 是非空开凸集,fff 是定义在 SSS 上的可微函数,则 fff 为凸函数的充分必要条件是:
f(y)≥f(x)+∇f(x)T(y−x),∀x,y∈S(1.3.7)f(y)\ge f(x)+\nabla f(x)^T(y-x),\quad \forall x,y\in S\qquad(1.3.7) f(y)≥f(x)+∇f(x)T(y−x),∀x,y∈S(1.3.7)
图4 凸函数的一阶特征
证明:
必要性:设 fff 是凸函数,于是对所有 α,0≤α≤1\alpha,\ 0\le \alpha \le 1α, 0≤α≤1,有
f(αy+(1−α)x)≤αf(y)+(1−α)f(x)f(\alpha y + (1-\alpha)x) \le \alpha f(y) + (1-\alpha)f(x) f(αy+(1−α)x)≤αf(y)+(1−α)f(x)
因此,对于 0<α≤10\lt \alpha \le 10<α≤1,
f(x+α(y−x))−f(x)α≤f(y)−f(x)\frac{f(x+\alpha(y-x))-f(x)}{\alpha}\le f(y)-f(x) αf(x+α(y−x))−f(x)≤f(y)−f(x)
令 α→0\alpha \to 0α→0,得
∇f(x)T(y−x)≤f(y)−f(x)⇒f(y)≥f(x)+∇f(x)T(y−x)\nabla f(x)^T(y-x)\le f(y)-f(x)\\ \text{} \\ \Rightarrow f(y)\ge f(x)+\nabla f(x)^T(y-x) ∇f(x)T(y−x)≤f(y)−f(x)⇒f(y)≥f(x)+∇f(x)T(y−x)
充分性:今设(1.3.7)成立,任取 x1,x2∈S,0≤α≤1x_1,x_2\in S, \ 0\le\alpha\le 1x1,x2∈S, 0≤α≤1,令 x=αx1+(1−α)x2x=\alpha x_1 + (1-\alpha)x_2x=αx1+(1−α)x2,我们有
f(x1)≥f(x)+∇f(x)T(x1−x)f(x2)≥f(x)+∇f(x)T(x2−x)f(x_1)\ge f(x) + \nabla f(x)^T(x_1-x)\\ f(x_2)\ge f(x) + \nabla f(x)^T(x_2-x) f(x1)≥f(x)+∇f(x)T(x1−x)f(x2)≥f(x)+∇f(x)T(x2−x)
于是得到
αf(x1)+(1−α)f(x2)≥f(x)+∇f(x)T[αx1+(1−α)x2−x]=f(αx1+(1−α)x2)\alpha f(x_1) + (1-\alpha)f(x_2)\ge f(x)+\nabla f(x)^T[\alpha x_1+(1-\alpha)x_2-x]\\=f(\alpha x_1+(1-\alpha)x_2) αf(x1)+(1−α)f(x2)≥f(x)+∇f(x)T[αx1+(1−α)x2−x]=f(αx1+(1−α)x2)
(对于一维凸函数,有
limx→αx1+(1−α)x2f(αx1+(1−α)x2)−f(x)αx1+(1−α)x2−x=f′(αx1+(1−α)x2)\lim_{x\to \alpha x_1+(1-\alpha)x_2}\frac{f(\alpha x_1+(1-\alpha)x_2)-f(x)}{\alpha x_1+(1-\alpha)x_2-x} = f'(\alpha x_1+(1-\alpha)x_2) x→αx1+(1−α)x2limαx1+(1−α)x2−xf(αx1+(1−α)x2)−f(x)=f′(αx1+(1−α)x2))
这表明 f(x)f(x)f(x) 是凸函数。
凸函数的定义 1.3.9 表示了两点的线性插值大于函数值,即函数图形在弦之下。这个定理表明了根据局部导数的线性近似是函数的低估
,即凸函数图形位于图形上任一点切线的上方。这样的切线(面)就称为凸函数的一个支撑超平面。
下面,我们对于二次连续可微函数,考虑凸函数的二次特征。
定理 1.3.12
设 S∈RnS\in R^nS∈Rn 是非空开凸集,fff 是定义在 SSS 上的二次可微函数,则 fff 是凸函数的充分必要条件
是在 SSS 的每一点Hesse 矩阵正半定。
fff 在 xxx 处的 Hesse 矩阵定义为 n×nn\times nn×n 矩阵,其第 i,ji,ji,j 元素为:
[∇2f(x)]ij=∂2f(x)∂xi∂xj,1≤i,j≤n[\nabla^2 f(x)]_{ij}=\frac{\partial^2 f(x)}{\partial x_i \partial x_j},\quad 1\le i,j \le n [∇2f(x)]ij=∂xi∂xj∂2f(x),1≤i,j≤n
证明:
1)充分性
设 Hesse 矩阵 ∇2f(x)\nabla^2 f(x)∇2f(x) 在每一点 x∈Sx\in Sx∈S 正半定。考虑 x,x‾∈Sx, \overline x\in Sx,x∈S,由中值定理,有
f(x)=f(x‾)+∇f(x‾)T(x−x‾)+12(x−x‾)T∇2f(x^)(x−x‾)f(x) = f(\overline x) + \nabla f(\overline x)^T(x-\overline x)+\frac12(x-\overline x)^T\nabla^2f(\widehat x)(x-\overline x) f(x)=f(x)+∇f(x)T(x−x)+21(x−x)T∇2f(x)(x−x)
其中,x^=x‾+θ(x−x‾),θ∈(0,1)\widehat x=\overline x+\theta(x-\overline x),\theta \in (0,1)x=x+θ(x−x),θ∈(0,1)。注意到 x^∈S\widehat x\in Sx∈S,故由假设(∇2f(x)\nabla^2 f(x)∇2f(x) 在每一点 x∈Sx\in Sx∈S 正半定)知:
f(x)≥f(x‾)+∇f(x‾)T(x−x‾)f(x) \ge f(\overline x) + \nabla f(\overline x)^T(x-\overline x) f(x)≥f(x)+∇f(x)T(x−x)
从而,根据定理 1.3.11 可知 fff 是凸函数。
2)必要性
设 fff 是凸函数,任取 x‾∈S\overline x\in Sx∈S,我们要证明 pT∇2f(x‾)p≥0,∀p∈Rnp^T\nabla^2f(\overline x)p\ge 0,\forall p\in R^npT∇2f(x)p≥0,∀p∈Rn,即证明 ∇2f(x‾)\nabla^2f(\overline x)∇2f(x) 正半定。由于 SSS 是开集,必存在 δ>0\delta \gt 0δ>0,使当 ∣λ∣<δ\vert \lambda \vert \lt \delta∣λ∣<δ 时,x‾+λp∈S\overline x+\lambda p\in Sx+λp∈S。根据定理 1.3.11,有
f(x‾+λp)≥f(x‾)+λ∇f(x‾)Tp(1.3.8)f(\overline x +\lambda p)\ge f(\overline x) + \lambda \nabla f(\overline x)^Tp \qquad(1.3.8) f(x+λp)≥f(x)+λ∇f(x)Tp(1.3.8)
又由于 f(x)f(x)f(x) 在 x‾\overline xx 处二次可微,则
f(x‾+λp)=f(x‾)+λ∇f(x‾)Tp+λ22pTG(x‾)p+o(∥λp∥2)(1.3.9)f(\overline x+\lambda p)=f(\overline x)+\lambda\nabla f(\overline x)^Tp+\frac{\lambda^2}2p^TG(\overline x)p+o(\Vert \lambda p\Vert^2)\qquad(1.3.9) f(x+λp)=f(x)+λ∇f(x)Tp+2λ2pTG(x)p+o(∥λp∥2)(1.3.9)
其中 G(x‾)G(\overline x)G(x) 是 fff 在 x‾\overline xx 处的 Hesse 阵。将 (1.3.9) 代入 (1.3.8) 便得到
12λ2pTG(x‾)p+o(∥λp∥2)≥0\frac12 \lambda^2p^TG(\overline x)p+o(\Vert \lambda p\Vert^2)\ge 0 21λ2pTG(x)p+o(∥λp∥2)≥0
上式两边除以 λ2\lambda^2λ2,并令 λ→0\lambda\to 0λ→0,得
pTG(x‾)p≥0p^TG(\overline x)p\ge 0 pTG(x)p≥0
必要性得证。□\square□
定理 1.3.13
设 S⊂RnS\subset R^nS⊂Rn 为非空开凸集,fff 是定义在 SSS 上的可微函数,则 fff 为严格凸函数
的充分必要条件是
f(y)>f(x)+∇f(x)T(y−x),∀y,x∈S,x≠y(1.3.10)f(y)\gt f(x)+\nabla f(x)^T(y-x),\quad \forall y,x\in S, x\neq y\qquad(1.3.10) f(y)>f(x)+∇f(x)T(y−x),∀y,x∈S,x̸=y(1.3.10)
定理 1.3.14
设 S⊂RnS\subset R^nS⊂Rn 为非空开凸集,fff 是定义在 SSS 上的二次可微函数,如果在每一点 x∈Sx\in Sx∈S,Hesse 阵正定,则 fff 为严格凸函数,但
如果 fff 为严格凸函数,则 Hesse 矩阵在 SSS 的每一点正半定。
和凸函数关系密切的是水平集。下面的定理指出水平集是凸集。
定理 1.3.15
设 S⊂RnS\subset R^nS⊂Rn 为非空凸集,fff 是定义在 SSS 上的凸函数,α\alphaα 是一个实数,则水平集 Lα={x∣x∈S,f(x)≤α}L_{\alpha}=\{x\vert \ x\in S,f(x)\le \alpha\}Lα={x∣ x∈S,f(x)≤α} 是凸集。
证明:
设 x1,x2∈Lαx_1,x_2 \in L_{\alpha}x1,x2∈Lα,于是 x1,x2∈S,f(x1)≤α,f(x2)≤αx_1,x_2\in S,f(x_1)\le \alpha,f(x_2)\le\alphax1,x2∈S,f(x1)≤α,f(x2)≤α。
今设 λ∈(0,1),x=λx1+(1−λ)x2\lambda\in(0,1),x=\lambda x_1+(1-\lambda)x_2λ∈(0,1),x=λx1+(1−λ)x2。由 SSS 的凸性知道 x∈Sx\in Sx∈S,又由于 fff 是凸函数,故有:
f(x1)>f(x)+∇f(x)T(x1−λx1−(1−λ)x2)=f(x)+∇f(x)T(1−λ)(x1−x2)f(x2)>f(x)+∇f(x)T(x2−λx1−(1−λ)x2)=f(x)−∇f(x)Tλ(x1−x2)→λf(x1)+(1−λ)f(x2)>f(x)→f(x)<λf(x1)+(1−λ)f(x2)≤λα+(1−λ)α=αf(x_1)\gt f(x)+\nabla f(x)^T(x_1-\lambda x_1-(1-\lambda)x_2)\\ =f(x)+\nabla f(x)^T(1-\lambda)(x_1-x_2) \\ f(x_2)\gt f(x)+\nabla f(x)^T(x_2-\lambda x_1-(1-\lambda)x_2)\\ =f(x)-\nabla f(x)^T\lambda(x_1-x_2) \\ \to \lambda f(x_1)+(1-\lambda)f(x_2) \gt f(x) \\ \to f(x) \lt \lambda f(x_1)+(1-\lambda)f(x_2)\le \lambda \alpha + (1-\lambda) \alpha = \alpha f(x1)>f(x)+∇f(x)T(x1−λx1−(1−λ)x2)=f(x)+∇f(x)T(1−λ)(x1−x2)f(x2)>f(x)+∇f(x)T(x2−λx1−(1−λ)x2)=f(x)−∇f(x)Tλ(x1−x2)→λf(x1)+(1−λ)f(x2)>f(x)→f(x)<λf(x1)+(1−λ)f(x2)≤λα+(1−λ)α=α
因此,x∈Lαx\in L_{\alpha}x∈Lα,从而 LαL_{\alpha}Lα 是凸集。□\square□
进一步,若 fff 是 SSS 上的连续凸函数,则显然水平集 LαL_{\alpha}Lα 是闭凸集。
定理 1.3.16
设 f(x)f(x)f(x) 在 S∈RnS\in R^nS∈Rn 上二次连续可微,且存在常数 m>0m\gt 0m>0,使得:
uT∇2f(x)u≥m∥u∥2,∀x∈L(x0),u∈Rn(1.3.11)u^T\nabla^2f(x)u\ge m\Vert u\Vert^2,\quad \forall x\in L(x_0), u\in R^n\qquad(1.3.11) uT∇2f(x)u≥m∥u∥2,∀x∈L(x0),u∈Rn(1.3.11)
则水平集 L(x0)={x∈S∣f(x)≤f(x0)}L(x_0)=\{x\in S\vert \ f(x)\le f(x_0)\}L(x0)={x∈S∣ f(x)≤f(x0)} 是有界闭凸集。
证明:
因为:
uT∇2f(x)u≥m∥u∥2,∀x∈L(x0),u∈Rn(1.3.11)u^T\nabla^2f(x)u\ge m\Vert u\Vert^2,\quad \forall x\in L(x_0), u\in R^n\qquad(1.3.11) uT∇2f(x)u≥m∥u∥2,∀x∈L(x0),u∈Rn(1.3.11)
所以,f(x)f(x)f(x) 每一点的 Hesse 矩阵正定,f(x)f(x)f(x) 为严格凸函数,由定理 1.3.15,可知,水平集 L(x0)L(x_0)L(x0) 对于任意 x0∈Rnx_0\in R^nx0∈Rn 是闭凸集。
现在证明 L(x0)L(x_0)L(x0) 的有界性
。
因为水平集 L(x0)L(x_0)L(x0) 是凸的,由(1.3.11),故 ∀x,y∈L(x0)\forall x,y\in L(x_0)∀x,y∈L(x0),
m∥y−x∥2≤(y−x)T∇2f(x+α(y−x))(y−x)m\Vert y-x \Vert^2 \le (y-x)^T\nabla^2f(x+\alpha(y-x))(y-x) m∥y−x∥2≤(y−x)T∇2f(x+α(y−x))(y−x)
又由 Taylor 展开,(此处,我也不甚了了。)
f(y)=f(x)+∇f(x)T(y−x)+∫01∫0t(y−x)T∇2f(x+α(y−x))(y−x)dαdt≥f(x)+∇f(x)T(y−x)+12m∥y−x∥2f(y) = f(x) + \nabla f(x)^T(y-x)+\int_0^1\int_0^t(y-x)^T\nabla^2f(x+\alpha(y-x))(y-x)d\alpha dt\\ \text{ } \\ \ge f(x) + \nabla f(x)^T(y-x) + \frac 12 m\Vert y-x\Vert^2 f(y)=f(x)+∇f(x)T(y−x)+∫01∫0t(y−x)T∇2f(x+α(y−x))(y−x)dαdt ≥f(x)+∇f(x)T(y−x)+21m∥y−x∥2
其中 mmm 与 x,yx,yx,y 无关,因此对任意 y∈L(x0),y≠x0y\in L(x_0),y\neq x_0y∈L(x0),y̸=x0,
f(y)−f(x0)≥∇f(x0)T(y−x0)+12m∥y−x0∥2≥−∥∇f(x0)∥⋅∥y−x0∥+12m∥y−x0∥2f(y)-f(x_0) \ge \nabla f(x_0)^T(y-x_0)+\frac12m\Vert y-x_0\Vert^2 \\ \text{ } \\ \ge-\Vert\nabla f(x_0)\Vert\cdot\Vert y-x_0\Vert+\frac12m\Vert y-x_0\Vert^2 f(y)−f(x0)≥∇f(x0)T(y−x0)+21m∥y−x0∥2 ≥−∥∇f(x0)∥⋅∥y−x0∥+21m∥y−x0∥2
上式的第二个不等式是因为 Cauchy-Schwarz 不等式:∣xTy∣≤∥x∥⋅∥y∥\vert x^Ty\vert \le \Vert x\Vert\cdot \Vert y\Vert∣xTy∣≤∥x∥⋅∥y∥。
又由于 f(y)≤f(x0)f(y)\le f(x_0)f(y)≤f(x0),故
∥y−x0∥≤2m∥∇f(x0)∥\Vert y-x_0 \Vert \le \frac2m\Vert \nabla f(x_0) \Vert ∥y−x0∥≤m2∥∇f(x0)∥
这表明水平集 L(x0)={x∣x∈S,f(x)≤f(x0)}L(x_0)=\{x\vert x\in S,f(x)\le f(x_0)\}L(x0)={x∣x∈S,f(x)≤f(x0)} 有界。□\qquad\square□
最后,作为函数凸性的一个应用,我们给出 Minkowski 不等式的证明。
Minkowski 不等式:
∥x+y∥p≤∥x∥p+∥y∥p\Vert x+y \Vert_p\le \Vert x\Vert_p+\Vert y\Vert_p ∥x+y∥p≤∥x∥p+∥y∥p
即
(∑i=1n∣xi+yi∣p)1/p≤(∑i=1n∣xi∣p)1/p+(∑i=1n∣yi∣p)1/p\left( \sum_{i=1}^n\vert x_i+y_i\vert^p\right)^{1/p}\le \left( \sum_{i=1}^n\vert x_i\vert^p\right)^{1/p}+\left( \sum_{i=1}^n\vert y_i\vert^p\right)^{1/p} (i=1∑n∣xi+yi∣p)1/p≤(i=1∑n∣xi∣p)1/p+(i=1∑n∣yi∣p)1/p
其中,p≥1p\ge 1p≥1.
证明:
如果 xxx 或 yyy 为零向量,则不等式显然成立。故假定 x≠0,y≠0x\neq 0,y\neq 0x̸=0,y̸=0.
若 p=1p=1p=1,由于 ∣xi+yi∣≤∣xi∣+∣yi∣,i=1,⋯ ,n\vert x_i+y_i\vert\le \vert x_i \vert+\vert y_i\vert, i=1,\cdots,n∣xi+yi∣≤∣xi∣+∣yi∣,i=1,⋯,n.
今设 p>1p\gt 1p>1,考虑函数
ϕ(t)=tp,t>0⇒ϕ′′(t)=p(p−1)tp−2\phi(t)=t^p,\quad t\gt 0\\ \Rightarrow\phi''(t)=p(p-1)t^{p-2} ϕ(t)=tp,t>0⇒ϕ′′(t)=p(p−1)tp−2
故函数 ϕ(t)\phi(t)ϕ(t) 严格凸。注意到:
∥x∥p∥x∥p+∥y∥p+∥y∥p∥x∥p+∥y∥p=1\frac{\Vert x\Vert_p}{\Vert x\Vert_p+\Vert y\Vert_p}+\frac{\Vert y\Vert_p}{\Vert x\Vert_p+\Vert y\Vert_p}=1 ∥x∥p+∥y∥p∥x∥p+∥x∥p+∥y∥p∥y∥p=1
于是,由凸函数定义得到
(∥x∥p∥x∥p+∥y∥p∣xi∣∥x∥p+∥y∥p∥x∥p+∥y∥p∣yi∣∥y∥p)p≤∥x∥p∥x∥p+∥y∥p(∣xi∣∥x∥p)p+∥y∥p∥x∥p+∥y∥p(∣yi∣∥y∥p)p\left(\frac{\Vert x\Vert_p}{\Vert x\Vert_p+\Vert y\Vert_p}\frac{|x_i|}{\Vert x\Vert_p}+\frac{\Vert y\Vert_p}{\Vert x\Vert_p+\Vert y\Vert_p}\frac{|y_i|}{\Vert y\Vert_p}\right)^p \\ \text{ } \\ \le \frac{\Vert x\Vert_p}{\Vert x\Vert_p+\Vert y\Vert_p}\left( \frac{|x_i|}{\Vert x\Vert_p}\right)^p + \frac{\Vert y\Vert_p}{\Vert x\Vert_p+\Vert y\Vert_p}\left( \frac{|y_i|}{\Vert y\Vert_p}\right)^p (∥x∥p+∥y∥p∥x∥p∥x∥p∣xi∣+∥x∥p+∥y∥p∥y∥p∥y∥p∣yi∣)p ≤∥x∥p+∥y∥p∥x∥p(∥x∥p∣xi∣)p+∥x∥p+∥y∥p∥y∥p(∥y∥p∣yi∣)p
因此
∑i=1n(∣xi+yi∣∥x∥p+∥y∥p)p≤∑i=1n(∣xi∣+∣yi∣∥x∥p+∥y∥p)p因为p次函数是凸函数,所以≤∑i=1n(∥x∥p∥x∥p+∥y∥p(∣xi∣∥x∥p)p+∥y∥p∥x∥p+∥y∥p(∣yi∣∥y∥p)p)≤∥x∥p∥x∥p+∥y∥p∑i=1n(∣xi∣∥x∥p)p+∥y∥p∥x∥p+∥y∥p∑i=1n(∣yi∣∥y∥p)p=∥x∥p∥x∥p+∥y∥p⋅∥x∥pp∥x∥pp+∥y∥p∥x∥p+∥y∥p⋅∥y∥pp∥y∥pp=1\sum_{i=1}^n\left(\frac{\vert x_i+y_i\vert}{\Vert x\Vert_p+\Vert y\Vert_p} \right)^p\le \sum_{i=1}^n\left(\frac{\vert x_i\vert+\vert y_i\vert}{\Vert x\Vert_p+\Vert y\Vert_p} \right)^p \\ \color{red}{因为p次函数是凸函数,所以}\color{black}\\ \le \sum_{i=1}^n\left(\frac{\Vert x \Vert_p}{\Vert x\Vert_p+\Vert y\Vert_p} \left(\frac{\vert x_i\vert}{\Vert x\Vert_p} \right)^p+\frac{\Vert y \Vert_p}{\Vert x\Vert_p+\Vert y\Vert_p} \left(\frac{\vert y_i\vert}{\Vert y\Vert_p} \right)^p\right)\\ \le \frac{\Vert x \Vert_p}{\Vert x\Vert_p+\Vert y\Vert_p}\sum_{i=1}^n \left(\frac{\vert x_i\vert}{\Vert x\Vert_p} \right)^p+\frac{\Vert y \Vert_p}{\Vert x\Vert_p+\Vert y\Vert_p}\sum_{i=1}^n \left(\frac{\vert y_i\vert}{\Vert y\Vert_p} \right)^p \\ = \frac{\Vert x \Vert_p}{\Vert x\Vert_p+\Vert y\Vert_p}\cdot\frac{\Vert x \Vert_p^p}{\Vert x \Vert_p^p}+\frac{\Vert y \Vert_p}{\Vert x\Vert_p+\Vert y\Vert_p}\cdot\frac{\Vert y \Vert_p^p}{\Vert y \Vert_p^p}=1 i=1∑n(∥x∥p+∥y∥p∣xi+yi∣)p≤i=1∑n(∥x∥p+∥y∥p∣xi∣+∣yi∣)p因为p次函数是凸函数,所以≤i=1∑n(∥x∥p+∥y∥p∥x∥p(∥x∥p∣xi∣)p+∥x∥p+∥y∥p∥y∥p(∥y∥p∣yi∣)p)≤∥x∥p+∥y∥p∥x∥pi=1∑n(∥x∥p∣xi∣)p+∥x∥p+∥y∥p∥y∥pi=1∑n(∥y∥p∣yi∣)p=∥x∥p+∥y∥p∥x∥p⋅∥x∥pp∥x∥pp+∥x∥p+∥y∥p∥y∥p⋅∥y∥pp∥y∥pp=1
这样,
∑i=1n∣xi+yi∣p≤(∥x∥p+∥y∥p)p\sum^n_{i=1}\vert x_i+y_i\vert^p\le (\Vert x\Vert_p +\Vert y \Vert_p)^p i=1∑n∣xi+yi∣p≤(∥x∥p+∥y∥p)p
上式两边取p次根即得结果。□\qquad \square□
抄书——最优化的理论与方法(5)——数学基础(凸集和凸函数)相关推荐
- 抄书——最优化的理论与方法(4)——数学基础(秩一校正)
矩阵的秩一校正在最优化中经常用到.那什么是秩一校正呢?以下主要内容部分抄自抄袁亚湘的<最优化理论与方法>. 定义:秩一校正( rank-1 update) 设 A∈Rn×nA\in R^{ ...
- 最优化理论与方法-第二讲-凸集
原文视频:https://www.bilibili.com/video/BV1rE411H7P6 凸集 举例: (1) (2) 其中为最优点,此时对于凸集S来说,的负梯度方向 与到 S内的所有点的方向 ...
- 最优化理论基础与方法学习笔记——凸集与凸函数以及手写定理证明
文章目录 凸集的定义 凸集的几何意义 有关凸集的定理 定理1.4.2 内点.边界点和闭包的定义 定义1.4.3 超平面的定义 定理1.4.3 投影定理 定理1.4.4 点与凸集的分离定理 定理1.4. ...
- 最优化理论与方法(part11)--约束优化问题
学习笔记,仅供参考,有错必纠 文章目录 最优化理论与方法 约束优化问题 定义 8.1.1(可行点与可行域) 全局和局部极小值点 积极与非积极 最优化理论与方法 约束优化问题 定义 8.1.1(可行点与 ...
- 最优化理论与方法(part8)--凸集的分离和支撑
学习笔记,仅供参考,有错必纠 文章目录 最优化理论与方法 凸集的分离和支撑 定理 1.3.17(凸集外一点与闭凸集的极小距离) 定理 1.3.18 定理 1.3.19 定义 1.3.20(支撑超平面) ...
- 最优化理论与方法(part5)--函数和微分
学习笔记,仅供参考,有错必纠 文章目录 最优化理论与方法 函数和微分 连续可微和Hesse矩阵 d d d的方向导数 d d
- 最优化理论与方法(part4)--秩一校正
学习笔记,仅供参考,有错必纠 文章目录 最优化理论与方法 秩一校正 定理 1.2.6(Sherman-Morrison 定理) 定理 1.2.7(Sherman-Morrison-Woodburg 定 ...
- 最优化理论与方法(part3)--矩阵的Rayleigh商
学习笔记,仅供参考,有错必纠 文章目录 最优化理论与方法 矩阵的Rayleigh商 定义 1.2.4 定理 1.2.5 最优化理论与方法 矩阵的Rayleigh商 定义 1.2.4 备注: C C C ...
- 最优化理论与方法(part2)--矩阵求逆和广义逆
学习笔记,仅供参考,有错必纠 文章目录 最优化理论与方法 矩阵求逆和广义逆 定理 1.2.3 (von Neumann引理) 定理 1.2.3' 子空间 最优化理论与方法 矩阵求逆和广义逆 定理 1. ...
- 最优化理论与方法学习笔记
最优化理论与方法 参考学习资源:上海财经大学崔老师B站讲解视频 以下是个人学习笔记,并不具有很强的参考性,具体学习书籍可参考<最优化理论与方法-袁亚湘> 大致分类: 1.无约束优化/约束优 ...
最新文章
- 每天一个linux命令(46):vmstat命令
- python属性使用教程_Python对象的属性访问过程详解
- 数据挖掘实验报告-关联规则算法实验
- 我在腾讯做运维--快速玩转蓝鲸社区版6.0【直播公开课】
- 猎豹移动(金山网络)2015校园招聘(c++project师)
- 编程模式如何结束未响应的程序
- php mail centos_centos怎么发送邮件
- Java基础————理解Integer对象的缓存策略
- http://blog.sina.com.cn/s/blog_6145ed810102vr8k.html
- oracle_分区表的新增、修改、删除、合并。普通表转分区表方法
- Python3.5.3下载及安装教程
- 计算机平均分函数a,平均值计算函数Average、Averagea、AverageIfs、Trimmean
- java念整数 你的程序要读入一个整数,范围是[-100000,100000]。然后,用汉语拼音将这个整数的每一位输出出来。 如输入1234,则输出: yi er san si
- 【控制工程】啥是控制工程?拉开控制工程的帷幕
- photoshop中如何使用”颜色替换“替换图片中的黑色?
- 用计算机进行会计核算与手工会计核算,会计核算软件与手工会计核算软件有什么区别...
- [EOS源码分析]7.EOS智能合约开发实践之合约调用合约(inline action)
- 阿里MNS服务:代码显示成功并可以得到消息id及其md5,手机却收不到短信
- Unity如何完全消除摩擦力
- 光电鼠标的组成及原理
热门文章
- php是什么币种的外汇英文,外汇币种英文_我要最常用的10个外汇币种和英文简称!_合拍网...
- 时间序列分解 | Python实现奇异谱分析(SSA)分解时间序列
- PyTorch 深度学习入门
- 含泪整理最优质草食动物unity3d模型素材,你想要的这里都有
- Android App加壳中的整体dex加壳的原理和脱壳
- 锐浪报表-实现导入导出
- excel 汇总运算后生成柱状图
- TwinCAT 3 xml存储配置文件程序
- 程序员自学能学会吗?我是自学的,努力比天分重要
- 前端开发者常见的英文单词汇总