Efficient Construction of Safe Regions for Moving knn Queries Over Dynamic Datasets

Similar documents
Dynamic Nearest Neighbor Queries in Euclidean Space

9/23/2009 CONFERENCES CONTINUOUS NEAREST NEIGHBOR SEARCH INTRODUCTION OVERVIEW PRELIMINARY -- POINT NN QUERIES

VGQ-Vor: extending virtual grid quadtree with Voronoi diagram for mobile k nearest neighbor queries over mobile objects

Distributed k-nn Query Processing for Location Services

Efficiently Monitoring Reverse k Nearest Neighbors in Spatial Networks

Query Optimization for Spatio-temporal Data Stream Management Systems

MobiPLACE*: A Distributed Framework for Spatio-Temporal Data Streams Processing Utilizing Mobile Clients Processing Power.

Continuous Density Queries for Moving Objects

Continuous Query Processing in Spatio-temporal Databases

Distributed Processing of Moving K-Nearest-Neighbor Query on Moving Objects

A Safe-Exit Approach for Efficient Network-Based Moving Range Queries

Continuous Evaluation of Monochromatic and Bichromatic Reverse Nearest Neighbors

CMPS 3130/6130 Computational Geometry Spring Voronoi Diagrams. Carola Wenk. Based on: Computational Geometry: Algorithms and Applications

Approximate Continuous K Nearest Neighbor Queries for Continuous Moving Objects with Pre-Defined Paths

Probabilistic Voronoi Diagrams for Probabilistic Moving Nearest Neighbor Queries

Outline. Other Use of Triangle Inequality Algorithms for Nearest Neighbor Search: Lecture 2. Orchard s Algorithm. Chapter VI

Management and Processing of Large-scale Moving Object Data with High Performance

Incremental Nearest-Neighbor Search in Moving Objects

Efficient Continuous Nearest Neighbor Query in Spatial Networks using Euclidean Restriction

Localized and Incremental Monitoring of Reverse Nearest Neighbor Queries in Wireless Sensor Networks 1

Indexing Land Surface for Efficient knn Query

A Safe Exit Algorithm for Moving k Nearest Neighbor Queries in Directed and Dynamic Spatial Networks

Clustering: Centroid-Based Partitioning

A Motion-Aware Approach to Continuous Retrieval of 3D Objects

Top-k Spatial Preference Queries

Skyline Diagram: Finding the Voronoi Counterpart for Skyline Queries

Nearest Neighborhood Search in Spatial Databases

THE past decade has seen the assimilation of sensor networks and location-based systems in real world

CS133 Computational Geometry

Approximate Evaluation of Range Nearest Neighbor Queries with Quality Guarantee

Surrounding Join Query Processing in Spatial Databases

A Unified Framework for Authenticating Privacy Preserving Location Based Services

Probabilistic Spatial Queries on Existentially Uncertain Data

Notes in Computational Geometry Voronoi Diagrams

Voronoi-Based K Nearest Neighbor Search for Spatial Network Databases

Continuous Monitoring of Spatial Queries in Wireless Broadcast Environments

The V*-Diagram: A Query-Dependent Approach to Moving KNN Queries

Aggregate-Max Nearest Neighbor Searching in the Plane

Finding both Aggregate Nearest Positive and Farthest Negative Neighbors

An Edge-Based Algorithm for Spatial Query Processing in Real-Life Road Networks

The Flexible Group Spatial Keyword Query

DART+: Direction-aware bichromatic reverse k nearest neighbor query processing in spatial databases

Exploiting a Page-Level Upper Bound for Multi-Type Nearest Neighbor Queries

On Reducing Communication Cost for Distributed Moving Query Monitoring Systems

Detect tracking behavior among trajectory data

The advent of sensor, wireless, and INFORMATION DISSEMINATION. via Wireless Broadcast. By Baihua Zheng and Dik Lun Lee

Continuous Intersection Joins Over Moving Objects

The Islands Approach to Nearest Neighbor Querying in Spatial Networks

High Dimensional Indexing by Clustering

Multidimensional reverse knn search

Dynamic Skyline Queries in Metric Spaces

Monitoring k-nearest Neighbor Queries Over Moving Objects

ISSN: (Online) Volume 4, Issue 1, January 2016 International Journal of Advance Research in Computer Science and Management Studies

Finding All Nearest Neighbors with a Single Graph Traversal

Quadrant-Based MBR-Tree Indexing Technique for Range Query Over HBase

Spatiotemporal Access to Moving Objects. Hao LIU, Xu GENG 17/04/2018

SILC: Efficient Query Processing on Spatial Networks

Week 8 Voronoi Diagrams

Chapter 8. Voronoi Diagrams. 8.1 Post Oce Problem

Balanced Box-Decomposition trees for Approximate nearest-neighbor. Manos Thanos (MPLA) Ioannis Emiris (Dept Informatics) Computational Geometry

Two Ellipse-based Pruning Methods for Group Nearest Neighbor Queries

Spatial Queries in the Presence of Obstacles

A Safe Region based Approach to Moving KNN Queries in Obstructed Space

VoR-Tree: R-trees with Voronoi Diagrams for Efficient Processing of Spatial Nearest Neighbor Queries

Processing Moving knn Queries Using Influential Neighbor Sets

Search Continuous Nearest Neighbors On the Air y

An Efficient Technique for Distance Computation in Road Networks

Spatial Queries in Wireless Broadcast Environments

MATHEMATICAL ENGINEERING TECHNICAL REPORTS. Round-Tour Voronoi Diagrams

Max-Count Aggregation Estimation for Moving Points

Voronoi-based Trajectory Search Algorithm for Multi-locations in Road Networks

Retrieving k-nearest Neighboring Trajectories by a Set of Point Locations

Energy Efficient Exact knn Search in Wireless Broadcast Environments

Algorithms for GIS:! Quadtrees

Estimating the Free Region of a Sensor Node

On Processing Location Based Top-k Queries in the Wireless Broadcasting System

Indexing Land Surface for Efficient knn Query

Spatial Queries in Road Networks Based on PINE

AN EFFECTIVE SPATIAL QUERY INTEGRITY USING MERKLE HASH TREE

Web Based Spatial Ranking System

Computing Continuous Skyline Queries without Discriminating between Static and Dynamic Attributes

Group Nearest Neighbor Queries for Fuzzy Geo-Spatial Objects

Constrained Shortest Path Computation

Maintenance of K-nn and Spatial Join Queries on Continuously Moving Points

The New Casper: Query Processing for Location Services without Compromising Privacy

Privacy Protected Spatial Query Processing for Advanced Location Based Services

Reverse Nearest Neighbors Search in Ad-hoc Subspaces

An efficient implementation of the greedy forwarding strategy

Efficient Proximity Detection among Mobile Users via Self-Tuning Policies

Update-efficient Indexing of Moving Objects in Road Networks

Ring-constrained Join: Deriving Fair Middleman Locations from Pointsets via a Geometric Constraint

Intersection Acceleration

CS S Lecture February 13, 2017

UV-Diagram: A Voronoi Diagram for Uncertain Data

In what follows, we will focus on Voronoi diagrams in Euclidean space. Later, we will generalize to other distance spaces.

The optimal sequenced route query

Processing In-Route Nearest Neighbor Queries: A Comparison of Alternative Approaches

D-Grid: An In-Memory Dual Space Grid Index for Moving Object Databases

Nearest Neighbor Search on Moving Object Trajectories

11/30/2010 IEEE CloudCom 2010

Transcription:

Efficient Construction of Safe Regions for Moving knn Queries Over Dynamic Datasets Mahady Hasan, Muhammad Aamir Cheema, Xuemin Lin, Ying Zhang The University of New South Wales, Australia {mahadyh,macheema,lxue,yingz}@cse.unsw.edu.au Abstract. The concept of safe region has been used to reduce the computation and communication cost for the continuous monitoring of k nearest neighbor (knn) ueries. A safe region is an area such that as long as a uery remains in it, the set of its knns does not change. In this paper, we present an efficient techniue to construct the safe region by using cheap RangeNN ueries. We also extend our approach for dynamic datasets (the objects may appear or disappear from the dataset). Our proposed algorithm outperforms existing algorithms and scales better with the increase in k. 1 Introduction With the availability of inexpensive mobile devices, position locators and cheap wireless networks, location based services are gaining increasing popularity. The continuous monitoring of k nearest neighbor (knn) ueries [1 4] has been widely studied in recent past. In this paper, we study the problem of moving knn ueries where the uery is constantly moving and the objects do not move. Consider the example of a car driver who is interested in five nearest available car parking spaces while driving in a city. Another example is a person looking for the nearest restaurants while walking in a street. A classical example of the safe region is Voronoi Diagram (VD) [5]. In a VD, each object of the dataset lies within a cell called its voronoi cell. The voronoi cell of an object has a property that any point that lies in it is always closer to that object than any other object in the dataset. For a knn uery, a k order VD can be constructed and k order voronoi cells can be treated as safe regions. The VD based solution has the following major limitations: 1) The VD cannot be precomputed and indexed if the value of k is not known in advance. 2) The VD cannot deal efficiently with update of objects in the underlying dataset. Our contributions in this paper include: 1) we devise an efficient safe region construction approach that reuires cheap RangeNN 1 ueries; 2) our proposed approach is extended to efficiently update the safe regions of ueries for dynamic datasets where the objects may appear or disappear and 3) extensive experiment results show more than an order of magnitude improvement. 1 RangeNN uery is to find the nearest object of from the objects that lie within a given distance from a point p.

2 Background Information Continuous k Nearest Neighbor Query. Given a set of objects, a moving uery point, and a positive integer k, the continuous knn uery is to continuously report k closest objects to at each time stamp. Definitions and Notations. A perpendicular bisector B n:o between two points n and o divides the space into two half-spaces. Let H n:o be the half-space containing n and H o:n be the half-space containing o. Every point in H n:o is always closer to n than it is to o (i.e; dist(,n) < dist(,o)). Figure 1 shows a bisector B n:o2 between two points n and and the two half-spaces are also shown. Safe Region S is a region such that as long as a knn uery remains in it, the set of its knns does not change. If a client (that issued uery ) is aware of its safe region, it does not need to contact the server to update its set of knns as long as resides in the safe region. This saves the communication cost as well as computation cost. Now, we formally define the safe region. Let N = {n 1,,n k } be the set of knns of a uery. The intersection of all half-spaces H ni:o j for every n i N and every o j O N defines a region such that as long as the uery resides in it, the set of its knns N is unchanged. Proof. We prove this by contradiction. Assume that resides in its safe region and o j O N is an object such that dist(,o j ) < dist(,n i ) for any n i N. Since safe region is the intersection of all half-spaces H ni:o j, a uery that resides in it satisfies dist(,n i ) < dist(,o j ) which contradicts the assumption. Figure 1 shows an example of the safe region for a NN uery. The bisectors between the nearest neighbor n and the objects to are drawn and the shaded area is the safe region. Figure 2 shows an example of the safe region for a 2NN uery where the two NNs are n 1 and. The bisectors between the NNs and the objects to are drawn. For clarity, the bisectors between n 1 and the objects are shown in solid lines and the bisectors between and the objects are shown in broken lines. The shaded area is the safe region. Note that not all the bisectors contribute in defining the safe region. A bisector B ni:o j that forms an edge of the safe region is called a representative bisector (the bisector B n:o2 in Fig. 1). The object o j that is associated with the representative bisector is called an influence object ( in Fig. 1). Notation Definition B x: a perpendicular bisector between point x and H x: a half-space defined by B x: containing the point x H :x a half-space defined by B x: containing the point dist(x, y) the distance between two points x and y v B ni :o j B nx:oy a vertex v formed by the intersection of the two bisectors Table 1. Notations A vertex is the intersection of two bisectors B ni:o j and B nx:o y. A confirmed vertex is the vertex of the safe region (i.e., it is an intersection of two representative bisectors). Vertex v in Fig. 1 is a confirmed vertex whereas the vertex v is not a confirmed vertex. Please note that a confirmed vertex lies at the boundary of the safe region. Table 1 defines the notations used throughout this paper.

The most related work to our techniue is proposed in [6]. The authors propose construction of the safe region by using time parameterized knn ueries [7]. Due to space limitations, we omit the details. 3 Techniue Before we present our algorithm, we present observations that can be used to confirm a vertex. First, we present the observation for k = 1 and then we extend it for arbitrary value of k. B n:o4 v v' n B n:o2 n 1 n 1 v H n:o2 H :n Fig. 1. Safe region for a NN uery Fig. 2. Safe region for a 2- NN uery Fig. 3. Illustration of Observation 2 Observation 1 : Let n be the NN of a uery and v be a vertex. The vertex v can be confirmed if no object lies in the circle of radius R centered at v where R = dist(v,n). Proof. Assume that the circle does not contain any object and (as shown in Fig. 1) is any object that lies outside the circle. If the vertex v does not lie in the safe region then there must be a half-space H o4:n that contains v. Any point p that lies in the half-space H o4:n satisfies dist(p, ) < dist(p,n). However, for vertex v, dist(v, ) > dist(v,n). Hence there is no such half-space H o4:n that contains v. So the vertex v lies in the safe region. Observatio : Let N = {n 1,,n k } be the set of knns of uery and v be any vertex. The vertex v can be confirmed if no object o O N lies in the circle centered at v with radius R = maxdist(v,n) where maxdist(v,n) is max(dist(v,n i )) for every n i N. Proof. Assume that the circle does not contain any object and is any object that lies outside the circle (as shown in Fig. 3). The vertex v satisfies dist(v,n i ) < dist(v, ) for every n i N, hence v lies in every H ni:. For this reason, the vertex v lies in the safe region. Algorithm 1 presents the construction of the safe region for a knn uery. The algorithm maintains a set of vertices V (initialized to four vertices of the universal data space). First, the set N containing knns of the uery is computed by using BFS [8]. Then, the algorithm randomly selects an unconfirmed vertex v from V and checks whether it can be confirmed or not by using Observatio. More specifically, the algorithm checks whether there is any object in the circle

Algorithm 1 Construct Safe Region () 1: V = {Vertices of the data space} 2: compute knns of and store in N 3: while there is an unconfirmed vertex in V do 4: select any unconfirmed vertex v 5: R = maxdist(v, N) 6: o = RangeNN(, v, R)/* Algorithm 2 */ 7: if o = NULL then 8: confirm v 9: else 10: update V using bisectors between o and each n i N of range R = maxdist(v,n) centered at v. If there is no object in the circle, the algorithm marks the vertex as confirmed (line 8). If there are more than one objects in the circle, the algorithm selects the nearest object o to the uery (line 6). The safe region is updated by considering the bisectors between knns of and the object o (line 10). For a given bisector B ni:o, the safe region is updated by removing the vertices from V that lie in H o:ni and adding the intersection points of B ni:o and the safe region. The algorithm stops when all the vertices are confirmed. To show the correctness of the algorithm, we need to show that the algorithm finds all the vertices of the safe region and does not include any unconfirmed vertex. The proof of correctness is similar to Lemma 3.1 in [6] and is omitted. Algorithm 2 RangeNN(, v, R) Output: Returns the nearest neighbor of from the objects that lie within distance R from v 1: Initialize a min-heap H with root entry of the tree 2: while H is not empty do 3: deheap an entry e 4: if e is an intermediate or leaf node then 5: for each of its children c do 6: if mindist(c, v) < R then 7: insert c into H with key mindist(c, ) 8: else if e is an object and e is not one of the knns of then 9: return e 10: return φ Algorithm 2 presents the implementation of RangeNN uery. This operation can be regarded as finding the nearest object o of from the objects lying within the range R of a vertex v. Hence, we call it RangeNN uery. Example 1. Figure 4 illustrates our algorithm for a 2NN uery where n 1 and are the NNs of. Initial safe region is the data space bounded by four vertices v 1 to v 4. First, a RangeNN 2 uery is issued on vertex v 1 with range R = dist(v 1,n 1 ) which returns the object. Then, the bisectors between and the NNs are 2 Note that RangeNN uery does not access all the objects within the range. It uses BFS and stops when the NN is found. So the object is not accessed in the example.

v 4 v 3 v 4 v 8 v 3 n1 v 6 n 1 n1 n v 2 9 v v 5 v 1 v 2 v 7 v 1 v 2 Fig. 4. RangeNN uery from v 1 Fig. 5. The safe region after visiting Fig. 6. Safe Region and impact Region drawn. In Fig. 5, the bisector between and n 1 is shown in solid line and the bisector between and is shown in broken line. These bisectors update the set of vertices V and the new safe region (the shaded area) now contains vertices v 3, v 5, v 9 and v 8. Then, a RangeNN uery is issued on vertex v 9 with range dist(v 9,n 1 ) and it is marked confirmed because no object is found within the range. The algorithm continues in this way until all the vertices are confirmed. The final safe region is shown in Fig. 6 (light shaded area). Extension for Dynamic Datasets. First, we define impact region. The impact region is an area such that as long as a uery remains in its safe region and no object appears or disappears from the impact region, the safe region of the uery is unchanged. It is easy to prove that the impact region consists of circles around vertices with radius set to their corresponding nearest neighbors. In Fig. 6, the impact region is shown shaded (both dark and light). Below, we formally define the impact region. Let V be a set of vertices of a safe region. Let Circ v be a circle centered at a vertex v B ni:o j B nx:o y with radius R v = dist(v,n i ). The impact region is the area covered by all circles Circ vi for each v i V. We use a grid-based structure and mark all the cells that overlap with the impact region. The results of a uery are affected only if an object appears in (or disappears from) these marked cells. For such ueries, we compute the safe regions again. 4 Experimental Study and Remarks We compare our algorithm with LBSQ [6]. Other algorithms for moving knn ueries either assume known uery trajectory path [7, 4] or assume that clients have sufficient computation resources to maintain knns from given (k + x) or more NNs [9 11]. We use real dataset (http://www.census.gov/geo/www/tiger/) that contains 128,700 uniue data points in a data space of 350km 350km. We continuously monitor 500 moving ueries created by the spatio-temporal data generator [12].

# of RangeNN/TPkNN ueries 150K 120K 90K 60K 30K RSR LBSQ 0 1 3 10 30 100 k values Time in ms 12 10 8 6 4 2 0 LBSQ RSR LBSQ=0.3 RSR=0.07 1 3 10 30 100 k values Time in sec 10000 1000 100 10 1 LBSQ RSR 2.1 5.9 2.6 9.9 4.9 38.5 11 178 37 1474 1 3 10 30 100 k values Fig. 7. Total RangeNN / TPkNN ueries Fig. 8. Average cost of RangeNN / TPkNN uery Fig. 9. The computation time for different k Figure 7 shows that the number of RangeNN ueries is slightly higher than the number of TPkNN ueries, but the average cost of a RangeNN uery is significantly lower than that of a TPkNN uery (Fig. 8). Figures 9 studies the effect of k on the computation times of both algorithms (shown in log scale). Our algorithm not only outperforms LBSQ but also scales better. We also observed that the number of nodes accessed by our algorithm is lower than that of LBSQ but we do not include the figure due to page limitation. Previous algorithm uses TPkNN ueries to compute the safe region of a knn uery. In this paper, we present an efficient algorithm to construct the safe region by using much cheaper RangeNN ueries. Experiment results show an order of magnitude improvement. References 1. Mouratidis, K., Hadjieleftheriou, M., Papadias, D.: Conceptual partitioning: An efficient method for continuous nearest neighbor monitoring. In: SIGMOD Conference. (2005) 634 645 2. Yu, X., Pu, K.Q., Koudas, N.: Monitoring k-nearest neighbor ueries over moving objects. In: ICDE. (2005) 631 642 3. Xiong, X., Mokbel, M.F., Aref, W.G.: Sea-cnn: Scalable processing of continuous k-nearest neighbor ueries in spatio-temporal databases. In: ICDE. (2005) 643 654 4. Tao, Y., Papadias, D., Shen, Q.: Continuous nearest neighbor search. In: VLDB. (2002) 287 298 5. Okabe, A., Boots, B., Sugihara, K.: Spatial tessellations: concepts and applications of Voronoi diagrams. John Wiley and Sons Inc. (1992) 6. Zhang, J., Zhu, M., Papadias, D., Tao, Y., Lee, D.L.: Location-based spatial ueries. In: SIGMOD Conference. (2003) 443 454 7. Tao, Y., Papadias, D.: Time-parameterized ueries in spatio-temporal databases. In: SIGMOD Conference. (2002) 334 345 8. Hjaltason, G.R., Samet, H.: Ranking in spatial databases. In: SSD. (1995) 83 95 9. Kulik, L., Tanin, E.: Incremental rank updates for moving uery points. In: GIScience. (2006) 251 268 10. Song, Z., Roussopoulos, N.: K-nearest neighbor search for moving uery point. In: SSTD. (2001) 79 96 11. Nutanong, S., Zhang, R., Tanin, E., Kulik, L.: The v*-diagram: a uery-dependent approach to moving knn ueries. PVLDB 1(1) (2008) 1095 1106 12. Brinkhoff, T.: A framework for generating network-based moving objects. GeoInformatica 6(2) (2002) 153 180