




已阅读5页,还剩8页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
最优化方法实验报告 Numerical Linear Algebra And Its Applications学生所在学院:理 学 院学生所在班级:计算数学10-1学 生 姓 名:甘 纯指 导 教 师:单 锐教 务 处2013年 5月实验一 实验名称: 熟悉matlab基本功能 实验时间: 2013年05月10日 星期三 实验成绩: 一、实验目的:在本次实验中,通过亲临使用MATLAB,对该软件做一全面了解并掌握重点内容。 二、实验内容:1. 全面了解MATLAB系统2. 实验常用工具的具体操作和功能实验二 实验名称: 一维搜索方法的MATLAB实现 实验时间: 2013年05月10日 星期三 实验成绩: 一、实验目的:通过上机利用Matlab数学软件进行一维搜索,并学会对具体问题进行分析。并且熟悉Matlab软件的实用方法,并且做到学习与使用并存,增加学习的实际动手性,不再让学习局限于书本和纸上,而是利用计算机学习来增加我们的学习兴趣。 二、实验背景:(一)0.618法(黄金分割法),它是一种基于区间收缩的极小点搜索算法,当用进退法确定搜索区间后,我们只知道极小点包含于搜索区间内,但是具体哪个点,无法得知。1、算法原理 黄金分割法的思想很直接,既然极小点包含于搜索区间内,那么可以不断的缩小搜索区间,就可以使搜索区间的端点逼近到极小点。2、 算法步骤用黄金分割法求无约束问题的基本步骤如下:(1)选定初始区间及精度,计算试探点:。(2)若,则停止计算。否则当时转步骤(3)。 当转步骤(4)。(3)置转步骤(5)(4)置转步骤(5)(5) 令,转步骤(2)。(2) 斐波那契法:1、算法原理 斐波那契法也是一种区间收缩算法,但是和黄金分割法不同的是,黄金分割法每次收缩只改变搜索区间的一个端点,而斐波那契法同时改变搜索区间的两个端点,是一种双向收缩法。2、 算法步骤(1)选取初始数据,确定单峰区间,给出搜索精度,由 确定搜索次数。(2) ,计算最初两个搜索点,按(3)计算和。(3) while if else enden(4) 当进行至时, 这就无法借比较函数值和的大小确定最终区间,为此,取 其中为任意小的数。在和这两点中,以函数值较小者为近似极小点,相应的函数值为近似极小值。并得最终区间或。 由上述分析可知,斐波那契法使用对称搜索的方法,逐步缩短所考察的区间,它能以尽量少的函数求值次数,达到预定的某一缩短率。(3) 三点二次插值法:1、算法原理 该算法在搜索区间中不断用低次(通常不超过三次)插值多项式来近似目标函数,并逐步用插值多项式的极小点来逼近的极小点,当函数具有比较好的解析性质时,插值方法比直接方法(如0.618或Fibonacci法)效果更好。2、算法步骤(1)取初始点,计算并满足,置精度要求(迭代终止条件)。(2 ) 计算,则置 停止计算(3)计算若或则置 停止计算(4)计算,若停止计算(作为极小点)(5)如果 则 若则置:否则置;否则则 若则置:否则置。(6)转(2)三、实验内容:1. 0.618法的MATLAB实现2. Fibonacci法的MATLAB实现3二次插值法的MATLAB实现 四、实验过程:10.618法的函数:function x,minf = minHJ(f,a,b,eps)if nargin = 3 eps = 1.0e-6;endl = a + 0.382*(b-a);u = a + 0.618*(b-a);k=1;tol = b-a;while toleps & k fu a = l; l = u; u = a + 0.618*(b - a); else b = u; u = l; l = a + 0.382*(b-a); end k = k+1; tol = abs(b - a);endif k = 100000 disp(找不到最小值!); x = NaN; minf = NaN; return;endx = (a+b)/2;minf = subs(f, findsym(f),x);2Fibonacci法的函数:function x,minf = minFBNQ(f,a,b,delta,eps)if nargin = 4 eps = 1.0e-6;endF = ones(2,1);N = (b-a)/eps;c = F(2) - N;n = 2;while c fu a = l; l = u; u = a + F(n-k-1)*(b-a)/F(n-k); if (k = n - 3) break; else k = k+1; end else b = u; u = l; l = a + F(n-k-2)*(b-a)/F(n-k); if ( k = n-3 ) break; else k = k+1; end endendif k = 100000 disp(找不到最小值!); x = NaN; minf = NaN; return;endu = l + delta;fl = subs(f , findsym(f), l);fu = subs(f , findsym(f), u);if fl fu a = l;else b = l;endx = (a+b)/2;minf = subs(f , findsym(f), x);3二次插值法函数:function min,minf=minTP(a1,a2,a3,f,eps)if nargin=4 eps=10(-2);endf1=subs(f,findsym(f),a1);f2=subs(f,findsym(f),a2);f3=subs(f,findsym(f),a3);if (f1f3) disp(输入三点不符合三点二次插值的要求);endax=(a22-a32)*f1+(a32-a12)*f2+(a12-a22)*f3)/(2*(a2-a3)*f1+(a3-a1)*f2+(a1-a2)*f3);fax=subs(f,findsym(f),ax);while(abs(fax-f2)eps) if axa2 if fax=f2 a1=a2; a2=ax; f1=f2; f2=fax; else a3=ax; f3=fax; end else if faxsyms t;f=t4-t2-2*t+5;x,fx=minHJ(f,-10,10)结果为:x= 1.0000fx= 3.00002Fibonacci法Fibonacci法求解极值实例。用Fibonacci法求解下面函数的最小值:在command window中输入:syms t;f=t4-t2-2*t+5;x,fx=minFBNQ(f,-10,10,0.05)结果为:x= 1.0000fx=
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024-2025学年医师定期考核真题附参考答案详解【综合题】
- 农业技术推广方案
- 秋季新学期开学仪式主持词范例
- 如何做好物业投诉处理工作
- 宴会餐具使用规范
- 工作总结:坚守信念的快乐工作
- 高职汽车维修专业课程教学设计
- 地产营销策略调整预案
- 水利工程监理流程及标准汇编
- 九年级英语词汇默写高频表
- 2025年资源共享授权合同
- 信息安全管理制度
- 社交心理在网络营销中的实战运用
- 2025年少先队应知应会知识考试题库
- 2025年宁波农商发展集团限公司招聘高频重点提升(共500题)附带答案详解
- 蜀道集团招聘笔试
- 历年全国普通话考试真题50套
- 2024年社区警务规范考试题库
- 农业测绘技术服务方案
- 2025年上海市高考语文专项复习:识记背诵默写
- 2024年中级经济师(金融)《专业知识与实务》考前必刷必练题库500题(含真题、必会题)
评论
0/150
提交评论