文件名称:运筹与优化之最速梯度下降法(利用0.618法搜索步长)的matlab实现
文件大小:2KB
文件格式:ZIP
更新时间:2022-02-08 15:49:39
运筹学 matlab
利用最速梯度下降法求解: 函数接口:[xstar,fxstar,iter] = SteepDescent(f_name,x0,eps) 其中xstar为最优解,fxstar为最优函数值,iter为迭代次数。 f_name为目标函数文件,可以用feval调用计算函数值及梯度; x0为初始值,可取[1,1]‘,eps=1e-3,利用0.618法搜索步长。 如:[xstar,fxstar,iter] = SteepDescent(@Myexam1,[1,1]',1e-3) function [f,g]=Myexam1(x) %%%%调用[f,g] = feval(f_name,xk); f=x(1)^2+2*x(2)^2; g=[2*x(1);4*x(2)]; end 可直接运行!!
【文件预览】:
Trial.m
S618.m
SteepDescent.m
Myexam1.m
SteepDecent1.m