[最优化方法笔记] 拟牛顿法 SR1, BFGS, DFP
1. 拟牛顿法
1.1 回顾牛顿法
牛顿法(经典牛顿法)的迭代表达式:
但是,牛顿法过程中
1.2 拟牛顿法
拟牛顿法 的核心思路在于,在牛顿法的迭代过程中,用 近似解 计算第
用 近似值
在近似
其中
1.3 拟牛顿法基本过程
拟牛顿法:
-
令
,任选初始点 ,令 -
计算 梯度
,如果满足终止条件 ,取 ,并结束整个算法 -
计算 搜索方向
, 为当前 处的 矩阵的近似 -
迭代更新
: -
更新
: 根据 点的信息进行简单修正
当然,也可以用线搜索增加一个步长
-
令
,任选初始点 ,令 -
计算 梯度
,如果满足终止条件 ,取 ,并结束整个算法 -
计算 搜索方向
, 为当前 处的 矩阵的近似 -
计算 步长
,通过 线搜索 确定当前第 次迭代的步长(精确搜索、直接搜索、 非精确准则等) -
迭代更新
: -
更新
: 根据 点的信息进行简单修正
2. 拟牛顿法 的确定
2.1 割线方程
设
令
忽略高阶项
所以,我们希望 近似
因此 近似
上述的两个方程被称为 割线方程。
2.2 曲率条件
保证
这个条件被称为 曲率条件,是 拟牛顿法迭代过程中的必要条件之一。
3. SR1 方法
3.1 SR1 定义
我们希望
需要保证
显然
3.2 SR1 更新公式
根据 割线方程
整理可得:
其中可以得出
记
将
由于
显然只有在
因此,我们可以得到:
将上式
记
由此得到了最终
3.3 SR1 的缺点
-
在迭代过程中 无法保证
正定,也就是说 搜索方向不一定下降。而且即使 正定,也 不一定保证 -
无法保证
恒大于 0,因此也可能会导致后续的 非正定。
由于上述缺点,
4. BFGS 方法
4.1 BFGS 定义
显然
4.2 BFGS 更新公式
根据 割线方程
整理可得:
可以得出
化简可得所有 待定参量的取值:
PS:
将上述取值回代到 更新表达式
借助
由此得到了最终
使用
4.3 BFGS 有效性
-
或 正定 -
满足 曲率条件
基于
对于 拟阻尼牛顿法,采用
综上,
5. DFP 方法
5.1 DFP 定义
5.2 DFP 更新公式
根据 割线方程
整理得:
可以得出
不妨取
化简可得所有 待定参量的取值:
PS:
将上述取值回代到 更新表达式
借助
由此得到了最终
5.3 DFP 方法的劣势
尽管
参考
刘浩洋,户将, 李勇锋,文再文,《最优化:建模、算法与理论》
一切都是命运石之门的选择,本文章来源于博客园,作者:MarisaMagic,出处:https://www.cnblogs.com/MarisaMagic/p/17904431.html,未经允许严禁转载
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix