CN103336825A - 获取路网上单反向最远邻居的暴力搜索方法及*** - Google Patents
获取路网上单反向最远邻居的暴力搜索方法及*** Download PDFInfo
- Publication number
- CN103336825A CN103336825A CN2013102802055A CN201310280205A CN103336825A CN 103336825 A CN103336825 A CN 103336825A CN 2013102802055 A CN2013102802055 A CN 2013102802055A CN 201310280205 A CN201310280205 A CN 201310280205A CN 103336825 A CN103336825 A CN 103336825A
- Authority
- CN
- China
- Prior art keywords
- road network
- farthest
- neighbours
- node
- violence
- 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.)
- Pending
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种获取路网上单反向最远邻居的暴力搜索方法及***,包括:对于给定路网G上的某一结点p和路网G上的所有结点VG,如果路网G上存在结点q,q与p的路网距离||q-p||不小于p到VG当中任何点p’的距离||p′-p||,则定义q为p相对于VG的最远邻居,记为fn(p,VG);对于给定路网G上的所有结点VG,定义q的单反向最远邻居是VG中以q作为最远邻居点的集合即MRFN(q,VG)={p|p∈VG,fn(p,VG∪{q})=q};使用Dijkstra算法以每一个d∈VG作为源点进行一次扩展,直到查询点q被访问到为止,若q在路网上的其他点被全部遍历之前被访问到,则q并非d的最远邻居,从而d不属于q的反向最远邻居;若q在路网上的其他点被全部遍历之后才被访问到,则确定d为p,p∈MRFN(q,VG),能够在路网上快速搜索到查询点的单反向邻居。
Description
技术领域
本发明涉及一种获取路网上单反向最远邻居的暴力搜索方法及***。
背景技术
空间数据库(spaitial database)是指提供了空间数据类型(spatial database type,SDT)和相应实现支持的数据库(参见文献1:Güting R H.An introduction tospatial database systems[J].The VLDB Journal,1994,3(4):357-399)。随着移动计算与云计算的日益发展,空间相关算法的应用日益增多。距离查询(proximityquery)包括最近邻居(Nearest Neighbor)查询、反向最近邻居(Reverse NearestNeighbor)查询、反向最远邻居查询(Reverse Furthest Neighbor)等,是空间数据库查询中最常见的类型之一。本发明关注在路网(road network)数据库上的反向最远邻居(reverse furthest neighbor,RFN)查询,即给定一组路网上的数据集P与查询集Q,我们希望求取P中所有与Q相比距离q更远的点。该问题根据P与Q是否相同可划分为单反向最远邻与复反向最远邻问题。该问题在实践中拥有重大意义,例如在开设新的商店时,我们希望得知受某一竞争对手影响最小的点。如果我们将不同地点之间的影响程度以带权的边表示,这一问题就相当于在路网上求取以现有商户地点为查询点的单反向最远邻居问题。进一步说,寻找一个受现有的所有竞争对手相对影响最小的点,可以转化为目标点在这一路网上求以竞争对手地点为查询集Q的复反向最远邻居数量的最大化问题。
据我们所知,目前对于路网上单反向最远邻问题所提出的唯一解决方案是Tran等人对于路网上反向最远邻的研究,他们以路网中的每一个兴趣点为生成点预处理建立Voronoi分区,然后使用分区的邻接性质对分区进行遍历,以枚举查询点可能的反向最远邻居(reverse furthest neighbor)。但这一方法在路网中兴趣点数量大时,将与暴力算法没有本质区别。而对于复反向最远邻问题目前尚无有关解决方案。
在其他相关研究方面,最引人注意的是最近邻居(nearest neighbor)问题(参见文献2,文献3:Hjaltason G R,Samet H.Distance browsing in spatial databases[J].ACM Transactions on Database Systems(TODS),1999,24(2):265-318,文献4:Berchtold S, C,Keim D A,etc.A cost model for nearest neighbor search inhigh-dimensional data space[A].In Proceedings of the sixteenth ACMSIGACT-SIGMOD-SIGART symposium on Principles of database systems[C],1997:78-86,文献5,文献6:Jagadish H,Ooi B C,Tan K-L,etc.iDistance:An adaptiveB+-tree based indexing method for nearest neighbor search[J].ACM Transactions onDatabase Systems(TODS),2005,30(2):364-397,文献7:Tao Y,Papadias D,ShenQ.Continuous nearest neighbor search[A].In Proceedings of the28th internationalconference on Very Large Data Bases[C],2002:287-29)与反向最近邻居(参见文献8:Korn F,Muthukrishnan S.Influence sets based on reverse nearest neighborqueries[J].ACM SIGMOD Record,2000,29(2):201-212,文献9:Singh A,Ferhatosmanoglu H,Tosun AHigh dimensional reverse nearest neighborqueries[A].In Proceedings of the twelfth international conference on Information andknowledge management[C],2003:91-98,文献10:Tao Y,Papadias D,Lian X.Reverse kNN search in arbitrary dimensionality[A].In Proceedings of the Thirtiethinternational conference on Very large data bases-Volume30[C],2004:744-755,文献11:Achtert E, C, P,etc.Efficient reverse k-nearest neighbor searchin arbitrary metric spaces[A].In Proceedings of the2006ACM SIGMODinternational conference on Management of data[C],2006:515-526,文献12:Sankaranarayanan J,Samet H.Distance oracles for spatial networks[A].In DataEngineering,2009.ICDE'09.IEEE25th International Conference on[C],2009:652-663)问题。以R-Tree(参见文献13:Guttman A.R-trees:a dynamic indexstructure for spatial searching[M].ACM,1984)为基础的深度(参见文献2:Roussopoulos N,Kelley S,Vincent F.Nearest neighbor queries[A].In1995:71-79)与广度(参见文献5:Cui B,Ooi B C,Su J,etc.Contorting high dimensional data forefficient main memory KNN processing[A].In Proceedings of the2003ACMSIGMOD international conference on Management of data[C],2003:479-490)优先搜索、增量欧氏限制(Incremental Euclidean Restriction)、增量网络扩展(Invremental Network Expansion,参见文献14:Papadias D,Zhang J,Mamoulis N,etc.Query processing in spatial network databases[A].In2003:802-813)与Voronoi图相关的技术(参见文献8~12)被广泛用于解决欧氏空间(Euclidean space)与路网上的相应问题,但由于反向最远邻居问题不具有最近邻居问题所具有的本地性特点,这些解决方案难以应用在本发明所解决的问题上。
欧氏空间上的最远邻居问题由Yao等人加以描述(参见文献15:Yao B,Li F,Kumar P.Reverse furthest neighbors in spatial databases[A].In2009:664-675)。他们提出了递进最远区(progressive furthest cell,PFC)算法与凸包最远区(convexhull furthest cell)算法以处理该问题。上述算法均基于最远Voronoi去的概念来确定某一点是否是查询点q的反向最远邻居。给定某一查询点q,它关于某个数据集Q的最远voronoi区fvc(q,Q)是一个多边形区域,该区域内的所有点都是q的反向最远邻居。PFC算法使用R-Tree索引,不断取数据点构建垂直平分线讲解空间分割并取较远的一侧来求取这一区域。而CHFC算法则利用凸包的性质对这一算法进行剪枝:如果q在查询集Q的凸包内,则问题一定无解,否则亦可以将搜索范围限制在Q与查询点q的凸包之内。Liu等人使用枢轴点和索引对这一算法进行了改进(参见文献16:Liu J,Chen H,Furuse K,etc.An efficientalgorithm for reverse furthest neighbors query with metric index[A].In Database andExpert Systems Applications[C],2010:437-451,文献17:Jianquan L.Efficient queryprocessing for distance-based similarity search[J].2012)。但由于路网上的点与R-Tree索引无直接关系,也没有严格定义的凸包,这些方法均无法直接应用于本发明所解决的问题。
相关的其它参考文献还包括:
文献18:Goldberg A V,Harrelson C.Computing the shortest path:A searchmeets graph theory[A].In Proceedings of the sixteenth annual ACM-SIAMsymposium on Discrete algorithms[C],2005:156-165;
文献19:Jing N,Huang Y-W,Rundensteiner E A.Hierarchical encoded pathviews for path query processing:An optimal model and its performance evaluation[J].Knowledge and Data Engineering,IEEE Transactions on,1998,10(3):409-432;
文献20:Erwig M,Hagen F.The graph Voronoi diagram with applications[J].Networks,2000,36(3):156-163;
文献21:Jung S,Pramanik S.An efficient path computation model forhierarchically structured topographical road maps[J].Knowledge and DataEngineering,IEEE Transactions on,2002,14(5):1029-1046;
文献22:Aurenhammer F.Voronoi diagrams—a survey of a fundamentalgeometric data structure[J].ACM Computing Surveys(CSUR),1991,23(3):345-405。
发明内容
本发明的目的在于提供一种获取路网上单反向最远邻居的暴力搜索方法及***,能够在路网上快速搜索到查询点的单反向邻居。
为解决上述问题,本发明提供一种获取路网上单反向最远邻居的暴力搜索方法,包括:
对于给定路网G上的某一结点p和路网G上的所有结点VG,如果路网G上存在结点q,q与p的路网距离||q-p||不小于p到VG当中任何点p’的距离||p′-p||,则定义q为p相对于VG的最远邻居,记为fn(p,VG);
对于给定路网G上的所有结点VG,定义q的单反向最远邻居是VG中以q作为最远邻居点的集合即MRFN(q,VG)={p|p∈VG,fn(p,VG∪{q})=q};
使用Dijkstra算法以每一个d∈VG作为源点进行一次扩展,直到查询点q被访问到为止,若q在路网上的其他点被全部遍历之前被访问到,则q并非d的最远邻居,从而d不属于q的反向最远邻居;若q在路网上的其他点被全部遍历之后才被访问到,则确定d为p,p∈MRFN(q,VG)。
根据本发明的另一面,提供一种获取路网上单反向最远邻居的暴力搜索***,包括:
第一定义模块,用于对于给定路网G上的某一结点p和路网G上的所有结点VG,如果路网G上存在结点q,q与p的路网距离||q-p||不小于p到VG当中任何点p’的距离||p′-p||,则定义q为p相对于VG的最远邻居,记为fn(p,VG);
第二定义模块,用于对于给定路网G上的所有结点VG,定义q的单反向最远邻居是VG中以q作为最远邻居点的集合即MRFN(q,VG)={p|p∈VG,fn(p,VG∪{q})=q};
最远邻居模块,用于使用Dijkstra算法以每一个d∈VG作为源点进行一次扩展,直到查询点q被访问到为止,若q在路网上的其他点被全部遍历之前被访问到,则q并非d的最远邻居,从而d不属于q的反向最远邻居;若q在路网上的其他点被全部遍历之后才被访问到,则确定d为p,p∈MRFN(q,VG)。
与现有技术相比,本发明通过对于给定路网G上的某一结点p和路网G上的所有结点VG,如果路网G上存在结点q,q与p的路网距离||q-p||不小于p到VG当中任何点p’的距离||p′-p||,则定义q为p相对于VG的最远邻居,记为fn(p,VG);对于给定路网G上的所有结点VG,定义q的单反向最远邻居是VG中以q作为最远邻居点的集合即MRFN(q,VG)={p|p∈VG,fn(p,VG∪{q})=q};使用Dijkstra算法以每一个d∈VG作为源点进行一次扩展,直到查询点q被访问到为止,若q在路网上的其他点被全部遍历之前被访问到,则q并非d的最远邻居,从而d不属于q的反向最远邻居;若q在路网上的其他点被全部遍历之后才被访问到,则确定d为p,p∈MRFN(q,VG),能够在路网上快速搜索到查询点的单反向邻居。
附图说明
图1是本发明一实施例的单反向最远邻居问题MRFN示例图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
实施例一
本发明提供一种获取路网上单反向最远邻居的暴力搜索方法,包括步骤S1~步骤S3。
步骤S1,对于给定路网G上的某一结点p和路网G上的所有结点VG,如果路网G上存在结点q,q与p的路网距离||q-p||不小于p到VG当中任何点p’的距离||p′-p||,则定义q为p相对于VG的最远邻居,记为fn(p,VG);
步骤S2,对于给定路网G上的所有结点VG,定义q的单反向最远邻居是VG中以q作为最远邻居点的集合即MRFN(q,VG)={p|p∈VG,fn(p,VG∪{q})=q};具体的,如图1所示,p1是p7的最远邻居,所以p7是p1的反向最远邻居之一。该问题在实践中拥有重大意义,例如在开设新的商店时,我们希望得知受某一竞争对手影响最小的点。如果我们将不同地点之间的影响程度以带权的边表示,这一问题就相当于在路网上求取以现有商户地点为查询点的但反向最远邻居问题。进一步说,寻找一个受现有的所有竞争对手相对影响最小的点,可以转化为目标点在这一路网上求以竞争对手地点为兴趣集Q的复反向最远邻居数量的最大化问题。本发明旨在使用相关技术有效的计算路网上的反向最远邻居(Reverse Furthest Neighbor)问题。
步骤S3,使用Dijkstra算法以每一个d∈VG作为源点进行一次扩展,直到查询点q被访问到为止,若q在路网上的其他点被全部遍历之前被访问到,则q并非d的最远邻居,从而d不属于q的反向最远邻居;若q在路网上的其他点被全部遍历之后才被访问到,则确定d为p,p∈MRFN(q,VG)。具体的,本步骤的目的是为了找d的最远邻居是不是q。作为代表性的最短路径算法,Dijkstra算法由E.W.Dijkstra在1959年提出,算法使用标记方法从源点开始,每次扩展距离已标记集合最近的点,从而求得到已知点的最短路径(可参见文献1)。可以看出,Dijkstra算法访问的最后一个点就是源点的最远邻居
可使用C++语言基于在一个广泛应用的、基于磁盘的空间索引库(参见:www.research.att.com/~marioh/spatialindex/index.html)实现了本实施例的全部步骤,并使用拥有Intel Xeon2GHz处理器以及4GB内存的Linux环境下运行实验。默认情况下,对每个实验可运行1000次计算并报告平均值。在实验数据方面,本实施例可使用Digital Chart of the World Server所提供的加州(California,CA)与圣弗朗西斯科(San Francisco,SF)真实路网进行实验。这些数据可以在网上(参见http://www.cs.utah.edu/~lifeifei/SpatialDataset.htm)获得。CA数据库含有21047个结点,21692条边;SF数据库含有174955个结点,223000条边。所述的CA与SF数据库被用于测试路网上MRFN算法的性能,查询点随机从路网上选取。
综上,本实施例能够在路网上快速搜索到查询点的单反向邻居。
实施例二
本发明还提供另一种获取路网上单反向最远邻居的暴力搜索***,包括:第一定义模块,用于对于给定路网G上的某一结点p和路网G上的所有结点VG,如果路网G上存在结点q,q与p的路网距离||q-p||不小于p到VG当中任何点p’的距离||p′-p||,则定义q为p相对于VG的最远邻居,记为fn(p,VG);
第二定义模块,用于对于给定路网G上的所有结点VG,定义q的单反向最远邻居是VG中以q作为最远邻居点的集合即MRFN(q,VG)={p|p∈VG,fn(p,VG∪{q})=q};
最远邻居模块,用于(找d的最远邻居是不是q)使用Dijkstra算法以每一个d∈VG作为源点进行一次扩展,直到查询点q被访问到为止,若q在路网上的其他点被全部遍历之前被访问到,则q并非d的最远邻居,从而d不属于q的反向最远邻居;若q在路网上的其他点被全部遍历之后才被访问到,则确定d为p,p∈MRFN(q,VG)。
本实施例二的其它详细内容具体可参见实施例一,在此不再赘述。
本发明通过对于给定路网G上的某一结点p和路网G上的所有结点VG,如果路网G上存在结点q,q与p的路网距离||q-p||不小于p到VG当中任何点p’的距离||p′-p||,则定义q为p相对于VG的最远邻居,记为fn(p,VG);对于给定路网G上的所有结点VG,定义q的单反向最远邻居是VG中以q作为最远邻居点的集合即MRFN(q,VG)={p|p∈VG,fn(p,VG∪{q})=q};使用Dijkstra算法以每一个d∈VG作为源点进行一次扩展,直到查询点q被访问到为止,若q在路网上的其他点被全部遍历之前被访问到,则q并非d的最远邻居,从而d不属于q的反向最远邻居;若q在路网上的其他点被全部遍历之后才被访问到,则确定d为p,p∈MRFN(q,VG),能够在路网上快速搜索到查询点的单反向邻居。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的***而言,由于与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
显然,本领域的技术人员可以对发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包括这些改动和变型在内。
Claims (2)
1.一种获取路网上单反向最远邻居的暴力搜索方法,其特征在于,包括:
对于给定路网G上的所有结点VG,定义q的单反向最远邻居是VG中以q作为最远邻居点的集合即MRFN(q,VG)={p|p∈VG,fn(p,VG∪{q})=q};
使用Dijkstra算法以每一个d∈VG作为源点进行一次扩展,直到查询点q被访问到为止,若q在路网上的其他点被全部遍历之前被访问到,则q并非d的最远邻居,从而d不属于q的反向最远邻居;若q在路网上的其他点被全部遍历之后才被访问到,则确定d为p,p∈MRFN(q,VG)。
2.一种获取路网上单反向最远邻居的暴力搜索***,其特征在于,包括:
第一定义模块,用于对于给定路网G上的某一结点p和路网G上的所有结点VG,如果路网G上存在结点q,q与p的路网距离不小于p到VG当中任何点p’的距离,则定义q为p相对于VG的最远邻居,记为fn(p,VG);
第二定义模块,用于对于给定路网G上的所有结点VG,定义q的单反向最远邻居是VG中以q作为最远邻居点的集合即MRFN(q,VG)={p|p∈VG,fn(p,VG∪{q})=q};
最远邻居模块,用于(找d的最远邻居是不是q)使用Dijkstra算法以每一个d∈VG作为源点进行一次扩展,直到查询点q被访问到为止,若q在路网上的其他点被全部遍历之前被访问到,则q并非d的最远邻居,从而d不属于q的反向最远邻居;若q在路网上的其他点被全部遍历之后才被访问到,则确定d为p,p∈MRFN(q,VG)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013102802055A CN103336825A (zh) | 2013-07-04 | 2013-07-04 | 获取路网上单反向最远邻居的暴力搜索方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013102802055A CN103336825A (zh) | 2013-07-04 | 2013-07-04 | 获取路网上单反向最远邻居的暴力搜索方法及*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103336825A true CN103336825A (zh) | 2013-10-02 |
Family
ID=49244990
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2013102802055A Pending CN103336825A (zh) | 2013-07-04 | 2013-07-04 | 获取路网上单反向最远邻居的暴力搜索方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103336825A (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102156756A (zh) * | 2011-05-16 | 2011-08-17 | 复旦大学 | 一种基于图嵌入的在道路网络中查找最优路径的方法 |
CN102637227A (zh) * | 2012-03-29 | 2012-08-15 | 武汉大学 | 基于最短路径的土地资源评价因子作用域划分方法 |
-
2013
- 2013-07-04 CN CN2013102802055A patent/CN103336825A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102156756A (zh) * | 2011-05-16 | 2011-08-17 | 复旦大学 | 一种基于图嵌入的在道路网络中查找最优路径的方法 |
CN102637227A (zh) * | 2012-03-29 | 2012-08-15 | 武汉大学 | 基于最短路径的土地资源评价因子作用域划分方法 |
Non-Patent Citations (2)
Title |
---|
BIN YAO ET AL.: "reverse furthest neighbors in spatial databases", 《IEEE INTERNATIONAL CONFERENCE ON DATA ENGINEERING》 * |
王宝文 等: "路网上的单色和双色反k最远邻查询", 《计算机工程与设计》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhang et al. | An incremental CFS algorithm for clustering large data in industrial internet of things | |
Nutanong et al. | The v*-diagram: a query-dependent approach to moving knn queries | |
Xuan et al. | Voronoi-based multi-level range search in mobile navigation | |
Al-Khalidi et al. | Approximate algorithms for static and continuous range queries in mobile navigation | |
Jung et al. | QR-tree: An efficient and scalable method for evaluation of continuous range queries | |
Nutanong et al. | Memory-efficient algorithms for spatial network queries | |
Park | Location-based grid-index for spatial query processing | |
Sun et al. | On efficient aggregate nearest neighbor query processing in road networks | |
CN103345509B (zh) | 获取路网上复反向最远邻居的层次分区树方法及*** | |
Yin et al. | Efficient trajectory compression and range query processing | |
John et al. | Dynamic sorting and average skyline method for query processing in spatial-temporal data | |
CN103365984B (zh) | 获取路网上单反向最远邻居的地标方法及*** | |
CN103336825A (zh) | 获取路网上单反向最远邻居的暴力搜索方法及*** | |
Francis et al. | A scalable constraint-based Q-hash indexing for moving objects | |
Khettabi et al. | QCCF-tree: A New Efficient IoT Big Data Indexing Method at the Fog-Cloud Computing Level | |
Huang et al. | Processing continuous K-nearest skyline query with uncertainty in spatio-temporal databases | |
CN103336827B (zh) | 获取路网上复反向最远邻居的暴力搜索方法及*** | |
CN103336827A (zh) | 获取路网上复反向最远邻居的暴力搜索方法及*** | |
CN103324746B (zh) | 获取路网上复反向最远邻居的递进最远分区方法及*** | |
Tang et al. | Supporting continuous skyline queries in dynamically weighted road networks | |
Yu et al. | A distributed hybrid index for processing continuous range queries over moving objects | |
Zeng et al. | Application of processing technology based on skyline query in computer network | |
Shi et al. | Continuous Skyline Queries for Moving Objects in Road Networks. | |
Sasaki et al. | Sky R-tree: an index structure for distance-based top-k query | |
Xu | Trip similarity computation for context-aware travel recommendation exploiting geotagged photos |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20131002 |