最优化第二讲——一维搜索法(牛顿法)

来源:互联网 发布:java主方法怎么写 编辑:程序博客网 时间:2024/05/17 19:56

牛顿法可以用来解决两种问题,其实本质上也是一种问题,就是方程求根,只不过一个是求f(x)=0的根,一个是求f(x)的导数=0的根

1. 无约束函数f(x) = 0的根

有两种方式可以解释一下牛顿法

切线法


这种方式就是不断的求点的切线,如果初始点是(x1, f(x1)),求得这个点的切线和x轴的交点(x2, 0),对应到曲线上的值为(x2, f(x2)),然后再求这个点的切线,一次类推,直到达到要求

我们看一下这个递推公式,x1, x2的关系如下

由此可以得到递推公式为


这个就是牛顿法的迭代公式

泰勒公式法

利用泰勒公式的一阶展开


求解f(x)=0就是方程的解,应为泰勒公式的一阶展开只是近似相等,并不完全相等,而且在dx很小的情况下是近似的,所以我们说f(x)=0使得


并不是找到了解,而是在一步步的逼近最优解,所以迭代的想法也就产生了,也得到了上面的迭代公式

2. 无约束函数f(x)的极值点

这里我们要求f(x)的极值点,其实就是在求f'(x)=0的点,可以跟上面类比,只不过上面的迭代公式中f(xn)变为f'(xn),f'(xn)变为f‘’(xn),这是一种理解方式

我们还可以根据泰勒公式的二阶展开来求解


0 0
原创粉丝点击