非线性优化(一)

一、非线性最优化的基本概念

1.基本概念

规划问题的目标函数及约束函数中至少有一个是非线性函数,则称这种规划为非线性规划。

非线性规划的数学模型常表示成以下形式

Minf(X)

hi(X)=0 i=1,2, … ,m

目标函数与约束函数的方程组。

设f(X)为定义在n维欧氏空间En的某一区域S上的n元实函数,其中X=(x1 ,x2… xn)T 。

 

局部极小点(值):对于X*∈S,如果存在ε>0,使所有与X*的距离小于ε的X∈S,均满足不等式f(X)≥f(X* ),则称X*为f(X)在S上的局部极小点, f(X* )为局部极小值。

 

严格局部极小点(值):对于所有X≠X*且与X*的距离小于ε的X∈S,f(X)>f(X* ),则称X* 为f(X)在S上的严格局部极小点,f(X* )为严格局部极小值。

 

全局极小点(值):对于所有的X∈S,都有f(X)≥f(X* ),则称X* 为f(X)在S上的全局极小点,f(X* )为全局极小值。

 

严格全局极小点(值):对于所有X∈S且X≠X* ,都有f(X)> f(X* ),则称X* 为f(X)在R上的严格全局极小点,f(X* )为严格全局极小值。

 

将上述不等式反向,即可以得到相应的极大点和极大值的定义。

 

定理2 (充分条件)设S是n维欧氏空间En 上的某一开集,f(X)在S上具有二阶连续偏导数,X*∈S,若▽f(X*) =0,且对任何非零向量Z∈En有   

            ZTH(X*)Z>0                              (1.4)

则X*为f(X)的严格局部极小点.此处H(X*)为f(X)在点X*处的海赛(Hesse)矩阵.

 

  1. 3.凸函数和凹函数

凸函数:设f(X)是定义在n维欧氏空间En中某个凸集S上的函数, 若对任何实数a(0<a <1)以及S中的任意两点X(1)和X(2),恒有

      f(aX(1)+(1-a) X(2)) ≤ af(X(1))+(1-a)f(X(2))              (1.5)

则称f(X)为定义在S上的凸函数.

 

凸集实数R(或复数C上)向量空间中,集合S称为凸集,如果 S 中任两点的连线内的点都在集合S内。对欧氏空间,直观上,凸集就是凸的。在一维空间中,凸集是单点或一条不间断的线(包括直线、射线、线段);二、三维空间中的凸集就是直观上凸的图形

严格凸函数:若对每一个a(0<a<1)以及S中的任意两点X(1)和X(2), X(1)≠ X(2)  ,恒有

f(aX(1)+(1-a) X(2)) < af(X(1))+(1-a)f(X(2))     (1.6)

则称f(X)为定义在S上的严格凸函数.

将(1.5)和(1.6)中的不等号反向,即可得到凹函数和严格凹函数的定义.

 

凸函数的性质

性质1  设f(X)为定义在凸集S上的凸函数, 则对任意实数b≥ 0,函数bf(X)也是定义在S上的凸函数.

性质2  设f1(X)和 f2(X)为定义在凸集S上的两个凸函数,则其和f(X)= f1(X)+f2(X)仍为定义在S上的凸函数.

性质3 设f(X)为定义在凸集S上的凸函数,则对任一实数b,集合

Sb ={X|X ∈S ,f(X) ≤b}是凸集(Sb称为水平集).

水平集:在数学领域中, 一个具有n变量的实值函数f的水平集是具有以下形式的集合{ (x1,...,xn) | f(x1,...,xn) = c } 其中 c 是常数。即, 使得函数值具有给定常数的变量集合。当具有两个变量时, 称为水平曲线(等高线), 如果有三个变量, 称为水平曲面, 更多变量时, 水平集被叫做水平超曲面。

函数凸性的判定

定理3(一阶条件)设S为n维欧氏空间 En上的开凸集,f(X)在S上具有一阶连续偏导

数,则f(X)为S上的凸函数的充要条件是,对任意两个不同点X(1) ∈S和X(2) ∈S,恒有

  f(X(2) )≥f(X(1) )+▽f(X(1) )T(X(2) -X(1))

 

定理4(二阶条件)设S为n维欧氏空间En上的开凸集, f(X)在S上具有二阶连续偏导数,

则f(X)为S上的凸函数的充要条件是:f(X)的Hesse矩阵H(X)在S上处处半正定.

 

如果对任何非零向量x,都有x'Ax≥0(或x'Ax≤0)成立,且有非零向量x0,使x0'Ax0=0,则称f为半正定(半负定)二次项,矩阵A称为半正定矩阵(半负定矩阵)。其所有的主子式非负

定理5  设S为n维欧氏空间 En 上的开凸集, f(X)在S上二次可微,若任意x∈S,Hesse矩阵正定,则f是S上的严格凸函数

 

正定矩阵特征及性质

判定定理1:对称阵A为正定的充分必要条件是:A的特征值全为正。

判定定理2:对称阵A为正定的充分必要条件是:A的各阶顺序主子式都为正。

判定定理3:任意阵A为正定的充分必要条件是:A合同于单位阵。

正定矩阵的性质:

1.正定矩阵的任一主子矩阵也是正定矩阵。

2.若A为n阶对称正定矩阵,则存在唯一的主对角线元素都是正数的下三角阵L,使得A=L*L′,此分解式称为 正定矩阵的楚列斯基(Cholesky)分解。

3.若A为n阶正定矩阵,则A为n阶可逆矩阵

 

定理6  若f(X)为定义在凸集S上的凸函数,则它的任一极小点就是它在S上的最小点(全

局极小点); 而且,它的极小点形成一个凸集.

定理7  设f(X)是定义在凸集S上的可微凸函数, 若存在点X*∈S, 使得所有的X∈S有    

      ▽f(X*)T(X-X*)≥0

则X*是f(X)在S上的最小点(全局极小点).

注1:若▽f(X*) =0,则▽f(X*)T(X-X*)≥0.

注2:最小点未必唯一,但凸集上严格凸函数的最小点唯一.

注3:对凹函数也有上述类似的结果.

 

满足约束条件的点称为可行点(可行解),所有可行点的集合称为可行域。

若某个可行解使目标函数最小,就称它为最优解。

 

4.下降迭代算法

迭代法基本思想:

为了求函数f(X)的最优解,首先给定一个初始估计X(0),然后按某种算法找出比X(0)更好的解X(1)(对极小化问题,f(X(1))<f(X(0));对极大化问题,f(X(1))> f(X(0))),再按此种规则找出比X(1)更好的解X(2),….如此即可得到一个解的序列{X(k)}.若这个解序列有极限X*,即limk→∞‖X(k)-X*‖=0,则称它收敛于X*.若这算法是有效的,那么它所产生的解的序列将收敛于该问题的最优解.

若由某算法所产生的解的序列{X(k)}使目标函数值f(X(k))逐步减小,就称这算法为下降算法.

假定已迭代到点X(k),若从X(k)出发沿任何方向移动都不能使目标函数下降,则X(k)是局部极小点,迭代停止.若从X(k)出发至少存在一个方向可使目标函数值有所下降,则可选能使目标函数值下降的某方向P(k),沿这方向迈进适当的一步,得到下一个迭代点X(k+1),并使 f(X(k+1))<f(X(k)).这相当于在射线X= X(k)+λP(k)上选定新点X(k+1)=X(k)+λkP(k)

其中P(k)称为搜索方向;λk称为步长或步长因子.

下降迭代法的步骤:

  (1).选定某一初始点X(0),并令k:=0.

  (2).确定搜索方向P(k).

  (3). 从X(k)出发,沿方向P(k)求步长λk,以产生下一个迭代点X(k+1).

  (4). 检查得到的新点X(k+1)是否为极小点或近似极小点.若是,则停止迭代.否则,令k:=k+1,转回(2)继续进行迭代.

 

在下降迭代步骤中,关键是选取搜索方向P(k)和确定步长λk .

确定步长λk的常用方法:

(1) 令λk等于某一常数.

(2) 只要能使目标函数值下降,可选取任意λk.

(3) 沿射线X= X(k)+λP(k)求目标函数f(X)的极小

λk : φ(λ)=Minf(X(k)+λP(k))

称这一过程为(最优)一维搜索或线搜索,以此确定的步长为最佳步长.       

 

迭代计算法的收敛速度

     设序列{x(k)}收敛于x*,若存在与k无关的数,0<β<+∞和α≥1,使得

      ‖X(k+1)-X*‖≤β‖X(k)-X*‖α,  k≥k0

则称{x(k)}收敛的阶为α,或{x(k)} α阶收敛.

      当α=2时,称为二阶收敛,也称{x(k)}具有二阶敛速;当1<α<2时,称为超线性收敛;

当α=1, 0<β<1时,称为线性收敛或一阶收敛.

    定理8  设目标函数f(X)∈C(1),X(k+1)按下述规则产生

λk : Minf(X(k)+λP(k))

          X(k+1)= X(k)+λkP(k)

则有 ▽f(X(k+1))TP(k)=0.

证 设φ(λ)=f(X(k)+λP(k)),则由

   φ’(λ)=▽f(X(k)+ λP(k))T P(k)=0 得 λ= λk

 ∴▽f(X(k)+ λkP(k))T P(k)=▽f(X(k+1))TP(k)=0

 

 

常用的收敛的准则有以下几种:

(1). 根据相继两次迭代的绝对误差

              ‖X(k+1)-X(k)‖<ε

        |f(X(k+1))-f(X(k))|< ε

(2).根据相继两次迭代的相对误差

         ‖X(k+1)-X(k)‖/‖X(k)‖ <ε

            |f(X(k+1))-f(X(k))|/|f(X(k))|<ε

这时要求分母不接近于零.

 

下单峰概念

     设f: R→R, [a,b]为R的区间.若存在点x*∈[a,b],使得f(x)在[a,x*]上严格单减,在

[x*,b]上严格单增,则称[a,b]是f(x)的下单峰区间,f(x)是[a,b]上的下单峰函数.

 

定理9   f(x)是[a,b]上的下单峰函数,对任意的x1,x2∈[a,b], x1<x2,那么

(1).若f(x1)≥f(x2),则[x1,b]是f(x)的下单峰区间;

(2).若f(x1)≤f(x2),则[a,x2]是f(x)的下单峰区间.

 

如果函数f(x)在区间[a, b]上只有唯一的最大值点(或最小值点)C,而在最大值点(或最小值点)C的左侧,函数单调增加(减少);在点C的右侧,函数单调减少(增加),则称这个函数为区间[a, b]上的单峰函数。

  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值