下面看一下理论推导: 设函数fx)在x*附近连续可微,且gk=Vfxk)0,由Taylor展式 f(x)=f(x")+(x-x*)"Vf(x")+o(x-x*) 可知,若记x-xk=tdk,则满足(dk)Tgk<0的方向dk是下降方向。当t取定后, (dk)Tgk的值越小,即-(dk)Tgk的值越大,函数下降的越快。由Cauchy Schwartz不等式 (d)'g之-dlg‖ 当且仅当dk=-gk时,(d)Tgk最小,从而-gk是最速下降方向。 最速下降法的迭代格式为: x(kD)=x()-tVf(x(k)
下面看一下理论推导: 设函数f(x)在x k附近连续可微,且gk= f(xk ) ≠0,由Taylor展式 ( ) ( ) ( ) ( ) ( ) k k T k k f x f x x x f x o x x = + − + − 可知,若记x-x k=tdk,则满足(dk ) Tgk<0的方向dk是下降方向。当t取定后, (dk ) Tgk的值越小,即- (dk ) Tgk的值越大,函数下降的越快。由CauchySchwartz不等式 当且仅当d k=-g k时,(dk ) Tg k 最小,从而-g k是最速下降方向。 ( ) T k k k k d g d g − 最速下降法的迭代格式为: ( 1) ( ) ( ) ( ) k k k k x x t f x + = −
(二)算法 开始 给定x0),M,81,82,令k=0 计算Vfx) ↓ I7fx4)川≤e1 是 x"=x(k) 结束 否到 是 否副 维搜索求t ←ts=argmin f(x-g) 精度为2 t>0 x&+)=x因一t7fx因) k=k+1
(二)算法 开始 给定x (0) , M , 1 , 2 , 令 k=0 计算f( x(k ) ) ||f( x(k ) )|| < 1 否 k>M x * =x 是 (k) 结束 是 一维搜索求tk 精度为 2 否 x (k+1) = x(k) -tk f(x(k) ) k=k+1 k k k t t f x tg 0 argmin ( ) = −
(三)最速下降法的搜索路径呈直角锯齿形 引理4.1设从点x)出发,沿方向dk作精确一维搜索,t为最优步长因子,即 f(x()+tg dk)min f(x()+t dk) >0 则成立Vf(x+tkd)Tdk=0,即新点处的梯度与前搜索方向垂直。 即 7f(x+)⊥Vf(x) Vf(x (k+1) d(k) fx)等值面 x(k+1) dk+1)
(三)最速下降法的搜索路径呈直角锯齿形 引理4.1 设从点x (k) 出发,沿方向d k作精确一维搜索,tk为最优步长因子,即 f(x(k) + tk d k ) = min f( x(k) + t dk ) 则成立 f(x(k) + tk d k ) T d k =0, 即新点处的梯度与前搜索方向垂直。 即 t>0 ( 1) ( ) ( ) ( ) k k f x f x + ⊥ x (k+1) d (k) x (k) f(x)等值面 f(x (k+1) ) tk d (k+1)
二维情形下最速下降法搜索路径: X(2 X(0 由此可以看出,最速下降法仅是算法的局部性质。对于许多问题,全 局看最速下降法并非“最速下降”,而是下降的较缓慢。数值试验表明, 当目标函数的等值线接近于一个圆(球)时,最速下降法下降较快,而当 目标函数的等值线是一个扁长的椭球时,最速下降法开始几步下降较快, 后来由于出现“锯齿”现象,下降就比较缓慢
二维情形下最速下降法搜索路径: 由此可以看出,最速下降法仅是算法的局部性质。对于许多问题,全 局看最速下降法并非“最速下降”,而是下降的较缓慢。数值试验表明, 当目标函数的等值线接近于一个圆(球)时,最速下降法下降较快,而当 目标函数的等值线是一个扁长的椭球时,最速下降法开始几步下降较快, 后来由于出现“锯齿”现象,下降就比较缓慢。 x (0) x (1) x (2)
其原因就是精确一维搜索(最优步长)满足 Vf(x(k+D))T dk=0, 即 Vf(x(k+D))T Vf(x(k))=dk+Tdk=0, 这表明在相邻的两个迭代点上函数x)的两个梯度方向是互相直交的,即, 两个搜索方向互相直交,这就产生了锯齿形状。当接近极小点时,步长愈 小,前进愈慢。 这就造成了最优步长的最速下降法逼近极小点过程是“之”字形,并且越 靠近极小点步长越小,移动越慢,以至在实际运用中在可行的计算时间内 得不到需要的结果。 这似乎与“最速下降”的名称矛盾。其实不然,因为梯度是函数局部性质, 从局部看,函数在这一点附近下降的很快,然而从整体看,则走过了许多 弯路,因此反而是不好的
f(x(k+1)) T dk =0, 即 f(x(k+1)) T f(x(k)) =dk+1 Tdk =0, 这表明在相邻的两个迭代点上函数f(x)的两个梯度方向是互相直交的,即, 两个搜索方向互相直交,这就产生了锯齿形状。当接近极小点时,步长愈 小,前进愈慢。 这就造成了最优步长的最速下降法逼近极小点过程是“之”字形,并且越 靠近极小点步长越小,移动越慢,以至在实际运用中在可行的计算时间内 得不到需要的结果。 这似乎与“最速下降”的名称矛盾。其实不然,因为梯度是函数局部性质, 从局部看,函数在这一点附近下降的很快,然而从整体看,则走过了许多 弯路,因此反而是不好的。 其原因就是精确一维搜索(最优步长)满足