- 1、本文档共19页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
机械优化上机实验
《机械优化设计》
上机报告
绪论 1
1 主要内容 2
2 一维优化方法(黄金分割法) 2
2.1 方法简介 2
2.1.1 进退法基本原理 2
2.1.2 黄金分割法基本原理 2
2.1.3 黄金分割法优点 3
2.2 进退法及黄金分割法程序框图 3
2.3 数值实例 4
2.4 黄金分割法c语言程序 4
2.5 运行结果 6
3 无约束优化方法(鲍威尔法) 7
3.1 方法简介 7
3.1.1 鲍威尔法基本原理 7
3.2 鲍威尔法程序框图 7
3.3 数值实例 8
3.4 鲍威尔法c语言程序 8
3.5 运行结果 12
4 有约束优化方法(惩罚函数法) 13
4.1 方法简介 13
4.1.1 惩罚函数法基本原理 13
4.2 惩罚函数法程序框图 13
4.3 数值实例 13
4.4 惩罚函数法c语言程序 14
4.5 运行结果 15
结束语 16
参考文献 17
绪论
随着科学发展的需要,机械产品设计质量的不断提高,设计周期的白益缩短,要求设计者考虑的因素也愈来愈多,其计算方法的复杂性和精确性都是一般传统设计难以完成的。面对这种技术发展的现状,设计者便开始求助于新的理论和新的设计方法。机械优化设计就是在这种情况下,发展起来的一种现代设计方法。
优化设计将最优化原理和计算机技术应用于设计领域,为工程设计提供一种重要的科学设计方法。利用这种新方法,就可以寻找出最佳设计方案,从而大大提高设计效率和质量。
优化设计是以建立数学模型进行设计的。优化设计引用了一些新的概念和术语,如前所述的设计变量、目标函数、约束条件等。机械优化设计将机械设计的具体要求构造成数学模型,将机械设计问题转化为数学问题,构成一个完整的数学规划命题,逐步求解这个规划命题,使其最佳地满足设计要求,从而获得可行方案中的最优设计方案。优化设计改变了传统的设计方式。传统设计方法是被动地重复分析产品的性能,而不是主动设计产品的参数。作为一项设计不仅要求方案可行、合理,而且应该是某些指标达到最优的理想方案。并从大量的可行设计方案中找出—种最优化的设计方案,从而实现最优化的设计。优化设计可以满足多方面的性能要求。产品要求总体结构尺寸小,传动效率高,生产成本低等,这些要求用传统设计方法设计是无法解决的。实践证明,最优化设计是保证产品具有优良的性能,减轻自重或体积,降低工程造价的一种有效设计方法。
机械优化设计是适应生产现代化要求发展起来的,是一门崭新的学科。它是在现代机械设计理论的基础上提出的一种更科学的设计方法,它可使机械产品的设计质量达到更高的要求。因此,在加强现代机械设计理论研究的同时,还要进一步加强最优设计数学模型的研究,以便在近代数学、力学和物理学的新成就基础上,使其更能反映客观实际。同时机械优化设计的研究还必须与工程实践、数学力学理论、计算技术和电子计算机的应用等紧密联系起来,才能具有更广阔的发展前景。
机械优化设计主要有一维搜索方法(进退法、黄金分割法、二次插值法等)、无约束优化方法(最速下降法、牛顿型方法、共轭梯度法、变尺度法、鲍威尔方法等)、约束优化方法(惩罚函数法等)。
主要内容
一维优化方法(黄金分割法)
方法简介进退法基本原理
2.1.2 黄金分割法基本原理
1在区间[a,b]内取点:a1?,a2?把[a,b]分为三段。
2如果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]逐步缩小,直到满足预先给定的精度时,即获得一维优化问题的近似最优解。
黄金分割法优点
进退法及黄金分割法程序框图
图2-1 进退法程序框图
图2-2 黄金分割法程序框图
数值实例
min F(x)=x2-2*x+5
最优解x*=1,F(x*)=4.
黄金分割法c语言程序
#include stdio.h
#include math.h
#define e 0.001
#define tt 0.01
float f(double x)
{
float y=pow(x,2)-2*x+5;
return(y);
}
finding(float *p1,float*p2)
{
float x1=0,x2,
文档评论(0)