CN105550765B - 一种路网距离计算中的代表元选取方法 - Google Patents
一种路网距离计算中的代表元选取方法 Download PDFInfo
- Publication number
- CN105550765B CN105550765B CN201510881782.9A CN201510881782A CN105550765B CN 105550765 B CN105550765 B CN 105550765B CN 201510881782 A CN201510881782 A CN 201510881782A CN 105550765 B CN105550765 B CN 105550765B
- Authority
- CN
- China
- Prior art keywords
- nodes
- node
- road network
- representative
- graph
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
- G06Q10/047—Optimisation of routes or paths, e.g. travelling salesman problem
Landscapes
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Marketing (AREA)
- Game Theory and Decision Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Development Economics (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Complex Calculations (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种路网距离计算中的代表元选取方法,包括:将整个路网抽象的图数据使用图划分方法划分成多份,且每一份均为一个连通的子图;再基于确定的误差上限,为每一连通的子图中的节点均选取一个代表元,并保存节点与代表元之间的映射关系。通过采用本发明提供的方法,可以有效的选择代表元,满足误差上限要求,并能并行处理,提升处理速度。
Description
技术领域
本发明涉及最短距离计算预处理技术,尤其涉及一种路网距离计算中的代表元选取方法。
背景技术
随着当今移动互联网技术的飞速发展,基于位置的应用越来越多,而在位置应用中大部分涉及距离查询,比如外卖应用等可能不关心最短路径应该怎么走,只需要知道在实际路网中的最短距离即离谁最近即可。在现实生活中,路网数据规模越来越大,用户数量越来越多,针对距离查询服务,如果每次用户查询都要重新计算一遍最短距离则耗费大量的计算资源并且不能满足大量用户的同时查询,所以需要采用预处理的方式事先计算路网中节点间的最短距离。
在朴素的预处理中,对所有节点之间进行最短路径计算并保存,在一个10万节点的路网上预处理结果需要大概80GB的内存保存,而预处理时间可能以天计,耗费大量资源,而很多城市路网的节点数超过10万,所以我们不能使用朴素的预处理方法来处理路网数据。在现实路网中,由于使用gps定位路网中节点或移动对象的位置是有一定误差的,路网中路径长度的测量也是有误差存在,所以对节点间最短距离的计算可以允许误差存在。如何在控制误差的前提下有效的进行预处理以节约大量的计算时间和空间消耗,是一个关键问题。
目前,针对路网的距离查询算法预处理不够高效,并且在查询时需要做进一步运算,满足不了查询的实时性要求,同时误差也不能保证可控。
发明内容
本发明的目的是提供一种路网距离计算中的代表元选取方法,可以有效的选择代表元,满足误差上限要求,并能并行处理,提升处理速度。
本发明的目的是通过以下技术方案实现的:
一种路网距离计算中的代表元选取方法,包括:
将整个路网抽象的图数据使用图划分方法划分成多份,且每一份均为一个连通的子图;
再基于确定的误差上限,为每一连通的子图中的节点均选取一个代表元,并保存节点与代表元之间的映射关系。
进一步的,所述将整个路网抽象的图数据使用图划分方法划分成多份,且每一份均为一个连通的子图包括:
采用一个开源的图划分工具Metis将整个路网抽象的图数据划分成多份,并使得划分后的每一连通的子图所包含的节点数量相等或相近。
进一步的,所述基于确定的误差上限,为每一连通的子图中的节点均选取一个代表元包括:
对于每一连通的子图,将所包含的节点按度大小从大到小进行排序,然后按顺序选择节点,如果节点X没有被标记为已访问则标记该节点X为代表元,并对该节点X进行最短路径扩展计算,将离该节点距离δ范围内其他未标记节点的代表元标记为该节点X,且将这些节点标记为已访问;重复进行上述过程直到所有节点都被访问并且有代表元;
其中,δ为误差上限的一半。
进一步的,采用并行化方式,使每一连通的子图的代表元选取过程同时进行。
由上述本发明提供的技术方案可以看出,基于图划分技术选取代表元,经预处理后,可以在大规模路网上实时查询节点间的近似最短距离,查询结果满足设定的误差上限;同时,通过代表元选择方法,在确保误差上限的基础上可以并行在划分后的每个连通子图里选取,提升代表元选取效率;并且,查询节点间最短距离时,不需要再进行复杂运算,只需要在预处理结果中查找即可,满足实时性要求,而查找结果满足误差上限。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
图1为本发明实施例提供的一种路网距离计算中的代表元选取方法的流程图;
图2为本发明实施例提供的近似距离误差上限示意图。
具体实施方式
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。
本发明提出了基于图划分的代表元选取方法,涉及路网的最短距离计算和查询领域,所解决的是路网最短距离实时查询问题;通过使用基于代表元的近似最短距离查询方法为每个节点选择一个代表元代表本节点,这样可以预处理代表元之间的距离,通过其近似的代表所有节点之间的最短距离,由于一个代表元可以在确定的误差上限下代表很多节点,预处理数据量大大减少,节约了预处理时间和存储空间,从而满足了查询的实时性要求。
图1为本发明实施例提供的一种路网距离计算中的代表元选取方法的流程图。如图1所示,其主要包括:
步骤1、将整个路网抽象的图数据使用图划分方法划分成多份,且每一份均为一个连通的子图。
本发明实施例中,可采用一个开源的图划分工具Metis将整个路网抽象的图数据划分成多份(记为n),并使得划分后的每一连通的子图所包含的节点数量相等或相近。
步骤2、基于确定的误差上限,为每一连通的子图中的节点均选取一个代表元,并保存节点与代表元之间的映射关系。
本发明实施例中,采用并行化方式,使每一连通的子图的代表元选取过程同时进行。
其具体实施过程如下:对于每一连通的子图,将所包含的节点按度大小从大到小进行排序,然后按顺序选择节点,如果节点X没有被标记为已访问则标记该节点X为代表元,并对该节点X进行最短路径扩展计算,将离该节点距离δ范围内其他未标记节点的代表元标记为该节点X,且将这些节点标记为已访问;重复进行上述过程直到所有节点都被访问并且有代表元;其中,δ为误差上限的一半。
上述过程可表示为如下伪代码:
通过上述步骤2后,可为每一连通的子图中每一节点选取一代表元,之后,再进行后续预处理步骤,则可以在大规模路网上实时查询节点间的近似最短距离,同时,确保查询结果满足设定的误差上限。后续预处理主要是计算代表元之间的最短距离并保存。
另一方面,为了证明本发明实施例上述方案的误差可控。假设路网中有节点a和b,a的代表元为p,b的代表元为q,根据代表元的定义可知a和p的最短路径长度Lap小于δ,b和q的最短路径长度Lbq小于δ,则a和b的最短距离与p和q的最短距离最多相差2δ,可以用p和q的最短距离Lpq近似的代表a和b的最短距离Lab。
证明如下:
反证法,如果|Lab-Lpq|>2δ,先假设Lab>Lpq即Lab-Lpq>2δ,则从a到其代表元p经过了Lap的距离,然后从p到q经过了Lpq的距离,再从q到b经过了Lbq,因为Lap<δ且Lbq<δ,因此所有这些距离加起来Lap+Lpq+Lbq<Lpq+2δ<Lab,则Lab不为ab之间的最短距离,与已知假设矛盾,同理可证,如果Lab<Lpq即Lpq-Lab>2δ,则Lpq不为p和q之间的最短距离,与假设矛盾。综上所述,Lab与Lpq误差小于2δ,误差上限可控。上述证明过程不限制a和b是否在同一划分后的连通子图中。
本发明实施例的上述方案,主要具有以下有益效果:
1)基于基于图划分技术选取代表元,经预处理后,可以在大规模路网上实时查询节点间的近似最短距离,查询结果满足设定的误差上限。
2)提出新的代表元选择算法,在确保误差上限的基础上可以并行在划分后的每个连通子图里选取,提升代表元选取效率。
3)查询节点间最短距离时,不需要再进行复杂运算,只需要在预处理结果中查找即可,满足实时性要求,而查找结果满足误差上限。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例可以通过软件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,上述实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。
Claims (3)
1.一种路网距离计算中的代表元选取方法,其特征在于,包括:
将整个路网抽象的图数据使用图划分方法划分成多份,且每一份均为一个连通的子图;
再基于确定的误差上限,为每一连通的子图中的节点均选取一个代表元,并保存节点与代表元之间的映射关系;
通过代表元来代表子图中的节点,再通过预处理来计算代表元之间的距离,并近似的代表相应节点之间的最短距离;
其中,基于确定的误差上限,为每一连通的子图中的节点均选取一个代表元包括:对于每一连通的子图,将所包含的节点按度大小从大到小进行排序,然后按顺序选择节点,如果节点X没有被标记为已访问则标记该节点X为代表元,并对节点X进行最短路径扩展计算,将距离节点X的δ范围内其他未标记节点的代表元标记为该节点X,且将这些未标记节点标记为已访问;重复进行上述过程直到所有节点都被访问并且有代表元;其中,δ为误差上限的一半。
2.根据权利要求1所述的方法,其特征在于,所述将整个路网抽象的图数据使用图划分方法划分成多份,且每一份均为一个连通的子图包括:
采用一个开源的图划分工具Metis将整个路网抽象的图数据划分成多份,并使得划分后的每一连通的子图所包含的节点数量相等或相近。
3.根据权利要求1所述的方法,其特征在于,采用并行化方式,使每一连通的子图的代表元选取过程同时进行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510881782.9A CN105550765B (zh) | 2015-11-30 | 2015-11-30 | 一种路网距离计算中的代表元选取方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510881782.9A CN105550765B (zh) | 2015-11-30 | 2015-11-30 | 一种路网距离计算中的代表元选取方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105550765A CN105550765A (zh) | 2016-05-04 |
CN105550765B true CN105550765B (zh) | 2020-02-07 |
Family
ID=55829946
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510881782.9A Active CN105550765B (zh) | 2015-11-30 | 2015-11-30 | 一种路网距离计算中的代表元选取方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105550765B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107193899B (zh) * | 2017-05-10 | 2019-09-13 | 华中科技大学 | 一种图算法友善的强连通图划分方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101458716A (zh) * | 2008-12-31 | 2009-06-17 | 北京大学 | 一种图中节点间最短路径的查找方法 |
CN102081658A (zh) * | 2011-01-13 | 2011-06-01 | 北京超图软件股份有限公司 | 基于分层路网的路径搜索方法和装置 |
US8666920B2 (en) * | 2010-02-15 | 2014-03-04 | Microsoft Corporation | Estimating shortest distances in graphs using sketches |
CN104266656A (zh) * | 2014-09-03 | 2015-01-07 | 清华大学 | 用于道路网的最短路径搜索方法及装置 |
CN105096297A (zh) * | 2014-05-05 | 2015-11-25 | 中兴通讯股份有限公司 | 一种图数据分割的方法及装置 |
-
2015
- 2015-11-30 CN CN201510881782.9A patent/CN105550765B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101458716A (zh) * | 2008-12-31 | 2009-06-17 | 北京大学 | 一种图中节点间最短路径的查找方法 |
US8666920B2 (en) * | 2010-02-15 | 2014-03-04 | Microsoft Corporation | Estimating shortest distances in graphs using sketches |
CN102081658A (zh) * | 2011-01-13 | 2011-06-01 | 北京超图软件股份有限公司 | 基于分层路网的路径搜索方法和装置 |
CN105096297A (zh) * | 2014-05-05 | 2015-11-25 | 中兴通讯股份有限公司 | 一种图数据分割的方法及装置 |
CN104266656A (zh) * | 2014-09-03 | 2015-01-07 | 清华大学 | 用于道路网的最短路径搜索方法及装置 |
Non-Patent Citations (1)
Title |
---|
基于路网分层策略的多源点最短距离算法;李兵 等;《计算机工程》;20080630;第34卷(第12期);第37-39页 * |
Also Published As
Publication number | Publication date |
---|---|
CN105550765A (zh) | 2016-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10062188B2 (en) | Customizable route planning using graphics processing unit | |
Bauer et al. | SHARC: Fast and robust unidirectional routing | |
KR102499076B1 (ko) | 그래프 데이터 기반의 태스크 스케줄링 방법, 디바이스, 저장 매체 및 장치 | |
US20110251789A1 (en) | Method and system for time-dependent routing | |
WO2018077181A1 (zh) | 图中心性计算方法、装置及存储介质 | |
US8666920B2 (en) | Estimating shortest distances in graphs using sketches | |
KR20130020050A (ko) | 로컬리티 센서티브 해시의 버킷 구간 관리 장치 및 그 방법 | |
US10191998B1 (en) | Methods of data reduction for parallel breadth-first search over graphs of connected data elements | |
JP2013541063A (ja) | 単語のユーザー挙動数の予測 | |
WO2015100549A1 (zh) | 一种图数据查询方法及装置 | |
EP2671152A1 (en) | Estimating a performance characteristic of a job using a performance model | |
CN103853618A (zh) | 基于截止日期驱动的云系统代价最小化资源分配方法 | |
Deng et al. | An efficient online direction-preserving compression approach for trajectory streaming data | |
US20200082026A1 (en) | Graph data processing | |
US9934325B2 (en) | Method and apparatus for distributing graph data in distributed computing environment | |
CN101458716A (zh) | 一种图中节点间最短路径的查找方法 | |
CN110011838B (zh) | 一种动态网络PageRank值的实时跟踪方法 | |
JP2022137281A (ja) | データ照会方法、装置、電子デバイス、記憶媒体、及びプログラム | |
CN109992412B (zh) | 云服务器的容量调节方法、装置、存储介质和云服务器 | |
CN106033332B (zh) | 一种数据处理方法及设备 | |
Cho et al. | A basis of spatial big data analysis with map-matching system | |
US20160125095A1 (en) | Lightweight temporal graph management engine | |
TWI534704B (zh) | 時間序列資料處理方法及其系統 | |
CN105550765B (zh) | 一种路网距离计算中的代表元选取方法 | |
Eltarjaman et al. | Private retrieval of POI details in top-K queries |
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 |