【2024数模国赛赛题思路公开】国赛B题第二套思路丨附可运行代码丨无偿自提

本文主要是介绍【2024数模国赛赛题思路公开】国赛B题第二套思路丨附可运行代码丨无偿自提,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

2024年数模国赛B题解题思路

 生产过程中的决策问题

一、问题1解析

问题1的任务是为企业设计一个合理的抽样检测方案,基于少量样本推断整批零配件的次品率,帮助企业决定是否接收供应商提供的这批零配件。具体来说,企业需要依据两个不同置信度(95% 和 90%)来判断次品率是否超过或不超过标称值(10%)。

供应商声称的次品率为不超过10%,但企业需要通过抽样检测来验证实际次品率是否符合此要求。通过设计合理的抽样方案,企业可以在不同的置信度下做出关于是否接受这批零配件的决策。

情况1:在95%的置信水平下,如果次品率超过标称值(10%),则拒收该批次零配件。

情况2:在90%的置信水平下,如果次品率不超过标称值(10%),则接收该批次零配件。

抽样检测模型

本问题可以使用统计学中的假设检验方法进行抽样检测。具体步骤如下:

1. 假设检验模型

我们可以使用二项分布或正态分布来描述抽样的过程,具体步骤如下:

零假设H0: 次品率等于10%,即 p = 0.1 。

备择假设 H1 : 次品率不同于10%。

在情况1中,我们希望拒收零配件,意味着在95%的置信水平下拒绝H0 ,即认为次品率超过10%。

在情况2中,我们希望接收零配件,意味着在90%的置信水平下不拒绝H0,即认为次品率不超过10%。

2. 检验统计量

次品率的检测可以基于样本中不合格品的比例。假设抽取的样本量为n,不合格品的数量为X,则样本次品率为:

根据二项分布,假设次品率为p,则有:

当n 较大时,二项分布可以近似为正态分布:

其中p0=0.1为标称次品率。

3. 置信区间

根据置信水平的不同,利用正态分布的累积概率可以计算出相应的抽样量 n。对于95%和90%的置信水平,分别使用:

对于95%的置信水平:使用标准正态分布的临界值Z0.95=1.645。

对于90%的置信水平:使用标准正态分布的临界值Z0.90=1.28。

我们需要确定在给定的置信度下,样本次品率是否超出10%。

4. 抽样次数n的计算

情况1:在95%的置信度下,假设次品率大于10%,我们需要拒收零配件。可以根据公式推导出所需的最小样本量n,以保证检验的灵敏度:

通过该公式,我们可以求得n 值。

情况2:在90%的置信度下,假设次品率不超过10%,我们可以接收零配件。对应的样本量n 由:

在这两个条件下,我们可以分别计算所需的样本量n,并根据抽样的结果做出决策。

5. 具体计算步骤

(1) 设定假设:基于样本中观测到的次品率,计算标准差并应用正态分布近似。

(2) 计算临界值:根据给定的置信水平(95%和90%)计算对应的Z值。

(3) 确定抽样次数:使用上述公式确定样本量 n,使得能够满足所需的置信度要求。

(4) 结果分析:在样本量n 下,根据实际检测结果判断是否接收或拒收该批次零配件。

6.总结(问题一总结)

问题1的核心在于为企业设计一个基于抽样检测的方案,以有效评估供应商所提供的零配件是否符合次品率不超过10%的标称值。该问题的解决过程可以通过统计学中的假设检验和置信区间的概念来实现。在不同置信水平(95%和90%)下,企业需要判断是否接收这批零配件。具体而言,若在95%的置信水平下,检测显示次品率超过10%,则企业应拒收该批次零配件;在90%的置信水平下,若次品率未超过10%,则可接收该批次零配件。

为了实现这一目的,本问题采用了假设检验的统计学模型。零假设(H0H0)设定为次品率等于10%,而备择假设(H1H1)则表示次品率不同于10%。通过对抽样结果进行假设检验,企业可以判断是否接受或拒绝这批零配件。使用二项分布或正态分布对样本次品率进行建模,使得在大样本条件下的样本分布可以近似为正态分布。

在计算过程中,关键在于确定样本量 nn 以确保在不同的置信水平下能有效进行检验。样本量的计算基于正态分布的标准化统计量,通过公式推导出最小的样本量,使得在给定的置信水平下,能够做出关于次品率是否超出标称值的判断。

问题1通过假设检验和置信区间分析,成功构建了企业在不同置信水平下的抽样检测方案。该方案能够在减少检测成本的前提下,准确评估供应商提供的零配件质量是否符合企业的标准,帮助企业做出科学决策。

二、问题二解析

对于问题2,题目要求对企业的生产过程中各个阶段做出决策,涉及是否对零配件和成品进行检测,以及如何处理不合格产品。这是一个生产过程中的多阶段决策问题,我们可以通过成本分析、次品率计算以及决策树模型来为企业制定合理的检测和处理策略。以下是解题思路的具体展开:

企业生产某种电子产品,使用两种零配件(零配件1和零配件2)进行装配,最终产生成品。在整个过程中,企业需要做出以下几项决策:

(1)零配件检测:是否对零配件1和零配件2进行检测,不检测的零配件直接进入装配环节。

(2)成品检测:是否对成品进行检测,检测合格的成品进入市场。

(3)不合格成品处理:是否对不合格成品进行拆解,拆解后可以回收合格的零配件并重新使用,或者直接丢弃。

(4)用户退货处理:用户退回不合格成品后,企业承担物流、信誉等成本,需要决定是否再次拆解。

1. 模型设计

决策的关键是考虑检测成本、装配成本、次品率、调换损失和拆解费用之间的权衡,以此来做出最优决策。

决策模型设计:

我们可以采用决策树模型,考虑每个环节可能的决策及其结果。每个决策的目标是最小化总成本,这包括检测成本、次品率引起的损失(包括调换损失和拆解费用)等。

步骤1:零配件检测决策

检测零配件1或零配件2可以减少进入装配环节的不合格零配件,从而减少成品的次品率。

成本与收益分析:检测成本与不检测导致的次品率的损失之间的平衡。检测的目的在于减少不合格成品的数量,因此要比较检测成本与由于不检测导致更多不合格成品的调换损失、拆解费用等。

步骤2:成品检测决策

成品检测可以避免不合格成品直接进入市场,减少调换损失。

成本与收益分析:成品检测的成本要与调换损失、企业信誉的损失相权衡。检测合格的成品可以直接进入市场,而不合格的成品要么拆解、要么丢弃。

步骤3:不合格成品拆解决策

不合格成品的拆解会产生额外的拆解费用,但拆解出的零配件可以重复使用。

成本与收益分析:拆解费用与再次利用合格零配件带来的收益之间的平衡。如果拆解出的零配件价值较大,则拆解是合理的选择;否则可以考虑直接丢弃。

步骤4:退货产品处理

退货处理涉及到物流成本和企业信誉的损失,对于退回的不合格成品,企业要决定是否进行拆解。

成本与收益分析:与前面类似,考虑调换损失与拆解费用之间的平衡。

2. 模型构建:

(1) 设定变量:

Cd:检测成本

Ca:装配成本

Ct:拆解费用

Cr:调换损失

p1、p2:零配件1和零配件2的次品率

pf成品的次品率(基于零配件次品率计算)

(2) 目标函数:最小化总成本

   总成本 = 检测成本 + 装配成本 + 不合格产品处理成本 + 调换损失 + 拆解费用

(3)约束条件:

 零配件次品率、成品次品率以及检测、拆解成本等实际情况构成了约束条件。

不同情形下的决策方案:

表1中的不同情形(如零配件次品率、装配成本、检测成本等)会影响到每个决策的选择。具体方案可以基于以下原则:

1. 检测成本 vs 不检测损失:当检测成本低于不合格成品带来的损失时,进行检测。

2. 不合格成品处理:当拆解费用低于调换损失时,选择拆解不合格成品。

3. 用户退货处理:对于退回的不合格成品,综合调换损失和拆解费用做出合理决策。

3.总结(问题二总结)

问题二的核心是如何在企业生产过程中,通过合理的决策实现成本的最小化。企业在生产过程中,需要面对多个决策点,包括是否对零配件、半成品和成品进行检测,以及如何处理不合格成品。通过权衡检测成本、次品率、装配成本和不合格品处理成本,企业可以制定出最优的生产策略。

在整个生产流程中,企业首先需要决定是否对零配件1和零配件2进行检测。如果选择检测,这将能够有效减少进入装配环节的不合格品数量,从而降低成品的次品率。企业还需决定是否对成品进行检测。成品检测的目的是避免不合格的成品进入市场,减少因次品流入市场而带来的调换损失和企业信誉的影响。此外,企业在生产过程中还面临不合格成品的处理问题。对于检测出不合格的成品,企业可以选择进行拆解,回收其中的合格零配件,或者直接丢弃这些次品。拆解虽然需要额外的费用,但能减少材料浪费。最后,企业还需处理用户退回的产品,用户退回的不合格成品可能会带来物流和信誉损失,企业需要权衡是否对这些退回的产品进行再次拆解处理。

为了应对这些决策问题,我们可以构建一个数学模型,旨在最小化总成本。模型中包含检测成本、装配成本、调换损失和拆解费用等多种成本因素。在实际计算中,企业需要评估零配件的次品率对成品次品率的影响,以及检测决策对后续装配环节的影响。

在这种多阶段决策问题中,企业可以通过决策树或成本收益分析模型,评估每一个决策点对总成本的影响。在决策过程中,次品率是一个关键的决策变量。当检测成本较低且次品率较高时,企业应优先进行检测,以减少后续环节的不合格品处理成本。而在不合格成品的处理方面,如果拆解费用低于调换损失,企业应选择拆解以回收合格零配件;若调换损失较小,则可以选择丢弃不合格成品。

在不同的生产情境下,企业的决策将随次品率、检测成本、装配成本和拆解费用等因素的变化而调整。总的来说,问题二要求我们在生产的各个环节中做出基于成本最小化的合理决策,确保在减少次品率的同时,优化检测和不合格品处理策略,从而最大程度地降低企业的整体生产成本。

【Python参考代码】

# 导入必要的库
import pandas as pd
# 情况输入,基于表1的数据
data = {'情境': [1, 2, 3, 4, 5, 6],'零配件1_次品率': [0.1, 0.2, 0.1, 0.2, 0.1, 0.05],'零配件1_购买单价': [4, 4, 4, 4, 4, 4],'零配件1_检测成本': [2, 2, 2, 1, 8, 2],'零配件2_次品率': [0.1, 0.2, 0.1, 0.2, 0.2, 0.05],'零配件2_购买单价': [18, 18, 18, 18, 18, 18],'零配件2_检测成本': [3, 3, 3, 1, 1, 3],'成品_次品率': [0.1, 0.2, 0.1, 0.2, 0.1, 0.05],'成品_装配成本': [6, 6, 6, 6, 6, 6],'成品_检测成本': [3, 3, 3, 2, 2, 3],'成品_市场售价': [56, 56, 56, 56, 56, 56],'不合格成品_调换损失': [6, 6, 30, 30, 10, 10],'不合格成品_拆解费用': [5, 5, 5, 5, 5, 40]
}# 将数据转换为DataFrame
df = pd.DataFrame(data)# 定义成本计算函数
def calculate_cost(row, detect_parts=True, detect_products=True, rework_defects=True):"""计算在不同决策下的总成本:param row: 当前情形的数据:param detect_parts: 是否检测零配件:param detect_products: 是否检测成品:param rework_defects: 是否对不合格成品进行拆解:return: 总成本"""# 获取各类成本和次品率part1_defect_rate = row['零配件1_次品率']part2_defect_rate = row['零配件2_次品率']product_defect_rate = row['成品_次品率']part1_cost = row['零配件1_购买单价']part2_cost = row['零配件2_购买单价']product_price = row['成品_市场售价']product_assemble_cost = row['成品_装配成本']product_check_cost = row['成品_检测成本']swap_loss = row['不合格成品_调换损失']rework_cost = row['不合格成品_拆解费用']# 检测零配件的成本part_check_cost = 0if detect_parts:part_check_cost = row['零配件1_检测成本'] + row['零配件2_检测成本']# 如果检测,假设不合格零配件直接丢弃part1_defect_rate = 0part2_defect_rate = 0# 成品检测成本product_check_total_cost = 0if detect_products:product_check_total_cost = product_check_costproduct_defect_rate = 0  # 如果检测,直接丢弃不合格成品# 不合格成品处理成本product_defect_total_cost = product_defect_rate * (swap_loss + rework_cost if rework_defects else swap_loss)# 计算总成本 = 零配件成本 + 装配成本 + 检测成本 + 不合格处理成本total_cost = (part1_cost + part2_cost + product_assemble_cost + part_check_cost + product_check_total_cost + product_defect_total_cost)return total_cost# 对每种情境计算成本
decisions = []
for index, row in df.iterrows():# 三种决策情况的成本计算cost1 = calculate_cost(row, detect_parts=True, detect_products=True, rework_defects=True)cost2 = calculate_cost(row, detect_parts=False, detect_products=True, rework_defects=True)cost3 = calculate_cost(row, detect_parts=True, detect_products=False, rework_defects=False)# 找到最小的成本决策min_cost = min(cost1, cost2, cost3)if min_cost == cost1:decision = "检测零配件和成品,拆解不合格成品"elif min_cost == cost2:decision = "不检测零配件,检测成品,拆解不合格成品"else:decision = "检测零配件,不检测成品,不拆解不合格成品"decisions.append(decision)# 添加决策结果到DataFrame
df['最优决策'] = decisions# 打印最终决策结果
import ace_tools as tools; tools.display_dataframe_to_user(name="决策结果", dataframe=df)

这篇关于【2024数模国赛赛题思路公开】国赛B题第二套思路丨附可运行代码丨无偿自提的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

如何用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

透彻!驯服大型语言模型(LLMs)的五种方法,及具体方法选择思路

引言 随着时间的发展,大型语言模型不再停留在演示阶段而是逐步面向生产系统的应用,随着人们期望的不断增加,目标也发生了巨大的变化。在短短的几个月的时间里,人们对大模型的认识已经从对其zero-shot能力感到惊讶,转变为考虑改进模型质量、提高模型可用性。 「大语言模型(LLMs)其实就是利用高容量的模型架构(例如Transformer)对海量的、多种多样的数据分布进行建模得到,它包含了大量的先验

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

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

2024网安周今日开幕,亚信安全亮相30城

2024年国家网络安全宣传周今天在广州拉开帷幕。今年网安周继续以“网络安全为人民,网络安全靠人民”为主题。2024年国家网络安全宣传周涵盖了1场开幕式、1场高峰论坛、5个重要活动、15场分论坛/座谈会/闭门会、6个主题日活动和网络安全“六进”活动。亚信安全出席2024年国家网络安全宣传周开幕式和主论坛,并将通过线下宣讲、创意科普、成果展示等多种形式,让广大民众看得懂、记得住安全知识,同时还

代码随想录冲冲冲 Day39 动态规划Part7

198. 打家劫舍 dp数组的意义是在第i位的时候偷的最大钱数是多少 如果nums的size为0 总价值当然就是0 如果nums的size为1 总价值是nums[0] 遍历顺序就是从小到大遍历 之后是递推公式 对于dp[i]的最大价值来说有两种可能 1.偷第i个 那么最大价值就是dp[i-2]+nums[i] 2.不偷第i个 那么价值就是dp[i-1] 之后取这两个的最大值就是d