最优化方法 拟牛顿法(Quasi-Newton Method)
Posted Real&Love
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了最优化方法 拟牛顿法(Quasi-Newton Method)相关的知识,希望对你有一定的参考价值。
拟牛顿法(Quasi-Newton Method)
拟牛顿法(Quasi-Newton Method)
Quasi−NewtenMethod
d
k
=
−
B
−
1
∇
f
(
x
k
)
\\text{Quasi−NewtenMethod } d^{k}=-B^{-1} \\nabla f\\left(x^{k}\\right)
Quasi−NewtenMethod dk=−B−1∇f(xk)
得到矩阵 B k + 1 B_{k+1} Bk+1
拟牛顿方程 :
\\text{拟牛顿方程 :}
拟牛顿方程 :
∇
f
(
x
k
+
1
)
−
∇
f
(
x
k
)
=
B
k
+
1
(
x
k
+
1
−
x
k
)
\\nabla f\\left(x^{k+1}\\right)-\\nabla f\\left(x^{k}\\right)=B_{k+1}\\left(x^{k+1}-x^{k}\\right)
∇f(xk+1)−∇f(xk)=Bk+1(xk+1−xk)
y
k
=
∇
f
(
x
k
+
1
)
−
∇
f
(
x
n
)
y_{k}=\\nabla f\\left(x^{k+1}\\right)-\\nabla f\\left(x^{n}\\right)
yk=∇f(xk+1)−∇f(xn)
s
k
=
x
k
+
1
−
x
k
s_{k}=x^{k+1}-x^{k}
sk=xk+1−xk
这样我们就可以得到
y
k
=
B
k
+
1
s
k
y_{k}=B_{k+1}s_{k}
yk=Bk+1sk,记
H
k
+
1
=
(
B
k
+
1
)
−
1
H_{k+1}=(B_{k+1})^{-1}
Hk+1=(Bk+1)−1
获取 B k + 1 B_{k+1} Bk+1和 H k + 1 H_{k+1} Hk+1
- 第一类方法:选择满足拟牛顿方程且与 B k B_{k} Bk近似的矩阵
- 第二类方法:对
B
k
B_{k}
Bk或
H
k
H_{k}
Hk进行校正,如
B
k
+
1
=
B
k
+
Δ
B
B_{k+1} = B_{k} + \\Delta B
Bk+1=Bk+ΔB
- rank-2 校正 Δ B \\Delta B ΔB秩为2 DFP方法,BFGS方法
- rank-1 校正 Δ B \\Delta B ΔB秩为1 SR-1方法
DFP方法(Davidon-Fletche Powell)
可以看作是rank-2校正
(
D
F
P
)
H
k
+
1
=
H
k
−
H
k
y
k
y
k
T
H
k
y
k
⊤
H
k
y
k
+
s
k
s
k
⊤
y
k
⊤
s
k
(D F P) H_{k+1}=H_{k}-\\frac{H_{k} y_{k} y_{k}^{T}H_{k}}{y_{k}^{\\top} H_{k} y_{k}}+\\frac{s_{k} s_{k}^{\\top}}{y_{k}^{\\top} s_{k}}
(DFP)Hk+1=Hk−yk⊤HkykHkykykTHk+yk⊤sksksk⊤
BFGS方法(Broyden-Fletcher-Goldfarb-Shannon)
可以看作是rank-2校正
(
B
F
G
S
)
B
k
+
1
=
B
k
−
B
k
s
k
s
k
⊤
B
k
s
k
⊤
B
k
s
k
+
y
k
y
k
⊤
y
k
⊤
s
k
(B F G S) B_{k+1}=B_{k}-\\frac{B_{k} s_{k} s_{k}^{\\top} B_{k}}{s_{k}^{\\top} B_{k} s_{k}}+\\frac{y_{k} y_{k}^{\\top}}{y_{k}^{\\top} s_{k}}
(BFGS)Bk+1=Bk−sk⊤BkskBksksk⊤B以上是关于最优化方法 拟牛顿法(Quasi-Newton Method)的主要内容,如果未能解决你的问题,请参考以下文章
无约束优化问题中牛顿法与拟牛顿法四种迭代方法的matlab实现