Newton-Raphson切线法解高次方程近似根
对于一般的一次,二次方程来说,求解方程的根比较简单。但是对于四次、五次甚至更高次方程,求解方程的f(x)=0的根变得十分困难甚至不可能完成。为此Newton(牛顿)在1736年 Method of Fluxions 中发表文章提出一种解决方案,事实上,牛顿所提出的这种方案,另一位数学家Joseph Raphson于1690年已经发现。为此,牛顿法也称为Newton-Raphson method。
牛顿法求解方程近似根,最明显的标志是利用方程的切线,所以牛顿法也称为切线法。
如图1:
方程y=f(x)=0的根,是f(x)与x坐标轴的交点。黑色的方块点就是真实的方程根,是我们要求解的根。但是在有些情况下,方程的阶数太高,无法直接求解,所以只能求出近似值。
为了找到这个根的近似值,采取一步一步趋近的方法。具体来说:
(一)首先选择一个起始值,这个起始值的选择可以人为的、经验性质的选定一个较为合理的点,该点当然是y=f(x)上的点。在图1中就是(x0,f(x0))作为初始化的点。点(x0,f(x0))的选择是先验的。
(二)然后过点(x0,f(x0))上的点做一条切线,过曲线上一点的切线方程有现成的点斜式方程公式可用,
(公式1)
求得该切线方程后,该切线与x坐标轴相交,再一次求得过(x0,f(x0))点的切线与x坐标轴的交点x1,。
(三)获得x1后,把x1带回到曲线y=f(x)中,于是有了第二点(x1,f(x1)),继续求过(x1,f(x1))点的切线方程,与改切线方程x坐标轴的交点为x2。
(四)拿到x2后,带回曲线方程,得到新点(x2,f(x2)),还是求过该点的切线方程,该切线方程与x坐标轴有交点,交点可以得到为x3。
至此,可以看到,通过从x0到x3的每一轮逼近,x3已经十分接近要求的黑色方块值。如果x3的结果不够理想,可以继续采取上述步骤再做几次循环求解。
总结,如图2:
更普遍的,把(xn,f(xn))代入公式1,令点斜式方程y=0,可以得到每一次进一步的求解更逼近的x结果的公式:
这样循环往复,最终可以取得理想的方程y=f(x)=0的近似解。可以看出,牛顿法数学思想再加上几何化比较明显,所以简单易用,但是也可以看出在实际的求解过程,所消耗的人类计算量通常会很大,所以在手工计算数值时代,牛顿法的实用性不是非常理想。如今牛顿法重获新生,是因为计算机的数值计算非常适应牛顿法,计算机非常喜欢这种类型的迭代计算模式,计算机不同于人类,尤其擅长这种数值方面的这种迭代计算。
但是要注意,牛顿法对初始值的选择有一定程度的敏感,如图3:
图3中的方程选择的初始值(x0,f(x0))导致无法求解到方程的根。是一个死循环。
还有就是,牛顿法所求的根,在距离较远处逼近时候,因为初始值x0选择不当,可能会求得不是想要的结果,如图4: