《机械优化设计》课程实践报告doc.docx
《《机械优化设计》课程实践报告doc.docx》由会员分享,可在线阅读,更多相关《《机械优化设计》课程实践报告doc.docx(17页珍藏版)》请在冰豆网上搜索。
《机械优化设计》课程实践报告doc
合肥工业大学
《机械优化设计》课程实践
研究报告
班级:
机设五班
学号:
20100539
姓名:
张荣华
授课老师:
王卫荣
日期:
2013年5月8日
(课程实践与研究报告要求)
1、一维搜索程序作业;
2、单位矩阵程序作业;
3、连杆机构问题+自行选择小型机械设计问题或其他工程优化问题;
(1)分析优化对象,根据设计问题的要求,选择设计变量,确立约束条件,建立目标函数,建立优化设计的数学模型并编制问题程序;
(2)选择适当的优化方法,进行优化计算;
(3)分析计算结果,并加以说明。
4、写出课程实践心得体会,附列程序文本。
一、一位搜索程序作业:
用黄金分割法(0.618法)解决优化问题。
用0.618法求函数在〔a,b〕区间上的极小值。
用C语言编写程序如下:
(1)a=0,b=10,y=(x-2)2+3,收敛精度e=0.001,
#include
#include
voidmain()
{
floata,b,c=0.618,x[4],y[4],e;
scanf("%f,%f,%f",&a,&b,&e);
x[1]=b-c*(b-a);
x[2]=a+c*(b-a);
y[1]=(x[1]-2)*(x[1]-2)+3;
y[2]=(x[2]-2)*(x[2]-2)+3;
do{if(y[1]>=y[2])
{a=x[1];
x[1]=x[2];
y[1]=y[2];
x[2]=a+c*(b-a);
y[2]=(x[2]-2)*(x[2]-2)+3;
}
else
{b=x[2];
x[2]=x[1];
y[2]=y[1];
x[1]=b-c*(b-a);
y[1]=(x[1]-2)*(x[1]-2)+3;
}
}while(fabs((b-a)/b)>e);
x[0]=(a+b)/2;
y[0]=(x[0]-2)*(x[0]-2)+3;
printf("x*=%f\n",x[0]);
printf("y=%f\n",y[0]);
}
输入a,b,及精度e的值,输出极小点,函数极小值。
如下:
(2)、a=0,b=2π,y=cosx,收敛精度e=0.001,
#include
#include
#definef(x)cos(x)
doublecalc(double*a,double*b,doublee,int*n)
{doublex1,x2,s;
if(fabs(*b-*a)<=e)
s=f((*b+*a)/2);
else
{
x1=*b-0.618*(*b-*a);
x2=*a+0.618*(*b-*a);
if(f(x1)>f(x2))
*a=x1;
else
*b=x2;
*n=*n+1;
s=calc(a,b,e,n);
}
returns;
}
main()
{doubles,a,b,e;
intn=0;
scanf("%lf%lf%lf",&a,&b,&e);
s=calc(&a,&b,e,&n);
printf("a=%lf,b=%lf,s=%lf,n=%d\n",a,b,s,n);
}
输入a,b,及精度e的值,输出极小点,函数极小值。
如下:
2、单位矩阵程序作业
用最简捷的语言生成一个n维单位矩阵,n为输入量。
用C语言编写程序如下:
#include
voidmain(void)
{inti,j,n;
printf("%3d",n);
scanf("%3d",&n);
for(i=0;i<=n;i++)
{
for(j=0;j<=n;j++)
{
if(i==j)
printf("%3d",1);
elseprintf("%3d",0);
}
printf("\n");}
}
运行结果:
当n=6时:
当n=15时:
3、工程优化问题:
(一)连杆机构问题:
设计一曲柄连杆摇杆机构,要求曲柄l1从
从
时,摇杆
的转角最佳再现已知的运动规律:
且
=1,
=5,
为极位角,其传动角允许在
范围内变化。
解:
1、分析:
这里有两个独立参数和。
因此设计变量为
将输入角分成30等分,并用近似公式计算,可得目标函数的表达式
约束条件是:
GX
(1)=-X
(1)0
GX
(2)=-X
(2)0
GX(3)=-(X
(1)+X
(2))+6.00
GX(4)=-(X
(2)+4.0)+X
(1)0
GX(5)=-(4.0+X
(1))+X
(2)0
GX(6)=-(1.4142*X
(1)*X
(2)-X
(1)**2-X
(2)**2)-16.00
GX(7)=-(X
(1)**2+X
(2)**2+1.4142*X
(1)*X
(2))+36.00
程序文本(随机方向法)为:
procedureffx;
var
p0,q0,T,PI,QE,D,AL,BT,QI:
real;
K:
integer;
test:
string;
begin
withform1.randdobegin
NFX:
=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;
begin
PI:
=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(PI<3.1415926))
THEN
QI:
=3.1415926-AL-BT
ELSE
QI:
=3.1415926-AL+BT;
IF((K<>0)OR(K<>30))
THEN
FX:
=FX+sqr(QI-QE)*T
ELSE
FX:
=FX+sqr(QI-QE)*T/2.0;
end;
end;
end;
procedureggx;
begin
withform1.randdobegin
GX[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;
数据输入:
程序结果:
(2)其他工程优化问题
设计一个压缩圆柱螺旋弹簧,要求其质量最小。
弹簧材料为65Mn,最大工作载荷为
,最小工作载荷为0,载荷变化频率
,弹簧寿命为
h,弹簧钢丝直径d的取值范围为1-4mm,中径
的取值范围为10-30mm,工作圈数n不应小于4.5圈,弹簧旋绕比C不应小于4,弹簧一端固定,一端自由,工作温度为50℃,弹簧变形量不小于10mm。
解:
1设计变量
本题优化目标是使弹簧质量最小,圆柱螺旋弹簧的质量可以表示为:
式中,
-弹簧材料的密度,对于钢材
=
-工作圈数;
-死圈数,常取
=1.5-2.5,现取
=2;
-弹簧中径(mm);
-弹簧钢丝直径(mm);
将d,n,D2作为设计变量,即
=
2、目标函数
将已知参数代入公式,进行整理后得到问题的目标函数为
3、约束条件
根据弹簧性能和结构上的要求,可写出问题的约束条件:
(1)强度条件
(2)刚度条件
(3)稳定性条件
(4)不发生共振现象,要求
(5)弹簧旋绕比的限制
(6)对
的限制
且应取标准值,即1.0,1.2,1.6,2.0,2.5,3.0,3.5,4.0mm,等。
4、建立优化模型
由上可知,该压缩圆柱螺旋弹簧的优化设计是一个三维的约束优化问题,其数学模型为:
(计算时系数无影响可舍去)
5编写程序并运行结果
从上面的分析,以重量最轻为目标的汽门弹簧的优化设计问题共有3个设计变量,11个约束条件。
按优化方法程序的规定,编写数学模型的程序如下:
FX=0.0000192457*(X
(2)+2)*X
(1)**2*X(3)
RETURN
END
SUBROUTINEGGX(N,KG,X,GX)
DIMENSIONX(N),GX(KG)
GX
(1)=350*X
(1)**(2.86)-163*X(3)**(0.86)
GX
(2)=0.004*X
(2)*X(3)**3-10*X
(1)**4
GX(3)=3.7*X(3)*X
(1)**4-(X
(2)+1.5)*X
(1)**5-0.0044*X
(2)*X(3)**3
GX(4)=356000*X
(1)-375*X
(2)*X(3)**2
GX(5)=X(3)-4*X
(1)
GX(6)=X
(1)-1
GX(7)=4-X
(1)
GX(8)=X
(2)-4.5
GX(9)=50-X
(2)
GX(10)=X(3)-10
GX(11)=30-X(3)
RETURN
END
利用惩罚函数法(SUMT法)计算,得到的计算结果如下:
优化结果一:
优化结果二:
两种不同结果比较:
优化结果比较
d/mm
n/圈数
D2/mm
第一次优化
.176910E+01
.574960E+01
.162097E+02
第二次优化
.176910E+01
.574960E+01
.162097E+02
不同初值所得到的结果相同。
优化的结果为:
x=[1.7691,5.7496,16.2097],圆整为标准值为:
x=[1.6,6,16],经检验合格,相应弹簧的最轻质量6.3g。
4、课程实践心得体会
王老师,您好!
在您七个星期教导下,我对《机械优化设计》这门课有了一个深入的认识,从一开始的懵懵懂懂,不知道学习这门课的意义,到现在学会了运用这门课所学的方法去解决一些工程实际问题,我理解了这门课的重要性,实用性,和优美性。
机械优化设计是应用数学方法寻求机械设计的最优方案,它的目的是解决工程实际问题。
但我刚开始却有一个错误的认识,我的思想一直局限于高中阶段所学的线性规划问题,对于您所教授的一维搜索,牛顿法,共轭梯度法,惩罚函数法等一系列优化方法甚是不解,更不知道为什么要用那么多方法去寻求一个函数的最小值,但随之您给我们的作业中的一句话点醒了我,您说,“要追求系统的完整性,问题的工程性,格式的完美性,不追求:
问题的复杂性,方法的惟一性”。
我明白了,这不就是优化设计所追求的宗旨吗?
也是我们作为一名工科人才所应必备的素质。
只有拥有了各种各样不同的方法,我才能对一些实际问题分析的更透彻,也才有选择最优解的可能。
但这七个星期的学习,我所得到的不仅是专业方面的知识,更多的是端正了学习的态度,明白了学习的重要,还有时刻被您踏实敬业的工作作风,乐观向上的人生观念所折服,由此产生的敬意我将终身受用。