最优化学习笔记(四)——最速下降法

一、最速下降法的理念

     最速下降法是梯度方法的一种实现,它的理念是在每次的迭代过程中,选取一个合适的步长 αk ,使得目标函数的值能够最大程度的减小。 αk 可以认为是函数 ϕk(α)=f(x(k)αf(x(k))) 的极小值点:

αk=argminf(x(k)αf(x(k))),α0

由梯度迭代公式可知: x(k+1)=x(k)αf(x(k)) , 上式的解释是找到最优的迭代点 x(k+1) , 使得函数 f(x) 取得极小值时,求出步长 αk
     概述最速下降法的过程:在每一步的迭代中,从点 x(k) 出发,沿着梯度的负方向(求极小值点)展开一维搜索,直到找到步长最优值,确定新的迭代点 x(k+1) 最速下降法的相邻搜索方向都是正交的

二、最速下降法的两个命题和停止条件

2.1 最速下降法的两个命题

命题1 利用最速下降法搜索函数 f:R2R 的极小值点,迭代过程产生的序列为 {x(k)}k=0 , 那么, x(k+1)x(k) x(k+2)x(k+1) 正交对所有 k0 都成立。

命题2 利用最速下降法搜索函数 f:RnR 的极小值点,迭代过程产生的序列为 {x(k)}k=0 , 如果 f(x(k))0 , 那么 f(x(k+1))<f(x(k))

     命题1说明在迭代过程中,没产生一个新点,对应的目标函数值都会下降。命题2说明了最速下降法的下降特性:只要 f(x(k))0 , 就有 f(x(k+1))<f(x(k)) 。对于某个 k , 如果f(x(k))=0,说明 x(k) 满足局部极小点的一阶必要条件,此时 x(k+1)=x(k) ,这可以作为停止规则的基础。

2.2 几种停止规则

     在实际中,采用数值计算的方法很难恰好得到梯度为0的结果,因此以梯度为0作为停止规则很不恰当。以下, ϵ>0

1. |f(x(k+1))f(x(k))|<ϵ

2. ||x(k+1)x(k)||<ϵ

3. |f(x(k+1))f(x(k))||f(x(k))|<ϵ

4. ||x(k+1)x(k)||||x(k)||<ϵ

5. |f(x(k+1))f(x(k))|max{1,|f(x(k))|}<ϵ

6. ||x(k+1)x(k)||max{1,||x(k)||}<ϵ

上边的3,4式为1,2式的相对值,而5,6式是为了避免3,4式中的分母过小进行的修改。

三、二次型中最速下降法的应用

     首先,二次型的目标函数为

f(x)=12xTQxbTx

其中, QbRn,xRn, 故有:
f(x)=Qxb

令:
g(k)=f(x(k))=Qx(k)b

则,最速下降法的迭代公式:
x(k+1)=x(k)αkg(k)

其中,
αk=argminα0f(x(k)αg(k))ϕk(α)=f(x(k)αg(k))

当目标函数是二次型函数时,可以确定 x(k) 处的步长 αk 的解析式。当 g(k)=0 时,迭代停止,当 g(k)0 时,利用局部极小点的一阶必要条件可得:
ϕk(α)=(x(k)αg(k))TQ(g(k))bT(g(k))

ϕk(α)=0 时, αg(k)TQg(k)=(x(k)TQbT)g(k) ,因为 Q 对称, Q=QT ,得:
x(k)TQbT=g(k)T

所以:
αk=g(k)Tg(k)g(k)TQg(k)

所以,目标函数为二次型函数时,最速下降法的迭代公式为:
x(k+1)=x(k)g(k)Tg(k)g(k)TQg(k)g(k)

其中,
g(k)=f(x(k))=Qx(k)b

  • 19
    点赞
  • 90
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值