无约束最优化问题的解法
我们希望得到minxf(x)minxf(x),我们把f(x)f(x)泰勒展开可得
牛顿法
当∇2f(x)∇2f(x)已知时,对f(x+Δ)f(x+Δ)求导,令倒数为0,可得
那么我们可以通过迭代公式
求解最优化问题,有时我们加个小于1的阻尼系数来增加算法的稳定性(阻尼牛顿法):
牛顿法的缺点也很明显:
- ∇2f(x)∇2f(x)不容易求
- ∇2f(x)∇2f(x)的逆不容易求
- ∇2f(x)∇2f(x)太占空间
拟牛顿法
由牛顿法可知,xx每步的前进方向
满足∇f(x)=Δ∇2f(x)∇f(x)=Δ∇2f(x),且∇f(xt+1)≈∇f(xt)+∇2f(xt)[xt+1−xt]∇f(xt+1)≈∇f(xt)+∇2f(xt)[xt+1−xt]。
替代变量Bt+1=∇2f(xt),Dt+1=[∇2f(xt)]−1Bt+1=∇2f(xt),Dt+1=[∇2f(xt)]−1,再令st=xt+1−xt,yt=∇f(xt+1)−∇f(xt)st=xt+1−xt,yt=∇f(xt+1)−∇f(xt),那么有:
- yt=Bt+1styt=Bt+1st
- st=Dt+1ytst=Dt+1yt
令Dt+1=Dt+ΔDt=Dt+Pt+QtDt+1=Dt+ΔDt=Dt+Pt+Qt,那么
令Ptyt=−Dtyt,Qtyt=stPtyt=−Dtyt,Qtyt=st,我们有