DFP算法+wolfe性非线性搜索解决无约束问题的matlab程序.doc

DFP算法+wolfe性非线性搜索解决无约束问题的matlab程序.doc

ID:57687425

大小:13.50 KB

页数:2页

时间:2020-09-01

DFP算法+wolfe性非线性搜索解决无约束问题的matlab程序.doc_第1页
DFP算法+wolfe性非线性搜索解决无约束问题的matlab程序.doc_第2页
资源描述:

《DFP算法+wolfe性非线性搜索解决无约束问题的matlab程序.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、function[x,val,k]=dfp(fun,gfun,x0)%功能:用DFP算法求解无约束问题:minf(x)%输入:x0是初始点,fun,gfun分别是目标函数及其梯度%输出:x,val分别是近似最优点和最优值,k是迭代次数maxk=1e5;rho=0.25;sigma=0.75;epsilon=1e-3;alpha=1;a=0;b=Inf;k=0;n=length(x0);Hk=eye(n);while(k

2、解方程组,计算搜索方向while(1)if(feval(fun,x0+alpha*dk)<=feval(fun,x0)+rho*alpha*gk'*dk)b=alpha;alpha=(alpha+a)/2;continue;endif(feval(gfun,x0+alpha*dk)'*dk>=sigma*gk'*dk)a=alpha;alpha=min([2*alpha,(b+alpha)/2]);continue;endbreak;endx=x0+alpha*dk;sk=x-x0;yk=feval(gfun,x)-gk;if(sk'*yk>0)Hk=Hk-(Hk*yk

3、*yk'*Hk)/(yk'*Hk*yk)+(sk*sk')/(sk'*yk);endk=k+1;x0=x;endval=feval(fun,x0);functionf=fun(x)f=100*(x(1)^2-x(2))^2+(x(1)-1)^2;functiongf=gfun(x)gf=[400*x(1)*(x(1)^2-x(2))+2*(x(1)-1),-200*(x(1)^2-x(2))]';clearx0=[0,0]';[x,val,k]=dfp('fun','gfun',x0)

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。