2023MathorcupC题电商物流网络包裹应急调运与结构优化问题建模详解+模型代码(一)
电商物流网络包裹应急调运与结构优化问题
第三次继续写数模文章和思路代码了,不知道上次美赛和国赛大家有没有认识我,没关系今年只要有数模比赛艾特我私信我,要是我有时间我一定免费出文章代码好吧!博主参与过十余次数学建模大赛,三次美赛获得过二次M奖一次H奖,国赛二等奖。想要了解更多的欢迎联系博主,免费获取代码和更多细化思路,**只希望各位以后遇到建模比赛可以艾特认识一下我,我可以提供免费的思路和部分源码,以后的数模比赛只要我还有时间肯定会第一时间写出免费开源思路,你们的关注和点赞就是我写作的动力!!!**大家可以参考。
一、题意理解
首先看题目问题以及要解决的目标是什么:

很明显题目就是想让你思考众多因素特征影响下包裹数量变化情况。
再看题目有没有透露出更多信息:

那么不用看问题我推测第一问肯定是想让你做个预测模型,第二第三问根据你的模型进行运筹达到最优运送方案。那么题目读到这里就很明朗了,没有什么很复杂的逻辑,我们先按照以往建模流程开始行动就好了。
二、问题解析
我们来看第一问:
问题 1:建立线路货量的预测模型,对 2023-01-01 至 2023-01-31 期间每条线路每天的货量进行预测,并在提交的论文中给出线路 DC14-DC10.DC20-DC35、DC25DC62 的预测结果。
和我想的是一样的,此类预测运筹最优化的题目基本第一问就需要确定你的预测模型,也就是该预测模型作为你解题的中流砥柱,后续的一切问题都需要围绕你的预测模型效果进行开展,决定整篇论文的上下限,我们应该尽可能把该预测模型建立好。当然也需要我们对给出的数据充分处理好,决定模型的上限。
那么我们可以先不去看后续的问题,该问是其他问的基础上游,先优先将预测模型给搭建出来。
三、预测模型搭建

1.数据特征分析
基本数据为:

可以看到有四个特征[场地1,场地2,日期,货量],共有177847行数据。
1.场地
场地1总共有77个地区:

场地2总共有58个地区:

该两个特征不应该割裂开来单个使用,我们根据题意知道
2.日期
线路 DC1→DC2 和线路 DC2→DC1 被认为是两 2 条线路。那么应该根据场地1进行分组,分别对不同地区不同路线进行建模。那么这时候我们可以发现,给出的数据集里边居然没有给我们其他因素的影响,那么这就是一个黑盒数据,我们无法清楚具体哪些因素影响了货量,可能会存在天气,节假日,路长,路况等具体因素,但是现在我们得不到这些具体特征的数值,因此利用传统的根据特征进行机器学习或者深度学习肯定是去得不到好效果。
很明显我们能够使用的只有日期这唯一的特征,那么怎么处理日期这一特征就显得尤为重要了,这时候我们需要使用时序数据预测模型,关于时序预测模型在我的个人技术博客已经将每种模型的算法和原理,以及可运行的代码都开放了出来:


有需要补充知识的小伙伴自行拿去就行。
3.货量
货量也就是我们要求的Y了,唯一定量数据,我们需要根据分组来看看货量数据是否根据时间产生大幅度波动或者是呈现出一定的规律性,具体的来说就是判断是否为严平稳时间序列和宽平稳时间序列。这都影响我们模型的可信度和准确性。
那么我们先以问题一中需要我们预测的三条路线在2021-01-01到2022-12-31货量的数据展示:
DC14-DC10:

DC20-DC35:

DC25-DC62:

十分典型的时序数据波动,我们知道日期的颗粒度为日,那么很容易联想到使用星期来拆分日期,那么相对应的还有节假日,天气我们无法获取。
2.数据预处理
想要得到更加精确的模型必须在此基础之上升维,也就是拆分日期。那么我们就先以数据量较少的DC25-DC62进行数据预处理,这里大家需要注意到的是并不是2021-10-31到2022-12-31的数据全都有,2021-10-31到2022-12-31总共是有426天而DC25-DC62的数据仅有370行,我们再数据维度变换的时候应该将数据空缺值填补完成。

填补我们无法根据一些机器学习算法或者均值填补,时序数据具有一些很强的时序性,我推荐先根据日期特征分类之后再根据数据波动进行二次指数平滑法填补空值数据。
倘若我们单单以星期数查看货量会发现十分不稳定:
周日:

标准差为3914.3835
周一:

标准差为4712.8095
周二:

标准差为5243.4463
同一周数下面差距这么大显然是不用直接用周数的,再次拆解:

3.模型搭建
到这一步其实大家就可以尝试构建一下预测模型了,效果不好再数据再处理一遍:
CatBoost:

ARIMA模型:

bp神经网络:

RF:

bp神经网络:

RF:

先写到这里,下一篇文章对数据再做优化和模型优化,更新余下几问。
相关文章:
2023MathorcupC题电商物流网络包裹应急调运与结构优化问题建模详解+模型代码(一)
电商物流网络包裹应急调运与结构优化问题 第三次继续写数模文章和思路代码了,不知道上次美赛和国赛大家有没有认识我,没关系今年只要有数模比赛艾特我私信我,要是我有时间我一定免费出文章代码好吧!博主参与过十余次数学建模大赛…...
软件测试技术之跨平台的移动端UI自动化测试(上)
摘要:本文提出一种跨平台的UI自动化测试方案,一方面使用像素级的截图对比技术,解决传统UI自动化测试难以验证页面样式的问题;另一方面用统一部署在服务器端的JavaScript测试代码代替Android和iOS测试代码,大大提高编写…...
【MySQL--02】库的操作
文章目录1.库的操作1.1创建数据库1.2创建数据库的案例1.3字符集和校验规则1.3.1查看系统默认字符集以及校验规则1.3.2查看数据库支持的字符集1.3.3查看数据库支持的字符集校验规则1.3.4 校验规则对数据库的影响1.4操纵数据库1.4.1查看数据库1.4.2 删除数据库1.4.3显示创建语句1…...
人民链Baas服务平台上线,中创助力人民数据共建数据服务应用场景
人民链2.0是数据要素大发展时代下的可信联盟链 作为区块链分布式存储领域行业先驱与让人民放心的国家级数据云平台,中创算力与人民数据的合作从未间断。为了推动人民链2.0高质量发展,中创算力与人民数据开展了多方面合作,助力人民数据共建数据…...
说说如何借助webpack来优化前端性能?
通过webpack优化前端的手段有: ① JS代码压缩 ② CSS代码压缩 ③ HTML文件代码压缩 ④ 文件大小压缩 ⑤ 图片压缩 ⑥ Tree Shaking ⑦ 代码分离 ⑧ 内联 chunk 1、JS代码压缩 terser是一个JavaScript的解释、绞肉机、压…...
AiDD AI+软件研发数字峰会开启编程新纪元
随着OpenAI 推出全新的对话式通用人工智能工具——ChatGPT火爆出圈后,人工智能再次受到了工业界、学术界的广泛关注,并被认为向通用人工智能迈出了坚实的一步,在众多行业、领域有着广泛的应用潜力,甚至会颠覆很多领域和行业&#…...
【远程开发】VSCode使用Remote SSH远程连接Linux服务器
文章目录前言视频教程1、安装OpenSSH2、vscode配置ssh3. 局域网测试连接远程服务器4. 公网远程连接4.1 ubuntu安装cpolar4.2 创建隧道映射4.3 测试公网远程连接5. 配置固定TCP端口地址5.1 保留一个固定TCP端口地址5.2 配置固定TCP端口地址5.3 测试固定公网地址远程转发自CSDN远…...
C++纯虚函数和抽象类详解
在C中,可以将虚函数声明为纯虚函数,语法格式为: virtual 返回值类型 函数名 (函数参数) 0; 纯虚函数没有函数体,只有函数声明,在虚函数声明的结尾加上0,表明此函数为纯虚函数。 最后的0并不表示函数返回…...
服务器上搭建jenkins打包工具
一、环境准备 1.安装jdk,这里我安装的jdk8 https://www.oracle.com/java/technologies/downloads/#java8 2.安装jenkins,使用镜像地址安装 https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat-stable/?CN&OD 注意要选择支持当前安装的jdk版…...
全球化背景下,如何利用内容营销促进跨境电商业务增长
随着全球跨境电商市场的迅速发展,越来越多的企业开始将注意力转向跨境电商。然而,随着竞争的激烈化,企业不再能够仅仅依靠产品本身来吸引消费者的注意。因此,内容营销成为了跨境电商企业在吸引、留住消费者方面的关键。在这篇文章…...
数据库系统工程师——第二章 程序语言基础知识
文章目录📂 第二章、程序语言基础知识 📁 2.1 程序语言概述 📖 2.1.1 程序语言的基本概念 📖 2.1.2 程序语言的基本成分 📁 2.2 程序语言翻译基础 📖 2.2.1 汇编程序基本原理 📖 2.2.2 编译程序…...
UFT参数化的使用
使用Systemutil.Run打开程序。将01_Login/02_New Order/03_Logout三个操作分为3个Action。生成共享对象库关联到这三个Action。在01_Login操作模块中,将登录名和密码设置为环境变量参数,环境变量参数采用用户自定义,定义为AgentName和Passwor…...
Java模拟rank() over()函数获取分组排名的方法设计及实现
背景 考试批次班级姓名语文202302三年一班张小明130.00202302三年一班王二小128.00202302三年一班谢春花136.00202302三年二班冯世杰129.00202302三年二班马功成130.00202302三年二班魏翩翩136.00 假设我们有如上数据,现在有一个需求需要统计各学生语文单科成绩在班…...
不用但一定要懂 ---- iOS 之 响应链、传递链 与 手势识别
iOS 事件的主要由:响应连 和 传递链 构成。一般事件先通过传递链,传递下去。响应链,如果上层不能响应,那么一层一层通过响应链找到能响应的UIResponse。 响应链:由最基础的view向系统传递,first view ->…...
观早报 | 特斯拉储能超级工厂落沪;“华尔街之狼”募资550亿
今日要闻:京东拟今年发布千亿级产业大模型;特斯拉储能超级工厂落沪;“华尔街之狼”募资550亿;英特尔落户海南三亚;日本人要搞二次元老婆版 ChatGPT京东拟今年发布千亿级产业大模型 据《科创板日报》消息,京…...
SpringCloud集成Seata saga模式案例
文章目录一、前言二、Seata saga模式介绍1、示例状态图2、“状态机”介绍1)“状态机”属性2)“状态”属性3)更多状态相关内容三、SpringCloud 集成 seata saga1、saga模式状态机相关信息1)状态机配置相关的三个表2)状态…...
逍遥自在学C语言 | 位运算符的高级用法
前言 在上一篇文章中,我们介绍了&运算符的基础用法,本篇文章,我们将介绍& 运算符的一些高级用法。 一、人物简介 第一位闪亮登场,有请今后会一直教我们C语言的老师 —— 自在。 第二位上场的是和我们一起学习的小白程序…...
Java实现输入行数打印取缔字符,打印金字塔三角形的两个代码程序
目录 前言 一、实现输入行数,打印取缔字符 1.1运行流程(思想) 1.2代码段 1.3运行截图 二、打印金字塔三角形 1.1运行流程(思想) 1.2代码段 1.3运行截图 前言 1.因多重原因,本博文有…...
express项目的创建
前言 前端开发者若要进行后端开发,大多都会选择node.js,在node生态下是有大量框架的,其中最受新手喜爱的便是老牌的express.js,接下来我们就从零创建一个express项目。 安装node 在这里:https://nodejs.org/dist/v16…...
RK3399平台开发系列讲解(基础篇)Linux 传统间隔定时器
🚀返回专栏总目录 文章目录 一、设置间隔定时器 setitimer()二、查询定时器状态 getitimer()三、更简单的定时接口 alarm()四、传统定时器的应用4.1、为阻塞操作设置超时4.2、性能剖析五、传统定时器的局限性沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本篇将详细…...
简易版抽奖活动的设计技术方案
1.前言 本技术方案旨在设计一套完整且可靠的抽奖活动逻辑,确保抽奖活动能够公平、公正、公开地进行,同时满足高并发访问、数据安全存储与高效处理等需求,为用户提供流畅的抽奖体验,助力业务顺利开展。本方案将涵盖抽奖活动的整体架构设计、核心流程逻辑、关键功能实现以及…...
java 实现excel文件转pdf | 无水印 | 无限制
文章目录 目录 文章目录 前言 1.项目远程仓库配置 2.pom文件引入相关依赖 3.代码破解 二、Excel转PDF 1.代码实现 2.Aspose.License.xml 授权文件 总结 前言 java处理excel转pdf一直没找到什么好用的免费jar包工具,自己手写的难度,恐怕高级程序员花费一年的事件,也…...
Linux 中如何提取压缩文件 ?
Linux 是一种流行的开源操作系统,它提供了许多工具来管理、压缩和解压缩文件。压缩文件有助于节省存储空间,使数据传输更快。本指南将向您展示如何在 Linux 中提取不同类型的压缩文件。 1. Unpacking ZIP Files ZIP 文件是非常常见的,要在 …...
GitHub 趋势日报 (2025年06月06日)
📊 由 TrendForge 系统生成 | 🌐 https://trendforge.devlive.org/ 🌐 本日报中的项目描述已自动翻译为中文 📈 今日获星趋势图 今日获星趋势图 590 cognee 551 onlook 399 project-based-learning 348 build-your-own-x 320 ne…...
SQL进阶之旅 Day 22:批处理与游标优化
【SQL进阶之旅 Day 22】批处理与游标优化 文章简述(300字左右) 在数据库开发中,面对大量数据的处理任务时,单条SQL语句往往无法满足性能需求。本篇文章聚焦“批处理与游标优化”,深入探讨如何通过批量操作和游标技术提…...
Copilot for Xcode (iOS的 AI辅助编程)
Copilot for Xcode 简介Copilot下载与安装 体验环境要求下载最新的安装包安装登录系统权限设置 AI辅助编程生成注释代码补全简单需求代码生成辅助编程行间代码生成注释联想 代码生成 总结 简介 尝试使用了Copilot,它能根据上下文补全代码,快速生成常用…...
P10909 [蓝桥杯 2024 国 B] 立定跳远
# P10909 [蓝桥杯 2024 国 B] 立定跳远 ## 题目描述 在运动会上,小明从数轴的原点开始向正方向立定跳远。项目设置了 $n$ 个检查点 $a_1, a_2, \cdots , a_n$ 且 $a_i \ge a_{i−1} > 0$。小明必须先后跳跃到每个检查点上且只能跳跃到检查点上。同时࿰…...
C/Python/Go示例 | Socket Programing与RPC
Socket Programming介绍 Computer networking这个领域围绕着两台电脑或者同一台电脑内的不同进程之间的数据传输和信息交流,会涉及到许多有意思的话题,诸如怎么确保对方能收到信息,怎么应对数据丢失、被污染或者顺序混乱,怎么提高…...
MySQL 数据库深度剖析:事务、SQL 优化、索引与 Buffer Pool
在当今数据驱动的时代,数据库作为数据存储与管理的核心,其性能与可靠性至关重要。MySQL 作为一款广泛使用的开源数据库,在众多应用场景中发挥着关键作用。在这篇博客中,我将围绕 MySQL 数据库的核心知识展开,涵盖事务及…...
比较数据迁移后MySQL数据库和PostgreSQL数据仓库中的表
设计一个MySQL数据库和PostgreSQL数据库的表数据比较的详细程序流程,两张表是相同的结构,都有整型主键id字段,需要每次从数据库分批取得2000条数据,用于比较,比较操作的同时可以再取2000条数据,等上一次比较完成之后,开始比较,直到比较完所有的数据。比较操作需要比较两…...
