1) 牛顿法(最初,求的是根)
目的: 求 f(x)=0 的根
途径:
一元非线性方程 f(x)=0 为例,
对函数 f(x) 在 x0 处进行Taylor级数展开
f(x) = f(x0)+f'(x0)(x-x0)+o(x) ----(忽略o(x) 高次项 )
所以方程可写成
f(x0)+f'(x0)(x-x0) = 0 => x = x0 - f(x0) / f'(x0)
令x1=x.
是相比之前的x0更靠近真实解了. Why? 见下图。
用过两点 (x0,f(x0), (x1,0) 的直线代替f(x). 图上可见
x1,比x0 更加接近x*(最佳值)。
因此可以多重复几次上述过程,从而使得到的解非常接近准确值。所以,对于一元非线性方程,牛顿法的迭代公式为:
x(k+1) = x(k) - f(x(k)) / f’(x(k))
(代码实现,网上太多,。。。)
2) 牛顿法(一般,求的是最小值)
目的: 求 f(x)=0 的根
途径:
一元非线性方程 f(x)=0 为例,
对函数 f(x) 在 x0 处进行Taylor级数展开
f(x) = f(x0)+f'(x0)(x-x0)+1/2*f''(x0)(x-x0)^2+o(x) ----(忽略o(x) 高次项 )
求f(x)有:
f'(x)=0+f'(x0)+f"(x0)(x-x0)
而:f'(x)=0
所以:x-x0=-f'(x0)/f"(x0) =>x=x0--f'(x0)/f"(x0)
令x=x1.
所以 x(k+1) = x(k) - f'(x(k)) / f''(x(k))
对于多元:可以写成:
x(k+1) = x(k) - ∇f / ∇² f
3) 高斯牛顿法(一般,∇² f 不好求,所以用高斯牛顿法)
对于一个非线性最小二乘问题:
高斯牛顿的思想是把 [公式] 利用泰勒展开,取一阶线性项近似。
带入到(1)式:
对上式求导,令导数为0。
令
有:
标签:总结,混淆,方程,高斯,非线性,牛顿,x0,x1 来源: https://blog.csdn.net/flyso_80/article/details/121127137
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。