“华为杯“第四届中国研究生数学建模竞赛-D题:邮路规划与邮车调度

目录

摘 要:

1.问题的重述

2.模型的假设与符号说明

2.1 针对本问题,本文做出如下假设

2.2 符号说明

3.问题的数学模型

4.问题的求解

4.1 问题一的求解

4.1.1 最少邮车数的求法

4.1.2 邮路规划及路径选择

4.1.3 问题的求解结果

4.2 问题二的求解

4.2.1 问题的分析

4.2.2 问题的求解结果

4.3 问题三的求解

4.3.1 问题分析

4.3.2 求解结果

4.4 问题四的求解

4.4.1 问题分析

4.4.2 求解结果

5.模型的进一步讨论

参考文献


摘 要:

本文研究的问题是典型的车辆调度问题 (VRP) ,可归结为图论中的多旅行商
问题,通过采用 人造顶点 分区方法同时结合最小生成树分解法,将其转化为多
个单旅行商问题,并借助 LINGO 软件求解单旅行商问题。
针对问题一,本文首先根据邮件寄送总量和邮车承载量,求出所需的最少邮
车数为 3 。接着,建立了一个以最小化总邮路空车率为目标的优化模型。通过将
总邮车空车率简化为邮路总路程最短,将此问题转化为带容量限制车辆调度问题
(CVRP) 问题来求解。最后在满足邮车容量约束的条件下,结合求解多旅行商问
(MTSP) 问题的方法来求解 CVRP ,求得总的因空车率减少的收入为 72 元,同
3 辆邮车能满足运输要求。
针对问题二,对于每个地市局和县局的邮路规划和调度方案,采用类似问题
一的方法求解,计算结果为:地市局 D 、县局 X1 X5 所需的最少邮车数分别为
4 2 2 2 2 3 辆,全区总的运行成本为 7354 元。
针对问题三,本文对问题二求出的邮路按一定的启发式算法进行调整,使总
的运行成本减少 8% ,同时县局 X3 X5 分别可以减少一辆邮车的投入。
针对问题四,本文通过对各县区各支局关联的路数的计算,将县局 X3 调整
Z31 X5 调整为 Z51 ,通过计算发现这两个县区的总路程分别减少近 30%
10%
关键词: CVRP MTSP TSP 、邮路规划

1.问题的重述

某地区的邮政局、所分为地市中心局(简称地市局)、县级中心局(简称县
局)和支局三级机构,该地区的邮政运输网络由区级邮政运输网和县级邮政运输
网构成。区级邮政运输网由从地市局出发并最终返回地市局的区级邮车所行驶的
全部邮路构成,县级邮政运输网由从县局出发并最终返回县局的县级邮车所行驶
的全部邮路构成。为使邮政企业实现低成本运营和较高的服务质量,我们需要对
该地区的邮政运输网络进行重构,确定合适的邮路规划方案并进行邮车的合理调
度。
问题 1:
以县局 X1 及其所辖的 16 个支局 Z1, Z2, ……, Z16 为研究对象,假设区级
第一班次邮车 08:00 到达县局 X1,区级第二班次邮车 16:00 从县局 X1 再出发返
回地市局 D,若每辆县级邮车最多容纳 65 袋邮件,试问最少需要多少辆邮车才
能满足该县的邮件运输需求?同时,为提高邮政运输效益,应如何规划邮路和如
何安排邮车的运行?
问题 2:
采用尽可能少、尽可能短的邮路可以减少邮政部门车辆和人员等的投入,从
而显著降低全区邮政运输网的总运行成本。考虑投入车况较好的邮车,通常每条
邮路只需要一辆邮车即能满足运载能力要求,试问应如何构建该地区的邮政运输
网络(县的划分不能变更),请你给出邮路规划和邮车调度方案。请注意邮车的
调度必须满足上文中有关该地区的邮政运输流程及时限规定。
问题 3:
考虑到部分县与县交界地带的支局,其邮件由邻县县局负责运送可能会降低
全区的运行成本,带来可观的经济效益。若允许在一定程度上打破行政区域的限
制,你能否给出更好的邮路规划和邮车调度方案?
问题 4:
县局选址的合理与否对构建经济、快速的邮政运输网络起到决定性的作用。
假设图 2 中县局 X1,……,X5 均允许迁址到本县内任一支局处,同时原来的县
局弱化为普通支局。设想你是该地区网运部门负责人,请你重新为各个县局选址,
陈述你的迁址理由并以书面材料形式提交省局网运处。

2.模型的假设与符号说明

2.1 针对本问题,本文做出如下假设

1、公路不考虑等级差别,也不受灾情或交通情况的影响;
2、各条公路段骑车行驶速度认为是均匀;
3、此地区的行政划分比较合理;
4、假设区级邮车第一班邮车邮路和第二班邮车邮路一样。
5、假设支局的邮件只由一辆邮车运输。

2.2 符号说明

3.问题的数学模型

本题给出了某地市的邮政交通网络图,要求的是在不同的要求及条件下,邮
路的规划及邮车的调度方案。这是一类图上点的行遍性问题,也就是要用若干条
闭链覆盖图上所有的顶点,并使某些指标达到最优。
点的性变性问题在图论和组合最优化中分别称为哈密尔顿问题和旅行商问
题,就是研究图中是否存在经过所有顶点恰好一次的圈或路,这种圈或路 ( 如果
存在 ) 分别称为哈密尔顿圈或哈密尔顿路,简称为 H - 圈或 H - 路。而旅行商问题
通常是指在赋权图上经过所有顶点至少一次,且使总长度 ( 即边权之和 ) 达到最小
的闭链。而本题所求的多条邮路问题,则与多旅行商问题 (MTSP) 类似,也就是 m
条经过同一点并覆盖所有其它顶点又使边权之和达到最小的闭链 [1]
求解非完全图的多旅行商问题,通常所用的方法可分两步。
第一步是利用任意两点间的 最短路长度 作为该两点间边的权构造一个完全
图。这一点对于原图中没有边相连的点尤为重要。已经证明,该完全图中最优哈
密尔顿圈与原图上的最优旅行商路线等价。
在拓展完全图上求解最优哈密尔顿圈,可以表达成下述线性规划 ( 更确切地
讲是 0-1 规划)的形式:
值得注意的是,该模型求得的最优解(也就是多旅行商问题的最优解),能
使 k 条旅行商路线的总路程达到最小,但是这 k 条路线的均衡性可能相当差。因
此,但要求均衡性时还需要做大量的调整问题。
因为最小生成树能包含图 G 中的所有顶点 E ,而且最小树的边权是相邻两
顶点之间的距离,它描述了顶点之间的相近程度,因此可以考虑利用最小生成树
初步分块。
哈密尔顿问题和旅行商问题都属于 NP-完全难问题,也就是说上述模型的
求解目前没有多项式时间算法。对于本题的规模(由于各县局及地市局分开考虑,
包括构造增广完全图时添加的 k 1 个点不会超过 30),因此利用现有的软件(如
LINGO、ILOG)可以求到最优解,当然当问题的规模增大时,此法将变的不可行。
容易证明,单旅行商的最优路线长度,必定是多旅行商最优路线总长度的下界。

4.问题的求解

4.1 问题一的求解

此题的求解分为两步,第一步,求得最少需要的邮车数 m 。第二步,邮路规
划及路径选择。

4.1.1 最少邮车数的求法

最少邮车数m 可以采用下式求得:
当然,按此法求得邮车数,可能在有限的时间内不能遍历所有支局,由于邮
车在各支局需要卸装邮件,也有可能出现邮车的容量不足的冲突。如果出现这种
情况,可以按步长 1 加大邮车数,直到满足所有约束条件为止。

4.1.2 邮路规划及路径选择

定义 1 邮路是指邮车在完成邮件运输任务的过程中,从邮件分检中心到邮
政局所所运行的线路,即邮路。邮路是邮车运行过程中所经过的分检中心、各邮
件集散地、各邮政局所组成的交顶点序列,邮路包括辐射型邮路、环形邮路、混
合型邮路。
需注意的是, 邮路的逆序和顺序的邮路空车率将不同。因此,在运行时需要
考虑邮路的顺序。
b)问题的简化
此问题是典型的 CVRP Capacitated Vehicle Routing Problem 问题的扩展,
不同的地方有:
此问题的求解类似非完全图的多旅行商问题的求解:首先,对顶点分组,分
别求出各组的单旅行商路线,然后在组间进行适当的调整求得近似解。
分组以后,每组中求最佳旅行商回路,即为当个旅行商问题(TSP),再进行
进一步调整,使得各部分满足均衡条件(3)(4)。由于规模较小,路径选择将变得
较为简单,可以用 LINGO 算出。

4.1.3 问题的求解结果

县局 X1 的邮政线路图如下:
a) 最小邮车数
通过 Floyd 算法求出任意两点间的最短距离和路径来构造一个完全图,借助
LINGO 软件求出此图的最小哈密尔顿圈,其长度为 279 公里,县级邮车平均时
速为 30km/h ,因此一辆邮车只需要 9.3 小时就可以遍历所有支局(如果不考虑
邮车容量限制)。
考虑到第一班次邮车 08:00 到达县局 X1,区级第二班次邮车 16:00 从县局
X1 再出发返回地市局 D,且县局对邮件的集中处理时间为 1 小时(包括邮件的卸
装、分拣封发等处理时间),所以一辆邮车只有 6 小时工作时间。
寄达支局总的邮件数量有 176 袋,支局收寄的总的邮件数量有 170 袋,考虑
到每辆邮车总容量 65 袋,因此 最少的邮车数可能是 3。
通过求解于是总邮寄时间可达 18 小时,远大于 9.3 小时,应该可以满足时
间限制。
b) 邮路规划与路径选择
假设最少邮车数为 3,按前面论述的方法构造增广完全图,需要加入 2 个人
工顶点。
借助 LINGO 软件求出此增广完全图的哈密顿圈,如下图所示:
上图中的 17、18、19 号顶点为县局 X1,从图中可以看出,此圈包含 3 个交
叉的哈密顿圈。但同时考虑到邮车的容量及运行时间限制,按上述的启发式方法
应进行调整,结果如下表。
各邮路的方向及因空车率减少的收入如下表:

4.2 问题二的求解

4.2.1 问题的分析

问题二中考虑投入车况较好的邮车即每辆邮车能满足每条邮路的运载能力
要求,邮路规划及路径选择,使全区总的邮政运输网的总运行成本最低。
由于行政区域的限制,使得地市局和县局邮运相互独立,因此全区总的邮政
运输网的总运行成本最低等价于分别使地市局和 5 个县局的邮政运输网的总运
行成本最低。
此问题在数学上类似与多旅行商问题(MTSP)。因此,针对于每个县局(地市
局)的邮路规划及路径选择可以采用类似问题一的求法,区别在于此问题中的邮
车没有邮车容量的约束。

4.2.2 问题的求解结果

a) 地市区的邮路问题
Step1 最少邮车数的确定
通过 Floyd 算法求出任意两点间的最短距离和路径并加入县局 X1 X5 点构
造一个完全图,此完全图有顶点 Z58 Z73 16 点)、 X1 X5 (5 点)、 D 22
个顶点。
借助 LINGO 软件求出此图的最小哈密尔顿圈,哈密尔顿圈如下图:
最小哈密尔顿圈路径长度为:721 公里,区级邮车的平均时速为 65km/h,所
以一辆邮车至少需要 11.1 小时才能走完。
考虑到区级第一班次邮车出发时间必须在 06:00 之后,返回地市局 D 时间必
须在 11:00 之前,因此每辆邮车最多有 5 小时可工作时,因此最少需要 3 辆邮车。
Step2 规划与路径选择
同第一问的计算一样,加入 2 个虚拟点,求解结果如下表:
市局 D 总运行成本为 2870.4 元,最终 4 条邮路如下图所示:
b) 县区的邮路规划与路径选择
考虑到地市级邮车的工作时间及从地市局到县局的路程,计算出县局邮车工
作时间范围如下表:
全地区的总运行成本为 7354.1 元,地区的邮路如下图所示:

4.3 问题三的求解

4.3.1 问题分析

问题三在问题三的基础上考虑打破行政区域的限制,使全区总的邮政运输网
的总运行成本最低。
因此,让更近的县局来处理支局的邮件服务很有可能降低全区的邮政服务
成本,此将问题的求解变的非常复杂。
为了简化问题的求解,我们可以分析问题二的求解结果。
针对问题二的求解结果,在邮车运行过程中,某些邮路邮车的工作时间较
短,此条邮路可能还能处理邻县支局的邮政服务。在处理过程中,应尽量 减少邮
路,同时使邮路减短。

4.3.2 求解结果

综合分析各县区邮车工作时间范围,及全区各地市、县局的邮路中。我们发
现:
1. 县区 X2 X3 的邮路时间均有空闲,经过调整后结果如下:
经全面调整后,总运行成本为 6766.8 元,共减少 587.3 元即 8% ,调整后邮
路如下图所示,同时,县区 X3 X5 各减少一条邮路,即可少投入 2 辆邮车。

4.4 问题四的求解

4.4.1 问题分析

邮政服务的高效性在很大程度上取决于交通系统的有效性,一般而言县局处
于交通枢纽位置。
如果求得的中心顶点有m ( m > 1 ) 个,则逐个比较用这 m 个中心顶点替换县
局后多旅行商路程的大小,选择其中最小的那个作为县局。

4.4.2 求解结果

Step1 求各县局或地市局的中心顶点
针对每个县局或地市局,通过 Floyd 算法求出任意两点间的最短距离和路径
来构造一个完全图,然后再计算出给顶点的度如下:
由上面各表的数据可知,各县局的中心顶点是 X1、 X2 Z31 X4 Z51
即县区 3 和县区 5 的县局点可能需要分别迁到 Z31 Z51 顶点,其他县区的县
局点保持不变。
Step2 验证中心顶点是否调整为县局
1.Z31 替换 X3 作为县局
采用前面求解其多旅行商路线及路程长度的方法,求出其邮路及邮路的路程
如下表所示:
其中,顶点 76 代表 X3 点,两邮路总路程为 184 公里。替换前总路程为:
254 公里,缩短了 70 公里,近 30% 。替换后的邮路图如下图所示:
2. Z51 替换 X5 作为县局
采用前面求解其多旅行商路线及路程长度的方法,求出其邮路及邮路的路程
如下表所示:
县局迁址申请书
尊敬的市领导:
为了在全市区构建经济、快速的邮政运输网络,特申请将县区 X3 县局地址
迁至 Z31 ,将县区 X5 县局地址迁至 Z51 。理由如下:
县区 X3 X5 的县局位置处在县区的边缘位置,不利于邮政运输,若将县局
地址分别迁至 Z31 Z51 ,这 2 个位置均处于县区交通中心位置,区级邮车送来
的邮件可方便、快速地分发到县内各支局,县内邮车行驶路程可分别减少 28%
7.2% ,可节省大量运输成本。
基于以上理由,特向市领导提出申请。
申请人: ΧΧΧ
2007-10-22

5.模型的进一步讨论

该问题是一个 CVRP 问题,是已被论证的 NPC 问题,至今仍无有效的算法。
求最优 Hamilton 回路是该问题的常见的计算机近似算法,它不能保证得到最优
解,运算量很大,这种算法能很容易在图论文献中查到。
我们的策略改进方法不能保证求得最优解,但接近最优解。并且所提出的策
略能大幅度减少计算量。
我们提出一组规则对图分块,但未能给出一个准确的原则定量地给出总路程
最短通均衡性最好的制约关系。

参考文献

[1] 丁颂康,灾情巡视的最佳路线,数学的实践与认识,第 29 卷 第 1 1999 1 月。
[2] 肖峰,邮政车辆调度问题研究,硕士论文, 2007 3 月。
[3] 罗卢杨,龙继东,唐小军,灾情巡视路线寻优模型,数学的实践与认识,第 29 卷 第 1
1999 1 月。
[4] Chen Ailing, Yang Genke, Wu Zhiming, An Effective Hybr id Optim ization Algor ithm
for Capac itated Vehicle Routing Problem, Journal of Shanghai J iao tong U niversity
(Science) ,Vo l. E211,No. 1, 2006, pp.50 55.
[5 ] R Fukasawa, H Longo, J Lysgaard , Robust Branch and Cut and Price for the Capacitated Vehicle
Routing Problem, Mathematical Programming,2005.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/318433.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

记录下载安装rabbitmq(Linux) 并整合springboot--详细版(全)

下载rabbitmq(Linux): erlang压缩包: https://share.weiyun.com/TGhfV8eZ rabbitMq-server压缩包: https://share.weiyun.com/ZXbUwWHD (因为RabbitMQ采用 Erlang 实现的工业级的消息队列(MQ)服务器&#…

推荐一款.NET开发的物联网开源项目

物联网(IoT)是一个正在快速发展的技术领域,它涉及到各种设备、物体和系统的互联。所以各种物联网平台和物联网网关项目层出不穷,在物联网(IoT)领域,.NET平台扮演着重要的角色。作为一款广泛使用…

备战抖音商城好物年货节,品牌焕发新商机

农历春节前的最后一个月,打工人们逐渐将置办年货提上日程。忙碌了一年的辛苦与疲惫,总能在喜气洋洋买年货的过程中,被一扫而空。这是“年味”的开始,也是公司高管郭广宇面临的一场关键战役。 郭广宇今年35岁,是三只松鼠…

强化学习应用(八):基于Q-learning的无人机物流路径规划研究(提供Python代码)

一、Q-learning简介 Q-learning是一种强化学习算法,用于解决基于马尔可夫决策过程(MDP)的问题。它通过学习一个价值函数来指导智能体在环境中做出决策,以最大化累积奖励。 Q-learning算法的核心思想是通过不断更新一个称为Q值的…

uni-app做A-Z排序通讯录、索引列表

上图是效果图,三个问题 访问电话通讯录,拿数据拿到用户的联系人数组对象,之后根据A-Z排序根据字母索引快速搜索 首先说数据怎么拿 - 社区有指导https://ask.dcloud.net.cn/question/64117 uniapp 调取通讯录 // #ifdef APP-PLUSplus.contac…

【深度学习目标检测】十六、基于深度学习的麦穗头系统-含GUI和源码(python,yolov8)

全球麦穗检测是植物表型分析领域的一个挑战,主要目标是检测图像中的小麦麦穗。这种检测在农业领域具有重要意义,可以帮助农民评估作物的健康状况和成熟度。然而,由于小麦麦穗在视觉上具有挑战性,准确检测它们是一项艰巨的任务。 全…

DP读书:《openEuler操作系统》(八)TCP、UDP与跨机器通讯

10min速通TCP与UDP 2024 DP读书计算机网络简介TCP/IP协议栈A. 物理层1.信号及信道传递2.信号调制与调解3.信道的复用 B. 数据链路层1.封装成帧2.透明传输3.差错控制 C. 网络层1.IP2.ARP3.路由选择协议 D. 传输层1.端口号2.3.UDP 2024 DP读书 第八章 跨机器通讯 在第六章之中&a…

翻译: Streamlit从入门到精通 基础控件 一

这个关于Streamlit的教程旨在帮助数据科学家或机器学习工程师,他们不是网络开发者,也不想花费数周时间学习使用这些框架来构建网络应用程序。 1. 什么是Streamlit? Streamlit是一个免费且开源的框架,用于快速构建和共享美观的机器…

(南京观海微电子)——色温介绍

色温是表示光线中包含颜色成分的一个计量单位。从理论上说,黑体温度指绝对黑体从绝对零度(-273℃)开始加温后所呈现的颜色。黑体在受热后,逐渐由黑变红,转黄,发白,最后发出蓝色光。当…

【MCAL】MCU模块详解

目录 前言 正文 1. MCU模块介绍 2. MCU依赖的模块 3. MCU模块提供服务 3.1 时钟的初始化 3.2 MCU模式的配置 3.3 MCU软件复位功能 3.4 RAM的初始化 4.MCU重要数据类型 4.1 Mcu_ResetType 4.2 Mcu_ModeType 5. MCU重要API 5.1 Mcu_Init 5.2 Mcu_InitClock 5.3 M…

qayrup-switch开发文档

因为只是一个小组件,所以直接拿csdn当开发文档了 书接上文uniapp怎么开发插件并发布 : https://blog.csdn.net/weixin_44368963/article/details/135576511 因为我业没有开发过uniapp的组件,所以我看到下面这个文件还是有点懵的 也不清楚怎么引入, 然后去翻了翻官方文档,官方…

Java设计模式-备忘录模式

备忘录模式 一、概述二、结构三、案例实现(一)“白箱”备忘录模式(二)“黑箱”备忘录模式 四、优缺点五、使用场景 一、概述 备忘录模式提供了一种状态恢复的实现机制,使得用户可以方便地回到一个特定的历史步骤&…

系列七、Spring Security中基于Jdbc的用户认证 授权

一、Spring Security中基于Jdbc的用户认证 & 授权 1.1、概述 前面的系列文章介绍了基于内存定义用户的方式,其实Spring Security中还提供了基于Jdbc的用户认证 & 授权,再说基于Jdbc的用户认证 & 授权之前,不得不说一下Spring Se…

[Vue]从数据库中动态加载阿里巴巴矢量图标的两种方式

记录一次在Vue中动态使用阿里巴巴矢量图标库 这是本人第一次使用阿里巴巴的矢量图标库,简单的导入和使用的话网上的教程很多,这里不多赘述,本人的需求是从数据库中加载出来并且显示到页面上,接下来简述一下如何实现。 以下代码均是…

【非监督学习 02】高斯混合模型

高斯混合模型(Guassian Mixed Model, GMM)也是一种常见的聚类算法,与K均值算法类似,同样使用了EM算法进行迭代计算。高斯混合模型假设每个簇的数据都是符合高斯分布的,当前数据呈现的分布就是各个簇的高斯分布叠加在一…

QT通过QPdfWriter类实现pdf文件生成与输出

一.QPdfWriter类介绍 本文代码工程下载地址: https://download.csdn.net/download/xieliru/88736664?spm1001.2014.3001.5503 QPdfWrite是一个用于创建PDF文件的类,它是Qt库的一部分。它提供了一些方法和功能,使您能够创建和写入PDF文件。…

极简Oracle 11g Release 2 (11.2.0.1.0)

注意:此法无法安装oracle11g(11.2.0.4),会报如下错: [FATAL] [INS-10105] The given response file /assets/db_install.rsp is not valid. 一、下载解压ORACLE安装包。 从 oracle 官网 下载所需要的安装包,这里我们以 oracle 11…

113.QT中的信号槽

目录 一、信号和槽概述 信号和槽的基本概念: 信号和槽的关系: 二、标准信号槽使用 三、自定义信号槽的使用 自定义信号: 自定义槽: 四、Lambda表达式 1.Lambda 表达式不带参数和返回值: 2.Lambda 表达式带参…

GitHub Copilot的使用方法和快捷按键

GitHub Copilot是GitHub与OpenAI合作开发的一款人工智能编码助手。它基于GPT(Generative Pre-trained Transformer)模型,可以为你提供代码补全、建议和生成的功能 使用方法: 安装插件: 首先,确保你的开发环…

如何解决NAND系统性能问题?-- NAND接口分类

三、NAND接口 NAND闪存接口是连接主机控制器与NAND存储芯片的通信桥梁,负责命令、地址和数据的传输。典型的NAND闪存接口包括一组I/O线(通常为8条或更多)用于数据传输,以及若干控制信号线。 基本接口信号: Chip Enable…