机械优化设计实验报告.docx

机械优化设计实验报告.docx

ID:53302796

大小:46.17 KB

页数:5页

时间:2020-04-03

机械优化设计实验报告.docx_第1页
机械优化设计实验报告.docx_第2页
机械优化设计实验报告.docx_第3页
机械优化设计实验报告.docx_第4页
机械优化设计实验报告.docx_第5页
资源描述:

《机械优化设计实验报告.docx》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、机械设计实验报告班级专业:机制10—4班姓名:杨长文学号:5410020104501.黄金分割法的基本思想在实际计算中,最常用的一维搜索试探方法是黄金分割法,又称0.618法。黄金分割法适用于[a,b]区间上的任何单谷函数求极值问题。对函数除要求“单谷”外不作任何要求,甚至可以不连续。因此,这种方法的适用面非常广。黄金分割法也是建立在区间消去法原理基础上的试探方法,即在区间[a,b]内适当插入两点a1,a2并计算其函数值。a1,a2将区间分成三段,应用函数的单谷性质,通过函数值大小的比较,删去其中一段,使搜索区间得以缩短。然后再在保留下的区间作同样处理,

2、如此迭代下去,使搜索区间无限缩小,从而求得极小值的近似值。黄金分割法要求插入点a1,a2的位置相对于区间[a,b]两端点具有对称性,即a1=b-λ(b-a)a2=a+λ(b-a)λ为待定常数。λλ2λ(1-λ)aa1a2ba3l-λλl假设保留来区间[a,a2],插入a3使得aa3=λ(1-λ),aa1=λ2则1-λ=λ2λ=0.618可见黄金分割法能使相邻两次搜索区间都具有相同的缩短率0.618,所以黄金分割法又称0.618法。黄金分割法的搜索过程:1)给出初始搜索区间[a,b]及收敛精度ε(ε=0.001),将λ赋以值0.618。2)按坐标点计算a1

3、,a2的值,并计算相应的函数值f(a1),f(a2)。3)根据区间消去法原理缩短搜索区间。为了能用原来的坐标计算公式,须进行区间名称的代换,并在保留区间中计算一个新的试验点及其函数值。4)检查区间是否缩短到足够小和函数值收敛到足够近,如果条件不满足则返回步骤2.5)如果条件满足,则取最后两试验点的平均值作为极小点的函数值。2.黄金分割法的程序框图如图所示开始给定a,b,ελ=0.618a1=b-λ(b-a)y1=f(a1)a2=a+λ(b-a)y2=f(a2)是否y1>=y2?a=a1,a1=a2,y1=y2b=a2,a2=a1,y2=y1a2=a+λ(

4、b-a)a1=b-λ(b-a)y2=f(a2)y1=f(a1)是否

5、(b-a)/b

6、<ε和

7、(y2-y1)/y2

8、<ε?a*=(a+b)/2结束例3-1:对函数f(a)=a2+2a,当给定搜索区间-3≤a≤5时,试用黄金分割法求极小点a*。C语言编程,程序如下:#include#include#defineP0.618doublef(doublea);intmain(){doublea,b,a1,a2,y1,y2,c=0.001;intk=1;a=-3;b=5;a1=b-P*(b-a);a2=a+P*(b-a);y1=f

9、(a1);y2=f(a2);do{if(y1>=y2){a=a1;a1=a2;y1=y2;a2=a+P*(b-a);y2=f(a2);}else{b=a2;a2=a1;y2=y1;a1=b-P*(b-a);y1=f(a1);}k++;}while(fabs((b-a)/b)>=c

10、

11、fabs((y2-y1)/y2)>=c);a=(a+b)/2;printf("用黄金分割法求得极小点:a=%.5lf",a);printf("所得极小点相对应的函数值:y=%.5lf",f(a));printf("该函数所需迭代次数为:%d",k);return0

12、;}doublef(doublea){doubley;y=a*a+2*a;returny;}1.程序运行结果:

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

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

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