77范文网 - 专业文章范例文档资料分享平台

机械优化设计实验报告

来源:网络收集 时间:2018-12-21 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

机械设计实验报告

班级专业: 机制 10—4 班

姓名: 杨长文 学号:541002010450

1. 黄金分割法的基本思想

在实际计算中,最常用的一维搜索试探方法是黄金分割法,又称0.618法。 黄金分割法适用于[a,b]区间上的任何单谷函数求极值问题。对函数除要求“单谷”外不作任何要求,甚至可以不连续。因此,这种方法的适用面非常广。 黄金分割法也是建立在区间消去法原理基础上的试探方法,即在区间[a,b]内适当插入两点a1,a2并计算其函数值。a1,a2将区间分成三段,应用函数的单谷性质,通过函数值大小的比较,删去其中一段,使搜索区间得以缩短。然后再在保留下的区间作同样处理,如此迭代下去,使搜索区间无限缩小,从而求得极小值的近似值。

黄金分割法要求插入点a1,a2的位置相对于区间[a,b]两端点具有对称性,即 a1=b-λ(b-a) a2=a+λ(b-a) λ为待定常数。

λ λ2 λ(1-λ) a a1 a2 b a3 l-λ λ

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,a2的值,并计算相应的函数值f(a1),f(a2)。

3) 根据区间消去法原理缩短搜索区间。为了能用原来的坐标计算公式,须

进行区间名称的代换,并在保留区间中计算一个新的试验点及其函数值。 4) 检查区间是否缩短到足够小和函数值收敛到足够近,如果条件不满足则

返回步骤2.

5) 如果条件满足,则取最后两试验点的平均值作为极小点的函数值。

2. 黄金分割法的程序框图如图所示

开始 给定a,b,ε λ=0.618 a1=b-λ(b-a) y1=f(a1) a2=a+λ(b-a) y2=f(a2) 是 否 y1>=y2 ? a=a1,a1=a2,y1=y2 b=a2,a2=a1,y2=y1 a2=a+λ(b-a) a1=b-λ(b-a) y2=f(a2) y1=f(a1) 是 否 |(b-a) /b|<ε和|(y2-y1)/y2|<ε? a*=(a+b)/2 结束

例3-1:

对函数f(a)= a2+2a,当给定搜索区间-3≤a≤5时,试用黄金分割法求极小点a*。

C语言编程,程序如下: #include #include #define P 0.618 double f(double a); int main() { double a,b,a1,a2,y1,y2,c=0.001; int k=1;a=-3;b=5; a1=b-P*(b-a); a2=a+P*(b-a); y1=f(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||fabs((y2-y1)/y2)>=c); a=(a+b)/2; printf(\用黄金分割法求得极小点: a=%.5lf\\n\ printf(\所得极小点相对应的函数值: y=%.5lf\\n\ printf(\该函数所需迭代次数为:%d\\n\ return 0; }

double f(double a) { double y; y=a*a+2*a; return y; }

3. 程序运行结果:

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库机械优化设计实验报告在线全文阅读。

机械优化设计实验报告.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/380221.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: