数学建模零件参数的优化设计说明.docx
- 文档编号:4529618
- 上传时间:2022-12-01
- 格式:DOCX
- 页数:18
- 大小:93.62KB
数学建模零件参数的优化设计说明.docx
《数学建模零件参数的优化设计说明.docx》由会员分享,可在线阅读,更多相关《数学建模零件参数的优化设计说明.docx(18页珍藏版)》请在冰豆网上搜索。
数学建模零件参数的优化设计说明
零件参数的优化设计
摘要
本文建立了一个非线性多变量优化模型。
已知粒子分离器的参数y由零件参数兀(,=1,2…7)决定,参数儿的容差等级决定了产品的成本。
总费用就包括y偏离y。
造成的损失和零件成本。
问题是要寻找零件的标定值和容差等级的最佳搭配,使得批量生产中总费用最小。
我们将问题的解决分成了两个步骤:
1.预先给定容差等级组合,在确定容差等级的情况下,寻找最佳标定值。
2.采用穷举法遍历所有容差等级组合,寻找最佳组合,使得在某个标定值下,总费用最小。
在第二步中,由于容差等级组合固定为108种,所以只要在第一步的基础上,遍历所有容差等级组合即可。
但是,这就要求,在第一步的求解中,需要一个最佳的模型使得求解效率尽可能的要高,只有这样才能尽量节省计算时间。
经过对模型以及matlab代码的综合优化»最终程序运行时间仅为3.995秒。
最终计算出的各个零件的标定值为:
^=(0.0750,0.3750,0.1250,0.1200,1.2919,15.9904,0.5625},
等级为:
d=B,B,B,C,C,B,B
一台粒子分离器的总费用为:
421.7878元
与原结果相比鮫,总费用由3074.8(元/个)降低到421.7878(元/个),降幅为86.28%,结果是令人满意的。
为了检验结果的正确性,我们用计算机产生随机数的方式对模型的最优解进行模拟检验,模拟结果与模型求解的结果基本吻合。
最后,我们还对模型进行了误差分析,给出了改进方向,使得模型更容易推广。
关键字:
零件参数非线性规划期望方差
一、问题重述
一件产品由若干零件组装而成,标志产品性能的某个参数取决于这些零件的参数。
零件参数包括标定值和容差两部分。
进行成批生产时,标定值表示一批零件该参数的平均值,容差则给出了参数偏离其标定值的容许围。
若将零件参数视为随机变量,则标定值代表期望值,在生产部门无特殊要求时,容差通常规定为均方差的3倍。
进行零件参数设计,就是要确定其标定值和容差。
这时要考虑两方面因素:
一是当各零件组装成产品时,如果产品参数偏离预先设定的目标值,就会造成质量损失,偏离越大,损失越大;二是零件容差的大小决定了其制造成本,容差设计得越小,成本越高。
试通过如下的具体问题给出一般的零件参数设计方法。
粒子分离器某参数(记作y)由7个零件的参数(记作XI,X2,.・・,xj决定,经验公式为:
y=174.42x
y的目标值(记作yo)为1.50。
当y偏离yo+0.1时、产品为次品,质量损失为1,000元;当y偏离yo+0・3时,产品为废品,损失为9,000元。
零件参数的标定值有一定的容许国;容差分为A、B、C三个等级,用与标定值的相对值表示,A等为+1%,B等为+5%,C等为+10%。
7个零件参数标定值的容许围,及不同容差等级零件的成本(元)如下表(符号/表示无此等级零件):
标定值容许围
C等
B等
A等
X1
[0.075,0.125]
/
25
/
X2
[0.225,0.375]
20
50
/
X3
[0.075,0.125]
20
50
200
X4
[0.075,0.125]
50
100
500
X》
[1.125,1.875]
50
/
/
XH
[12,20]
10
25
100
X?
[0.5625,0.935]
/
25
100
现进行成批生产,每批产#1,000个。
在原设计中,7个零件参数的标定值为:
Xi=0.1,X2=0.3,xs=0.1,xi=0.1,X5=l.5,Xe=16,X7=0.75;容差均取最便宜的等级°
请你综合考虑y偏离yo造成的损失和零件成本,重新设计零件参数(包括
标定值和容差),并与原设计比较,总费用降低了多少?
二、棋型假设
1、将各零件参数视为随机变量,且各自服从正态分布;
2、假设组成离子分离器的各零件互不影响,即各零件参数互相独立;
3、假设小概率事件不可能发生,即认为各零件参数只可能出现在容许围;
4、在大批量生产过程中,整批零件都处于同一等级,。
本题可认为1000各
零件都为A等、B等或C等;
5、生产过程中出质量损失外无其他形式的损失;
6、在质量损失计算过程中,认为所有函数都是连续可导的。
三、符号说明
兀:
第i类零件参数的标定值(21,2……7);
△兀:
第i类零件参数的实际值相对目标值的偏差(i=l,2……7);
r,:
第i类零件参数的容差(i=l,2,……7);
6:
第i类零件参数的方差(21,2,……7);
©,亿:
标定值“的上、下限;
y:
离子分离器某参数的实际值;
儿:
离子分离器该参数的目标值;
y:
离子分离器某参数的均值;
△y:
离子分离器某参数的实际值y相对平均值亍的偏差;
6:
离子分离器某参数的方差;
片:
一批产品中正品的概率;
人:
一批产品中次品的概率;
4:
一批产品中废品的概率;
W:
—批产品的总费用(包括损失和成本费);
5:
第i类零件对应容差等级为j的成本(j二A,B,C)单位:
元/个。
成本费
损失费
次品率废品率心服从正态分布容差等级
y服从正容差
态分布
泰勒公式将
其线性化
该问题是一定约束条件下的最优化问题,经分析题意,拟建立以总费用为目标函数的非线性规划模型。
总费用由损失费和成本费两部分组成,零件成本由简单的线性代数式决定,而损失费涉及概率分布的非线性函数。
要求出损失费,就必须知道一批产品的次品率和废品率、结合各类零件都服从Ngbj)、可假设y也服从正态分布,联想正态分布的性质——当各变量均服从正态分布时,其线性组合也服从正态分布。
题中所给经验公式为一复杂的非线性的公式,无法直接对其分析处理,所以需借助泰勒公式将其展开并作相应处理使其线性化。
而对于零件成本,需先确定容差等级才能求得成本费。
由容差等级和各类零件的标定值“便可知道给类零件的容差件。
最后,便将问题转化为呂、人关于总目标函数的最优解的问题上。
在进行零件参数设计时,如果零件设计不妥,造成产品参数偏离预先设定值,就会造成质量损失,且偏差越大,损失也越大;零件容差的大小决定了其制造成本,容差设计得越小(即精度越高)零件成本越高。
合理的设计方案应既省费用又能满足产品的预先设定值,设计方向应该如下:
(1)设计的零件参数,要保证由零件组装成的产品参数符合该产品的预先设定值,即使有偏离也应是在满足设计最优下的容许围。
(2)零件参数(包括标定值和容差等级)的设计应使总费用最小为优。
此外分析零件的成本及产品的质量损失不难发现,质量损失对费用的影响远大于零件成本对费用的影响,因而设计零件参数时,主要考虑提高产品质量来达到减少费用的目的。
五、棋型建立
为了确定原设计中标定值(的期望值)及已给的容差对产
品性能参数影响而导致的总损失W,即确定偏离目标值所造成的损失和零件成本,先列出总损失的数学模型表达如下:
7
VV=1000x(工q+10004+9000A)
当然、为了确定总损失W,必须知道片、巴、§(即正品、次品及废品的
概率)。
为此,将经验公式用泰勒公式在X=兀(=12・・7)处展开并略去二次以
上高次项后来研究y的概率分布,设f(x)=y/则f(x)=y=f(xi)+£鲁》
将标定值兀(/=12・7)带入经验公式即得
y=/U)
所以由于在加工零件时,在标定值知道的情况下,加工误差服从正态分布,即
Ar,-N(0,打)
且相互独立,由正态分布性质可知
△y~N(O,bJ)
y〜N(y,bJ)
由误差传递公式得
由于容差为均方差的3倍,容差与标定值的比值为容差等级,则
6_0.010.050,1
3,3,3
y的分布密度函数为
y偏离儿±0」的概率j即次品的概率为
p2=J:
:
0(y)〃(y)+]*:
》(刃〃(y)
(2)
y偏离儿±0.3的概率,即废品的概率为
P、=+『:
0(刃〃(y)(3)
由于y偏离儿越远、损失越大*所以在o\固定时、调整y使之等于目标值儿可
降彳氐扌员失0取=y_y0即y=y0,贝U
0(/)为标准正态分布函数o
综合考虑y偏离屮)造成的损失和零件成本,设计最优零件参数的模型建立如下:
目标函数
7
minW=1000x(^q+1000P.+9000/>)
S.t.fbt ・=/(")(心1,2…7) 六、模型求解 初略分析 对于原给定的设计方案,利用matlab编程计算(见附录),计算结果如下: 正品率 次品率 废品率 成本费 损失费 总费用 0.1260 0.6239 0.2501 200 2874.8 3074.8 由于按原设计方案设计的产品正品率过低,损失费过高,显然设计不够合理。 进一步分析发现»参数均值y=1.7256偏离目标值儿习.5太远,致使损失过大°尽管原设计方案保证了正本最低,但由于零件参数的精度过低,导致正品率也过低。 所以我们应综合考虑成本费和损失费。 模型的实现过程: 本模型通过matlab进行求解,我们通过理论模型求解和随机模拟的求解过程如下: 在给定容差等级的情况下,利用matlab中求解非线性规划的函数fmincon,通过多次迭代求解,最终求得一组最优解。 最初,我们设定的fmincon函数的目标函数就是总费用,约束条件为各个标定值的容许围,以及各零件标定值带入产品参数表达式应为儿,即1.5。 然而,在迭代过程中我们发现,求解过程十分慢,在给定容差等级的确定的情况下,计算最优标定值需要将近400秒,如果在此基础上对108种容错等级进行穷举查找最优组合,将需要大概12小时。 显然这是不合理的。 因此,我们在仔细对matlab实现代码研究发现,求解过程之所以慢1是因为代码中存在多次调用求偏导和积分的函数*在fuiincon的多次迭代中,耗费大量时间。 所以,为了提高求解速度,我们首先利用matlab中diff函数对产品参数中的各个表达式进行求偏导,然后得到多个带参表达式,利用int函数对y的概率密度函数进行积分吩别得到出现次品和废品概率的表达式,然后将这些表达式写进程序里,这样在求解过程中就不需要在每一次迭代中都要 求偏导和积分了,修改后的程序运行时间大大减少。 程序流程图 等级未计算结束 程序见附录,求解结果如下: 零件 1 2 3 4 5 6 7 种 类 零 件 0.0750 0.3750 0.1250 0.1200 1.2919 15.9904 0.5625 参 数 容 差 B B B C C B B 等 级 正品率 次品率 废品率 成本费 损失费 总费用 0.8533 0.1476 0.0000 275 146.7878 421.7878 运行总时间: 3.995s 离子分离器参数均值y=1.5 离子分离器参数方差o-v=0.0689 模型检验 对设计方案进行动态模拟,由于每种零件参数均服从正态分布,用正态分布 随机数发生器在每种零件参数允许围产生1000个随机数参与真实值兀的计算随机模拟N次后结果如下: 正品率 次品率 废品率 成本费 损失费 总费用 0.8570 0.1430 0.0000 275 143 418 根据最优解的y=1.5»crv=0.0689画出y的概率分布图,再对x随机取样画出y的概率分布图(见图6.1),由图可知: 两组数据所画概率分布图的拟合度相当高,进一步确保了模型的正确性。 「对照图 6IIillII /\注: 蓝线为对X随机取样求得的y分布5_/U红线为根据模型计算出的y分布' 图6.1概率分布图对比图 通过以上数据,与原设计方案所得结果相比较,总费用由3074.8(元/个)降低到421.7878(元/个),降幅为86.28%,结果是令人满意的。 七、误差分析 1、在建模过程中,通过泰勒公式将y=f(X)展开并略去二次及以上项使线性化,不可避免地产生了截斷误差,所以展开后的式子只是原经验公式的近似关系式。 但在一般情况下,线性化和求总和在实用上具有足够的精度,所以由于函数线性化而略去的高次项可以忽略不计。 在函数关系式较复杂的情况下,将其线性化更具有明显的优势。 2、本模型忽略了小概率事件发生的可能,认为零件的参数只可能出现在允围,即氐-3巧,兀+30;]o现实中,小概率事件仍有发生的可能性,但在大批量生产中,小概率事件的发生对最终结果没有影响,所以可以忽略。 3、该模型对于质量损失的计算,将所有函数都看作连续函数,而这对于每个零件参数而言是不可能的,所以其中也会产生误差。 八、棋型的评价及推广 1.优点 (1)建模过程中,采用泰勒公式将经验公式简化,并假设各零件参数都服从满足大量数据的正态分布,使得整个模型的建立及求解得到大大简化。 (2)本模型运用概率统计与优化知识对零件参数进行优化设计。 通过建立一个反映设计要求的数学模型,利用MATLAB软件,经过编程来实现对设计方案参数的调整,将总费用由3074.8(元/个)降低到421.7878(元/个),降幅达到86.28%,结果还是令人十分满意的。 (3)本模型在程序运算的过程中,做了适当处理,将每次循环本该由计算机求偏导和积分的提前人为处理,将求偏导和积分后的算式写入程序中,这样大大节约了运算时间,将运行时间由几个小时缩短为3.0995s。 2.缺点 (1)本模型在模型的求解过程中,对一些可接受围的误差直接进行了忽略,因而对于结果的精确性还是会有一定的影响。 (2)本模型是建立在一些假设中的,所有实用性受到了限制,在实际生产中,如果可以把更多的一些因素考虑进去应该会更好。 在已假定的条件下,本模型的优化结果是好的。 3推广 此模型有较强的应用价值。 工程中往往因为某个零件的选取不当,而影响产品的参数,使可靠性降低,造成了极大的经济损失。 所以需综合考虑零件成本和质量,以求获得最大的经济效益。 本模型具有广泛的适用性,很容易加以推广。 模型中的设计变量 可以推广到个的情形,即设计变量,其中设计空间是一个维空间。 本模不仅适用于粒子分离器参数的设计,而且也可用于类似的机构、零部件、工艺设备等的基本参数的设计问题;容差等级同样可推广应用。 参考文献 【1】之俊,平中,《概率与统计》,国防工业,1985 【2】宝林,《最优化理论与算法》,清华大学,1989 [3]裘宗燕,《数学软件系统的应用及程序设计》,大学,1994 [4]许波,(Matlab工程数学应用》、清华大学/2001 附录-matlab代码: functionf=result %穷举108种容错等级组合求解仝局最优解 fval=inf; tic %Bmin=[2333332); %Xmin B(l)=2; B(5)=3; fori=2: 3 B (2)=i; forj=l: 3 B(3)=j; fort=l: 3 B(4)=t; forg=l: 3 B(6)=g; form=l: 2 B(7)=m; [fv,x]=getcost(B); iffv Xmin=x; Bmin=B; fval=fv; end; end; end; end; end; end; f=fval,Xmin,Bmin,p=getP(Xmin,Bmin) toe simulation(Xmin,Bmin);%用随机法和计算的结果进行模拟比较functionf=simulation(MU,B) %用随机法和计算的结果进行模拟比校fori=l: 10000 y(i)=Yfun(getparaX(Ml\B)); end; [f,xi]=ksdensity(y);plot(xi,f);%画经验概率密度曲线 holdon; yO=Yfun(MU); fc=getfcY(MU,B); %{ x=normrnd(yO,fc,1,10000); [fhxj]=ksdensity(x); plot(xj>fl,'f); %} x0=min(y): 0.01: max(y); y=((2*pi)^0.5*fc)X-l)*exp(-(xO-yO).^2/2/fc*2); plot(x0,y,T); %{ x=min(y): 0.01: max(y); yg=gaussmf(x,[fc,yO]);plot(x,yg,*r); %} titleC对照图•); gtextC注: 蓝线为对x随机取样求得的y分布');gtextC红线为根据模型计算出的y分布');xlabelC于); ylabel('y的漑率密度’); holdoff; functionf,x]=getcost(B) %在给定容差等级的情况下求最优的标定值,使得Y的均值为yO的情况下,方差最小 MU=(0.10.30.10.11.5160.75];%给定初始的标定值 options=optimsetCLargeScale*,*off*,*Display*,*off*);%,*Tolx*,1.0000e-032);[x,fval]=fminconCgetfcY*,MU,[]>[],(]>[],[],[]>*mycon,options,B); x,B,f=cost(x,B) function[c,ceq]=mycon(MU,B) %求最优标定值时的约束条件 %c为不等式约束 %ceq为等式约束 c(l)=MU (1)-0.125; c (2)=0.075-MK1); c(3)=MU (2)-0.375; c(4)=0.225-MU (2); c(5)=Ml(3)-0.125; c(6)=0.075-Ml(3); c(7)=MU(4)-0.125; c(8)=0.075-MK4); c(9)=MU(5)-1.875; c(10)=1.125-MU(5); c(ll)=MU(6)-20; c(12)=12-Ml(6); c(13)=MU(7)-0.935; c(14)=0.5625-MK7); ceq(l)=Yfun(MU)-1.5; functionf=cost(MU,B) %当标定值为肌「容差等级为B时,求费用f=25; p=getP(Ml\B);%求正晶>次品'废胳的概率 if(B (2)==2) f=f+50;else f=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; case3 f=f+50;end; f=f+50; switch(B(6)) case1f=f+100; case2f=f+25; case3 f=f+10; end; if(B(7)==l) f=f+100; else f=f+25; end; f=f+p (2)*1000+p(3)*9000; functionf=getfcY(MU,B) %对于所给的标定值和容差求Y的方差f=0; B=int32(B); fori=l: 7 ifB(i)==l sigma(i)=Ml(i)*0.01/3; end; ifB(i)==2 sigma(i)=MU(i)*0.05/3; end; ifB(i)==3 sigma(i)=MU(i)*0.1/3; end; end; xl=MU(l);x2=MU (2);x3=MU(3);x4=MU(4);x5=MU(5);x6=MU(6);x7=MU(7); %求丫对各变量的偏导的评分与对应的方差乘积之和 f=(pdl(xl,x2,x3,x4,x5,x6,x7)*sigma(l))*2;f=f+(pd2(xl,x2,x3,x4,x5,x6,x7)*sigma (2))2■ f=f+(pd3(xltx2,x3,x4,x5,x6,x7)*sigma(3))A2;f=f+(pd4(xl>x2,x3,x4,x5,x6,x7)*sigma⑷) "2; f=f+(pd5(xl,x2,x3,x4,x5,x6,x7)*sigma(5))"2;f=f+(pd6(xltx2,x3,x4,x5,x6,x7)*sigma(6)) "2; f=f+(pd7(xl,x2,x3,x4,x5,x6,x7)*sigma(7))*2; f=abs(f'O.5); functionf=pdl(xLx2,x3,x4,x5,x6,x7) %Y%xl的偏导f=8721/50/x5*(x3/(x2-xl))X17/20)*((l-131/50*(l-9/25/... (x4/x2)・(14/25))“(3/2)*(x4/x2)“(29/25))/x6/x7)"l/2)+・•. 148257/1000*xl/x5/(x3/(x2-xl))73/20)*((l-131/50*(l-9/25/(x4/x2)... “(14/25))“(3/2)*(x4/x2)・(29/25))/x6/x7)“(l/2)*x3/(x2-xl)"2; functionf=pd2(xhx2,x3,x4,x5,x6,x7) %Y%x2的偏导 f=-148257/1000*xl/x5/(x3/(x2-xl))\.. (3/20)*((l-131/50*(l-9/25/(x4/x2)"14/25)T(•… 3/2)*(x4/x2)“(29/25))/x6/x7)“(l/2)*x3/(x2-xl)•…. 2+8721/100*xl/x5*(x3/(x2-xl))'(17/20)/(仃-131/50*(1-9/25/.・• (x4/x2)・(14/25)),3/2)*(x4/x2),29/25))/x6/x7)“(l/2)*(24759/31250*…. (l-9/25/(x4/x2)"14/25))“(l/2)/(x4/x2)“(2/5)*x4/x2"2+3799/1250*(l-9/25/・・・ (x4/x2T(14/25))“(3/2)*(x4/x2)“(4/25)*x4/x2“2)/x6/x7; functionf=pd3(xhx2,x3,x4,x5,x6,x7) %Y%x3的偏导 f=148257/1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数学 建模 零件 参数 优化 设计 说明