最优化问题的求解

最优化问题的求解

ID:21738722

大小:898.50 KB

页数:36页

时间:2018-10-20

最优化问题的求解_第1页
最优化问题的求解_第2页
最优化问题的求解_第3页
最优化问题的求解_第4页
最优化问题的求解_第5页
资源描述:

《最优化问题的求解》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、无约束最优化问题求解解析解法和图解法例:>>symst;y=exp(-3*t)*sin(4*t+2)+4*exp(-0.5*t)*cos(2*t)-0.5;>>y1=diff(y,t);%求取一阶导函数>>ezplot(y1,[0,4])%绘制出选定区间内一阶导函数曲线>>t0=solve(y1)%求出一阶导数等于零的点t0=1.4528424981725411893375778048840>>y2=diff(y1);b=subs(y2,t,t0)%并验证二阶导数为正b=7.855342025333360137946

2、4405534591>>t=0:0.4:4;y=exp(-3*t).*sin(4*t+2)+4*exp(-0.5*t).*cos(2*t)-0.5;>>plot(t,y)基于MATLAB的数值解法例:>>f=inline('(x(1)^2-2*x(1))*exp(-x(1)^2-x(2)^2-x(1)*x(2))','x');>>x0=[0;0];ff=optimset;ff.Display='iter';>>x=fminsearch(f,x0,ff)IterationFunc-countminf(x)Procedu

3、re13-0.000499937initial24-0.000499937reflect72137-0.641424contractoutsideOptimizationterminatedsuccessfully:x=0.6111-0.3056>>x=fminunc(f,[0;.0],ff)DirectionalIterationFunc-countf(x)Step-sizederivative12-2e-0080.001-429-0.5846690.3043530.343316-0.6413970.9503220

4、.00191422-0.6414240.984028-1.45e-008x=0.6110-0.3055比较可知fminunc()函数效率高于fminsearch()函数,故若安装了最优化工具箱则应调用fminunc()函数。全局最优解与局部最优解例:>>f=inline('exp(-2*t).*cos(10*t)+exp(-3*(t+2)).*sin(2*t)','t');%目标函数>>t0=1;[t1,f1]=fminsearch(f,t0);[t1f1]ans=0.9228-0.1547>>t0=0.1;[t2,

5、f2]=fminsearch(f,t0);[t2f2]ans=0.2945-0.5436>>symst;y=exp(-2*t)*cos(10*t)+exp(-3*(t+2))*sin(2*t);>>ezplot(y,[0,2.5]);set(gca,‘Ylim’,[-0.6,1])%在t[0,2.5]内的曲线>>ezplot(y,[-0.5,2.5]);set(gca,‘Ylim’,[-2,1.2])%在[-0.5,2.5]曲线>>t0=-0.2;[t3,f3]=fminsearch(f,t0);[t3f3]ans=

6、-0.3340-1.9163利用梯度求解最优化问题例:>>[x,y]=meshgrid…(0.5:0.01:1.5);…z=100*(y.^2-x).^2…+(1-x).^2;>>contour3(x,y,z,100),set(gca,'zlim',[0,310])%测试算法的函数>>f=inline('100*(x(2)-x(1)^2)^2+(1-x(1))^2','x');>>ff=optimset;ff.TolX=1e-10;ff.TolFun=1e-20;ff.Display='iter';>>x=fminu

7、nc(f,[0;0],ff)Warning:Gradientmustbeprovidedfortrust-regionmethod;usingline-searchmethodinstead.DirectionalIterationFunc-countf(x)Step-sizederivative1210.5-4442023.01749e-0123.40397e-009-1.77e-013x=1.000001736959721.00000347608069%求梯度向量(比较引入梯度的作用,但梯度的计算也费时间)>>s

8、ymsx1x2;f=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]=c6fun3(x)%目标函数编写:y=100*(x(2)-x(1)^2)^2+(1-x(1))^2;%目标函数G

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

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

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