机械优化设计报告两杆支架优化设计最轻的支架尺寸_第1页
机械优化设计报告两杆支架优化设计最轻的支架尺寸_第2页
机械优化设计报告两杆支架优化设计最轻的支架尺寸_第3页
机械优化设计报告两杆支架优化设计最轻的支架尺寸_第4页
机械优化设计报告两杆支架优化设计最轻的支架尺寸_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、机械优化设计课程作业姓名:陈胜利学号: 200910301304 指 导 教 师:伞红军学院:机电工程学院专 业 班 级:机自 093 完 成 日 期: 2011 年 12 月 31 日一、题目:二、分析1建立数学模型设计变量:钢管直径 d(单位 m) 目标函数:222mhbdt约束条件:) 圆管杆件中的压应力应小于或等于y,即ytdhhbf22于是得ytdhhbfdg-)(221) 圆管杆件中的压应力应小于或等于压杆稳定的临界应力c,由欧拉公式得钢管的压杆稳度应力c)8()(2222222hbtdealeic式中 a 圆管的截面积; l圆管的长度。于是得0)(2cdg) 设计变量的值不得小于

2、或等于0 于是得0d)(3dg 4) 惩罚函数法构造函数)(1)(1)(1)()(321dgdgdgrdmdf 2 利用 matlab 进行函数优化1) 优化方法:先利用惩罚函数法将约束优化问题转化成无约束优化问题,然后在不同的惩罚因子r 的条件下,将搜索区间分段(5:10:100 从 5到 100,步长为 10) ,利用区间消去法确定单谷区间,在单谷区间上利用黄金分割法搜索出在相应r 值下的最优点。通过逐渐缩小 r 值确定目标函数的最优点。2)matlab 函数为增加函数的可移植性,函数分为7 个部分,目标函数,稳定性条件函数,强度条件函数,利用惩罚函数法构造出来的函数,利用区间消去法寻找区

3、间的函数, 黄金分割法的函数, 用于编写惩罚函数优化过程的主函数。具体函数如下:目标函数function mass=aim(d) % 目标函数% 输入为钢的直径 d 输出为函数值midu=8300; t=2.5e-3; b=0.76; h=b; mass=2*pi*midu*t*d*sqrt(b)2+(h)2); %fprintf(%f直径的质量为 %f,d,mass) 稳定性条件函数function result2=wendingxing(d) % 稳定性约束函数% 输入直径 d % 输出计算函数值f=1.5e+5; t=2.5e-3; b=0.76; h=b; te=1e+11; %te弹

4、性模量result2=(f*sqrt(b)2+(h)2)/(3.142*t*d*h)-(3.1422*te*(t)2+(d)2)/(8*(b)2+(h)2); %fprintf(%f稳定性结果为 %f,d,result2) 强度条件函数function re=qiangdu(d) % 强度约束函数% 输入直径 d % 输出计算的函数值大于零不可行f=1.5e+5; t=2.5e-3; b=0.76; h=b; yingli=7e+8; re=(f*(sqrt(b)2+(h)2)/(3.142*t*d*h)-yingli; %fprintf(%f强度条件结果为 %f,d,re) 利用惩罚函数法构

5、造出来的函数% 惩罚函数法的构造函数% 输入变量自变量 x(即直径 d) ,惩罚因子% 输出变量构造函数值% 制作者 陈胜利function result=gouzao(x) global r0; result=aim(x)-(r0*(1/qiangdu(x)+1/wendingxing(x)-1/x) 利用区间消去法寻找区间的函数% 区间消去法确定搜索区间% 全局变量 flag用来判断区间是否对超出边界% %alpha0是初始点function a,b=qjxq(alpha0) global flag1; step=1; % 初始步长a1=alpha0; a2=a1+step; % 判断边界

6、是否已经超出0.1 到 100 的范围内if (a10.01)&(a2f2 while (1) step=2*step; aq=a1;%该区间第一个值 a1=a2; a2=a2+step; %第二次边界的判断 if (a1105) flag=1; break; end f1=f2;f2=gouzao(a2); if f1f2 a1=aq; break; end end else % 区间消去另一种情况 step=-step/4; while (1) al=a2;%al为区间最后一个值 a2=a1; a1=a1+step; if (a1105) flag=1; break; end f2

7、=f1; f1=gouzao(a1); if f1f2 a2=al; break; end end end a=a1; b=a2; flag=0; else %第一次边界判断不符合时的结果 flag=1; end% 第一次边界的判断结束黄金分割法的函数% 黄金分割法% 传入值为函数区间和 收敛精度% 传出值为函数最小值的横坐标% function xmin=goldencut(a1,b1,e) %xmin=a1;% 此处 xmin 为所求极小点 ;%这里 k 是迭代次数a(1)=a1;b(1)=b1; k=1; while b(k)-a(k)e x=a(k),b(k); y(k)=a(k)+0

8、.382*(b(k)-a(k); u(k)=a(k)+0.618*(b(k)-a(k); if f(y(k)f(u(k) a(k+1)=y(k); b(k+1)=b(k); y(k+1)=u(k); u(k+1)=a(k+1)+0.618*(b(k+1)-a(k+1); else a(k+1)=a(k); b(k+1)=u(k); u(k+1)=y(k); y(k+1)=a(k+1)+0.382*(b(k+1)-a(k+1); end k=k+1; end xmin=(a(k)+b(k)./2; k=k-1 %k-1为迭代次数function f=f(x) f=gouzao(x); % 将函数

9、值传入构造函数用于编写惩罚函数优化过程的主函数% 主函数% 初始化 通过 input 函数输入输出为最优点 xbest ybest %shych=input( 输入约束容差 ) ;global flag1;%判断区间是否超出极限 0 为没有, 1 为超出界限global r0; flag1=0; shljd=input(输入收敛精度 ); x0=input(输入初始点 ); r0=input(输入 r0); c=input(输入 c); k=0; xl=100; % 求构造函数的无约束极值输入为 x0 r0 while(1) % 局部最优解 xlast ,ylast % 寻找局部最优解 xla

10、st=5; ylast=gouzao(5); for m=5:10:100 if flag1=0 a1,b1=qjxq(m); xbest=goldencut(a1,b1,0.1); ybest=gouzao(xbest); %判断大小找局部最优点 if ybestylast ylast=ybest; xlast=xbest; end else %标志位不为 0 时直接进行下一次循环 continue; end %if结束 end%for循环结束 xbest2=xlast; ybest2=ylast; % 判别迭代是否收敛%abs()求模 xl是上一次 r 值对应的最优点的的直径,xbest2 ybest2 是这次的最优点if abs(xbest2-xl)=shljd %xl的初值在开始时已经给出为5 fprintf(最优点为 (%f,%f),xbest2,ybest2); break; else k=k+1; r0=c*r0; xl=xbest2; x0=xbest2; end %if 结束end %while 循环体结束% 三、优化结果及评价1 输入的初始条件:输入的收敛精度为0.05,输入的初始点为1,输入的 r0 为 1,输入的 c 为 0.5 时2 优化结果:最优点为 d=0.047740m 即 47.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论