【B题第三套完整论文已出】2024数模国赛B题第三套完整论文+可运行代码参考(无偿分享)

本文主要是介绍【B题第三套完整论文已出】2024数模国赛B题第三套完整论文+可运行代码参考(无偿分享),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

基于多阶段优化的电子产品质量控制与成本管理研究

摘要

随着现代制造业和智能化生产的发展,质量控制和生产优化问题成为工业管理中的重要研究课题。本文针对电子产品生产过程中质量控制和成本优化中的问题,基于系统优化和决策分析思想,通过确定检测成本、次品率、装配成本等指标,以最大化利润和最小化生产成本为目标建立了多阶段质量控制优化模型,并使用穷举算法对模型进行求解。

针对问题一,本文通过对零配件的质量检测和生产决策进行分析,建立了基于抽样检测的质量控制模型。通过计算不同检测策略下的总成本,选择最优策略以最小化生产损失。

针对问题二,本文进一步扩展了检测策略至多道工序,综合考虑各个零配件、半成品和成品的次品率,建立了多阶段决策模型。通过优化检测和拆解策略,实现了多环节的质量控制优化。

针对问题三,本文针对多阶段生产中的复杂决策,考虑到各零配件和成品的多种组合策略,建立了全面的质量与成本优化模型。使用穷举法找出最优检测和处理策略组合,最大化了生产收益。

针对问题四,本文基于前述模型,并结合实际生产中的抽样检测数据,进一步验证了模型的有效性。通过气泡图等可视化方法,直观展示了不同策略组合下的收益情况,帮助企业优化决策。

最后,我们对提出的模型进行了全面的评价:本文的模型贴合实际,能合理解决提出的问题,具有实用性强、算法效率高等特点。该模型在生产过程优化、成本控制和质量管理方面也能得到广泛应用。

关键词: 质量控制优化  生产成本最小化  多阶段决策模型  检测与拆解策略  成本收益分析

一、问题重述

1.1问题背景

随着电子产品制造业的快速发展,市场对产品质量的要求不断提高,生产企业面临着严峻的质量控制和成本管理挑战。在制造过程中,各零配件的质量直接影响到最终成品的合格率。为了满足市场需求并控制生产成本,企业需要在生产过程中对各零配件进行质量检测,同时对检测出的不合格产品进行合理处理(如拆解或丢弃)。如何优化检测和处理策略,从而在保证产品质量的同时实现成本最小化,已成为现代制造业中的重要研究课题。

1.2问题提出

问题一:企业需要在供应商声称零配件次品率不超过某一标准的前提下,通过抽样检测来决定是否接受该批次零配件。企业希望在较高的信度水平下做出正确的接收或拒收决策,从而减少不合格零配件对生产的影响。问题的核心在于如何在控制检测成本的同时,确保成品的质量合格率达到预期。

问题二:在多道工序的生产过程中,各个零配件和半成品的次品率对最终成品的质量有显著影响。企业需要对每个零配件和成品进行检测,并决定是否对不合格产品进行拆解,以回收可用的零配件。如何综合考虑检测和拆解的成本与收益,建立优化模型来指导生产,是问题二的主要研究内容。

问题三:企业的生产过程中涉及多个零配件和复杂的决策过程,需要针对每个生产阶段的检测和拆解策略进行优化。问题三要求构建一个全面的质量与成本优化模型,通过系统分析各零配件和成品的次品率与检测成本的关系,确定最优的检测和处理策略组合,以最大化企业的整体收益。

问题四:基于抽样检测获得的实际次品率数据,企业需要重新评估和优化生产过程中的决策策略。问题四要求在前述模型的基础上,结合真实检测数据,验证优化策略的有效性,并通过可视化方法展示不同策略组合下的收益情况。目标是进一步细化和调整检测与拆解策略,以更好地适应实际生产环境,提升企业的决策效率和生产收益。

二、问题分析

问题一:企业在生产电子产品过程中,需要对供应商提供的两种关键零配件进行质量检测,以保证最终装配的成品质量符合市场需求。在装配成品的过程中,任何一个零配件的不合格都会导致成品的不合格。为了减少检测成本,企业希望通过抽样检测来判断零配件的质量是否符合供应商的标称值。具体来说,企业面临的决策问题是:在供应商声称零配件次品率不超过10%的前提下,通过抽样检测,在95%信度下认定次品率超过标称值时拒收该批次零配件;在90%信度下认定次品率不超过标称值时接收该批次零配件。

问题二:企业的生产过程涉及多个零配件和多道工序,每道工序都会影响最终成品的质量和合格率。每个零配件都有一定的次品率,而各个零配件的质量决定了装配成品的整体质量。企业面临的决策是:是否对每个零配件和半成品进行检测,以及是否对装配好的成品进行检测。同时,在检测出不合格成品时,企业需要决定是否拆解成品以回收可用的零配件。目标是通过合理的检测和拆解策略,降低次品率,减少次品对生产和市场的影响。

问题三:在多阶段的生产过程中,企业需要对多个零配件进行检测和处理,以保证成品的合格率和市场竞争力。问题三要求企业对每个生产阶段的检测和处理策略进行全面优化。企业面临的关键决策是:在每个阶段是否对零配件、半成品和成品进行检测,是否对检测出的不合格产品进行拆解或处理。目标是通过建立一个全面的质量与成本优化模型,最大化企业的整体收益,同时有效控制生产成本。

问题四:基于实际生产中的抽样检测数据,企业需要进一步优化之前建立的质量控制模型。问题四要求企业利用实际次品率数据,重新评估生产过程中的检测和处理决策,并通过可视化方法展示不同策略组合下的收益情况。目标是结合真实数据验证模型的有效性,并调整优化策略,以更好地适应实际生产环境,提升决策效率和生产收益。

三、模型假设与符号说明

3.1基本模型假设
  • 独立检测假设:所有零配件、半成品和成品的检测过程相互独立,检测结果不会受到其他零配件或工序的影响。每个零配件的质量检测仅取决于自身的质量状态。
  • 检测准确性假设:检测设备和方法能够准确判定零配件、半成品和成品的合格与否,不存在误判或漏判的情况。检测合格的产品为真正的合格品,检测出的次品为真正的不合格品。
  • 成本固定假设:所有检测、装配、拆解和调换的成本为固定值,不随生产数量、市场波动或其他因素变化。各环节的成本数据是已知的且稳定的。
  • 次品率降低假设:检测能够显著降低零配件的次品率(假设检测降低90%),从而提升成品的合格率。检测不改变零配件的本质,只是筛选出不合格品。
  • 拆解回收假设:拆解过程不会损坏零配件,拆解后的零配件可以被重新使用且质量状态与原始一致。所有被拆解的零配件都可以再次进入装配流程。
  • 市场价格固定假设:成品的市场售价和次品导致的调换损失均为固定值,不考虑市场价格波动或需求变化对企业收益的影响。
  • 次品率传递假设:半成品和成品的次品率由其构成零配件的次品率决定,最终成品的合格率为各零配件合格率的乘积。次品率的传递遵循简单的概率叠加原则,不考虑复杂的交互影响。
3.2符号说明 

 

四、模型建立与求解

4.1问题一模型建立与求解
4.1.1模型选择

我们选择 假设检验 作为主要的统计方法。通过假设检验,可以在统计意义上检验零配件的次品率是否超过标称值。假设检验的设定如下:

零假设  H0 : p ≤0.10(即零配件的真实次品率不超过标称值)。
备择假设 H1 : p >0.10(即零配件的真实次品率超过标称值)。

我们将采用右尾检验来检验次品率是否显著大于标称值。

4.1.2样本量计算

样本量的计算是模型建立的关键步骤。为了保证检验的有效性,我们需要计算在给定信度下(95% 和 90%)能够区分是否接受零假设所需的最小样本量。

其中:

Za/2 为标准正态分布的临界值,确定于所选的信度水平。p 为供应商的标称次品率(10%)。E 为可以接受的误差幅度(设定为5%)。

具体计算

4.1.3决策规则与临界值确定

根据样本量的计算结果,确定拒收和接收的具体临界值:

95% 信度拒收决策临界值  k95:我们需要找到样本中次品数 X 的临界值,使得 P(X > k95 )≤ 0.05。
90% 信度接收决策临界值 90 m :我们需要找到样本中次品数 X 的临界值,使得 P(X ≤ m95 ) ≥ 0.90。

4.1.4结果分析

从以上的计算和图形结果中,我们得出:

95%信度下:样本量为138。当检测出的次品数大于临界值 $k_{95}$ 时,拒收该批零配件,以防止高次品率对企业的生产和声誉造成影响。

90%信度下:样本量为108。当检测出的次品数小于或等于临界值 $m_{90}$ 时,接收该批零配件,以减少不必要的拒收带来的额外采购成本。

这些决策标准帮助企业在质量控制和成本控制之间取得平衡,通过科学的抽样检测策略保障生产的高效性和成品的合格率。

4.1.5参考代码
import numpy as np
import scipy.stats as stats
import matplotlib.pyplot as pltdef calculate_sample_size(p, alpha, error_margin):# 计算样本量z_score = stats.norm.ppf(1 - alpha / 2)sample_size = (z_score ** 2 * p * (1 - p)) / (error_margin ** 2)return int(np.ceil(sample_size))# 设置参数
p = 0.10  # 标称次品率
error_margin = 0.05  # 允许误差
alpha_95 = 0.05  # 95% 信度
alpha_90 = 0.10  # 90% 信度# 计算样本量
n_95 = calculate_sample_size(p, alpha_95, error_margin)
n_90 = calculate_sample_size(p, alpha_90, error_margin)print(f"在95%信度下所需样本量: {n_95}")
print(f"在90%信度下所需样本量: {n_90}")# 计算95%信度下的拒收概率
x = np.arange(0, n_95 + 1)  # 样本次品数
prob_95 = 1 - stats.binom.cdf(x, n_95, p)  # 拒收概率# 找到拒收的临界值
k_95 = np.argmax(prob_95 < 0.05)
print(f"在95%信度下拒收临界值: {k_95}")# 计算90%信度下的接收概率
x_90 = np.arange(0, n_90 + 1)  # 样本次品数
prob_90 = stats.binom.cdf(x_90, n_90, p)  # 接收概率# 找到接收的临界值
m_90 = np.argmax(prob_90 > 0.90)
print(f"在90%信度下接收临界值: {m_90}")# 可视化
plt.figure(figsize=(12, 6))
plt.plot(x, prob_95, label='95% 信度 - 拒收概率', marker='o')
plt.axhline(0.05, color='red', linestyle='--', label='95% 拒收标准线')
plt.axvline(k_95, color='green', linestyle='--', label=f'拒收临界值: {k_95}')plt.plot(x_90, prob_90, label='90% 信度 - 接收概率', marker='x')
plt.axhline(0.90, color='blue', linestyle='--', label='90% 接收标准线')
plt.axvline(m_90, color='orange', linestyle='--', label=f'接收临界值: {m_90}')plt.xlabel('样本次品数')
plt.ylabel('概率')
plt.title('不同信度下的拒收和接收概率')
plt.legend()
plt.grid(True)
plt.show()

可视化

4.2问题二模型建立与求解

4.2.1求解思路

为了优化企业在生产过程中的决策,我们需要构建一个数学模型来最小化总成本。总成本包括检测成本、装配成本、丢弃成本、拆解成本和调换损失。这些成本的计算需要考虑是否对零配件和成品进行检测,以及是否对不合格成品进行拆解。模型的核心在于找到最佳的检测和处理策略组合,以最小化总成本。

4.2.2目标函数

企业的目标是最小化生产过程中总成本。目标函数可以表示为:

其中,各项成本的具体表达式如下:

1.检测成本 C jiance :

2.装配成本 C zhuangpei :

3.丢弃成本 C diuqi:

丢弃成本包括不合格零配件和不合格成品的丢弃成本。

对于不合格零配件:

(1− x ), (1− x ) 表示未检测的零配件会直接进入装配环节,因此有可能导致成品不合格。pD1,pD2 分别为零配件 1 和零配件 2 的次品率。CP1, CP2 分别为零配件 1 和零配件 2 的购买成本。

对于不合格成品:

4.拆解成本...

5.调换损失...

4.2.3决策变量及约束条件

决策变量包括:

每个变量的取值为0或1,表示是否进行相应的操作。

约束条件:

总成本需在企业预算允许范围内。

4.2.4模型求解

我们通过穷举所有可能的策略组合,计算每种策略组合下的总成本,并选取总成本最低的策略组合作为最优解。由于变量数目较少(四个二值变量,共2^4=16种组合),穷举法是可行且直观的方法。

4.2.5结果分析

通过运行上述代码,我们可以观察到不同检测和处理策略下的总成本。条形图展示了各个策略组合的总成本,从中可以直观地看出哪种组合策略能够最小化总成本。

  1. 在检测成本较高时,减少不必要的检测可以降低总成本。
  2. 对不合格成品的拆解处理虽然有一定成本,但可以回收部分零配件,从而降低总体损失。
  3. 调换损失较高时,应优先考虑检测成品以减少不合格品

以下代码实现了上述求解过程,并通过可视化展示了不同策略组合下的总成本。

4.2.6参考代码
import numpy as np
import matplotlib.pyplot as plt# 定义成本参数
C_D1 = 2   # 零配件 1 的检测成本
C_D2 = 3   # 零配件 2 的检测成本
C_DF = 6   # 成品的检测成本
C_T = 5    # 拆解费用
C_R = 10   # 调换损失
C_P1 = 4   # 零配件 1 的购买成本
C_P2 = 18  # 零配件 2 的购买成本
C_A = 6    # 装配成品的成本
P_S = 56   # 成品的市场售价# 定义次品率
p_D1 = 0.10  # 零配件 1 的次品率
p_D2 = 0.10  # 零配件 2 的次品率
p_F = 0.10   # 成品的次品率# 决策变量组合 (x1, x2, xF, xT)
strategies = [(x1, x2, xF, xT) for x1 in [0, 1] for x2 in [0, 1] for xF in [0, 1] for xT in [0, 1]]# 计算总成本的函数
def calculate_total_cost(x1, x2, xF, xT):C_detection = x1 * C_D1 + x2 * C_D2 + xF * C_DFC_assembly = C_AC_discard_parts = (1 - x1) * p_D1 * C_P1 + (1 - x2) * p_D2 * C_P2C_discard_final = xF * p_F * (C_P1 + C_P2 + C_A)C_dismantle = xT * C_TC_exchange = (1 - xF) * p_F * C_Rtotal_cost = C_detection + C_assembly + C_discard_parts + C_discard_final + C_dismantle + C_exchangereturn total_cost# 计算每种策略下的总成本
costs = [calculate_total_cost(x1, x2, xF, xT) for (x1, x2, xF, xT) in strategies]# 策略标签
labels = [f"(x1={x1}, x2={x2}, xF={xF}, xT={xT})" for (x1, x2, xF, xT) in strategies]# 可视化展示
plt.figure(figsize=(14, 8))
plt.bar(labels, costs, color='skyblue')
plt.xticks(rotation=45, ha='right')
plt.xlabel('策略组合 (x1, x2, xF, xT)')
plt.ylabel('总成本 (元)')
plt.title('不同策略组合下的总成本比较')
plt.grid(axis='y')
plt.show()

 

4.3问题三模型建立与求解

4.3.1模型建立
4.3.2目标函数

企业的目标是最大化生产过程中的利润,目标函数为:

其中,各项成本和收益的计算如下:

 4.3.3决策变量及约束条件
  • 决策变量:是否检测零配件和是否拆解不合格成品。
  • 约束条件:所有决策变量只能取0或1。
4.3.4优化策略

通过穷举所有可能的策略组合,计算每种策略下的利润,并选择利润最大的策略作为最优策略。代码通过循环计算每个策略组合的利润,输出结果展示不同决策组合下的收益变化。

4.3.5参考代码
import itertools
import matplotlib.pyplot as plt# 定义各情形的参数
situations = [{"part_defects": [0.1, 0.1, 0.1, 0.1], "detect_costs": [2, 3, 4, 1],"assembly_cost": 8, "market_price": 100, "swap_cost": 10, "dismantle_cost": 5},{"part_defects": [0.2, 0.15, 0.1, 0.05], "detect_costs": [1, 2, 3, 4],"assembly_cost": 10, "market_price": 120, "swap_cost": 15, "dismantle_cost": 8},{"part_defects": [0.05, 0.05, 0.05, 0.05], "detect_costs": [3, 3, 3, 3],"assembly_cost": 6, "market_price": 80, "swap_cost": 20, "dismantle_cost": 7},{"part_defects": [0.15, 0.1, 0.2, 0.1], "detect_costs": [2, 1, 4, 2],"assembly_cost": 7, "market_price": 90, "swap_cost": 25, "dismantle_cost": 6},{"part_defects": [0.1, 0.2, 0.15, 0.1], "detect_costs": [1, 2, 1, 3],"assembly_cost": 9, "market_price": 110, "swap_cost": 30, "dismantle_cost": 10},
]# 定义所有可能的决策组合 (检测/不检测和拆解/不拆解)
decisions = list(itertools.product([0, 1], repeat=8))  # 0-不检测/不拆解,1-检测/拆解def calculate_profit(decision, situation):detect_decisions = decision[:4]  # 前4个为检测决策dismantle_decisions = decision[4:]  # 后4个为拆解决策part_defects = situation["part_defects"]detect_costs = situation["detect_costs"]assembly_cost = situation["assembly_cost"]market_price = situation["market_price"]swap_cost = situation["swap_cost"]dismantle_cost = situation["dismantle_cost"]total_defect = 1  # 初始合格率为1# 计算检测后的次品率for i, detect in enumerate(detect_decisions):if detect:  # 如果检测该零配件part_defects[i] *= 0.1  # 假设检测能将次品率降低90%if dismantle_decisions[i]:  # 如果选择拆解total_defect *= (1 - part_defects[i])  # 叠加合格率else:total_defect *= (1 - part_defects[i])  # 如果不拆解仍需考虑次品率final_defect_rate = 1 - total_defect  # 最终成品的次品率# 计算最终的收益revenue = (1 - final_defect_rate) * market_price  # 售出合格成品的收益loss = final_defect_rate * swap_cost + dismantle_cost * sum(dismantle_decisions)  # 次品的损失total_cost = sum(detect_costs[i] * detect_decisions[i] for i in range(4)) + assembly_cost + lossprofit = revenue - total_costreturn profit# 分别展示各情形下的折线图
for idx, situation in enumerate(situations, 1):profits = []for decision in decisions:profit = calculate_profit(decision, situation)profits.append(profit)# 绘制每个情形的折线图plt.figure(figsize=(10, 6))plt.plot(range(len(decisions)), profits, marker='o')plt.xlabel('决策组合索引')plt.ylabel('收益')plt.title(f'情形 {idx} 的不同决策收益对比')plt.xticks([])  # 去除决策组合的标签plt.grid(axis='y', linestyle='--', alpha=0.7)plt.tight_layout()plt.show()

 4.3.5结果分析

代码运行后,我们得到了各个情形下不同决策组合的收益折线图。每条线代表一个情形的不同决策组合下的收益变化,横坐标为决策组合的索引,纵坐标为对应的收益。

分析要点:

  • 收益波动:通过观察折线图,收益最高的决策组合对应最优检测和拆解策略。
  • 成本与收益的平衡:在检测成本较高时,减少不必要的检测决策可能会提升总利润;在次品率较高的情形中,合理的拆解策略能有效降低损失。
  • 最优策略识别:从折线图中选择收益最高的点对应的策略组合,可以指导企业在实际生产中如何选择检测和拆解的最佳策略。

4.4问题四模型建立与求解

4.4.1模型建立
4.4.2目标函数

...

这篇关于【B题第三套完整论文已出】2024数模国赛B题第三套完整论文+可运行代码参考(无偿分享)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1146096

相关文章

Ilya-AI分享的他在OpenAI学习到的15个提示工程技巧

Ilya(不是本人,claude AI)在社交媒体上分享了他在OpenAI学习到的15个Prompt撰写技巧。 以下是详细的内容: 提示精确化:在编写提示时,力求表达清晰准确。清楚地阐述任务需求和概念定义至关重要。例:不用"分析文本",而用"判断这段话的情感倾向:积极、消极还是中性"。 快速迭代:善于快速连续调整提示。熟练的提示工程师能够灵活地进行多轮优化。例:从"总结文章"到"用

大模型研发全揭秘:客服工单数据标注的完整攻略

在人工智能(AI)领域,数据标注是模型训练过程中至关重要的一步。无论你是新手还是有经验的从业者,掌握数据标注的技术细节和常见问题的解决方案都能为你的AI项目增添不少价值。在电信运营商的客服系统中,工单数据是客户问题和解决方案的重要记录。通过对这些工单数据进行有效标注,不仅能够帮助提升客服自动化系统的智能化水平,还能优化客户服务流程,提高客户满意度。本文将详细介绍如何在电信运营商客服工单的背景下进行

如何用Docker运行Django项目

本章教程,介绍如何用Docker创建一个Django,并运行能够访问。 一、拉取镜像 这里我们使用python3.11版本的docker镜像 docker pull python:3.11 二、运行容器 这里我们将容器内部的8080端口,映射到宿主机的80端口上。 docker run -itd --name python311 -p

2024年流动式起重机司机证模拟考试题库及流动式起重机司机理论考试试题

题库来源:安全生产模拟考试一点通公众号小程序 2024年流动式起重机司机证模拟考试题库及流动式起重机司机理论考试试题是由安全生产模拟考试一点通提供,流动式起重机司机证模拟考试题库是根据流动式起重机司机最新版教材,流动式起重机司机大纲整理而成(含2024年流动式起重机司机证模拟考试题库及流动式起重机司机理论考试试题参考答案和部分工种参考解析),掌握本资料和学校方法,考试容易。流动式起重机司机考试技

【专题】2024飞行汽车技术全景报告合集PDF分享(附原数据表)

原文链接: https://tecdat.cn/?p=37628 6月16日,小鹏汇天旅航者X2在北京大兴国际机场临空经济区完成首飞,这也是小鹏汇天的产品在京津冀地区进行的首次飞行。小鹏汇天方面还表示,公司准备量产,并计划今年四季度开启预售小鹏汇天分体式飞行汽车,探索分体式飞行汽车城际通勤。阅读原文,获取专题报告合集全文,解锁文末271份飞行汽车相关行业研究报告。 据悉,业内人士对飞行汽车行业

活用c4d官方开发文档查询代码

当你问AI助手比如豆包,如何用python禁止掉xpresso标签时候,它会提示到 这时候要用到两个东西。https://developers.maxon.net/论坛搜索和开发文档 比如这里我就在官方找到正确的id描述 然后我就把参数标签换过来

高效录音转文字:2024年四大工具精选!

在快节奏的工作生活中,能够快速将录音转换成文字是一项非常实用的能力。特别是在需要记录会议纪要、讲座内容或者是采访素材的时候,一款优秀的在线录音转文字工具能派上大用场。以下推荐几个好用的录音转文字工具! 365在线转文字 直达链接:https://www.pdf365.cn/ 365在线转文字是一款提供在线录音转文字服务的工具,它以其高效、便捷的特点受到用户的青睐。用户无需下载安装任何软件,只

poj 1258 Agri-Net(最小生成树模板代码)

感觉用这题来当模板更适合。 题意就是给你邻接矩阵求最小生成树啦。~ prim代码:效率很高。172k...0ms。 #include<stdio.h>#include<algorithm>using namespace std;const int MaxN = 101;const int INF = 0x3f3f3f3f;int g[MaxN][MaxN];int n

AI hospital 论文Idea

一、Benchmarking Large Language Models on Communicative Medical Coaching: A Dataset and a Novel System论文地址含代码 大多数现有模型和工具主要迎合以患者为中心的服务。这项工作深入探讨了LLMs在提高医疗专业人员的沟通能力。目标是构建一个模拟实践环境,人类医生(即医学学习者)可以在其中与患者代理进行医学

计算机毕业设计 大学志愿填报系统 Java+SpringBoot+Vue 前后端分离 文档报告 代码讲解 安装调试

🍊作者:计算机编程-吉哥 🍊简介:专业从事JavaWeb程序开发,微信小程序开发,定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事,生活就是快乐的。 🍊心愿:点赞 👍 收藏 ⭐评论 📝 🍅 文末获取源码联系 👇🏻 精彩专栏推荐订阅 👇🏻 不然下次找不到哟~Java毕业设计项目~热门选题推荐《1000套》 目录 1.技术选型 2.开发工具 3.功能