UA MATH575B 数值分析下II 牛顿算法

本文介绍了数值分析中的牛顿算法及其改进方法,包括纯牛顿算法、阻尼牛顿算法、Levenberg-Marquardt算法和Quasi-Newton算法。详细讨论了这些算法的优缺点和应用实例,例如在优化问题中的应用,并展示了使用牛顿法和BFGS算法解决特定函数最小值问题的过程。
摘要由CSDN通过智能技术生成

Pure Newton算法

考虑优化问题
min ⁡ x f ( x ) \min_{x} f(x) xminf(x)
Pure Newton算法其实就是把Newton-Raphson算法用来接优化的一阶条件 ∇ f ( x ) = 0 \nabla f(x)=0 f(x)=0,递推公式为
x k + 1 = x k − H − 1 f ( x k ) ∇ f ( x k ) x_{k+1} = x_{k} - H^{-1}f(x_{k}) \nabla f(x_{k}) xk+1=xkH1f(xk)f(xk)
其中 H − 1 H^{-1} H1代表Hessian矩阵的逆。因为 ∇ f ( x ) = 0 \nabla f(x)=0 f(x)=0的解不一定是全局最优解,它还可能是局部最优解或者鞍点,这个是Pure Newton算法最大的问题。还有就是这个下降的步长完全是由 H − 1 f ( x k ) ∇ f ( x k ) H^{-1}f(x_{k}) \nabla f(x_{k}) H1f(xk)f(xk)计算决定的,没有控制步长的操作,可能导致下降路径步与步之间变动非常大。下面两种算法是针对这个缺点的改进。

Damped Newton算法

阻尼牛顿算法在牛顿算法的基础上给步长加了一个阻尼因子 t t t
x k + 1 = x k − t H − 1 f ( x k ) ∇ f ( x k ) = x k + t Δ x k x_{k+1} = x_{k} - tH^{-1}f(x_{k}) \nabla f(x_{k}) = x_{k} + t \Delta x_{k} xk+1=xktH1f(xk)f(xk)=xk+tΔxk
在写算法的时候这个 t t t用线性回溯搜索来找
t = arg min ⁡ t ≥ 0 f ( x k + t Δ x k ) t = \argmin_{t \ge 0} f(x_k + t \Delta x_k) t

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值