<>2021五一杯数学建模A题

<>疫苗生产问题

新冠肺炎肆虐全球,给世界带来了深重的灾难。各国为控制疫情纷纷研发新冠疫苗。假定疫苗生产需要经过CJ1工位、CJ2工位、CJ3工位以及
CJ4工位等4个工艺流程。每个工艺流程一次性均能处理100剂疫苗,这100剂疫苗装进一个加工箱一起送进工位的设备进行处理。而且,只有按照CJ1-CJ2-CJ3-CJ4的顺序在4个工位都进行了加工以后,才算完成生产。为防止疫苗包装出现混乱,某疫苗生产公司生产部门规定,每个工位不能同时生产不同类型的疫苗,疫苗生产不允许插队,即进入第一个工位安排的每类疫苗的生产顺序一旦确定就要一直保持不变,而且前一种类型的疫苗离开某个工位后,后一种类型的疫苗才能进入这个工位。

现有YM1-YM10等10种不同类型的疫苗需要生产。为安全起见,每种类型每箱(内装疫苗100剂)疫苗在每个工位上均进行了50次模拟生产。发现,由于生产设备、疫苗纯化等多种原因,每个工位生产不同类型的每箱疫苗所需的时间并不稳定,详细的数据见附件1。
请建立数学模型,回答下列问题:

问题1:请对每箱疫苗在所有工位上的生产时间进行均值、方差、最值、概率分布等统计分析,以方便疫苗生产公司管理者能够直观的掌握每个工位生产疫苗的能力水平,为疫苗生产提供参考。

问题2:某国疫苗检测部门紧急需要YM1-YM10各100剂疫苗进行检测。为赶时间,疫苗生产公司需要对疫苗的生产顺序进行规划,以便能在最短时间内交付,以每个工位生产每箱疫苗平均时间为依据。请建立数学模型,制定疫苗生产顺序,初始时刻为00:00,计算生产总时间,并将结果填入表1。


问题3:在实际生产中,每个工位生产每种疫苗的所需时间具有随机性。如果要求该公司疫苗交货总时间比问题2的总时间缩短5%,请建立数学模型,以最大的概率完成这个任务为目标,确定生产顺序,并给出缩短的时间比例与最大概率之间的关系。

问题4:现在该疫苗生产公司接收了10种类型疫苗不同规模的生产任务(见附件2)。由于生产机器需要检修和维护,每个工位每天生产的时间不能超过16小时。为避免疫苗错误包装,要求每种类型疫苗的生产任务不可以拆分,即同种类型疫苗生产全部完成之后才能生产另外类型的疫苗。请建立数学模型,在可靠性为90%的前提下安排生产方案,至少多少天可以完成任务?

问题5:如果该疫苗生产公司计划在100天内选择部分数量的疫苗进行生产,每个工位每天生产的时间不能超过16小时,每种类型疫苗的生产任务可以适当拆分,即每种类型的疫苗可以只完成一部分。以最大销售额为目标,请建立数学模型安排生产计划。

<>模型的建立与求解(部分)(全部文档及程序见评论区)

<>问题一模型的建立与求解:

<>问题二模型的建立与求解:

<>问题三模型的建立与求解:

根据第一问所知,疫苗在每个生产线上的概率分布,都属于正态分布。也就是说,在上面的公式中,我们可以看做偏离系数τ符合正态分布。那么,仅需使用matlab
通过正态分布随机值生成,即可仿真出疫苗生产时间随机的情况。在第二问中,我们利用 Matlab
遍历了所有情况以用来检验结果。在本题中,我们可利用第二问的代码,根据题意添加条件即可。重复计算α次,通过第二问题的方法,算出每一次的最终时间
T,计数所有次数中最终时间 T 小于 95%最小时间的次数β,那么便可以求出该方案的近似概率 P=β/α

<>问题四与问题五模型的建立与求解:

<>程序代码如下:
A=[13.284 9.8708 20.0584 7.9886 8.77 19.0741 11.1601 16.0201 15.0146 12.9524
14.9621 19.9075 15.9726 9.9366 13.722 20.0943 16.4961 8.8274 12.0351 7.0109
19.846 17.9281 14.9703 5.9358 13.0052 14.1485 12.0136 18.1143 7.0419 9.0491
20.0129 18.9423 15.1163 18.1283 11.2494 13.8838 19.0876 16.8313 8.9496 16.0524 ]
; Y=[1.593979267 0.793439961 0.809040273 0.999774981 0.613356028 1.315886921
1.032082042 1.229791443 0.991973399 0.20800367 1.051043473 1.121878635
0.648764524 0.988125675 1.15461187 0.876216121 0.901073535 0.226411679
1.220333417 0.294923796 1.222915487 0.899972852 1.082819843 0.039376599
0.866617616 0.914373457 0.694742886 1.134968066 0.130686652 0.196699049
1.849122356 0.898665829 0.858227975 1.138880455 1.279170491 1.227569715
0.685524548 0.97057379 0.181558835 0.260809703]; x=[]; baogao=0; maxgailv100=[];
maxgailv95=[];maxgailv90=[];maxgailv85=[];maxgailv80=[];maxgailv75=[ ];
maxgailv70=[];maxgailv65=[];maxgailv60=[]; maxgailv55=[];maxgailv50=[]; T100=
191.7157; T95=191.7157*0.95; T90=191.7157*0.90; T85=191.7157*0.85; T80=191.7157*
0.80; T75=191.7157*0.75; T70=191.7157*0.70; T65=191.7157*0.65; T60=191.7157*0.60
; T55=191.7157*0.55; T50=191.7157*0.50; aa=perms(1:10); b=1814400; for j=1:
1814400 a(j,:)=aa(ZI(1,j),:); end for c=1:b count100=0; count95=0; count90=0;
count85=0; count80=0; count75=0; count70=0; count65=0; count60=0; count55=0;
count50=0; baogao=baogao+1 for i=1:500 q=normrnd(0,1,1,1); x=A+Y*q; x1=a(c,:);
T1=x(1,a(c,1)); T2=x(2,a(c,1))+x(1,a(c,1)); T3=T2+x(3,a(c,1)); T4=T3+x(4,a(c,1))
; for d=2:10 for e=1:4 if e==1 T1=T1+x(1,a(c,d)); end if e==2 T2a=T2+x(2,a(c,d))
; T2b=T1+x(2,a(c,d)); if T2a>=T2b T2=T2a; else T2=T2b; end end if e==3 T3a=T3+x(
3,a(c,d)); T3b=T2+x(3,a(c,d)); if T3a>=T3b T3=T3a; else T3=T3b; end end if e==4
T4a=T4+x(4,a(c,d)); T4b=T3+x(3,a(c,d)); if T4a>=T4b T4=T4a; else T4=T4b; end
end end endif T4<=T100 count100=count100+1; end if T4<=T95 count95=count95+1;
endif T4<=T90 count90=count90+1; end if T4<=T85 count85=count85+1; end if T4<=
T80 count80=count80+1; end if T4<=T75 count75=count75+1; end if T4<=T70 count70=
count70+1; end if T4<=T65 count65=count65+1; end if T4<=T60 count60=count60+1;
endif T4<=T55 count55=count55+1; end if T4<=T50 count50=count50+1; end end h100=
count100/500; maxgailv100(1,c)=h100; h95=count95/500; maxgailv95(1,c)=h95; h90=
count90/500; maxgailv90(1,c)=h90; h85=count85/500; maxgailv85(1,c)=h85; h80=
count80/500; maxgailv80(1,c)=h80; h75=count75/500; maxgailv75(1,c)=h75; h70=
count70/500; maxgailv70(1,c)=h70; h65=count65/500; maxgailv65(1,c)=h65; h60=
count60/500; maxgailv60(1,c)=h60; h55=count55/500; maxgailv55(1,c)=h55; h50=
count50/500; maxgailv50(1,c)=h50; end MAX100=max(maxgailv100) MAX95=max(
maxgailv95) MAX90=max(maxgailv90) MAX85=max(maxgailv85) MAX80=max(maxgailv80)
MAX75=max(maxgailv75) MAX70=max(maxgailv70) MAX65=max(maxgailv65) MAX60=max(
maxgailv60) MAX55=max(maxgailv55) MAX50=max(maxgailv50) 该题目的解答文档与程序: print(
"qq:917267119")

技术
©2019-2020 Toolsou All rights reserved,
在算法研究过程中如何进行算法创新七大排序算法(java代码)MYSQL中的索引与事务———javaweb(8)(面试必考)2022蓝桥杯JavaB组省赛试题网络安全-wifi攻防网络层协议——ICMP协议MySQL查询表中指定条件下的最新记录JavaSE笔记(一)Java基础语法mysql 查询条件之外的数据_mysql 查询符合条件的数据qt使用数据库sqlite