“华为杯“第四届中国研究生数学建模竞赛-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.

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

隧道应用3-Cobalt Strike正反向连接多层内网

Cobalt Strike 正向连接多层内网: teamserver 不允许访问 B ,但是服务器上A有权限( A 与 B 在同一网段),若 A 服务上已经有了 cs 的后门,则可以通过 cs 的正向连接去连接 B ,在 teamserver 通…

datavrap可视化设计器使用手册

datavrap使用手册 一、产品简介 datavrap是一个动态数据可视化设计器,通过简单配置生成可视化视频,图片和gif。 站长:B站UP,夹克mnnm 这个产品的灵感是在做B站视频时,觉得每次通过修改代码录屏实现视频制作太过于繁琐&…

基于Matlab/Simulink的MIL仿真验证解决方案

文章目录 需求追溯 虚拟环境 模型检查 仿真验证 测试报告 参考文献 针对模型开发阶段的ECU算法,可以很直接地将其与虚拟车辆模型连接起来,通过MIL对其进行验证和确认。可以在开发过程的早期检测到设计错误和不正确的需求,也有助于安全地…

浅析爱泼斯坦事件 —— 弱电控制强电原理

据网络文字与视频资料,爱泼斯坦事件是犹太精英阶层,为了掌控美国国家机器为犹太利益集团服务,而精心设下的一个局。本文先假设这个结论成立,并基于此展开讨论。 我们知道,弱电管理强电是电气工程中的一门专门学问&…

SouthernBiotech抗荧光淬灭封片剂

荧光淬灭又称荧光熄灭或萃灭,是指导致特定物质的荧光强度和寿命减少的所有现象。引起荧光淬灭的物质称为荧光淬灭剂。SouthernBiotech专门开发的Fluoromount-G系列荧光封片剂是以甘油为基础,加入抗荧光淬灭剂,可明显降低荧光淬灭现象&#xf…

天津python培训学校 Python有怎样的前景?

很多人以为Python之所以变得火热的原因是人工智能和大数据的兴起,这并非是全部的原因,Python是一门很适合人工智能领域的编程语言,人工智能目前虽然还处于前期阶段,但是对人工智能方面的人才确在不断增加,能够提供的岗…

mysql数据库优化

数据库的性能调优和优化是指通过优化数据库结构、SQL语句的编写以及服务器硬件和操作系统等方面的配置,来提高数据库的响应速度和稳定性,以满足业务需求。 结合实际需求,从以下四个方面进行讲解。 一、数据库设计优化 二、SQL语句优化 三、…

为什么很多公司选择不升级JDK版本,仍然使用JDK8?

在讨论为什么许多公司选择不升级JDK版本,而继续使用JDK 8时,我们需要从多个角度来分析这个问题。以下是根据您提供的背景信息进行的一些分析和真实案例。 本文已收录于,我的技术网站 ddkk.com,有大厂完整面经,工作技术…

[易语言]易语言调用C++ DLL回调函数

易语言适合用于数据展示,数据的获取还是VC来的快、方便哈。 因此我一般使用VC编写DLL,使用易语言编写界面,同一个程序,DLL和EXE通讯最方便的就是使用接口回调了。 废话少说,进入主题。 1. VC编写DLL 为了DLL能够调…

软件测试作业‖若依系统的自动化+性能

以若依系统或者任意系统作为案例,题目:以某一 web系统为测试对象,完成以下文档的编写: (1)产品规格说明书(SPEC) 要求:功能完整(完成产品需求70%以上)、UI优良(每个页 面均有字段约束和合理的出错提示)、流程完整(一一对应功能)、流程合理(处理逻辑非…

什么类型的企业需要工单系统?适用场景与优势分析

在现代商业中,必须高效地管理与跟踪大量任务和工作流程。对一些企业而言,处理很多订单是一项具有挑战性的任务。此订单可能来自客户需求、内部问题反馈或各种业务流程中的任务分配。可是,如果没有好的解决方法,这类订单可能会致使…

电影《北国红豆》剧情简介

该片由北京电影制片厂拍摄,王好为执导,刘晓庆,于绍康,金鑫,张国民等主演,1984年上映。 农村姑娘鲁雪枝远离家乡,投奔到大兴安岭的姐姐家落户。她经过刻苦学习,于林业中学毕业后&…

抖音矩阵云混剪系统源码多平台多账号一站式管理(免授权版)

抖音矩阵云混剪系统源码 短视频矩阵营销系统V2.2.1(免授权版) 中网智达矩阵营销系统多平台多账号一站式管理,一键发布作品。智能标题,关键词优化,排名查询,混剪生成原创视频,账号分组,意向客户自动采集,智能回复,多账号评论聚合回复,免切换,免登陆发布….助力您在…

Flutter开发进阶之动画

Flutter开发进阶之动画 在Flutter中,动画是至关重要的一个部分,它能够为应用程序提供更加丰富和生动的用户体验,Flutter中的动画系统是UI框架的核心功能之一,也是开发者学习Flutter框架的重要部分,由于动画原理在所有…

Spring之AOP源码(二)

书接上文 文章目录 一、简介1. 前文回顾2. 知识点补充 二、ProxyFactory源码分析1. ProxyFactory2. JdkDynamicAopProxy3. ObjenesisCglibAopProxy 三、 Spring AOP源码分析 一、简介 1. 前文回顾 前面我们已经介绍了AOP的基本使用方法以及基本原理,但是还没有涉…

2023年全国职业院校技能大赛软件测试赛题—单元测试卷⑤

单元测试 一、任务要求 题目1:根据下列流程图编写程序实现相应处理,执行j10*x-y返回文字“j1:”和计算值,执行j(x-y)*(10⁵%7)返回文字“j2:”和计算值,执行jy*log(x10)返回文字“j3:”和计算值…

经典目标检测YOLO系列(二)YOLOv2算法详解

经典目标检测YOLO系列(二)YOLOv2算法详解 YOLO-V1以完全端到端的模式实现达到实时水平的目标检测。但是,YOLO-V1为追求速度而牺牲了部分检测精度,在检测速度广受赞誉的同时,其检测精度也饱受诟病。正是由于这个原因,YOLO团队在20…

clickhouse join查询算法

算法对比: 使用方法: SELECT town,max(price) AS max_price,any(population) AS population FROM uk_xxx_paid JOIN uk_xxx_table ON lower(uk_price_paid.town) lower(uk_populations_table.city) GROUP BY town ORDER BY max_price DESC SETTINGS jo…

代码随想录 Leetcode349. 两个数组的交集

题目&#xff1a; 代码(首刷看解析 2024年1月14日&#xff09;&#xff1a; class Solution { public:vector<int> intersection(vector<int>& nums1, vector<int>& nums2) {unordered_set<int> a;unordered_set<int> res;for(int i 0…

Centos7 安装与卸载mysql

卸载 ps ajx | grep mysql &#xff1a; 查看当前服务器是否有mysql 没有的话就不需要卸载咯。 centos7 通过yum下载安装包通常是以.rpm为后缀&#xff0c;rpm -qa 可以查看当前服务器上所有的安装包&#xff1a; rpm -qa | grep mysql | xargs yum -y remove :将查询到的mysql…