原文:https://blog.csdn.net/u012705410/article/details/47254437
用Python实现最速下降法求极值
对于一个多元函数f(x)=f(x1,x2,⋯,xn)f(x)=f(x1,x2,⋯,xn),用最速下降法(又称梯度下降法)求其极小值的迭代格式为
xk+1=xk+αkdkxk+1=xk+αkdk
其中dk=−gk=−∇f(xk)dk=−gk=−∇f(xk)为负梯度方向,即最速下降方向,αkαk为搜索步长。
一般情况下,最优步长αkαk的确定要用到线性搜索技术,比如精确线性搜索,但是更常用的是不精确线性搜索,主要是Goldstein不精确线性搜索和Wolfe法线性搜索。
为了调用的方便,编写一个Python文件,