一阶条件为什么没写呢?因为Boyd那么书上写的很详细,但是二阶的书上没证。。。当然二阶的证明是基于一阶的结论的~
先从最简单的情况f : R f: Rf:R->R RR证明,高维直接类比就行了。
首先将凸函数的定义以及一阶的结论列下来:(不管有没有用,先列下来?,对于你证明会有益处的,这是中科大的一个老师当时看我证明的吐槽?)
定义:f ( θ x + ( 1 − θ ) y ) ≤ θ f ( x ) + ( 1 − θ ) f ( y ) f(\theta x+(1-\theta)y)\leq \theta f(x)+(1-\theta)f(y)f(θx+(1−θ)y)≤θf(x)+(1−θ)f(y) ( 0 ≤ θ ≤ 1 a n d d o m f i s c o n v e x ) (0\leq \theta \leq 1\ \ and\ \ domf\ is\ convex)(0≤θ≤1 and domf is convex);
一阶条件:f ( x ) ≥ f ( y ) + f ′ ( y ) ( x − y ) f(x)\geq f(y)+f'(y)(x-y)f(x)≥f(y)+f′(y)(x−y)
充分性:
f ( y ) ≤ f ( x ) − f ′ ( y ) ( x − y ) f ( θ x + ( 1 − θ ) y ) ≤ θ f ( x ) + ( 1 − θ ) ( f ( x ) − f ′ ( y ) ( x − y ) ) f ( θ x + ( 1 − θ ) y ) − f ( x ) ≤ − ( 1 − θ ) f ′ ( y ) ( x − y ) f(y)\leq f(x)-f'(y)(x-y)\\ f(\theta x+(1-\theta)y)\leq \theta f(x)+(1-\theta)(f(x)-f'(y)(x-y))\\ f(\theta x+(1-\theta)y)-f(x)\leq -(1-\theta)f'(y)(x-y)f(y)≤f(x)−f′(y)(x−y)f(θx+(1−θ)y)≤θf(x)+(1−θ)(f(x)−f′(y)(x−y))f(θx+(1−θ)y)−f(x)≤−(1−θ)f′(y)(x−y)
when x xx->y yy:
f ( θ x + ( 1 − θ ) y ) − f ( x ) = f ′ ( x ) ( 1 − θ ) ( y − x ) f ′ ( x ) ( 1 − θ ) ( x − y ) ≥ ( 1 − θ ) f ′ ( y ) ( x − y ) f ′ ( x ) − f ′ ( y ) x − y ≥ 0 f(\theta x+(1-\theta)y)-f(x)=f'(x)(1-\theta)(y-x)\\ f'(x)(1-\theta )(x-y)\geq (1-\theta)f'(y)(x-y)\\ \frac{f'(x)-f'(y)}{x-y}\geq 0f(θx+(1−θ)y)−f(x)=f′(x)(1−θ)(y−x)f′(x)(1−θ)(x−y)≥(1−θ)f′(y)(x−y)x−yf′(x)−f′(y)≥0
得证:f ′ ′ ( x ) ≥ 0 f''(x)\geq 0f′′(x)≥0
必要性:
由f ′ ′ ( x ) ≥ 0 f''(x)\geq 0f′′(x)≥0可得:
( x − y ) [ f ′ ( x ) − f ′ ( y ) ] ≥ 0 (x-y)[f'(x)-f'(y)]\geq 0(x−y)[f′(x)−f′(y)]≥0
( x − y ) f ′ ( x ) ≥ f ′ ( y ) ( x − y ) (x-y)f'(x)\geq f'(y)(x-y)(x−y)f′(x)≥f′(y)(x−y)
设g ( x ) = ( x − y ) f ′ ( x ) − [ f ( x ) − f ( y ) ] g ′ ( x ) = ( x − y ) f ′ ′ ( x ) = 0 g(x)=(x-y)f'(x)-[f(x)-f(y)]\\ g'(x)=(x-y)f''(x)=0g(x)=(x−y)f′(x)−[f(x)−f(y)]g′(x)=(x−y)f′′(x)=0
所以当x = y x=yx=y时,g ( x ) g(x)g(x)取得极小值,即g ( x ) m i n = 0 g(x)_{min}=0g(x)min=0
也就是说,( x − y ) f ′ ( x ) ≥ f ( x ) − f ( y ) ≥ f ′ ( y ) ( x − y ) (x-y)f'(x)\geq f(x)-f(y)\geq f'(y)(x-y)(x−y)f′(x)≥f(x)−f(y)≥f′(y)(x−y)
得证一阶条件,f ( x ) ≥ f ( y ) + f ′ ( y ) ( x − y ) f(x)\geq f(y)+f'(y)(x-y)f(x)≥f(y)+f′(y)(x−y),从而必要性得证。
所以,凸函数的二阶条件就是f ′ ′ ( x ) ≥ 0 f''(x)\geq 0f′′(x)≥0(高维:∇ 2 f ( x ) ⪰ 0 \nabla^{2}f(x)\succeq0∇2f(x)⪰0)