牛顿法
牛顿迭代法又称为牛顿法,它是牛顿在17世纪提出的一种在实数域和复数域上近似求解方程的方法。根据牛顿迭代的原理,可以得到以下的迭代公式:X(n+1)=[X(n)+p/Xn]
优点:二阶收敛,收敛速度快;
缺点:牛顿法是一种迭代算法,每一步都需要求解目标函数的Hessian矩阵的逆矩阵,计算比较复杂。
特征:
1牛顿法收敛速度为二阶,对于正定二次函数一步迭代即达最优解。
2牛顿法是局部收敛的,当初始点选择不当时,往往导致不收敛
3牛顿法不是下降算法,当二阶海塞矩阵非正定时,不能保证产生方向是下降方向。
4二阶海塞矩阵必须可逆,否则算法进行困难。
5对函数要求苛刻(二阶连续可微,海塞矩阵可逆),而且运算量大。
具体证明步骤:
首先,选择一个接近函数 f (x)零点的 x0,计算相应的 f (x0) 和切线斜率f ' (x0)(这里f ' 表示函数 f 的导数)。然后我们计算穿过点(x0, f (x0)) 并且斜率为f '(x0)的直线
和 x 轴的交点的x坐标,也就是求如下方程的解:
我们将新求得的点的 x 坐标命名为x1,通常x1会比x0更接近方程f (x) = 0的解。因此我们现在可以利用x1开始下一轮迭代。迭代公式可化简为如下所示:
已经证明,如果f ' 是连续的,并且待求的零点x是孤立的,那么在零点x周围存在一个区域,只要初始值x0位于这个邻近区域内,那么牛顿法必定收敛。 并且,如果f ' (x)不为0, 那么牛顿法将具有平方收敛的性能. 粗略的说,这意味着每迭代一次,牛顿法结果的有效数字将增加一倍。
因篇幅问题不能全部显示,请点此查看更多更全内容