《高级运筹》无约束非线性规划.ppt

《高级运筹》无约束非线性规划

二、拟牛顿法(变尺度法) 修改牛顿法具有全局收敛性,但每步确定搜索方向时都要计算Hesse矩阵及其逆矩阵 1959年,Davidon提出设想仅用每次迭代中得到的梯度信息来近似Hesse矩阵,基于此导致了一类非常成功的拟牛顿法. 算法原理: 将确定搜索方向d (k)公式中的 ?2f(x (k) ) -1 用n阶矩阵Hk代替,从而在第k步迭代时, ?k由线搜索得到。初始点x (1)和初始矩阵H1是预先给定的,Hk在迭代中利用已得迭代点及目标函数值,最多再利用一阶导数按某种规则获得。 确定Hk的一种自然想法是,将Hk 作为?2f(x (k) ) -1 的近似来构造,注意到?2f(x (k) ) 是对称的,且有近似关系 即 则Hk 应满足条件 对称正定的; 满足拟牛顿方程 另外,设想Hk由Hk-1经过简单修正得到, Hk=Hk-1+Ek; 校正矩阵Ek应该对称,且满足 满足上式的对称矩阵有无穷多个,因此拟牛顿法是一族算法。DFP算法是其中最常用最有效的方法之一。 设校正矩阵的形式为 其中?k , ?k 为待定参数, Uk,Vk为待定向量,这种形式显然是对称的,把上式代入拟牛顿方程 不妨取 为使上式成立,简单的做法是取 DFP算法中的校正矩阵Ek和矩阵Hk的计算公式为: DFP算法的步骤 例4 用DFP算法求解 解:取H0=I ,DFP算法第一步与最速下降法相同 以下作第二次迭代 一、最速下降法 问题:在x (k)处,沿什么方向d (k),函数f(x)下降最快? 结论:负梯度方向是函数的最速下降方向。 最速下降法就是以x (k)处的负梯度方向作为搜索方向,即令 求解问题 最速下降法的具体步骤: 其中,在第三步中,可以直接使用精确线搜索。 即令 可以解出?k. 由 可以看出,d (k)和d (k+1)是正交的。 例2 用最速下降法求 的极小点。迭代两次,计算各迭代点的函数值、梯度及其模,并验证相邻两个搜索方向是正交的。 解:设初始点为 其中?0由 利用一阶必要条件 解得 由 求得 验证相邻两个搜索方向的正交性 最速下降法的优点 程序设计简单,计算量小,存储量小,对初始点没有特别要求. 有着很好的整体收敛性,即使对一般的目标函数,它也整体收敛. 最速下降法的缺点: 最速下降法是线性收敛的,并且有时是很慢的线性收敛 原因: 虽然最速下降(负梯度)方向确实是从当前迭代点出发作微小移动时函数值下降最快的方向,然而由于采用精确线搜索,每次迭代点的移动并非总是微小的,因而迭代过程中并未得到使函数值“最速下降”的好处。 相邻两次迭代的搜索方向彼此正交,容易产生锯齿型迭代移动,这种绕弯路向最优解移动的路径,形象的表明最速下降法的收敛速度是不理想的。 结 论: 最速下降法是基本算法之一,而非有效的实用算法. 最速下降法的本质是在迭代点处用线性函数来近似目标函数,要想得到快速算法,需要考虑对目标函数的高阶逼近. 练习: 用最速下降法求解 取初始点x (1) =(1,1)T,迭代两次。 二、共轭梯度法 共轭梯度法是针对二次函数 的无约束非线性规划问题,考虑出一种搜索方向的合理选取方法,然后形式地推广到一般可微函数。 对于变量分离的函数 从任意一点x (1)出发,分别沿着每个坐标轴方向进行一维搜索(共进行n次搜索)以后,一定能得到minf(x)的最优解。 对于二次函数 如果Q为实对称正定矩阵,则可以选择一组基p1,p2,…pn, 满足 在新的基下,f(x)就成为变量分离的形式。于是,从任何一个初始点x (1)出发,分别沿着每个pi方向作线搜索,经过一轮后,肯定能得到最优解。 定义:设Q为n 阶实对称正定矩阵,若n维方向x和y满足 则称方向x和y是Q-共轭的。 问题:如何构造出两两Q-共轭的方向? 在每个迭代点x (k)处,以负梯度-?f(x(k))和前一个搜索方向pk-1的适当组合,构成和前面k-1个搜索方向p1,p2,…pk-1均两两Q-共轭的搜索方向pk。 即: 推导过程: 可以证明,在中途不停机的情况下,这样得到的p1,p2,…pn,是两两Q-共轭的,因此x (n+1)一定是原问题的最优解。 精确线搜索结果的推导 对于一般可微函数的f(x),在每一迭代点x (k)可以近似的视为二次函数 因此设想利用共轭梯度法也能得到好的效果。此时,式子中的Q应该以x (k)点处的Hesse矩阵代替,计算量太大。 解决方法:修改迭代公式,使之不含Q,修改后的计算公式: 为了保证算法具有某种收敛性,注意到共轭梯度法的第一步和最速下降法相同,最速下降法具有收敛性。通常采用如下的起点周期性变化的共轭梯度法: 从初始点x

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档