欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    机械优化设计一维搜索实验报告(共8页).doc

    • 资源ID:27104732       资源大小:167KB        全文页数:8页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    机械优化设计一维搜索实验报告(共8页).doc

    精选优质文档-倾情为你奉上机械优化设计实验报告班级: 机械设计(2)班 姓名: 邓传淮 学号: 1 实验名称:一维搜索黄金分割法求最佳步长2 实验目的:通过上机编程,理解一维搜索黄金分割法的原理,了解计算机在优化设计中的应用。3 黄金分割法的基本原理 黄金分割法是用于一元函数f(x)在给定初始区间a,b内搜索极小点*的一种方法。它是优化计算中的经典算法,以算法简单、收敛速度均匀、效果较好而著称,是许多优化算法的基础,但它只适用于一维区间上的凸函数6,即只在单峰区间内才能进行一维寻优,其收敛效率较低。其基本原理是:依照“去劣存优”原则、对称原则、以及等比收缩原则来逐步缩小搜索区间7。具体步骤是:在区间a,b内取点:a1 ,a2 把a,b分为三段。如果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逐步缩小,直到满足预先给定的精度时,即获得一维优化问题的近似最优解。黄金分割法原理如图所示, 4 实验所编程序框图(1) 进退发确定单峰区间的计算框图 (2)黄金分割法计算框图5 程序源代码(1)进退发确定单峰区间的程序源代码#include<stdio.h>#include<math.h>#define f(x) pow(x,4)-3*pow(x,3)-5*pow(x,2)-14*x+46main() int k; double x,h,x1,x2,x3; double f1,f2,f3,f; double a,b; x1=0; h=1; x2=x1+h; f1=f(x1); f2=f(x2); if (f1>f2) h=2*h; x3=x2+h; f3=f(x3); else h=-h; x1=x2; f1=f2; x3=x2+h; f3=f(x3); printf("x1=%lf,x2=%lf0",x1,x2); do x1=x2; x2=x3; f1=f2; f2=f3; x3=x2+h; f3=f(x3); while(f3<f2); if (h>0) a=x1; b=x3; else a=x3; b=x1; printf("a=%lf,b=%lfn",a,b);(2)黄金分割法的程序源代码#include<stdio.h>#include<math.h>#define f(x)=pow(x,4)-3*pow(x,3)-5*pow(x,2)-14*x+46main() int k; double x,h,x1,x2,x3,c; double f1,f2,f3,f; double a,b; printf("input c:n"); scanf("%lf",&c); a=1; b=5; x1=b-0.618*(b-a);printf("x1=%lf ",x1); f1=f(x1);printf("f1=%lf ",f1); x2=a+0.618*(b-a);printf("x2=%lf ",x2); f2=f(x2);printf("f2=%lf ",f2); k=0;loop: if(f1<f2) b=x2;printf("b=%lf ",b); x2=x1;printf("x2=%lf ",x2); f2=f1;printf("f2=%lf ",f2); x1=a+0.382*(b-a);printf("x1=%lf ",x1); f1=f(x1);printf("f1=%lf ",f1); else a=x1;printf("a=%lf ",a); x1=x2;printf("x1=%lf ",x1); f1=f2;printf("f1=%lf ",f1); x2=a+0.618*(b-a);printf("x2=%lf ",x2); f2=f(x2);printf("f2=%lf ",f2); k=k+1; printf("k=%dn",k); if(fabs(b-a<c) x=0.5*(b+a);printf("x=%lf ",x); f=f(x);printf("f=%lf ",f); else goto loop; getchar();6 程序运行截图专心-专注-专业

    注意事项

    本文(机械优化设计一维搜索实验报告(共8页).doc)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开