🚀个人主页:欢迎访问Ali.s的首页
⏰ 最近更新:2022年8月8日
⛽ Java框架学习系列:【Spring】【SpringMVC】【Mybatis】
🔥 Java项目实战系列:【飞机大战】【图书管理系统】
🍭 Java算法21天系列:【查找】【排序】【递归】
⛳ Java基础学习系列:【继承】【封装】【多态】
🏆 通信仿真学习系列:【硬件】【通信】【MATLAB】
🍄 个人简介:通信工程本硕🌈、Java程序员🚴。目前只会CURD😂
💌 点赞 👍 收藏 💗留言 💬 都是我最大的动力💯

一、拟牛顿法介绍
为了解决牛顿法中可能出现在某步迭代时,目标函数数值上升的问题,引入阻尼牛顿法进行修正,但是在牛顿法和阻尼牛顿法中都存在计算Hesse矩阵的问题,使得在多次迭代时可能会出现计算量过大的问题,为解决Hesse矩阵的问题,引入共轭梯度法对优化问题进行处理。它不需要对Hesse矩阵进行计算,只需要对函数的一阶导数进行处理,不仅克服了最速下降法收敛慢的缺点,而且避免了牛顿法需要计算Hesse矩阵并求逆的缺陷,拟牛顿法通过正定矩阵近似Hesse矩阵的逆矩阵或Hesse矩阵,简化了这一计算过程。而拟牛顿法中对满足条件的正定矩阵的给出了表述:
(1)正定矩阵近似等于Hesse矩阵,还得相应的算法产生的方向近似于牛顿方向,这样有利于保证算法的较快收敛速度。
(2)在保证矩阵是正定的前提下,还要求是对称的,确保函数的下降方向。
(3) 矩阵的更新规则比较简单,基本采用r(A)=1的矩阵进行校正;
二、拟牛顿法原理
设函数f在x(k+1)处的二次近似模型为:

对上式进行求导,得到g(x):

本文介绍了拟牛顿法的概念,旨在解决牛顿法在迭代过程中可能出现的计算量过大问题。通过正定矩阵近似矩阵的逆,简化计算过程,保证算法的收敛速度。内容包括拟牛顿法的原理、步骤、代码实现及测试,讨论了对称性和矩阵更新策略。
订阅专栏 解锁全文

4318

被折叠的 条评论
为什么被折叠?



