数学建模(三)—— 自动化车床管理

2023-11-18

一、题目要求

       一道工序用自动化车床连续加工某种零件,由于刀具损坏等原因该工序会出现故障,其中刀具损坏故障占95%,其他故障仅占5%。工序出现故障是完全随机的,假定在生产任一零件时出现故障的机会均相同。工作人员通过检查零件来确定工序是否出现故障。现积累有100次刀具故障记录,故障出现时该刀具完成的零件数如附件表。现计划在刀具加工一定件数后定期更换新刀具。
       已知生产工序的费用参数如下:
       故障时产出的零件损失费用 f=200元/件;
       进行检查的费用 t=20 元/次;
       发现故障进行调节使恢复正常的平均费用 d=4000元/次(包括刀具费);
       未发现故障时更换一把新刀具的费用 k=1500元/次。
       1)假定工序故障是产出的零件均为不合格品,正常时产出的零件均为合格品,试对该工序设计效益最好的检查间隔(生产多少零件检查一次)和刀具更换策略。
       2)如果该工序正常时产出的零件不全是合格品,有2%为不合格品;而工序故障时产出的零件有40%为合格品,60%为不合格品。工序正常而误认故障停机产生的损失费用为2000元/次。对该工序设计效益最好的检查间隔和刀具更换策略。
       3)在 2)的情况,可否改进检查方式获得更高的效益。

附:100次刀具故障记录(完成的零件数)

在这里插入图片描述

二、相关的基础知识

2.1 正态分布的假设检验

       正态分布(Normal distribution)又名高斯分布,是一个非常常见的连续概率分布。正态分布的假设检验方法有很多种,本次练习中使用的是MATLAB中的lillietest函数去进行拟合度检验。
       h=lillietest(X) %对输入向量X进行Lilliefors测试,显著性水平为0.05
       h = lillietest(X,alpha) %在显著性水平alpha而非0.05下施行Lilliefors测试,alpha在0.01和0.2之间
       [h,p,l,cv] = lillietest(X,alpha) %p为接受假设的概率值,p越接近于0,则可以拒绝是正态分布的原假设;l为测试统计量的值,cv为是否拒绝原假设的临界值
说明:h为测试结果,只有0和1两种情况。若h=0,则可以认为X是服从正态分布的;若h=1,则可以认为X是不服从正态分布的。

2.2 正态分布的概率

在这里插入图片描述       正态分布概率密度函数的曲线如上图所示,若 x x x~ N ( μ , σ 2 ) N(\mu,\sigma ^{2}) N(μ,σ2),则其概率密度函数为 f ( x ) = 1 2 π σ e − ( x − μ ) 2 2 σ 2 f(x)=\frac{1}{\sqrt{2\pi }\sigma }e^{-\frac{(x-\mu )^{2}}{2\sigma ^{2}}} f(x)=2π σ1e2σ2(xμ)2
       正态分布是连续型随机变量的理论分布,对于任何正态分布随机变量x落入任意区间(a,b)的概率可以表示为P(a<x<b),其概率的计算是求概率密度函数在该区间的定积分。 P ( a < x < b ) = ∫ a b 1 2 π σ e − ( x − μ ) 2 2 σ 2 d x P(a<x<b)=\int _{a}^{b} \frac{1}{\sqrt{2\pi }\sigma }e^{-\frac{(x-\mu )^{2}}{2\sigma ^{2}}}dx P(a<x<b)=ab2π σ1e2σ2(xμ)2dx

三、问题分析

       本次练习主要研究的是在自动化车床生产工序中,使工序效益最好的检查间隔和刀具更换策略问题。题中给出了100 次刀具故障记录以及一些生产工序的费用参数,我们通过这些已知条件来对三个问题分别建立数学模型并进行求解,从而可以得到使工序效益最好的检查周期和换刀周期。

四、模型的建立与求解

4.1 数据处理及分析

       通过使用MATLAB对题目中给出的100次刀具故障记录数据进行处理,得到故障出现时该刀具完成的零件数分布图如图1所示。在这里插入图片描述

图1  100 次刀具故障数据分布图

       由图1可以看出这100次刀具故障数据大致服从正态分布,调用MATLAB中的lillietest函数[h,p,l,cv]=lillietest(x)对其进行拟合度检验,得到的结果为h =0,p =0.500,l =0.042,cv =0.0890,表示该数据服从正态分布。
       通过计算可求出 μ \mu μ=600, σ \sigma σ =196.6292,所以这100次刀具故障时完成的零件数近似服从 x x x~ N ( 600 , 196.629 2 2 ) N(600,196.6292 ^{2}) N(600,196.62922)的正态分布,其概率密度函数为 f ( x ) = 1 2 π σ e − ( x − μ ) 2 2 σ 2 f(x)=\frac{1}{\sqrt{2\pi }\sigma }e^{-\frac{(x-\mu )^{2}}{2\sigma ^{2}}} f(x)=2π σ1e2σ2(xμ)2

       数据处理及分析的代码如下:

  • Normal_distribution.m
clear
clc
 
 % 输入数据
Fault_Record=[459,362,624,542,509,584,433,748,815,505,612,452,434,982,640,742,            
              565,706,593,680,926,653,164,487,734,608,428,1153,593,844,527,552,
              513,781,474,388,824,538,862,659,775,859,755,649,697, 515,628,954,            
              954,771,609,402,960,885,610,292,837,473,677,358,638,699,634,555,     
              570,84,416,606,1062,484,120,447,654,564,339,280,246,687,539,790,
              581,621,724,531,512,577,496,468,499,544,645,764,558,378,765,666,
              763,217,715,310,851];
 
% 画出频率直方图及频率分布曲线
figure(1);
[a,b]=hist(Fault_Record);
hist(Fault_Record)%频数直方图(肉眼看是否左右对称,中间多,两边少)
bar(b,a)%画出给定数据的频率分布曲线
hold on
plot(b,a,'-gs','LineWidth',2,'MarkerSize',10)
grid on

% 参数估计和假设检验
[h,p,l,cv]=lillietest(Fault_Record)  % H=lillietest(X)中H为测试结果,若H=0,则可以认为X是服从正态分布的;若X=1,则可以否定X服从正态分布.
if h==0
    disp('该数据服从正态分布')
end

% 正态曲线拟合
mu=mean(Fault_Record)  %期望
sigma=sqrt(sum((Fault_Record-mu).^2)/(length(Fault_Record)-1))  %标准差
xx=1:1200;
y=1/(sqrt(2*pi)*sigma)*exp(-(xx-mu).^2/(2*sigma^2))*10916;
figure(1)
plot(xx,y,'r','LineWidth',2)
grid on
xlabel('刀具完成零件数')
ylabel('出现次数')
legend('刀具故障数据直方图','真实分布','拟合后曲线');

4.2 问题一模型的建立与求解

       问题一所要解决的是在工序故障时产出的零件均为不合格品,正常时产出的零件均为合格品的情况下,设计出使工序效益最好的检查周期和换刀周期策略的问题。通过分析得到100 次刀具故障记录数据符合正态分布,我们将问题一分为换刀前工序正常和换刀前工序故障这两种情况,分别求出两种情况下在一个换刀周期内损失费用总和的期望值和生产合格零件的期望值,通过二者之比的最小值确立目标函数,建立随机模型,对模型进行求解得到问题一情况下使工序效益最好的检查周期和换刀周期。

4.2.1 问题一模型的建立

       在问题一中我们以一个换刀周期内合格零件的平均损失费用的期望值E(s)作为工序效益好坏的评价指标。确立的评价指标E(s)为一个换刀周期内的损失费用期望总和E(w)与生产的合格零件的期望值E(q)之比,而一个换刀周期内合格零件平均损失费用的期望值越小,则说明效益越好,即目标函数为 m i n E ( s ) = E ( w ) E ( q ) minE(s)=\frac{E(w)}{E(q)} minE(s)=E(q)E(w)

A.第一种情况:换刀前工序正常
在这里插入图片描述

图2  换刀前工序正常情况

       换刀前工序正常情况如图2所示,损失费用 w 1 w_{1} w1为检查费和换刀费之和。 w 1 = [ m n ] t + k w_{1}=[\frac{m}{n}]t+k w1=[nm]t+k

       其中,m为一个换刀周期内生产的零件数,即换刀周期;n为一个检查周期内产生的零件数,即检查周期; [ m n ] [\frac{m}{n}] [nm]为一个换刀周期内的检查次数;t为一次检查的费用;k为未发现故障时更换一把新刀具的费用。
       根据正态分布概率密度函数计算出第一种情况下的事件发生的概率 p 1 p_{1} p1
p 1 = 1 − ∫ 1 m 1 2 π σ e − ( x − μ ) 2 2 σ 2 d x 0.95 p_{1}=1-\frac{\int _{1}^{m} \frac{1}{\sqrt{2\pi }\sigma }e^{-\frac{(x-\mu )^{2}}{2\sigma ^{2}}}dx}{0.95} p1=10.951m2π σ1e2σ2(xμ)2dx

       则换刀前工序正常的损失费用期望 E 1 ( w ) E_{1}(w) E1(w) E 1 ( w ) = w 1 p 1 E_{1}(w)=w_{1}p_{1} E1(w)=w1p1

       换刀前工序正常所生产的合格零件数恰好等于一个换刀周期内生产的零件数,即 q 1 = m q_{1}=m q1=m,则换刀前工序正常所生产合格零件的期望值 E 1 ( q ) E_{1}(q) E1(q) E 1 ( q ) = m p 1 E_{1}(q)=mp_{1} E1(q)=mp1

B.第二种情况:换刀前工序故障在这里插入图片描述

图3  换刀前工序故障情况

       换刀前工序故障情况如图3所示。当换刀前工序故障,设出现故障之前已经生产了 n s n_{s} ns 个零件,由问题一的假定可知 n s n_{s} ns 个零件都为合格品,则损失费用 w 2 w_{2} w2为检查费、故障维修费和零件损失费之和。
w 2 = ( [ n s n ] + 1 ) t + d + [ ( [ n s n ] + 1 ) n − n s ] f w_{2}=\left ([\frac{n_{s}}{n}]+1 \right )t+d+\left [\left ([\frac{n_{s}}{n}]+1 \right )n-n_{s} \right ]f w2=([nns]+1)t+d+[([nns]+1)nns]f

       其中, [ n s n ] + 1 [\frac{n_{s}}{n}]+1 [nns]+1为一个换刀周期内的检查次数; [ m n ] [\frac{m}{n}] [nm]为一个换刀周期内的检查次数;d为发现故障进行调节使恢复正常的平均费用;f为故障时产出的零件损失费用。
       根据正态分布概率密度函数计算出第二种情况下的事件发生的概率 p 2 p_{2} p2
p 2 = ∫ n s n s + 1 1 2 π σ e − ( x − μ ) 2 2 σ 2 d x 0.95 ≈ 1 2 π σ e − ( n s + 1 − μ ) 2 2 σ 2 0.95 p_{2}=\frac{\int _{n_{s}}^{n_{s+1}} \frac{1}{\sqrt{2\pi }\sigma }e^{-\frac{(x-\mu )^{2}}{2\sigma ^{2}}}dx}{0.95}\approx\frac{\frac{1}{\sqrt{2\pi }\sigma }e^{-\frac{(n_{s+1}-\mu )^{2}}{2\sigma ^{2}}}}{0.95} p2=0.95nsns+12π σ1e2σ2(xμ)2dx0.952π σ1e2σ2(ns+1μ)2

       则换刀前工序故障的损失费用期望 E 2 ( w ) E_{2}(w) E2(w) E 2 ( w ) = ∑ n s = 1 m − 1 w 2 p 2 E_{2}(w)=\sum _{n_{s}=1}^{m-1}w_{2}p_{2} E2(w)=ns=1m1w2p2

       换刀前工序故障所生产的合格零件数恰好等于故障之前已经生产的零件数,即 q 2 = n s q_{2}=n_{s} q2=ns ,则换刀前工序故障所生产合格零件的期望值 E 2 ( q ) E_{2}(q) E2(q) E 2 ( q ) = ∑ n s = 1 m − 1 n s p 2 E_{2}(q)=\sum _{n_{s}=1}^{m-1}n_{s}p_{2} E2(q)=ns=1m1nsp2

       问题一建立的模型为
m i n E ( s ) = E ( w ) E ( q ) s . t . { E ( w ) = E 1 ( w ) + E 2 ( w ) = w 1 p 1 + ∑ n s = 1 m − 1 w 2 p 2 E ( q ) = E 1 ( q ) + E 2 ( q ) = m p 1 + ∑ n s = 1 m − 1 n s p 2         \begin{matrix} minE(s)=\frac{E(w)}{E(q)}\\ s.t.\left \{ \begin{matrix} E(w)=E_{1}(w)+E_{2}(w)=w_{1}p_{1}+\sum _{n_{s}=1}^{m-1}w_{2}p_{2}\\ E(q)=E_{1}(q)+E_{2}(q)=mp_{1}+\sum _{n_{s}=1}^{m-1}n_{s}p_{2}\ _{}\ _{}\ _{}\ _{} \end{matrix} \right. \end{matrix} minE(s)=E(q)E(w)s.t.{E(w)=E1(w)+E2(w)=w1p1+ns=1m1w2p2E(q)=E1(q)+E2(q)=mp1+ns=1m1nsp2    

4.2.2 问题一模型的求解

       通过MATLAB对问题一所建立的模型进行编程求解得到使工序效益最好的检查间隔和刀具更换策略如表1所示。

表1  问题一结果
换刀周期(件) 检查周期(件) 平均损失费用(元)
364 26 6.7674

       对表1进行分析可得,在问题一的情况下使工序效益最好的换刀周期为364件,检查周期为26件,此时每个零件的平均损失费用为6.7674元。

       求解问题一模型的代码如下:

  • problem_1.m
%problem 1
clear
clc 
M=600;N=600; 
t=20;d=4000;f=200;k=1500; 
sigma=196.6292;mu=600; 
for m=1:M 
    m
    for n=1:N 
        w1=t*(m/n)+k; 
        S=normcdf(m,mu,sigma); %刀具生产零件故障概率
        p1=1-S/0.95; 
        Ew1=w1*p1; 
        Ew2=0;Eq2=0; 
        for idx=1:m-1
            num=floor(idx/n)+1;
            w2=t*num+d+f*(n*num-idx); 
            p2=normpdf(idx+1,mu,sigma)/0.95; %刀具生产零件故障概率
            Ew2=Ew2+w2*p2;
            Eq2=Eq2+idx*p2; 
        end
        Ew=Ew1+Ew2;
        Eq1=m*p1;
        Eq=Eq1+Eq2; 
        E(m,n)=Ew/Eq;
    end
end
minE=min(min(E)) 
[minm,minn]=find(E==minE) 

4.3 问题二模型的建立与求解

       问题二的情况是如果该工序正常时产出的零件不全是合格品,有2%为不合格品;而工序故障时产出的零件有40%为合格品,60%为不合格品。相比于问题一,问题二无论工序正常还是故障时,都会产生一定概率的合格品和不合格品,因此在问题一的基础上我们还需要考虑到工序正常时因误检而产生停机的损失费用。同样将问题二分为换刀前工序正常和换刀前工序故障这两种情况去进行建模并求解,从而得到在问题二情况下使工序效益最好的检查周期和换刀周期。

4.3.1 问题二模型的建立

       在问题二中我们仍以一个换刀周期内合格零件的平均损失费用的期望值E(s)作为工序效益好坏的评价指标。

A.第一种情况:换刀前工序正常
在这里插入图片描述

图4  换刀前工序正常情况

       换刀前工序正常情况如图4所示,损失费用 w 1 w_{1} w1为检查费、换刀费、误检停机费和零件损失费之和。 w 1 = [ m n ] t + k + 0.02 [ m n ] h + 0.02 m f w_{1}=[\frac{m}{n}]t+k+0.02[\frac{m}{n}]h+0.02mf w1=[nm]t+k+0.02[nm]h+0.02mf

       根据正态分布概率密度函数计算出第一种情况下的事件发生的概率 p 1 p_{1} p1
p 1 = 1 − ∫ 1 m 1 2 π σ e − ( x − μ ) 2 2 σ 2 d x 0.95 p_{1}=1-\frac{\int _{1}^{m} \frac{1}{\sqrt{2\pi }\sigma }e^{-\frac{(x-\mu )^{2}}{2\sigma ^{2}}}dx}{0.95} p1=10.951m2π σ1e2σ2(xμ)2dx

       则换刀前工序正常的损失费用期望 E 1 ( w ) E_{1}(w) E1(w) E 1 ( w ) = w 1 p 1 E_{1}(w)=w_{1}p_{1} E1(w)=w1p1

       换刀前工序正常所生产的合格零件数 q 1 = 0.98 m q_{1}=0.98m q1=0.98m,则换刀前工序正常所生产合格零件的期望值 E 1 ( q ) E_{1}(q) E1(q) E 1 ( q ) = 0.98 m p 1 E_{1}(q)=0.98mp_{1} E1(q)=0.98mp1

B.第二种情况:换刀前工序故障在这里插入图片描述

图5  换刀前工序故障情况

       换刀前工序故障情况如图5所示。当换刀前工序故障,设出现故障之前已经生产了 n s n_{s} ns 个零件,由问题二的假定可知 n s n_{s} ns个零件不全为合格品,则损失费用 w 2 w_{2} w2 为检查费、故障维修费、误检停机费和故障前后的零件损失费之和。
w 2 = ( [ n s n ] + 1 ) t + d + 0.02 [ n s n ] h + 0.02 n s f + 0.6 [ ( [ n s n ] + 1 ) n − n s ] f w_{2}=\left ([\frac{n_{s}}{n}]+1 \right )t+d+0.02[\frac{n_{s}}{n}]h+0.02n_{s}f+0.6\left [\left ([\frac{n_{s}}{n}]+1 \right )n-n_{s} \right ]f w2=([nns]+1)t+d+0.02[nns]h+0.02nsf+0.6[([nns]+1)nns]f

       根据正态分布概率密度函数计算出第二种情况下的事件发生的概率 p 2 p_{2} p2
p 2 = ∫ n s n s + 1 1 2 π σ e − ( x − μ ) 2 2 σ 2 d x 0.95 ≈ 1 2 π σ e − ( n s + 1 − μ ) 2 2 σ 2 0.95 p_{2}=\frac{\int _{n_{s}}^{n_{s+1}} \frac{1}{\sqrt{2\pi }\sigma }e^{-\frac{(x-\mu )^{2}}{2\sigma ^{2}}}dx}{0.95}\approx\frac{\frac{1}{\sqrt{2\pi }\sigma }e^{-\frac{(n_{s+1}-\mu )^{2}}{2\sigma ^{2}}}}{0.95} p2=0.95nsns+12π σ1e2σ2(xμ)2dx0.952π σ1e2σ2(ns+1μ)2

       则换刀前工序故障的损失费用期望 E 2 ( w ) E_{2}(w) E2(w) E 2 ( w ) = ∑ n s = 1 m − 1 w 2 p 2 E_{2}(w)=\sum _{n_{s}=1}^{m-1}w_{2}p_{2} E2(w)=ns=1m1w2p2

       换刀前工序故障所生产的合格零件数等于故障之前生产的合格零件数和故障发生后换刀前生产的合格零件数之和,即 q 2 = 0.98 n s + 0.4 [ ( [ n s n ] + 1 ) n − n s ] q_{2}=0.98n_{s}+0.4\left [\left ([\frac{n_{s}}{n}]+1 \right )n-n_{s} \right ] q2=0.98ns+0.4[([nns]+1)nns],则换刀前工序故障所生产合格零件的期望值 E 2 ( q ) E_{2}(q) E2(q) E 2 ( q ) = ∑ n s = 1 m − 1 n s p 2 E_{2}(q)=\sum _{n_{s}=1}^{m-1}n_{s}p_{2} E2(q)=ns=1m1nsp2

       问题二建立的模型为
m i n E ( s ) = E ( w ) E ( q ) s . t . { E ( w ) = E 1 ( w ) + E 2 ( w ) = w 1 p 1 + ∑ n s = 1 m − 1 w 2 p 2     E ( q ) = E 1 ( q ) + E 2 ( q ) = 0.98 m p 1 + ∑ n s = 1 m − 1 q 2 p 2 \begin{matrix} minE(s)=\frac{E(w)}{E(q)}\\ s.t.\left \{ \begin{matrix} E(w)=E_{1}(w)+E_{2}(w)=w_{1}p_{1}+\sum _{n_{s}=1}^{m-1}w_{2}p_{2}\ _{}\ _{}\\ E(q)=E_{1}(q)+E_{2}(q)=0.98mp_{1}+\sum _{n_{s}=1}^{m-1}q_{2}p_{2} \end{matrix} \right. \end{matrix} minE(s)=E(q)E(w)s.t.{E(w)=E1(w)+E2(w)=w1p1+ns=1m1w2p2  E(q)=E1(q)+E2(q)=0.98mp1+ns=1m1q2p2

4.3.2 问题二模型的求解

       对于问题二,与问题一的求解类似,通过MATLAB对问题二所建立的模型进行编程求解得到使工序效益最好的检查间隔和刀具更换策略如表2所示。

表2  问题二结果
换刀周期(件) 检查周期(件) 平均损失费用(元)
340 68 11.4242

       对表2进行分析可得,在问题二的情况下使工序效益最好的换刀周期为340件,检查周期为68件,此时每个零件的平均损失费用为11.4242元,符合题目要求。
       与问题一结果相比,问题二求解的每个零件平均损失费用有所增加,这是由于增加了工序正常时因误检停机产生的损失费用,且相比于故障损失费、检查费和换刀费用而言,误检停机费更多,因此换刀周期有所减少,检查周期有所增大,均能够一定程度上减少误检停机费用。

       求解问题二模型的代码如下:

  • problem_2.m
%problem 2
clear
clc 
M=600; N=600; 
t=20;d=4000;f=200;k=1500; 
sigma=196.6292;mu=600; 
h=2000;
for m=1:M 
    m
    for n=1:N 
        w1=t*(m/n)+k+0.02*h*m/n+0.02*m*f; 
        S=normcdf(m,mu,sigma);  
        p1=1-S/0.95; 
        Ew1=w1*p1;
        Ew2=0;Eq2=0; 
        for idx=1:m-1 
            num=floor(idx/n)+1;
            w2=t*num+d+0.02*f*idx+0.6*f*(n*num-idx)+0.02*h*idx/n; 
            p2=1/(sqrt(2*pi)*sigma)*exp(-(idx+1-mu)^2/(2*sigma^2))/0.95; 
            Ew2=Ew2+w2*p2; 
            q2=0.98*idx+(n*num-idx)*0.4;
            Eq2=Eq2+q2*p2;
        end
        Ew=Ew1+Ew2; 
        Eq=0.98*m*p1+Eq2; 
        E(m,n)=Ew/Eq;
    end
end
minE=min(min(E)) 
[minm,minn]=find(E==minE)

4.4 问题三模型的建立与求解

       问题三所要解决的问题是在问题二所建立的优化模型的基础上进行改进优化,以获得更高的效益。为了减小问题二中工序正常时因误检产生停机的损失费用,我们在问题二的模型上使用了连续检查法优化模型,连续检查两个零件,如果两个零件均为合格品,则认为是没有故障的;如果两个零件均为不合格品,则认为是有故障的;如果两个零件中有一个合格品一个不合格品,将继续检查第三个零件看其是否合格,如果第三个零件为合格品则认为是没有故障的,如第三个零件为不合格品则认为是有故障的,这样的检查方法会降低误检率。在此检查法的基础上进行建模并求解,可以得到进一步优化后使工序效益最好的检查周期和换刀周期。

4.4.1 问题三模型的建立

       根据所使用的连续检查法,在工序正常时,两个零件均不合格和两个零件一个合格一个不合格,第三个不合格为误检情况,我们计算工序正常时误检的概率 p s p_{s} ps
p s = 0.02 × 0.02 + 0.02 × ( 1 − 0.02 ) × 0.02 × 2 = 0.001184 p_{s}=0.02\times 0.02+0.02\times (1-0.02)\times 0.02\times2=0.001184 ps=0.02×0.02+0.02×(10.02)×0.02×2=0.001184

       在问题三中我们仍以一个换刀周期内合格零件的平均损失费用的期望值E(s)作为工序效益好坏的评价指标。

A.第一种情况:换刀前工序正常

       换刀前工序正常情况时损失费用 w 1 w_{1} w1为检查费、换刀费、误检停机费和零件损失费之和。 w 1 = [ m n ] t + k + 0.001184 [ m n ] h + 0.02 m f w_{1}=[\frac{m}{n}]t+k+0.001184[\frac{m}{n}]h+0.02mf w1=[nm]t+k+0.001184[nm]h+0.02mf

       根据正态分布概率密度函数计算出第一种情况下的事件发生的概率 p 1 p_{1} p1
p 1 = 1 − ∫ 1 m 1 2 π σ e − ( x − μ ) 2 2 σ 2 d x 0.95 p_{1}=1-\frac{\int _{1}^{m} \frac{1}{\sqrt{2\pi }\sigma }e^{-\frac{(x-\mu )^{2}}{2\sigma ^{2}}}dx}{0.95} p1=10.951m2π σ1e2σ2(xμ)2dx

       则换刀前工序正常的损失费用期望 E 1 ( w ) E_{1}(w) E1(w) E 1 ( w ) = w 1 p 1 E_{1}(w)=w_{1}p_{1} E1(w)=w1p1

       换刀前工序正常所生产的合格零件数 q 1 = 0.98 m q_{1}=0.98m q1=0.98m,则换刀前工序正常所生产合格零件的期望值 E 1 ( q ) E_{1}(q) E1(q) E 1 ( q ) = 0.98 m p 1 E_{1}(q)=0.98mp_{1} E1(q)=0.98mp1

B.第二种情况:换刀前工序故障

       换刀前工序故障情况时,设出现故障之前已经生产了 n s n_{s} ns 个零件,由问题三的假定可知 n s n_{s} ns个零件不全为合格品,则损失费用 w 2 w_{2} w2 为检查费、故障维修费、误检停机费和故障前后的零件损失费之和。
w 2 = ( [ n s n ] + 1 ) t + d + 0.001184 [ n s n ] h + 0.02 n s f + 0.6 [ ( [ n s n ] + 1 ) n − n s ] f w_{2}=\left ([\frac{n_{s}}{n}]+1 \right )t+d+0.001184[\frac{n_{s}}{n}]h+0.02n_{s}f+0.6\left [\left ([\frac{n_{s}}{n}]+1 \right )n-n_{s} \right ]f w2=([nns]+1)t+d+0.001184[nns]h+0.02nsf+0.6[([nns]+1)nns]f

       根据正态分布概率密度函数计算出第二种情况下的事件发生的概率 p 2 p_{2} p2
p 2 = ∫ n s n s + 1 1 2 π σ e − ( x − μ ) 2 2 σ 2 d x 0.95 ≈ 1 2 π σ e − ( n s + 1 − μ ) 2 2 σ 2 0.95 p_{2}=\frac{\int _{n_{s}}^{n_{s+1}} \frac{1}{\sqrt{2\pi }\sigma }e^{-\frac{(x-\mu )^{2}}{2\sigma ^{2}}}dx}{0.95}\approx\frac{\frac{1}{\sqrt{2\pi }\sigma }e^{-\frac{(n_{s+1}-\mu )^{2}}{2\sigma ^{2}}}}{0.95} p2=0.95nsns+12π σ1e2σ2(xμ)2dx0.952π σ1e2σ2(ns+1μ)2

       则换刀前工序故障的损失费用期望 E 2 ( w ) E_{2}(w) E2(w) E 2 ( w ) = ∑ n s = 1 m − 1 w 2 p 2 E_{2}(w)=\sum _{n_{s}=1}^{m-1}w_{2}p_{2} E2(w)=ns=1m1w2p2

       换刀前工序故障所生产的合格零件数等于故障之前生产的合格零件数和故障发生后换刀前生产的合格零件数之和,即 q 2 = 0.98 n s + 0.4 [ ( [ n s n ] + 1 ) n − n s ] q_{2}=0.98n_{s}+0.4\left [\left ([\frac{n_{s}}{n}]+1 \right )n-n_{s} \right ] q2=0.98ns+0.4[([nns]+1)nns],则换刀前工序故障所生产合格零件的期望值 E 2 ( q ) E_{2}(q) E2(q) E 2 ( q ) = ∑ n s = 1 m − 1 n s p 2 E_{2}(q)=\sum _{n_{s}=1}^{m-1}n_{s}p_{2} E2(q)=ns=1m1nsp2

       问题三建立的模型为
m i n E ( s ) = E ( w ) E ( q ) s . t . { E ( w ) = E 1 ( w ) + E 2 ( w ) = w 1 p 1 + ∑ n s = 1 m − 1 w 2 p 2     E ( q ) = E 1 ( q ) + E 2 ( q ) = 0.98 m p 1 + ∑ n s = 1 m − 1 q 2 p 2 \begin{matrix} minE(s)=\frac{E(w)}{E(q)}\\ s.t.\left \{ \begin{matrix} E(w)=E_{1}(w)+E_{2}(w)=w_{1}p_{1}+\sum _{n_{s}=1}^{m-1}w_{2}p_{2}\ _{}\ _{}\\ E(q)=E_{1}(q)+E_{2}(q)=0.98mp_{1}+\sum _{n_{s}=1}^{m-1}q_{2}p_{2} \end{matrix} \right. \end{matrix} minE(s)=E(q)E(w)s.t.{E(w)=E1(w)+E2(w)=w1p1+ns=1m1w2p2  E(q)=E1(q)+E2(q)=0.98mp1+ns=1m1q2p2

4.4.2 问题三模型的求解

       对于问题三,在问题二建立的模型基础上通过改变检查方式来获得更高的效益,通过MATLAB对问题三所建立的模型进行编程求解得到使工序效益最好的检查间隔和刀具更换策略如表3所示。

表3  问题三结果
换刀周期(件) 检查周期(件) 平均损失费用(元)
374 34 10.6321

       对表3进行分析可得,在问题三的情况下使工序效益最好的换刀周期为374件,检查周期为34件,此时每个零件的平均损失费用为10.6321元,符合题目要求。
       与问题二结果相比,每个零件的平均损失费用有所减少,说明我们改变检查方式的模型是有效的,获得了更高的效益。

       求解问题三模型的代码如下:

  • problem_3.m
% problem 3 
clear
clc 
M=600; N=600; 
t=20;d=4000;f=200;k=1500; 
sigma=196.6292;mu=600; 
h=2000; 
for m=1:M
    m
    for n=1:N 
        w1=t*(m/n)+k+0.001184*h*m/n+0.02*m*f; 
        S=normcdf(m,mu,sigma);
        p1=1-S/0.95; 
        Ew1=w1*p1;
        Ew2=0;Eq2=0; 
        for idx=1:m-1 
            num=floor(idx/n)+1; 
            w2=t*num+d+0.02*f*idx+0.6*f*(n*num-idx)+0.001184*h*idx/n;
            p2=1/(sqrt(2*pi)*sigma)*exp(-(idx+1-mu)^2/(2*sigma^2))/0.95; 
            Ew2=Ew2+w2*p2; 
            q2=0.98*idx+(n*num-idx)*0.4;
            Eq2=Eq2+q2*p2;
        end
        Ew=Ew1+Ew2; 
        Eq=0.98*m*p1+Eq2; 
        E(m,n)=Ew/Eq; 
    end
end
minE=min(min(E)) 
[minm,minn]=find(E==minE)

五、结果分析

       对三个问题分别进行建模分析求解后得到的结果对比如表4所示。

表4  三个问题结果对比表
问题 换刀周期(件) 检查周期(件) 平均损失费用(元)
问题一 364 26 6.7674
问题二 340 68 11.4242
问题三 374 34 10.6321

       通过表4进行分析可得,在三个问题的情况下分别得到的使工序效益最好的换刀周期、检查周期均符合题目要求,且每个问题得到的零件平均损失费用均较小。问题一与问题二结果对比发现,问题二比问题一零件平均损失费大,是因为增加了工序正常时因误检停机产生的损失费用。问题二与问题三结果对比发现,问题三比问题二的零件平均损失费小,证明了改变检查方法来优化模型的有效性。综上,三个模型均能够满足给定的题目要求,随着考虑的因素逐渐增多,模型的建立逐步贴近实际,模型的最优解也符合实际情况。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

数学建模(三)—— 自动化车床管理 的相关文章

  • maven打包内存溢出,或者打包时间太长导致未知错误

    在idea中使用maven打包内存溢出问题 qq 27607447的博客 CSDN博客
  • java实现飞机大战(简单版)

    import javafx animation AnimationTimer import javafx application Application import javafx scene Group import javafx sce
  • 卡尔曼滤波算法 C语言实现 示例

    1 概念 卡尔曼滤波 Kalman filtering 是一种利用 k时刻 状态预测值 先验估计值 k 1时刻 状态最优估计值 后验估计值 k时刻 状态预测协方差 先验预测协方差 真实值与预测值之间的协方差 k时刻 状态最优估计协方差 后验
  • 什么是思维导图?6 个开源免费的思维导图软件

    目录 15款思维导图工具推荐 什么是思维导图 6 个开源免费的思维导图软件 当前推荐 Freeplane 离线应用 有免安装版本 跨平台 目前 2023年 还在更新中 下载 https sourceforge net projects fr
  • 【Python】六个惊人的未知 Python 库

    大家好 我是Sonhhxg 柒 希望你看完之后 能对你有所帮助 不足请指正 共同学习交流 个人主页 Sonhhxg 柒的博客 CSDN博客 欢迎各位 点赞 收藏 留言 系列专栏 机器学习 ML 自然语言处理 NLP 深度学习 DL fore
  • 一个参数一张Excel表,玩转Pandas的read_excel()表格读取

    作者 黄伟呢 来源 数据分析与统计学之美 我觉得很有必要讲述这个文章 进行数据处理的第一步就是Python数据读取 但是你可能没想到 在进行数据读取的同时 我们其实可以配合相关参数做很多事儿 这对于后续的数据处理都是极其有帮助 read e
  • 5秒之后自动跳转页面

  • 美国大学生数学建模竞赛赛题特点

    美国大学生数学建模竞赛赛题特点 赛题灵活度高 内容广泛 反恐 防灾 环境 健康医疗 交通 新能源等等 开放性大 评价类问题多且复杂 离散型优化问题多 除A题 如 2016B太空碎片的处理 2018D电动车充电桩的优化 2019D卢浮宫疏散路
  • 数学建模的LINGO基础

    LINGO是Linear Interactive and General Optimizer的缩写 即 交互式的线性和通用优化求解器 由美国LINDO系统公司 Lindo System Inc 推出的 可以用于求解非线性规划 也可以用于一些
  • 权重计算方法三:变异系数法(Coefficient of Variation)

    目录 1 原理简介 2 步骤详解 2 1 原始数据收集 2 2 指标数据正向化 2 3 数据标准化 消除量纲 2 4 计算变异系数 2 5 计算权重及得分 3 案例分析 3 1 获取原始数据 3 2 指标正向化 3 3 数据标准化 3 4
  • 数学专题-算法-矩阵-拟合

    Author Mikeliu 2020 Date 2020 03 08 10 32 13 LastEditTime 2020 03 12 09 26 47 LastEditors Mikeliu 2020 Description usr b
  • 数学建模之BP神经网络

    1 BP网络基本数学原理 BP网络是一种多层前馈神经网络 它的名字源于在网络训练中 调整网络权值的训练算法是反向传播算法 即BP学习算法 BP网络是一种具有三层或者三层以上神经元的神经网络 包括输入层 隐含层和输出层 上下层之间实现全连接
  • Mathematica函数大全

    一 运算符及特殊符号 Line1 执行Line 不显示结果 Line1 line2 顺次执行Line1 2 并显示结果 name 关于系统变量name 的信息 name 关于系统变量name 的全部信息 command 执行Dos 命令 n
  • 2020美赛A题解题方法

    题目 问题A 向北移动 全球海洋温度影响某些海洋生物的栖息地质量 当温度变化太大 它们无法继续繁荣时 这些物种就会迁移到其他更适合它们现在和未来生活和繁殖成功的栖息地 其中一个例子就是美国缅因州的龙虾种群 它们正缓慢地向北迁移到加拿大 那里
  • 【数学建模】数据处理问题

    一 插值与拟合 常用于数据的补全以及趋势分析 1 插值 总的思想 就是利用函数f x 若干已知点的函数值 求出适当的特定函数g x 这样f x 其他未知点上的值 就可以用g x 在这一点的值来近似 这种通过已知求未知的方法称为 插值 插值方
  • Latex各种矩阵的输入方法

    代码顺序同上顺序 导言区 documentclass ctexart usepackage amsmath 正文区 begin document begin Bmatrix 1 2 4 5 end Bmatrix begin matrix
  • 建模方法(十)-灰色预测模型GM(1,1)

    引言 灰色预测的主要特点是模型使用的不是原始数据序列 而是生成的数据序列 其核心体系是灰色模型 Grey Model 简称GM 即对原始数据作累加生成 或其它方法生成 得到近似的指数规律再进行建模的方法 灰色预测模型对于不同问题采用不同模型
  • 开关电容转换器的合成器研究(Python代码实现)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 2 运行结果 3 参考文献 4 Python代码实现
  • EasyV+UE创造数字孪生可视化新篇章!

    众所周知 UE是UNREAL ENGINE 虚幻引擎 的简写 由Epic开发 是世界知名授权最广的游戏引擎之一 EasyV是一款数据可视化应用平台 用户通过EasyV可以更高效的实现数据可视化项目搭建 产品内有丰富的模版 海量的组件 简单的
  • 2024年华数杯国际赛B题:光伏发电功率 思路模型代码解析

    2024年华数杯国际赛B题 光伏发电功率 Photovoltaic Power 一 问题描述 中国的电力构成包括传统能源发电 如煤 油和天然气 可再生能源发电 如水电 风能 太阳能和核能 以及其他形式的电力 这些发电模式在满足中国对电力的巨

随机推荐

  • c语言基础回顾 —— 其他知识点

    参考 c语言基础回顾 其他知识点 作者 丶PURSUING 发布时间 2021 03 11 14 48 59 网址 https blog csdn net weixin 44742824 article details 114666007
  • python实现微信机器人: 登录微信、消息接收、自动回复

    安装wxpy pip install U wxpy 登录微信 导入模块 from wxpy import 初始化机器人 扫码登陆 bot Bot 运行以上代码 会生成一个二维码 通过图片扫描二维码即可登录微信 如果是在服务器上运行代码 无法
  • 了解java

    目录 一 Java是什么 二 Java语言特性 1 简单性 2 面向对象 3 健壮性 4 多线程 5 可移植性 跨平台 三 Java两种核心机制 1 Java虚拟机 Java Virtal Machine 2 垃圾收集机制 Garbage
  • 【22-23 春学期】人工智能基础--AI作业10-经典卷积网络

    LeNet MNIST LeNet是由Yann LeCun及其合作者于1998年开发的一种具有开创性的卷积神经网络架构 它的设计目的是识别手写数字并执行图像分类任务 MNIST是一个用于手写数字识别的大型数据库 常被用于训练图像处理系统 L
  • VTK C++版本本地编译(含OOCT编译及创建项目)

    官方编译 以Linux为主 也有Window的处理方式 可以参考 讲述Windows环境下如何进行处理 前期准备 VTK ZIP 建议下载最新版 否则会出错 也可按照需要自行选择 CMake Visualstudio 版本无要求 我下载的是
  • [仿真]PMSM矢量控制——滑模速度环

    PMSM在Simulink下的FOC滑模速度环仿真 摘要 PMSM的FOC模型 PI速度环 PMSM的FOC模型 滑模速度环 关于滑模速度环改进的讨论 摘要 本文将通过一个PMSM在Simulink下的FOC仿真 来对比PI速度环和滑模速度
  • echarts地图的常见用法:基本使用、区域颜色分级、水波动画、区域轮播、给地图添加背景图片和图标、3d地图、飞线图

    前言 最近几天用echarts做中国地图 就把以前写的demo 在vue中实现中国地图 拿来用 结果到项目里直接报错了 后来发现是因为版本的问题 没办法只能从头进行踩坑了 以下内容基于vue3 和 echarts 5 32 常用的功能应该就
  • 在Unity中使用暂停的小技巧

    很多人在游戏中写暂停脚本的时候 经常会想到 Time timeScale 0 这种方法 但是 Time timeScale 只是能暂停部分东西 如果在 update 函数中持续改变一个物体的位置 这种位置改变貌似是不会受到暂停影响的 比如
  • pcl make failed - libSM.so:

    usr lib x86 64 linux gnu libSM so undefined reference to uuid generate UUID 1 0 usr lib x86 64 linux gnu libSM so undefi
  • php 接收及发送POST/GET请求 接收Xml格式数据POST请求及发送

    补充三点说明 1 Get请求数据根据索引关键字直接从全局变量 GET中获取 无需再调用urldecode解码 GET 数组 存储Get请求字符串 用 划分字符串为数组 数组元素的形式为 a b 2 POST请求字符串形式的数据同样可以根据索
  • SqlServer2008如何解析Json—附详细代码

    1 在数据库中创建存储过程parseJSON 具体文件请在如下链接下载 链接 https pan baidu com s 1a aNmSKk yvv9wQTP3DCsg pwd yxwx 提取码 yxwx 2 具体使用方法如下 DECLAR
  • jeckins安装以及构建github上的项目

    1 安装Jenkins 下载地址 http jenkins ci org 选择Windows的native package进行下载 安装过程与所有的windows安装程序一样 简单和傻瓜 不说了 安装完成之后会自动创建一个windows服务
  • VMware安装Windows Server 2003提示Operating System not found

    VMware安装Windows Server 2003提示Operating System not found 解决方法 首先 检查虚拟机设置里的设备状态的启动时连接是不是没勾选 还是不行的话 换一个ISO文件 正常的文件大小是600多兆
  • EMQ关闭MQTT客户端匿名认证

    本文默认已经安装并且开启emqttd 做的事是关闭MQTT客户端匿名认证并且通过username和passward认证 且有一定的Linux命令基础 环境 Ubuntu16 04 emq v3 2 1 正文 关闭匿名认证 emq安装时 默认
  • MATLAB数据预处理之缺失值插补

    文章目录 前言 1 加载原始数据 2 查找缺失值并填充缺失值 总结 2021年4月5日09 51 56更新 2021年5月18日10 46 15更新 2022年10月15日07 25 01更新 参考资料 前言 现实中采集的原始数据不一定满足
  • Apache HTTP Server 2.4.49 路径穿越漏洞复现及利用

    漏洞介绍 Apache HTTP Server是Apache基金会开源的一款流行的HTTP服务器 在其2 4 49版本中 引入了一个路径穿越漏洞 满足下面两个条件的Apache服务器将会受到影响 版本等于2 4 49 穿越的目录允许被访问
  • html任务3 模拟滚动条,vue3系列:vue3.0自定义虚拟滚动条V3Scroll

    Desc Vue3 0虚拟滚动条组件V3Scroll Time andy by 2021 01 About Q 282310962 wx xy190310 props Vue3 x自定义指令写法 监听DOM尺寸变化 directives r
  • 微信小程序之基础指南

    目录 1 申请账号 2 微信开发者工具 3 小程序代码构成 3 1 JSON配置 3 1 1 小程序全局配置app json 3 1 2 小程序页面配置 3 1 3 sitemap 配置 4 小程序框架 4 1 场景值 4 2 注册小程序
  • 探密微信小程序开发中的OpenlD

    说到微信小程序开发 我们不得不提到原生系统中自带的OPENiD 用户在跟公众号交互时 为了让程序识别用户的身份 需要有一个身份标识 出于对用户信息安全的考虑 保护用户隐私 微信没有暴露用户的微信号 而是对开发者提供OpenlD 它是一个由数
  • 数学建模(三)—— 自动化车床管理

    一 题目要求 二 相关的基础知识 2 1 正态分布的假设检验 2 2 正态分布的概率 三 问题分析 四 模型的建立与求解 4 1 数据处理及分析 4 2 问题一模型的建立与求解 4 2 1 问题一模型的建立 4 2 2 问题一模型的求解 4