数学建模交巡警平台的设置与调度.docx
《数学建模交巡警平台的设置与调度.docx》由会员分享,可在线阅读,更多相关《数学建模交巡警平台的设置与调度.docx(19页珍藏版)》请在冰豆网上搜索。
![数学建模交巡警平台的设置与调度.docx](https://file1.bdocx.com/fileroot1/2023-1/29/52287952-5750-48c7-a80e-5fd626a3adb9/52287952-5750-48c7-a80e-5fd626a3adb91.gif)
数学建模交巡警平台的设置与调度
2011高教社杯全国大学生数学建模竞赛
编号专用页
赛区评阅编号(由赛区组委会评阅前进行编号):
赛区评阅记录(可供赛区评阅时使用):
评
阅
人
评
分
备
注
全国统一编号(由赛区组委会送交全国前编号):
全国评阅编号(由全国组委会评阅前进行编号):
交巡警服务平台的设置与调度
摘要
警察肩负着刑事执法、治安管理、交通管理、服务群众四大职能。
为了更有效地贯彻实施这些职能,需要在市区的一些交通要道和重要部位设置交巡警服务平台。
根据附件2中的相关数据,合理分配巡警服务平台的管辖范围,使其在所管辖的范围内出现突发事件时,尽量能在3分钟内有交巡警到达事发地。
并且服务平台的工作量要尽可能均衡。
问题一:
我们先通过MATLAB编程求解出A区任意两个点之间的直线距离,并根据附件二中全市交通路口的路线,参照编程得出的结果筛选出对应路线的起点和终点的距离。
利用Floyd算法,求解得出任意两点之间的最短路径,利用0-1整数规划的思想,即基于时间最短作为目标函数,各个站台管辖范围互不重叠作为约束条件,将该矩阵放入LINGO中进行求解,得出该平台管辖范围内的节点。
发现程序计算出来的个别节点28、29、38、39、61、92不在三分钟里程之内,参照总体发案率,将节点重新分配,见表一。
对解决A区的20个平台对13条要道进行围堵的问题,建立0-1整数规划的双目标函数,以指定平台到指定节点的距离距离最小和时间最大为目标函数,每个平台只能封锁一个为约束条件,并运用LINGO软件进行求解得出相应的警力调度方案。
最少警力调度时间为8.055分钟。
考虑交巡警服务平台的工作量不均衡和有些地方出警时间过长的实际情况我们建立了一个基于双目标的整数规划模型,分别以时间最短与工作量最大为目标函数,由题中平台中警力资源有限为约束条件,并全面分析均衡性和时间性,将部分节点进行重新划分。
得出需要增加3个平台分别是29、38、87号节点。
其中29号平台管辖28号节点,38号平台管辖39、40节点,87号平台管辖88、92节点。
问题二:
针对全市六区的具体情况,结合附录中所给数据,参照问题一中的方法,基于出警时间短和工作量均衡为原则,计算出B、C、D、E、F五个区的所有平台的管辖范围和相应的发案率。
然后以全市单位平台发案率为标准,通过人口密度分析,得出A区可能为市中心,人口密度大,所以治安更加重要,符合设置平台多,单位平台发案率要低的实际情况,同时分析其他区,设置平台个数的合理性,最终得到C区不合理。
最后分析,增加了两个平台得个数。
当32节点发生重大刑事案件时,三分钟后接到报警,考虑在A区封锁之前最可能经过30节点跑到C区。
因此我们在A、C两区范围内同时进行围堵,得到最后的全市最佳围堵方案和最少警力调度时间为案发后的11.055分钟。
关键词:
警力调度0-1规划Floyd算法方差比较单位平台发案率
一、问题重述
1.1.背景资料与条件
“有困难找警察”,是家喻户晓的一句流行语。
警察肩负着刑事执法、治安管理、交通管理、服务群众四大职能。
为了更有效地贯彻实施这些职能,需要在市区的一些交通要道和重要部位设置交巡警服务平台。
每个交巡警服务平台的职能和警力配备基本相同。
由于警务资源是有限的,如何根据城市的实际情况与需求合理地设置交巡警服务平台、分配各平台的管辖范围、调度警务资源是警务部门面临的一个实际课题。
1.2.需要解决的问题
针对某市设置交巡警服务平台的相关情况,建立数学模型分析研究下面的问题:
(1)附件1中的附图1给出了该市中心城区A的交通网络和现有的20个交巡警服务平台的设置情况示意图,相关的数据信息见附件2。
请为各交巡警服务平台分配管辖范围,使其在所管辖的范围内出现突发事件时,尽量能在3分钟内有交巡警(警车的时速为60km/h)到达事发地。
对于重大突发事件,需要调度全区20个交巡警服务平台的警力资源,对进出该区的13条交通要道实现快速全封锁。
实际中一个平台的警力最多封锁一个路口,请给出该区交巡警服务平台警力合理的调度方案。
根据现有交巡警服务平台的工作量不均衡和有些地方出警时间过长的实际情况,拟在该区内再增加2至5个平台,请确定需要增加平台的具体个数和位置。
(2)针对全市(主城六区A,B,C,D,E,F)的具体情况,按照设置交巡警服务平台的原则和任务,分析研究该市现有交巡警服务平台设置方案(参见附件)的合理性。
如果有明显不合理,请给出解决方案。
如果该市地点P(第32个节点)处发生了重大刑事案件,在案发3分钟后接到报警,犯罪嫌疑人已驾车逃跑。
为了快速搜捕嫌疑犯,请给出调度全市交巡警服务平台警力资源的最佳围堵方案。
二、问题分析
交巡警平台是交巡警警种出现后,设立在交通要道和市区、街镇繁华地带,专门处理日常警务的作业场所。
由题意知,我们需要合理的安排交巡警服务平台以及合理的调度警力来解决紧急状况。
问题一:
当某个交巡警服务平台所管辖的范围内出现突发事件时,要求交巡警尽量能在3分钟内到达事发地。
我们根据附件二中的全市交通路线数据,计算出所有路线的距离,并且用Floyd算法求解出各个点之间的最短距离。
然后尽量将每个平台到达周围节点时间小于三分钟的节点,将他们划归到该平台所管辖的范围。
对于三分钟内不能到达的个别节点我们将其认为划分到离他最近的平台管辖区内。
对于重大突发事件,需要调度全区20个交巡警服务平台的警力资源,对进出该区的13条交通要道实现快速全封锁。
我们使用0-1规划,如果一个平台封锁一个路口记为1,一个平台不封锁一个路口记为0;运用整数规划,实现13条要道的快速封锁,并且计算出最快出警时间。
由于初步划分的管辖区域,各个平台的工作量并不平衡,我们通过建立一个使每个平台工作量达到平均值和站台到管辖节点的时间较短的双目标整数规划模型,通过LINGO求解,得到了优化后的管辖区域图。
问题二:
我们根据附录中给出的数据,分别计算出B、C、D、E、F区的路线距离,同样采用分析A区时所采用的方法,基于工作量均衡和出警时间最短的原则,分别得到了各个区的各平台管辖范围。
并参照全市的平均单位平台案发率,同时结合人口密度对不合理的地方进行调整。
从犯罪分子逃出路线进行全面分析,得出逃出A区的唯一方向是C区,我们把同时调动A区和C区的巡警平台进行路口封锁为最佳围堵方案,相应的求出封锁总时间。
三、基本假设
(1)、假设发案率只在节点上发生,不用考虑在本区之外的情况。
(2)、在出入城区路口所设的交巡警服务平台堵住该路口的时间为零。
(3)、假定犯罪嫌疑人的逃跑速度和警车行驶速度相同。
四、符号说明
:
存放各个节点之间的距离的邻接矩阵
:
A区所有平台案发率的平均值
:
A区单位平台总发案率
:
从
到
的时间矩阵
:
表示从所有交巡台出发到达指定路口的距离和
:
从
到
的距离矩阵
五.模型的建立与求解
5.1、问题一
5.1.1、模型的建立与求解
根据附件二中全市交通路口的路线,利用MATLAB编程得到任意两个节点之间的直线距离,通过编程(见附录一)得出的结果筛选出对应路线对应起点和终点的距离(参见附件二)。
利用Floyd算法求出对应点之间的最短时间路径(见附录二)。
找出每个平台到它周围不超过三分钟路程的节点,将它们归到这个平台的管辖范围之内。
算法的具体步骤为:
假设赋权图G的邻接矩阵为
,
来存放各个节点之间的距离,其中:
Floyd算法的基本思想是:
递推产生一个矩阵序列
,其中
表示从顶点
到顶点
的路径上所经过的顶点序号不大于k的最短路径长度。
计算时使用用迭代公式:
k是迭代次数,
。
最后,当
时,即是各顶点之间的最短通路值。
由Floyd算法得到的结果对20个平台管辖分配建立了一个整数规划模型:
设用
由LINGO编程(见附录三)求解出管辖范围,并用MATLAB编程(见附录四)剔除三分钟不能到达的节点,得到下表:
表一:
20个平台的管辖范围和发案率
平台
节点
3分钟不能到达
单位平台总发案率a
1
1,67,68,71,73,74,75,76,78,69
11.11
2
2,39,40,43,44,70,72,
39
8.4
3
3,54,55,65,66
5.6
4
4,57,60,62,63,64,
6.6
5
5,49,50,51,52,53,56,58,59,
9.702
6
6
2.5
7
7,30,32,47,48,61
61
9.0
8
8,33,46,
4.998
9
9,31,34,35,45,
8.2
10
10
1.6
11
11,26,27,
4.599
12
12,25
3.5
13
13,21,22,23,24,
9.3
14
14
2.5
15
15,28,29
28,29
2.1
16
16,36,37,38,
38
4
17
17,41,42,
5.298
18
18,80,81,82,83,
5.2
19
19,77,79
3.39
20
20,84,85,86,87,88,89,90,91,92
92
10.8
我们求出A区所有平台发案率的平均值:
方差
计算求得A区总发案率的方差
。
图一A区20个平台管辖范围示意图:
5.1.2.模型的建立与求解:
对于将二十个交巡警分配到十三个路口封堵,这是一个类似指派的问题[1],我们建立一个双目标整数规划模型:
设用
:
表示从交巡台出发到指定路口的时间和。
通过LINGO程序(见附录五)求解得出最佳分配方案为:
表二A区快速封锁交通要道的最佳分配方案
服务平台
2
4
5
7
8
9
10
交通要道
38(40)
62(0)
48(47)
29(30)
30(33)
14(36)
22(26)
服务平台
11
12
13
14
15
16
交通要道
24(25)
12
23(0)
21(0)
28(0)
16
由于一个平台的警力最多封锁一个路口,我们以平台到达相应路口的路径最长的时间为各个路口都被封锁的总时间,由上表查的相应的路径的距离即7号平台到达29号路口的时间,为8分钟。
5.1.3.模型的建立与求解
考虑到交巡警平台的工作量不均衡,和有些地方出警时间过长的实际情况。
我们根据发案率对每个平台的管辖范围重新部署。
将工作量大的平台所控制的最远节点分配给离该节点最近的其他平台,将它所控制的距离该平台较远的节点分配给离该节点最近的其他平台,同时尽量满足该节点到新平台之间的时间距离在3分钟以内,我们遍历所有的平台,从而得到基于均衡性和时间最短性考虑的新的平台管辖范围。
基于此思想,我们建立了双目标整数规划模型(见附录五)
:
从指定平台到指定路口的距离和
:
对于每一个指定平台的案件量求和。
利用lingo编程(见附录六)求解得到每个平台的管辖范围。
表三、A区考虑发案率和时间因素所得的管辖范围分配方案
平台
节点
总发案率
1
1、76、68、73、74、75、78
6.2
2
2、67、69、70、71、72
6.8
3
3、44、54、55、65、66
7
4
4、57、60、62、63、64
6.6
5
5、49、50、51、52、53、56
6.9
6
6、47、58、59
6.9
7
7、30、48、61
6.5
8
8、32、33、46
6.5
9
9、35、45
6
10
10、34
3.3
11
11、26、27
4.6
12
12、25
4
13
13、23、24
5.7
14
14、21、22
5.3
15
15、28、29、31
6.4
16
16、36、37、38、39、40
7.0
17
17、41、42、43
7.0
18
18、82、83、81、90
5.9
19
19、77、79、80、
7.0
20
20、84、85、、86、87、88、89、91、92
9.2
同样我们分析了该区平均发案率的方差:
。
由此可见该模型出警时间较短且工作量更加均衡。
由表三分析可知:
1、虽然61节点到达7号平台的时间超过了三分钟,但是如果对它单独设置平台管辖的话,将会使总体的平台发案率分布不均衡,而且有点浪费资源,所以此时考虑61节点发案率并不高的情况下牺牲一点时间,更合理些。
同理22节点也可以规划到14号平台管辖。
2、第10号平台控制的34号节点虽然距离较远但发案率较低,可以把该节点只分给离他最近的9号平台,对9号平台影响不大,所以把10号平台单独设置。
3、同理将15号平台所管辖的31节点分给7号平台,由于28、29节点距离15号平台很远,且发案率较高。
考虑到这种情况下,在29号节点处设置一个平台,保证了时间较短且工作量的较均衡。
4、在87节点之间增设一个平台,既可以减轻20号平台的压力,又可以顾及到达周边节点(包括92节点)的时间
5、由于16号平台发案率高且到达其管辖范围内的节点38、39时间又长(超过3分钟),所以在38号路口处设置一个平台为最佳方案,同时管辖40号节点,这样又减轻了2号和16号平台的压力,又可以缩短到达这三个节点的时间。
基于以上分析,分别在29号路口、16号路口、87节点分别增设一平台,共三个。
得出基于工作量均衡和时间考虑的管辖范围示意图:
图二、考虑发案率和时间因素所得的管辖范围分配图
5.2、问题二
5.2.1、模型的建立与求解
由第一问可知,交警设置服务平台要基于工作量均衡性和出警时间最短双重标准的原则,我们采用模型一的方法分别求出各个区到所有平台最小时间的管辖范围,然后通过交警工作量的均衡性分析,将不符合的平台进行重新划分,通过LINGO编程(见附录六),得出其他五个区所有平台的管辖范围,在此仅以C区为例进行说明。
表四、C区考虑发案率和时间因素所得的管辖范围分配方案
单位平台总案发率
C区平台号
该平台的管辖范围
6.3
166
166262263264265
13.5
167
167248249250251252255258259260261
4.7
168
168189190191192
4.1
169
169253254
12.2
170
170222223224225226273276277283
14.8
171
171215216230231240241242243244246
8.3
172
172217218227228229
15
173
173232233234235236237238239245247
10.1
174
174211212213214219220221
11
175
175183193194195196197198199
8.1
176
176184185186187188
4.3
177
177200201202
11.3
178
178203204205206207208209210284286287
20.6
179
179274275278279280281282285288289290291292295296
24.7
180
180268269297298299300301302303304305306307308309310311312313314315316
8.5
181
181266267317318319
11.9
182
182256257270271272293294
由表格可知,该区发案率比较均衡,且到达各节点的时间最短。
但179、180号站台发案率较高,分别为20.6和24.7,工作量大。
对此,我们再结合人口密度和单位平台发案率进行综合性考虑。
我们根据附件二中的数据,得到各个区的人口密度和单位平台发案率。
表五、六个城区统计数据表
全市六个城区
交巡警平台个数
人口密度
各区总发案率
单位平台发案率
A
23
2.727
124.5
5.413
B
8
0.204
66.4
8.3
C
17
0.222
187.2
11.012
D
9
0.191
67.8
7.533
E
15
0.176
119.4
7.96
F
11
0.193
109.2
9.927
由表格可知,B、C、D、E、F区的人口密度接近且都很小,可知该五个区可能为郊区。
而A区可能为市中心,我们以全市总案发率674.5除以全市总交巡警平台个数80,得到全市的单位平均发案率8.43,将它做为标准。
可以看出A区的单位平台发案率小于该标准,符合市中心发案率比较高,交巡警平台设置要多的实际情况,所以该区的平台个数设置合理。
但C区的单位平台发案率比较高,又由表四可知,C区179和180号平台工作量大,可考虑给这两个平台附近再增设两个平台,达到工作量均衡的效果,同时满足了时间最短的条件。
5.2.2模型分析
我们假设P点处的犯罪分子在逃跑三分钟时,警方接到报警并开始追捕,若犯罪分子从A区32节点经31、15节点并从28号路口逃跑,那么他需要时间大约为9分钟,由模型三的结论可知新增的29号平台封锁28号路口所需的时间约为3分钟,小于追击时剩余的6分钟宝贵时间。
完全可以在犯罪分子逃出路口时将其封锁住,基于此思想,分别考虑A区东西南北四个方向的十三个路口的可能性,得出结论,犯罪分子在西、南、东方向是逃不出去的。
若犯罪分子幸运,正好向北方的最短路程逃出,也就是从32节点经7节点从30号路口逃出,那么它所需时间约为1.5分钟,恰可在三分钟之内逃离A区,但此时警方并未追上,这时我们只能调动C区的警力来围捕犯罪分子。
我们利用第一问的处理方法,同样求出对C区进行平台调动的最短时间。
5.2.2.1模型建立与求解
对于原问题的求解,用如下的思想方法:
1.在一个区域图G,顶点集为
。
设立一个集合
来存放犯罪分子当前的位子,初始时候
,
表示犯罪分子从
到
的路径,
表从
出发的最短路径。
设立另一个集合
存放叫训台的被警察到过的点,
表示警察从交训台出发到目标点
的路径,
表示重
出发的最短路径,其中
。
2.从图G中选着边
,使得
,
;
3.如果
,则
,
;如果
,则
,
;
如果
,则从
的集合中点转2步骤。
4.当
的时候,停止该算法。
由改进的最短路径算法可以得到,围追犯罪分子的最佳围堵方案,得到案发后最短时间为11.055分钟。
方案:
即A区全部开始戒严,对于C区,166到264,167到263,175到183,176到188;D区中326到369。
六、模型评价
6.1、模型的优点
我们通过LINGO和MATLAB软件进行编程求解,克服了人为去分析而导致的观测误差,得出的结果更加精确。
以距离平台三分钟以内的节点做为参照标准,可以观察出所有平台管辖范围的结果的正确性。
6.2、模型的缺点
第二问处理的数据量太大,可能会产生舍入误差。
全市交警平台合理的设置方案求解并不是非常完善。
参考文献
[1].朱茵,江越,城市道路交通应急警力配置模型研究[J],中国安全科学学报,20(11):
172-174,2010.
[2].袁新生,邵大宏,郁时练,LINGO和EXCEL在数学建模中的应用[M],北京:
科学出版社,2007.
[3].刘卫国.MATLAB程序设计与应用[M].北京:
高等教育出版社,2006.
附录
附录一:
计算两点之间的直线距离
[m,n]=size(data);
b=[];
c=[];
s=[];
fori=1:
m
forj=1:
m
b(i,j)=data(i,2)-data(j,2);
c(i,j)=data(i,3)-data(j,3);
end
end
fori=1:
m
forj=1:
m
s(i,j)=b(i,j).^2+c(i,j).^2;
end
end
s=sqrt(s);
附录二:
Floyd(floyd)算法程序
clear;clc;
n=92;a=zeros(n);
a(1,75)=9.3005;a(1,78)=6.4031;a(2,44)=9.4868;a(3,45)=42.4647;a(3,65)=15.2398;a(4,39)=45.6098;a(4,63)=10.3078;a(5,49)=5;a(5,50)=8.4853;a(6,59)=16.0312;a(7,32)=11.4018;a(7,47)=12.8062;
a(8,9)=11.5974;a(8,47)=20.7966;a(9,35)=4.2426;a(10,34)=49.2164;a(11,22)=32.6956;a(11,26)=9;a(12,25)=17.8885;a(14,21)=32.6497;a(15,7)=38.1838;a(15,31)=29.681;a(16,14)=67.4166;a(16,38)=34.0588;
a(17,40)=26.8794;a(17,42)=9.8489;a(17,81)=40.2244;a(18,81)=6.7082;a(18,83)=5.3852;a(19,79)=4.4721;a(20,86)=3.6056;a(21,22)=18.0278;a(22,13)=9.0554;a(23,13)=5;a(24,13)=23.8537;a(24,25)=18.0278
a(25,11)=20.0250;a(26,27)=7.4330;a(26,10)=35.3836;a(27,12)=33.0492;a(28,29)=9.4868;a(28,15)=47.5184;a(29,30)=74.3236;a(30,7)=5.8310;a(30,48)=7.0711;
a(31,32)=11.7047;a(31,34)=15.5322;a(32,33)=5.0990;a(33,34)=7.5664;a(33,8)=8.2756;a(34,9)=5.0249;a(35,45)=6.7082;a(36,35)=5;a(36,37)=5.0990;a(36,16)=6.0828;a(36,39)=35.0143;a(37,7)=30.4138;
a(38,39)=3;a(38,41)=40.0780;a(39,40)=17.6777;a(40,2)=19.1442;a(41,17)=8.5000;a(41,92)=46.3168;a(42,43)=8.