2024 年第十四届 Mathorcup 数学应用挑战赛题目C 题 物流网络分拣中心货量预测及人员排班完整思路以及源代码分享,仅供学习

本文主要是介绍2024 年第十四届 Mathorcup 数学应用挑战赛题目C 题 物流网络分拣中心货量预测及人员排班完整思路以及源代码分享,仅供学习,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

电商物流网络在订单履约中由多个环节组成,图1是一个简化的物流网络示意图。其中,分拣中心作为网络的中间环节,需要将包裹按照不同流向进行分拣并发往下一个场地,最终使包赛到达消费者手中。分拣中心管理效率的提升,对整体网络的履约效率和运作成本起着十分重要的作用,分拣中心的货量预测是电商物流网络重要的研究问题,对分拣中心货量的精准预测是后续管理及决策的基础,如果管理者可以提前预知之后一段时间各个分拣中心需要操作的货量,便可以提前对资源进行安排。在此场景下的货量预测目标一般有两个:一是根据历史货量、物流网络配置等信息,预测每个分拣中心每天的货量;二是根据历史货量小时数据,预测每个分拣中心每小时的货量。 分拣中心的货量预测与网络的运输线路有关,通过分析各线路的运输货量,可以得出各分拣中心之间的网络连接关系。当线路关系调整时,可以参考线路的调整信息,得到各分拣中心货量更为准确的预测。 基于分拣中心货量预测的人员排班是接下来要解决的重要问题,分拣中心的人员包含正式工和临时工两种:正式工是场地长期雇佣的人员,工作效率较高:临时工是根据货量情况临时招募的人员,每天可以任意增减,但工作效率相对较低、雇佣成本较高。根据货量预测结果合理安排人员,旨在完成工作的情况下尽可能降低人员成本。针对当前物流网络,其人员安排班次及小时人效指标情况如下: 1)对于所有分拣中心,每天分为6个班次,分别为:00:00-08:00,05:00-13:00,08:00-16:00,12:00-20:00,14:00-22:00,16:00-24:00,每个人员(正式工或临时工)每天只能出勤一个班次;2)小时人效指标为每人每小时完成分拣的包裹量(包裹量即货量),正式工的最高小时人效为 25 包裹/小时,临时工的最高小时人效为 20包裹/小时。 该物流网络包括57个分拣中心,每个分拣中心过去4个月的每天货量如附件1所示,过去 30天的每小时货量如附件2所示。

问题 1:建立货量预测模型,对57 个分拣中心未来 30 天每天及每小时的货量进行预测,将预测结果写入结果表1和表2中。

为了建立一个货量预测模型,我们将使用季节性时间序列模型来预测每个分拣中心未来30天的每天及每小时的货量。在这里,我们将使用季节性ARIMA(SARIMA)模型,它是非常适合处理具有季节性模式的时间序列数据的。

1. 数据探索和预处理

假设我们的时间序列是 yt​,其中 t 表示时间点。

数据清洗:

检查缺失值:如果在 yt​ 中存在缺失值,我们需要决定是填补这些缺失值还是删除相关的时间点。

异常值处理:识别并处理任何异常值,例如,通过箱型图识别的离群点。

2. 季节性时间序列建模:SARIMA模型

SARIMA模型的全称是季节性自回归积分滑动平均模型,表示为 SARIMA(,,P,D,Q)s​,其中:

p:非季节性自回归项的阶数。

d:非季节性差分次数。

q:非季节性移动平均项的阶数。

P:季节性自回归项的阶数。

D:季节性差分次数。

Q:季节性移动平均项的阶数。

s:时间序列的季节长度。

SARIMA模型的数学表示:

3. 参数估计

在SARIMA模型的参数估计中,最常用的方法是最大似然估计(MLE)。假设我们的时间序列数据为 y1​,y2​,…,yn​,模型参数集合为 θ=(p,d,q,P,D,Q,s) 和其他相关参数,如自回归和移动平均参数。最大似然估计旨在找到参数集合 θ 的值,使得观察到的数据出现的可能性(似然函数)最大。

似然函数 L 通常表示为:

其中 (∣)f(y∣θ) 是给定参数 θ 下观察数据 y 的概率密度函数。

最大化似然函数等价于最大化其对数形式,即最大化对数似然函数 ℓ()ℓ(θ):

 

参数估计的目标是:

4. 模型检验

赤池信息准则(AIC)

AIC是一种衡量统计模型拟合优度的准则,它旨在选择最佳模型,并对模型复杂度进行惩罚。AIC的计算公式为:

其中,k 是模型参数的数量,L 是最大似然函数的值。

贝叶斯信息准则(BIC)

BIC与AIC相似,但对模型中参数的数量给予更大的惩罚。BIC的计算公式为:

其中,n 是样本大小,k 和 L 的定义同上。

残差诊断

对于残差 εt​,我们希望它们是白噪声序列。这可以通过残差的自相关函数(ACF)和偏自相关函数(PACF)图来检查,或者使用Ljung-Box Q检验来统计检验残差序列中的自相关性是否显著不同于零。

Ljung-Box Q检验的假设检验公式为:

其中,n 是样本大小,^ρ​k​ 是残差序列的自相关系数,m 是滞后期数。检验的目的是确定序列中是否存在显著的自相关性。

通过上述步骤,您可以对模型进行充分的参数估计和模型检验,以确保预测的准确性和可靠性。

源代码以及结果如下,完整见附件!

问题2:过去 90天各分拣中心之间的各运输线路平均货量如附件3所示。若未来30 天分拣中心之间的运输线路发生了变化,具体如附件4所示。根据附件 1-4,请对 57个分拣中心未来30天每天及每小时的货量进行预测,并将预测结果写入结果表3和表4中。

问题2要求基于现有和未来的运输线路变化来预测各分拣中心未来30天的每天及每小时货量。这个问题的建模过程需要考虑分拣中心间的运输线路变化对货量的影响。具体的数学建模过程和公式如下:

数据预处理

加载数据:加载四个附件的数据,理解其结构和内容。

数据合并:将过去的货量数据(附件1和附件2)、当前运输线路的平均货量数据(附件3)和未来运输线路变化(附件4)整合,以便分析。

建模过程

基础货量预测:首先,像问题1一样,对每个分拣中心进行货量预测,忽略运输线路的影响,得到基础预测值。

线路影响分析:分析附件3中的运输线路平均货量数据,计算每条线路对应分拣中心的平均影响值。

未来线路调整:根据附件4的未来线路变化,计算每个分拣中心因线路变化而增减的货量。

综合预测修正:将步骤1的基础预测值与步骤3的调整值相结合,得到最终的货量预测。

假设 ,Yc,t​ 表示分拣中心 c 在时间 t 的货量预测,,,Lc,l,t​ 表示分拣中心 c 在时间 t 通过线路 l 的平均货量,Ac,l,t​ 表示线路调整后分拣中心 c 在时间 t 通过线路 l 的额外货量。

问题3:假设每个分拣中心有60名正式工,在人员安排时将优先使用正式工,若需额外人员将使用临时工。请基于问题2的预测结果建立模型,给出未来 30 天每个分拣中心每个班次的出勤人数,并写入结果表5中。要求在每天的货量处理完成的基础上,安排的人天数(例如30天每天出勤200名员工,则总人天数为6000)尽可能少,且每天的实际小时人效尽量均衡。


问题4:研究特定分拣中心的排班问题,这里不妨以SC60为例,假设分拣中心 SC60 当前有 200名正式工,请基于问题2的预测结果建立模型确定未来 30 天每名正式工及临时工的班次出勤计划,即给出未来 30 天每天六个班次中,每名正式工将在哪些班次出勤,每个班次需要雇佣多少临时工,并写入结果表6中。每名正式工的出勤率(出勤的天数除以总天数30)不能高于85%,且连续出勤天数不能超过7天。要求在每天货量处理完成的基础上,安排的人天数尽可能少,每天的实际小时人效尽量均衡,且正式工出勤率尽量均衡。

完整内容见附件!

附件:

这篇关于2024 年第十四届 Mathorcup 数学应用挑战赛题目C 题 物流网络分拣中心货量预测及人员排班完整思路以及源代码分享,仅供学习的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

HarmonyOS学习(七)——UI(五)常用布局总结

自适应布局 1.1、线性布局(LinearLayout) 通过线性容器Row和Column实现线性布局。Column容器内的子组件按照垂直方向排列,Row组件中的子组件按照水平方向排列。 属性说明space通过space参数设置主轴上子组件的间距,达到各子组件在排列上的等间距效果alignItems设置子组件在交叉轴上的对齐方式,且在各类尺寸屏幕上表现一致,其中交叉轴为垂直时,取值为Vert

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

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

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

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

中文分词jieba库的使用与实景应用(一)

知识星球:https://articles.zsxq.com/id_fxvgc803qmr2.html 目录 一.定义: 精确模式(默认模式): 全模式: 搜索引擎模式: paddle 模式(基于深度学习的分词模式): 二 自定义词典 三.文本解析   调整词出现的频率 四. 关键词提取 A. 基于TF-IDF算法的关键词提取 B. 基于TextRank算法的关键词提取

水位雨量在线监测系统概述及应用介绍

在当今社会,随着科技的飞速发展,各种智能监测系统已成为保障公共安全、促进资源管理和环境保护的重要工具。其中,水位雨量在线监测系统作为自然灾害预警、水资源管理及水利工程运行的关键技术,其重要性不言而喻。 一、水位雨量在线监测系统的基本原理 水位雨量在线监测系统主要由数据采集单元、数据传输网络、数据处理中心及用户终端四大部分构成,形成了一个完整的闭环系统。 数据采集单元:这是系统的“眼睛”,

【前端学习】AntV G6-08 深入图形与图形分组、自定义节点、节点动画(下)

【课程链接】 AntV G6:深入图形与图形分组、自定义节点、节点动画(下)_哔哩哔哩_bilibili 本章十吾老师讲解了一个复杂的自定义节点中,应该怎样去计算和绘制图形,如何给一个图形制作不间断的动画,以及在鼠标事件之后产生动画。(有点难,需要好好理解) <!DOCTYPE html><html><head><meta charset="UTF-8"><title>06

学习hash总结

2014/1/29/   最近刚开始学hash,名字很陌生,但是hash的思想却很熟悉,以前早就做过此类的题,但是不知道这就是hash思想而已,说白了hash就是一个映射,往往灵活利用数组的下标来实现算法,hash的作用:1、判重;2、统计次数;

csu 1446 Problem J Modified LCS (扩展欧几里得算法的简单应用)

这是一道扩展欧几里得算法的简单应用题,这题是在湖南多校训练赛中队友ac的一道题,在比赛之后请教了队友,然后自己把它a掉 这也是自己独自做扩展欧几里得算法的题目 题意:把题意转变下就变成了:求d1*x - d2*y = f2 - f1的解,很明显用exgcd来解 下面介绍一下exgcd的一些知识点:求ax + by = c的解 一、首先求ax + by = gcd(a,b)的解 这个

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

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

hdu1394(线段树点更新的应用)

题意:求一个序列经过一定的操作得到的序列的最小逆序数 这题会用到逆序数的一个性质,在0到n-1这些数字组成的乱序排列,将第一个数字A移到最后一位,得到的逆序数为res-a+(n-a-1) 知道上面的知识点后,可以用暴力来解 代码如下: #include<iostream>#include<algorithm>#include<cstring>#include<stack>#in