使用精确搜索算法确定步长的最速下降法_第1页
使用精确搜索算法确定步长的最速下降法_第2页
使用精确搜索算法确定步长的最速下降法_第3页
使用精确搜索算法确定步长的最速下降法_第4页
使用精确搜索算法确定步长的最速下降法_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、纟沙理J数学与计算科学学院实验报告实验项目名称 使用精确搜索算法确定步长的最速下降法所属课程名称 最优化方法实验类型算法编程实验日期201班级学号姓名成绩、实验概述:【实验目的】(1) 掌握精确搜索算法确定步长的最速下降法;(2) 使用计算机语言表达最优化方法。【实验原理】最速下降法又称为梯度法,是1847年由著名数学家Cauchy给出的。他是 解析法中最古老的一种,其他解析方法或是它的变形,或是受它的启发而得到 的,因此它是最优化方法的基础。设无约束问题中的目标函数 f : RnR1 阶连续可微。最速下降法的基本思想是:从当前点 xk出发,取函数f (x)在点xk处下降最快的方向作为我们的搜

2、索方向pk.由f (x)的Taylor展式知f (xk) - f (xk tpk) - -t f(xk)T pk o( tpk )略去t的高阶无穷小项不计,可见取pk - Nf(xk)时,函数值下降得最多。于 是,我们可以构造出最速下降法的迭代步骤。解无约束问题的的最速下降法计算步骤第1步选取初始点x(0),给定终止误差;,令k:=0 ;第2步计算vf (xk),若f (xk)| ,停止迭代输出xk .否则 进行第三步第3步取pk =、f(xk);第4步进行一维搜索,求tk,使得f (xk = f (xk -tk f (xk) = min f (xk -t f (xk)令_ ,k:=k+1,转

3、第 2 步。由以上计算步骤可知,最速下降法迭代终止时,求得的是目标函数驻点的一个 近似点。【实验环境】计算机 VC+系统处理器;安装內存(RAM):系统类型Intel(R) CorefTM) i7-3630QM CPU 2.40GHz 2.40 Gl 8W GB (7.89 GB 可用)64位操作系統没有可用于此显示器的笔或阳讎输入二、实验内容:【实验方案】1.列举例题2.手工计算3.将计算步骤等实现程序化4.实验结果分析【实验过程】例题1 2 2 f (x) x-i x22计算步骤:;=0.1x(0)-(1,1/【实验小结】(收获体会)通过本次实验,初步了解了最优化方法在机器语言上的实现,更

4、深刻的了解了 精确线性搜索法确定步长的最速下降法,理解和掌握了他们的优缺点。同时也认识 了自己的缺点,编程能力弱,需要极大的提高。在以后的实验中会努力学习,争取 把这门课学好。三、指导教师评语及成绩:评语评语等级优良中及 格不及格1.实验报告按时完成,字迹清楚,文字叙述流畅,逻辑性强2.实验方案设计合理3.实验过程(实验步骤详细,记录完整,数据合理,分析透彻)4实验结论正确.成绩:指导教师签名: 批阅日期:附录1源程序#include“ math.h ”#include“ stdio.h ”float x10,y10,p10,f,h;int n;vod fun()int i;for(i=1,i

5、n;i+) xi=yi-h*pi;f=1/2*x1*x1+x2*x2;f=f+60;return;main( )float g10,d10,q,r,e,h1,h2,h3,h4,t,t0,c1,c2,f1,f2,f3,f4,f5,v;int i,k,u;pr intf( “ in put n,en ”);scanf( “ d,%f ”,&n,&e);x1=0;x2=0;p4: g1=2*x1-x2-10;g2=2*x2_x1_4;q=0;for(i=1;i n;i+) q=gi*gi+q;r=sqrt(q);for(i=1;in;i+) yi=xi;pi=gi/r;if(rf2) t=t+t;u

6、=u+1;elset=-t;h3=h1;f3=f1;h1=h2;f1=f2;h2=h3;f2=f3;p1: h3=h2+t; h=h3;fun( ) f3=f;if(f2f3) t=t+t;u=u+1;h1=h2;f1=f2;h2=h3;f2=f3;goto pl;elseif(u0)h4=0.5*(h2+h3);h=h4;fun( );f4=f;if(f4f2) h3=h4;f3=f4;elseh 1=h2;f1=f2;h2=h4;f2=f4;c1= (f3-f1 ) /(h3-h1);C2=(f2-f1)/(h2-h1)-c1)/(h2-h3);if(fabs(c2)e) h1=h2;f1

7、=f2;t0=v*t0;goto p2; elseh4=0.5*(h1+h3-(c1/c2);h=h4;fun( );f4=f;if(f21) f5=1;else f5=f2;if(fabs(f4-f2)/f5)e)for(i=1;if2) h 1= h2;f1=f2;else h1=h4;f1=f4;tO=v*tO;goto p2;p3:h0;fu n();printf( “OBJ.FUNC F=%fn ” ,f);for(i=1;i n;i+)printf( “ X(%d ” ,I);printf( “ )=%fn ” ,xi);附录 2:实验报告填写说明1实验项目名称: 要求与实验教学大纲一致 .2实验目的 :目的要明确,要抓住重点,符合实验教学大纲要求.3实验原理: 简要说明本实验项目所涉及的理论知识 .4实验环境 :实验用的软、硬件环境 .5实验方案(思路、步骤和方法等) :这是实验报告极其重要的内容 . 概括整个实验过程 对于验证性实验,要写明依据何种原理、操作方法进行实验,要写明需要经过哪几个步 骤来实现其操作 . 对于设计性和综合性实验,在上述内容基础上还应该画出流程图、设计 思路和设计方法,再配以相应的文字说明. 对于创新性实验,还应注明其创新点、特色6实验过程(实验中涉及的记录、数据、分析):写明具体实

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论