非线性优化算法及实现

上传人:第*** 文档编号:38976739 上传时间:2018-05-10 格式:DOC 页数:6 大小:517.50KB
返回 下载 相关 举报
非线性优化算法及实现_第1页
第1页 / 共6页
非线性优化算法及实现_第2页
第2页 / 共6页
非线性优化算法及实现_第3页
第3页 / 共6页
非线性优化算法及实现_第4页
第4页 / 共6页
非线性优化算法及实现_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《非线性优化算法及实现》由会员分享,可在线阅读,更多相关《非线性优化算法及实现(6页珍藏版)》请在金锄头文库上搜索。

1、编号: 26 最最优优化化实实验验报报告告实验题目实验题目: 非线性优化算法及实现非线性优化算法及实现 实验成绩(指导教师填):实验成绩(指导教师填): 院 (系): 数学与计算科学 专 业: 信息与计算科学 学生姓名: 刘建海 学 号: 0700710221 指导教师: 李丰兵 实验类型:实验类型: 验证性 设计性 工综合性 其它2009 年 11 月 21 日 一、实验目的实验目的1、用 matlab 的优化工具箱对无约束优化问题进行算法实现。 2、培养 matlab 编程与上机调试能力。二、实验内容二、实验内容 1.利用 matlab 的优化工具箱求解以下问题:1)求函数在 处的的零点及

2、在 22116 0.30.010.90.04f x xx 1内的最大值;0.5,1.5 f=(x)1/(x-0.3)2+0.01)+1/(x-0.9)2+0.04)-6 z=fzero(f,1) z = 1.2995 fun=inline(-(1/(x-0.3)2+0.01)+(1/(x-0.9)2+0.04)-6); x,fval=fminbnd(fun,-0.5,1.5) x =0.3004 fval =-96.5014 所以函数的最大值为:96.50142)求函数 在点附近的最小值。 222 2111001g xxxx 1,1 fun=inline(100*(x(2)-x(1)2)2+(

3、1-x(1)2); x,fval=fminsearch(fun,1;1) x =11 fval =0 2.编写函数文件,实现 Fibonacci 法,并求解下列问题1)求函数在内的极大值 630sintan 1xxxx e0,1function x,minf=minFBNQ(f,a,b,deilta,eps) format long; if nargin=4eps=1.0e-6; end F=ones(2,1); N=(b-a)/eps; c=F(2)-N; n=2; while cfua=l;l=u;k=1;u=a+F(n-k-1)*(b-a)/F(n-k);if(k=n-3)break;e

4、lse k=k+1;endelseb=u;u=1;l=a+F(n-k-2)*(b-a)/F(n-k);if (k=n-3)break;else k=k+1;endendendif k=100000disp(找不到最小值找不到最小值!);x=NaN;minf=NaN;return;endu=l+delta;f1=subs(f,findsym(f),l);fu=subs(f,findsym(f),u);if f1fua=l;elseb=l;end x=(a+b)/2;minf=subs(f,findsym(f),x);format short; 运行结果运行结果: syms x; f=(sin(x

5、)6*tan(1-x)*exp(30*x); x,fx=minFBNQ(F,0,1,0.05); x= 0.9707 fx=-4.1086e+010 则则 f(x)的极大值为:)的极大值为:4.1086e+0102)求函数在内的极小值 tttee1,1 syms t; f= exp(-t)+exp(t); x,fx=minFBNQ(F,-1,1,0.05) x =-1.4808e-006 fx = 2.0000 3.编写函数文件,实现 FR 共轭梯度法或拟牛顿法(BFGS 校正) ,并求解下列问题1), 4222 121122min,221f x xxxxx 01,1Tx df 文件:文件:

6、function dy=df(x) syms y x1 x2 y=(x1-x2)4+(x1-2)2*x22+(x2+1)2; y1=diff(y,x1); y2=diff(y,x2); dy1=subs(y1,x1,x(1); dy1=subs(dy1,x2,x(2); dy2=subs(y2,x1,x(1); dy2=subs(dy2,x2,x(2); dy=dy1,dy2; f 文件:文件: function y=f(x) y=(x(1)-x(2)4+(x(1)-2)2*x(2)2+(x(2)+1)2; 输入:输入:xk=1 1,eps=10(-5),optx,opty=gong_t(xk

7、,eps) 输出:输出:optx = 0.1347-0.2056 opty = 0.79162), 222 121min 12xxx00,0Tx df 文件文件: function dy=df(x) syms y x1 x2 y=(1-x1).2+2*(x2-x1.2).2; y1=diff(y,x1); y2=diff(y,x2); dy1=subs(y1,x1,x(1); dy1=subs(dy1,x2,x(2); dy2=subs(y2,x1,x(1); dy2=subs(dy2,x2,x(2); dy=dy1,dy2; f 文件:文件: function y=f(x) y=(1-x(1

8、).2+2*(x(2)-x(1).2).2; 输入:输入:xk=0 0,esp=10(-5),optx,opty=gong_t(xk,eps) 输出:输出:optx = 1.00001.0000 opty = 8.7057e-013 4、利用 matlab 的优化工具箱求解以下问题(求解函数自己选择):1.求函数最小值: ,初始点 123123min. . 02372f xx x xstxxx 10,10,10Tx 运行结果:运行结果: A=-1 -2 -3;1 2 3;b=0 72; x0 = 10; 10; 10; x,fval = fmincon(myfun,x0,A,b) Optimi

9、zation terminated: Magnitude of directional derivative in searchdirection less than 2*options.TolFun and maximum constraint violationis less than options.TolCon. Active inequalities (to within options.TolCon = 1e-006):lower upper ineqlin ineqnonlin x = 24.000012.00008.0000 fval = -2.3040e+0032.求函数最小

10、值 122 1212212min42421. .00xf xexxx xxstxx function f,g = myfun(x)f =exp(x(1)*(4*x(1).2+2*x(2).2+4*x(1)*x(2)+2*x(2)+1); if nargout 1g(1) = -x(1);g(2) = -x(2); end x0=0,0; x,fval = fminunc(myfun,x0) x = 0.5000 -1.0000 fval = 1.8304e-0153.求函数最大值 122 12122121212max42421. . 1.5010xf xexxx xxstx xxxx x fu

11、nction f=myfun(x) f=-exp(x(1)*(4*x(1)2+2*x(2)2+4*x(1)*x(2)+2*x(2)+1); function c1,c2 = mycon(x) c1=1.5+x(1)*x(2)-x(1)-x(2) x0=2 2; x,fval=fmincon(myfun,x0,mycon) Optimization terminated: No feasible solution found.Search direction less than 2*options.TolX but constraints are not satisfied. x = 22 fval =-332.5075三、心得体会三、心得体会通过本次实验,.我学会了用 matlab 的优化工具箱对无约束优化问题进行算法实现,在帮 助中,有很多我们不知道的方法可以求解问题,matlab 的优化工具箱就在帮助中可以找到。 通过这次试验,我知道不仅可以通过书本来学习知识,还可以从软件本身中学到知识。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 其它中学文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号