1998年数学建模灾情巡视路线的设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于多旅行商的最优灾情巡视路线设计
摘要
本文将求最佳灾情巡视路线问题转化为图论中求最佳旅行商回路的问题,并用近似算法去寻求近似最优解.
针对第一问,首先从题目给出图中人工提取出部分点间残缺的最短路权矩阵,利用Floyd算法将权矩阵完备化,在原图中标记各点间的最短路径,得到有六条主干的公路图.其次依据三项分类原则将公路主干图分成三组,得到两种分类.再比较两种分类的均衡性,将公路分为(①,②),(③,④),(⑤,⑥).再用模拟退火算法求出各组中的最短路径.计算得出最短路径的均衡度为56.62%,大于标准0.2.于是对分类结果进行修正,将第一组的几个点分到第三组.修正后得到最短路径的均衡度为8.45%,得到近似最优巡视路线.
针对第二问,首先将第一问中的权矩阵处理得到最少花费时间矩阵,由题目要求建立不等式,求解出需将公路分为四组.故在第一问的分类方法中增加时间考量,将公路分为四组.再用模拟退火算法求出各组最少花费时间路径,得到此时的均衡度为4.62%.得到近似最优巡视路线.
针对第三问,有题设条件建立不等式,得各组最短花费时间不超过 6.43h.故采用一种最短路线调整算法求出在最短时间6.43小时内, 用22组就可以完成巡视.
针对第四问,研究了在不影响分组的均衡条件下,,,
T t V的允许变化范围 , 并得出了这三个变量的关系式,并由此对分三个组的情况进行了具体讨论.
关键词:旅行商问题 Floyd 模拟退火均衡度
一、问题重述
已知某县遭受水灾.为考察灾情、组织自救,县领导决定,带领有关部门负责人到全县各乡(镇)、村巡视.下图为此县的乡(镇)、村公路网示意图,公路边的数字为该路段的公里数.要求巡视路线指从县政府所在地出发,走遍各乡(镇)、村,又回到县政府所在地的路线.
1. 若分三组(路)巡视,试设计总路程最短且各组尽可能均衡的巡视路线.
2. 假定巡视人员在各乡(镇)停留时间 T=2 小时,在各村停留时间t=1 小时,汽车行驶速度V=35 公里/小时.要在24 小时内完成巡视,至少应分几组;给出这种分组下你认为最佳的巡视路线.
3. 在上述关于 T , t 和V 的假定下,如果巡视人员足够多,完成巡视的最短时间是多少;给出在这种最短时间完成巡视的要求下,你认为最佳的巡视路线.
4. 若巡视组数已定(比如三组),要求尽快完成巡视,讨论T,t 和V 改变对最佳巡视路线的影响.
图1公路网示意图
二、问题分析
如果巡视人员只分一组,巡视路线是指巡视人员从县政府O出发,沿乡村公路遍历各乡镇、村,最后回到县政府.把该问题抽象为图论的赋权连通图问题,
即有一赋权无向连通图(,)G V E ,O V ∈;两村之间公路的长度,即为该示向图的边权()e ω.寻找一条最佳的路线 , 即在图(,)G V E 中,找到一条包含的回路,它至少经过所有的顶点E 一次,使总路程(总时间)最小,这是一个一般推销员问题(general salesman problem).
如果巡视人员分成若干组 , 每组考察一部分区域 , 且所有乡村都考察到.如果能把这些乡村分块,即图(,)G V E 中把图分为若干个连通的子图G ,每个子图i G 中寻找一条包含O 的回路i L ,则对每个子图i G 而言,化为一般推销员问题.
完成巡视的时间应是各组巡视时间中最长的时间,故为使巡视效率高,应尽量使各组巡视时间接近,反映在图G 分块时应尽量均衡.
三、 符号说明
所有用到符号如下:
ij w 公路图的权矩阵 ij x
公路图的邻接矩阵 k C
某分组下的第k 组路径长度 C
总路程
T
在各个乡镇的停留时间 t
在各个村的停留时间 V 汽车行驶的平均速度 k m 第k 组巡视乡镇个数 k n
第k 组巡视村个数 K h 第k 组花费时间 ij M 第i 点到第j 点花费时间
四、 模型假设
所有模型基于以下假设:
1)汽车在路上的速度总是一定,不会出现抛锚等现象;
2)巡视当中,在每个乡镇、村的停留时间一定,不会出现特殊情况而延误时间;
3)每个小组的汽车行驶速度完全一样;
4)分组后,各小组只能走自己区内的路,不能走其他小组的路(除公共路外).
五、模型建立与求解
5.1问题一的模型
第一问中,要在返回O点的条件下,找到三组路径,使得总路径最短且三组划分均衡.因此我们考虑先以三组尽可能均衡为目标,划分出各组,把问题转化为三个旅行商问题.之后求出各分组的最短路径.具体实施过程如下:首先我们对数据进行了处理,从图中人工提取出各邻接点之间的权及较近两点之间的最短路的权,得到图1的残缺权矩阵(见附录).之后利用Floyd算法求出缺省值,得到图一的完备权矩阵(部分如下表).
表1完备权矩阵局部表
在用Flody算法求缺省值时,我们能得到O点到其他点的最短路,在原图中进行标注,去掉没有标注的路,得到如下图:
图2O点到各点公路图
易见,从O点出发到其它点共有6条干枝,我们对其进行标注:
图3公路主干图
然后我们对图三中的公路进行分类,将其分为三组,分组依据如下:1)尽量使同一干枝上及其分枝上的点分在同一组.
2)应将相邻的干枝上的点分在同一组.
3)尽量将长的干枝与短的干枝分在同一组.
由上述分组准则,我们找到两种分组形式如下:
分组1:(⑥,①),(②,③),(⑤,④)
分组2:(①,②),(③,④),(⑤,⑥)
显然分组1极不均衡,我们考虑分组2.这样我们就把多旅行商问题转化为了单旅行商问题.
对分组2中的各组建立模型如下:
1111
min 1..10,1n
n
k ij ij
i j n
ij i n ij j ij C x w x s t x x =====⋅⎧=⎪⎪⎪=⎨⎪⎪=⎪⎩
∑∑∑∑
用模拟退火算法求解得分组2的路线如下:
表2分组二最短路线表
引入均衡度指标:max min max k k
k
C C
C α-=
,规定0.2α≤分组均衡.计算得分组二
的均衡度为131228.899.25
0.5662228.8
C C C α--=
==,所以此分法的均衡性很差. 为改善均衡性,将第一组中的顶点C,2,3,D,4分给第三组(顶点2为这两组的公共点),重新分分组后的近似最优解如下: