- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
机械优化设计报告.doc
机械优化设计上机实验报告
班 级 人 员:马 春 曹 旭
南咪咪 吕进龙
李鸿飞 王建华
日 期:2013年5月
一 进退法
1.1算法的原理
进退法是用来确定搜索区间(包含极小值点的区间)的算法,其理论依据是:为单谷函数(只有一个极值点),且为其极小值点的一个搜索区间,对于任意,如果,则为极小值的搜索区间,如果,则为极小值的搜索区间。
因此,在给定初始点,及初始搜索步长的情况下,首先以初始步长向前搜索一步,计算。
如果
则可知搜索区间为,其中待求,为确定,后退一步计算,为缩小系数,且,直接找到合适的,使得,从而确定搜索区间。
如果
则可知搜索区间为,其中待求,为确定,前进一步计算,为放大系数,且,知道找到合适的,使得,从而确定搜索区间。
进退法流程图:
1.2算法特点
从初始点开始一出事步长向前试探,如果函数值上升,则步长变号,机改变试探方向。如果函数值下降,则维持原来的试探方向,并将步长加倍。区间的始点、中间点一次沿试探方向移动一步。此过程以自己进行到函数值再次上升位置,既可找到搜索区间的终点。最后大额到的三个点纪委搜索区间的始点、中间点和终点,形成函数值得“高-低-高”趋势,
1.3算法的改进及建议
由于解析过程中没有精度的要求,所以解析的精度比较差,只能确定一个比较理想的最优解区间,仅仅能够作为求职最优解的参考,所以希望通过进一步的完善来实现精度的提高并且能够求得较为满意的最优解。所以该算法还带进一步完善和改进,从而得到比较好的优化解。
1.4算例及调试结果
二 黄金分割法
2.1 算法的原理
属于一维搜索方法中的一类,按某种给定的规律来确定区间内插入点的位置,此点位置的确定仅仅按照区间缩短如何加快,而不顾及函数值的分布关系。
首先采用进退法确定函数极值点所在的搜索区间[a, b],然后采用牛顿法求出极值。进退法的基本思想:按照一定的规则试算若干个点,比较其函数值的大小,直至找到函数值按“高-低-高”变化的单峰区间。
在搜索区间[a, b]内适当插入两点、,并计算其函数值。、将区间分成三段。应用函数的单谷性质,通过函数值大小的比较,删去其中一段,是搜索区间得以缩短。然后再在保留下来的区间上作同样的处置,如此迭代下去,使搜索区间无限缩小,从而得到极小点的数值近似值。
2.2 算法的特点
按()缩小 比较大小 确定取舍区间,依照去坏留好原则,对称原则,以及等比收缩原则来逐步缩小搜索范围。
进退法流程图参考第一部分,黄金分割法流程图如下:
黄金分割法程序框图
2.3 算法的改进及建议
当函数是凸函数时,我们可以利用函数的凸性,得到函数值的上界和下界,进而利用这些信息,缩短函数不确定区间,达到优化算法的效果。
如果一个函数是凸函数,根据已知的函数值,可以找到它的最大值和最小值,这些信息有利于得到最优解的位置,进而大大缩减不确定区间。假设是定义在区间上的连续的,单变量可微的凸函数,给点初始不确定区间。下面介绍两种利用函数的凸性优化黄金分割的方法。通过凸函数的一阶特征,定理1.3.11[4]:设为非空开凸集,是定义在上的可微函数,则为凸函数的充分必要条件是:
(1)证明:必要性
设f是凸函数,于是对所有
因此,对于
充分性
假设(1)成立,任取我们有于是得到:
所以是凸函数。
这个定理表明了根据局部导数的线性近似是函数的低估,即凸函数图形位于图形上任一点切线的上方。根据这个定理,所以函数的最小值一定在切线的上方。利用凸函数的一阶特征以及已知的最小函数值就可以确定不确定区间。函数两个端点处的切线和最小函数值的交点,即为缩小的不确定区间。
该算法的基本思想是:已知函数f(x)在区间端点l, u两点的函数值f(l),f(u) ,并比较两点函数值的大小,如果 最小值点为。否则,就取并给该点的函数赋值f(x);下一步求出函数在l, u,两点处的切线函数;最小函数与两切线的交点l′, u′,即是新的迭代区间[ l, u]。由定理1.3.11,我们知道函数值一定在切线的上方,所以最小值也在新的迭代区间内。
算法2.1:
Step 0:给定0,点l, u
Step1: 函数在l, u, 两点处赋值f(l),f(u);
Step2: 比较, 两点函数值的大小,如果
否则:并给x点赋值f(x);
Step3: 计算f出在l, u点的切线方程,;
Step4: 函数f(x)与直线,的交点
文档评论(0)