[教学]机械优化
设计
领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计
实例(人字架优化)
人字架的优化设计
一、问题描述
5如图1所示的人字架由两个钢管组成,其顶点受外力2F=3×10N。已知人字架跨度2B=152
35cm,钢管壁厚T=0.25cm,钢管材料的弹性模量E=2.1 MPa,材料密度p=7(8×10 kg,10
,m,许用压应力δ =420 MPa。求钢管压应力δ不超过许用压应力 δ和失稳临界应力 δyyc的条件下,人字架的高h和钢管平均直径D使钢管总质量m为最小。
二、分析
设计变量:平均直径D、高度h 三、数学建模
所设计的空心传动轴应满足以下条件:
(1) 强度约束条件 即
,,,,? ,,y,,
经整理得
1222FBh,,,,,, ,y,hTD
(2) 稳定性约束条件:
,,,,,c
1222222FBhETD,,,,,,, ,22hTD,,8B,h,
(3)取值范围:
10,D,120
200,h,1000
,32,,minfx,122.5224,10x577600,x则目标函数为: 12
42x6,10577600,2gX(),,420,0约束条件为: 1,Txx12
422xx6,10577600,259078.3272,6.25,,21g(,),,,022,Txxx577600,122
g(X),10,x,031
g(X),x,120,041
g(X),200,x,052
g(X),x,1000,062
四、优化方法、编程及结果分析 1优化方法
T,,s.t.gx,0minf(x)综合上述分析可得优化数学模型为:;;。,,X,x,xi12考察该模型,它是一个具有2个设计变量,6个约束条件的有约束非线性的单目
标最优化问题,属于小型优化设计,故采用SUMT惩罚函数内点法求解。
2方法原理
内点惩罚函数法简称内点法,这种方法将新目标函数定义于可行域内,序列迭代点在可行域内逐步逼近约束边界上的最优点。内点法只能用来求解具有不等式约束的优化问题。
对于只具有不等式约束的优化问题
minf(x)
s.t.g(x),0(j,1,2,?,m) j
转化后的惩罚函数形式为
m1(x,r)f(x)r,,, ,,g(x),1jj
m
,,,(x,r),f(x),rln,g(x),或 j,1j
式中r——惩罚因子,它是由大到小且趋近于0的数列,即012r,r,r,?,0。
mm1,,或ln,g(x)——障碍项。 ,,jg(x),,11jjj
由于内点法的迭代过程在可行域内进行,障碍项的作用是阻止迭代点越出可行域。由障碍项的函数形式可知,当迭代靠近某一约束边界时,其值趋近于0,而障碍项的值陡然增加,并趋近于无穷大,好像在可行域的边界上筑起了一道“围
r,0墙”,使迭代点始终不能越出可行域。显然,只有当惩罚因子时,才能求得在约束边界上的最优解。
3编程
首先编制两个函数文件,分别保存为目标函数和约束函数。
function f=objfun(x)
B=1520;T=2.5;P=7.8e-3;
f=2*pi*P*x(1)*T*sqrt((B/2)^2+x(2)^2); 再编写非线性约束函数文件M文件confun.m; function [c,ceq]=confun(x)
B=1520;T=2.5;P=300000;E =2.1e5;F1=420; Q=0.5*P*sqrt((B/2)^2+x(2)^2)/x(2); st=Q/(pi*T*x(1));
g(1)=st-F1;
F2=0.125*pi^2*E*(x(1)^2+T^2)/((B/2)^2+x(2)^2); g(2)=st-F2;
ceq=[];
在MATLAB命令窗口给出搜索值和线性约束,并调用优化程序:
x0=[100;700];
-1;0,1];a=[-1,0 ;1,0 ;0 ,
b=[-10;120;-200;1000];
1b=[10;200];
ub=[120;1000];
[x,fval]=fmincon(@objfun,x0,a,b,[],[],1b,ub,@confun)
4结果分析
优化程序经过11次迭代计算收敛,得到结果如下:
x=64.3083 760.0000
fval=8468.5714
T圆整后得到X=(65,760).
图1
图2
<0 验算:g(X),,253.71
<0 g(X),,782.652
<0 g(X)3
<0 g(X)4
<0 g(X)5
<0 g(X)6
五、课程实践心得体会