2021年高教杯数学建模国赛C题的解题过程附全部代码以及参赛论文(百度网盘)

我们小组参加了2021年数学建模,本人负责代码方面,此文仅为自己的思考理解+代码分析+题目分析

题目:
注:试题完整版和对应的附件在我另一篇文章里面

某建筑和装饰板材的生产企业所用原材料主要是木质纤维和其他植物素纤维材料,总体可分为 A,B,C 三种类型。该企业每年按 48 周安排生产,需要提前制定 24 周的原材料订购和转运计划,即根据产能要求确定需要订购的原材料供应商(称为“供应商”)和相应每周的原材料订购数量(称为“订货量”),确定第三方物流公司(称为“转运商”)并委托其将供应商每周的原材料供货数量(称为“供货量”)转运到企业仓库。
该企业每周的产能为 2.82 万立方米,每立方米产品需消耗 A 类原材料0.6 立方米,或 B 类原材料 0.66 立方米,或 C 类原材料 0.72 立方米。由于原材料的特殊性,供应商不能保证严格按订货量供货,实际供货量可能多于或少于订货量。为了保证正常生产的需要,该企业要尽可能保持不少于满足两周生产需求的原材料库存量,为此该企业对供应商实际提供的原材料总是全部收购。在实际转运过程中,原材料会有一定的损耗(损耗量占供货量的百分比称为“损耗率”),转运商实际运送到企业仓库的原材料数量称为“接收量”。每家转运商的运输能力为 6000 立方米/周。通常情况下,一家供应商每周供应的原材料尽量由一家转运商
运输。原材料的采购成本直接影响到企业的生产效益,实际中 A 类和 B 类原材料的采购单价分别比 C 类原材料高 20%和 10%。三类原材料运输和储存的单位费用相同。附件 1 给出了该企业近 5 年 402 家原材料供应商的订货量和供货量数据。附件 2 给出了 8 家转运商的运输损耗率数据。请你们团队结合实际情况,对相关数据进行深入分析,研究下列问题:
1.根据附件 1,对 402 家供应商的供货特征进行量化分析,建立反映保障企业生产重要性的数学模型,在此基础上确定 50 家最重要的供应商,并在论文中列表给出结果。
2.参考问题 1,该企业应至少选择多少家供应商供应原材料才可能满足生产的需求?针对这些供应商,为该企业制定未来 24 周每周最经济的原材料订购方案,并据此制定损耗最少的转运方案。试对订购方案和转运方案的实施效果进行分析。
3.该企业为了压缩生产成本,现计划尽量多地采购 A 类和尽量少地采购 C 类原材料,以减少转运及仓储的成本,同时希望转运商的转运损耗率尽量少。请制定新的订购方案及转运方案,并分析方案的实施效果。
4.该企业通过技术改造已具备了提高产能的潜力。根据现有原材料的供应商和转运商的实际情况,确定该企业每周的产能可以提高多少,并给出未来 24 周的订购和转运方案。

第一问:

理论分析:
该企业每周的产能为 2.82 万立方米,按照每立方米产品需消耗 A 类原材料 0.6 立方米,或 B 类原材料 0.66 立方米,或 C 类原材料 0.72 立方米。按原材料的最小需求量算是2.82万0.6=16920,按原材料的最大需求量算是2.82万0.72=20304。而我们根据excel表格计算402家每周所有的供应量仅仅只有40+周是肯定能满足要求的(即是该周供应量超过20304),有50+周是不一定能满足的(即是该周供应量在16920到20304之间),还有140周是一定不能满足要求的,既然402家供应商全部供应量加起来都不一定能达到所需产能,那选择最重要的50家企业就需要以这个供应量为标准,然后我们又考虑到了有些供应商的数据非常奇怪(连续几周供应量非常低,然后突然供应量达到最大值),如图
在这里插入图片描述
像这种我们就需要考虑他的方差,我们需要把这两个因素考虑进去,从而在402家供应商里面挑选50家最重要供应商,我们把每周的供应量进行排序,给每一家供应商一个排名,如果遇到供应量相同的供应商,给一个相同的排名,某家企业240周每周的排名的平均值即是以权值相等去同时考虑供应量和方差。以这个平均值去排序得到前50家供应商就是我们需要的最重要50家供应商。
代码分析:
首先需要从excel表格中读取402家供应商的240周的数据,

import xlrd  	
file_location = "C:/Users/95870/Desktop/数学建模代码/a.xlsx"#这个位置需要更改,否则不能运行
data = xlrd.open_workbook(file_location)

sheet = data.sheet_by_index(1) # 引用第二个表
sheet2=data.sheet_by_index(0) # 引用第一个表



data = [[sheet.cell_value(r,c) for c in range(sheet.ncols)] for r in range(sheet.nrows)] #读取该表1中所有的数据
data_d=[[sheet2.cell_value(r,c) for c in range(sheet2.ncols)] for r in range(sheet2.nrows)] #读取该表2中所有的数据

定义了一个列表,num_list(402240),用以存放每家供应商每周的排名(这个排名是没有并序的,就是数据相同的按照供应商号码进行排序),然后用冒泡法把402家供应商240周的供应量进行排序,并根据供应商号有一个对应关系,然后将排名进行并行排序,然

  • 18
    点赞
  • 154
    收藏
    觉得还不错? 一键收藏
  • 10
    评论
回答: 根据引用中提供的信息,2021数学建模国赛C是关于供应商选择和产能规划的问。根据引用中的代码分析,问要求按照供应商的供货类别进行选取,并计算满足每周产能28200的情况下,需要选择多少家供应商。代码中使用了循环和条件判断来实现对每个供应商的选择,根据供应商的供货类别进行判断,分别计算每个类别的供应量,并判断是否满足产能要求。根据引用中的信息,数据被按份分成了5组,每组包含48周的数据,然后根据供货商的供货类别进行分类,并计算每每类原材料所对应的供货量。 总结起来,2021数学建模国赛C是一个关于供应商选择和产能规划的问,需要按照供应商的供货类别进行选择,并计算满足产能要求的情况下需要选择多少家供应商。代码中通过循环和条件判断实现了对供应商的选择,并根据供货类别计算了每类原材料的供货量。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [2021数学建模国赛C一详细思路和代码](https://blog.csdn.net/qq_35712832/article/details/121621204)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [2021高教数学建模国赛C解题过程全部代码以及参赛论文百度网盘)](https://blog.csdn.net/qazwsxedc__1/article/details/120294444)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值