凸函数有很好的极值性质,这使其在非线性规划中占有重要的地位。凹函数与凸函数相似,凸函数具有全局极小值,凹函数具有全局极大值。 因为两者很方便进行转换,我们以凸函数为例作介绍。
1. 凸函数的定义
要定义凸函数,首先必须要对凸集有所了解。
凸集:给定集合以及其中的任意两个元素 x ( 1 ) x^{(1)}x(1)和x ( 2 ) x^{(2)}x(2),即 x ( 1 ) ∈ S x^{(1)}in Sx(1)∈S且 x ( 2 ) ∈ S x^{(2)}in Sx(2)∈S,若对任意实数λ ( 0 < λ < 1 ) lambda(0<lambda<1)λ(0<λ<1),恒有λ x ( 1 ) + ( 1 − λ ) x ( 2 ) ∈ S lambda x^{(1)}+(1-lambda)x^{(2)}in Sλx(1)+(1−λ)x(2)∈S,则称S SS为凸集。
凸函数:设 f ( x ) f(x)f(x)为定义在n维欧氏空间R n R^nRn 中某个凸集S SS 上的函数,若对任意实数λ ( 0 < λ < 1 ) lambda(0<lambda<1)λ(0<λ<1)以及 S SS中的任意两点x ( 1 ) x^{(1)}x(1)和x ( 2 ) x^{(2)}x(2),恒有f ( λ x ( 1 ) + ( 1 − λ ) x ( 2 ) ) ≤ λ f ( x ( 1 ) ) + ( 1 − λ ) f ( x ( 2 ) ) f(lambda x^{(1)}+(1-lambda)x^{(2)})leq lambda f( x^{(1)})+(1-lambda)f(x^{(2)})f(λx(1)+(1−λ)x(2))≤λf(x(1))+(1−λ)f(x(2))
则f ( x ) f(x)f(x)称为定义在凸集S SS上的凸函数。
若对任意实数λ ( 0 < λ < 1 ) lambda(0<lambda<1)λ(0<λ<1)以及 S SS中的任意两点x ( 1 ) x^{(1)}x(1)和x ( 2 ) x^{(2)}x(2),恒有f ( λ x ( 1 ) + ( 1 − λ ) x ( 2 ) ) < λ f ( x ( 1 ) ) + ( 1 − λ ) f ( x ( 2 ) ) f(lambda x^{(1)}+(1-lambda)x^{(2)})< lambda f( x^{(1)})+(1-lambda)f(x^{(2)})f(λx(1)+(1−λ)x(2))<λf(x(1))+(1−λ)f(x(2))则称f ( x ) f(x)f(x)为定义在凸集S SS上的严格凸函数。
线性函数既是凸函数又是凹函数,但都不是严格凸函数和严格凹函数。
2. 凸函数的性质
性质1: 设f ( x ) f(x)f(x)为定义在凸集S SS上的凸函数,则对任意实数β > 0 beta > 0β>0 ,函数 β f ( x ) beta f(x)βf(x)也是定义在凸集S SS上的凸函数。
性质2: 设f 1 ( x ) f_1(x)f1(x) 和f 2 ( x ) f_2(x)f2(x) 都是定义在凸集S SS上的凸函数,则函数f 1 ( x ) + f 2 ( x ) f_1(x)+f_2(x)f1(x)+f2(x)也是定义在凸集S SS上的凸函数。
性质3: 设f ( x ) f(x)f(x)为定义在凸集S SS上的凸函数,则对任意实数β betaβ,集合S β = { x ∣ x ∈ S , f ( x ) ≤ β } S_{beta}={x|x in S,f(x) leq beta }Sβ={x∣x∈S,f(x)≤β}是凸集。
性质4: 设f ( x ) f(x)f(x)为定义在凸集S SS上的凸函数,则f ( x ) f(x)f(x)的任一个极小点就是它在S SS上的全局极小点,而且所有极小点的集合是凸集。
3. 凸函数的判别
判断一个函数是否为凸函数,最基本的方法是使用其定义。但对可微函数,下面介绍的两个判定定理可能更为有效。
一阶判定条件: 设f ( x ) f(x)f(x)在凸集S SS上具有一阶连续偏导数,则f ( x ) f(x)f(x)为S SS上凸函数的充分必要条件是,对S SS中任意两点 x ( 1 ) x^{(1)}x(1)和x ( 2 ) x^{(2)}x(2),恒有f ( x ( 2 ) ) ≥ f ( x ( 1 ) ) + ∇ f ( x ( 1 ) ) T ( x ( 2 ) − x ( 1 ) ) f(x^{(2)})geq f(x^{(1)})+
abla f(x^{(1)})^T(x^{(2)}-x^{(1)})f(x(2))≥f(x(1))+∇f(x(1))T(x(2)−x(1))
二阶判定条件: 设f ( x ) f(x)f(x)在开凸集S SS上具有二阶连续偏导数,则f ( x ) f(x)f(x)为S SS上凸函数的充分必要条件是,f ( x ) f(x)f(x)的海赛矩阵∇ 2 f ( x )
abla ^2 f(x)∇2f(x)在S SS上处处半正定。