CN103336823A - 查询最小化最大距离位置的动态监控方法及系统 - Google Patents

查询最小化最大距离位置的动态监控方法及系统 Download PDF

Info

Publication number
CN103336823A
CN103336823A CN2013102798986A CN201310279898A CN103336823A CN 103336823 A CN103336823 A CN 103336823A CN 2013102798986 A CN2013102798986 A CN 2013102798986A CN 201310279898 A CN201310279898 A CN 201310279898A CN 103336823 A CN103336823 A CN 103336823A
Authority
CN
China
Prior art keywords
customer
location
limit
wad
point
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2013102798986A
Other languages
English (en)
Other versions
CN103336823B (zh
Inventor
姚斌
吴亦凡
李飞飞
肖小奎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chongqing Jiaohui Excavation Technology Co.,Ltd.
Original Assignee
Shanghai Jiaotong University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Jiaotong University filed Critical Shanghai Jiaotong University
Priority to CN201310279898.6A priority Critical patent/CN103336823B/zh
Publication of CN103336823A publication Critical patent/CN103336823A/zh
Application granted granted Critical
Publication of CN103336823B publication Critical patent/CN103336823B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

本发明提供了一种查询最小化最大距离位置的动态监控方法及系统,包括:给定一个客户点的集合C和一个设施点的集合F,以及一个候选位置集合P,最小化最大距离位置为其中为客户点c的加权吸引距离,w(c)是客户点c的权重,如果客户点c和设施点f在道路网络中的距离d(c,f)是c和F中的点的极小值,则定义f是c的吸引者,c被f吸引,a(c)=d(c,f)为c的吸引距离;根据路网中初始的设施点集合F和客户点集合C获取p;根据路网中设施点集合F或客户点集合C发生的更新随时动态监控p。本发明能够快速和动态地查询最小化最大距离位置。

Description

查询最小化最大距离位置的动态监控方法及系统
技术领域
本发明涉及一种查询最小化最大距离位置的动态监控方法及系统。
背景技术
在过去几年中,有很多工作研究一类在存在客户点集合的情况下的“设施放置问题”(参见文献8:Farahani,R.Z.,Hekmatfar,M.:Facility Location:Concepts,Models,Algorithms and Case Studies,1st edn.Physica-Verlag HD(2009),文献15:Nickel,S.,Puerto,J.:Location Theory:A Unified Approach,1st edn.Springer(2005))。在最普遍的情况下,问题包含:(1)一个客户点的集合C和一个设施点候选集合P,并(2)在P中查询k个新设施点的位置从而满足一个事先定义的最佳条件。这类问题在k是常数的情况下存在多项式时间内的算法,在k是一般变量的情况下是NP-hard问题(参见文献8和15),已经存在的工作主要研究其近似算法。
最佳位置查询问题可以被看做设施放置问题的一个变种,首先P是一个无限集合;然后通常k=1,也就是说只需要为新建一个设施点来选取位置;最后通常事先已经拥有了一个设施点集合F。以上这些是最佳位置查询问题相对于一般的“设施放置问题”的不同点。
之前的最佳位置查询问题的研究工作(参见文献2:Cabello,S.,D′1az-B′a~nez,J.M.,Langerman,S.,Seara,C.,Ventura,I.:Reverse facility location problems.In:CCCG,pp.68–71(2005),文献6:Du,Y.,Zhang,D.,Xia,T.:The optimal-locationquery.In:SSTD,pp.163–180(2005),文献21:Wong,R.C.W.,¨Ozsu,T.,Yu,P.S.,Fu,A.W.C.,Liu,L.:Efficient method for maximizing bichromatic reverse nearestneighbor.PVLDB2(1),1126–1137(2009),文献24:Zhang,D.,Du,Y.,Xia,T.,Tao,Y.:Progressive computation of the min-dist optimal-location query.In:VLDB,pp.643–654(2006))中考虑的是设施点和客户点之间在Lp空间中的距离。其中Cabello等人(参见文献2)和Wong等人(参见文献21)的研究是基于L2空间的,而Du等人(参见文献6)和Zhang等人(参见文献24)的研究是基于L1空间的。这些工作并没有研究最佳位置查询问题在路网中的情况。
现有的研究工作中包括另外两种与设施点的位置选取有关的问题:单设施点查询问题(参见文献8和15)以及设施点实时建立问题(参见文献9:Fotakis,D.:Incremental algorithms for facility location and kmedian.Theor.Comput.Sci.361(2-3),275–313(2006),文献13:Meyerson,A.:Online facility location.In:FOCS,pp.426–431(2001)),这两种问题研究内容与最佳位置查询问题类似但是有所不同。单设施点查询问题研究的是,给定一个客户点的集合,寻找一个设施建立点从而满足一个最佳条件,在这个问题里,输入数据中没有已经建立的设施点集合,然而在最佳位置查询问题里,需要考虑一个已有的设施点的集合。设施点实时建立问题研究的是,随着客户点的不断增加,实时选取位置建立新的设施点来满足一个给定的优化条件,与最佳位置查询问题相似的是,这类问题在寻找新的设施点时,也考虑已有的设施点集合,然而[9]和[13]所采用的方法并不能解决最佳位置查询问题,这是因为在设施点实时建立问题中,建立新设施点的候选地点是一个有限的集合,但是在最佳位置查询问题中,建立新设施点的候选地点是一个无限的集合,例如Lp空间中的所有地点或是路网中的所有边上的所有地点的集合。在我们之前的研究工作中我们提出了静态一次查询路网中最佳位置的方法(参见文献22:Xiao,X.,Yao,B.,Li,F.:Optimal locationqueries in road network databases.In:ICDE,pp.804–815(2011)),与那篇文章相比,我们的发明提出了新的动态维护路网中最佳位置的解决方案,并为三个不同的最佳位置查询问题设计了具体的实现方法。
最后,现有的研究工作中存在着很多关于路网数据库中查询方法的研究(参见3:Chen,Z.,Shen,H.T.,Zhou,X.,Yu,J.X.:Monitoring path nearest neighbor inroad networks.In:SIGMOD,pp.591–602(2009),文献4:Deng,K.,Zhou,X.,Shen,H.T.,Sadiq,S.,Li,X.:Instance optimal query processing in spatial networks.VLDBJ18(3),675–693(2009),文献11:Jensen,C.S.,Kol′aˇrvr,J.,Pedersen,T.B.,Timko,I.:Nearest neighbor queries in road networks.In:GIS,pp.1–8(2003),文献12:Kolahdouzan,M.R.,Shahabi,C.:Voronoi-based k-nearest neighbor search for spatialnetwork databases.In:VLDB,pp.840–851(2004),文献14:Mouratidis,K.,Yiu,M.L.,Papadias,D.,Mamoulis,N.:Continuous nearest neighbor monitoring in roadnetworks.In:VLDB,pp.43–54(2006),文献16:Papadias,D.,Zhang,J.,Mamoulis,N.,Tao,Y.:Query processing in spatial network databases.In:VLDB,pp.802–813(2003),文献17:Samet,H.,Sankaranarayanan,J.,Alborzi,H.:Scalable networkdistance browsing in spatial databases.In:SIGMOD,pp.43–54(2008),文献18:Sankaranarayanan,J.,Samet,H.:Distance oracles for spatial networks.In:ICDE,pp.652–663(2009),文献19:Sankaranarayanan,J.,Samet,H.,Alborzi,H.:Path oraclesfor spatial networks.PVLDB2(1),1210–1221(2009),文献23:Yiu,M.L.,Mamoulis,N.,Papadias,D.:Aggregate nearest neighbor queries in road networks.TKDE17(6),820–833(2005))。然而这些研究工作都是关注路网数据库中最近点的查询(参见文献12、16和17)及其变种:最近点近似查询(参见文献18和19)、聚合查询(参见文献23),连续最近点查询(参见文献14),路径最近点查询(参见文献3)等等。这些研究工作中的技术并不能解决最佳位置查询问题,因为最近点查询问题与最佳位置查询问题在本质上是有所不同的。
另外,本发明相关的参考文献还包括如下:
文献1:de Berg,M.,Cheong,O.,van Kreveld,M.,Overmars,M.:ComputationalGeometry:Algorithms and Applications,3rd edn.Springer-Verlag(2008);
文献5:Dijkstra,E.W.:A note on two problems in connexion with graphs.Numerische Mathematik1,269–271(1959);
文献7:Erwig,M.,Hagen,F.:The graph voronoi diagram with applications.Networks36,156–163(2000);
文献10:Hershberger,J.:Finding the upper envelope of n line segments in o(nlog n)time.Inf.Process.Lett.33(4),169–174(1989);
文献20:Shekhar,S.,Liu,D.R.:CCAM:A connectivity-clustered accessmethod for networks and network computations.TKDE9(1),102–119(1997)。
发明内容
本发明的目的在于提供一种查询最小化最大距离位置的动态监控方法及系统,能够快速和动态地查询最小化最大距离位置。
为解决上述问题,本发明提供一种最小化最大距离位置的动态监控方法,包括:
给定一个客户点的集合C和一个设施点的集合F,以及一个候选位置集合P,最小化最大距离位置为 p = arg min p ∈ P ( max c ∈ C { a ^ ( c ) | F = F ∪ { p } } ) , 其中
Figure BDA00003464619500052
为客户点c的加权吸引距离,w(c)是客户点c的权重,如果客户点c和设施点f在道路网络中的距离d(c,f)是c和F中的点的极小值,则定义f是c的吸引者,c被f吸引,a(c)=d(c,f)为c的吸引距离;
根据路网中初始的设施点集合F和客户点集合C获取p;
根据路网中设施点集合F或客户点集合C发生的更新随时动态监控p。
进一步的,在上述方法中,根据路网中初始的设施点集合F和客户点集合C获取p的步骤包括:
通过向表示路网的无向连通图Go=(Vo,Eo)插入所有的设施点f和客户点c来将Eo中的边划分成新的边,对于每一个点ρ∈C∪F,先考虑ρ所在的边e∈Eo,令e的两个端点为vl和vr,然后将e分为两部分即从vl到ρ和从ρ到vr,以使ρ成为无向连通图的一个新顶点,加入所有的新顶点以生成了一个新的无向连通图G=(V,E),且V=Vo∪C∪F;
对于每一条边e∈Ec初始化计算其局部最佳位置I以及对应的收益值m,其中,Ec为包含候选位置集合P中所有点的边的集合,某个位置的收益值m为在该位置建立新设施后所有客户点的最大加权吸引距离的减少量,局部最佳位置I为边e上所有具有最大收益值的点集合;
根据所有边上的局部最佳位置I选出对应的收益值m最大的作为最小化最大距离位置p。
进一步的,在上述方法中,对于每一条边e∈Ec初始化计算其局部最佳位置I以及对应的收益值m的步骤包括:
通过Erwig和Hagen的算法来计算G中每一个顶点v的最近设施点f以及距离d(v,f);
分别计算e的两个端点vl和vr的吸引集合A(vl)和A(vr),其中,给定一个顶点v,A(v)是包含v能吸引到的所有客户点c以及对应距离d(c,v)的集合;
根据已经计算出的A(vl)和A(vr)计算e的局部最佳位置I以及对应的收益值m。
进一步的,在上述方法中,已知一个顶点v,A(v)通过如下步骤获取:
初始化A(v)为空集;
用Dijkstra算法按照到v的距离升序遍历G中所有顶点;
对于每一个遍历到的顶点v′,令a(v′)为v′到其最近的设施点f的距离,如果d(v,v′)≤a(v′),并且v′是一个客户点,则将把<v′,d(v′,v)>加入顶点v吸引集合A(v)后;如果d(v,v′)>a(v′),则忽略所有以v′为端点的边。
进一步的,在上述方法中,根据已经计算出的A(vl)和A(vr)计算e的局部最佳位置I以及对应的收益值m的步骤包括:
建立一个2维平面R;
让C-表示在A(vl)和A(vr)中都没有出现的客户点c的集合;
在C-中找到拥有最大加权吸引距离的客户点c0;
在R中建立c0的WAD函数,即从坐标为
Figure BDA00003464619500071
的点到坐标为的点画一条线段,其中l表示待计算的边e的长度,某个客户点在e上的WAD函数表示该客户点的加权吸引距离随着在e上建立新设施的位置变化而变化的情况;
对于每个在A(vl)中出现但是没有在A(vl)中出现的客户点c,令x1=0,y1=w(c)·d(c,vl),x2=min{l,a(c)-d(c,vl)},x3=l,y2=y3=w(c)(x2+d(c,vl)),在R中建立c的WAD函数:即建立两条线段,从(x1,y1)到(x2,y2),从(x2,y2)到(x3,y3);
对于每个在A(vr)中出现但是没有在A(vl)中出现的客户点c,令x1=l,y1=w(c)·d(c,vr),x2=max{0,l-a(c)+d(c,vr)},x3=0,y2=y3=w(c)(l-x2+d(c,vr)),在R中建立c的WAD函数:即建立两条线段,从(x1,y1)到(x2,y2),从(x2,y2)到(x3,y3);
对于每个在A(vl)和A(vl)中都出现的客户点c,令x1=0,y1=w(c)·d(c,vl), &beta; = 1 2 l - 1 2 d ( c , v l ) + 1 2 d ( c , v r ) , x2=min{β,a(c)-d(c,vl)},x3=max{β,l-a(c)+d(c,vr)},y2=y3=w(c)·(x2+d(c,vl)),x4=l,y4=w(c)·d(c,vr),在R中建立c的WAD函数:即建立三条线段,从(x1,y1)到(x2,y2),从(x2,y2)到(x3,y3),从(x3,y3)到(x4,y4);
计算R中所有WAD函数的上界函数为gup
返回所有使gup取得最小值的点的集合为边e上的局部最佳位置I,该最小值为相应的收益值m。
进一步的,在上述方法中,根据路网中设施点集合F或客户点集合C发生的更新随时动态监控p的步骤包括:
路网中设施点和客户点的更新可以归结为增加一个客户点AddC(c),减少一个客户点DelC(c),增加一个设施点AddF(f),减少一个设施点DelF(f)共四种基本操作;
当一个更新操作到来的时候,首先计算吸引距离会被更新所影响的客户点的集合Vc,如果操作是AddC(c)或DelC(c),则Vc={c};如果操作是AddF(f)或DelF(f),则Vc={c|<c,d(c,v)>∈A(f)};
对于每一个客户点c∈Vc,找出该客户点之前的吸引距离a0(c)和新的吸引距离a′(c),并建立两个集合
Figure BDA00003464619500081
U c - = { < v , d ( c , v ) > | d ( c , v ) < a 0 ( c ) } ;
对于每一个客户点c∈Vc,根据a0(c),a′(c),
Figure BDA00003464619500083
来更新每一条边e的局部最佳位置I以及对应的收益值m,令更新前的局部最佳位置以及对应的收益值分别为I0和m0
根据所有边上的局部最佳位置I选出对应的收益值m最大的作为最小化最大距离位置p。
进一步的,在上述方法中,已知更新前的局部最佳位置以及对应的收益值分别为I0和m0,根据a0(c),a′(c),
Figure BDA00003464619500091
来更新每一条边e的局部最佳位置I以及对应的收益值m的步骤包括:
初始化一个空的边集E1
对于E中的每一条边e,如果w(c)·max{a0(c),a′(c)}≥m0,则把e加入到E1中;
对于E1中的每一条边e,
如果w(c)·a0(c)≥m0,使用a0(c)建立c在e上的WAD函数,如果WAD函数的最大值小于m0,则m=m0,I=I0,如果WAD函数的最大值大于等于m0,则重新初始化计算I和m;
如果w(c)·a′(c)≥m0,使用a′(c)建立c在e上的WAD函数gc(x),建立临时函数 g up &prime; ( x ) = max { g c ( x ) , g 0 ( x ) = m 0 ( 0 &le; x &le; l ) } , 并得到点集合 I &prime; = arg min x g up &prime; ( x ) , 如果
Figure BDA00003464619500094
的最小值等于m0并且I′与I0的交集不为空,则m=m0,I′∩I0,如果
Figure BDA00003464619500095
的最小值不等于m0或I′与I0的交集为空,则重新初始化计算I和m;
返回I和m为e的新的局部最佳位置和对应的收益值。
根据本发明的另一面,提供一种最小化最大距离位置的动态监控系统,包括:
定义模块,用于给定一个客户点的集合C和一个设施点的集合F,以及一个候选位置集合P,最小化最大距离位置为 p = arg min p &Element; P ( max c &Element; C { a ^ ( c ) | F = F &cup; { p } } ) , 其中
Figure BDA00003464619500102
为客户点c的加权吸引距离,w(c)是客户点c的权重,如果客户点c和设施点f在道路网络中的距离d(c,f)是c和F中的点的极小值,则定义f是c的吸引者,c被f吸引,a(c)=d(c,f)为c的吸引距离;
获取模块,用于根据路网中初始的设施点集合F和客户点集合C获取p;
更新模块,用于根据路网中设施点集合F或客户点集合C发生的更新随时动态监控p。
进一步的,在上述系统中,所述获取模块用于:
通过向表示路网的无向连通图Go=(Vo,Eo)插入所有的设施点f和客户点c来将Eo中的边划分成新的边,对于每一个点ρ∈C∪F,先考虑ρ所在的边e∈Eo,令e的两个端点为vl和vr,然后将e分为两部分即从vl到ρ和从ρ到vr,以使ρ成为无向连通图的一个新顶点,加入所有的新顶点以生成了一个新的无向连通图G=(V,E),且V=Vo∪C∪F;
对于每一条边e∈Ec初始化计算其局部最佳位置I以及对应的收益值m,其中,Ec为包含候选位置集合P中所有点的边的集合,某个位置的收益值m为在该位置建立新设施后所有客户点的最大加权吸引距离的减少量,局部最佳位置I为边e上所有具有最大收益值的点集合;
根据所有边上的局部最佳位置I选出对应的收益值m最大的作为最小化最大距离位置p。
进一步的,在上述系统中,所述获取模块用于:
通过Erwig和Hagen的算法来计算G中每一个顶点v的最近设施点f以及距离d(v,f);
分别计算e的两个端点vl和vr的吸引集合A(vl)和A(vr),其中,给定一个顶点v,A(v)是包含v能吸引到的所有客户点c以及对应距离d(c,v)的集合;
根据已经计算出的A(vl)和A(vr)计算e的局部最佳位置I以及对应的收益值m。
进一步的,在上述系统中,已知一个顶点v,所述获取模块用于获取A(v),具体包括:
初始化A(v)为空集;
用Dijkstra算法按照到v的距离升序遍历G中所有顶点;
对于每一个遍历到的顶点v′,令a(v′)为v′到其最近的设施点f的距离,如果d(v,v′)≤a(v′),并且v′是一个客户点,则将把<v′,d(v′,v)>加入顶点v吸引集合A(v)后;如果d(v,v′)>a(v′),则忽略所有以v′为端点的边。
进一步的,在上述系统中,所述获取模块用于:
建立一个2维平面R;
让C-表示在A(vl)和A(vr)中都没有出现的客户点c的集合;
在C-中找到拥有最大加权吸引距离的客户点c0;
在R中建立c0的WAD函数,即从坐标为的点到坐标为
Figure BDA00003464619500122
的点画一条线段,其中l表示待计算的边e的长度,某个客户点在e上的WAD函数表示该客户点的加权吸引距离随着在e上建立新设施的位置变化而变化的情况;
对于每个在A(vl)中出现但是没有在A(vl)中出现的客户点c,令x1=0,y1=w(c)·d(c,vl),x2=min{l,a(c)-d(c,vl)},x3=l,y2=y3=w(c)(x2+d(c,vl)),在R中建立c的WAD函数:即建立两条线段,从(x1,y1)到(x2,y2),从(x2,y2)到(x3,y3);
对于每个在A(vr)中出现但是没有在A(vl)中出现的客户点c,令x1=l,y1=w(c)·d(c,vr),x2=max{0,l-a(c)+d(c,vr)},x3=0,y2=y3=w(c)(l-x2+d(c,vr)),在R中建立c的WAD函数:即建立两条线段,从(x1,y1)到(x2,y2),从(x2,y2)到(x3,y3);
对于每个在A(vl)和A(vl)中都出现的客户点c,令x1=0,y1=w(c)·d(c,vl), &beta; = 1 2 l - 1 2 d ( c , v l ) + 1 2 d ( c , v r ) , x2=min{β,a(c)-d(c,vl)},x3=max{β,l-a(c)+d(c,vr)},y2=y3=w(c)·(x2+d(c,vl)),x4=l,y4=w(c)·d(c,vr),在R中建立c的WAD函数:即建立三条线段,从(x1,y1)到(x2,y2),从(x2,y2)到(x3,y3),从(x3,y3)到(x4,y4);
计算R中所有WAD函数的上界函数为gup
返回所有使gup取得最小值的点的集合为边e上的局部最佳位置I,该最小值为相应的收益值m。
进一步的,在上述系统中,所述更新模块用于:
路网中设施点和客户点的更新可以归结为增加一个客户点AddC(c),减少一个客户点DelC(c),增加一个设施点AddF(f),减少一个设施点DelF(f)共四种基本操作;
当一个更新操作到来的时候,首先计算吸引距离会被更新所影响的客户点的集合Vc,如果操作是AddC(c)或DelC(c),则Vc={c};如果操作是AddF(f)或DelF(f),则Vc={c|<c,d(c,v)>∈A(f)};
对于每一个客户点c∈Vc,找出该客户点之前的吸引距离a0(c)和新的吸引距离a′(c),并建立两个集合
Figure BDA00003464619500131
U c - = { < v , d ( c , v ) > | d ( c , v ) < a 0 ( c ) } ;
对于每一个客户点c∈Vc,根据a0(c),a′(c),来更新每一条边e的局部最佳位置I以及对应的收益值m,令更新前的局部最佳位置以及对应的收益值分别为I0和m0
根据所有边上的局部最佳位置I选出对应的收益值m最大的作为最小化最大距离位置p。
进一步的,在上述系统中,已知更新前的局部最佳位置以及对应的收益值分别为I0和m0,所述更新模块用于:
初始化一个空的边集E1
对于E中的每一条边e,如果w(c)·max{a0(c),a′(c)}≥m0,则把e加入到E1中;
对于E1中的每一条边e,
如果w(c)·a0(c)≥m0,使用a0(c)建立c在e上的WAD函数,如果WAD函数的最大值小于m0,则m=m0,I=I0,如果WAD函数的最大值大于等于m0,则重新初始化计算I和m;
如果w(c)·a′(c)≥m0,使用a′(c)建立c在e上的WAD函数gc(x),建立临时函数 g up &prime; ( x ) = max { g c ( x ) , g 0 ( x ) = m 0 ( 0 &le; x &le; l ) } , 并得到点集合 I &prime; = arg min x g up &prime; ( x ) , 如果
Figure BDA00003464619500143
的最小值等于m0并且I′与I0的交集不为空,则m=m0,I′∩I0,如果的最小值不等于m0或I′与I0的交集为空,则重新初始化计算I和m;
返回I和m为e的新的局部最佳位置和对应的收益值。
与现有技术相比,本发明通过给定一个客户点的集合C和一个设施点的集合F,以及一个候选位置集合P,最小化最大距离位置为 p = arg min p &Element; P ( max c &Element; C { a ^ ( c ) | F = F &cup; { p } } ) , 其中 a ^ ( c ) = w ( c ) a ( c ) 为客户点c的加权吸引距离,w(c)是客户点c的权重,如果客户点c和设施点f在道路网络中的距离d(c,f)是c和F中的点的极小值,则定义f是c的吸引者,c被f吸引,a(c)=d(c,f)为c的吸引距离;根据路网中初始的设施点集合F和客户点集合C获取p;根据路网中设施点集合F或客户点集合C发生的更新随时动态监控p,能够快速和动态地查询最小化最大距离位置。
附图说明
图1是本发明一实施例的查询最小化最大距离位置的动态监控方法的流程图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
实施例一
如图1所示,本发明提供一种查询最小化最大距离位置的动态监控方法,包括步骤S1至步骤S3。
步骤S1,给定一个客户点的集合C和一个设施点的集合F,以及一个候选位置集合P,最小化最大距离位置为 p = arg min p &Element; P ( max c &Element; C { a ^ ( c ) | F = F &cup; { p } } ) , 其中
Figure BDA00003464619500152
为客户点c的加权吸引距离,w(c)是客户点c的权重,如果客户点c和设施点f在道路网络中的距离d(c,f)是c和F中的点的极小值,则定义f是c的吸引者,c被f吸引,a(c)=d(c,f)为c的吸引距离;
步骤S2,根据路网中初始的设施点集合F和客户点集合C获取p;
优选的,步骤S2包括:
通过向表示路网的无向连通图Go=(Vo,Eo)插入所有的设施点f和客户点c来将Eo中的边划分成新的边,对于每一个点ρ∈C∪F,先考虑ρ所在的边e∈Eo,令e的两个端点为vl和vr,然后将e分为两部分即从vl到ρ和从ρ到vr,以使ρ成为无向连通图的一个新顶点,加入所有的新顶点以生成了一个新的无向连通图G=(V,E),且V=Vo∪C∪F;
对于每一条边e∈Ec初始化计算其局部最佳位置I以及对应的收益值m,其中,Ec为包含候选位置集合P中所有点的边的集合,某个位置的收益值m为在该位置建立新设施后所有客户点的最大加权吸引距离的减少量,局部最佳位置I为边e上所有具有最大收益值的点集合;
根据所有边上的局部最佳位置I选出对应的收益值m最大的作为最小化最大距离位置p。
较佳的,对于每一条边e∈Ec初始化计算其局部最佳位置I以及对应的收益值m的步骤包括:
通过Erwig和Hagen的算法来计算G中每一个顶点v的最近设施点f以及距离d(v,f);
分别计算e的两个端点vl和vr的吸引集合A(vl)和A(vr),其中,给定一个顶点v,A(v)是包含v能吸引到的所有客户点c以及对应距离d(c,v)的集合;
根据已经计算出的A(vl)和A(vr)计算e的局部最佳位置I以及对应的收益值m。
较佳的,已知一个顶点v,A(v)通过如下步骤获取:
初始化A(v)为空集;
用Dijkstra算法按照到v的距离升序遍历G中所有顶点;
对于每一个遍历到的顶点v′,令a(v′)为v′到其最近的设施点f的距离,如果d(v,v′)≤a(v′),并且v′是一个客户点,则将把<v′,d(v′,v)>加入顶点v吸引集合A(v)后;如果d(v,v′)>a(v′),则忽略所有以v′为端点的边。
较佳的,根据已经计算出的A(vl)和A(vr)计算e的局部最佳位置I以及对应的收益值m的步骤包括:
建立一个2维平面R;
让C-表示在A(vl)和A(vr)中都没有出现的客户点c的集合;
在C-中找到拥有最大加权吸引距离的客户点c0;
在R中建立c0的WAD函数,即从坐标为
Figure BDA00003464619500171
的点到坐标为
Figure BDA00003464619500172
的点画一条线段,其中l表示待计算的边e的长度,某个客户点在e上的WAD函数表示该客户点的加权吸引距离随着在e上建立新设施的位置变化而变化的情况;
对于每个在A(vl)中出现但是没有在A(vl)中出现的客户点c,令x1=0,y1=w(c)·d(c,vl),x2=min{l,a(c)-d(c,vl)},x3=l,y2=y3=w(c)(x2+d(c,vl)),在R中建立c的WAD函数:即建立两条线段,从(x1,y1)到(x2,y2),从(x2,y2)到(x3,y3);
对于每个在A(vr)中出现但是没有在A(vl)中出现的客户点c,令x1=l,y1=w(c)·d(c,vr),x2=max{0,l-a(c)+d(c,vr)},x3=0,y2=y3=w(c)(l-x2+d(c,vr)),在R中建立c的WAD函数:即建立两条线段,从(x1,y1)到(x2,y2),从(x2,y2)到(x3,y3);
对于每个在A(vl)和A(vl)中都出现的客户点c,令x1=0,y1=w(c)·d(c,vl), &beta; = 1 2 l - 1 2 d ( c , v l ) + 1 2 d ( c , v r ) , x2=min{β,a(c)-d(c,vl)},x3=max{β,l-a(c)+d(c,vr)},y2=y3=w(c)·(x2+d(c,vl)),x4=l,y4=w(c)·d(c,vr),在R中建立c的WAD函数:即建立三条线段,从(x1,y1)到(x2,y2),从(x2,y2)到(x3,y3),从(x3,y3)到(x4,y4);
计算R中所有WAD函数的上界函数为gup
返回所有使gup取得最小值的点的集合为边e上的局部最佳位置I,该最小值为相应的收益值m。
步骤S3,根据路网中设施点集合F或客户点集合C发生的更新随时动态监控p。
优选的,步骤S3包括:
根据路网中设施点集合F或客户点集合C发生的更新随时动态监控p的步骤包括:
路网中设施点和客户点的更新可以归结为增加一个客户点AddC(c),减少一个客户点DelC(c),增加一个设施点AddF(f),减少一个设施点DelF(f)共四种基本操作;
当一个更新操作到来的时候,首先计算吸引距离会被更新所影响的客户点的集合Vc,如果操作是AddC(c)或DelC(c),则Vc={c};如果操作是AddF(f)或DelF(f),则Vc={c|<c,d(c,v)>∈A(f)};
对于每一个客户点c∈Vc,找出该客户点之前的吸引距离a0(c)和新的吸引距离a′(c),并建立两个集合
Figure BDA00003464619500181
U c - = { < v , d ( c , v ) > | d ( c , v ) < a 0 ( c ) } ;
对于每一个客户点c∈Vc,根据a0(c),a′(c),
Figure BDA00003464619500183
来更新每一条边e的局部最佳位置I以及对应的收益值m,令更新前的局部最佳位置以及对应的收益值分别为I0和m0
根据所有边上的局部最佳位置I选出对应的收益值m最大的作为最小化最大距离位置p。
较佳的,已知更新前的局部最佳位置以及对应的收益值分别为I0和m0,根据a0(c),a′(c),
Figure BDA00003464619500191
来更新每一条边e的局部最佳位置I以及对应的收益值m的步骤包括:
初始化一个空的边集E1
对于E中的每一条边e,如果w(c)·max{a0(c),a′(c)}≥m0,则把e加入到E1中;
对于E1中的每一条边e,
如果w(c)·a0(c)≥m0,使用a0(c)建立c在e上的WAD函数,如果WAD函数的最大值小于m0,则m=m0,I=I0,如果WAD函数的最大值大于等于m0,则重新初始化计算I和m;
如果w(c)·a′(c)≥m0,使用a′(c)建立c在e上的WAD函数gc(x),建立临时函数 g up &prime; ( x ) = max { g c ( x ) , g 0 ( x ) = m 0 ( 0 &le; x &le; l ) } , 并得到点集合 I &prime; = arg min x g up &prime; ( x ) , 如果
Figure BDA00003464619500194
的最小值等于m0并且I′与I0的交集不为空,则m=m0,I′∩I0,如果
Figure BDA00003464619500195
的最小值不等于m0或I′与I0的交集为空,则重新初始化计算I和m;
返回I和m为e的新的局部最佳位置和对应的收益值。
实施例二
本发明还提供另一种查询最小化最大距离位置的动态监控系统,包括:
定义模块,用于给定一个客户点的集合C和一个设施点的集合F,以及一个候选位置集合P,最小化最大距离位置为 p = arg min p &Element; P ( max c &Element; C { a ^ ( c ) | F = F &cup; { p } } ) , 其中
Figure BDA00003464619500202
为客户点c的加权吸引距离,w(c)是客户点c的权重,如果客户点c和设施点f在道路网络中的距离d(c,f)是c和F中的点的极小值,则定义f是c的吸引者,c被f吸引,a(c)=d(c,f)为c的吸引距离;
获取模块,用于根据路网中初始的设施点集合F和客户点集合C获取p;
更新模块,用于根据路网中设施点集合F或客户点集合C发生的更新随时动态监控p。
进一步的,在上述系统中,所述获取模块用于:
通过向表示路网的无向连通图Go=(Vo,Eo)插入所有的设施点f和客户点c来将Eo中的边划分成新的边,对于每一个点ρ∈C∪F,先考虑ρ所在的边e∈Eo,令e的两个端点为vl和vr,然后将e分为两部分即从vl到ρ和从ρ到vr,以使ρ成为无向连通图的一个新顶点,加入所有的新顶点以生成了一个新的无向连通图G=(V,E),且V=Vo∪C∪F;
对于每一条边e∈Ec初始化计算其局部最佳位置I以及对应的收益值m,其中,Ec为包含候选位置集合P中所有点的边的集合,某个位置的收益值m为在该位置建立新设施后所有客户点的最大加权吸引距离的减少量,局部最佳位置I为边e上所有具有最大收益值的点集合;
根据所有边上的局部最佳位置I选出对应的收益值m最大的作为最小化最大距离位置p。
进一步的,在上述系统中,所述获取模块用于:
通过Erwig和Hagen的算法来计算G中每一个顶点v的最近设施点f以及距离d(v,f);
分别计算e的两个端点vl和vr的吸引集合A(vl)和A(vr),其中,给定一个顶点v,A(v)是包含v能吸引到的所有客户点c以及对应距离d(c,v)的集合;
根据已经计算出的A(vl)和A(vr)计算e的局部最佳位置I以及对应的收益值m。
进一步的,在上述系统中,已知一个顶点v,所述获取模块用于获取A(v),具体包括:
初始化A(v)为空集;
用Dijkstra算法按照到v的距离升序遍历G中所有顶点;
对于每一个遍历到的顶点v′,令a(v′)为v′到其最近的设施点f的距离,如果d(v,v′)≤a(v′),并且v′是一个客户点,则将把<v′,d(v′,v)>加入顶点v吸引集合A(v)后;如果d(v,v′)>a(v′),则忽略所有以v′为端点的边。
进一步的,在上述系统中,所述获取模块用于:
建立一个2维平面R;
让C-表示在A(vl)和A(vr)中都没有出现的客户点c的集合;
在C-中找到拥有最大加权吸引距离的客户点c0;
在R中建立c0的WAD函数,即从坐标为
Figure BDA00003464619500221
的点到坐标为
Figure BDA00003464619500222
的点画一条线段,其中l表示待计算的边e的长度,某个客户点在e上的WAD函数表示该客户点的加权吸引距离随着在e上建立新设施的位置变化而变化的情况;
对于每个在A(vl)中出现但是没有在A(vl)中出现的客户点c,令x1=0,y1=w(c)·d(c,vl),x2=min{l,a(c)-d(c,vl)},x3=l,y2=y3=w(c)(x2+d(c,vl)),在R中建立c的WAD函数:即建立两条线段,从(x1,y1)到(x2,y2),从(x2,y2)到(x3,y3);
对于每个在A(vr)中出现但是没有在A(vl)中出现的客户点c,令x1=l,y1=w(c)·d(c,vr),x2=max{0,l-a(c)+d(c,vr)},x3=0,y2=y3=w(c)(l-x2+d(c,vr)),在R中建立c的WAD函数:即建立两条线段,从(x1,y1)到(x2,y2),从(x2,y2)到(x3,y3);
对于每个在A(vl)和A(vl)中都出现的客户点c,令x1=0,y1=w(c)·d(c,vl), &beta; = 1 2 l - 1 2 d ( c , v l ) + 1 2 d ( c , v r ) , x2=min{β,a(c)-d(c,vl)},x3=max{β,l-a(c)+d(c,vr)},y2=y3=w(c)·(x2+d(c,vl)),x4=l,y4=w(c)·d(c,vr),在R中建立c的WAD函数:即建立三条线段,从(x1,y1)到(x2,y2),从(x2,y2)到(x3,y3),从(x3,y3)到(x4,y4);
计算R中所有WAD函数的上界函数为gup
返回所有使gup取得最小值的点的集合为边e上的局部最佳位置I,该最小值为相应的收益值m。
进一步的,在上述系统中,所述更新模块用于:
路网中设施点和客户点的更新可以归结为增加一个客户点AddC(c),减少一个客户点DelC(c),增加一个设施点AddF(f),减少一个设施点DelF(f)共四种基本操作;
当一个更新操作到来的时候,首先计算吸引距离会被更新所影响的客户点的集合Vc,如果操作是AddC(c)或DelC(c),则Vc={c};如果操作是AddF(f)或DelF(f),则Vc={c|<c,d(c,v)>∈A(f)};
对于每一个客户点c∈Vc,找出该客户点之前的吸引距离a0(c)和新的吸引距离a′(c),并建立两个集合
Figure BDA00003464619500231
U c - = { < v , d ( c , v ) > | d ( c , v ) < a 0 ( c ) } ;
对于每一个客户点c∈Vc,根据a0(c),a′(c),来更新每一条边e的局部最佳位置I以及对应的收益值m,令更新前的局部最佳位置以及对应的收益值分别为I0和m0
根据所有边上的局部最佳位置I选出对应的收益值m最大的作为最小化最大距离位置p。
进一步的,在上述系统中,已知更新前的局部最佳位置以及对应的收益值分别为I0和m0,所述更新模块用于:
初始化一个空的边集E1
对于E中的每一条边e,如果w(c)·max{a0(c),a′(c)}≥m0,则把e加入到E1中;
对于E1中的每一条边e,
如果w(c)·a0(c)≥m0,使用a0(c)建立c在e上的WAD函数,如果WAD函数的最大值小于m0,则m=m0,I=I0,如果WAD函数的最大值大于等于m0,则重新初始化计算I和m;
如果w(c)·a′(c)≥m0,使用a′(c)建立c在e上的WAD函数gc(x),建立临时函数 g up &prime; ( x ) = max { g c ( x ) , g 0 ( x ) = m 0 ( 0 &le; x &le; l ) } , 并得到点集合 I &prime; = arg min x g up &prime; ( x ) , 如果
Figure BDA00003464619500243
的最小值等于m0并且I′与I0的交集不为空,则m=m0,I′∩I0,如果
Figure BDA00003464619500244
的最小值不等于m0或I′与I0的交集为空,则重新初始化计算I和m;
返回I和m为e的新的局部最佳位置和对应的收益值。
实施例二的其它详细内容具体可参见实施例一,在此不再赘述。
本发明通过给定一个客户点的集合C和一个设施点的集合F,以及一个候选位置集合P,最小化最大距离位置为 p = arg min p &Element; P ( max c &Element; C { a ^ ( c ) | F = F &cup; { p } } ) , 其中为客户点c的加权吸引距离,w(c)是客户点c的权重,如果客户点c和设施点f在道路网络中的距离d(c,f)是c和F中的点的极小值,则定义f是c的吸引者,c被f吸引,a(c)=d(c,f)为c的吸引距离;根据路网中初始的设施点集合F和客户点集合C获取p;根据路网中设施点集合F或客户点集合C发生的更新随时动态监控p,能够快速和动态地查询最小化最大距离位置。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
显然,本领域的技术人员可以对发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包括这些改动和变型在内。

Claims (14)

1.一种查询最小化最大距离位置的动态监控方法,其特征在于,包括:
给定一个客户点的集合C和一个设施点的集合F,以及一个候选位置集合P,最小化最大距离位置为 p = arg min p &Element; P ( max c &Element; C { a ^ ( c ) | F = F &cup; { p } } ) , 其中
Figure FDA00003464619400012
为客户点c的加权吸引距离,w(c)是客户点c的权重,如果客户点c和设施点f在道路网络中的距离d(c,f)是c和F中的点的极小值,则定义f是c的吸引者,c被f吸引,a(c)=d(c,f)为c的吸引距离;
根据路网中初始的设施点集合F和客户点集合C获取p;
根据路网中设施点集合F或客户点集合C发生的更新随时动态监控p。
2.如权利要求1所述的查询最小化最大距离位置的动态监控方法,其特征在于,根据路网中初始的设施点集合F和客户点集合C获取p的步骤包括:
通过向表示路网的无向连通图Go=(Vo,Eo)插入所有的设施点f和客户点c来将Eo中的边划分成新的边,对于每一个点ρ∈C∪F,先考虑ρ所在的边e∈Eo,令e的两个端点为vl和vr,然后将e分为两部分即从vl到ρ和从ρ到vr,以使ρ成为无向连通图的一个新顶点,加入所有的新顶点以生成了一个新的无向连通图G=(V,E),且V=Vo∪C∪F;
对于每一条边e∈Ec初始化计算其局部最佳位置I以及对应的收益值m,其中,Ec为包含候选位置集合P中所有点的边的集合,某个位置的收益值m为在该位置建立新设施后所有客户点的最大加权吸引距离的减少量,局部最佳位置I为边e上所有具有最大收益值的点集合;
根据所有边上的局部最佳位置I选出对应的收益值m最大的作为最小化最大距离位置p。
3.如权利要求2所述的查询最小化最大距离位置的动态监控方法,其特征在于,对于每一条边e∈Ec初始化计算其局部最佳位置I以及对应的收益值m的步骤包括:
通过Erwig和Hagen的算法来计算G中每一个顶点v的最近设施点f以及距离d(v,f);
分别计算e的两个端点vl和vr的吸引集合A(vl)和A(vr),其中,给定一个顶点v,A(v)是包含v能吸引到的所有客户点c以及对应距离d(c,v)的集合;
根据已经计算出的A(vl)和A(vr)计算e的局部最佳位置I以及对应的收益值m。
4.如权利要求3所述的查询最小化最大距离位置的动态监控方法,其特征在于,已知一个顶点v,A(v)通过如下步骤获取:
初始化A(v)为空集;
用Dijkstra算法按照到v的距离升序遍历G中所有顶点;
对于每一个遍历到的顶点v′,令a(v′)为v′到其最近的设施点f的距离,如果d(v,v′)≤a(v′),并且v′是一个客户点,则将把<v′,d(v′,v)>加入顶点v吸引集合A(v)后;如果d(v,v′)>a(v′),则忽略所有以v′为端点的边。
5.如权利要求4所述的查询最小化最大距离位置的动态监控方法,其特征在于,根据已经计算出的A(vl)和A(vr)计算e的局部最佳位置I以及对应的收益值m的步骤包括:
建立一个2维平面R;
让C-表示在A(vl)和A(vr)中都没有出现的客户点c的集合;
在C-中找到拥有最大加权吸引距离的客户点c0;
在R中建立c0的WAD函数,即从坐标为
Figure FDA00003464619400031
的点到坐标为
Figure FDA00003464619400032
的点画一条线段,其中l表示待计算的边e的长度,某个客户点在e上的WAD函数表示该客户点的加权吸引距离随着在e上建立新设施的位置变化而变化的情况;
对于每个在A(vl)中出现但是没有在A(vl)中出现的客户点c,令x1=0,y1=w(c)·d(c,vl),x2=min{l,a(c)-d(c,vl)},x3=l,y2=y3=w(c)(x2+d(c,vl)),在R中建立c的WAD函数:即建立两条线段,从(x1,y1)到(x2,y2),从(x2,y2)到(x3,y3);
对于每个在A(vr)中出现但是没有在A(vl)中出现的客户点c,令x1=l,y1=w(c)·d(c,vr),x2=max{0,l-a(c)+d(c,vr)},x3=0,y2=y3=w(c)(l-x2+d(c,vr)),在R中建立c的WAD函数:即建立两条线段,从(x1,y1)到(x2,y2),从(x2,y2)到(x3,y3);
对于每个在A(vl)和A(vl)中都出现的客户点c,令x1=0,y1=w(c)·d(c,vl), &beta; = 1 2 l - 1 2 d ( c , v l ) + 1 2 d ( c , v r ) , x2=min{β,a(c)-d(c,vl)},x3=max{β,l-a(c)+d(c,vr)},y2=y3=w(c)·(x2+d(c,vl)),x4=l,y4=w(c)·d(c,vr),在R中建立c的WAD函数:即建立三条线段,从(x1,y1)到(x2,y2),从(x2,y2)到(x3,y3),从(x3,y3)到(x4,y4);
计算R中所有WAD函数的上界函数为gup
返回所有使gup取得最小值的点的集合为边e上的局部最佳位置I,该最小值为相应的收益值m。
6.如权利要求1至5任一项所述的查询最小化最大距离位置的动态监控方法,其特征在于,根据路网中设施点集合F或客户点集合C发生的更新随时动态监控p的步骤包括:
路网中设施点和客户点的更新可以归结为增加一个客户点AddC(c),减少一个客户点DelC(c),增加一个设施点AddF(f),减少一个设施点DelF(f)共四种基本操作;
当一个更新操作到来的时候,首先计算吸引距离会被更新所影响的客户点的集合Vc,如果操作是AddC(c)或DelC(c),则Vc={c};如果操作是AddF(f)或DelF(f),则Vc={c|<c,d(c,v)>∈A(f)};
对于每一个客户点c∈Vc,找出该客户点之前的吸引距离a0(c)和新的吸引距离a′(c),并建立两个集合
Figure FDA00003464619400041
U c - = { < v , d ( c , v ) > | d ( c , v ) < a 0 ( c ) } ;
对于每一个客户点c∈Vc,根据a0(c),a′(c),
Figure FDA00003464619400043
来更新每一条边e的局部最佳位置I以及对应的收益值m,令更新前的局部最佳位置以及对应的收益值分别为I0和m0
根据所有边上的局部最佳位置I选出对应的收益值m最大的作为最小化最大距离位置p。
7.如权利要求6所述的查询最小化最大距离位置的动态监控方法,其特征在于,已知更新前的局部最佳位置以及对应的收益值分别为I0和m0,根据a0(c),a′(c),
Figure FDA00003464619400051
来更新每一条边e的局部最佳位置I以及对应的收益值m的步骤包括:
初始化一个空的边集E1
对于E中的每一条边e,如果w(c)·max{a0(c),a′(c)}≥m0,则把e加入到E1中;
对于E1中的每一条边e,
如果w(c)·a0(c)≥m0,使用a0(c)建立c在e上的WAD函数,如果WAD函数的最大值小于m0,则m=m0,I=I0,如果WAD函数的最大值大于等于m0,则重新初始化计算I和m;
如果w(c)·a′(c)≥m0,使用a′(c)建立c在e上的WAD函数gc(x),建立临时函数 g up &prime; ( x ) = max { g c ( x ) , g 0 ( x ) = m 0 ( 0 &le; x &le; l ) } , 并得到点集合 I &prime; = arg min x g up &prime; ( x ) , 如果
Figure FDA00003464619400054
的最小值等于m0并且I′与I0的交集不为空,则m=m0,I′∩I0,如果
Figure FDA00003464619400055
的最小值不等于m0或I′与I0的交集为空,则重新初始化计算I和m;
返回I和m为e的新的局部最佳位置和对应的收益值。
8.一种查询最小化最大距离位置的动态监控系统,其特征在于,包括:
定义模块,用于给定一个客户点的集合C和一个设施点的集合F,以及一个候选位置集合P,最小化最大距离位置为 p = arg min p &Element; P ( max c &Element; C { a ^ ( c ) | F = F &cup; { p } } ) , 其中为客户点c的加权吸引距离,w(c)是客户点c的权重,如果客户点c和设施点f在道路网络中的距离d(c,f)是c和F中的点的极小值,则定义f是c的吸引者,c被f吸引,a(c)=d(c,f)为c的吸引距离;
获取模块,用于根据路网中初始的设施点集合F和客户点集合C获取p;
更新模块,用于根据路网中设施点集合F或客户点集合C发生的更新随时动态监控p。
9.如权利要求8所述的查询最小化最大距离位置的动态监控系统,其特征在于,所述获取模块用于:
通过向表示路网的无向连通图Go=(Vo,Eo)插入所有的设施点f和客户点c来将Eo中的边划分成新的边,对于每一个点ρ∈C∪F,先考虑ρ所在的边e∈Eo,令e的两个端点为vl和vr,然后将e分为两部分即从vl到ρ和从ρ到vr,以使ρ成为无向连通图的一个新顶点,加入所有的新顶点以生成了一个新的无向连通图G=(V,E),且V=Vo∪C∪F;
对于每一条边e∈Ec初始化计算其局部最佳位置I以及对应的收益值m,其中,Ec为包含候选位置集合P中所有点的边的集合,某个位置的收益值m为在该位置建立新设施后所有客户点的最大加权吸引距离的减少量,局部最佳位置I为边e上所有具有最大收益值的点集合;
根据所有边上的局部最佳位置I选出对应的收益值m最大的作为最小化最大距离位置p。
10.如权利要求9所述的查询最小化最大距离位置的动态监控系统,其特征在于,所述获取模块用于:
通过Erwig和Hagen的算法来计算G中每一个顶点v的最近设施点f以及距离d(v,f);
分别计算e的两个端点vl和vr的吸引集合A(vl)和A(vr),其中,给定一个顶点v,A(v)是包含v能吸引到的所有客户点c以及对应距离d(c,v)的集合;
根据已经计算出的A(vl)和A(vr)计算e的局部最佳位置I以及对应的收益值m。
11.如权利要求10所述的查询最小化最大距离位置的动态监控系统,其特征在于,已知一个顶点v,所述获取模块用于获取A(v),具体包括:
初始化A(v)为空集;
用Dijkstra算法按照到v的距离升序遍历G中所有顶点;
对于每一个遍历到的顶点v′,令a(v′)为v′到其最近的设施点f的距离,如果d(v,v′)≤a(v′),并且v′是一个客户点,则将把<v′,d(v′,v)>加入顶点v吸引集合A(v)后;如果d(v,v′)>a(v′),则忽略所有以v′为端点的边。
12.如权利要求11所述的查询最小化最大距离位置的动态监控系统,其特征在于,所述获取模块用于:
建立一个2维平面R;
让C-表示在A(vl)和A(vr)中都没有出现的客户点c的集合;
在C-中找到拥有最大加权吸引距离的客户点c0;
在R中建立c0的WAD函数,即从坐标为
Figure FDA00003464619400081
的点到坐标为
Figure FDA00003464619400082
的点画一条线段,其中l表示待计算的边e的长度,某个客户点在e上的WAD函数表示该客户点的加权吸引距离随着在e上建立新设施的位置变化而变化的情况;
对于每个在A(vl)中出现但是没有在A(vl)中出现的客户点c,令x1=0,y1=w(c)·d(c,vl),x2=min{l,a(c)-d(c,vl)},x3=l,y2=y3=w(c)(x2+d(c,vl)),在R中建立c的WAD函数:即建立两条线段,从(x1,y1)到(x2,y2),从(x2,y2)到(x3,y3);
对于每个在A(vr)中出现但是没有在A(vl)中出现的客户点c,令x1=l,y1=w(c)·d(c,vr),x2=max{0,l-a(c)+d(c,vr)},x3=0,y2=y3=w(c)(l-x2+d(c,vr)),在R中建立c的WAD函数:即建立两条线段,从(x1,y1)到(x2,y2),从(x2,y2)到(x3,y3);
对于每个在A(vl)和A(vl)中都出现的客户点c,令x1=0,y1=w(c)·d(c,vl), &beta; = 1 2 l - 1 2 d ( c , v l ) + 1 2 d ( c , v r ) , x2=min{β,a(c)-d(c,vl)},x3=max{β,l-a(c)+d(c,vr)},y2=y3=w(c)·(x2+d(c,vl)),x4=l,y4=w(c)·d(c,vr),在R中建立c的WAD函数:即建立三条线段,从(x1,y1)到(x2,y2),从(x2,y2)到(x3,y3),从(x3,y3)到(x4,y4);
计算R中所有WAD函数的上界函数为gup
返回所有使gup取得最小值的点的集合为边e上的局部最佳位置I,该最小值为相应的收益值m。
13.如权利要求8至12任一项所述的查询最小化最大距离位置的动态监控系统,其特征在于,所述更新模块用于:
路网中设施点和客户点的更新可以归结为增加一个客户点AddC(c),减少一个客户点DelC(c),增加一个设施点AddF(f),减少一个设施点DelF(f)共四种基本操作;
当一个更新操作到来的时候,首先计算吸引距离会被更新所影响的客户点的集合Vc,如果操作是AddC(c)或DelC(c),则Vc={c};如果操作是AddF(f)或DelF(f),则Vc={c|<c,d(c,v)>∈A(f)};
对于每一个客户点c∈Vc,找出该客户点之前的吸引距离a0(c)和新的吸引距离a′(c),并建立两个集合
Figure FDA00003464619400091
U c - = { < v , d ( c , v ) > | d ( c , v ) < a 0 ( c ) } ;
对于每一个客户点c∈Vc,根据a0(c),a′(c),
Figure FDA00003464619400093
来更新每一条边e的局部最佳位置I以及对应的收益值m,令更新前的局部最佳位置以及对应的收益值分别为I0和m0
根据所有边上的局部最佳位置I选出对应的收益值m最大的作为最小化最大距离位置p。
14.如权利要求13所述的查询最小化最大距离位置的动态监控系统,其特征在于,已知更新前的局部最佳位置以及对应的收益值分别为I0和m0,所述更新模块用于:
初始化一个空的边集E1
对于E中的每一条边e,如果w(c)·max{a0(c),a′(c)}≥m0,则把e加入到E1中;
对于E1中的每一条边e,
如果w(c)·a0(c)≥m0,使用a0(c)建立c在e上的WAD函数,如果WAD函数的最大值小于m0,则m=m0,I=I0,如果WAD函数的最大值大于等于m0,则重新初始化计算I和m;
如果w(c)·a′(c)≥m0,使用a′(c)建立c在e上的WAD函数gc(x),建立临时函数 g up &prime; ( x ) = max { g c ( x ) , g 0 ( x ) = m 0 ( 0 &le; x &le; l ) } , 并得到点集合 I &prime; = arg min x g up &prime; ( x ) , 如果
Figure FDA00003464619400103
的最小值等于m0并且I′与I0的交集不为空,则m=m0,I′∩I0,如果
Figure FDA00003464619400104
的最小值不等于m0或I′与I0的交集为空,则重新初始化计算I和m;
返回I和m为e的新的局部最佳位置和对应的收益值。
CN201310279898.6A 2013-07-04 2013-07-04 查询最小化最大距离位置的动态监控方法及系统 Active CN103336823B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310279898.6A CN103336823B (zh) 2013-07-04 2013-07-04 查询最小化最大距离位置的动态监控方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310279898.6A CN103336823B (zh) 2013-07-04 2013-07-04 查询最小化最大距离位置的动态监控方法及系统

Publications (2)

Publication Number Publication Date
CN103336823A true CN103336823A (zh) 2013-10-02
CN103336823B CN103336823B (zh) 2017-03-29

Family

ID=49244988

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310279898.6A Active CN103336823B (zh) 2013-07-04 2013-07-04 查询最小化最大距离位置的动态监控方法及系统

Country Status (1)

Country Link
CN (1) CN103336823B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103324747A (zh) * 2013-07-04 2013-09-25 上海交通大学 最小化最大距离位置的动态监控方法及系统
CN107860392A (zh) * 2016-09-21 2018-03-30 千寻位置网络有限公司 一种高效找人的方法及其系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5778184A (en) * 1996-06-28 1998-07-07 Mci Communications Corporation System method and computer program product for processing faults in a hierarchial network
CN101739836A (zh) * 2009-12-18 2010-06-16 吉林大学 大规模路网下中心式实时动态交通诱导路径优化方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5778184A (en) * 1996-06-28 1998-07-07 Mci Communications Corporation System method and computer program product for processing faults in a hierarchial network
CN101739836A (zh) * 2009-12-18 2010-06-16 吉林大学 大规模路网下中心式实时动态交通诱导路径优化方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
XIAOKUI XIAO 等: ""Optimal Location Queries in Road Network Databases"", 《DATA ENGINEERING(ICDE) CONFERENCE 2011》, 16 April 2011 (2011-04-16) *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103324747A (zh) * 2013-07-04 2013-09-25 上海交通大学 最小化最大距离位置的动态监控方法及系统
CN103324747B (zh) * 2013-07-04 2017-03-01 上海交通大学 最小化最大距离位置的动态监控方法及系统
CN107860392A (zh) * 2016-09-21 2018-03-30 千寻位置网络有限公司 一种高效找人的方法及其系统

Also Published As

Publication number Publication date
CN103336823B (zh) 2017-03-29

Similar Documents

Publication Publication Date Title
Kamp et al. Efficient decentralized deep learning by dynamic model averaging
Deb et al. Understanding knee points in bicriteria problems and their implications as preferred solution principles
Lam et al. An integrated logistics routing and scheduling network model with RFID-GPS data for supply chain management
Ren et al. A framework for shopfloor material delivery based on real-time manufacturing big data
CN103246969B (zh) 一种物流调配的实现方法和装置
Li et al. Spatial–temporal out-of-order execution for advanced planning and scheduling in cyber-physical factories
Tan et al. A fuzzy adaptive gravitational search algorithm for two-dimensional multilevel thresholding image segmentation
CN103336823A (zh) 查询最小化最大距离位置的动态监控方法及系统
CN111626311A (zh) 一种异构图数据处理方法和装置
CN103336826A (zh) 查询最大竞争力位置的动态监控方法及系统
CN103345510A (zh) 查询最小距离和位置的动态监控方法及系统
Jamous et al. Neural network architecture selection using particle swarm optimization technique
Lu et al. Bogdanov-Takens bifurcation in a SIRS epidemic model with a generalized nonmonotone incidence rate
CN103336824A (zh) 查询最小距离和位置的动态监控方法及系统
CN103324748B (zh) 查询最大竞争力位置的动态监控方法及系统
CN103324747A (zh) 最小化最大距离位置的动态监控方法及系统
Chow et al. Finding the shortest path by evolving junctions on obstacle boundaries (E-JOB): An initial value ODEʼs approach
Cattani et al. On the optimal design of a scale-free supply network
CN113297443A (zh) 分类方法、装置、计算设备和介质
Yang et al. Exploiting content-based pub/sub systems for event detection in emergency management
Zhang et al. Mining related information of traffic flows on lanes by k-medoids
Chung et al. Nearest surrounder searching in mobile computing environments
Huang et al. Dynamic updating rough approximations in distributed information systems
Noor A service classification model for IoT services discovery
Yuan et al. A Max-Min clustering method for $ k $-means algorithm ofdata clustering

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20210316

Address after: 618 Liangjiang Avenue, Longxing Town, Yubei District, Chongqing

Patentee after: Chongqing Research Institute of Shanghai Jiaotong University

Address before: 200240 No. 800, Dongchuan Road, Shanghai, Minhang District

Patentee before: SHANGHAI JIAO TONG University

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210813

Address after: 618 Liangjiang Avenue, Longxing Town, Yubei District, Chongqing

Patentee after: Chongqing Jiaohui Technology Co.,Ltd.

Address before: 618 Liangjiang Avenue, Longxing Town, Yubei District, Chongqing

Patentee before: Chongqing Research Institute of Shanghai Jiaotong University

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20211022

Address after: 618 Liangjiang Avenue, Longxing Town, Yubei District, Chongqing

Patentee after: Chongqing Jiaohui Excavation Technology Co.,Ltd.

Address before: 618 Liangjiang Avenue, Longxing Town, Yubei District, Chongqing

Patentee before: Chongqing Jiaohui Technology Co.,Ltd.

TR01 Transfer of patent right