- 1、本文档共17页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
优化函数补充说明
求解函数f(x1,x2)=100(x2-x12)2+(1-x1)2的无约束最优化问题。formatlongx=fminunc(cfun,[0;0],ff)Warning:Gradientmustbeprovidedfortrust-regionmethod;usingline-searchmethodinstead.Infminuncat241Optimizationterminated:relativeinfinity-normofgradientlessthanoptions.TolFun.x=0.999995588493430.99999116722602fval=1.947095564687865e-011
求解函数f(x1,x2)=100(x2-x12)2+(1-x1)2的无约束最优化问题。求目标函数的梯度symsx1x2f=100*(x2-x1^2)^2+(1-x1)^2;J=jacobian(f,[x1,x2])J=[-400*(x2-x1^2)*x1-2+2*x1,200*x2-200*x1^2]
function[y,Gy]=cfun(x)y=100*(x(2)-x(1)^2)^2+(1-x(1))^2;Gy=[-400*(x(2)-x(1)^2)*x(1)-2+2*x(1);200*x(2)-200*x(1)^2];%梯度
x=fminunc(cfun,[0;0],ff)Optimizationterminated:RelativefunctionvaluechangingbylessthanOPTIONS.TolFun.x=0.999999885712490.99999976187545fval=2.218103884282714e-014
参数传递方法全局变量法functionexampleglobalbcb=2;c=3.5;x0=0;options=optimset(‘display’,’off’)y=fsolve(@poly,x0,options)functiony=poly(x)globalbcy=x^3+b*x+c;
直接传递参数法functionexampleb=2;c=3.5;x0=0options=optimset(‘display’,’off’)y=fsolve(@poly,x0,options,b,c)functiony=poly(x)y=x^3+b*x+c;
采用evalin和assignin函数functionexampleb=2;c=3.5;x0=0;assigin(‘base’,’b’,b)assigin(‘base’,’c’,c)y=fsolve(@poly,x0)functiony=poly(x)b=evalin(‘base’,’b’,b)c=evalin(‘base’,’c’,c)y=x^3+b*x+c;
匿名函数法functionexampleb=2;c=3.5;x0=0;y=fsolve(@(x)poly(x,b,c),x0)functiony=poly(x,b,c)y=x^3+b*x+c;
嵌套函数法functionexampleb=2;c=3.5;x0=0;y=fsolve(@poly,x0)functiony=poly(x)y=x^3+b*x+c;endend
文件传递法functionexampleb=2;c=3.5;x0=0;savaparasbcy=fsolve(@poly,x0)functiony=poly(x)loadparas.maty=x^3+b*x+c;
%STEP0初始化?0,x0∈Rn,k=0;%step1计算f(xk),g(xk)%step2检验||g(xk)||≤eps,若成立则输出xk,STOP.%step3:计算dk=-g(xk)%step4求步长?k%step4.1令?k0=1,j=0;%step4.2若f(xk+?kjdk)≤f(xk)+??kjgkTdk??(0,0.5),则?k=?kj,否则?kj+1=?kj/2;j=j+1;%step5xk+1=xk+?kdk;k=k+1;gotostep2;
最速下降算法f代表目标函数g代表梯度
文档评论(0)