(课程实践报告封面模版)合肥工业大学《机械优化设计》课程实践研究报告班级:机设10-04学号:20100495姓名:李健授课老师:王卫荣日期:2012年月日目录一主要内容1、一维搜索程序作业A.λ=0.618的证明..........................................1B.编写用0.618法求函数极小值的程序..........................22、单位矩阵程序作业............................................43、其他工程优化问题..................................94连杆机构问题.....................................12二实践心得体会...............................15一:主要内容1.一维搜索程序作业:A.λ=0.618的证明(y2y1)证明:0.618法要求插入点α1、α2的位置相对于区间[a,b]两端点具有对称性,即已知a1=a2,要求α11=α22由于α1=b-λ(b-a)α2=a+λ(b-a)若使α11=α22则有:b1-λ(b1-a1)=a2+λ(b2-a2)=a1+λ2(b1-a1)因此:b1-a1=(λ2+λ)(b1-a1)(b1-a1)(λ2+λ-1)=0因为:b1=a1所以:λ2+λ-1=0则有:取方程正数解得若保留下来的区间为[α1,b],根据插入点的对称性,也能推得同样的λ的值。其0.618法的程序框图如下:B.编写用0.618法求函数极小值的程序例:(1)a=0,b=2π,f(x)=cox(x)(2)a=0,b=10,f(x)=(x-2)2+3(1)#includestdio.h#includemath.hvoidmain(void){inti;floata1,a2,aa,y1,y2,ymin,e;floata=0,b=2*3.14159,n=0.618;a1=b-n*(b-a);a2=a+n*(b-a);print(“输入精度:”);scanf(“%f”,&e);for(i=0;i=10000;i=i++){y1=cos(a1);y2=cos(a2);if(y1y2){a=a1;a1=a2;a2=a+n*(b-a);}If(y1y2)b=a2;a2=a1;a1=b-n*(b-a);}if(fabs(b-a)/be)&&(fabs(y1-y2)/y2e)){aa=(a+b)/2;ymin=cos(aa);printf(“x=%7.4f\tf(x)=%7.4f\n”),aa,ymin);break;}}}运行结果:(2)#includestdio.h#includemath.hvoidmain(void){inti;floata1,a2,aa,y1,y2,ymin,e;floata=0,b=10,n=0.618;a1=b-n*(b-a);a2=a+n*(b-a);print(“输入精度:”);scanf(“%f”,&e);for(i=0;i=10000;i=i++){y1=(a1-2)*(a1-2)+3;y2=(a2-2)*(a2-2)+3;if(y1=y2){a=a1;a1=a2;a2=a+n*(b-a);}If(y1y2)b=a2;a2=a1;a1=b-n*(b-a);}if(fabs(b-a)/be)&&(fabs(y1-y2)/y2e)){aa=(a+b)/2;ymin=(aa-2)*(aa-2)+3;printf(“x=%6.3f\tf(x)=%6.3f\n”),aa,ymin);break;}}}运行结果:2.单位矩阵程序作业编写生成单位矩阵的程序程序文本#includestdio.hvoidmain(void){inta[100][100];intN,i,j;printf(请输入所要输出矩阵的阶数(最多100阶):);scanf(%d,&N);printf(输出的矩阵阶数为%d\n,N);printf(N);/*****制作表头*****/for(i=0;iN;i++)/*****横行序号*****/printf(%3d,i+1);printf(\n);for(i=0;iN+1;i++)printf(---);/*****分割线*****/printf(\n);for(i=0;i100;i++)/*****数组赋值*****/for(j=0;j100;j++){if(i==j)a[i][j]=1;elsea[i][j]=0;}for(i=0;iN;i++)/*****输出所需数组*****/{printf(%2d:,i+1);/*****纵列序号*****/for(j=0;jN;j++){printf(%3d,a[i][j]);}printf(\n);}}结果显示从键盘输入9,显示9阶单位矩阵,结果如下3.其他工程优化问题有一箱形盖板,已知长度L=600mm,宽度b=60mm,厚度ts=0.5mm承受最大单位载荷q=60N/cm,设箱形盖板的材料为铝合金,其弹性模量MPaE107,泊松比3.0,许用弯曲应力MPa70,许用剪应力MPa45,要求在满足强度、刚度和稳定性条件下,设计重量最轻的结构方案。数学模型的建立:1)设计变量:取结构的翼板厚度t和高度h为设计变量,即xxhtx2)目标函数:取结构的总重量最轻为目标函数,计算公式为3)约束条件:211205.02602)(xxhtxf0)(0)(01321115.1)(014571)(014571][)(01411][)(2615221max4231max321max22max1xxgxxgxxfxgxxxgxxxgxxgc4)、根据目标函数和约束条件在Delphi程序坏境下编制程序如下:5)、利用Delphi程序解决工程优化问题使用复合形发寻找最优点在Delphi程序下输入所需参数值:6)、根据目标函数和约束条件以及输入的参数值使用Delphi程序进行计算找到工程优化问题的优化极值:4连杆机构问题描述图3-1机构简图设计一曲柄连杆摇杆机构,要求曲柄l1从1l从900m时,摇杆3l的转角最佳再现已知的运动规律:200)(32E且1l=1,4l=5,0为极位角,其传动角允许在13545范围内变化。3.12数学模型的建立设计变量:这里有两个独立参数2l和3l。因此设计变量为tTllxxx3221目标函数:将输入角分成30等分,并用近似公式计算,可得目标函数的表达式12301iiEiiixf约束条件:GX(1)=-X(1)0GX(2)=-X(2)0GX(3)=-(X(1)+X(2))+6.00GX(4)=-(X(2)+4.0)+X(1)0GX(5)=-(4.0+X(1))+X(2)0GX(6)=-(1.4142*X(1)*X(2)-X(1)**2-X(2)**2)-16.00GX(7)=-(X(1)**2+X(2)**2+1.4142*X(1)*X(2))+36.003.13程序编制procedureffx;varp0,q0,T,PI,QE,D,AL,BT,QI:real;K:integer;test:string;beginwithform1.randdobeginNFX:=NFX+1;p0:=arccos((sqr(1.0+X[1])-sqr(X[2])+25.0)/(10.0*(1.0+X[1])));q0:=arccos((sqr(1.0+X[1])-sqr(X[2])-25.0)/(10.0*X[2]));T:=90.0/30.0*(3.1415926/180.0);FX:=0.0;ForK:=0To30do;beginPI:=p0+K*T;QE:=Q0+2.0*sqr(PI-p0)*2/(3.0*3.1415926);D:=SQRT(26.0-10.0*COS(pI));AL:=ArcCos((D*D+X[2]*X[2]-X[1]*X[1])/(2.0*D*X[2]));BT:=arccos((D*D+24.0)/(10.0*D));IF((PI=0.0)AND(PI3.1415926))THENQI:=3.1415926-AL-BTELSEQI:=3.1415926-AL+BT;IF((K0)OR(K30))THENFX:=FX+sqr(QI-QE)*TELSEFX:=FX+sqr(QI-QE)*T/2.0;end;end;end;procedureggx;beginwithform1.randdobeginGX[1]:=-X[1];GX[2]:=-X[2];GX[3]:=-(X[1]+X[2])+6.0;GX[4]:=-(X[2]+4.0)+X[1];GX[5]:=-(X[1]+4.0)+X[2];GX[6]:=-(1.4142*X[1]*X[2]-X[1]*X[1]-X[2]*X[2])-16.0;GX[7]:=-(X[1]*X[1]+X[2]*X[2]+1.4142*X[1]*X[2])+36.0;end;end;3.14使用Delphi程序验证连杆机构问题方法:随机方向法。Delphi程序的使用:3.15验证结果显示二:实践心得体会总的看来,机械优化设计是适应生产现代化要求发展起来的,是一门崭新的学科。它是在现代机械设计理论的基础上提出的一种更科学的设计方法,它可使机械产品的设计质量达到更高的要求。因此,在加强现代机械设计理论研究的同时,还要进一步加强最优设计数学模型的研究,以便在近代数学、力学和物理学的新成就基础上,使其更能反映客观实际。同时机械优化设计的研究还必须与工程实践、数学力学理论、计算技术和电子计算机的应用等紧密联系起来,才能具有更广阔的发展前景。作为21世纪的大学生,要使自己适应社会需求,首先在做任何事之前都应该有正确的态度看待问题,把这些想法作为促使自己进步的动力,再去学习课本知识,效果应该很不一样,有了想法就付诸行动,随着对课本内容的学习跟老师的讲解,发现并不是像自己在学期初想的那样困难,特别是在老师介绍了一些与机械优化设计相关的计算机语言和计算机软件后,真正体会到科学优化设计的强大跟简洁明了,与传统优化设计方法相比较,大大提高了设计效率和质量。作为机械专业的一名学生,本课程,掌握最优化问题的基本解决方法,从多个可能的方案中选出最合适的、能实现预定最优目标的最优方案有着很现实的意义,为今后的工程实际提供了良好的理论储备。在学完课程之后,反思自己在学习过程中的得失,深深体会到,不论在人生的哪个阶段,都要对自己负责,做任何事都要耐心,细致,“千里之行,始于足下”,学会在物欲横流的社会大潮中,坚持踏踏实实走好人生的每一步。