牛顿法和拟牛顿法

提要:今天讲的牛顿法与拟牛顿法是求解无约束问题最优化方法的常用方法。

一 牛顿法

假设我们求下面函数的最小值:

假设f(x)具有连续的二阶的连续偏导数,假设第K次迭代值为xk的值,那么可将f(X)在xk附近进行二阶泰勒展开得到:

我们对上述公式求导可得:

    

假设其中可逆,我们就可以得到牛顿法的迭代公式为:

    

这样就可以得到牛顿法的迭代公式了。

牛顿法算法如下:

输入:目标函数f(X),梯度▽f(x),海赛矩阵H(x),精度要求ε;

输出:f(x)的极小点x*.

步骤一:取初始点x0,置k=0

步骤二:计算梯度▽f(x)

步骤三:||▽f(x)||〈ε,那么停止计算得到的x*=xk

步骤四:计算H(x)

步骤五:

步骤6:转步骤二

牛顿法的缺点:牛顿法收敛速度快,但是要计算二阶偏导数矩阵及其逆阵,计算量过大

二 拟牛顿法

拟牛顿法与原始牛顿法的区别在于增加了沿牛顿方向的一维搜索,其迭代公式为:

其中为牛顿方向,是由一维搜索的步长,也就是满足:

    

其实牛顿法就是阻尼牛顿法步长为1的特殊情况。

拟牛顿法算法:

输入:目标函数f(X),梯度▽f(x),海赛矩阵H(x),精度要求ε;

输出:f(x)的极小点x*.

步骤一:取初始点x0,置k=0

步骤二:计算梯度▽f(x)

步骤三:||▽f(x)||〈ε,那么停止计算得到的x*=xk

步骤四:计算H(x)

步骤五:从xk出发,沿着dk方向作一维搜索,

        

步骤六:

步骤七:转步骤二

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值