【B题成品论文已出】24数学建模国赛B题成品论文(附参考代码)免费分享
B题:生产过程中的决策问题
一、第一问
针对问题一,要求我们制定多种抽样方案,并利用区间估计的方法确定各个抽样方案的检测次数,在两种情形下确定抽样方法。这里可以选择的抽样方案有简单随机抽样(超几何分布中未知参数的精确置信区间_郭海兵),和小样本重复抽样(关于小样本不重复抽样总体频率的一种估计方法)等,以超几何分布为基础,选择合适的随机量作为次品率的估计,给出精确置信区间对估计精确度或者可能犯错误的程度有一个了解。有余力的话还可以考虑其他抽样方法。(不同抽样方法在我国谷物产量估计中的应用_杨钰莹)
超几何分布模型
超几何分布是指从一个有限母体中不放回抽取样本时,成功或失败的概率分布。假设母体中总共N个零配件,其中有M个次品,N-M个正品。抽取样本的数量为n。在抽取的样本中,次品的数量为X,其服从超几何分布。超几何分布的概率密度函数为:
其中,表示组合数。
1.基础抽样方法--简单随机抽样
随机抽样与次品率估计
为了估计次品率p=M/N,通过抽样,我们观测到样本中的次品数量k,样本次品率的估计值为:
为了构建置信区间,我们需要利用标准误差以及正态分布的临界值Z。(对于95%置信水平,Z=1.96;对于90%置信水平,Z=1.645)。因此,置信区间的计算公式为:
代入标准误差的表达式后,得到:
这个公式提供了次品率的置信区间,用于判断次品率是否超过0.1。
具体步骤:
为了更准确地估计次品率超过0.1的置信区间,可以通过调整样本大小n和观测到的次品数量k,并使用超几何分布的概率分布函数来进行精确计算。
1. 设定抽样大小n和观察到的次品数量ko。
2. 计算出样本次品率
3. 根据标准误差公式,计算出标准误差SE。
4.对于95%置信水平,Z=1.96;对于90%置信水平,Z=1.645。
5.若,则拒收这批零配件,否则接受这批零件。
2.减小样本量的抽样方法
以下是几种常见的抽样方法,可以有效减小抽样量:
(1) 顺序抽样(Sequential Sampling)
顺序抽样是一种在抽样过程中动态决定样本量的方法。具体操作为:
先抽取少量样本,进行检测。
根据初步结果,判断是否需要继续抽样。如果已经可以做出明确决策,则停止抽样;如果不能,则继续抽样,直到可以做出决定为止。
这种方法能够在较早阶段做出决策时大幅减少样本量,而在样本数量增加的情况下,也可以逐步提升检测的准确性。特别适合不确定性较高的情况。
(2) 双重抽样(Double Sampling)
双重抽样是一种分两阶段进行的抽样方法:
第一阶段抽取较少量的样本进行初步检测。
如果第一阶段样本的检测结果足够明确(如次品率远低于或高于标准),则可以直接做出接受或拒绝的决定。
如果第一阶段结果不明确,则进行第二阶段抽样,进一步检测更多样本来决定是否接收或拒绝。
这种方法在样品质量较好或较差的情况下,可以避免进行大量抽样,进而减少检测成本。
(3)贝叶斯抽样(Bayesian Sampling)
贝叶斯抽样利用事前知识(如供应商以往的历史质量数据)来优化抽样方案。通过结合历史数据和当前抽样数据,贝叶斯抽样可以动态调整抽样量,从而在同样的决策精度下,减少样本量。这种方法的优点是:
当对供应商的质量水平已有较强的先验认知时,能够降低样本需求。
当数据积累较多时,样本量需求逐渐减少。
(4)接受抽样(Acceptance Sampling)
接受抽样是一种基于统计学的抽样方法,旨在确定某个批次的产品是否可以接受。接受抽样有以下几种具体方法:
固定样本抽样:预先确定样本量,根据检测结果是否符合设定的接受标准,做出接收或拒绝的决策。
调整抽样计划:随着检测批次的增加,调整样本量。例如,当多次检测结果显示供应商的质量稳定时,可以减少样本量。
(5)分层抽样将总体按某种特征(如零配件的批次、来源或类别)分成不同的层,然后从每一层中分别抽样。通过分层抽样,企业可以确保每一层都得到充分的代表性,进而减少需要检测的总体样本量。这种方法的优点在于:
如果不同层次的产品质量差异较大,通过分层可以减少抽样误差,并因此减少样本量。
(6)加权抽样(Weighted Sampling)
加权抽样是一种基于样品的重要性进行抽样的方法。它根据不同零配件的质量风险或历史数据,赋予不同的抽样概率。风险较高的零配件可能需要抽取更多样本,而风险较低的零配件可以抽取较少样本。这样可以在整体上减少抽样量,但仍然确保高风险区域得到充分检测。
3. 顺序抽样方法
从一批配件中逐步抽样,直到有足够的证据确定次品率是否超过0.1,以下是顺序抽样过程中的示例计算:
第一轮抽样:抽取n1个零件,观测到次品数量k1.
二、第二问
生产N件产品的过程中,涉及到零配件采购、检测、装配、成品检测、不合格品调换与拆解等多个环节。我们将通过数学建模来分析每个环节的成本,并通过 MATLAB 程序实现最小生产成本的计算。
注意步骤(3)中关键条件:对拆解后的零配件,重复步骤(1)和步骤(2)的处理方式,我们选择不合格成品经过拆解,可以按照零件购买价格的60%进行回收的方式进行处理。
这里有两个思路:固定生产的成品数,或者固定成功生产的产品数,任选其一即可。
1.定义参数
基本参数:
N:生产的成品数。
2.成本公式
2.1零配件采购和检测成本
1. 零配件1,2的采购和检测:
采购数量:
采购成本:
检测成本:
3.2 成品的装配和检测成本
成品装配成本:
成品检测成本:
3.3调换损失
不检测成品时,次品将讲入市场,造成调换损失:
3.4 拆解成本
不合格成品经过拆解,可以按照零件购买价格的60%进行回收:
其中,成品的合格率:
总成本公式
总成本包括零配件的采购和检测成本、成品装配和检测成本、调换损失和拆解成本:
【Matlab代码】
function total_cost = production_cost(N, a11, a12, a13, a21, a22, a31, a32, a33, c1, c2, c3, c4, detect_part1, detect_part2, detect_final, disassemble)
% 零配件1检测和采购
part1_quality_rate = (1 - a11 * (1 - detect_part1)); % 零配件1合格率
part1_quantity = N / part1_quality_rate; % 零配件1采购数量
part1_purchase_cost = part1_quantity * a21; % 零配件1采购成本
part1_testing_cost = detect_part1 * (N / (1 - a11)) * a31; % 零配件1检测成本
% 零配件2检测和采购
part2_quality_rate = (1 - a12 * (1 - detect_part2)); % 零配件2合格率
part2_quantity = N / part2_quality_rate; % 零配件2采购数量
part2_purchase_cost = part2_quantity * a22; % 零配件2采购成本
part2_testing_cost = detect_part2 * (N / (1 - a12)) * a32; % 零配件2检测成本
% 成品装配成本
assembly_cost = N * c4; % 装配成本
% 成品检测成本
final_testing_cost = detect_final * N * a33;
% 调换损失
replacement_cost = (1 - detect_final) * N * a13 * c2;
% 成品合格率
product_quality_rate = part1_quality_rate * part2_quality_rate * (1 - a13 * (1 - detect_final));
% 拆解成本和回收收益
scrap_cost = disassemble * N * (1 - product_quality_rate) * c3;
scrap_revenue = disassemble * N * (1 - product_quality_rate) * 0.6 * c1;
% 总成本计算
total_cost = part1_purchase_cost + part2_purchase_cost + part1_testing_cost + part2_testing_cost + ...
assembly_cost + final_testing_cost + replacement_cost + scrap_cost - scrap_revenue;
end