1.定义
2.保凸运算
3.保凸算子
4.凸优化问题
5.借助拉格朗日函数做优化
6.凸函数的满足条件及常见例子
1.定义:
在了解凸函数之前,我们需要先了解一下仿射集:
仿射集(Affine set):通过 集合C中任意两不同点的直线仍在集合C内,我们则称集合C为仿射集.如:直线,平面
数学表达:设x1,x2为定义在集合C中任两个不同点,即x1≠x2且x1,x2
ϵ
\epsilon
ϵ C , θ
ϵ
\epsilon
ϵ R,对θ均有
θ
x
1
+
(
1
−
θ
)
x
2
ϵ
C
\theta _{x1}+(1-\theta ) x_{2} \epsilon C
θx1+(1−θ)x2ϵC ,则C为仿射集.
凸集:若要求θ
ϵ
\epsilon
ϵ [0,1],则C为凸集.
由上述可知,仿射集必为凸集.
2.保凸运算:
a.两凸集的交集仍为凸集
b.仿射交换即为线性交换
c.透视交换
d.投射交换
3.保凸算子:
凸函数的非负加权和
凸函数和仿射函数的复合
凸函数的逐点最大值,逐点上确界(逐点最大值和逐点最小值的几何意义:在平面上画N条直线(凸集),在每个x处取这些直线的最大值,构成的新函数也是凸函数)
f(x) = max(f1(x),f2(x),fk(x)…fn(x))
f(x) = sup g(x,y)
4.凸优化问题:
minimize f0(x), x
ϵ
\epsilon
ϵ R, (优化变量)
s.t. fi(x)<=0,i=1,2…m
hj(x)<=0,j=1,2…n
其中,
fi(x)为凸函数,是不等式约束
hj(x)为仿射函数,是等式约束
凸优化的可行域为凸集,凸优化的局部最优解即为全局最优解
5.借助拉格朗日函数来做优化:
原函数:
minimize f0(x), x
ϵ
\epsilon
ϵ R, (优化变量)
s.t. fi(x)<=0,i=1,2…m
hj(x)<=0,j=1,2…n
Lagrange函数:
L
(
x
,
λ
,
v
)
=
f
0
(
x
)
+
∑
i
=
1
m
λ
i
f
i
(
x
)
+
∑
j
=
1
n
v
j
h
j
(
x
)
L(x,\lambda ,v) = f _{0}(x) + \sum_{i=1}^{m}\lambda _{i}f_{i}(x) + \sum_{j=1}^{n}v_{j}h_{j}(x)
L(x,λ,v)=f0(x)+∑i=1mλifi(x)+∑j=1nvjhj(x)
Lagrange对偶函数:
g
(
λ
,
v
)
=
i
n
f
(
L
(
x
,
λ
,
v
)
)
=
i
n
f
(
f
0
(
x
)
+
∑
i
=
1
m
λ
i
f
i
(
x
)
+
∑
j
=
1
n
v
j
h
j
(
x
)
)
g(\lambda ,v)=inf(L(x,\lambda ,v)) = inf(f _{0}(x) + \sum_{i=1}^{m}\lambda _{i}f_{i}(x) + \sum_{j=1}^{n}v_{j}h_{j}(x))
g(λ,v)=inf(L(x,λ,v))=inf(f0(x)+∑i=1mλifi(x)+∑j=1nvjhj(x))
6.凸函数:
若一函数满足:
a.定义域是凸集
b.
f
(
a
1
x
1
+
a
2
x
2
)
≤
a
1
f
(
x
1
)
+
a
2
f
(
x
2
)
f(a_{1}x_{1}+a_{2}x_{2})\leq a_{1}f(x_{1})+a_{2}f(x_{2})
f(a1x1+a2x2)≤a1f(x1)+a2f(x2) 其中,
∑
a
1
=
1
,
a
i
≥
0
\sum a_{1}=1,a_{i}\geq 0
∑a1=1,ai≥0
则该函数为凸函数
常见的凸函数有:
指数函数
幂函数
负对数函数
负熵函数
范数
最大值函数