Fast Object Search on Road Networks
Speaker: Ping-Lin Chang2009/04/12
Fast Object Search on Road Networks 2
Introduction ROAD Framework Operation Designed Empirical Results Conclusions
Outline
Fast Object Search on Road Networks 3
Introduction ROAD Framework Operation Designed Empirical Results Conclusions
Outline
Fast Object Search on Road Networks 4
Location-based services (LBSs)◦ Blooming nowadays because of
the thriving development of mobile devices the ubiquitous wireless communication networks high precision geo-positioning technology
The core application of LBSs◦ To answer user queries with respect to user-specified
location
Introduction
Fast Object Search on Road Networks 5
The technological trend of LBSs◦ Dynamic combination of content and map services
Content providers◦ Stores, average users, etc.
Map service providers◦ Google Maps, MapQuest, MS Virtual Earth, etc.
Introduction
Fast Object Search on Road Networks 6
Location-dependent spatial queries (LDSQs)◦ A fundamental data access operations in LBSs◦ Query the spatial objects (location dependent info.)
k-nearest neighbor (kNN) search◦ Find the nearest bus station to
the conference venue Range search
◦ Find hotels within 10-minutes walk from the conference venue
Introduction
Fast Object Search on Road Networks 7
For an efficient LDSQ processing◦ Flexibly and efficiently accommodate diverse objects◦ Efficiently support various LDSQs◦ Effectively support different distance metrics
However the prior works did not perform well on such an issue
Introduction
Fast Object Search on Road Networks 8
Review the deficiency of prior works◦ Network expansion based approaches
inefficient due to an almost blind scan over entire search space slow node-by-node expansion towards all directions
◦ Euclidean distance bound approaches inefficient when paths are not in straight lines not applicable to other network distance metrics, such as travel
time or cost◦ Solution based approaches
completely impractical due to extremely high preprocessing and storage costs
adapting poorly to other query types, and to object and network changes
Introduction
Fast Object Search on Road Networks 9
The proposed system framework◦ Route Overlay and Association Directory (ROAD)
Two basic operations in processing LDSQs◦ Network traversal (RO)◦ Object lookup (AD)
Principle concepts◦ Rnets, shortcuts, and object abstracts
Introduction
Fast Object Search on Road Networks 10
Introduction ROAD Framework Operation Designed Empirical Results Conclusions
Outline
Fast Object Search on Road Networks 11
Preliminaries◦ Φ = (N,E)
A road network can be modeled as a weighted graph Φ consisting of a set of nodes N and edges E
◦ A node n ∈ N represents a road intersection
◦ An edge (n, n’) ∈ E represents a road segment connecting nodes n and n’
◦ |n, n’| denotes the edge distance, which can represent the travel
distance, trip time or toll of the corresponding road segment the value is positive
ROAD Framework
Fast Object Search on Road Networks 12
Preliminaries (cont.)◦ A path P(u, v)
stands for a set of edges connecting nodes u and v and its distance |P(u, v)| =Σ(n, n’)∈P(u, v) |n, n’|
◦ The shortest path SP(u, v) among all possible paths connecting node u and node v, the
one with the shortest distance is referred to as the shortest path
◦ The network distance ||u, v|| between u and v is the distance of their shortest path SP(u, v) ||u, v|| = |SP(u, v)|
ROAD Framework
Fast Object Search on Road Networks 13
Preliminaries (cont.)◦ Assume that objects reside on edges (road segments) in
a network objects at nodes (i.e., road intersections) can be treated as
they are located at the end of the edges◦ O(n, n’)
represents a set of objects on edge (n, n’)◦ δ(o, n) and δ(o, n’)
represents the distance from an object o ∈ O(n, n’) to the nodes n and n’
ROAD Framework
Fast Object Search on Road Networks 14
Basic idea◦ Search space pruning
to skip some search subspaces that do not contain objects of interest
◦ We need a hint about whether or what objects are on the path an artifact at n1 connecting n5
◦ A shortcut between two ending nodes is the shortest path between them
ROAD Framework
Fast Object Search on Road Networks 15
Closed paths are usually short in road networks◦ The performance gained by bypassing closed paths is
limited◦ Regional sub-networks (Rnets) is introduced
each Rnet encloses a subset of edges and is bounded by a set of border nodes
ROAD Framework
Fast Object Search on Road Networks 16
Definition 1. Rnet ◦ In a network N = (N, E), an Rnet R = (NR, ER, BR)
represents a search subspace, where NR, ER and BR stand for nodes, edges and border nodes in R, and (1) ER ⊆ E (2) NR = { n | (n, n’) ∈ ER (∨ n’, n) ∈ ER} (3) BR = NR ∩ { n | (n, n’) ∈ E’ (∨ n’, n) ∈ E’ }, where
E’ = E − ER
ROAD Framework
Fast Object Search on Road Networks 17
Definition 2. Object Abstract◦ The object abstract of an Rnet R, O(R), represents all the
objects residing on edges in ER
O(R) = ∪e ∈ ERO(e) Definition 3. Shortcut
◦ The shortcut, S(b, b’), between border nodes b and b’ ( ∈ BR) of an Rnet R bears the shortest path SP(b, b’) and its distance ||b, b’||
◦ It is noteworthy that the edges that contribute to SP(b, b’) might not necessarily be included in ER
ROAD Framework
Fast Object Search on Road Networks 18
Rnet Hierarchy◦ Large Rnets at the upper levels enclose smaller Rnets at
lower levels◦ At each layer, a network can be viewed as a layer of
interconnected Rnets◦ Original Rnet as the level-0 Rnet
does not have border node and partition it into p1
◦ At each subsequent level i partition each Rnet into pi child Rnets
◦ As a result at a level x ( [0, ∈ l]), the entire network is fully covered by xΠi=1pi
for an Rnet hierarchy of l levels, there is lΣh=0(hΠi=1pi)
ROAD Framework
Fast Object Search on Road Networks 19
ROAD Framework
Fast Object Search on Road Networks 20
Definition 4. Rnet partitioning◦ Partitioning of an Rnet R = (N, E, B) where N, E, B are a set of
nodes, edges and border nodes and B ⊆ N, forms p child Rnets, R1, R2, · · · Rp where p > 1 and Ri = (Ni, Ei, Bi) here, N = ∪1≤i≤pNi, E = ∪1≤i≤pEi, B = ∪1≤i≤pBi
◦ Also, the following three conditions must hold edges of all child Rnets are disjointed
∀i∀j i ≠ j ⇒ Ei ∩ Ej = ∅ nodes in an Rnet are connected by edges in the same Rnet
∀i∀(n, n’) ∈ Ei, n ∈ Ni ∧ n’ ∈ Ni
border nodes in an Rnet are common to its parent Rnet and some of its sibling Rnets Bi = Ni ∩ [ B (∪ ∪ j ([1,∈ p]−{i}) Nj) ]
ROAD Framework
Fast Object Search on Road Networks 21
An ideal network partitioning generating◦ Geometric approach
coarsely partitions a network into two with equal numbers of edges
◦ KL algorithm fine tunes the two result Rnets by exchanging edges
between them◦ pi is set to be power of 2
recursively apply this binary partitioning until pi Rnets are formed
ROAD Framework
Fast Object Search on Road Networks 22
Important property◦ Object abstracts and shortcuts are constructed in a
bottom-up fashion◦ Shortcuts of a border node can be determined by
adopting Dijkstra’s algorithm to explore paths for all other border nodes in the same Rnet
◦ Shortcuts in Rnets at level i can be calculated based on those in Rnets at level i+1
◦ Explored shortcuts in Rnets can be used to determine other shortcuts of Rnets in the same level
◦ Some shortcuts that are composed of other shortcuts in the same Rnets can be safely ignored
ROAD Framework
Fast Object Search on Road Networks 23
ROAD Framework
Fast Object Search on Road Networks 24
Introduction ROAD Framework Operation Designed Empirical Results Conclusions
Outline
Fast Object Search on Road Networks 25
Data structures◦ Route Overlay (RO)
based on definition 4 that the border nodes in parent Rnets are always the border nodes in some of their child Rnets
◦ Association Directory (AD) based on definition 2 that can examine Rnets quickly and
determine whether bypass those Rnets or not
Operation Deesigned
Fast Object Search on Road Networks 26
Route Overlay
Operation Deesigned
Fast Object Search on Road Networks 27
Operation Deesigned
Fast Object Search on Road Networks 28
Association Directory
Operation Deesigned
Fast Object Search on Road Networks 29
Search algorithms
Operation Designed
Fast Object Search on Road Networks 31
Object update◦ Simply changing the records in AD
Network update◦ Only affects RO◦ Filtering-and-refreshing approach is performed
in the filtering step, shortcuts that may be affected by the change are identified
in the refreshing step, the identified shortcuts are then updated
Operation Designed
Fast Object Search on Road Networks 32
Network update (cont.)◦ Edge distance increased
only those shortcuts that cover (n, n’) might become invalid and need to be refreshed
◦ Edge distance decreased may contribute to paths shorter than some expisting
shortcuts
Operation Designed
Fast Object Search on Road Networks 33
Change of network structure◦ Addition of a new edge (n, n’)
judging whether the nodes n and n’ are in the same Rnet◦ Deletion of an existing edge (n, n’)
judging whether either n or n’ is border node◦ Incorporating with the
schema of network update
Operation Designed
Fast Object Search on Road Networks 34
Introduction ROAD Framework Operation Designed Empirical Results Conclusions
Outline
Fast Object Search on Road Networks 35
Experimental environment◦ Three real road network datasets, CA, NA, and SF◦ Organize network nodes by CCAM ◦ Run on Linux 2.6.9 servers with Intel Xeon 3.2GHz CPU◦ All algorithms implemented in GNU C++◦ All indices are stored on disk
the page size is fixed at 4KB memory cache of 50 pages
Empirical Results
Fast Object Search on Road Networks 36
Evaluation parameters
Empirical Results
Fast Object Search on Road Networks 37
Index construction time and index size
Empirical Results
Fast Object Search on Road Networks 38
Index construction time and index size
Empirical Results
Fast Object Search on Road Networks 39
Index update time
Empirical Results
Fast Object Search on Road Networks 40
Index update time
Empirical Results
Fast Object Search on Road Networks 41
Query performance - kNN query
Empirical Results
Fast Object Search on Road Networks 42
Query performance - range query
Empirical Results
Fast Object Search on Road Networks 43
Impact of Rnet hierarchy level (l)
Empirical Results
Fast Object Search on Road Networks 44
Introduction ROAD Framework Operation Designed Empirical Results Conclusions
Outline
Fast Object Search on Road Networks 45
The proposed algorithm achieves clean separation between objects and network◦ Better system flexibility and extensibility
The strategy of search space pruning ◦ Substantially speeds the object search
Range and kNN query for common LDSQs ◦ Shows high performance
Incremental framework maintenance techniques ◦ Update information in both efficiency and effectiveness
Conclusions
Fast Object Search on Road Networks 46
Thank You!
Q&A