当前位置: 首页 > news >正文

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、性能剖析五、传统定时器的局限性沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本篇将详细…...

【Java学习笔记】Arrays类

Arrays 类 1. 导入包:import java.util.Arrays 2. 常用方法一览表 方法描述Arrays.toString()返回数组的字符串形式Arrays.sort()排序(自然排序和定制排序)Arrays.binarySearch()通过二分搜索法进行查找(前提:数组是…...

vue3 定时器-定义全局方法 vue+ts

1.创建ts文件 路径&#xff1a;src/utils/timer.ts 完整代码&#xff1a; import { onUnmounted } from vuetype TimerCallback (...args: any[]) > voidexport function useGlobalTimer() {const timers: Map<number, NodeJS.Timeout> new Map()// 创建定时器con…...

Unit 1 深度强化学习简介

Deep RL Course ——Unit 1 Introduction 从理论和实践层面深入学习深度强化学习。学会使用知名的深度强化学习库&#xff0c;例如 Stable Baselines3、RL Baselines3 Zoo、Sample Factory 和 CleanRL。在独特的环境中训练智能体&#xff0c;比如 SnowballFight、Huggy the Do…...

Spring AI与Spring Modulith核心技术解析

Spring AI核心架构解析 Spring AI&#xff08;https://spring.io/projects/spring-ai&#xff09;作为Spring生态中的AI集成框架&#xff0c;其核心设计理念是通过模块化架构降低AI应用的开发复杂度。与Python生态中的LangChain/LlamaIndex等工具类似&#xff0c;但特别为多语…...

【开发技术】.Net使用FFmpeg视频特定帧上绘制内容

目录 一、目的 二、解决方案 2.1 什么是FFmpeg 2.2 FFmpeg主要功能 2.3 使用Xabe.FFmpeg调用FFmpeg功能 2.4 使用 FFmpeg 的 drawbox 滤镜来绘制 ROI 三、总结 一、目的 当前市场上有很多目标检测智能识别的相关算法&#xff0c;当前调用一个医疗行业的AI识别算法后返回…...

面向无人机海岸带生态系统监测的语义分割基准数据集

描述&#xff1a;海岸带生态系统的监测是维护生态平衡和可持续发展的重要任务。语义分割技术在遥感影像中的应用为海岸带生态系统的精准监测提供了有效手段。然而&#xff0c;目前该领域仍面临一个挑战&#xff0c;即缺乏公开的专门面向海岸带生态系统的语义分割基准数据集。受…...

Linux部署私有文件管理系统MinIO

最近需要用到一个文件管理服务&#xff0c;但是又不想花钱&#xff0c;所以就想着自己搭建一个&#xff0c;刚好我们用的一个开源框架已经集成了MinIO&#xff0c;所以就选了这个 我这边对文件服务性能要求不是太高&#xff0c;单机版就可以 安装非常简单&#xff0c;几个命令就…...

LCTF液晶可调谐滤波器在多光谱相机捕捉无人机目标检测中的作用

中达瑞和自2005年成立以来&#xff0c;一直在光谱成像领域深度钻研和发展&#xff0c;始终致力于研发高性能、高可靠性的光谱成像相机&#xff0c;为科研院校提供更优的产品和服务。在《低空背景下无人机目标的光谱特征研究及目标检测应用》这篇论文中提到中达瑞和 LCTF 作为多…...

[论文阅读]TrustRAG: Enhancing Robustness and Trustworthiness in RAG

TrustRAG: Enhancing Robustness and Trustworthiness in RAG [2501.00879] TrustRAG: Enhancing Robustness and Trustworthiness in Retrieval-Augmented Generation 代码&#xff1a;HuichiZhou/TrustRAG: Code for "TrustRAG: Enhancing Robustness and Trustworthin…...

Sklearn 机器学习 缺失值处理 获取填充失值的统计值

💖亲爱的技术爱好者们,热烈欢迎来到 Kant2048 的博客!我是 Thomas Kant,很开心能在CSDN上与你们相遇~💖 本博客的精华专栏: 【自动化测试】 【测试经验】 【人工智能】 【Python】 使用 Scikit-learn 处理缺失值并提取填充统计信息的完整指南 在机器学习项目中,数据清…...