2.3 函数的凸性
由前述讨论可知,函数的最优值与极值是有区别的。前者是指全域而言,而后者仅为局部的性质。一般来说,在函数定义的区域内部,最优点必是极值点,反之却不一定。如果能得到两者等同条件,就可以用求极值的方法来求最优值,因此对于函数的最优值与极值之间的关系需做迸一步的讨论。目标函数的凸性与所需讨论的问题有密切的关系。
我们可以先用一元函数来说明函数的凸性。如图2-7所示,图2-7a中在(x(1),x(2))区间上曲线是下凸的,图2-7b的曲线是上凸的,它们的极值点(极小点或极大点)在区间内都是唯一的。这样的函数称为具有凸性的函数,或称为单峰函数。
图2-7 函数的凹凸性定义
2.3.1 凸集与非凸集
为了考虑多元函数的凸性,首先要说明函数定义域应具有的性态。
设D为n维欧氏空间中设计点X的一个集合,若其中任意两点X(1)和X(2)的连线都在集合D中,则称这种集合是n维欧氏空间的一个凸集。二维函数的情况如图2-8所示,其中图2-8a所示为凸集,图2-8b所示为非凸集。
图2-8 函数定义域的性态
在n维空间中,若对某集合D内的任意两点X(1)与X(2)作连线,使连线上的各个内点对任何实数a(0≤a≤1)恒有
X=aX(1)+(1-a)X(2)∈D (2-17)
则称D为凸集。图2-9所示是对于二维问题、式(2-17)对应的向量图解。
n维无约束最优化问题的整个设计空间Rn是凸集。
图2-9 二维函数定义域凸性定义图解
2.3.2 凸函数的定义
设f(X)为定义在n维欧氏空间中一个凸集D上的函数,若对任何实数ξ(0≤ξ≤1)及D域中任意两点X(1)与X(2)存在如下关系:
f(ξX(1)+(1-ξ)X(2))≤ξf(X(1))+(1-ξ)f(X(2)) (2-18)则称函数f(X)是定义在凸集D上的一个凸函数。现用图2-10所示定义于区间[a,b]上的单变量函数来说明这一概念。若连接函数曲线上任意两点的直线段,某一点x(k)的函数值恒低于此直线段上相应的纵坐标值,则这种函数就是凸函数,也就是单峰函数。
若将式(2-18)中的符号“≤”改为“<”,则称函数f(X)为严格凸函数。若将式(2-18)中的符号“≤”改为“≥”,则如图2-7b所示,函数曲线上凸(有极大点),通常称为凹函数。显然,若f(x)为凸函数,则-f(x)为凹函数。
图2-10 凸函数的定义
2.3.3 凸函数的基木性质
1)若函数f1(X)和f2(X)为凸集D上的两个凸函数,对任意正数a和b,函数f(X)=af1(X)+bf2(X)仍为D集上的凸函数。
2)若X(1)与X(2)为凸函数f(X)中的两个最小点,则其连线上的一切点也都是f(X)的最小点。
证明略。
2.3.4 凸函数的判定
判别法1:若函数f(X)在D1上具有连续一阶导数,而D为D1内部的一个凸集,则f(X)为D上的凸函数的充分必要条件为:对任意的X(1),X(2)∈D恒有
f(X(2))≥f(X(1))+(X(2)-X(1))TΔf(X(1)) (2-19)
判别法2:若函数f(X)在凸集D上存在二阶导数并巨连续,f(X)在D上为凸函数的充分必要条件为:对于任意的X∈D,f(X)的黑塞矩阵H(X)处处是正半定矩阵。
若黑塞矩阵H(X)对一切X∈D都是正定的,则f(X)是D上的严格凸函数,反之不一定成立。
例2-1 判别函数f(X)=50-10x1-4x2+x21+x22-x1x2在D={X|-∞<xi<+∞(i=1,2)}上是否为凸函数。
解:利用黑塞矩阵来判别:
因此黑塞矩阵是正定的,故f(X)为严格凸函数。
2.3.5 函数的凸性与局部极值及全域最优值之间的关系
设f(X)为定义在凸集D上的一个函数,一般来说,f(X)的极值点不一定是它的最优点。但是,若f(X)为凸集D上的一个凸函数,则f(X)的任何极值点,同时也是它的最优点。若f(X)还是严格凸函数,则它有唯一的最优点。