版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、机械优化设计黄金分割法班级:学硕一班学号:姓名:黄金分割法黄金分割法也成为0.618法,是一种应用广泛的一维搜索方法。该方法对函数无特殊要求,函数甚至可以是不连续的。黄金分割法是利用序列消去原理,通过不断缩小单峰区间长度,使搜索区间不断缩小,从而不断逼近目标函数极小点的一种优化方法。一、基本思想在搜索区间a,b内必须按下述规则对称地取和两点,使,这两点把区间分为三段,计算插入点的函数值,如图1-1所示。根据单峰函数的性质,通过比较函数值大小,删去其中一段,使搜索区间缩小。在新的区间继续上面的过程,使搜索区间不断缩小,当搜索区间无限缩小时,便可得到函数在极小点附近的近似解。在第一次缩小区间后,新
2、区间只需要再插入一点即可形成区间新三段。按比例缩小,新区间三段与原区间三段具有相同的比例分布,每次缩小所得新区间长度与原区间长度之比成为区间收缩率。图1-1设初始区间长度为L,为了保证区间收缩率不变,第一次收缩后的长度为,第二次收缩后的长度为,而第二次的收缩率应该相等。解次方程并舍去负根,就可得到。所以,和两点的取法为:,。所以,对于黄金分割法,适用于设计变量少的优化问题中的一维搜索。二、黄金分割法的搜索过程1)给出初始搜索区间及收敛精度,将赋以0.6182)按坐标点计算公式计算,;并计算其对应的函数值。3)根据区间消去法原理缩短搜索区间。为了能用原来的坐标点计算公式,需进行区间名称的代换,并
3、在保留区间中计算一个新的试验点及其函数值。如果,则新区间 令,记N0=0;如果,则新区间令,记N0=1;如图2-1所示。图2-14)检查区间是否缩短到足够小和函数值收敛到足够精度,如果收敛条件满足,则取最后两试验点的平均值作为极小点的数值近似解。如果条件不满足则转向步骤5。5)产生新的插入点,然后再进行新的区间缩小。总体如图2-2所示。图2-2从迭代过程可以看出,除第一次缩小区间长度时需要在选定的单峰区间内增加两个点外,以后每次缩小区间长度只需要增加一个点,因此区间长度缩小次数应等于缩小区间长度所增加的点数减一。例如,为了达到规定的收敛精度所需要增加的点数为n,则为达到规定的收敛精度所需缩小区
4、间长度的次数k=n-1。第一次缩小后新区间长度第二次缩小后新区间长度第k次缩小后新区间长度设k次缩小后区间长度已缩到足够小,满足规定的收敛精度,即由上式得:编程计算时,可以根据预先规定的精度求得所需插入的点数n,然后用n作为终止迭代的标志。三、算法框图四、机械优化的算例某公司要预制一零件工具箱,初始设计为使用一块长为4m,宽为3m的长方形铁板作为原材料,利用这块铁板按照一定比例分配,围成一个矩形制成工具箱的4个侧面,应该如何设计才能使工具箱的底面积最大?方案一二三四五长(a)0.30.611.21.8宽(b)1.71.410.80.2面积(S)0.510.8410.960.36根据方案可以看到
5、:选取不同的长宽比例,会影响到底面积的大小,并且底面积的大小类似正态分布的图形,也就是会出现一个峰值,因此可以使用黄金分割法进行简单的运算。如图:n 我们可以先设围成工具箱底面的矩形的长为X,因此宽则为2-X,而工具箱的底面积为S,这我们可以把题目传化为以下模型:n 目标函数:S=(2-X)*X;n 约束条件:0X2;n 设置搜索区间为:a,b=0,2,迭代精度为0.000001实现程序#include<math.h>#include<stdio.h>/#include "StdAfx.h"#define f(x) (2-x)*xint main()
6、 double F1,F2,F3,FP,x1,x2,x3,xp,a,b,e; int n; n=1;printf("设¦置目标函数为f(x)=(2-x)*xn"); printf("迭代精度:e="); scanf("%lf",&e); printf("搜索左区间:a="); scanf("%lf",&a); printf("搜索右区间:b="); scanf("%lf",&b); printf("n a b x
7、1 x2 F1 F2n"); x1=b-0.618*(b-a); x2=a+0.618*(b-a); F1=-f(x1); F2=-f(x2); printf("%d %.4lf %.4lf %.4lf %.4lf %.4lf %.4lfn",n,a,b,x1,x2,F1,F2); n=n+;do if(F1<F2) b=x2; x2=x1; F2=F1; x1=a+0.618*(b-a); F1=-f(x1); printf("%d %.4lf %.4lf %.4lf %.4lf %.4lf %.4lfn",n,a,b,x1,x2,F1
8、,F2); n=n+; else a=x1; x1=x2; F1=F2; x2=b-0.618*(b-a); F2=-f(x2); printf("%d %.4lf %.4lf %.4lf %.4lf %.4lf %.4lfn",n,a,b,x1,x2,F1,F2); n=n+; while(fabs(b-a)/b)>=e&&fabs(F2-F1)/F2)>=e); xp=(a+b)*0.5; FP=f(xp); printf("其中为迭代次数,最后求得和如下所示:n"); printf("x*=%.5lf F*=%
9、.5lfn",xp,FP); double c,d; c=xp; d=2-c; printf("取长a=%.5lf 宽b=%.5lfn",c,d); printf("所围成的最大底面积S=%.5lfn",FP);getchar();scanf("%lf",&e);运行结果:输入迭代精度0.000001。 如图3-1所示。图3-1 精度为0.000001当精度为0.1时,所得结果如图3-2所示。图3-2 精度为0.1当精度为0.00001时,所得结果如图3-3所示。图3-3 精度为0.00001当精度为0.1时,迭代次数只有2次;所得到的值精度一般;当精度为0.00001时,迭代次数只有5次;所得到的值精度比0.1所得的高;当精度为0.000001时,迭代次数有8次;所得到的值精度较高,接近结果;精度越高,则越接近最优解。验算黄金分割法的可行性:由S=(2-X)*X=2X-X*X;求导后得到S=2-2*X,另导数等于0,求的当X等于1的时候,面积S可以取最
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中国的疆域与人口复习25张
- 人教版八年级音下册乐期末必背复习知识点
- 沪科版初中九年级物理能源开发和利用
- 高中语文散文部分第2单元捉不住的鼬鼠-时间片论美课件新人教版选修中国现代诗歌散文欣赏
- 2011-2012年LOW-E玻璃市场预测及市场调查分析报告
- 2024至2030年中国孕妇装数据监测研究报告
- 2024至2030年中国喇叭水仙花数据监测研究报告
- 2024至2030年中国卧式聚乙烯贮槽数据监测研究报告
- 2024至2030年中国分立式滤波器数据监测研究报告
- 2024至2030年中国儿童休闲运动服数据监测研究报告
- 足疗店工作人员合同
- 旅馆业设施布局与室内设计考核试卷
- 2024中国船舶报社公开招聘采编人员1人高频难、易错点500题模拟试题附带答案详解
- 室内装修投标方案(技术方案)
- 法务专员发言稿范文
- 服务营销《(第6版)》 课件全套 郭国庆 第1-14章 服务与服务营销 - 服务文化与顾客关系管理
- 高考地理一轮复习:火炉城市的“热岛效应”探究课件
- 2024-2030年天津市轨道交通行业市场发展分析及发展前景与投资研究报告
- 幼儿园工程建设施工竣工验收与交付方案
- 2024八年级物理下册 第八章 神奇的压强8.1 认识压强教案(新版)粤教沪版
- 2024年四川省南充市经济和信息化局下属事业单位南充无线电监测站考调1人高频考题难、易错点模拟试题(共500题)附带答案详解
评论
0/150
提交评论