数学建模零件参数的优化设计_第1页
数学建模零件参数的优化设计_第2页
数学建模零件参数的优化设计_第3页
数学建模零件参数的优化设计_第4页
数学建模零件参数的优化设计_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

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

文档简介

1、数学建模-零件参数的优化设计(共19页)-本页仅作为文档封面,使用时请直接删除即可-内页可以根据需求调整合适字体及大小-零件参数的优化设计摘要本文建立了一个非线性多变量优化模型。已知粒子分离器的参数y由零件参数Xi(i1,27)决定,参数Xi的容差等级决定了产品的成本。总费用就包括y偏离yo造成的损失和零件成本。问题是要寻找零件的标定值和容差等级的最佳搭配,使得批量生产中总费用最小。我们将问题的解决分成了两个步骤:1.预先给定容差等级组合,在确定容差等级的情况下,寻找最佳标定值。2.采用穷举法遍历所有容差等级组合,寻找最佳组合,使得在某个标定值下,总费用最小。在第二步中,由于容差等级组合固定为

2、108种,所以只要在第一步的基础上,遍历所有容差等级组合即可。但是,这就要求,在第一步的求解中,需要一个最佳的模型使得求解效率尽可能的要高,只有这样才能尽量节省计算时间。经过对模型以及matlab代码的综合优化,最终程序运行时间仅为秒。最终计算出的各个零件的标定值为:Xi=,等级为:dB,B,B,C,C,B,B一台粒子分离器的总费用为:元与原结果相比较,总费用由(元/个)降低到(元/个),降幅为%,结果是令人满意的。为了检验结果的正确性,我们用计算机产生随机数的方式对模型的最优解进行模拟检验,模拟结果与模型求解的结果基本吻合。最后,我们还对模型进行了误差分析,给出了改进方向,使得模型更容易推广

3、。关键字:零件参数非线性规划期望方差一、问题重述一件产品由若干零件组装而成,标志产品性能的某个参数取决于这些零件的参数。零件参数包括标定值和容差两部分。进行成批生产时,标定值表示一批零件该参数的平均值,容差则给出了参数偏离其标定值的容许范围。若将零件参数视为随机变量,则标定值代表期望值,在生产部门无特殊要求时,容差通常规定为均方差的3倍。进行零件参数设计,就是要确定其标定值和容差。这时要考虑两方面因素:一是当各零件组装成产品时,如果产品参数偏离预先设定的目标值,就会造成质量损失,偏离越大,损失越大;二是零件容差的大小决定了其制造成本,容差设计得越小,成本越高。试通过如下的具体问题给出一般的零件

4、参数设计方法。粒子分离器某参数(记作y)由7个零件的参数(记作X1,X2,,X7)决定,经验公式为:Y 174.42x1X5X2Xi10.56 321.1612.62 1c ccX4X40.36 X2X2X6X70.85X3y的目标值(记作yo)为。当y偏离yo+时,产品为次品,质量损失为1,000元;当y偏离y0+时,产品为废品,损失为9,000元。零件参数的标定值有一定的容许范围;容差分为A、B、C三个等级,用与标定值的相对值表示,A等为+1%,B等为+5%,C等为+10%o7个零件参数标定值的容许范围,及不同容差等级零件的成本(元)如下表(符号/表示无此等级零件):标定值容许范围C等B等

5、A等X1P,r/25/X2,2050/X3r,2050200X4,50100500X5,50/X612,20一1025100X7,/25100现进行成批生产,每批产量1,000个。在原设计中,7个零件参数的标定值为:X1=,X2=,x3=,X4=,X5=,X6=16,X7=;容差均取最便宜的等级。请你综合考虑y偏离y0造成的损失和零件成本,重新设计零件参数(包括标定值和容差),并与原设计比较,总费用降低了多少?二、模型假设1、将各零件参数视为随机变量,且各自服从正态分布;2、假设组成离子分离器的各零件互不影响,即各零件参数互相独立;3、假设小概率事件不可能发生,即认为各零件参数只可能出现在容许

6、范围I4、在大批量生产过程中,整批零件都处于同一等级,。本题可认为1000各零件都为A等、B等或C等;5、生产过程中出质量损失外无其他形式的损失;6、在质量损失计算过程中,认为所有函数都是连续可导的。三、符号说明Xi:第i类零件参数的标定值(i=1,27);Xi:第i类零件参数的实际值相对目标值的偏差(i=1,27);第i类零件参数的容差(i=1,2,7);i:第i类零件参数的方差(i=1,2,7);ai,bi:标定值xi的上、下限;V:离子分离器某参数的实际值;y:离子分离器该参数的目标值;V:离子分离器某参数的均值;y:离子分离器某参数的实际值y相对平均值y的偏差;y:离子分离器某参数的方

7、差;P:一批产品中正品的概率;F2:一批产品中次品的概率;鸟:一批产品中废品的概率;W:一批产品的总费用(包括损失和成本费);Cj:第i类零件对应容差等级为j的成本(j=A,B,C)单位:元/个四、问题分析该问题是一定约束条件下的最优化问题,经分析题意,拟建立以总费用为目标函数的非线性规划模型。总费用由损失费和成本费两部分组成,零件成本由简单的线性代数式决定,而损失费涉及概率分布的非线性函数。要求出损失费,就必须知道一批产品的次品率和废品率,结合各类零件都服从NJ,;),可假设y也服从正态分布,联想正态分布的性质一一当各变量均服从正态分布时,其线性组合也服从正态分布。题中所给经验公式为一复杂的

8、非线性的公式,无法直接对其分析处理,所以需借助泰勒公式将其展开并作相应处理使其线性化。而对于零件成本,需先确定容差等级才能求得成本费。由容差等级和各类零件的标定值为便可知道给类零件的容差。最后,便将问题转化为为、h关于总目标函数的最优解的问题上。在进行零件参数设计时,如果零件设计不妥,造成产品参数偏离预先设定值,就会造成质量损失,且偏差越大,损失也越大;零件容差的大小决定了其制造成本,容差设计得越小(即精度越高)零件成本越高。合理的设计方案应既省费用又能满足产品的预先设定值,设计方向应该如下:(1)设计的零件参数,要保证由零件组装成的产品参数符合该产品的预先设定值,即使有偏离也应是在满足设计最

9、优下的容许范围。(2)零件参数(包括标定值和容差等级)的设计应使总费用最小为优。此外分析零件的成本及产品的质量损失不难发现,质量损失对费用的影响远大于零件成本对费用的影响,因而设计零件参数时,主要考虑提高产品质量来达到减少费用的目的。五、模型建立为了确定原设计中标定值(的期望值)及已给的容差对产品性能参数影响而导致的总损失W,即确定偏离目标值所造成的损失和零件成本,先列出总损失的数学模型表达如下:7W1000(Cj1000P29000P3)i1当然,为了确定总损失W,必须知道P、P2、P3(即正品、次品及废品的概率)。为此,将经验公式用泰勒公式在Xx(i1,27)处展开并略去二次以上高次项后来

10、研究y的概率分布,设f(x)y,则7ff(X)yf(Xi)xi1Xi将标定值Xi(i1,27)带入经验公式即得yf(x)所以i1Xi由于在加工零件时,在标定值知道的情况下,加工误差服从正态分布,即,一2、XN(0,i)且为相互独立,由正态分布性质可知yN(Qy2)2yN(y,y)由误差传递公式得fXii)27 / f 2 i 2(一x)(一)i 1 Xi Xi(1)由于容差为均方差的3倍,容差与标定值的比值为容差等级,则i0.010.050.1Xi3,3,3y的分布密度函数为2yy(y)y偏离y0.1的概率,即次品的概率为1.41.8P212(y)d(y)16(y)d(y)(2)1.21.6y

11、偏离y0.3的概率,即废品的概率为1.2P3(y)d(y)18(y)d(y)I.8由于y偏离y。越远,损失越大,所以在y固定时,调整y使之等于目标值y。可降低损失。取yyy0即yyO,则P2(以)P3(堡)yy为标准正态分布函数。综合考虑y偏离/造成的损失和零件成本,设计最优零件参数的模型建立如下:目标函数7minW1000(Cj1000P29000P3)i1b;Xai(i1,27)y。”为)(i1,27)六、模型求解初略分析对于原给定的设计方案,利用matlab编程计算(见附录),计算结果如下:正品率次品率废品率成本费损失费总费用200由于按原设计方案设计的产品正品率过低,损失费过高,显然设

12、计不够合理。进一步分析发现,参数均值Q=偏离目标值y=太远,致使损失过大。尽管原设计方案保证了正本最低,但由于零件参数的精度过低,导致正品率也过低。所以我们应综合考虑成本费和损失费。模型的实现过程:9本模型通过matlab进行求解,我们通过理论模型求解和随机模拟的求解过程如下:在给定容差等级的情况下,利用matlab中求解非线性规划的函数fmincon,通过多次迭代求解,最终求得一组最优解。最初,我们设定的fmincon函数的目标函数就是总费用,约束条件为各个标定值的容许范围,以及各零件标定值带入产品参数表达式应为外,即。然而,在迭代过程中我们发现,求解过程十分慢,在给定容差等级的确定的情况下

13、,计算最优标定值需要将近400秒,如果在此基础上对108种容错等级进行穷举查找最优组合,将需要大概12小时。显然这是不合理的。因此,我们在仔细对matlab实现代码研究发现,求解过程之所以慢,是因为代码中存在多次调用求偏导和积分的函数,在fmincon的多次迭代中,耗费大量时间。所以,为了提高求解速度,我们首先利用matlab中diff函数对产品参数中的各个表达式进行求偏导,然后得到多个带参表达式,利用int函数对y的概率密度函数进行积分,分别得到出现次品和废品概率的表达式,然后将这些表达式写进程序里,这样在求解过程中就不需要在每一次迭代中都要求偏导和积分了,修改后的程序运行时间大大减少。程序

14、流程图初始化最小费用Wmin为JNF确定一组容差等级利用fmincon寻还有容差N算法等级未计算结束WWmin丫N程序见附录,求解结果如下:零件种类1234567零件参数容差等级BBBCCBB正品率次品率废品率成本费损失费总费用275运行总时间:离子分离器参数均值y=离子分离器参数方差y=模型检验对设计方案进行动态模拟,由于每种零件参数均服从正态分布,用正态分布随机数发生器在每种零件参数允许范围内产生1000个随机数参与真实值Xi的计算随机模拟N次后结果如下:正品率次品率废品率成本费损失费总费用275143418根据最优解的亍=,丫=画出y的概率分布图,再对x随机取样画出y的概率分布图(见图)

15、,由图可知:两组数据所画概率分布图的拟合度相当高,进一步确保了模型的正确性。对照图6 5 4 3 2 10 躯国科建SA图概率分布图对比图通过以上数据,与原设计方案所彳#结果相比较,总费用由(元/个)降低到(元/个),降幅为%结果是令人满意的。七、误差分析1、 在建模过程中,通过泰勒公式将yf(X)展开并略去二次及以上项使线性化,不可避免地产生了截断误差,所以展开后的式子只是原经验公式的近似关系式。但在一般情况下,线性化和求总和在实用上具有足够的精度,所以由于函数线性化而略去的高次项可以忽略不计。在函数关系式较复杂的情况下,将其线性化更具有明显的优势。2、本模型忽略了小概率事件发生的可能,认为

16、零件的参数只可能出现在允范围内,即xi3i,xi3i。现实中,小概率事件仍有发生的可能性,但在大批量生产中,小概率事件的发生对最终结果没有影响,所以可以忽略。3、该模型对于质量损失的计算,将所有函数都看作连续函数,而这对于每个零件参数而言是不可能的,所以其中也会产生误差。八、模型的评价及推广1 .优点(1)建模过程中,采用泰勒公式将经验公式简化,并假设各零件参数都服从满足大量数据的正态分布,使得整个模型的建立及求解得到大大简化。(2)本模型运用概率统计与优化知识对零件参数进行优化设计。通过建立一个反映设计要求的数学模型,利用MATLAB软件,经过编程来实现对设计方案参数的调整,将总费用由(元/

17、个)降低到(元/个),降幅达到%,结果还是令人十分满意的。3)本模型在程序运算的过程中,做了适当处理,将每次循环本该由计算机求偏导和积分的提前人为处理,将求偏导和积分后的算式写入程序中,这样大大节约了运算时间,将运行时间由几个小时缩短为。2 .缺点(1)本模型在模型的求解过程中,对一些可接受范围内的误差直接进行了忽略,因而对于结果的精确性还是会有一定的影响。(2)本模型是建立在一些假设中的,所有实用性受到了限制,在实际生产中,如果可以把更多的一些因素考虑进去应该会更好。在已假定的条件下,本模型的优化结果是好的。3 推广此模型有较强的应用价值。工程中往往因为某个零件的选取不当,而影响产品的参数,

18、使可靠性降低,造成了极大的经济损失。所以需综合考虑零件成本和质量,以求获得最大的经济效益。本模型具有广泛的适用性,很容易加以推广。模型中的设计变量可以推广到个的情形,即设计变量,其中设计空间是一个维空间。本模不仅适用于粒子分离器参数的设计,而且也可用于类似的机构、零部件、工艺设备等的基本参数的设计问题;容差等级同样可推广应用。参考文献【1】韩之俊,姚平中,概率与统计,国防工业出版社,1985【2】陈宝林,最优化理论与算法,清华大学出版社,1989【3】裘宗燕,数学软件系统的应用及程序设计,北京大学出版社,1994【4】许波,Matlab工程数学应用,清华大学出版社,2001附录:matlab代

19、码:functionf=result%穷举108种容错等级组合求解全局最优解fval=inf;tic%Bmin=2333332;%XminB(1)=2;B(5)=3;fori=2:3B(2)=i;forj=1:3B(3)=j;fort=1:3B(4)=t;forg=1:3B(6)=g;form=1:2B(7)=m;fv,x=getcost(B);iffvfvalXmin=x;Bmin=B;fval=fv;end;end;end;end;end;end;f=fval,Xmin,Bmin,p=getP(Xmin,Bmin)tocsimulation(Xmin,Bmin);%用随机法和计算的结果进行

20、模拟比较functionf=simulation(MU,B)%用随机法和计算的结果进行模拟比较fori=1:10000y(i)=Yfun(getparaX(MU,B);end;f,xi=ksdensity(y);plot(xi,f);%画经验概率密度曲线holdon;y0=Yfun(MU);fc=getfcY(MU,B);%x=normrnd(y0,fc,1,10000);f1,xj=ksdensity(x);plot(xj,f1,r);%x0=min(y):max(y);y=(2*pi)A*fc)A(-1)*exp(-(x0-y0).A2/2/fcA2);plot(x0,y,r);%x=mi

21、n(y):max(y);yg=gaussmf(x,fc,y0);plot(x,yg,r);%title(对照图);gtext(注:蓝线为对x随机取样求得的y分布);gtext(红线为根据模型计算出的y分布);xlabel(y);ylabel(y的概率密度);holdoff;functionf,x=getcost(B)%在给定容差等级的情况下求最优的标定值,使得Y勺均彳t为y0的情况下,方差最小MU=16;燔定初始的标定值options=optimset(LargeScale,off,Display,off);%,Tolx,;x,fval=fmincon(getfcY,MU,口口口口口口myco

22、n,options,B);x,B,f=cost(x,B)functionc,ceq=mycon(MU,B)%求最优标定值时的约束条件%防不等式约束%ceg等式约束c(1)=MU(1);c(2)=(1);c(3)=MU(2);c(4)=(2);c(5)=MU(3);c(6)=(3);c(7)=MU(4);c(8)=(4);c(9)=MU(5);c(10)=(5);c(11)=MU(6)-20;c(12)=12-MU(6);c(13)=MU(7);c(14)=(7);ceq(1)=Yfun(MU);functionf=cost(MU,B)%当标定值为MU容差等级为B时,求费用f=25;p=getP

23、(MU,B);%求正品、次品、废品的概率if(B(2)=2)f=f+50;elsef=f+20;end;switch(B(3)case1f=f+200;case2f=f+50;case3f=f+20;end;switch(B(4)case1f=f+500;case2f=f+100;case3f=f+50;end;f=f+50;switch(B(6)case1f=f+100;case2f=f+25;case3f=f+10;end;if(B(7)=1)f=f+100;elsef=f+25;end;f=f+p(2)*1000+p(3)*9000;functionf=getfcY(MU,B)%寸于所给

24、的标定值和容差求丫的方差f=0;B=int32(B);fori=1:7ifB(i)=1sigma(i)=MU(i)*3;end;ifB(i)=2sigma(i)=MU(i)*3;end;ifB(i)=3sigma(i)=MU(i)*3;end;end;x1=MU(1);x2=MU(2);x3=MU(3);x4=MU(4);x5=MU(5);x6=MU(6);x7=MU(7);渔Y对各变量的偏导的评分与对应的方差乘积之和f=(pd1(x1,x2,x3,x4,x5,x6,x7)*sigma(1)A2;f=f+(pd2(x1,x2,x3,x4,x5,x6,x7)*sigma(2)2;f=f+(pd3

25、(x1,x2,x3,x4,x5,x6,x7)*sigma(3)2;f=f+(pd4(x1,x2,x3,x4,x5,x6,x7)*sigma(4)A2;f=f+(pd5(x1,x2,x3,x4,x5,x6,x7)*sigma(5)2;f=f+(pd6(x1,x2,x3,x4,x5,x6,x7)*sigma(6)A2;f=f+(pd7(x1,x2,x3,x4,x5,x6,x7)*sigma(7)F2;f=abs(fA;functionf=pd1(x1,x2,x3,x4,x5,x6,x7)%Ytx1的偏导f=8721/50/x5*(x3/(x2-x1)A(17/20)*(1-131/50*(1-9/

26、25/.(x4/x2)A(14/25)A(3/2)*(x4/x2)A(29/25)/x6/x7)A(1/2)+.148257/1000*x1/x5/(x3/(x2-x1)A(3/20)*(1-131/50*(1-9/25/(x4/x2)A(14/25)A(3/2)*(x4/x2)A(29/25)/x6/x7)A(1/2)*x3/(x2-x1)A2;functionf=pd2(x1,x2,x3,x4,x5,x6,x7)%Ytx2的偏导f=-148257/1000*x1/x5/(x3/(x2-x1)A.(3/20)*(1-131/50*(1-9/25/(x4/x2)A(14/25)A(.3/2)*

27、(x4/x2)A(29/25)/x6/x7)A(1/2)*x3/(x2-x1)A.2+8721/100*x1/x5*(x3/(x2-x1)A(17/20)/(1-131/50*(1-9/25/(x4/x2)A(14/25)A(3/2)*(x4/x2F(29/25)/x6/x7)A(1/2)*(24759/31250*(1-9/25/(x4/x2)A(14/25)A(1/2)/(x4/x2)A(2/5)*x4/x2A2+3799/1250*(1-9/25/(x4/x2)A(14/25)A(3/2)*(x4/x2)A(4/25)*x4/x2A2)/x6/x7;functionf=pd3(x1,x2

28、,x3,x4,x5,x6,x7)%Ytx3的偏导f=148257/1000*x1/x5/(x3/(x2-x1)A(3/20)*(1-131/50*.(1-9/25/(x4/x2)A(14/25)A(3/2)*(x4/x2)A(29/25)/x6/x7)A(1/2)/(x2-x1);functionf=pd4(x1,x2,x3,x4,x5,x6,x7)%Ytx4的偏导f=8721/100*x1/x5*(x3/(x2-x1)A(17/20)/(1-131/50*(1-9/25/(x4/x2)A(14/25)A(3/2)*(x4/x2)A(29/25)/x6/x7)A(1/2)*(-24759/31

29、250*(1-9/25/(x4/x2)A(14/25)A(1/2)/(x4/x2)A(2/5)/x2-3799/1250*(1-9/25/(x4/x2)A(14/25)A(3/2)*(x4/x2)A(4/25)/x2)/x6/x7;functionf=pd5(x1,x2,x3,x4,x5,x6,x7)%Ytx5的偏导f=-8721/50*x1/x5A2*(x3/(x2-x1)A(17/20)*(1-131/50*(1-9/25/(x4/x2)A(14/25)A(3/2)*(x4/x2)A(29/25)/x6/x7)A(1/2);functionf=pd6(x1,x2,x3,x4,x5,x6,x

30、7)%Ytx6的偏导f=-8721/100*x1/x5*(x3/(x2-x1)A(17/20)/(1-131/50*(1-9/25/(x4/x2)A(14/25)A(3/2)*(x4/x2)A(29/25)/x6/x7)A(1/2)*(1-131/50*(1-9/25/(x4/x2)A(14/25)A(3/2)*(x4/x2)A(29/25)/x6A2/x7;functionf=pd7(x1,x2,x3,x4,x5,x6,x7)%Ytx7的偏导f=-8721/100*x1/x5*(x3/(x2-x1)A(17/20)/(1-131/50*(1-9/25/.(x4/x2)A(14/25)A(3/

31、2)*(x4/x2)A(29/25)/x6/x7)A(1/2)*.(1-131/50*(1-9/25/(x4/x2)A(14/25)A(3/2)*(x4/x2)A(29/25)/x6/x7A2;functionf=getP(MU,B)%当标定值为MU容差等级为B时,求正品、次品、废品的概率yb=Yfun(MU);fc=getfcY(MU,B);%symsx0ua0;yy=subs(2*pi)A*a0)A(-i)*exp(-(x0-u)A2/2/a0A2),u,yb);%yy=subs(yy,a0,fc);%y0=;f(2)=jf1(yb,fc);f(3)=jf2(yb,fc);%甲)=0;%f(2)=(cdf(normal,y0+,yb,fc)-cdf(normal,y0+,yb,fc)*2;%f(3)=2*cdf(normal,yb,fc);f(1)=1-f(2)-f(3);f=double(f);functionf=jf1(u,a0)%S过积分求出现次品的概率f=-624/*.erf(

温馨提示

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

评论

0/150

提交评论