Int. J. Ad Hoc and Ubiquitous Computing, Vol. , No. ,
1
Dynamic Safe Regions for Moving Range Queries in Mobile Navigation Haidar AL-Khalidi* 1
Clayton School of Information Technology, Monash University, Clayton, Victoria 3800, Australia E-mail:
[email protected] *Corresponding author
David Taniar1 E-mail:
[email protected]
John Betts1 E-mail:
[email protected]
Sultan Alamri1 E-mail:
[email protected] Abstract: The cost of monitoring and updating the location of Moving Queries is very high, as the calculation of a range query needs to be re-evaluated whenever the query moves. Previous efforts to reduce this cost have proposed reducing the frequency of communication between query and server. However, because all possible objects continue to be surveyed using these approaches, substantial cost reduction is not possible. This paper introduces two novel techniques: the continuous Basic Safe Region, by calculating the closest objects to the border of the moving query, and the continuous Extended Safe Region, by calculating the intersections among several range objects. Inside these safe regions there is no need to update the query as the set of objects of interest does not change. We compare the size of the safe regions obtained using these two methods and show their potential to greatly reduce computations and communications cost in clientserver architectures. Keywords: Safe region; Moving range query; Query processing; Mobile navigation. Biographical notes: H. AL-Khalidi holds his Bachelor degree in Computer Science from AL-Mustansiriya University and a Master degree in Computer Science and Information Technology from School of Technology University, Iraq. He also holds a Post Graduate Diploma in Information Technology from Monash University, Australia. He is currently a PhD candidate in the Clayton School of Information Technology at Monash University, Australia. His research interests include spatial databases, moving query, approximate query, safe region and Petri Nets. D. Taniar holds Bachelor, Master, and PhD degrees all in Computer Science, with a particular speciality in Databases. His current research interests include mobile/spatial databases, parallel/grid databases, and XML databases. He recently released a book: High Performance Parallel Database Processing and Grid Dat-abases (John Wiley Sons, 2008). His list of publications can be viewed at the DBLP server (http://www.informatik. uni-trier.de/~ley/pers/hd/t/Taniar:David.html). He is a founding editor-in-chief of Mobile Information Systems, IOS Press, The Netherlands. He is currently an Associate Professor at the Faculty of Information Technology, Monash University, Australia. J. Betts obtained his PhD in operations research, Bachelor of Arts and Diploma of Education at Monash University; his Post Graduate Diploma in Mathematics and Mathematics Education at the University of Melbourne; and Graduate Diploma in Statistics and Operations Research at RMIT University. His research interests include stochastic simulation, inventory modelling and optimization. He is published in journals including Management Science, the Journal of the Operational Research Society and the International Journal of Production Economics. He is a Senior Lecturer in the Faculty of Information Technology at Monash University, Australia. S. Alamri received his Bachelor degree in Computer Science from King Khalid University, Saudi Arabia in 2007, and his Master degree in Information Technology from School of Engineering Mathematical Sciences, La Trobe University, Australia in 2010. He is currently a PhD candidate of the Clayton School of Information Technology at Monash University, Australia. His research interests include moving objects databases, query processing and spatial databases.
c 2012 Inderscience Enterprises Ltd. Copyright ⃝
2
H. AL-Khalidi et al.
1 Introduction Mobile navigation is one of the most common applications of mobile information services (Berg et al., 2008; Alamri et al., 2013a). It a technology that helps users navigate crowded roads while moving, guiding them to the best route, and answering their queries. There is also an increased demand for this technology due to the proliferation of mobile mapping and Internet search-capable devices. For mobile searches, different types of spatial moving queries have been used; such as Moving Range Query, Moving Nearest Neighbour Query and Moving Joining Query. The exponential nature of the problem search space means that the search process is computationally intensive. Also, the continuous updating of the query’s location can be prohibitively expensive, depending on the nature of the query and the data properties (Alamri et al., 2013b; Taniar et al., 2008). The relatively high complexity of query processing has led researchers to attempt to solve the problem by introducing the concept of a safe region (Cheema et al., 2011; Cho et al., 2013). In this paper, we will study the impact of the safe region concept on Moving Range Search (MRS) query processing in mobile navigation. A safe region is an area where the set of objects of interest does not change as long as the query remains inside it. The aim of the safe region is to reduce the number of the query location updates by reducing the number of queries to the server. Our main concern is how to keep the query result up to date while the user is moving and how to reduce to the minimum the server’s monitoring for the user. In response, we have introduced two new and efficient types of safe regions: Basic (Na¨ıve) and Extended (AL-Khalidi et al., 2013b). The contribution of this paper is first, to compare the Basic and Extended Safe Regions and second, to introduce a continuous Basic Safe Region method and compare it with a continuous Extended method while the query is moving. The comparison uses the total area of the safe region(s) as the performance measure. The size of the safe region is reported for the cases (a) when the user is not moving, or at the beginning of their move, and (b) when the user is moving over a distance and receives updated safe regions. The area of the safe region gives the following indications: (1) an approximation of the time over which a user does not need to update their location; (2) the distance a user can move without needing to be monitored by the server; and (3) the number of interest objects; when the total area of the safe region is small, many interest objects will appear in the result and vice versa when the total area of the safe region is big. Moving Range Search query represents one of the most important types of processing for spatial and geographical information system. The MRS query can be defined as: given a set of special objects, a query point and a range (radius), find all objects of interest within the radius of the query while the query moves. In MRS, the query is assumed to be constantly moving and the
objects are assumed to be static. Many user’s queries such as those related to traffic control, multimedia search engines, on-line search engines, Geographic Information System (GIS) and wireless sensor networks require an information system with an efficient implementation of MRS queries (Lee et al., 2013; Price, 2012; Ahmed and Kanhere, 2012). An example of moving queries using Location-Based Services (LBS) is a car driver who wants to find all petrol stations within a radius of ten kilometres from his/her location (Wu and Hsieh, 2012; Jayaputera and Taniar, 2005). Another example is a pedestrian searching for a takeaway food outlet within a 500 metre range while walking in the city. The rest of the paper is structured as follows. Section 2 introduces approaches used by previous researchers to reduce the cost of moving queries. The limitations of these approaches are discussed, and our proposed solution is introduced. Section 3 presents the theoretical background to Range Search Query and our previous work. Section 4 introduces our technique for constructing the safe region and calculating its area using the novel application of Monte-Carlo simulation. Section 5 presents experimental results. Section 6 concludes the paper and proposes future research.
2 Related work The problem of when to update a query location is a major concern for all mobile communication systems and location dependent applications (Ilarri et al., 2012). In this section, we review recently proposed methods and highlight their limitations in tracking and predicting moving query. The simplest update method to reduce monitoring of a user by the server is to allow the user to invoke the same query to the server at fixed time intervals (time-based location update mechanism) or each distance the user has travelled a prescribed distance (distance-based location update mechanism) (Bhide et al., 2002). However, problems with both methods are between each call to the server, query results may become out-dated. By constantly querying, regardless of whether it is needed, these methods may also result in excessive computations server-side as well as excessive communications between query and server Hu et al. (Hu, 2005) proposed a generic framework to handle continuous queries with safe regions whereby the location updates from mobile clients are further reduced. This study was limited in that it was based on the assumptions that queries are static which might not be feasible in real-world applications. Another approach proposed by Cheng et al. (Cheng et al., 2007), was a time-based location update mechanism which was designed to improve the temporal data consistency for the objects relevant to queries. To be able to send location updates more frequently, data objects with significance to the correctness of query results are required. However, this method had a main limitation:
Dynamic Safe Regions for Moving Range Queries in MN an object would repeatedly send location updates to the server when it is enclosed by a query region, that does not need it (Hsueh et al., 2009). Recently, (ALKhalidi et al., 2012) introduced two methods to obtain an approximate answer. These methods reduced the number of communications between the mobile device and the databases server by decreasing the number of query’s location updates. These methods are limited to a moving query that follows a specific path. In another study, (Jeung et al., 2010) proposed a method that can be used to pre-compute the query results in advance by predicting the movement of the client. This method, however, is adequate only for short-term prediction. In contrast, we recently proposed two techniques, Na¨ıve (Basic) and Extended Safe Regions, aiming to minimize the updating of a query’s location using the safe region concept (AL-Khalidi et al., 2013b). We construct a safe region formed by the intersection of range objects which allows the query inside it to move freely. The query needs to issue a location update only when it leaves the safe region. Low communication costs and higher scalability, which are the main advantages of the aforementioned solutions, are optimised using our technique. In this paper, a comparison between our techniques is conducted.
3 Background This section presents our previous methods of constructing safe regions. A brief explanation about the moving range query processing technique will be presented first.
3.1 Moving Range query processing Moving Range Search Query MRSQ (AL-Khalidi et al., 2013a; Agarwal et al., 2003) is a well-known query for geometric data structures. This type of query is used in Geographical Information Systems (GIS) and mobile navigation, and also in many other areas (Rofoee et al., 2012; Taniar et al., 2011; Ghadiri et al., 2011; Bustos and Navarro, 2009). MRSQ is applied to find all objects of interest within a given region or radius while the user moves. Most studies use a rectangular shape to indicate the region of the query because defining effective pruning rules is easier for the rectangular regions compared with circular regions (Cheema et al., 2012; Cho et al., 2012). However, in our work, we will use the circular shape region to surround the range search, because range search is characterized by having a radius with circular communication (transmission) behaviour. Let P be a set of objects of interest P ={p1, p2, ..., pn}, where P ̸= ∅ in 2- dimensional Euclidean space. q is the centre of the moving query (i.e., q is an elements of the 2- dimensional Euclidean space) and e is the radius of the range query, retrieve all objects within the distance e to q wherever q moves.
3
p9
p8
Safe region M1 e
M3 p4
Nd
e' q
p6
p1
p3
M5
Fd
p2
M2
M4
p7 M6
p10
p5
p11 SMDIST=Fd
Figure 1
Range safe region
Table 1 contains some symbols are frequently used in our manuscript, some have not appeared yet but will be clarified throughout this paper.
3.2 Our previous work We will review our previous work in constructing safe regions that solve the problem of continuous location updating of the query (AL-Khalidi et al., 2013b).
3.2.1 Range safe region The initial location of the moving query is considered first. When the query sends its location to the server, the server will calculate a safe region for this query depending on its location. The server needs to be informed about the query’s new location when the query leaves its safe region. Then, the server will construct a new safe region for that query. This is a discrete procedure which happens only when the query leaves its safe region asking the server to allocate a new safe region to it. The illustration below explains the process of finding the initial safe region, which is the first safe region given to the query after the query has been invoked.
3.2.2 Initial Basic Safe Region Consider that the first nearest object is outside the boundary of the moving query and far away from the range query. The query has to move this far distance toward the object before the object comes within the range search (boundary) of this query. In order to illustrate this, an example is given in Figure 1. p4 is the nearest object to the range boundary which falls outside it and Nd is the distance between p4 and the boundary of the query. At this point, the query should move the Nd distance until p4 becomes within the range query. Take into account p3 as the furthest object of interest of the moving query within the boundary of the query. In Figure 1, Fd is the distance between p3 and the boundary of the moving query. In this case, the query also has to move this far distance (Fd ) away from p3 before this object goes beyond the range search of this query. Hence, a moving query should move the distance of (Fd ) even when the object goes outside the range search
4
H. AL-Khalidi et al.
Table 1
Symbols used throughout this paper
Symbols
Definition
e e′ n pi q Fd HD LD MD M IN DIST (q, x) Nd P RP Rpi SM DIST (Nd ,Fd )
Radius of range query Radius of safe region number of object in data space pi ∈ P query point Minimum distance between the object falls just inside the range and the boundary of the range High Density (50 Objects) Low Density (10 Objects) Medium Density (30 Objects) Minimum distance between query q and x (x either object or minimum boundary rectangle) Minimum distance between the object falls just outside the range and the boundary of the range Set of objects of interest Set of range objects Range of pi Smallest amount between Nd and Fd
query. The safe region will then be a circular region around the query, the centre of which is the query’s initial location and its radius is the smallest distance between Nd and Fd (SM DIST (Nd , Fd )). Consequently, the server does not need to check the location of the query because it has not moved outside the safe region, which means that while the query does not go further than the SM DIST from its original location, there is no need to check its location. Figure 1 shows examples of the range safe region. All objects were indexed in R-tree (Manolopoulos et al., 2006). p3 and p4 represent the first and second closest objects to the boundary of the range query q respectively. { Fd if Fd < Nd SM DIST (Nd , Fd ) = (1) Nd otherwise Let e′ represents the radius of the safe region, e′ = SM DIST (Nd , Fd )
initial safe region
q
Figure 2
q'
p1
p2
Initial safe region
query which has been monitored; therefore, the location updates occur only when the query passes its specified safe region. In other words, the server assigns a safe region to the query and the query reports its location to the server only when it moves out of its safe region.
(2)
4.1 Continuous Basic Safe Region Using this scheme, q can move in any direction with a distance of e′ from its original location without affecting its result; in other words, q does not need to update its location while moving within radius e′ from its original location. The current result of the query is guaranteed to remain valid as long as the query remains inside its respective safe regions. The query will inform the server of its new location when it leaves its safe region and the server will pre-compute a new safe region for the query and send this new region to the moving query.
4 Safe region navigation
processing
in
mobile
In this section, we will illustrate our innovative and generic monitoring framework that solves the problem of frequent updating of the query location by taking a systematic approach. More specifically, in our approach, the server is aware of the location of the moving
When the query leaves its safe region, it will send its new location to the server. A new safe region will be calculated by the server based on the query’s new location. When the query leaves the safe region, there would definitely be an object on the boarder of the query. This object will either enters or leaves the range query and the SM DIST will be 0. Regarding equation 2, e′ will be equal to 0 which means that no safe region can be constructed. To overcome this problem, we introduce a scale parameter SP , which is equal to 1% km = 10 metre. This parameter will be the radius of the safe region when there is no safe region. Determining a 10 m radius for the constructed safe region will have an insignificant impact on the final result which can be ignored. Equation 1 then can be reformulated to be, 0.01 if Fd or Nd = 0 SM DIST (Nd , Fd ) = Fd (3) if Fd < Nd Nd otherwise
Dynamic Safe Regions for Moving Range Queries in MN
5
e
q
p1
MINDIST(q,p1)
Figure 3
Figure 4
Figure 5
Object treats as query
Figure 6
Extended Safe Region
Continuous safe region
Demonstration software calculating the area of a safe region corresponding to a moving query using Basic Safe Region
Figure 2 shows the initial safe region and how the continuous safe region is constructed. When the query moves to its first new location q ′ , the SM DIST = 0. According to equation 3, the SM DIST = 0.01. Figure 3 shows that when the query moves to D, many safe regions are created and allocated to the query. The appearance of one group of these safe regions will look like multiple layers of circles increasing by double radii each time. They are connected to each other on one side. These safe regions are created based on the object’s location, p2, which is on the boarder of the query and starts to move further away from the boarder. Meanwhile, the other group of safe regions will intersect with each other when the SM DIST value is changed from Fd to Nd or vice versa. Figure 4 shows a snapshot of our demonstration which calculates the size of the moving range query area using our Basic Safe Region. This is formed by taking the distance of the closest object to the boarder of the query.
4.2 Extended Safe Region The approach presented above assumes that the query will be outside its safe region when it moves by SM DIST from its initiated location. However, the fastest way that the query will leave its safe region is when it moves to the exact direction of the closest object (if the closest object is outside the boundary of the query) or moves to the exact opposite direction of the
closest object (if the closest object is inside the boundary of the query). The objects can be treated as the query, which means that the object is surrounded by a circle equal to the range search of the query, see Figure 5. p1 will be in the result set since the query moves inside the range of the object p1. But, p1 will be excluded from the result when q leaves the range of p1 (M IN DIST (q, p1) > e). Consequently, in this approach, the safe region will represent the whole range of p1, whereas with the previous approach (Basic Safe Region), the safe region will be the small circle, as shown in Figure 6. Each object (within and outside the range boundary) will be surrounded by a boundary range (circle or rectangle border depends on which type of range is used) equal to the range search of the query, see Figure 7. The intersection of these circles (or rectangles) will generate a polygon containing the query point. This polygon represents the Extended Safe Region. Figure 7 shows an irregular/rectangular shape containing the query point q. This polygon represents the Extended Safe Region. The new region is always bigger than the Basic Safe Region (AL-Khalidi et al., 2013b); this will give the moving query more space to move inside it without informing the server of its new location. By using this technique, the number of communications between the query(s) and the server(s) will be reduced, as well the number of location updates.
4.3 Calculating the area of the safe region Calculating the area of the safe region using the Basic method is simple, because the safe region is constructed as a circle. In the Extended Safe Region, the calculation
6
H. AL-Khalidi et al. Original Safe region
New Safe region
p1 q
p4 p3
p2
Figure 9
Demonstration software calculating the area of Extended Safe Region corresponding to a moving query
(a) Circular range query New Safe region
Original Safe region
e' q
p4
p1
p3
p2
(b) Rectangular range query
Figure 7
Extended Safe Region (overlapped objects)
objects. Also, A11 represents a safe region but without any object in the query result list (no-object safe region). When the query is within a range of one object (i.e. A1) and this range does not intersected with any other range, then the whole range object will represent a safe region for query q. A2 and A3 are two safe regions are generated by the intersection of two circles where A2 is the area of Rp5 with the exclusion of A3 (A2 = Rp5 − A3). While A3 is the intersected area between Rp5 and Rp3 (A3 = Rp3 ∩ Rp5). Since all the circles have the same radius e, then the intersection of the two circles is: √ d (e2 arccos( ) − d e2 − d2 ) × 2 (4) e Where d represent half the distance between the centres of the two circles. For more than two objects, the safe region is potentially formed as an irregular shape. As the area of these shapes cannot be calculated by a simple analytical expression, Monte-Carlo simulation (Ripley, 1987) is used. The area calculation requires the queries to be specified within a bounding region of a known size. Multiple points within the bounding region are then generated at random, with the number falling inside the safe region being counted. The area of the safe region (SR) is then calculated as: sum of points in SR × total random points
Figure 8
Types of safe regions
of the safe region is a straightforward geometrical problem when it is comprised of one or two objects. However, for more than two objects, the calculation of the safe region is complex as the overlapping regions may have highly irregular forms. For this reason, we propose to calculate these areas using Monte-Carlo simulation. Consider a set RP = {Rp1, Rp2, ..., Rpn} of n circles, whose centres are {p1, p2, ..., pn} and radius is e. The circles in RP may partially overlap. Figure 8 shows a variety of safe regions formed by 5 objects, P = {p1, p2, p3, p4, p5} within a space E and RP = {Rp1, Rp2, Rp3, Rp4, Rp5}. Each A represents a safe region. For example, A1 represents one circle safe region while the others (A2, A3, ..., A10) represent safe regions resulting from the overlap (intersect) of the range
area of bounding region.
(5)
Figure 9 shows a snapshot of our demonstration which calculates the size of the area formed by the intersection of a number of circles. This demonstration is very flexible, making it possible for the user to change the following parameters: 1. The number of objects within the data space of 10km×10km. 2. The radius of the range query. 3. Whether the query is static or moving (e.g, 0 for static query and more than 0 for moving query). 4. The accuracy of the simulation method, based on the number of random points used to evaluate the area of the safe region. (For the results reported in this paper, this was 100,000 over the 100km2 region).
Dynamic Safe Regions for Moving Range Queries in MN
7
query moves outside the safe region, a new safe region should be allocated to the query with the updated result list.
Continuous Basic Safe Region Continuous Extended Safe Region
Figure 10 Continuous Basic V Continuous Extended safe regions
4.4 Comparisons between Basic and Extended When the circular method is used in range search, the Basic Safe Region will definitely be inside the Extended Safe Region; both are connected with each other on one side. The Extended Safe Region method creates an irregular shape that represents a safe region. This shape has many edges/sides that are formed as a result of the intersecting borders of the range objects being treated as a query. The closest edge to the query is formed as the result of the intersected objects’ borders with the closest object to the boarder of the query. Consequently, the distance between the closest edge to the query is SM DIST , which is the radius of Basic Safe Region. Therefore, the Basic Safe Region will be permanently smaller than the Extended Safe Region; both are connected with each other on one side. In Figure10, the black circles refer to the Basic Safe Region while the gray areas represent the Extended Safe Region; both are for a moving range query.
Algorithm 1 Safe region algorithm 1: /* q: query point and e: the Euclidean distance threshold */ 2: Compute the range search of q and store the objects of interest in the result list 3: Order the result list ascendingly 4: for all pi do 5: if M IN DIST (p1, pi) > 2e then 6: prune pi 7: else 8: add pi to the safe-object list 9: end if 10: end for 11: Surround any object in the safe-object list by a circle with radius e 12: The overlapped area which has q is the safe region of q 13: To find the size of the safe region, use Monte-Carlo simulation method 14: To find when and where the query will leave the safe region, use linear motion function method
(a) initial safe region
Figure 11
(b) continuous safe region
Our demonstration (Basic Safe Region)
4.5 Algorithm for determining Extended Safe Region Algorithm 1 represents the structure of the Extended Safe Region for a moving range query. In the algorithm, the set of the objects of interest will be found first, then the safe region will be calculated. If pi is the closest object to the query q and M IN DIST (q, pi) ≤ e, then any object pj will be excluded from the calculation of the safe region if M IN DIST (pi, pj) > 2e (AL-Khalidi et al., 2013b) Any object that falls above 2e from the closest object of interest (p1) to the query will not affect the safe region. So this object(s) will be pruned. The objects within distance 2e from p1 will be surrounded by a circle with radius e, then the overlapped region which has q will represent the safe region of the q at this time. When the
(a) safe region when query is (b) safe regions when query is static moving
Figure 12
Our demonstration (Extended Safe Region)
8
H. AL-Khalidi et al.
5 Experimental results Several experiments were conducted to evaluate our proposed algorithms. A synthetic dataset is used to overcomes the limitation of Euclidean distance in realworld situations. We have created three different density environments (low = 10 objects, medium = 30 objects and high = 50 objects) to measure the performance of our safe region method in a data space of 10km×10km. The performance measure is the area of the (Basic and Extended Safe Regions). These are calculated for the case of a static query and also for a moving query, travelling linearly 10km through the data space. The purpose of these experiments is to: 1. Show the accuracy of our simulation method. 2. Compare the size of the safe region(s) for both of the Basic and the Extended Safe Regions methods. 3. Show the area of the safe regions formed by the overlapped circles corresponding to the range of each object and the impact of different factors such as objects’ density, range query size and the moving distance of the query on the size of the safe region in our method. In the simulation trials that follow, 100 random queries were generated for each trial, created by varying the parameters: radius size; object density (low, medium, high); safe region type (Basic or Extended); and whether query is static or moving. In our previous paper (AL-Khalidi et al., 2013b), we showed that the area calculations of overlapping regions obtained by discrete-event simulation was almost as precise as the analytical method for the case of two object ranges overlapping. In the case of a region formed by more than two objects, no tractable analytical model exists. Figures 11 and 12 show examples of the Basic and Extended Safe Regions for static and moving queries generated by our simulation software using the same objects and query locations.
5.1 Initial safe region Figure 13 shows the area of Basic and Extended Safe Regions, when the radius of range search varies from 1km to 6km and the query is static. The figure shows the average outcomes generated by 100 experiments at each setting. The error bars in all figures have been set to ±1 standard error. However the clear separation between the lines all figures indicate that the improvement in area obtained by using the Extended Safe Region, over the Basic Safe Region, is highly significant in all cases tested. We found that, a decrease in the size of the safe region mostly occurs when the range or number of objects increases. Regardless of the different environment densities, when the range search is small,
the majority of the safe region size comes from the area which does not have any object(s) around the query. Table 2 summarizes the results shown in Figure 13. LD, MD and HD refer to Low, Medium and High density environments respectively. It shows that in all three environments, the initial Extended Safe Region is larger than the initial Basic Safe Region. Also, table 2 shows that when the radius is small (i.e, radius ≤ 20% of the average dimension of the data space) there are no object(s) around the query most of the time. In other words, the query in some circumstances (i.e. Extended Safe Region) can move freely to cover 50% of the data space without any update of its location.
5.2 Continuous safe region Figures 14 shows the total area of the safe region encompassing a moving 10 km using the Basic and Extended Safe Region methods. The experiments show that varying the number of objects in the data space has more impact than varying the range search, especially in medium and high density environments. The effects of varying the range can be noticed only when the radius is small. This is because the no-object safe region has a large impact when the radius is small. Table 3 presents the average of all the results used to construct Figure 14 (continuous Basic and Extended method).
6 Conclusion We have proposed a continuous range safe region method for mobile navigation with moving queries. Our contributions can be summarized as follows: Firstly, we have proposed a new technique to construct a safe region, termed the Range Safe Region. The aim of this technique is to avoid any communication between query and server while the query moves within the specified safe region. Secondly, we have extended the Range Safe Region to reduce the amount of supplementary communication. Using these techniques reduces the need for continuous monitoring of the query, and eliminates the need for a user to follow a defined path. We use a discrete-event simulation method with a high degree of accuracy to calculate the area of the safe regions that have been formed by overlapping range objects. Finally, we compare the Basic and Extended safe regions when the query is static and when it is continuous. The experimental results show that our method reduces the amount of query monitoring by the server. The new method also allows a user to move within the safe region without revealing their location, thus preserving their privacy. There are several directions for future research: These include investigating the issue of the number of location updates; considering the predicted location of the query inside the safe region and when the query leaves it; and examining the direction from which the query will leave its safe region.
Dynamic Safe Regions for Moving Range Queries in MN 100.00
10.00
1.00
0.10
0.01
100.00
Extended Basic
10.00
1.00
0.10
0.01 1
2
3
4
5
6
0.10
2
3
4
5
6
1
2
3
4
5
6
Query Radius Km
(b) Medium 30 Objects
(c) Low 10 Objects
The mean area (km2 ) of the initial safe regions corresponding to Figure 13
Basic Safe Region in LD environment Extended Safe Region in LD environment Basic Safe Region in MD environment Extended Safe Region in MD environment Basic Safe Region in HD environment Extended Safe Region in HD environment
1
2
3
4
5
6
3.68 57.04 0.41 17.52 0.22 6.62
1.58 13.88 0.11 1.50 0.05 0.52
0.69 6.09 0.10 0.83 0.03 0.41
0.53 4.70 0.06 0.75 0.03 0.33
0.42 4.24 0.09 0.70 0.02 0.28
0.70 6.35 0.06 0.82 0.03 0.36
1.00
0.10
Extended Basic
100.00
Area of Query Region Km2
10.00
Area of Query Region Km2
100.00
100.00
Area of Query Region Km2
1.00
Initial safe region
Radius
10.00
1.00
0.10
Extended Basic
0.01
0.01 1
2
3
4
5
6
(a) High 50 Objects
Figure 14
10.00
1.00
0.10
Extended Basic
0.01 1
Query Radius Km
Table 3
10.00
Query Radius Km
(a) High 50 Objects
Figure 13
Extended Basic
0.01 1
Query Radius Km
Table 2
Area of Query Region Km2
Extended Basic
Area of Query Region Km2
Area of Query Region Km2
100.00
9
2
3
4
5
6
1
2
Query Radius Km
3
4
5
6
Query Radius Km
(b) Medium 30 Objects
(c) Low 10 Objects
Total area of safe region crossed by moving query
The mean area (km2 ) of the continuous safe regions corresponding to Figure 14
Radius Basic Safe Region in LD environment Extended Safe Region in LD environment Basic Safe Region in MD environment Extended Safe Region in MD environment Basic Safe Region in HD environment Extended Safe Region in HD environment
1
2
3
4
5
6
20.7 79.9 6.7 52.1 3.8 33.9
11.9 56.2 3.5 15.9 2.0 9.5
9.6 38.4 2.9 12.7 1.6 7.6
8.7 32.4 2.8 12.4 1.5 7.1
8.0 32.6 2.5 12.2 1.5 7.2
8.9 38.4 3.0 13.7 1.7 8.0
References Agarwal, P. K., Arge, L., and Erickson, J. (2003). Indexing moving points. J. Comput. Syst. Sci., 66(1):207–243.
Ahmed, S. and Kanhere, S. S. (2012). On the characterisation of vehicular mobility in a large-scale public transport network. Int. J. Ad Hoc Ubiquitous Comput., 11(2/3):68–81. AL-Khalidi, H., Abbas, Z., and Safar, M. (2013a). Approximate range query processing in spatial
10
H. AL-Khalidi et al.
network databases. Multimedia Systems, 19(2):151– 161. AL-Khalidi, H., Taniar, D., Betts, J., and Alamri, S. (2013b). On finding safe regions for moving range queries. Mathematical and Computer Modelling, 58(56):1449 – 1458.
Ghadiri, N., Baraani-Dastjerdi, A., Ghasem-Aghaee, N., and Nematbakhsh, M. A. (2011). Optimizing the performance and robustness of type-2 fuzzy group nearest-neighbor queries. Mobile Information Systems, 7(2):123–145.
AL-Khalidi, H., Taniar, D., and Safar, M. (2012). Approximate algorithms for static and continuous range queries in mobile navigation. Computing, pages 1–28. http://dx.doi.org/10.1007/s00607-012-0219-7.
Hsueh, Y.-L., Zimmermann, R., and Ku, W.-S. (2009). Adaptive safe regions for continuous spatial queries over moving objects. In Database Systems for Advanced Applications, volume 5463 of Lecture Notes in Computer Science, pages 71–76. Springer Berlin / Heidelberg.
Alamri, S., Taniar, D., and Safar, M. (2013a). Indexing moving objects for directions and velocities queries. Information Systems Frontiers, 15(2):235–248.
Hu, H. (2005). A generic framework for monitoring continuous spatial queries over moving objects. In SIGMOD, pages 479–490.
Alamri, S., Taniar, D., Safar, M., and AlKhalidi, H. (2013b). A connectivity index for moving objects in an indoor cellular space. Personal and Ubiquitous Computing, pages 1–15. http://dx.doi.org/10.1007/s00779-013-0645-3.
Ilarri, S., Mena, E., Illarramendi, A., Yus, R., Laka, M., and Marcos, G. (2012). A friendly location-aware system to facilitate the work of technical directors when broadcasting sport events. Mobile Information Systems, 8(1):17–43.
Berg, M. d., Cheong, O., Kreveld, M. v., and Overmars, M. (2008). Computational Geometry: Algorithms and Applications. Springer-Verlag TELOS, Santa Clara, CA, USA, 3rd ed. edition.
Jayaputera, J. and Taniar, D. (2005). Data retrieval for location-dependent queries in a multi-cell wireless environment. Mob. Inf. Syst., 1(2):91–108.
Bhide, M., Deolasee, P., Katkar, A., Panchbudhe, A., Ramamritham, K., and Shenoy, P. J. (2002). Adaptive push-pull: Disseminating dynamic web data. IEEE Trans. Computers, 51(6):652–668. Bustos, B. and Navarro, G. (2009). Improving the space cost of k-nn search in metric spaces by using distance estimators. Multimedia Tools and Applications, 41(2):215–233. Cheema, M. A., Brankovic, L., Lin, X., Zhang, W., and Wang, W. (2011). Continuous monitoring of distancebased range queries. IEEE Trans. on Knowl. and Data Eng., 23(8):1182–1199. Cheema, M. A., Zhang, W., Lin, X., Zhang, Y., and Li, X. (2012). Continuous reverse k nearest neighbors queries in euclidean space and in spatial networks. The VLDB Journal, 21(1):69–95. Cheng, R., Lam, K.-Y., Prabhakar, S., and Liang, B. (2007). An efficient location update mechanism for continuous queries over moving objects. Information Systems, 32(4):593 – 620. Cho, H.-J., Choe, S.-K., and Chung, T.-S. (2012). A distributed approach to continuous monitoring of constrained k-nearest neighbor queries in road networks. Mobile Information Systems, 8(2):107–126. Cho, H.-J., Kwon, S. J., and Chung, T.-S. (2013). A safe exit algorithm for continuous nearest neighbor monitoring in road networks. Mobile Information Systems, 9(1):37–53.
Jeung, H., Yiu, M. L., Zhou, X., and Jensen, C. S. (2010). Path prediction and predictive range querying in road network databases. The VLDB Journal, 19(4):585– 602. Lee, W.-I., Pyun, J.-Y., Lee, Y. S., and Lee, S.-W. (2013). Relative velocity based vehicle-to-vehicle routing protocol over ad-hoc networks. Int. J. Ad Hoc Ubiquitous Comput., 12(1):14–22. Manolopoulos, Y., Nanopoulos, A., Papadopoulos, A. N., and Theodoridis, Y. (2006). R-Trees: Theory and Applications. Springer, Berlin Heidelberg, New York. Price, M. (2012). Mastering ArcGIS. Science, New York, fifth edition.
McGraw-Hill
Ripley, B. D. (1987). Stochastic simulation. John Wiley & Sons, Inc., New York, NY, USA. Rofoee, B. R., Fleury, M., Ghanbari, M., and Qadri, N. N. (2012). A flexible family of multi-path routing protocols over a manet. Int. J. Ad Hoc Ubiquitous Comput., 10(1):22–38. Taniar, D., Leung, C. H. C., Rahayu, W., and Goel, S. (2008). High Performance Parallel Database Processing and Grid Databases. Wiley Publishing, New Jersey. Taniar, D., Safar, M., Tran, Q. T., Rahayu, W., and Park, J. H. (2011). Spatial network rnn queries in gis. Comput. J., 54(4):617–627. Wu, H. and Hsieh, W. (2012). Location-based vehicular moving predictions for wireless communication. Int. J. Ad Hoc Ubiquitous Comput., 10(4):197–206.