最优化共轭梯度法matlab代码实现 | 您所在的位置:网站首页 › 非线性共轭梯度算法 › 最优化共轭梯度法matlab代码实现 |
FR共轭梯度法实际上是利用梯度和上一次的搜索方向来构造本次搜索方向: dk=-gk+βk-1dk-1 即:用上一次的搜索方向修正最速下降法的负梯度方向,不仅避免了锯齿现象,与牛顿法相比也节约了计算量。运用共轭,线性无关的同时,也适应大条件数。 共轭梯度法克服了最速下降法收敛慢,只需要利用一阶导数信息,避免了牛顿法存储和计算hesse矩阵的空间 对大型线性或非线性方程组都非常有效 共轭首先,什么是共轭 设 d1,d2 … dm 是Rn 中任意一组非零向量,若 di TG di = 0 ( i ≠ j ) 则称d1,d2 … dm是 G-共轭的。显然 d1,d2 … dm 线性无关,若G = I, 则是正交关系。 推导
可以自行更换初始点进行计算 注意:b和x0 都是nx1的向量,搞错了就会一堆NaN(搞了一下午哭唧唧) |
CopyRight 2018-2019 实验室设备网 版权所有 |