灾情巡视路线.docx
《灾情巡视路线.docx》由会员分享,可在线阅读,更多相关《灾情巡视路线.docx(11页珍藏版)》请在冰豆网上搜索。
![灾情巡视路线.docx](https://file1.bdocx.com/fileroot1/2023-1/8/a3a70907-d3e6-4cd9-9840-395fc4580d13/a3a70907-d3e6-4cd9-9840-395fc4580d131.gif)
灾情巡视路线
建模案例:
最佳灾情巡视路线
【摘要】本题是一类图上的点的行遍性问题,也就是求m条经过同一点并覆盖所有其它顶点又使边权之和达到最小的闭链。
我们采用了分区求解的方法,并提出了基于最小生成树的分区原则、边界调整原则和均衡度函数,保证了模型的合理性和解的有效性。
在解题过程中我们应用了VC6.0和其他一些计算机软件。
【关键字】最小生成树多旅行商问题
一、问题的重述
下图为某县的乡(镇)、村公路网示意图,公路边的数字为该路段的公里数。
今年夏天该县遭受水灾,为考察灾情,组织自救,县领导决定,带领有关部门负责人到全县各乡(镇)、村巡视,巡视路线指从县政府所在地出发,走遍各乡(镇)、村,又回到县政府所在地的路线。
1、若分三组巡视,试设计总路程最短且尽可能均衡的巡视路线。
2、假定巡视人员在各乡(镇)停留时间T=2小时,在各村停留时间t=1小时,汽车行驶速度为V=35公里/小时。
要在24小时内完成巡视,至少应分几组;给出这种分组下你认为最佳的巡视路线。
3、在上述关于T、t、V的假定下,如果巡视人员足够多,完成巡视的最短时间是多少;给出在这种最短时间完成巡视的要求下,你认为最佳的巡视路线。
4、若巡视组数已给定(比如三组),要求尽快完成巡逻,讨论T、t和V改变对最佳巡视路线的影响。
二、问题的假设
1、公路不考虑等级差别,即可将所有路面状况视为相等,
车辆在所有公路上速度保持恒定。
2、交通情况不受灾情影响,即车辆在所有公路上都可以顺利通过。
3、各巡视组统一行动,不可再分成小组进行巡视。
4、对于某些至少要经过两次的乡(镇)、村,认为仅在第一次经过这些地点时停留,以后再经过就不再停留。
5、对于某两个区域的公共乡(镇)、村,只要任一个巡视组停留过,其它组经过时就不再作停留。
三、参数的说明
Pi各巡视组的巡视路程长度i=123…n
ti各巡视组的巡视时间i=123…n
n组数
B距离均衡度函数
b时间均衡度函数
四、模型的建立与求解
本题是一类图上的点的行遍性问题,也就是要用若干条闭链覆盖图上所有的顶点,使某些指标达到最优。
本题所要求的分组巡视的最佳路线,与多旅行商问题类似,也就是求m条经过同一点并覆盖所有其它顶点又使边权之和达到最小的闭链。
旅行商问题都属NP完全类问题,对于本题的规模,要想求得真正的最优解是不现实的,只能求得近似最优解。
1、第一问的求解
第一问要求设计分三组巡视总路程最短且尽可能均衡的巡视路线。
设三组的巡视路线长度从小到大为P1、P2、P3,则我们要达到的目标为
minP1+P2+P3
(1)
minP3-P1
(2)
但是这两个目标函数是互相矛盾的,即它们不可能同时达到最小。
因此在求解时,要折衷考虑。
具体求解步骤如下:
step1采用一定的分区原则[注1]将地图分成三个区。
step2按区寻找最小生成树,并在其基础上求解最短回路。
step3求出每条回路的长度,代入距离均衡度函数[注2],如果满足条件则终止;否则,按调整原则[注3]将区域进行调整,返回step2。
[注1]分组原则。
首先,以O点为起点,采用Kruskal方法,得到一个基于整个公路网的最小生成树,将其分解,以得到三个子图,使得分解结果尽量均衡。
由于在最小生成树上,边权(相邻两顶点之间距离)接近,可略认为均衡是指各子图包含的顶点数接近,在本题中指尽量接近17个。
综上有以下分区原则
i.分解点为O点,或尽可能接近O点。
ii.分解所得的三个子图所包含的顶点数尽可能接近17个。
iii.尽量使每一个子图为连通图。
iv.尽量使每一个子图中与点O的最短路上的点在该子图内。
尽量使各子图的点在子图内部形成环路。
整个图的最小生成树
[注2]距离均衡度函数:
B=
当B≤0.1时,认为结果是均衡的。
[注3]调整原则。
在本题中我们采用边界调整法,其主要目标是在边界对各区域进行调整,以提高各组的均衡程度。
具体调整步骤为:
第一步为增强相邻区域的可调整性,规定首先对相邻边界点较多的两区域进行调整。
第二步优先对P最小的区域Ⅰ和P最大的区域Ⅲ之间进行调整,若这两个区域之间的相邻点相对较少,则通过第三个区域Ⅱ进行Ⅰ、Ⅱ和Ⅱ、Ⅲ之间的调整。
由上述分区原则和求解步骤得到的分区图和路径如下:
分区方案一
路线
路线长度(公里)
总长度
Ⅰ区
O-1-B-34-35-32-31-33-A-
R-29-Q-28-27-24-23-N-26-
P-O
197.6
582.5
Ⅱ区
O-M-25-21-K-22-17-16-I-
15-I-18-J-19-L-20-L-6-5-
2-O
174.8
Ⅲ区
O-2-3-D-7-E-11-G-13-14-
H-12-F-10-F-9-E-8-4-D-3-
C-O
210.1
采用上述方案得到的路线总长度较小,但是均衡度为B=0.18不满足要求,应进行调整。
在调整过程中,我们发现边界上的点存在三个敏感区域,它们是N点23点24点、13点14点和C点。
这三个敏感区域的归属不同,造成了分区的不同和结果的不同。
原因是这三个区域离O点较远,对路程总长度的影响大,同时它们的划分对子区域的边界处能否形成回路(见分区原则iv)有很大影响。
将Ⅲ区的13点14点调到Ⅱ区去,得到新的分区和路径如下
分区方案二
路线
路线长度(公里)
总长度
Ⅰ区
O-1-B-34-35-32-31-33-A-
R-29-Q-28-27-24-23-N-26-
P-O
197.6
597.3
Ⅱ区
O-M-25-21-K-22-17-16-I-
15-14-13-J-19-L-6-5-2-O
196
Ⅲ区
O-2-3-D-7-E-11-G-12-H-
12-F-10-F-9-E-8-4-D-3-
C-O
203.7
均衡度B=0.04满足要求。
2、第二问的求解
由于T=2小时,t=1小时,V=35公里/小时,需访问的乡镇17个,村35个,则在乡(镇)、村总的停留时间为17×2+35×1=69小时,需在24小时内完成巡视,若仍分三组的话,平均每组只有1小时的行路时间,只能走35公里,无法在规定时间内走完所有的乡(镇)、村。
因此,考虑行路时间,至少要分四组。
与第一问类似,设这四组的巡视时间从小到大为t1t2t3t4,我们要实现的是下面两个目标函数
mint1+t2+t3+t4
mint4-t1
在具体求解时,仍采用第一问中的分区域--求区域内的最小生成树--根据最小生成树找回路--计算均衡度--调整的方法。
下面只对分区原则和均衡度函数作以下补充
(1)将原地图分成四个区。
(2)分区时要尽量使各组的停留时间相等。
可先将相对集中的乡(镇)划为一个区,兼顾乡(镇)个数的均匀,再通过调整村的划分来实现时间上的均衡。
(3)均衡性的衡量采用时间均衡度函数
时间均衡度函数b=
b≤0.1时认为是均衡的
按照以上步骤,采用计算机搜索的方法,得到一组较优解,括号中的点表示只经过不停留。
四个巡视组的区域划分
路线
路线长度(公里)
行走时间
停留时间
每组所用时间
总时间
Ⅰ区
O-1-B-34-35-32-31-33-A-
R-29-Q-30-(Q)-29-P-O
147.2
4.21
18
22.21
87.37
Ⅱ区
O-
(2)-5-6-7-E-9-F-10-(F-9-
E)-8-4-D-3-C-O
142.9
4.08
17
21.08
Ⅲ区
O-M-(6)-L-20-19-J-13-14-H-
12-G-11-(J-19-L-6-5)--O
171.7
4.91
17
21.91
IV区
O-(P)-28-27-26-N-24-23-22-
17-16-I-15-(I)-18-K-21-25-
M-O
180.9
5.17
17
22.17
b=0.052符合要求
3第三问的求解
若有足够多的巡视人员,要求出完成巡视的最短时间,并给出在最短时间下的最佳巡视路线。
这是求点集的最小覆盖问题,子集覆盖问题属于NP--完全类,无法在短时间内找到最优解。
可以求出巡视距o点最远的乡(镇)所需的最短时间Tmin,这样,其他各组的巡视时间都不应超过Tmin。
引入点权的概念,若为乡镇,点权为2;若为村,点权为1,即为在该点的停留时间。
diji点到j点的最短通路长
wii点的权
ei从o点到j点巡视的最短时间
在最短时间的限制下,完成巡视的最优路线应满足如下条件:
(1)每个组的巡视时间不能超过最短时间Tmin
(2)所有的点都应巡视到,不能漏点
(3)所需巡视组数要尽量少
寻找最优路线的具体方法如下:
step1、利用Floyd算法求得图中任意两点的最短通路长。
可以得到o点到各点巡视最短时间ei=wi+dij×2÷V,找到其中最大的时间即为Tmin。
Step2、将未巡视过的点按doi(o点到i点的最短通路长)的大小排序,选择距离o点最远的i点作为巡视点,给i点加巡视过标记。
在余下点中寻找j点,看这一组能否巡视该点。
j点的寻找原则为:
doj-dij最大。
若Tmin-doi-wi-wj-dij-doj>0,可以巡视j点;否则不能巡视j点。
再按照同样的原则,看该组能否巡视其它点。
若无可巡视点,计算该组的巡视时间,开始新一组的巡视路线搜索
Step3、第二步只是找到了每组巡视的停留点,再利用Dijsktra算法,找到从o点出发,经过这些停留点的最短路线。
通过以上算法我们找到的最优解是22组,如下表:
编号
巡视路径
停留地点
所需时间
时间差
1
O-M-25-20-19-J-13-14-13-J-19-20-25-M-O
H
6.43
0
2
O-2-5-6-L-19-J-13-14-13-J-19-L-6-5-2-O
13,14
6.15
0.28
3
O-M-25-21-K-18-I-J-16-17-K-21-25-M-O
15,16
6.31
0.12
4
0-2-5-6-7-E-9-F-12-G-11-E-7-6-5-2-O
12,11
5.94
0.49
5
O-2-5-6-7-E-8-E-9-F-10-F-9-E-7-6-5-2-O
8,10
6.22
0.21
6
O-2-5-6-7-E-11-G-11-E-7-6-5-2-O
G
5.54
0.89
7
O-2-5-6-7-E-9-F-9-E-7-6-5-2-O
9,F
6.14
0.29
8
O-2-5-6-L-19-J-18-K-21-25-M-O
J,18
6.29
0.14
9
O-M-25-21-K-18-I-18-K-21-25-M-O
I
5.49
0.94
10
O-M-25-21-K-17-22-23-N-26-P-O
17,22,23
6.12
0.31
11
O-2-5-6-L-19-L-6-5-O
L,19
5.64
0.79
12
O-M-25-20-21-23-24-N-26-P-O
20,21,24
6.10
0.33
13
O-M-25-21-K-21-25-M-O
25,K
5.50
0.93
14
O-2-5-6-7-E-7-6-5-2-O
6,7,E
6.38
0.05
15
O-R-31-32-35-34-A-1-O
31,32,34,35
6.30
0.13
16
O-R-29-Q-30-Q-30-Q-28-P-O
Q,30,28
6.11
0.32
17
O-P-26-27-26-N-26-P-O
26,27,N
6.23
0.20
18
O-2-3-D-4-D-3-2-O
3,4,D
5.99
0.44
19
O-1-A-33-31-R-29-R-O
A,33,39
5.97
0.46
20
O-2-5-M-O
2,5,M
5.40
1.03
21
O-1-B-C-O
1,B,C
5.98
0.45
22
O-P-O-R-O
P,R
5.32
1.14
各组巡视时间的均衡度为:
0.17
4第四问的求解
若巡视组数已定,则每组所用的时间为ti=xi×T+ci×t+si÷V
xi第i组停留的乡(镇)
ci第i组停留的村
si第i组的巡视路线长度
当T、t不变而V增加时,ti主要受V影响,因此要求路线的均衡性比较好。
这时需对xi、ci作调整,对路程较长的组尽量考虑停留较少的村。
当V不变而T、t增大时,ti主要受xi、ci影响,此时乡(镇)、村分布的均衡性就显得十分重要。
特别是乡(镇),T越大,对乡(镇)的均衡性要求就越高。
各组的巡视路线的均衡度可以差一些,因为在T、t大到一定程度时,si÷V可忽略。
五、模型的优缺点分析
优点:
1、适用范围广,模型对于一些同类的图论问题同样适用,且易于推广到点数较多的情况。
2、对模型建立和求解过程进行了详尽的讨论,在第一问中,对路径长度和与均衡性作了折衷考虑,分别提出了两种情况下的较优解。
缺点:
1、无法证明其为最优路线,而仅仅是一个较优解。
2、无法做到绝对的均衡。
参考文献
吴孟达数学建模的理论与实践国防科技大学出版社1999
谢謇会最优化原理与方法国防科技大学出版社