Fast Object Search on Road Networks

46
Fast Object Search on Road Networks Speaker: Ping-Lin Chang 2009/04/12

description

Fast Object Search on Road Networks. Speaker: Ping-Lin Chang 2009/04/12. Outline. Introduction ROAD Framework Operation Designed Empirical Results Conclusions. Outline. Introduction ROAD Framework Operation Designed Empirical Results Conclusions. Introduction. - PowerPoint PPT Presentation

Transcript of Fast Object Search on Road Networks

Page 1: Fast Object Search on Road Networks

Fast Object Search on Road Networks

Speaker: Ping-Lin Chang2009/04/12

Page 2: Fast Object Search on Road Networks

Fast Object Search on Road Networks 2

Introduction ROAD Framework Operation Designed Empirical Results Conclusions

Outline

Page 3: Fast Object Search on Road Networks

Fast Object Search on Road Networks 3

Introduction ROAD Framework Operation Designed Empirical Results Conclusions

Outline

Page 4: Fast Object Search on Road Networks

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

Page 5: Fast Object Search on Road Networks

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

Page 6: Fast Object Search on Road Networks

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

Page 7: Fast Object Search on Road Networks

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

Page 8: Fast Object Search on Road Networks

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

Page 9: Fast Object Search on Road Networks

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

Page 10: Fast Object Search on Road Networks

Fast Object Search on Road Networks 10

Introduction ROAD Framework Operation Designed Empirical Results Conclusions

Outline

Page 11: Fast Object Search on Road Networks

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

Page 12: Fast Object Search on Road Networks

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

Page 13: Fast Object Search on Road Networks

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

Page 14: Fast Object Search on Road Networks

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

Page 15: Fast Object Search on Road Networks

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

Page 16: Fast Object Search on Road Networks

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

Page 17: Fast Object Search on Road Networks

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

Page 18: Fast Object Search on Road Networks

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

Page 19: Fast Object Search on Road Networks

Fast Object Search on Road Networks 19

ROAD Framework

Page 20: Fast Object Search on Road Networks

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

Page 21: Fast Object Search on Road Networks

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

Page 22: Fast Object Search on Road Networks

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

Page 23: Fast Object Search on Road Networks

Fast Object Search on Road Networks 23

ROAD Framework

Page 24: Fast Object Search on Road Networks

Fast Object Search on Road Networks 24

Introduction ROAD Framework Operation Designed Empirical Results Conclusions

Outline

Page 25: Fast Object Search on Road Networks

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

Page 26: Fast Object Search on Road Networks

Fast Object Search on Road Networks 26

Route Overlay

Operation Deesigned

Page 27: Fast Object Search on Road Networks

Fast Object Search on Road Networks 27

Operation Deesigned

Page 28: Fast Object Search on Road Networks

Fast Object Search on Road Networks 28

Association Directory

Operation Deesigned

Page 29: Fast Object Search on Road Networks

Fast Object Search on Road Networks 29

Search algorithms

Operation Designed

Page 30: Fast Object Search on Road Networks
Page 31: Fast Object Search on Road Networks

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

Page 32: Fast Object Search on Road Networks

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

Page 33: Fast Object Search on Road Networks

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

Page 34: Fast Object Search on Road Networks

Fast Object Search on Road Networks 34

Introduction ROAD Framework Operation Designed Empirical Results Conclusions

Outline

Page 35: Fast Object Search on Road Networks

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

Page 36: Fast Object Search on Road Networks

Fast Object Search on Road Networks 36

Evaluation parameters

Empirical Results

Page 37: Fast Object Search on Road Networks

Fast Object Search on Road Networks 37

Index construction time and index size

Empirical Results

Page 38: Fast Object Search on Road Networks

Fast Object Search on Road Networks 38

Index construction time and index size

Empirical Results

Page 39: Fast Object Search on Road Networks

Fast Object Search on Road Networks 39

Index update time

Empirical Results

Page 40: Fast Object Search on Road Networks

Fast Object Search on Road Networks 40

Index update time

Empirical Results

Page 41: Fast Object Search on Road Networks

Fast Object Search on Road Networks 41

Query performance - kNN query

Empirical Results

Page 42: Fast Object Search on Road Networks

Fast Object Search on Road Networks 42

Query performance - range query

Empirical Results

Page 43: Fast Object Search on Road Networks

Fast Object Search on Road Networks 43

Impact of Rnet hierarchy level (l)

Empirical Results

Page 44: Fast Object Search on Road Networks

Fast Object Search on Road Networks 44

Introduction ROAD Framework Operation Designed Empirical Results Conclusions

Outline

Page 45: Fast Object Search on Road Networks

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

Page 46: Fast Object Search on Road Networks

Fast Object Search on Road Networks 46

Thank You!

Q&A