发明名称 最小化最大距离位置的动态监控方法及系统
摘要 本发明提供了一种查询最小化最大距离位置的动态监控方法及系统,包括:给定一个客户点的集合C和一个设施点的集合F,以及一个候选位置集合P,最小化最大距离位置为<maths num="0001"><math><![CDATA[ <mrow> <mi>p</mi> <mo>=</mo> <msub> <mrow> <mi>arg</mi> <mi>min</mi> </mrow> <mrow> <mi>p</mi> <mo>&Element;</mo> <mi>P</mi> </mrow> </msub> <mrow> <mo>(</mo> <msub> <mi>max</mi> <mrow> <mi>c</mi> <mo>&Element;</mo> <mi>C</mi> </mrow> </msub> <mo>{</mo> <mover> <mi>a</mi> <mo>^</mo> </mover> <mrow> <mo>(</mo> <mi>c</mi> <mo>)</mo> </mrow> <mo>|</mo> <mi>F</mi> <mo>=</mo> <mi>F</mi> <mo>&cup;</mo> <mo>{</mo> <mi>p</mi> <mo>}</mo> <mo>}</mo> <mo>)</mo> </mrow> </mrow>]]></math><img file="DDA00003464292100011.GIF" wi="890" he="71" /></maths>;通过向表示路网的无向连通图G<sup>o</sup>=(V<sup>o</sup>,E<sup>o</sup>)插入所有的设施点f和客户点c来将E<sup>o</sup>中的边划分成新的边,对于每一个点ρ∈C∪F,先考虑ρ所在的边e∈E<sup>o</sup>,令e的两个端点为v<sub>l</sub>和v<sub>r</sub>,然后将e分为两部分即从v<sub>l</sub>到ρ和从ρ到v<sub>r</sub>,以使ρ成为无向连通图的一个新顶点,加入所有的新顶点以生成了一个新的无向连通图G=(V,E);把G按照边划分为n个子图G<sub>1</sub>…G<sub>n</sub>,其中,n的值根据用户的需要设置;根据G中初始的设施点集合F和客户点集合C获取p;根据G中设施点集合F或客户点集合C发生的更新随时动态监控p。本发明能够快速和动态地查询最小化最大距离位置。
申请公布号 CN103324747B 申请公布日期 2017.03.01
申请号 CN201310280197.4 申请日期 2013.07.04
申请人 上海交通大学 发明人 姚斌;吴亦凡;李飞飞;肖小奎
分类号 G06F17/30(2006.01)I 主分类号 G06F17/30(2006.01)I
代理机构 上海思微知识产权代理事务所(普通合伙) 31237 代理人 郑玮
主权项 一种查询最小化最大距离位置的动态监控方法,其特征在于,包括:给定一个客户点的集合C和一个设施点的集合F,以及一个候选位置集合P,最小化最大距离位置为<img file="FDA0001127322050000011.GIF" wi="916" he="78" />其中<img file="FDA0001127322050000012.GIF" wi="318" he="55" />为客户点c的加权吸引距离,w(c)是客户点c的权重,如果客户点c和设施点f在道路网络中的距离d(c,f)是c和F中的点的极小值,则定义f是c的吸引者,c被f吸引,a(c)=d(c,f)为c的吸引距离;通过向表示路网的无向连通图G<sup>o</sup>=(V<sup>o</sup>,E<sup>o</sup>)插入所有的设施点f和客户点c来将E<sup>o</sup>中的边划分成新的边,对于每一个点ρ∈C∪F,先考虑ρ所在的边e∈E<sup>o</sup>,令e的两个端点为v<sub>l</sub>和v<sub>r</sub>,然后将e分为两部分即从v<sub>l</sub>到ρ和从ρ到v<sub>r</sub>,以使ρ成为无向连通图的一个新顶点,加入所有的新顶点以生成了一个新的无向连通图G=(V,E),且V=V<sup>o</sup>∪C∪F;把G按照边划分为n个子图G<sub>1</sub>...G<sub>n</sub>,其中,n的值根据用户的需要设置,把G按照边划分为n个子图G<sub>1</sub>...G<sub>n</sub>的步骤包括:从V中随机选取n个顶点作为顶点集合V<sub>△</sub>;建立n个空的子图G<sub>1</sub>...G<sub>n</sub>,将顶点集合V<sub>Δ</sub>中的点分别设为每个子图的中心;把G和V<sub>△</sub>作为Erwig和Hagen算法的输入,计算出对于G中每一个v,V<sub>△</sub>中距离v最近的v′和两者的距离d(v,v′);对于G中的每一条边e,如果e的两个端点到V<sub>Δ</sub>中最近的点是同一个,则把e加入到对应的子图里,否则把e加入到其任意一个端点到V<sub>Δ</sub>中最近的点对应的子图里;根据G中初始的设施点集合F和客户点集合C获取p;根据G中设施点集合F或客户点集合C发生的更新随时动态监控p,步骤包括:路网中设施点和客户点的更新可以归结为增加一个客户点AddC(c),减少一个客户点DelC(c),增加一个设施点AddF(f),减少一个设施点DelF(f)共四种基本操作;当一个更新操作到来的时候,首先计算吸引距离会被更新所影响的客户点的集合V<sub>c</sub>,如果操作是AddC(c)或DelC(c),则V<sub>c</sub>={c};如果操作是AddF(f)或DelF(f),则V<sub>c</sub>={c|&lt;c,d(c,v)&gt;∈A(f)};对于每一个客户点c∈V<sub>c</sub>,找出该客户点之前的吸引距离a<sup>0</sup>(c)和新的吸引距离a'(c),并建立两个集合<img file="FDA0001127322050000021.GIF" wi="667" he="63" />和<img file="FDA0001127322050000022.GIF" wi="701" he="87" />对于每一个客户点c∈V<sub>c</sub>,根据a<sup>0</sup>(c),a'(c),<img file="FDA0001127322050000023.GIF" wi="189" he="79" />来更新所有已经被计算的子图中的每一条边e的局部最佳位置I以及对应的收益值m,令更新前的局部最佳位置以及对应的收益值分别为I<sub>0</sub>和m<sub>0</sub>;更新所有子图的收益值上限;根据新的上限对所有子图进行从高到低排序,之后按这个顺序遍历所有子图:对于被访问的子图,如果该子图未被计算,则初始计算该子图的局部最佳位置并获取对应收益值,如果该子图已被计算,则直接读取该子图的局部最佳位置和对应收益值;如果在某一时刻当前获得的最大收益值已经大于下一个待访问子图的收益值上限,则停止遍历,将这个最大收益值对应的位置作为最小化最大距离位置p;对于未遍历到的子图,把其中已经计算的子图改为未计算,以为下一次更新做准备;其中,v为无向连通图G中的一个顶点,d(c,ν)是顶点v在道路网络中的距离,A(f)是设施点f的吸引集合。
地址 200240 上海市闵行区东川路800号