4.牛顿法和拟牛顿算法

1.     我们用一个图来解释扭断算法的基本实现:

4.牛顿法和拟牛顿算法

由图中可知:

4.牛顿法和拟牛顿算法

4.牛顿法和拟牛顿算法


更一般地:

4.牛顿法和拟牛顿算法

这就是牛顿法的一次迭代。现在这个算法可以得到一个4.牛顿法和拟牛顿算法值,使得 ;4.牛顿法和拟牛顿算法

2. 上面论述的是牛顿法的几何意义,下面我们从代数的角度来论述下牛顿法:
考虑无约束最优化问题:

4.牛顿法和拟牛顿算法                      (B,1)

其中4.牛顿法和拟牛顿算法为目标函数的极小值

假设f(x)具有二阶连续导数,若第k次迭代值为4.牛顿法和拟牛顿算法,这可以将f(x)4.牛顿法和拟牛顿算法附近进行二次泰勒展开。

4.牛顿法和拟牛顿算法                     (B.2)

这里, 4.牛顿法和拟牛顿算法f(x)的梯度向量在4.牛顿法和拟牛顿算法的值,H(4.牛顿法和拟牛顿算法)f(x)Hessian矩阵:

4.牛顿法和拟牛顿算法                                (B.3)


在点 4.牛顿法和拟牛顿算法的值,函数f(x)有极值的必要条件是在极值点处有一阶导数为0,即梯度向量为0,特别是当H(4.牛顿法和拟牛顿算法)是正定矩阵时,函数f(x)的极值为极小值。

在点 的值,函数f(x)有极值的必要条件是在极值点处有一阶导数为0,即梯度向量为0,特别是当H()是正定矩阵时,函数f(x)的极值为极小值。

牛顿法利用极小值点的必要条件:

4.牛顿法和拟牛顿算法       (B.4)

每次迭代中从点 4.牛顿法和拟牛顿算法开始,求目标函数的极小值,作为第k+1次迭代值4.牛顿法和拟牛顿算法具体地,假设4.牛顿法和拟牛顿算法满足:

4.牛顿法和拟牛顿算法(B.5)

由(B.2)有:

4.牛顿法和拟牛顿算法

既有

4.牛顿法和拟牛顿算法(B.6)


其中4.牛顿法和拟牛顿算法这样,由(B.6)可知

4.牛顿法和拟牛顿算法 (B.7)

所以,4.牛顿法和拟牛顿算法 (B.8)
或者 4.牛顿法和拟牛顿算法 (B.9)

其中,4.牛顿法和拟牛顿算法(B.10)

用式(B.8)作为迭代公式的算法就是牛顿法。


拟牛顿法的思路

在牛顿法的迭代中,需要计算Hessian矩阵的逆矩阵4.牛顿法和拟牛顿算法,这一计算比较复杂,考虑用一个n阶矩阵4.牛顿法和拟牛顿算法来近似替代4.牛顿法和拟牛顿算法,这既是拟牛顿的基本想法。

       根据(B.6)我们知道:

4.牛顿法和拟牛顿算法

又因为:4.牛顿法和拟牛顿算法

所以:

4.牛顿法和拟牛顿算法

则:

4.牛顿法和拟牛顿算法(B.11)

4.牛顿法和拟牛顿算法, 4.牛顿法和拟牛顿算法,则:

4.牛顿法和拟牛顿算法 (B.12)

4.牛顿法和拟牛顿算法 (B.13)

(B.12)(B.13)称为拟牛顿条件。

如果 4.牛顿法和拟牛顿算法是正定的(4.牛顿法和拟牛顿算法),那么可以保证牛顿法搜索方向4.牛顿法和拟牛顿算法是下降方向,这是因为搜索方向是4.牛顿法和拟牛顿算法,其中 ,由式(B.8)有:

4.牛顿法和拟牛顿算法 (B.14)

4.牛顿法和拟牛顿算法

所以f(x)4.牛顿法和拟牛顿算法处的泰勒展开式(B.2)可以近似写成:

4.牛顿法和拟牛顿算法                        (B.15)

因为4.牛顿法和拟牛顿算法是正定的。故有4.牛顿法和拟牛顿算法.是一个充分小的正数时,总有 4.牛顿法和拟牛顿算法也就是说4.牛顿法和拟牛顿算法是下降方向。


拟牛顿法将4.牛顿法和拟牛顿算法作为4.牛顿法和拟牛顿算法的近似,要求矩阵4.牛顿法和拟牛顿算法满足同样的条件。首先,每次迭代矩阵4.牛顿法和拟牛顿算法是正定的,同时由于4.牛顿法和拟牛顿算法满足(B.13)4.牛顿法和拟牛顿算法,所以我们可以假定 4.牛顿法和拟牛顿算法也满足这个式子,既有:

4.牛顿法和拟牛顿算法

按照拟牛顿条件,再每次迭代中可以选择更新矩阵4.牛顿法和拟牛顿算法:

4.牛顿法和拟牛顿算法

这种选择具有一定的灵活性,因此有多种具体的实现方法。主要包括DFPBFGS算法等