求解多变量非线性全局最优解_共轭梯度法(二):非线性共轭梯度

本文介绍了非线性共轭梯度法,包括Fletcher-Reeves (FR-CG) 和 Polak-Ribière (PR-CG) 算法,这两种方法适用于求解多变量非线性全局最优解。FR-CG通过线搜索策略迭代,但可能存在收敛慢的问题。PR-CG作为改进版,通常表现更好,尤其在凸二次函数中。全局收敛性和重新启动策略对于算法性能至关重要。
摘要由CSDN通过智能技术生成

上篇文章介绍了线性共轭梯度法。简单回顾一下,线性共轭梯度法是一种不需要矩阵求逆或矩阵分解,以迭代的方式求解线性方程的方法,而且可以保证在N次迭代内收敛,其中N是变量的维度。对于维度较大的问题,辅以良好的预处理步骤,算法可以在很少的步数内收敛,得到一个比较好的近似解。

在线性共轭梯度法提出约10年后,Fletcher和Reeves将其推广到非线性优化问题中,称为非线性共轭梯度法。这种新方法可以替代之前讲过的线搜索和信赖域方法,并且仍然在高维度问题中展现出非凡的性能。

Fletcher-Reeves CG

我们把Fletcher和Reeves最早提出的非线性共轭梯度法称为Fletcher-Reeves CG(FR-CG)算法。按照惯例,我们应该先介绍该方法提出的动机,并一步步推导其计算公式。但据我所知,FR-CG似乎不是从某个目标推导出来的,而是直接在CG(线性共轭梯度法)上改进而来的。直接替换CG算法中某些值的计算方法,如下所示

与共轭梯度法(一):线性共轭梯度中的式(5.23)相比,只修改了两处。一是计算

的方式,用线搜索(一):步长的选取中介绍的线搜索算法来搜索
方向上可接受的步长。之所以这样做,是因为在非线性问题中,我们已经无从构造一组共轭向量了,而且也不可能保证N次迭代内收敛。FR-CG更像是一种线搜索方法,通过所谓共轭梯度的方式计算优化方向,然后用步长搜索算法计算一个可接受的步长。二是用梯度
替代残差
,因为在CG中,残差恰好就是梯度,这里只不过将其推广而已。换句话说,式(5.40)不过是CG推广到普通非线性函数后的结果,CG则是其在二次函数下的特例。

不过,强行推广到普通非线性函数就能奏效吗?那可未必。首先,我们要确认式(5.40)的每次迭代都能生成使得目标函数下降的方向。其次,我们还要探究该方法是否能保证全局收敛。

第一个问题等价于证明

,我们代入式(5.40)的第4行,得到

如果第

次迭代求得了确切解,即
方向上的最优步长,那么下一次迭代的梯度方向一定与上次迭代方向垂直,即
,于是
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值