上篇博客开始了我的凸优化之旅,介绍了凸集和凸函数的定义,这篇博客给出凸函数非常有用的性质和判别条件,并给出其数学证明,同时给出强凸函数定义。
首先勘误一下上篇博客关于严格凸的定义,其条件不是
λ∈[0,1],而是
λ∈(0,1)
1、性质1:局部最优就是全局最优
证明: 利用反证法进行证明,假设
f(x∗)为找到的一个局部最小值,假设还存在一个
f(xn)更小,即
f(x∗)>f(xn)
则在凸集
S上,由凸函数定义有
f(x∗+λ(xn−x∗))≤λf(xn)+(1−λ)f(x∗)
其中
λ∈[0,1],如果令
λ不为0,则
f(x∗+λ(xn−x∗))<f(x∗),显然可以很轻松地找到合适的
λ使得
x∗+λ(xn−x∗)非常靠近
x∗,这将与
f(x∗)是局部最小相矛盾。
2、性质2:一阶条件,设
f(x)在凸集
S上具有一阶连续偏导,则
f(x)为
S上的凸函数的充要条件为
∀x1,x2∈S,f(x2)≥f(x1)+▽f(x1)T(x2−x1)
证明:
(1) 首先考虑一元函数情形
充分性: 由凸函数定义有
f(x1+λ(x2−x1))≤λf(x2)+(1−λ)f(x1)
假设
λ∈(0,1],则不等式2边同除
λ,得
f(x2)≥f(x1)+λf(x1+λ(x2−x1))−f(x1)
令
λ趋近于0即可得
f(x2)≥f(x1)+f′(x1)(x2−x1)
必要性: 取
z=λx1+(1−λ)x2,则
f(x1)≥f(z)+f′(z)(x1−z)
f(x2)≥f(z)+f′(z)(x2−z)
上述2式分别乘以
λ和
1−λ则可得
f(z)≤λf(x1)+(1−λ)f(x2)
多元函数的证明与一元函数思路类似。
3、性质3:二阶条件,设函数
f(x)在开凸集
S上具有二阶连续偏导,
f(x)为凸函数的充要条件是函数的
Hessian矩阵在
S上处处半正定。
二阶判别条件的证明留作下篇给出。