最优化之最速下降

本文深入探讨了无约束优化中最速下降法的原理与应用,包括算法步骤、锯齿现象及一个具体例题的详细解答。

第四章 无约束优化方法

4.2 最速下降法

  最速下降法的基本思想:当当前点xkx_kxk处的梯度不为0时(或不满足精度要求时),从当前点xkx_kxk出发,沿负梯度方向−∇f(xk)-\nabla f(x_{k})f(xk)前进到下一个点x(k+1)x_{(k+1)}x(k+1)

4.2.1 算法实现

考虑无约束优化问题:

                                    minf(x)min f(x)minf(x)

其中 fff 具有一阶连续偏导数。

最速下降算法
输入:函数 fffRnR^nRn :→\rightarrow RRR,具有一阶连续偏导数,初始点x(0)x^{(0)}x(0) 允许误差 ϵ\epsilonϵ
输出:满足精度要求的点x‾\overline{x}x
    1 k←1k\gets 1k1
    2 while∣∣∇f(x(k))∣∣>ϵwhile ||\nabla f(x^{(k)})|| > \epsilonwhilef(x(k))>ϵ dododo
    3    下降方向dk←−∇f(x(k))d^{k}\gets −\nabla f(x^{(k)})dkf(x(k))
    4    计算步长因子αk\alpha_{k}αk
    5    x(k+1)←d(k)+αkd(k)x^{(k+1)} \gets d^{(k)}+\alpha_{k}d^{(k)}x(k+1)d(k)+αkd(k)
    4    k←k+1k\gets k+1kk+1
    5 endwhileendwhileendwhile
    6 returnreturnreturn xˉ←x(k)\bar{x}\gets x^{(k)}xˉx(k)

4.2.2 例题讲解

Example :用最速下降法解 minf(x)=2x12+x22min f(x)=2x^{2}_{1}+x^{2}_{2}minf(x)=2x12+x22,初始点 x(1)=(11)x^{(1)}=\begin{pmatrix}1 \\ 1\end{pmatrix}x(1)=(11)ϵ=0.1\epsilon=0.1ϵ=0.1
    解:目标函数在xxx处的梯度为:

    ∇f(x)=(4x12x2)\nabla f(x)=\begin{pmatrix}4x_{1}\\ 2x_{2}\end{pmatrix}f(x)=(4x12x2)

    第1次迭代

    ∇f(x(1))=(42)\nabla f(x^{(1)})=\begin{pmatrix}4\\ 2\end{pmatrix}f(x(1))=(42),其模为42+22>0.1\sqrt{4^{2}+2^{2}}>0.142+22>0.1

    令搜索方向 d(1)=−(∇f(x(1)))=(−4−2)d^{(1)}=-(\nabla^{}f(x^{(1)}))=\begin{pmatrix}-4\\ -2\end{pmatrix}d(1)=(f(x(1)))=(42)

    从x(1)x^{(1)}x(1)出发,沿方向d(1)d^{(1)}d(1)进行一维搜索,求步长α1\alpha_{1}α1,即求解minα>0f(x(1)+αd(1))min_{\alpha>0}f(x^{(1)}+\alpha d^{(1)})minα>0f(x(1)+αd(1)) ,其中,

    f(x(1)+αd(1))f(x^{(1)}+\alpha d^{(1)})f(x(1)+αd(1))= f((11)+α(−4−2))=2(1−4α)2+(1−2α)2f(\begin{pmatrix}1\\ 1\end{pmatrix}+\alpha \begin{pmatrix}-4\\ -2\end{pmatrix}) = 2(1-4\alpha)^{2}+(1-2\alpha)^{2}f((11)+α(42))=2(14α)2+(12α)2

    求导解出最小值点为α1=518\alpha_1=\frac{5}{18}α1=185

    因此,在方向d(1)d^{(1)}d(1)处问题的极小点为x(2)=d(1)+α1d(1)=(−1/94/9)x^{(2)}=d^{(1)}+\alpha_{1}d^{(1)}=\begin{pmatrix}-1/9\\ 4/9\end{pmatrix}x(2)=d(1)+α1d(1)=(1/94/9)

    第2次迭代

    ∇f(x(2))=(−4/98/9)\nabla f(x^{(2)})=\begin{pmatrix}-4/9\\ 8/9\end{pmatrix}f(x(2))=(4/98/9),其模为(−4/9)2+(8/9)2>0.1\sqrt{(-4/9)^{2}+(8/9)^{2}}>0.1(4/9)2+(8/9)2>0.1

    令搜索方向 d(2)=−(∇f(x(2)))=(4/9−8/9)d^{(2)}=-(\nabla^{}f(x^{(2)}))=\begin{pmatrix}4/9\\ -8/9\end{pmatrix}d(2)=(f(x(2)))=(4/98/9)

    从x(2)x^{(2)}x(2)出发,沿方向d(2)d^{(2)}d(2)进行一维搜索,求步长α2\alpha_{2}α2,即求解minα>0f(x(2)+αd(2)min_{\alpha>0}f(x^{(2)}+\alpha d^{(2})minα>0f(x(2)+αd(2) ,其中,

    f(x(2)+αd(2))f(x^{(2)}+\alpha d^{(2)})f(x(2)+αd(2))= f((−1/94/9)+α(4/9−8/9))f(\begin{pmatrix}-1/9\\ 4/9\end{pmatrix}+\alpha \begin{pmatrix}4/9\\ -8/9\end{pmatrix})f((1/94/9)+α(4/98/9))

    求导解出最小值点为α1=512\alpha_1=\frac{5}{12}α1=125

    因此,在方向d(2)d^{(2)}d(2)处问题的极小点为x(3)=d(2)+α2d(2)=(2/272/27)x^{(3)}=d^{(2)}+\alpha_{2}d^{(2)}=\begin{pmatrix}2/27\\ 2/27\end{pmatrix}x(3)=d(2)+α2d(2)=(2/272/27)

    以此类推,共四次迭代,最终得到近似解xˉ=2243(−14)\bar{x}=\frac{2}{243}\begin{pmatrix}-1\\ 4\end{pmatrix}xˉ=2432(14)

    实际上,问题的最优解为x⋆=(00)x^{\star}=\begin{pmatrix}0\\ 0\end{pmatrix}x=(00)

在这里插入图片描述

4.2.3 最速下降法的锯齿现象

在最速下降法中,相邻的搜索方向垂直或近似垂直,这成为“锯齿现象”。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值