首页

搜索 繁体

数学建模(3 / 5)

比警车到达点时的最大管辖范围大。为了使警车的管辖范围尽量大,警车的巡逻范围越小越好,当时,即警车在初始停靠点静止不动时,警车的管辖范围到达最大值。

&esp;&esp;图1所分析的是特殊的情况,道路1,2,3,4对称分布,现在我们来对一般的情况进行分析,如图2所示。

&esp;&esp;图21&esp;&esp;&esp;&esp;&esp;&esp;&esp;&esp;&esp;&esp;&esp;&esp;&esp;&esp;&esp;&esp;&esp;&esp;&esp;&esp;&esp;&esp;&esp;&esp;&esp;&esp;&esp;&esp;&esp;&esp;&esp;图22

&esp;&esp;图2&esp;&esp;&esp;一辆警车最大管辖范围分析示意图

&esp;&esp;图21所示的情况是道路分布不对称,与图1相比,图21所示的道路方向和角度都发生了改变,图23中的情形更为复杂。参照对图1的分析方法,我们分析这两种情形下,警车巡逻时能在叁分钟内赶到现场的最大距离的规律,我们只分析图22的情况,道路1,2,3,4,5相交于点c,同时道路1与道路6也有个道路交叉口d,&esp;由于警车巡逻时是在道路上行驶的,行走的路线是分段直线,并不影响路径的长度,所以当警车巡逻到距离初始停靠点c点远处的d,此时假设有案件发生时,该警车要在叁分钟内能赶到现场处理案件,最大行驶距离在之内,如果警车在道路1上继续向前行驶,那么该警车能在叁分钟内赶到现场的距离继续缩小,当警车没有行驶到d点时,此时该警车的最大管辖范围比大,为了使警车的管辖范围尽量大,警车的巡逻范围越小越好。当时,即警车静止不动时,一辆警车的管辖范围能到达最大值。

&esp;&esp;以上分析的仅作定性的分析,对于叁个重点部位也可以同理分析,所得的结论是一致的,以上的分析没有考虑到90的到达几率限制,但在设计算法需要充分考虑。

&esp;&esp;综上所述,当警车静止在初始停靠点时,在叁分钟时间限制内,警车能从初始停靠点赶到事发现场的最大距离为。

&esp;&esp;512&esp;&esp;将道路离散化

&esp;&esp;由于事发现场是等概率地分布在道路上的,由区域地图可以发现,整个区域中的道路长度不均,为了使计算结果更加精确,可将这些道路离散化。只要选取适宜的离散方案,就能使警车在经过道路上的离散的点时就相当于经过了这条道路。这样,不管是求解警车初始停靠点还求解警车赶到事发现场所经过的道路时,所计算得的的结果显然比仅考虑整条道路的叉路口要精确得多。

&esp;&esp;区域中共有307个道路交叉口,458条道路。我们采用线性插值方法对道路进行离散化,以的速度行走一分钟的距离作为步长,一分钟时间的选择是参照问题叁的结果要求来设定的,步长。用线性插值的方法,从道路的一个方向进行线性插值,实现将每条道路离散化的目标,考虑到有些道路不是的整数倍,我们就一般情况进行讨论,其分析示意图如图3所示。道路ab长度为个与长度的和,为了更精确处理cb段道路,那么就要考虑在cb之间是否要插入一个新的点,根据的长度不同,其对应的处理方式也有所不同。

&esp;&esp;图3&esp;&esp;&esp;道路离散化分析示意图

&esp;&esp;引进临界指数,选取大小的准那么是使尽量离散化后警车等效的平均巡逻速度和题目给定的速度〔〕的差值尽量小,经过计算得时,不再插入新的坐标点时能使整个区域的道路离散效果较好。此时,将cb段长度设定为处理,于是离散后的ab道路长度会比实际长度短些;当时,需要在两个点之间再插入一点,因为这样处理能使整个区域的整体道路的离散化效果比拟理想。如图3所示,在c与b间再插入新的坐标点,插入的位置在距c点的d点处,这样处理后所得的道路长度比实际长度长了。采用这样的方法进行线性插值,我们使用atb编程实现对整个区域道路的离散,所得的离散结果如图4所示,离散后共得到762个节点,比原始数据多了455个节点,离散后的节点数据见附件中的“newpottxt〞。

&esp;&esp;图4&esp;&esp;&esp;整个区域离散结果图

&esp;&esp;采用这种插值方法道路离散后,将直线上的无穷多个点转化有限个点,便于分析问题和实现相应的算法,由图4可知,所取得的整体离散效果还是比拟理想的。

&esp;&esp;513&esp;&esp;&esp;分区域求解警车数目的算法设计

&esp;&esp;考虑到警车配置和巡逻方案需要满足:警车在接警后叁分钟内赶到普通部位案发现场的比例不低于90,赶到重点部位必须控制在两分钟之内的要求。设计算法的目标就是求解出在满足d1情况下,总的警车数目最小,即每个区域都尽可能多地覆盖道路节点。由于警车的初始位置是未知的,我们可设警车初始停靠点在道路上的任一点,即分布在图4所示的762个离散点中的某些点节点上,总体思路是让每两辆车之间尽量分散地分布,一辆警车管辖一个分区,用这些分区覆盖整个区域。

&esp;&esp;于是我们设计算法1,步骤如下所示:

&esp;&esp;step1:将整个区域预分配为个分区,每个分区分配一辆警车,警车的初始停靠位置设在预分配区中心的道路节点上,假设区域的中心不在道路节点上,那么将警车放在离中心最近的道路节点上;

&esp;&esp;step2:统计分区不能覆盖的节点,调整警车的初始停靠点,使分区覆盖尽可能多的道路节点,调整分为区内调整和区间调整方案:〔1〕区内调整按照模拟退火思想构造的函数,在区间调整调整车辆初始点的位置〔后文中有详细说明〕,当分区内节点数较多时,调整的概率小些,分区内节点数较少时,调整的概率大些,〔2〕当区域中存在未被覆盖的节点或节点群〔大于等于叁个节点集中在一个范围内〕时,将警车初始位置的调整方向为朝着这些未被覆盖的节点按一定的规那么〔在

&esp;&esp;对算法的几点说明:

&esp;&esp;〔1〕该算法所取的车辆数是由多到少进行计算的,初始值设为20,这个值的选取是根据区域图估算的。

&esp;&esp;(2)预分区的优点在于使警车的初始位置尽可能均匀地分散分布,警车的初始停靠点在一个分区的中心点附近寻找得到,比起在整个区域随机生成停靠点,计算效率明显得到提高。

&esp;&esp;预分配之后,需要对整个区域不断地进行调整,调整时需要考虑调整方向和&esp;调整概率。

&esp;&esp;警车调整借鉴的是模拟退火算法的方法,为了使分区内包含道路节点数较多的分区的初始停车点调整的概率小些,而分区内包含道路节点数的少的分区内的初始停车点调整的概率大些,我们构造了一个调整概率函数,

&esp;&esp;〔1〕

&esp;&esp;〔1〕式中,均为常数,为整个区域车辆数,为第分区内覆盖的节点数,

热门小说推荐

最近入库小说