数值优化之无约束优化

发布于:2024-03-21 ⋅ 阅读:(387) ⋅ 点赞:(0)

数值优化之无约束优化

注:之前开组会的时候制作的,分享一手

1.无约束最优化方法的基本结构

- 问题描述

问题描述

- 符号说明

在这里插入图片描述

- 最优性条件
  • 一阶必要条件:
    定理2.1.jpg

  • 二阶必要条件:

定理2.2.jpg

  • 二阶充分条件:

定理2.3

  • 关于二阶充分条件的例子:

例2.1

- 图形、等高线

所谓的等高线,就是函数在其上恒取常数值的曲线,即 f ( x ) = c f(x) = c f(x)=c。 c c c取不同的值,在 O x 1 x 2 Ox_{1}x_{2} Ox1​x2​平面上可以得到一族曲线。
等高线.jpg

- 方法的基本结构

算法2.1

总结:基本要素主要有两个:其一是下降的方向;其二就是步长(各种算法的区别主要在于这两个基本要素的不同)

- 终止准则

终止准则

- 收敛性与收敛速度

收敛速度收敛速度图示在这里插入图片描述

一般认为介于二次和线性收敛之间就可以接受

- 搜索步长

所谓的精确线搜索,指在迭代点 x k x_{k} xk​,当迭代方向 d k d_{k} dk​已知时,使 f ( x ) f(x) f(x)沿 d k d_{k} dk​关于步长 α \alpha α取极小值,即
精确线搜索

非精确线搜索:

  • Armijo准则:
    非精确线搜索

求解过程如下:给一初值 α \alpha α,一直二分直到满足Armijo准则

while f(x_k+alpha*d_k)>f(x_k)+rou*g_k'*d_k*akpha
    alpha = alpha/2
  • Wolfe准则
    在这里插入图片描述
    在这里插入图片描述

  • 强Wolfe准则
    强wolfe准则

2.无约束优化方法

2.1 最速下降法

根据 f ( x k + α d ) f(x_{k}+\alpha d) f(xk​+αd)在 x k x_{k} xk​点的 T a y l o r Taylor Taylor展式

最速下降法1

最速下降法的算法步骤: 下降方向为负梯度方向,搜索方法为精确线搜索
最速下降法2

2.2 基本Newton方法

2.2.1 Newton方程

牛顿方程1
牛顿方程2

牛顿方程图示:

牛顿方程

2.2.2 基本Newton方法迭代步骤

基本牛顿方法迭代过程

下降方向为 d k = − G k − 1 g k d_{k}=-G_{k}^{-1}g_{k} dk​=−Gk−1​gk​ ,步长为 1 1 1

2.2.3 基本Newton方法优缺点

优点:

  • 方法以二阶收敛速度收敛

缺点:

  • G k G_{k} Gk​会出现不正定或奇异的情形,当 G k G_{k} Gk​为负定时,满足牛顿方程的 d k d_{k} dk​实际上是上升方向,并非是下降方向
  • 每一步迭代都需要计算 H e s s e Hesse Hesse矩阵,即计算 n ( n + 1 ) / 2 n(n+1)/2 n(n+1)/2个二阶偏导数
  • 每步迭代需要求解一个线性方程组,计算量为 O ( n 3 ) O(n^{3}) O(n3)

2.3 混合方法

混合方法

  • G k G_k Gk​奇异,下降方向使用负梯度方向 − g k -g_{k} −gk​替代(步3)
  • g k g_{k} gk​与 d k d_{k} dk​几乎正交时,下降方向使用负梯度方向 − g k -g_{k} −gk​替代(步5)
  • 在 G k G_{k} Gk​ 负定,但 G k − 1 G_{k}^{-1} Gk−1​存在时,取 d k = G k − 1 g k d_{k} = G_{k}^{-1}g_{k} dk​=Gk−1​gk​(步4)

2.4 拟牛顿方法

2.4.1 拟牛顿条件

假定当前迭代点是 x k + 1 x_{k+1} xk+1​,若我们用已经得到的 x k , x k + 1 x_{k},x_{k+1} xk​,xk+1​及其一阶导数信息 g k g_{k} gk​和 g k + 1 g_{k+1} gk+1​,构造一个正定矩阵 B k + 1 B_{k+1} Bk+1​作为hesse矩阵 G k + 1 G_{k+1} Gk+1​的近似,使其满足牛顿方程。
B k + 1 d = − g k + 1 B_{k+1}d=-g_{k+1} Bk+1​d=−gk+1​
然而这样做依旧需要求一个线性方程组,进一步的改进为用相同的信息构造一个 H k H_{k} Hk​作为 G k + 1 − 1 G_{k+1}^{-1} Gk+1−1​的近似,这样的下降方向即为:
d k = − H k + 1 g k + 1 d_{k}=-H_{k+1}g_{k+1} dk​=−Hk+1​gk+1​
在 x k + 1 x_{k+1} xk+1​处做泰勒展开:
拟牛顿条件

2.4.2 拟牛顿方法迭代步骤

拟牛顿方法迭代过程

2.4.3 常见的拟牛顿方法
  • DFP

DFP

  • BFGS

BFGS

  • Broyden族公式

结合

  • BFGS方法和DFP方法的性质

    • 定理3.9 :设 H k H_{k} Hk​对称正定,且 s k T y k > 0 s_{k}^{T}y_{k}>0 skT​yk​>0,则由DFP方法或者BFGS方法构造出 H k + 1 H_{k+1} Hk+1​,且 H k + 1 H_{k+1} Hk+1​对称正定

    • 定理3.10: 对于使用精确线搜索或者非精确线搜索(强Wolfe/Wolfe准则)的DFP方法或者BFGS方法,有
      s k T y k > 0 s_{k}^{T}y_{k}>0 skT​yk​>0

    • 总结 :强Wolfe—>Wolfe准则—> s k T y k > 0 s_{k}^{T}y_{k}>0 skT​yk​>0—> H k + 1 H_{k+1} Hk+1​正定—>搜索方向是下降方向

2.4.4 拟牛顿方法的优点
  • 只需要 f ( x ) f(x) f(x)的一阶信息
  • 方法具有较快的收敛速度

2.5 共轭梯度法

共轭梯度法是一种迭代算法,不需要存储完整的 Hessian 矩阵,特别适用于处理大型线性方程组和二次型优化问题。

共轭梯度方法的迭代方向为:
d k = − g k + β k − 1 d k − 1 d_{k} = -g_{k}+\beta_{k-1}d_{k-1} dk​=−gk​+βk−1​dk−1​
其中 β k − 1 \beta_{k-1} βk−1​有多种构造方法,例如共轭下降(Conjugate Descent,CD)公式
β k − 1 = g k T g k d k − 1 T g k − 1 \beta_{k-1} = \frac{g_{k}^{T}g_{k}}{d_{k-1}^{T}g_{k-1}} βk−1​=dk−1T​gk−1​gkT​gk​​
注:当使用强Wolfe线搜索准则并且 ρ < 1 \rho<1 ρ<1时,共轭梯度下降方法得到的方向为下降方向


微信公众号

今日签到

点亮在社区的每一天
去签到