美文网首页最优化
无约束最优化(四) 步长加速法

无约束最优化(四) 步长加速法

作者: 小小何先生 | 来源:发表于2019-12-07 16:57 被阅读0次

      步长加速法是由Hooke和Jeeves(1961年)给出的一种直接方法。对于变量数目较少的无约束极小化问题,这是一个程序简单又比较有效的方法。

    基本思想

      步长加速法主要由交替进行的“探测搜索”和“模式移动”组成。前者是为了寻找当前迭代点的下降方向,而后者则是沿着这个有利的方向寻求新的迭代点。

      给出初始点x_{0},以它作为探测搜索的出发点(称为参考点,用r表示,即r=x_{0}),在其周围寻找比它更好的点b(称为基点),即f(b) < f(r),以得到下降方向 b-r(称为模式)。然后从b出发沿模式b-r做直线搜索(称为模式移动)。\tilde {r} = b + \alpha (b-r)\tilde {r}是从b出发,沿方向b-r移动\alpha个单位而得,其中\alpha > 0(一般取\alpha = 1或用直线搜索技术来确定), 以获得新的参考点(新的迭代点)。然后再开始探测搜索,模式移动。交替进行的“探测搜索”和“模式移动”将使得迭代点逐渐地向极小点靠近。

    在这里插入图片描述

    探测搜索

    已知:目标函数f(x),步长向量s=\left [ s_{1}, s_{2}, ···,s_{n} \right ]^{T},参考点r=\left [ r_{1}, r_{2}, ···,r_{n} \right ]^{T}

    1. 计算f_{r}=f(r);置b=r, f_{b}=f_{r}

    2. 依次沿第i=1,2,···,n个坐标轴方向作直线搜索:计算f_{1}=f(b+s_{i}e_{i})f_{2}=f(b-s_{i}e_{i})。以下三种情况必居其一:

      i) 若f_{1} < f_{b},则置b=b+s_{i}e_{i}f_{b}=f_{1}

      ii) 若f_{2} < f_{b} \leq f_{1},则置b=b-s_{i}e_{i}f_{b}=f_{2}

      iii) 若f_{1} \geqslant f_{b}f_{2} \geqslant f_{1},则置bf_{b}不变;

    依次对i=1,2,···,n计算后,最终的b是从r出发以s为步长向量探测搜索的终点。当f(b) < f(r)时,探测搜索称为成功,此时必有b \neq r,即得到模式b-r;否则,探测搜索称为失败,此时未得到模式。

    步长加速法

    已知:目标函数f(x),步长收缩系数的终止限\varepsilon

    1. 选定初始点x_{0},初始步长量s_{0},置r=x_{0}b_{0}=x_{0}c = 1w=0.5(或0.1)。
    2. s = c s_{0}
    3. 在点r处,以s为步长向量按探测搜索算法做探测搜索得b
    4. f_{b} < f(r),则转5;否则,转8。
    5. 做模式移动r=2b-b_{0},并置b_{0}=bf_{0}=f_{b}
    6. 在点r处,以s为步长向量按算法按探测搜索算法做探测搜索得b
    7. f(b) < f(b_{0}),则转5;否者,置r=b_{0},转3。
    8. c \leqslant \varepsilon则输出r,停止计算;否则,置c=wc,转2。
    在这里插入图片描述

      注意:算法中的模式为b-b_{0}。当由3产生时,模式既为b-r;但当由6产生时,模式才为b-b_{0}这是加速模式。

    在这里插入图片描述

      在迭代开始时,基点和参考点重合,并都在初始处,经过探测搜索,得到新的基点,然后再经过模式移动,得到新的参考点,再探测,再移动,探测搜索与模式移动交替进行下去,迭代点就将逐渐地向极小点靠近。

      I型探测搜索:出发点既是参考点,又是基点,目的是在基点周围构造一个模式。II型探测搜索:出发点单纯是参考点,目的是判别上次的模式移动是否成功,从而能否作加速移动。

    我的微信公众号名称:深度学习与先进智能决策
    微信公众号ID:MultiAgent1024
    公众号介绍:主要研究分享深度学习、机器博弈、强化学习等相关内容!期待您的关注,欢迎一起学习交流进步!

    相关文章

      网友评论

        本文标题:无约束最优化(四) 步长加速法

        本文链接:https://www.haomeiwen.com/subject/ydvugctx.html