CN103365983A - Hierarchical partition tree method and system for acquiring single reverse furthest neighbors on road network - Google Patents
Hierarchical partition tree method and system for acquiring single reverse furthest neighbors on road network Download PDFInfo
- Publication number
- CN103365983A CN103365983A CN2013102791309A CN201310279130A CN103365983A CN 103365983 A CN103365983 A CN 103365983A CN 2013102791309 A CN2013102791309 A CN 2013102791309A CN 201310279130 A CN201310279130 A CN 201310279130A CN 103365983 A CN103365983 A CN 103365983A
- Authority
- CN
- China
- Prior art keywords
- subregion
- node
- child partition
- farthest
- road network
- 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
Links
Images
Landscapes
- Navigation (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
The invention provides a hierarchical partition tree method and a hierarchical partition system for acquiring single reverse furthest neighbors on a road network. The method comprises the following steps: pressing all partitions of a hierarchical partition tree into a traverse queue; popping up all the partitions or sub-partitions SGi from the traverse queue in sequence; respectively judging whether the sub-partitions SGi meet the formula that ub<q>SGi is smaller than flbSGi, if yes, determining that the nodes d in the sub-partitions SGi don't belong to MRFN(q,P) and removing the sub-partitions from the traverse queue, otherwise, pressing the sub-partitions SGi of the sub-partitions which are not removed or the sub-partitions which don't have sub-partitions into the traverse queue; sequentially popping up the sub-partitions SGi of the sub-partitions from the traverse queue; repeating the judgment until only partitions or sub-partitions without sub-partitions are left in the traverse queue; checking whether the furthest neighbors of the nodes d (belonging to P) in the partitions which are not removed are q, if yes, determining that d is p (belonging to MRFN(q,P)). Through the method and the system, single reverse neighbors of enquiry points can be quickly searched on the road network.
Description
Technical field
The present invention relates to a kind of obtain single reverse farthest neighbours' level partition method and system on the road network.
Background technology
Spatial database (spaitial database) referred to provide the database that Spatial data types (spatial database type, SDT) and corresponding realization support (referring to document 1:
R H.An introduction to spatial database systems[J] .The VLDB Journal, 1994,3 (4): 357-399).Growing along with mobile computing and cloud computing, the application of space correlation algorithm is increasing.Distance query (proximity query) comprises that nearest-neighbors (Nearest Neighbor) inquiry, Reverse Nearest occupy (Reverse Nearest Neighbor) inquiry, oppositely farthest neighbours' inquiries (Reverse Furthest Neighbor) etc., is one of modal type in the spatial database query.The present invention focuses on oppositely neighbours (the reverse furthest neighbor farthest on road network (road network) database, RFN) inquiry, be data set P and the query set Q on given one group of road network, we wish to ask for, and all compare the point farther apart from q among the P with Q.This problem is divided into single oppositely adjacent and multiple oppositely adjacent problem farthest farthest according to P and Q be whether identical.This problem has important meaning in practice, and for example when offering new shop, we wish to learn the point that is subjected to a certain rival to affect minimum.If we represent the limit of the influence degree between the different location with cum rights, this problem just is equivalent to ask for the reverse neighbor adjacency problem farthest of list take existing trade company place as query point at road network.Furtherly, seek a point that is subjected to existing all rival's relative effect minimums, can be converted into that impact point asks take the rival place at this road network is the multiple oppositely maximization problems of neighbours' quantity farthest of query set Q.
As far as we know, at present on the road network single oppositely farthest unique solution of proposing of adjacent problem be the people such as Tran for oppositely farthest adjacent research on the road network, they set up the Voronoi subregion take each point of interest in the road network as generating the some pre-service, then use the adjacency confrontation subregion of subregion to travel through, to enumerate the possible oppositely neighbours (reverse furthest neighbor) farthest of query point.But this method will not have essential distinction with the violence algorithm when point of interest quantity is large in road network.And for again oppositely farthest adjacent problem there is no at present relevant solution.
Aspect other correlative studys, the most attractive is that nearest-neighbors (nearest neighbor) problem is (referring to document 2, document 3:Hjaltason G R, Samet H.Distance browsing in spatial databases[J] .ACM Transactions on Database Systems (TODS), 1999,24 (2): 265-318, document 4:Berchtold S
C, Keim D A, etc.A cost model for nearest neighbor search in high-dimensional data space[A] .In Proceedings of the sixteenth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems[C], 1997:78-86, document 5, document 6:Jagadish H, Ooi B C, Tan K-L, etc.iDistance:An adaptive B+-tree based indexing method for nearest neighbor search[J] .ACM Transactions on Database Systems (TODS), 2005,30 (2): 364-397, document 7:Tao Y, Papadias D, Shen Q.Continuous nearest neighbor search[A] .In Proceedings of the28th international conference on Very Large Data Bases[C], 2002:287-29) occupy (referring to document 8:Korn F with Reverse Nearest, Muthukrishnan S.Influence sets based on reverse nearest neighbor queries[J] .ACM SIGMOD Record, 2000,29 (2): 201-212, document 9:Singh A, Ferhatosmanoglu H, Tosun A
High dimensional reverse nearest neighbor queries[A] .In Proceedings of the twelfth international conference on Information and knowledge management[C], 2003:91-98, document 10:Tao Y, Papadias D, Lian X.Reverse kNN search in arbitrary dimensionality[A] .In Proceedings of the Thirtieth international conference on Very large data bases-Volume30[C], 2004:744-755, document 11:Achtert E
C,
P, etc.Efficient reverse k-nearest neighbor search in arbitrary metric spaces[A] .In Proceedings of the2006ACM SIGMOD international conference on Management of data[C], 2006:515-526, document 12:Sankaranarayanan J, Samet H.Distance oracles for spatial networks[A] .In Data Engineering, 2009.ICDE ' 09.IEEE25th International Conference on[C], 2009:652-663) problem.With R-Tree(referring to document 13:Guttman A.R-trees:a dynamic index structure for spatial searching[M] .ACM, 1984) be the basis the degree of depth (referring to document 2:Roussopoulos N, Kelley S, Vincent F.Nearest neighbor queries[A] .In1995:71-79) with range (referring to document 5:Cui B, Ooi B C, Su J, etc.Contorting high dimensional data for efficient main memory KNN processing[A] .In Proceedings of the2003ACM SIGMOD international conference on Management of data[C], 2003:479-490) first search, increment Euclidean restriction (Incremental Euclidean Restriction), ENCREMENT NETWORK expansion (Invremental Network Expansion, referring to document 14:Papadias D, Zhang J, Mamoulis N, etc.Query processing in spatial network databases[A] .In2003:802-813) technology (referring to document 8~12) relevant with Voronoi figure be widely used in solving the corresponding problem on Euclidean space (Euclidean space) and the road network, but because reverse farthest neighbor adjacency problem does not have the locality characteristics that the nearest-neighbors problem has, these solutions are difficult to be applied on the problem solved by the invention.
Farthest neighbor adjacency problem on the Euclidean space is described (referring to document 15:Yao B, Li F, Kumar P.Reverse furthest neighbors in spatial databases[A] .In2009:664-675) by people such as Yao.They have proposed to go forward one by one far field (progressive furthest cell, PFC) algorithm and the far field (convex hull furthest cell) of convex closure algorithm to process this problem.The concept that above-mentioned algorithm all goes based on Voronoi is farthest determined certain a bit whether oppositely neighbour farthest of query point q.Given a certain query point q, it is a polygonal region about the farthest voronoi district fvc (q, Q) of certain data set Q, in this zone to have a few all be the oppositely neighbours farthest of q.The PFC algorithm uses the R-Tree index, and the strong point of constantly peeking makes up perpendicular bisector explanation space segmentation and gets a side far away and ask for this zone.And the CHFC algorithm utilizes the character of convex closure that this algorithm is carried out beta pruning: if q in the convex closure of query set Q, then problem is certain for separating, otherwise the hunting zone can also be limited within the convex closure of Q and query point q.The people such as Liu use pivoting point and index that this algorithm has been carried out improving (referring to document 16:Liu J, Chen H, Furuse K, etc.An efficient algorithm for reverse furthest neighbors query with metric index[A] .In Database and Expert Systems Applications[C], 2010:437-451, document 17:Jianquan L.Efficient query processing for distance-based similarity search[J] .2012).But because the point on the road network and R-Tree index do not have the convex closure of strict difinition without direct relation yet, these methods all can't directly apply to problem solved by the invention.
Other relevant list of references also comprises:
Document 18:Goldberg A V, Harrelson C.Computing the shortest path:A search meets graph theory[A] .In Proceedings of the sixteenth annual ACM-SIAM symposium on Discrete algorithms[C], 2005:156-165;
Document 19:Jing N, Huang Y-W, Rundensteiner E A.Hierarchical encoded path views for path query processing:An optimal model and its performance evaluation[J] .Knowledge and Data Engineering, IEEE Transactions on, 1998,10 (3): 409-432;
Document 20:Erwig M, Hagen F.The graph Voronoi diagram with applications[J] .Networks, 2000,36 (3): 156-163;
Document 21:Jung S, Pramanik S.An efficient path computation model for hierarchically structured topographical road maps[J] .Knowledge and Data Engineering, IEEE Transactions on, 2002,14 (5): 1029-1046;
Document 22:Aurenhammer F.Voronoi diagrams-a survey of a fundamental geometric data structure[J] .ACM Computing Surveys (CSUR), 1991,23 (3): 345-405.
Summary of the invention
The object of the present invention is to provide a kind of obtain on the road network single oppositely farthest neighbours' level partition method and system, can be on road network fast search to the reverse neighbours of list of query point.
For addressing the above problem, the invention provides a kind of single reverse farthest level partition method of neighbours on the road network that obtains, comprising:
Step 1: for a certain node p on the given road network G and all the node V on the road network G
GIf have node q on the road network G, the road network distance of q and p || q-p|| is not less than p to V
GThe distance of central any some p ' || p '-p||, then defining q is that p is with respect to V
GFarthest neighbours, be designated as fn (p, V
G);
Step 2: for all the node V on the given road network G
G, the definition q list oppositely farthest neighbours are V
GIn the set of ordering as neighbours farthest with q be MRFN (q, V
G)={ p|p ∈ V
G, fn (p, V
G∪ q})=q};
Step 3: use the level partition tree of top-down method construct road network G, the node among the road network G is divided into m subregion SG
i, and each subregion recurrence is divided into several child partitions SG
i, until reach required number of partitions and the number of plies;
Step 4: upper each subregion of definition road network G or child partition SG
iBoundary node be
Wherein edge (d, d ') represents the limit between d and the d ',
Expression subregion SG
iAll nodes;
Step 5: certain node q is arrived certain subregion or child partition SG
iThe upper bound and lower bound be defined as respectively q and arrive
The minimum and maximum distance of interior any node is designated as
With
Subregion or child partition SG
iDiameter be defined as
Similarly definition node q is respectively to the upper bound and the lower bound of node d
With
Step 6: with certain subregion or child partition SG
iThe farthest upper bound and farthest lower bound be defined as respectively arbitrarily
To it on road network G farthest neighbours apart from maximal value and minimum value, be designated as
With
Similarly node u of definition to its road network G farthest neighbours' distance be fub
uAnd flb
u
Step 7: precomputation subregion SG
iInterior child partition SG
iBoundary node between distance, all boundary nodes of precomputation separately farthest neighbours f and each comfortable place subregion of all boundary nodes and child partition SG on road network G simultaneously
iInterior farthest neighbours;
Step 8: select a plurality of node L of described road network as terrestrial reference, use each node L of dijkstra's algorithm precomputation to described remaining without child partition subregion or child partition on all nodal point distances;
Step 9: estimate each subregion or child partition SG
iIn the lower bound of the farthest neighbours distance of node d to its road network G, for
Have
Wherein
Calculate each subregion or child partition SG
iThe maximal value of middle g (b, f) is as this subregion or child partition SG
i
Step 10: all subregions of level partition tree are pressed into a traversal formation, eject successively each subregion or child partition SG from described traversal formation
i, judge each child partition SG
i, whether so that
If, SG then
iIn node
This child partition is got rid of from road network G, if not, with the child partition SG of this child partition of not getting rid of
iOr be pressed into described traversal formation without the child partition self of child partition, eject successively the child partition SG of each child partition from described traversal formation
i, and repeat above-mentioned judgement, until in the described traversal formation only remaining subregion or child partition without child partition, wherein, calculate
Step as follows, when
The time, then
When
The time, because any from q towards SG
iThe path must pass through SG
iBoundary node
Use q to arrive
The upper bound estimate
Then
Wherein,
The use triangle inequality estimate,
Definition with
Distance and each comfortable place subregion and the child partition SG from all boundary nodes of described precomputation
iObtain among the interior farthest neighbours;
Step 11: described remaining without the subregion of child partition or the node d on the child partition for each, use triangle inequality to check distance || d-q|| whether necessarily less than d to apart from the d distance of terrestrial reference farthest || d-f||, if have terrestrial reference u and f among the node L, so that || d-u||+||u-q||<|| d-f||, then q is the farthest neighbours of d scarcely, thereby d is the oppositely neighbours farthest of q scarcely, and this node d is got rid of from described remaining subregion or child partition without child partition;
Step 12: the farthest neighbours that check the d ∈ P that each is not got rid of are q, if so, determine that then d is p, p ∈ MRFN (q, P), if not, then this d is got rid of.
Further, in said method, in the step 8, the ground of described selection is marked on the upper evenly distribution of road network G.
Further, in said method, be divided into several child partitions SG with each subregion recurrence in the step 3
iStep in, use Erwig and Hagen algorithm that each subregion recurrence is divided into several child partitions SG
i
Further, in said method, described step 12 comprises:
Step 12 one: certain node d is arrived certain subregion or child partition SG
iThe upper bound and lower bound be defined as respectively d and arrive
The minimum and maximum distance of interior any node is designated as
With
Subregion or child partition SG
iDiameter be defined as
Similarly definition node d is respectively to the upper bound and the lower bound of node d '
With
Step 12 two: when
And
The time, then
When
The time, because any from d towards SG
iThe path must pass through SG
iBoundary node
Use d to arrive
The upper bound estimate
Then
Wherein,
Can use triangle inequality to estimate, and
Each comfortable place subregion of all boundary nodes and the child partition SG from described precomputation
iObtain among the interior farthest neighbours,
Definition with
Step 12 three: set up one with subregion SG
iWith node d's '
With
With the Priority Queues of descending storage, and with all subregions
Be pressed in the formation;
Step 12 four: at every turn in described Priority Queues, eject first
Or
If what eject is
Then forward step to straight 12, if eject be
If
Then the farthest neighbours of d can not be at SG
iIn, with this subregion SG
iGet rid of from road network G, otherwise, then judge this subregion SG
iWhether child partition is arranged, if having, then with this subregion SG
iChild partition
Push back described Priority Queues with descending, if nothing, then invocation step 12;
Step 12 five: calculate each
Corresponding subregion or child partition SG
iIn all node d ' to the distance of d
And will own
Push back described Priority Queues with descending, and invocation step 12;
Step 12 six: front several from ejecting from described Priority Queues
Should be front several
Corresponding d ' is defined as q, q ∈ fn (p, V
G).
Further, in said method, calculate each in the step 12 five
Corresponding subregion or child partition SG
iIn all node d ' to the distance of d
Step comprise:
If
Carry out a dijkstra's algorithm to obtain d to this subregion or child partition SG take d as source point
iIn the distance of all node d '
If
Since any from d to
The path all must pass through this subregion or child partition SG
iBoundary node
Construct one keep d and
Between the shortcut subgraph G ' of distance, and calculate d to this subregion or child partition SG at the enterprising row distance of described shortcut subgraph G '
iIn the distance of all node d '
Further, in said method, construct one keep d and
Between in the step of shortcut subgraph G ' of distance, use HEPV and HiTi technology.
Further, in said method, construct one and keep d and boundary node
Between in the step of shortcut subgraph G ' of distance, all boundary nodes of pre-save
Between distance, use the subregion SG at d place
iAnd the distance structure shortcut subgraph G ' between two partition boundaries nodes of pre-save.
According to another side of the present invention, a kind of single reverse farthest level partition system of neighbours on the road network of obtaining is provided, comprising:
The first definition module is used for for a certain node p on the given road network G and all the node V on the road network G
GIf have node q on the road network G, the road network distance of q and p || q-p|| is not less than p to V
GThe distance of central any some p ' || p '-p||, then defining q is that p is with respect to V
GFarthest neighbours, be designated as fn (p, V
G);
The second definition module is for all the node V on the given road network G
G, the definition q list oppositely farthest neighbours are V
GIn the set of ordering as neighbours farthest with q be MRFN (q, V
G)={ p|p ∈ V
G, fn (p, V
G∪ q})=q};
The level division module, for the level partition tree that uses top-down method construct road network G, the node among the road network G is divided into m subregion SG
i, and each subregion recurrence is divided into several child partitions SG
i, until reach required number of partitions and the number of plies;
The boundary node module is used for defining upper each subregion of road network G or child partition SG
iBoundary node be
Wherein edge (d, d ') represents the limit between d and the d ',
Expression subregion SG
iAll nodes;
The first bound module is used for certain node q to certain subregion or child partition SG
iThe upper bound and lower bound be defined as respectively q and arrive
The minimum and maximum distance of interior any node is designated as
With
Subregion or child partition SG
iDiameter be defined as
Similarly definition node q is respectively to the upper bound and the lower bound of node d
With
The second bound module is used for certain subregion or child partition SG
iThe farthest upper bound and farthest lower bound be defined as respectively arbitrarily
To it on road network G farthest neighbours apart from maximal value and minimum value, be designated as
With
Similarly node u of definition to its road network G farthest neighbours' distance be fub
uAnd flb
u
Precalculation module is used for precomputation subregion SG
iInterior child partition SG
iBoundary node between distance, all boundary nodes of precomputation separately farthest neighbours f and each comfortable place subregion of all boundary nodes and child partition SG on road network G simultaneously
iInterior farthest neighbours;
Spacing module is used for selecting a plurality of node L on the described road network as terrestrial reference, use each node L of dijkstra's algorithm precomputation to described remaining without child partition subregion or child partition on all nodal point distances;
Estimation module is used for estimating each subregion or child partition SG
iIn the lower bound of the farthest neighbours distance of node d to its road network G, for
Have
Wherein
Calculate each subregion or child partition SG
iThe maximal value of middle g (b, f) is as this subregion or child partition SG
i
The formation module is pressed into a traversal formation with all subregions of level partition tree, ejects successively each subregion or child partition SG from described traversal formation
i, judge each child partition SG
i, whether so that
If, SG then
iIn node
This child partition is got rid of from road network G, if not, with the child partition SG of this child partition of not getting rid of
iOr be pressed into described traversal formation without the child partition self of child partition, eject successively the child partition SG of each child partition from described traversal formation
i, and repeat above-mentioned judgement, until in the described traversal formation only remaining subregion or child partition without child partition, wherein, calculate
Step as follows, when
And
The time, then
When
The time, because any from q towards SG
iThe path must pass through SG
iBoundary node
Use q to arrive
The upper bound estimate
Then
Wherein,
The use triangle inequality estimate,
Definition with
Distance and each comfortable place subregion and the child partition SG from all boundary nodes of described precomputation
iObtain among the interior farthest neighbours;
Node is got rid of module, be used for described remaining without the subregion of child partition or the node d on the child partition for each, use triangle inequality to check distance || d-q|| whether necessarily less than d to apart from the d distance of terrestrial reference farthest || d-f||, if have terrestrial reference u and f among the node L, so that || d-u||+||u-q||<|| d-f||, then q is the farthest neighbours of d scarcely, thereby d is the oppositely neighbours farthest of q scarcely, and this node d is got rid of from described remaining subregion or child partition without child partition;
Checking module is used for checking that the farthest neighbours of each d ∈ P that does not get rid of are q, if so, determines that then d is p, p ∈ MRFN (q, P), if not, then this d is got rid of.
Further, in said system, the ground that described spacing module is selected is marked on the upper evenly distribution of road network G.
Further, in said system, described level division module uses Erwig and Hagen algorithm that each subregion recurrence is divided into several child partitions SG
i
Further, in said system, described checking module comprises:
The first bound unit is used for certain node d to certain subregion or child partition SG
iThe upper bound and lower bound be defined as respectively d and arrive
The minimum and maximum distance of interior any node is designated as
With
Subregion or child partition SG
iDiameter be defined as
Similarly definition node d is respectively to the upper bound and the lower bound of node d '
With
Estimation unit is used for working as
And
The time, then
When
The time, because any from d towards SG
iThe path must pass through SG
iBoundary node
Use d to arrive
The upper bound estimate
Then
Wherein,
Can use triangle inequality to estimate, and
Each comfortable place subregion of all boundary nodes and the child partition SG from described precomputation
iObtain among the interior farthest neighbours,
Definition with
Queue unit is used for setting up one with subregion SG
iWith node d's '
With
With the Priority Queues of descending storage, and with all subregions
Be pressed in the formation;
The subregion rejected unit is used for ejecting first in described Priority Queues at every turn
Or
If what eject is
Then call farthest neighbours unit, if ejection is
If
Then the farthest neighbours of d can not be at SG
iIn, with this subregion SG
iGet rid of from road network G, otherwise, then judge this subregion SG
iWhether child partition is arranged, if having, then with this subregion SG
iChild partition
Push back described Priority Queues with descending, if nothing is then called computing unit;
Computing unit is used for calculating each
Corresponding subregion or child partition SG
iIn all node d ' to the distance of d
And will own
Push back described Priority Queues with descending, and call farthest neighbours unit;
The neighbours unit is used for front several from ejecting from described Priority Queues farthest
Should be front several
Corresponding d ' is defined as q, q ∈ fn (p, V
G).
Further, in said system, described computing unit is used for:
If
Carry out a dijkstra's algorithm to obtain d to this subregion or child partition SG take d as source point
iIn the distance of all node d '
If
Since any from d to
The path all must pass through this subregion or child partition SG
iBoundary node
Construct one keep d and
Between the shortcut subgraph G ' of distance, and calculate d to this subregion or child partition SG at the enterprising row distance of described shortcut subgraph G '
iIn the distance of all node d '
Further, in said system, described computing unit use HEPV and one of HiTi technical construction keep d and
Between the shortcut subgraph G ' of distance.
Further, in said system, described all boundary nodes of computing unit pre-save
Between distance, use the subregion SG at d place
iAnd the distance structure shortcut subgraph G ' between two partition boundaries nodes of pre-save.
Compared with prior art, the present invention is by precomputation subregion SG
iInterior child partition SG
iBoundary node between distance, all boundary nodes of precomputation separately farthest neighbours f and each comfortable place subregion of all boundary nodes and child partition SG on road network G simultaneously
iInterior farthest neighbours; Estimate each subregion or child partition SG
iIn the lower bound of the farthest neighbours distance of node d to its road network G, for
Have
Wherein
Calculate each subregion or child partition SG
iThe maximal value of middle g (b, f) is as this subregion or child partition SG
i All subregions of level partition tree are pressed into a traversal formation, eject successively each subregion or child partition SG from described traversal formation
i, judge each child partition SG
i, whether so that
If, SG then
iIn node
This child partition is got rid of from road network G, if not, with the child partition SG of this child partition of not getting rid of
iOr be pressed into described traversal formation without the child partition self of child partition, eject successively the child partition SG of each child partition from described traversal formation
i, and repeat above-mentioned judgement, until in the described traversal formation only remaining subregion or child partition without child partition, wherein, calculate
Step as follows, when
And
The time, then
When
The time, because any from q towards SG
iThe path must pass through SG
iBoundary node
Use q to arrive
The upper bound estimate
Then
Wherein,
The use triangle inequality estimate,
Definition with
Distance and each comfortable place subregion and the child partition SG from all boundary nodes of described precomputation
iObtain among the interior farthest neighbours; Described remaining without the subregion of child partition or the node d on the child partition for each, use triangle inequality to check distance || d-q|| whether necessarily less than d to apart from the d distance of terrestrial reference farthest || d-f||, if have terrestrial reference u and f among the node L, so that || d-u||+||u-q||<|| d-f||, then q is the farthest neighbours of d scarcely, thereby d is the oppositely neighbours farthest of q scarcely, and this node d is got rid of from described remaining subregion or child partition without child partition; The farthest neighbours that check the d ∈ P that each is not got rid of are q, if so, determine that then d is p, p ∈ MRFN (q, P), if not, then this d is got rid of, can be on road network fast search to the reverse neighbours of list of query point.
Description of drawings
Fig. 1 is the reverse neighbor adjacency problem MRFN exemplary plot farthest of list of one embodiment of the invention;
Fig. 2 is the division example of the HP tree of one embodiment of the invention;
Fig. 3 is the HP tree construction corresponding with Fig. 3 of one embodiment of the invention;
Fig. 4 is HP Algorithm Performance on the CA database of one embodiment of the invention;
Fig. 5 is HP Algorithm Performance on the SF database of one embodiment of the invention.
Embodiment
For above-mentioned purpose of the present invention, feature and advantage can be become apparent more, the present invention is further detailed explanation below in conjunction with the drawings and specific embodiments.
Embodiment one
The invention provides a kind of single reverse farthest neighbours' level subregion (Hierarchical Partition, HP) method on the road network of obtaining, comprise that step 1 is to step 12.
Step 1: for a certain node p on the given road network G and all the node V on the road network G
GIf have node q on the road network G, the road network distance of q and p || q-p|| is not less than p to V
GThe distance of central any some p ' || p '-p||, then defining q is that p is with respect to V
GFarthest neighbours, be designated as fn (p, V
G);
Step 2: for all the node V on the given road network G
G, the definition q list oppositely farthest neighbours are V
GIn the set of ordering as neighbours farthest with q be MRFN (q, V
G)={ p|p ∈ V
G, fn (p, V
G∪ q})=q}; Concrete, as shown in Figure 1, p
1P
7Farthest neighbours, so p
7P
1Oppositely one of neighbours farthest.This problem has important meaning in practice, and for example when offering new shop, we wish to learn the point that is subjected to a certain rival to affect minimum.If we represent the limit of the influence degree between the different location with cum rights, this problem just be equivalent to road network ask for take existing trade company place as query point but reverse neighbor adjacency problem farthest.Furtherly, seek a point that is subjected to existing all rival's relative effect minimums, can be converted into that impact point asks take the rival place at this road network is the multiple oppositely maximization problems of neighbours' quantity farthest of interest set Q.The present invention is intended to use correlation technique effectively to calculate oppositely neighbours (Reverse Furthest Neighbor) problem farthest on the road network.
Step 3: the level partition tree that uses top-down method construct road network G is the HP tree, and the node among the road network G is divided into m subregion SG
i, and each subregion recurrence is divided into several child partitions SG
i, until reach required number of partitions and the number of plies;
Preferably, in the step 3 each subregion recurrence is divided into several child partitions SG
iStep in, use Erwig and Hagen algorithm that each subregion recurrence is divided into several child partitions SG
i
Step 4: upper each subregion of definition road network G or child partition SG
iBoundary node be
Wherein edge (d, d ') represents the limit between d and the d ',
Expression subregion SG
iAll nodes;
Step 5: certain node q is arrived certain subregion or child partition SG
iThe upper bound and lower bound be defined as respectively q and arrive
The minimum and maximum distance of interior any node is designated as
With
Subregion or child partition SG
iDiameter be defined as
Similarly definition node q is respectively to the upper bound and the lower bound of node d
With
Step 6: with certain subregion or child partition SG
iThe farthest upper bound and farthest lower bound be defined as respectively arbitrarily
To it on road network G farthest neighbours apart from maximal value and minimum value, be designated as
With
Similarly node u of definition to its road network G farthest neighbours' distance be fub
uAnd flb
u
Step 7: precomputation subregion SG
iInterior child partition SG
iBoundary node between distance, all boundary nodes of precomputation separately farthest neighbours f and each comfortable place subregion of all boundary nodes and child partition SG on road network G simultaneously
iInterior farthest neighbours;
Step 8: select a plurality of node L on the described road network as terrestrial reference, use each node L of dijkstra's algorithm precomputation to described remaining without child partition subregion or child partition on all nodal point distances;
Preferably, in the step 8, the ground of described selection is marked on the upper evenly distribution of road network G.
Step 9: estimate each subregion or child partition SG
iIn the lower bound of the farthest neighbours distance of node d to its road network G, for
Have
Wherein
Calculate each subregion or child partition SG
iThe maximal value of middle g (b, f) is as this subregion or child partition SG
i
Step 10: all subregions of level partition tree are pressed into a traversal formation, eject successively each subregion or child partition SG from described traversal formation
i, judge each child partition SG
i, whether so that
If, SG then
iIn node
This child partition is got rid of from road network G, if not, with the child partition SG of this child partition of not getting rid of
iOr be pressed into described traversal formation without the child partition self of child partition, eject successively the child partition SG of each child partition from described traversal formation
i, and repeat above-mentioned judgement, until in the described traversal formation only remaining subregion or child partition without child partition, wherein, calculate
Step as follows, when
And
The time, then
When
The time, because any from q towards SG
iThe path must pass through SG
iBoundary node
Use q to arrive
The upper bound estimate
Then
Wherein,
The use triangle inequality estimate,
Definition with
Distance and each comfortable place subregion and the child partition SG from all boundary nodes of described precomputation
iObtain among the interior farthest neighbours;
Step 11: described remaining without the subregion of child partition or the node d on the child partition for each, use triangle inequality to check distance || d-q|| whether necessarily less than d to apart from the d distance of terrestrial reference farthest || d-f||, if have terrestrial reference u and f among the node L, so that || d-u||+||u-q||<|| d-f||, then q is the farthest neighbours of d scarcely, thereby d is the oppositely neighbours farthest of q scarcely, and this node d is got rid of from described remaining subregion or child partition without child partition;
Step 12: the farthest neighbours that check the d ∈ P that each is not got rid of are q, if so, determine that then d is p, p ∈ MRFN (q, P), if not, then this d is got rid of.
Preferably, described step 12 comprises:
Step 12 one: certain node d is arrived certain subregion or child partition SG
iThe upper bound and lower bound be defined as respectively d and arrive
The minimum and maximum distance of interior any node is designated as
With
Subregion or child partition SG
iDiameter be defined as
Similarly definition node d is respectively to the upper bound and the lower bound of node d '
With
Step 12 two: when
And
The time, then
When
The time, because any from d towards SG
iThe path must pass through SG
iBoundary node
Use d to arrive
The upper bound estimate
Then
Wherein,
Can use triangle inequality to estimate, and
Each comfortable place subregion of all boundary nodes and the child partition SG from described precomputation
iObtain among the interior farthest neighbours,
Definition with
Step 12 three: set up one with subregion SG
iWith node d's '
With
With the Priority Queues of descending storage, and with all subregions
Be pressed in the formation;
Step 12 four: at every turn in described Priority Queues, eject first
Or
If what eject is
Then forward step to straight 12, if eject be
If
Then the farthest neighbours of d can not be at SG
iIn, with this subregion SG
iGet rid of from road network G, otherwise, then judge this subregion SG
iWhether child partition is arranged, if having, then with this subregion SG
iChild partition
Push back described Priority Queues with descending, if nothing, then invocation step 12;
Step 12 five: calculate each
Corresponding subregion or child partition SG
iIn all node d ' to the distance of d
And will own
Push back described Priority Queues with descending, and invocation step 12;
Step 12 six: front several from ejecting from described Priority Queues
Should be front several
Corresponding d ' is defined as q, q ∈ fn (p, V
G).
Preferably, calculate each in the step 12 five
Corresponding subregion or child partition SG
iIn all node d ' to the distance of d
Step comprise:
If
Carry out a dijkstra's algorithm to obtain d to this subregion or child partition SG take d as source point
iIn the distance of all node d '
Concrete, as representational shortest path first, dijkstra's algorithm is proposed in nineteen fifty-nine by E.W.Dijkstra, and algorithm usage flag method is from source point, each extended range is the nearest point of tag set, thereby asks the shortest path that obtains known point (can referring to document 1);
If
Since any from d to
The path all must pass through this subregion or child partition SG
iBoundary node
Construct one keep d and
Between the shortcut subgraph G ' of distance, and calculate d to this subregion or child partition SG at the enterprising row distance of described shortcut subgraph G '
iIn the distance of all node d '
Preferably, one of structure keep d and
Between in the step of shortcut subgraph G ' of distance, use HEPV and HiTi technology.
Preferably, one of structure keeps d and boundary node
Between in the step of shortcut subgraph G ' of distance, all boundary nodes of pre-save
Between distance, use the subregion SG at d place
iAnd the distance structure shortcut subgraph G ' between two partition boundaries nodes of pre-save.
Detailed, the access module of MRFN inquiry has stronger locality, so can effectively process the MRFN inquiry by partition method.The figure partitioning technique was widely studied in different fields since the 1970's.Most partitioning techniques all can be used to process the MRFN inquiry.
For the convenience of discussing, introduce to give a definition:
The definition 4 we define a subregion SG
iBoundary node be
Wherein edge (p, p ') represents the limit between p and the p ', and R represents road network,
Expression subregion SG
iNodal set.
Definition 5 certain node p are to certain subregion SG
iThe upper bound (lower bound) be defined as p and arrive
Maximum (minimum) distance of interior any node.Be designated as
Certain subregion SG
iRadius be defined as
We similar defining point p to the upper bound (lower bound) of putting q is
Definition 6 certain subregion SG
iThe farthest upper bound (farthest lower bound) be defined as arbitrarily
To its distance maximum (minimum) value of neighbours farthest on road network, be designated as
Similarly, we define a node to its road network farthest neighbours' distance be fub
p(flb
p).
According to above definition, introduce following lemma:
If proof p is the oppositely neighbours farthest of q, because
Have
This and condition are runed counter to.
Next, we discuss and how effectively to construct the HP tree.Our building method is based on HEPV technology [19] and network Voronoi figure (graph voronoi diagram is referring to document 20).
The HP tree can be used the method construct of top-down (top-down).We are divided into m subregion with the node in the road network, and with m the child partition that be divided into of each subregion recurrence, until we reach required number of partitions and the number of plies.We use Erwig and Hagen algorithm with certain subregion SG
iBe divided into m child partition (referring to document 20).The example of a HP tree is referring to Fig. 2 and Fig. 3.
Also need some supplementarys in order to inquire about us.The a certain subregion SG of our precomputation
iDistance between the boundary node of interior child partition, these boundary nodes and the shortcut between them have formed a subgraph, are called subregion SG
iHypergraph, calculate simultaneously the farthest neighbours of all boundary nodes and the farthest neighbours in their place subregions.
Below we introduce how to calculate the relevant bound of mentioning in the lemma 1.
By the definition 5 we recognize,
That a node is to some subregion SG
iApart from the upper bound.In order to calculate
We at first seek SG
iThe farthest neighbours of interior p.When
And
The time, we have
And work as
The time, because any from p towards SG
iThe path must pass through SG
iBoundary node, we can use p to arrive
The upper bound estimate
Wherein
Can use triangle inequality to estimate, and
The information of precomputation when setting up the HP tree.
In order to calculate
We need to estimate SG
iMiddle node is to the lower bound of their farthest neighbours distance, and we introduce following lemma:
Proof: by triangle inequality, we have || b-f||-||p one b||≤|| the p-f||. while, by definition 5, if
To sum up, we have
Larger in order to try to achieve one
We select one group of SG
iBoundary node and the node among any G, and calculate the maximal value of g (b, f).Because
Q is irrelevant with inquiry, we can be when contributing all subregions of precomputation
Table 1
As shown in table 1, the present embodiment uses breadth First sequentially to travel through the HP tree, for each subregion SG that has access to
i, algorithm attempts to use lemma 1 to carry out beta pruning.If SG
iCan not be by beta pruning, we are pressed into all child partitions the formation of traversal
For the leaf subregion, we use the LM(terrestrial reference) algorithm processes.
Table 2
As shown in table 2, we calculate f (q, G) and check that p is whether in fn (q, G).Generally, we with
Descending travel through the subregion in the HP tree and use aforesaid properties to carry out beta pruning.If we have arrived the leaf subregion of HP tree, we use the method for hereinafter describing to calculate q to this subregion all nodal point distances, have surpassed to the accurate distance of q and remainingly own in case calculate certain node
We just can be labeled as this node fn (q, G).
We use a Priority Queues of preserving simultaneously node and subregion
Realize above algorithm.Element e in the formation with
Descending store.Going on foot us at each ejects
In first element.If it is a part that child partition is arranged, we utilize lemma 3 carry out beta pruning and will be not the subregion of beta pruning push back
When
The element of middle ejection is the leaf subregion SG of HP tree
iThe time, we use following methods to calculate the distance that interior all nodes of subregion arrive inquiry q:
For
Only need to carry out take q as source point a dijkstra's algorithm just can obtain q to the distance of being had a few for we.And for
Situation since any from q to
The path all must pass through SG
;Subregion
We can construct one keep q and
Between distance " the shortcut subgraph " G ', and calculate at the enterprising row distance of this less figure.
The method of structure G ' is set up the tactful different of HP tree according to us.In our above-described HP tree, use HEPV technology (referring to document 19) and HiTi (document 21) technology can finish this task.For further acceleration, we can be when contributing the distance between all frontier points of pre-save, we only need the subregion at the q place, shortcut limit and the SG between two partition boundaries points like this
iOn the subgraph that consists of, carry out a Dijkstra computing take q as source point and just can obtain required result.
Arrive having obtained q
Accurate distance after, we are with all nodes
The result of calculation that is set to just obtain also is pressed into again
In.When a node by from
Middle ejection, we know this node to the distance of q more than or equal to other all nodes, we only need have the node join fn (q, G) of same distance to all, and stop algorithm.Check p whether in the fn (q, G) that tries to achieve, we just can return the result of isFN (p, q).
Can use C Plus Plus based on a widespread use, (realized the Overall Steps of the present embodiment referring to: www.research.att.com/~marioh/spatialindex/index.html), and used running experiment under the Linux environment that has Intel Xeon2GHz processor and 4GB internal memory based on the spatial index storehouse of disk.Under the default situations, can move 1000 times to each experiment and calculate and report mean value.Aspect experimental data, test with the true road network in San Francisco (San Francisco, SF) California (California, CA) that the present embodiment can use Digital Chart of the World Server to provide.These data can be on the net (referring to http://www.cs.utah.edu/~lifeifei/SpatialDataset.htm) acquisition.The CA database contains 21047 nodes, 21692 limits; The SF database contains 174955 nodes, 223000 limits.Described CA and SF database are used to test MRFN Algorithm Performance on the road network, and query point is chosen from road network at random, can choose equably 64 terrestrial references on map.Among one embodiment, but Default Reports HP sets at 2 layers the performance performance under 20 child partitions of each subregion (totally 441 child partitions) configuration.
Two parameters may have influence on the HP Algorithm Performance: and the number of total subregion (be designated as | HP|) with the degree of depth of HP tree.The performance impact that we have represented these parameters in Figure 4 and 5 be CA and SF database at two different road networks respectively.
In theory, more subregion will provide better performance.This trend can be observed in Figure 4 and 5: when | during HP|=420, the execution time of algorithm only is | 1/10th of HP|=40.But when | when HP| is larger, because newly-increased subregion is difficult to further beta pruning, so further increase | the HP| effect is bad.
In Figure 4 and 5, the performance of the HP tree that we can also the more different numbers of plies can be seen from experimental data, and at | HP| hour, the HP tree table that the number of plies is few is now better.Yet the higher tree of the number of plies along with | the growth of HP| has better telescopicing performance.This mainly is because number of plies when few, and other subregion of leaf level is less, can hour provide preferably performance at | HP|.And the number of plies has more once to cut off more subregion when many, | better performance is provided when HP| is larger: | HP| hour, the parameter performance of one deck was better.And | when HP| was larger, the tree of multilayer had preferably performance.
Embodiment two
The present invention also provides another kind to obtain single reverse farthest level partition system of neighbours on the road network, comprising:
The first definition module is used for for a certain node p on the given road network G and all the node V on the road network G
GIf have node q on the road network G, the road network distance of q and p || q-p|| is not less than p to V
GThe distance of central any some p ' || p '-p||, then defining q is that p is with respect to V
GFarthest neighbours, be designated as fn (p, V
G);
The second definition module is for all the node V on the given road network G
G, the definition q list oppositely farthest neighbours are V
GIn the set of ordering as neighbours farthest with q be MRFN (q, V
G)={ p|p ∈ V
G, fn (p, V
G∪ q})=q};
The level division module, for the level partition tree that uses top-down method construct road network G, the node among the road network G is divided into m subregion SG
i, and each subregion recurrence is divided into several child partitions SG
i, until reach required number of partitions and the number of plies;
The boundary node module is used for defining upper each subregion of road network G or child partition SG
iBoundary node be
Wherein edge (d, d ') represents the limit between d and the d ',
Expression subregion SG
iAll nodes;
The first bound module is used for certain node q to certain subregion or child partition SG
iThe upper bound and lower bound be defined as respectively q and arrive
The minimum and maximum distance of interior any node is designated as
With
Subregion or child partition SG
iDiameter be defined as
Similarly definition node q is respectively to the upper bound and the lower bound of node d
With
The second bound module is used for certain subregion or child partition SG
iThe farthest upper bound and farthest lower bound be defined as respectively arbitrarily
To it on road network G farthest neighbours apart from maximal value and minimum value, be designated as
With
Similarly node u of definition to its road network G farthest neighbours' distance be fub
uAnd flb
u
Precalculation module is used for precomputation subregion SG
iInterior child partition SG
iBoundary node between distance, all boundary nodes of precomputation separately farthest neighbours f and each comfortable place subregion of all boundary nodes and child partition SG on road network G simultaneously
iInterior farthest neighbours;
Spacing module is used for selecting a plurality of node L on the described road network as terrestrial reference, use each node L of dijkstra's algorithm precomputation to described remaining without child partition subregion or child partition on all nodal point distances;
Estimation module is used for estimating each subregion or child partition SG
iIn the lower bound of the farthest neighbours distance of node d to its road network G, for
Have
Wherein
Calculate each subregion or child partition SG
iThe maximal value of middle g (b, f) is as this subregion or child partition SG
i
The formation module is used for all subregions of level partition tree are pressed into a traversal formation, ejects successively each subregion or child partition SG from described traversal formation
i, judge each child partition SG
i, whether so that
If, SG then
iIn node
This child partition is got rid of from road network G, if not, with the child partition SG of this child partition of not getting rid of
iOr be pressed into described traversal formation without the child partition self of child partition, eject successively the child partition SG of each child partition from described traversal formation
i, and repeat above-mentioned judgement, until in the described traversal formation only remaining subregion or child partition without child partition, wherein, calculate
Step as follows, when
And
The time, then
When
The time, because any from q towards SG
iThe path must pass through SG
iBoundary node
Use q to arrive
The upper bound estimate
Then
Wherein,
The use triangle inequality estimate,
Definition with
Distance and each comfortable place subregion and the child partition SG from all boundary nodes of described precomputation
iObtain among the interior farthest neighbours;
Node is got rid of module, be used for described remaining without the subregion of child partition or the node d on the child partition for each, use triangle inequality to check distance || d-q|| whether necessarily less than d to apart from the d distance of terrestrial reference farthest || d-f||, if have terrestrial reference u and f among the node L, so that || d-u||+||u-q||<|| d-f||, then q is the farthest neighbours of d scarcely, thereby d is the oppositely neighbours farthest of q scarcely, and this node d is got rid of from described remaining subregion or child partition without child partition;
Checking module is used for checking that the farthest neighbours of each d ∈ P that does not get rid of are q, if so, determines that then d is p, p ∈ MRFN (q, P), if not, then this d is got rid of.
Preferably, the ground of described spacing module selection is marked on the upper evenly distribution of road network G.
Preferably, described level division module uses Erwig and Hagen algorithm that each subregion recurrence is divided into several child partitions SG
i
Preferably, described checking module comprises:
The first bound unit is used for certain node d to certain subregion or child partition SG
iThe upper bound and lower bound be defined as respectively d and arrive
The minimum and maximum distance of interior any node is designated as
With
Subregion or child partition SG
iDiameter be defined as
Similarly definition node d is respectively to the upper bound and the lower bound of node d '
With
Estimation unit is used for working as
And
The time, then
When
The time, because any from d towards SG
iThe path must pass through SG
iBoundary node
Use d to arrive
The upper bound estimate
Then
Wherein,
Can use triangle inequality to estimate, and
Each comfortable place subregion of all boundary nodes and the child partition SG from described precomputation
iObtain among the interior farthest neighbours,
Definition with
Queue unit is used for setting up one with subregion SG
iWith node d's '
With
With the Priority Queues of descending storage, and with all subregions
Be pressed in the formation;
The subregion rejected unit is used for ejecting first in described Priority Queues at every turn
Or
If what eject is
Then call farthest neighbours unit, if ejection is
If
Then the farthest neighbours of d can not be at SG
iIn, with this subregion SG
iGet rid of from road network G, otherwise, then judge this subregion SG
iWhether child partition is arranged, if having, then with this subregion SG
iChild partition
Push back described Priority Queues with descending, if nothing is then called computing unit;
Computing unit is used for calculating each
Corresponding subregion or child partition SG
iIn all node d ' to the distance of d
And will own
Push back described Priority Queues with descending, and call farthest neighbours unit;
The neighbours unit is used for front several from ejecting from described Priority Queues farthest
Should be front several
Corresponding d ' is defined as q, q ∈ fn (p, V
G).
Preferably, described computing unit is used for:
If
Carry out a dijkstra's algorithm to obtain d to this subregion or child partition SG take d as source point
iIn the distance of all node d '
If
Since any from d to
The path all must pass through this subregion or child partition SG
iBoundary node
Construct one keep d and
Between the shortcut subgraph G ' of distance, and calculate d to this subregion or child partition SG at the enterprising row distance of described shortcut subgraph G '
iIn the distance of all node d '
Preferably, described computing unit use HEPV and one of HiTi technical construction keep d and
Between the shortcut subgraph G ' of distance.
Preferably, described all boundary nodes of computing unit pre-save
Between distance, use the subregion SG at d place
iAnd the distance structure shortcut subgraph G ' between two partition boundaries nodes of pre-save.
Other detailed content of the present embodiment two specifically can referring to embodiment one, not repeat them here.
The present invention is by precomputation subregion SG
iInterior child partition SG
iBoundary node between distance, all boundary nodes of precomputation separately farthest neighbours f and each comfortable place subregion of all boundary nodes and child partition SG on road network G simultaneously
iInterior farthest neighbours; Estimate each subregion or child partition SG
iIn the lower bound of the farthest neighbours distance of node d to its road network G, for
Have
Wherein
Calculate each subregion or child partition SG
iThe maximal value of middle g (b, f) is as this subregion or child partition SG
i All subregions of level partition tree are pressed into a traversal formation, eject successively each subregion or child partition SG from described traversal formation
i, judge each child partition SG
i, whether so that
If, SG then
iIn node
This child partition is got rid of from road network G, if not, with the child partition SG of this child partition of not getting rid of
iOr be pressed into described traversal formation without the child partition self of child partition, eject successively the child partition SG of each child partition from described traversal formation
i, and repeat above-mentioned judgement, until in the described traversal formation only remaining subregion or child partition without child partition, wherein, calculate
Step as follows, when
And
The time, then
When
The time, because any from q towards SG
iThe path must pass through SG
iBoundary node
Use q to arrive
The upper bound estimate
Then
Wherein,
The use triangle inequality estimate,
Definition with
Distance and each comfortable place subregion and the child partition SG from all boundary nodes of described precomputation
iObtain among the interior farthest neighbours; Described remaining without the subregion of child partition or the node d on the child partition for each, use triangle inequality to check distance || d-q|| whether necessarily less than d to apart from the d distance of terrestrial reference farthest || d-f||, if have terrestrial reference u and f among the node L, so that || d-u||+||u-q||<|| d-f||, then q is the farthest neighbours of d scarcely, thereby d is the oppositely neighbours farthest of q scarcely, and this node d is got rid of from described remaining subregion or child partition without child partition; The farthest neighbours that check the d ∈ P that each is not got rid of are q, if so, determine that then d is p, p ∈ MRFN (q, P), if not, then this d is got rid of, can be on road network fast search to the reverse neighbours of list of query point.
Each embodiment adopts the mode of going forward one by one to describe in this instructions, and what each embodiment stressed is and the difference of other embodiment that identical similar part is mutually referring to getting final product between each embodiment.For the disclosed system of embodiment, because corresponding with the disclosed method of embodiment, so description is fairly simple, relevant part partly illustrates referring to method and gets final product.
The professional can also further recognize, unit and the algorithm steps of each example of describing in conjunction with embodiment disclosed herein, can realize with electronic hardware, computer software or the combination of the two, for the interchangeability of hardware and software clearly is described, composition and the step of each example described in general manner according to function in the above description.These functions are carried out with hardware or software mode actually, depend on application-specific and the design constraint of technical scheme.The professional and technical personnel can specifically should be used for realizing described function with distinct methods to each, but this realization should not thought and exceeds scope of the present invention.
Obviously, those skilled in the art can carry out various changes and modification to invention and not break away from the spirit and scope of the present invention.Like this, if of the present invention these revise and modification belongs within the scope of claim of the present invention and equivalent technologies thereof, then the present invention also is intended to comprise these change and modification.
Claims (14)
1. one kind is obtained single reverse farthest level partition method of neighbours on the road network, it is characterized in that, comprising:
Step 1: for a certain node p on the given road network G and all the node V on the road network G
GIf have node q on the road network G, the road network distance of q and p || q-p|| is not less than p to V
GThe distance of central any some p ' || p '-p||, then defining q is that p is with respect to V
GFarthest neighbours, be designated as fn (p, V
G);
Step 2: for all the node V on the given road network G
G, the definition q list oppositely farthest neighbours are V
GIn the set of ordering as neighbours farthest with q be MRFN (q, V
G)={ p|p ∈ V
G, fn (p, V
G∪ q})=q};
Step 3: use the level partition tree of top-down method construct road network G, the node among the road network G is divided into m subregion SG
i, and each subregion recurrence is divided into several child partitions SG
i, until reach required number of partitions and the number of plies;
Step 4: upper each subregion of definition road network G or child partition SG
iBoundary node be
Wherein edge (d, d ') represents the limit between d and the d ',
Expression subregion SG
iAll nodes;
Step 5: certain node q is arrived certain subregion or child partition SG
iThe upper bound and lower bound be defined as respectively q and arrive
The minimum and maximum distance of interior any node is designated as
With
Subregion or child partition SG
iDiameter be defined as
Similarly definition node q is respectively to the upper bound and the lower bound of node d
With
Step 6: with certain subregion or child partition SG
iThe farthest upper bound and farthest lower bound be defined as respectively arbitrarily
To it on road network G farthest neighbours apart from maximal value and minimum value, be designated as
With
, similarly define a node u to its road network G farthest neighbours' distance be fub
uAnd flb
u
Step 7: precomputation subregion SG
iInterior child partition SG
iBoundary node between distance, all boundary nodes of precomputation separately farthest neighbours f and each comfortable place subregion of all boundary nodes and child partition SG on road network G simultaneously
iInterior farthest neighbours;
Step 8: select a plurality of node L on the described road network G as terrestrial reference, use each node L of dijkstra's algorithm precomputation to described remaining without child partition subregion or child partition on all nodal point distances;
Step 9: estimate each subregion or child partition SG
iIn the lower bound of the farthest neighbours distance of node d to its road network G, for
Have
Wherein
Calculate each subregion or child partition SG
iThe maximal value of middle g (b, f) is as this subregion or child partition SG
i
Step 10: all subregions of level partition tree are pressed into a traversal formation, eject successively each subregion or child partition SG from described traversal formation
i, judge each child partition SG
i, whether so that
If, SG then
iIn node
This child partition is got rid of from road network G, if not, with the child partition SG of this child partition of not getting rid of
iOr be pressed into described traversal formation without the child partition self of child partition, eject successively the child partition SG of each child partition from described traversal formation
i, and repeat above-mentioned judgement, until in the described traversal formation only remaining subregion or child partition without child partition, wherein, calculate
Step as follows, when
And
The time, then
When
The time, because any from q towards SG
iThe path must pass through SG
iBoundary node
Use q to arrive
The upper bound estimate
Then
Wherein,
The estimation of use triangle inequality,
Definition with
Distance and each comfortable place subregion and the child partition SG from all boundary nodes of described precomputation
iObtain among the interior farthest neighbours;
Step 11: described remaining without the subregion of child partition or the node d on the child partition for each, use triangle inequality to check distance || d-q|| whether necessarily less than d to apart from the d distance of terrestrial reference farthest || d-f||, if have terrestrial reference u and f among the node L, so that || d-u||+||u-q||<|| d-f||, then q is the farthest neighbours of d scarcely, thereby d is the oppositely neighbours farthest of q scarcely, and this node d is got rid of from described remaining subregion or child partition without child partition;
Step 12: the farthest neighbours that check the d ∈ P that each is not got rid of are q, if so, determine that then d is p, p ∈ MRFN (q, P), if not, then this d is got rid of.
2. as claimed in claim 1ly obtain on the road network single oppositely level partition method of neighbours farthest, it is characterized in that, in the step 8, the ground of described selection is marked on that road network G is upper evenly to distribute.
3. as claimed in claim 1ly obtain on the road network single oppositely level partition method of neighbours farthest, it is characterized in that, be divided into several child partitions SG with each subregion recurrence in the step 3
iStep in, use Erwig and Hagen algorithm that each subregion recurrence is divided into several child partitions SG
i
4. as claimed in claim 1ly obtain on the road network single oppositely level partition method of neighbours farthest,, it is characterized in that, described step 12 comprises:
Step 12 one: certain node d is arrived certain subregion or child partition SG
iThe upper bound and lower bound be defined as respectively d and arrive
The minimum and maximum distance of interior any node is designated as
With
Subregion or child partition SG
iDiameter be defined as
Similarly definition node d is respectively to the upper bound and the lower bound of node d '
With
Step 12 two: when
And
The time, then
When
The time, because any from d towards SG
iThe path must pass through SG
iBoundary node
Use d to arrive
The upper bound estimate
Then
Wherein,
Can use triangle inequality to estimate, and
Each comfortable place subregion of all boundary nodes and the child partition SG from described precomputation
iObtain among the interior farthest neighbours,
Definition with
Step 12 three: set up one with subregion SG
iWith node d's '
With
With the Priority Queues of descending storage, and with all subregions
Be pressed in the formation;
Step 12 four: at every turn in described Priority Queues, eject first
Or
If what eject is
Then forward step to straight 12, if eject be
If
Then the farthest neighbours of d can not be at SG
iIn, with this subregion SG
iGet rid of from road network G, otherwise, then judge this subregion SG
iWhether child partition is arranged, if having, then with this subregion SG
iChild partition
Push back described Priority Queues with descending, if nothing, then invocation step 12;
Step 12 five: calculate each
Corresponding subregion or child partition SG
iIn all node d ' to the distance of d
And will own
Push back described Priority Queues with descending, and invocation step 12;
5. as claimed in claim 4ly obtain on the road network single oppositely level partition method of neighbours farthest, it is characterized in that, calculate each in the step 12 five
Corresponding subregion or child partition SG
iIn all node d ' to the distance of d
Step comprise:
If
Carry out a dijkstra's algorithm to obtain d to this subregion or child partition SG take d as source point
iIn the distance of all node d '
If
Since any from d to
The path all must pass through this subregion or child partition SG
iBoundary node
Construct one keep d and
Between the shortcut subgraph G ' of distance, and calculate d to this subregion or child partition SG at the enterprising row distance of described shortcut subgraph G '
iIn the distance of all node d '
7. as claimed in claim 5ly obtain on the road network single oppositely level partition method of neighbours farthest, it is characterized in that, construct a reservation d and boundary node
Between in the step of shortcut subgraph G ' of distance, all boundary nodes of pre-save
Between distance, use the subregion SG at d place
iAnd the distance structure shortcut subgraph G ' between two partition boundaries nodes of pre-save.
8. one kind is obtained single reverse farthest level partition system of neighbours on the road network, it is characterized in that, comprising:
The first definition module is used for for a certain node p on the given road network G and all the node V on the road network G
GIf have node q on the road network G, the road network distance of q and p || q-p|| is not less than p to V
GThe distance of central any some p ' || p '-p||, then defining q is that p is with respect to V
GFarthest neighbours, be designated as fn (p, V
G);
The second definition module is for all the node V on the given road network G
G, the definition q list oppositely farthest neighbours are V
GIn the set of ordering as neighbours farthest with q be MRFN (q, V
G)={ p|p ∈ V
G, fn (p, V
G∪ q})=q};
The level division module, for the level partition tree that uses top-down method construct road network G, the node among the road network G is divided into m subregion SG
i, and each subregion recurrence is divided into several child partitions SG
i, until reach required number of partitions and the number of plies;
The boundary node module is used for defining upper each subregion of road network G or child partition SG
iBoundary node be
Wherein edge (d, d ') represents the limit between d and the d ',
Expression subregion SG
iAll nodes;
The first bound module is used for certain node q to certain subregion or child partition SG
iThe upper bound and lower bound be defined as respectively q and arrive
The minimum and maximum distance of interior any node is designated as
With
Subregion or child partition SG
iDiameter be defined as
Similarly definition node q is respectively to the upper bound and the lower bound of node d
With
The second bound module is used for certain subregion or child partition SG
iThe farthest upper bound and farthest lower bound be defined as respectively arbitrarily
To it on road network G farthest neighbours apart from maximal value and minimum value, be designated as
With
Similarly node u of definition to its road network G farthest neighbours' distance be fub
uAnd flb
u
Precalculation module is used for precomputation subregion SG
iInterior child partition SG
iBoundary node between distance, all boundary nodes of precomputation separately farthest neighbours f and each comfortable place subregion of all boundary nodes and child partition SG on road network G simultaneously
iInterior farthest neighbours;
Spacing module is used for selecting a plurality of node L on the described road network as terrestrial reference, use each node L of dijkstra's algorithm precomputation to described remaining without child partition subregion or child partition on all nodal point distances;
Estimation module is used for estimating each subregion or child partition SG
iIn the lower bound of the farthest neighbours distance of node d to its road network G, for
Have
Wherein
Calculate each subregion or child partition SG
iThe maximal value of middle g (b, f) is as this subregion or child partition SG
i
The formation module is used for all subregions of level partition tree are pressed into a traversal formation, ejects successively each subregion or child partition SG from described traversal formation
i, judge each child partition SG
i, whether so that
If, SG then
iIn node
This child partition is got rid of from road network G, if not, with the child partition SG of this child partition of not getting rid of
iOr be pressed into described traversal formation without the child partition self of child partition, eject successively the child partition SG of each child partition from described traversal formation
i, and repeat above-mentioned judgement, until in the described traversal formation only remaining subregion or child partition without child partition, wherein, calculate
Step as follows, when
And
The time, then
When
The time, because any from q towards SG
iThe path must pass through SG
iBoundary node
Use q to arrive
The upper bound estimate
Then
Wherein,
The use triangle inequality estimate,
Definition with
Distance and each comfortable place subregion and the child partition SG from all boundary nodes of described precomputation
iObtain among the interior farthest neighbours;
Node is got rid of module, be used for described remaining without the subregion of child partition or the node d on the child partition for each, use triangle inequality to check distance || d-q|| whether necessarily less than d to apart from the d distance of terrestrial reference farthest || d-f||, if have terrestrial reference u and f among the node L, so that || d-u||+||u-q||<|| d-f||, then q is the farthest neighbours of d scarcely, thereby d is the oppositely neighbours farthest of q scarcely, and this node d is got rid of from described remaining subregion or child partition without child partition;
Checking module is used for checking that the farthest neighbours of each d ∈ P that does not get rid of are q, if so, determines that then d is p, p ∈ MRFN (q, P), if not, then this d is got rid of.
9. as claimed in claim 8ly obtain on the road network single oppositely level partition system of neighbours farthest, it is characterized in that, the ground that described spacing module is selected is marked on that road network G is upper evenly to distribute.
10. as claimed in claim 8ly obtain on the road network single oppositely level partition system of neighbours farthest, it is characterized in that, described level division module uses Erwig and Hagen algorithm that each subregion recurrence is divided into several child partitions SG
i
11. as claimed in claim 8ly obtain on the road network single oppositely level partition system of neighbours farthest, it is characterized in that, described checking module comprises:
The first bound unit is used for certain node d to certain subregion or child partition SG
iThe upper bound and lower bound be defined as respectively d and arrive
The minimum and maximum distance of interior any node is designated as
With
Subregion or child partition SG
iDiameter be defined as
Similarly definition node d is respectively to the upper bound and the lower bound of node d '
With
Estimation unit is used for working as
And
The time, then
When
The time, because any from d towards SG
iThe path must pass through SG
iBoundary node
Use d to arrive
The upper bound estimate
Then
Wherein,
Can use triangle inequality to estimate, and
Each comfortable place subregion of all boundary nodes and the child partition SG from described precomputation
iObtain among the interior farthest neighbours,
Definition with
Queue unit is used for setting up one with subregion SG
iWith node d's '
With
With the Priority Queues of descending storage, and with all subregions
Be pressed in the formation;
The subregion rejected unit is used for ejecting first in described Priority Queues at every turn
Or
If what eject is
Then call farthest neighbours unit, if ejection is
If
Then the farthest neighbours of d can not be at SG
iIn, with this subregion SG
iGet rid of from road network G, otherwise, then judge this subregion SG
iWhether child partition is arranged, if having, then with this subregion SG
iChild partition
Push back described Priority Queues with descending, if nothing is then called computing unit;
Computing unit is used for calculating each
Corresponding subregion or child partition SG
iIn all node d ' to the distance of d
And will own
Push back described Priority Queues with descending, and call farthest neighbours unit;
12. as claimed in claim 11ly obtain on the road network single oppositely level partition system of neighbours farthest, it is characterized in that, described computing unit is used for:
If
Carry out a dijkstra's algorithm to obtain d to this subregion or child partition SG take d as source point
iIn the distance of all node d '
If
Since any from d to
The path all must pass through this subregion or child partition SG
iBoundary node
Construct one keep d and
Between the shortcut subgraph G ' of distance, and calculate d to this subregion or child partition SG at the enterprising row distance of described shortcut subgraph G '
iIn the distance of all node d '
14. as claimed in claim 12ly obtain on the road network single oppositely level partition system of neighbours farthest, it is characterized in that described all boundary nodes of computing unit pre-save
Between distance, use the subregion SG at d place
iAnd the distance structure shortcut subgraph G ' between two partition boundaries nodes of pre-save.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310279130.9A CN103365983B (en) | 2013-07-04 | 2013-07-04 | Obtain level partition method and the system of the most farthest single neighbours on road network |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310279130.9A CN103365983B (en) | 2013-07-04 | 2013-07-04 | Obtain level partition method and the system of the most farthest single neighbours on road network |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103365983A true CN103365983A (en) | 2013-10-23 |
CN103365983B CN103365983B (en) | 2016-09-07 |
Family
ID=49367324
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310279130.9A Expired - Fee Related CN103365983B (en) | 2013-07-04 | 2013-07-04 | Obtain level partition method and the system of the most farthest single neighbours on road network |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103365983B (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108595255A (en) * | 2018-04-13 | 2018-09-28 | 武汉理工大学 | Workflow task dispatching method based on shortest path first in geographically distributed cloud |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002257578A (en) * | 2001-02-28 | 2002-09-11 | Toshiba Corp | Road guide method and device |
CN101369982A (en) * | 2008-10-13 | 2009-02-18 | 北京邮电大学 | Method for data packet greedy forwarding in vehicle-mounted Ad hoc network |
CN102238687A (en) * | 2011-08-05 | 2011-11-09 | 电子科技大学 | Pseudo-three-dimensional wireless sensor network routing method based on geographical position |
-
2013
- 2013-07-04 CN CN201310279130.9A patent/CN103365983B/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002257578A (en) * | 2001-02-28 | 2002-09-11 | Toshiba Corp | Road guide method and device |
CN101369982A (en) * | 2008-10-13 | 2009-02-18 | 北京邮电大学 | Method for data packet greedy forwarding in vehicle-mounted Ad hoc network |
CN102238687A (en) * | 2011-08-05 | 2011-11-09 | 电子科技大学 | Pseudo-three-dimensional wireless sensor network routing method based on geographical position |
Non-Patent Citations (3)
Title |
---|
ADISAK SUKUL 等: "Adaptive Travel Time Path Selection in Hierarchical Index Road Network", 《2006 IEEE INTERNATIONAL CONFERENCE ON SYSTEMS, MAN AND CYBERNETICS》 * |
SUN HUAN-LIANG 等: "Continuous Reverse Nearest Neighbor Queries on Moving Objects in Road Network", 《THE NINTH INTERNATIONAL CONFERENCE ON WEB-AGE INFORMATION MANAGEMENT》 * |
XIAOLAN YIN 等: "Moving Continuous K Nearest Neighbor Queries in Spatial Network Databases", 《2009 WORLD CONGRESS ON COMPUTER SCIENCE AND INFORMATION ENGINEERING》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108595255A (en) * | 2018-04-13 | 2018-09-28 | 武汉理工大学 | Workflow task dispatching method based on shortest path first in geographically distributed cloud |
CN108595255B (en) * | 2018-04-13 | 2022-01-21 | 武汉理工大学 | Workflow task scheduling method based on shortest path algorithm in geographically distributed cloud |
Also Published As
Publication number | Publication date |
---|---|
CN103365983B (en) | 2016-09-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Kim et al. | DBCURE-MR: An efficient density-based clustering algorithm for large data using MapReduce | |
CN108932347B (en) | Spatial keyword query method based on social perception in distributed environment | |
Combe et al. | Combining relations and text in scientific network clustering | |
Xuan et al. | Voronoi-based multi-level range search in mobile navigation | |
Raghuvira et al. | An efficient density based improved k-medoids clustering algorithm | |
CN109190052B (en) | Spatial indexing method based on social perception in distributed environment | |
CN103345509B (en) | Obtain the level partition tree method and system of the most farthest multiple neighbours on road network | |
Sun et al. | On efficient aggregate nearest neighbor query processing in road networks | |
Mustafa et al. | An experimental comparison of GPU techniques for DBSCAN clustering | |
Chehreghani | Efficient computation of pairwise minimax distance measures | |
CN105138607B (en) | A kind of KNN querying methods based on combination grain distributed memory grid index | |
CN103365983A (en) | Hierarchical partition tree method and system for acquiring single reverse furthest neighbors on road network | |
Maier et al. | Indexing network structure with shortest-path trees | |
CN103365984B (en) | Obtain the terrestrial reference method and system of the most farthest single neighbours on road network | |
Goncalves et al. | Making recommendations using location-based skyline queries | |
Endres et al. | Behind the skyline | |
Gavagsaz | Weighted spatial skyline queries with distributed dominance tests | |
CN103336827B (en) | Obtain the force search method and system of the most farthest multiple neighbours on road network | |
Geetha et al. | Implementation and performance analysis of dynamic partitioning of graphs in Apache Spark | |
Sasaki et al. | Sky R-tree: an index structure for distance-based top-k query | |
CN103324746B (en) | Obtain go forward one by one farthest partition method and the system of the most farthest multiple neighbours on road network | |
CN105989078A (en) | Index construction method for structured peer-to-peer network as well as retrieval method, apparatus and system | |
Zhang et al. | Efficient similarity search on quasi-metric graphs | |
Selke et al. | SkyMap: A trie-based index structure for high-performance skyline query processing | |
Pinari | Parallel Implementations of the Skyline Query using PySpark |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160907 Termination date: 20190704 |