凸集与凸函数
首先是凸集的定义。一个集合
S
∈
R
n
S\in \mathbb{R}^n
S∈Rn称为凸集(
R
n
\mathbb{R}^n
Rn表示
n
n
n维实向量空间),如果对于任意两个点
a
,
b
∈
S
a,b\in S
a,b∈S,连接它们的线段也在集合
S
S
S内,如下图:
任意多个凸集的交集仍为凸集。
函数
f
:
R
n
→
R
f:\mathbb{R}^n→\mathbb{R}
f:Rn→R(由
n
n
n维实向量到实数的映射函数)为凸函数,当且仅当其定义域
S
S
S是凸集,且对于所有
x
,
y
∈
S
x,y\in S
x,y∈S和每一个标量
a
∈
(
0
,
1
)
a\in(0,1)
a∈(0,1),满足Jensen不等式:
f
(
a
x
+
(
1
−
a
)
y
)
≤
a
f
(
x
)
+
(
1
−
a
)
f
(
x
)
f(ax+(1-a)y)\le af(x)+(1-a)f(x)
f(ax+(1−a)y)≤af(x)+(1−a)f(x)
f
(
x
)
f(x)
f(x)为严格凸函数,当且仅当
x
,
y
,
a
x,y,a
x,y,a满足:
f
(
a
x
+
(
1
−
a
)
y
)
<
a
f
(
x
)
+
(
1
−
a
)
f
(
x
)
f(ax+(1-a)y)< af(x)+(1-a)f(x)
f(ax+(1−a)y)<af(x)+(1−a)f(x)
凸函数识别的充要条件
一阶充要条件
f
(
x
)
f(x)
f(x)为凸函数,当
x
,
y
,
f
(
x
)
,
f
′
(
x
)
x,y,f(x),f'(x)
x,y,f(x),f′(x)满足:
(
f
′
(
x
)
−
f
′
(
y
)
)
(
x
−
y
)
≥
0
,
∀
x
,
y
∈
S
(f'(x)-f'(y))(x-y)\ge0,\ \forall x,y\in S
(f′(x)−f′(y))(x−y)≥0, ∀x,y∈S
f
(
x
)
f(x)
f(x)为严格凸函数,当
x
,
y
,
f
(
x
)
,
f
′
(
x
)
x,y,f(x),f'(x)
x,y,f(x),f′(x)满足:
(
f
′
(
x
)
−
f
′
(
y
)
)
(
x
−
y
)
>
0
,
∀
x
,
y
∈
S
,
且
x
≠
y
(f'(x)-f'(y))(x-y)>0,\ \forall x,y\in S,且x\ne y
(f′(x)−f′(y))(x−y)>0, ∀x,y∈S,且x=y
f
(
x
)
f(x)
f(x)为凸函数,当
x
,
y
,
f
(
x
)
,
f
′
(
x
)
x,y,f(x),f'(x)
x,y,f(x),f′(x)满足:
f
(
y
)
≥
f
(
x
)
+
f
′
(
x
)
(
y
−
x
)
f(y)\ge f(x)+f'(x)(y-x)
f(y)≥f(x)+f′(x)(y−x)
二阶充要条件
f
(
x
)
f(x)
f(x)为严格凸函数,当且仅当其Hessian矩阵正定:
H
x
f
(
x
)
=
∂
2
f
(
x
)
∂
x
∂
x
T
≻
0
,
∀
x
∈
S
H_xf(x)=\frac{\partial^2 f(x)}{\partial x\partial x^T}\succ0,\ \forall x\in S
Hxf(x)=∂x∂xT∂2f(x)≻0, ∀x∈S
如果Hessian矩阵是半正定,则为一般的凸函数,不是严格凸函数。
凸函数的非负倍数求和、积分、仿射变换都是凸函数。
向量除了
L
0
L_0
L0范数外的所有范数都是凸函数。
无约束凸函数的任意局部极小点
x
∗
x*
x∗都是该函数的一个全局极小点。
凸优化方法总论
对于无约束的平滑(可求导的)凸函数,可用方法包括梯度法,投影梯度法,共轭梯度法,Nesterov最优梯度法;
对于无约束的非平滑凸函数,可用方法分为次梯度类型和平滑函数逼近类型,前者包括迫近函数,共轭函数,原始-对偶次梯度算法,投影次梯度算法;后者包括非平滑函数的平滑逼近,迫近梯度法;
对于有约束的一阶可导凸函数,可用方法包括Lagrangian乘子法与对偶上升法,罚函数法,增广Lagrangian乘子法,交替方向乘子法(ADMM);
其他方法还包括无约束优化的Newton法,适用于无约束的二阶可导凸函数;等式约束优化的Newton法,适用于等式约束的二阶可导凸函数。