机械优化设计一维搜索实验报告_第1页
机械优化设计一维搜索实验报告_第2页
机械优化设计一维搜索实验报告_第3页
机械优化设计一维搜索实验报告_第4页
机械优化设计一维搜索实验报告_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

机械优化设计实验报告班级: 机械设计(2)班 姓名: 邓传淮 学号: 0901102008 1 实验名称:一维搜索黄金分割法求最佳步长2 实验目的:通过上机编程,理解一维搜索黄金分割法的原理,了解计算机在优化设计中的应用。3 黄金分割法的基本原理 黄金分割法是用于一元函数f(x)在给定初始区间a,b内搜索极小点*的一种方法。它是优化计算中的经典算法,以算法简单、收敛速度均匀、效果较好而著称,是许多优化算法的基础,但它只适用于一维区间上的凸函数6,即只在单峰区间内才能进行一维寻优,其收敛效率较低。其基本原理是:依照“去劣存优”原则、对称原则、以及等比收缩原则来逐步缩小搜索区间7。具体步骤是:在区间a,b内取点:a1 ,a2 把a,b分为三段。如果f(a1)f(a2),令a=a1,a1=a2,a2=a+r*(b-a);如果f(a1)f(a2) ,令b=a2,a2=a1,a1=b-r*(b-a),如果(b-a)/b和(y1-y2)/y2都大于收敛精度重新开始。因为a,b为单峰区间,这样每次可将搜索区间缩小0.618倍或0.382倍,处理后的区间都将包含极小点的区间缩小,然后在保留下来的区间上作同样的处理,如此迭代下去,将使搜索区a,b逐步缩小,直到满足预先给定的精度时,即获得一维优化问题的近似最优解。黄金分割法原理如图所示, 4 实验所编程序框图(1) 进退发确定单峰区间的计算框图 (2)黄金分割法计算框图5 程序源代码(1)进退发确定单峰区间的程序源代码#include#include#define f(x) pow(x,4)-3*pow(x,3)-5*pow(x,2)-14*x+46main() int k; double x,h,x1,x2,x3; double f1,f2,f3,f; double a,b; x1=0; h=1; x2=x1+h; f1=f(x1); f2=f(x2); if (f1f2) h=2*h; x3=x2+h; f3=f(x3); else h=-h; x1=x2; f1=f2; x3=x2+h; f3=f(x3); printf(x1=%lf,x2=%lf0,x1,x2); do x1=x2; x2=x3; f1=f2; f2=f3; x3=x2+h; f3=f(x3); while(f30) a=x1; b=x3; else a=x3; b=x1; printf(a=%lf,b=%lfn,a,b);(2)黄金分割法的程序源代码#include#include#define f(x)=pow(x,4)-3*pow(x,3)-5*pow(x,2)-14*x+46main() int k; double x,h,x1,x2,x3,c; double f1,f2,f3,f; double a,b; printf(input c:n); scanf(%lf,&c); a=1; b=5; x1=b-0.618*(b-a);printf(x1=%lf ,x1); f1=f(x1);printf(f1=%lf ,f1); x2=a+0.618*(b-a);printf(x2=%lf ,x2); f2=f(x2);printf(f2=%lf ,f2); k=0;loop: if(f1f2) b=x2;printf(b=%lf ,b); x2=x1;printf(x2=%lf ,x2); f2=f1;printf(f2=%lf ,f2); x1=a+0.382*(b-a);printf(x1=%lf ,x1); f1=f(x1);printf(f1=%lf ,f1); else a=x1;printf(a=%lf ,a); x1=x2;printf(x1=%lf ,x1); f1=f2;printf(f1=%lf ,f1); x2=a+0.618*(b-a);printf(x2=%lf ,x2); f2=f(x2);printf(f2=%lf ,f2); k=k+1; printf(k=%dn,k); if(fabs(b-ac)

温馨提示

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

评论

0/150

提交评论