利用梯度法和牛顿法编程求最优解(matlab).doc

利用梯度法和牛顿法编程求最优解(matlab).doc

ID:57675015

大小:13.00 KB

页数:2页

时间:2020-08-31

利用梯度法和牛顿法编程求最优解(matlab).doc_第1页
利用梯度法和牛顿法编程求最优解(matlab).doc_第2页
资源描述:

《利用梯度法和牛顿法编程求最优解(matlab).doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、利用梯度法和牛顿法编程求最优解(matlab)软件类2010-11-0915:46:36阅读197评论0  字号:大中小 订阅f(x)=x1^2+4*x2^2  x0=[2;2]  e=0.002利用梯度法和牛顿法编程求最优解方法一.梯度法functiony=fun(x1,x2)y=x1^2+4*x2^2;    %定义fun.m函数clcsymsx1x2d;f=x1^2+4*x2^2;fx1=diff(f,'x1');fx2=diff(f,'x2');x1=2;x2=2;forn=1:100f0=subs(f);f1=subs(fx1);f2=subs(f

2、x2);if(double(sqrt(f1^2+f2^2))<=0.002)nvpa(x1)vpa(x2)vpa(f0)break;elseD=fun(x1-d*f1,x2-d*f2);Dd=diff(D,'d');dd=solve(Dd);x1=x1-dd*f1;x2=x2-dd*f2;endend               %结果n=10,x1=0.2223e-3,x2=-0.1390e-4,f0=0.5021e-7.方法二.牛顿法clcsymsx1x2;f=x1^2+4*x2^2;fx1=diff(f,'x1');fx2=diff(f,'x2');f

3、x1x1=diff(fx1,'x1');fx1x2=diff(fx1,'x2');fx2x1=diff(fx2,'x1');fx2x2=diff(fx2,'x2');x1=2;x2=2;forn=1:100f0=subs(f);f1=subs(fx1);f2=subs(fx2);if(double(sqrt(f1^2+f2^2))<=0.002)nx1=vpa(x1,4)x2=vpa(x2,4)f0=vpa(f0,4)break;elseX=[x1x2]'-inv([fx1x1fx1x2;fx2x1fx2x2])*[f1f2]';x1=X[1,1];x2=X

4、[2,1];endend                           %结果n=2,x1=0,x2=0,f0=0.

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

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

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