Paper Menu >>
Journal Menu >>
Int. J. Communications, Network and System Sciences, 2011, 4, 313-322 doi:10.4236/ijcns.2011.45036 Published Online May 2011 (http://www.SciRP.org/journal/ijcns) Copyright © 2011 SciRes. IJCNS A Dynamic Interval Based Circular Safe Region Algorithm for Continuous Queries on Moving Objects Shengsheng Wang1, Chen Zhang2 1College of Computer Science and Technology, Jilin University, Changchun, China 2Department of Com p ut er Information Systems, Bryant University, Smithfield, Rhode Island, USA E-mail: wss@jlu.edu.cn, czhang@bryant.edu Received February 19, 2011; revised April 3, 2011; accepted April 16, 2011 Abstract Moving object database (MOD) engine is the foundation of Location-Based Service (LBS) information sys- tems. Continuous queries are important in spatial-temporal reasoning of a MOD. The communication costs were the bottleneck for improving query efficiency until the rectangular safe region algorithm partly solved this problem. However, this algorithm can be further improved, as we demonstrate with the dynamic interval based continuous queries algorithm on moving objects. Two components, circular safe region and dynamic intervals were adopted by our algorithm. Theoretical proof and experimental results show that our algorithm substantially outperforms the traditional periodic monitoring and the rectangular safe region algorithm in terms of monitoring accuracy, reducing communication costs and server CPU time. Moreover, in our algo- rithm, the mobile terminals do not need to have any computational ability. Keywords: Location Based Service, Moving Object Database, Continuous Spatial Query 1. Introduction The development of technology has made it possible to track moving objects such as vehicles, aircrafts, vessels, wildlife, and human objects such as firefighters in a fire field. Technologies such as global positioning system (GPS), radio-frequency identification (RFID), cellular wireless networks (such as commercial cellular phone networks) and even triangulated wireless fidelity (Wi-Fi) networks can all provide location information in real- time, although at different precisions with different ef- fective ranges. Two major trends can be identified to manage the large amount of location and property information that varies with time: moving object databases (MOD) and data stream technology (DST). The first approach im- plies extending traditional database techniques with models and index structures suitable to track the loca- tions of the moving objects efficiently. The second ap- proach focuses on the processing of continuous location updates as they arrive. The boundary between these two approaches is not always clear in relation to the topic of this survey: Both propose alternatives to classical data- base techniques, which are not considered appropriate to manage the continuously changing locations of the mov-- ing objects [1]. Our research will focus on the MOD ap- proach but can be easily modified to adapt to the DST approach as well since our Dynamic Interval Based Cir- cular Safe Region (DIBCSR) algorithm requires the minimum frequency of location updates which can be provided by both approaches. MOD is a system that performs storage management and query analysis on time-variable spatial information of moving objects [2-4] which combines multiple disci- plines and research areas including geographical infor- mation systems (GIS), spatial databases, spatial-temporal databases, computer graphics, computational geometry, artificial intelligence and mobile computing. Application of MOD requires the optimal efficiency of the queries which can only be provided by continuous spatial-temporal queries. A regular spatial-temporal query only returns a single result set. In contrast, a continuous spatial-temporal query returns result sets continuously from the registration to the cancellation of the query, which is called the effective period of the query. Even if the query conditions remain unchanged during the effect- tive period, the query result must be updated continu- ously due to the continuous movement of the queried objects. Here are two examples of continuous spatial- temporal queries which provide commonly used LBS S. S. WANG ET AL. Copyright © 2011 SciRes. IJCNS 314 such as range query or the k-nearest neighbor (kNN) query: 1) List all vehicles that appear in region R in the next 10 minutes. 2) Continuously mark the ten closest vehicles to gas station number five. These types of queries are not commonly supported by traditional relational database engines. In order to facili- tate these continuous spatial-temporal queries, a MOD engine must implement the query processing and ideally, with optimal performance at a low cost. 2. Related Works Performance of the dynamic updates of the query result set during the effective period is the main research topic of MOD and spatial-temporal reasoning. In order to per- form continuous query optimization in a distributed sys- tem, not only the query cost must be minimized, the communication cost for updating location information of the terminal devices must also be minimized. However, most of the previous works on continuous queries have focused on reducing the query cost and has ignored the communication cost [5-9], in which the occasions for reporting location information are determined by the terminal device at fixed intervals or when the object’s location (constant distance interval) experiences a sig- nificant change. This class of uniform time/distance in- terval strategies has the following weaknesses: 1) The location updates are not adaptive to queries. When queries are scarce or there are no queries at all, a large amount of communication bandwidth and battery power of the terminal device may be wasted on the up- dates. 2) Low efficiency of queries could cause inconsistency with reality. In the periodical update strategy, improving the consistency of the query result with reality relies on the location update frequency increase. This means higher communication costs and may even make the improve- ment impossible because of the bandwidth and network delay limitation. 3) Unbalanced workload is applied on the server. In order to improve the reality consistency, the server must update large amounts of location information constantly and recalculate all the queries. An overloaded server us- ually means low responsiveness and poor reliability. Hu, et al. [10] proposed a continuous query update strategy based on a rectangular safe region (RSR) me- thod which can alleviate the previous three problems. However, with analysis and experiments, we found that this strategy requires considerable computation power on terminal devices. This performance bottleneck may be- come more significant with a larger query load. We propose an improved dynamic interval based cir- cular safe region (DIBCSR) strategy to replace the RSR strategy. In our strategy, the location update information is updated dynamically by the server and the terminal devices do not need to download the safe region infor- mation. Experiments show that our strategy eliminates the computation requirements of the terminal devices with equal or better system performance than RSR stra- tegy. Moreover, most of the previous studies only support one specific query type, such as either range queries kNN queries but not both. Our proposed DIBCSR algo- rithm supports both range queries and kNN queries. 3. Safe Region Based Location Updates Figure 1 demonstrates the infrastructure of a moving object query system. The kernel of the system is the con- trol center (the main server of the system) in the center of the figure which runs the MOD engine, collects location information, handles continues queries and provides query results to the application servers to the right of the figure. Therefore, the major computation workload is applied to the main server/control center of a MOD system. For simplicity, we refer to the main server/control center as server in this paper. Terminal devices, which are the monitored moving objects, obtain their own location information from the GPS system and transmit it to the server via a wireless communication network. The whole system’s timeliness and efficiency is affected by the wireless communication bandwidth. The location information updates are often the bottleneck because of the limited wireless bandwidth and the high sampling rate in the traditional uniform time/distance interval strategies. The idea behind the rectangular safe region (RSR) al- gorithm [10] is to define a rectangular safe region for every object according to the registered query and the latest location obtained. As long as the object’s motions do not exceed its safe region, all the query result sets of the object remain unchanged (Figure 2). The terminal device is informed of the safe region assignments dy- namically. Hence when a terminal device finds that it has exceeded the safe region, it will report its new location information. E.g., when an object a in Figure 2 has moved out of its safe region of Sa to location a', it will report its new location to the server which will recalcu- late the results of a continuous k-nearest-neighbor (kNN) query Q1 and a range query Q2. Through analysis and experiments, we found that al- though the RSR algorithm is effective, it has the follow- ing weaknesses which can be improved: 1) RSR requires that the terminal device has memory S. S. WANG ET AL. Copyright © 2011 SciRes. IJCNS 315 Figure 1. Infrastructure of the MOD system. Figure 2. Rectangular safe region. to store its current safe region and computing power to determine whether it has exceeded the safe region. However, in practice, many low-cost terminal devices (e.g. a GPS dog collar) do not have memory and com- puting power in addition to GPS satellites communica- tion. 2) In RSR, data communication is bidirectional. The terminal devices not only need to upload location infor- mation to the server, but also need to download safe re- gion information from the server. When the query fre- quency increases, the frequency of safe region download to the terminal devices increases. When the query fre- quency is high enough, the communication cost may be even worse than the uniform time interval (UTI) strategy. We have a detailed analysis of this problem in Section 5.2. 3) Computations involved in the RSR strategy are complicated, especially for kNN queries. On the observation of these problems, we propose a new continuous query algorithm. We define the safe re- gion of object o (referred to as o.sr) as a circle with the center at the location of the object and the radius of o.r (Figure 3). Assume the maximum speed of the object is o.maxspd, then the continuous query result of query q will not be affected within the time interval of o.r/o. maxspd. Hence the server can issue a location report query to the terminal device at the time of (o.r/o.maxspd - δ) where δ is the sum of communication and computation delays. In comparison, the advantages of our DIBCSR strat- egy are: 1) The terminal device does not need to have any com- q o.sr o o.r o.maxspd Figure 3. Location update of a moving object with circular safe region under continuous query. puting power. The only task of the terminal device is to report its location upon the request of the server. This is determined by our main algorithm which is given in Sec- tion 4.1. Moreover, the location update sampling re- quests are distributed by the server. Therefore, when the sampling strategy needs updating, such as when safe regions are reassigned because of objects’ movements, only the server is affected and the communication cost will not be affected. 2) The algorithm determining the assignment of a cir- cular safe region is simpler than a rectangular one. There- fore the computation is reduced for safe region assign- ments. We provide the detailed safe region assignment algorithms for continuous range queries and continuous kNN queries in Sections 4.2 and 4.3 respectively. 3) The updates of safe regions have been minimized with the selection of circular shape safe regions and therefore the communication cost is minimized. We pro- vide mathematical analysis in Section 5.1. 4) The communication cost is reduced in comparison with the RSR strategy. Detailed analysis of this feature is provided in Section 5.2. 5) Computations involved in the RSR strategy are complicated, especially for kNN queries. In contrast, computations are much more concise in our DIBCSR strategy. 4. Dynamic Interval Based Location Updates We use a C++/Java style pseudo code syntax, including comment syntax of double slash, to represent the algo- rithms in a more concisely and precisely. Properties of the moving object o and continuous query q are ex- plained in Table 1 and Table 2. A separate process will be responsible for determina- tion of the objects that are due for reporting new loca- tions and sending the requests. The main algorithm S. S. WANG ET AL. Copyright © 2011 SciRes. IJCNS 316 Table 1. Properties of a moving object. q.region Query region of a range query q.result Query result set q.effUTI the query effective period o.circle.p the center of the circular query region o.circle.r the radius of the circular query region Table 2. Properties of a continuous query. o.p Last reported object location o.r Radius of the object safe region o.sr Object safe region o.maxspd Maximum speed of the moving object o.upt Next location update time of the moving object which runs on the server is as following: Algorithm 1. Main algorithm for continuous query processing: //OList is the object list, QList is the query list while (received query q and current time t within q.effUTI) do { if (q is newly registered) then { //new a query q for processing, either //range or kNN query NewQuery(q); } if (q is cancelled) then remove q from QList; if (q is location update of object o) then { //update safe region of object o and //related query re- sult sets UpdateSR(QList, o); o.upt = t + o.r/o. maxspd - delay; } } UpdateSR(QList, o) { //range query location updates processing Update- SRA(QList, o); //kNN query location updates processing Update- RSR(QList, o); } 4.1. The Main Algorithm for Continuous Query Processing Both continuous range query and continuous kNN query are supported by our strategy. A continuous range query is one that returns all the objects in q.region within the query effective period where query region can be either rectangular or circular. A continuous kNN query is one that returns the closest k objects to the query location. An ordered kNN query requires the results to be returned in increasing order and an unordered kNN query does not request the results to be in order. An ordered kNN query is what we will consider in this paper and which is more complicated than an unordered kNN query. These two different types of continuous queries require different new query processing and location update processing algorithms which we present in different sections as fol- lows. 4.2. Continuous Range Queries The query processing and location update algorithm for continuous range queries are as follows: Algorithm 2. New range query processing NewQuery(q) //q is a range query { for (o OList) do { qResult = Req(q, o.sr); //query result if (qResult = “Y” ) then q.result= q.result {o}; // added to the result set of q // if the query result of is undecided if (qResult = “U” ) then { Query location of object o; //object o must report immediately //recalculation is then performed. UpdateSR(QList, o); } } } In a range query, the Req function in Algorithm 2 which is the query result of safe region is defined as if 5.,. Req,. if 5.,. otherwise YRCCqr osrPPI q osrNRCCqrosrDC U (1) A return value of “Y” indicates that the safe region is inside the query region and therefore object o is within the result set. A return value of “N” indicates that the safe region is outside of the query region and therefore the object o is not included in the result set. A return value of “U” indicates that the safe region intersects with the query region. The result is therefore undecided. Hence the precise location of the object needs to be ob- S. S. WANG ET AL. Copyright © 2011 SciRes. IJCNS 317 tained in order to recalculate. The region connection cal- culus (RCC) serves for qualitative spatial representation and reasoning and RCC-5 is a widely used binary rela- tionship model in automated spatial reasoning [11] with five binary relationships {DC, PO, PP, EQ, PPI} (dis- creteness, proper overlap, proper part, equivalence, proper inclusion) demonstrated in Figure 4. The function RCC5(X, Y) returns the RCC-5 relationship of X and Y for topology analysis. Algorithm 3. Range query update //The functionality is to update the range query //result set and check/update the object safe //region by invoking the SafeRegion sub //function. UpdateSRA(QList, o) { o.r = ; for (q QList and q is a range query) do { // If safe region function returns r>0 // then o is within the result set of q if SafeRegion(q, o, r) then{ q.result = q.result {o}; return true; } } } Algorithm 4. The calculation of safe region for range query The purpose of this algorithm is to calculate the safe region radius and decide the query result set. The safe region radius r is returned for the object o under query q. The Boolean return value of true or false indicates wheth- er object o is within the query result set. SafeRegion(q, o, & r) { if (q is a rectangular range query) then { //Three circumstances exist, //as demonstrated in Figure 5. //A: o.p is inside query region I //B: o.p is inside query region II //C: o.p is inside query region III if (o.p is inside query region I) then { r = distance from o.p to the closest edge of the rectan- gular query region; return true; } else if (o.p is inside query region II) then r = distance from o.p to the closest edge of the rectan- gular query region; else // o.p is inside query region III r = distance from o.p to the closest vertex of the rec- Y X Y X Y X DC PO PP X Y PPI XY EQ Figure 4. Binary spatial relationships in RCC-5. I II II II II III III III III A B C Figure 5. Rectangular range query safe region. tangular query region; return false ; } else if (q is a circular range query) then { //Two circumstances exist, //as demonstrated in Figure 6. //A: object o is inside the //circular query region //B: object o is outside of the //circular query region doq= dist(o.p, q.circle.p); //dist(a, b) represents the distance //between point a and point b. doq is the //distance between object o and query q. r = ABS(doq - q.circle.r); if (doq <= q.circle.r) then return true; else return false ; } } Theorem 1: When the motion of the object in Algo- rithm 4 does not exceed the safe region, the result set of S. S. WANG ET AL. Copyright © 2011 SciRes. IJCNS 318 q o o o 1 p B Figure 6. Circular range que ry safe region. the continuous range query does not change. Proof: Apparently, under the circumstance, o.sr does not intersect with q.r. Hence object o’s motion inside o.sr will not affect the query result set. 4.3. Continuous kNN Query Algorithm 5. An ordered kN N query processing NewQuery(q) //q is an ordered kNN query { 1) Decide the object list OList near query location q.p based on the spatial-temporal index of moving objects; /*e.g. objects within neighboring rectangles can be se- lected in an R*-tree indexed system. This step reduces the object set that is processed to reduce the following computation.*/ 2) Perform sorting to the objects in OList by dist (o.p, q.circle.p) ascending, the nearest k + 1objects are saved in q.result; /*Quick Sort algorithm is applied and the Compare function is given below. The reason why we save the (k +1)th object is for the calculation of the safe region.*/ 3) Update the safe regions for all objects; } Algorithm 6. Distance comparison algorithm for ob- jects For simplicity, we use q to represent q.circle.p and object names o1, o2 to represent the object location o1.p and o2.p in this section. // Function returns –1 when o1 is nearer than o2; // re- turns 1 when o1 is farther than o2. // Since all calculations are floating-point, we do // not consider the equal scenario. Compare (q, o1, o2) { if ( dist(q, o1) + o1.r < dist(q, o2) – o2.r ) then return –1; if ( dist(q, o1) – o1.r > dist(q, o2) + o2.r ) then return 1; Query locations of o1, o2; //Distances of safe regions to q overlaps, //query pre- cise locations for further //comparison. o1.r = 0; o2.r = 0; if (dist(q, o1) < dist(q, o2) ) then return –1; else return 1; } 4.4. Circular Safe Region Calculation and Updates for Continuous kNN Queries Following is the formula to update the safe region radius for the ith object in the object set ascending sorted by distance to ordered kNN query q in Algorithm 5. Figure 7 shows an example of safe regions assignment in such an ordered kNN query q. The first object in the result set is q and the extra object ok+1 is kept for calculation of safe region radius of ok. 11 if 0, in the result set, then ,, min. ,, 22 . if , out of the result set, then min. ,, ii ii i i ii ik disto odisto o or or ik or distoqquarq (2) where quar(q) is the radius of the quarantine region for query q which surround and only surround the safe re- gions of all objects in the result set. Therefore, quar (q) = dist(ok, q) + ok. Figure 8 shows how such a quarantine region is assigned for such an ordered kNN query q. Hence we have the following property: either in or out of the kNN query result set (inside or outside the quarantine region), none of the safe regions of objects overlaps with each other. Therefore, when all the objects are moving inside their own safe regions, the result set and its order are not affected. 4.5. Location Update Processing for Continuous kNN Queries For continuous kNN query, when object location is up- dated, one of the four following scenarios will happen. The detailed update algorithm is given in Algorithm 7: 1) Original location was inside the quarantine region and new location is also inside the quarantine region: order adjustment in the result set is necessary. 2) Original location was outside the quarantine region but new location is inside the quarantine region: a new S. S. WANG ET AL. Copyright © 2011 SciRes. IJCNS 319 o k o i q o 1 Figure 7. Safe regions assignment in an ordered kNN query. o k p o 1 quar(p) …… o k+1 Figure 8. Quarantine region assignment for an ordered kNN query. query is necessary to recalculate the complete result set. 3) Original location was inside the quarantine region but new location is outside the quarantine region: same as 2). Both original location and new location are outside the quarantine region: only need to update the object’s safe region. Algorithm 7. Location update processing for kNN query //Purpose is to update safe region and result set UpdateRSR(QList, o) { for ( q QList and q is a kNN query ) do { if ((o q.result and dist(o, q) quar (q)) or (o q.result and dist(o,q) > quar (q))) then { Execute Algorithm 5; //Processed as a new query continue; } else if (o q.result and dist(o, q) quar (q)) then { //Original result set of q is {oi| i = 1,···, k}, //if object o’s original index is i and //index after the new sorting by dist(q, o) //is i' Execute Algorithm 5 within the range of 1,,,,1, when 1,,,,1, when iiii ii iiii ii Use result set from Algorithm 5 to replace the respec- tive subset in the original result set; continue; } else //o q.result and dist(o, q) > quar (q) { Adjust o.r following the Req function given by Equa- tion (1); continue; } } } 5. Analysis and Experiment 5.1. Analysis of the Safe Region Shape As previously mentioned in Section 3, one reason for selecting the circular safe region shape is to minimize the updates of safe regions and therefore the associated communication cost. We further provide mathematical analysis here. In a safe region based strategy, the communication cost of a location update is inversely proportional to the minimum location update time. This is because the ob- ject’s motion direction is generally unpredictable. There- fore its probability of leaving the safe region through any portion of the border is equal. Assume SR to be the safe region, p to be the last reported location. If in the direc- tion of , the distance from p to the edge of the safe re- gion is k( ) (Figure 9), then the minimum location up- date time is S. S. WANG ET AL. Copyright © 2011 SciRes. IJCNS 320 p SR min(k( )) k( ) Figure 9. Shape of the safe region. 1min. update communication costtimeko maxspd (3) Assuming o.maxspd is a property of the object that we cannot control, our goal is to maximize the min(k( )) in order to maximize the tupdate. When a specific shape of safe region is selected, increasing the area of the safe region is obviously going to increase min(k( )). However, in a range query or a kNN query, the largest area is eventually bounded by the objects’ distribution and the size of the query region. Therefore, if we assume the area of the safe region is determined, then the maximized average distance from p to the edge of the safe region in all directions, min(k( )), will come with the isotropic safe region – a circle. 5.2. Analysis of the Safe Region’s Communication Cost In the RSR strategy [10], data communication is bi-di- rectional: the terminal devices upload location informa- tion and download the safe region information. However, the authors only discussed the communication cost of location information upload, which is not precise. We take the bi-directional data communication into consid- eration in the following discussion and then compare the communication cost with our DIBSCR strategy. In the RSR strategy, communication in the down-link direction from the server to the terminal device transmits information of the rectangular safe region, each deter- mined by two points or four coordinates. Communication in the up-link direction from the terminal device to the server transmits a location update, each includes one point or two coordinates. In newer wireless networks such as Wi-Fi, Wi-Max or 3G, data is transmitted in data frames (called synchronous transmissions mode). Since the data amount to be transmitted/received by the ter- minal device every time is quite small which can easily fit into a single frame, the location update rate is the main factor affecting the communication cost. This loca- tion update rate is constant for UTI strategy while varia- ble for safe region based strategies. Assume in the RSR strategy, the safe region update rate is s which depends on the query rate of q. We therefore represent it using the function of s(q) which increases with the query rate of q. And assume the location update rate is u and the com- munication delay is d. The total communication cost is (s(q) + u)·d which increases with the query rate. Hence when the query rate is high, the RSR strategy can be even worse than the UTI which makes it not feasible. In contrast, in our DIBSCR strategy, the terminal de- vice does not need to download safe region information which only leaves the location update term of u·d. Moreover, the location update rate r is most equal to the constant rate in the UTI strategy because it is based on the dynamic time interval which is greater than or equal to a preset value. We further provide the estimated loca- tion update rate r in DIBSCR as following: The basic estimate of the location update interval is derived from Equation (3): 1.. update utor omaxspd (4) where tupdate is the minimum amount of time the object may exceed the circular safe region and therefore re- quests a location update. The estimate of the location update rate u is therefore relying on the estimate of the object’s maximum speed o.maxspd. The estimate of o.maxspd can be either fixed (for in- stance the object types of pedestrian, motor vehicle or high-speed train) or it could also be further refined by prediction from the object’s historical locations. This could reduce the communication cost when the object is temporarily immobile (such as when the pedestrian stopped by a coffee shop or when the motor vehicle is parked). Certainly in any prediction based speed estimate, we need to be on the conservative side and control the computation cost although there are outstanding predic- tion methods such as Back Propagation Networks (BPN). For simplicity, we do not want to include consideration of a missing rate. One possible conservative estimate is .min__, _* lastcurrent last o maxspdfixedmaxspeed vmax accelerationtt where fixed_max_speed: the maximum possible speed for an object type vlast: calculated speed at the last location report time max_acceleration: the maximum possible acceleration of an object type tcurrent: the current system time tlast: the last location report time. S. S. WANG ET AL. Copyright © 2011 SciRes. IJCNS 321 Either the o.maxspd is fixed or further bounded by a prediction, it is tightly bounded and hence the minimum amount of time the object may exceed the circular safe region and the maximum location updated rate is tightly bounded and independent of the query rate. 5.3. Experimental Analysis of the System Performance In order to further evaluate our strategy, we constructed a simulation system to evaluate the UTI strategy, RSR strategy and our DIBCSR strategy. In our simulation system, object o’s motion direction and speed are ran- domly generated. The object’s speed should not exceed a fixed maximum speed of o.maxspd. In UTI simulation, we have two location update intervals of 0.1s and 1s, referred to as UTI(0.1) and UTI(1) respectively in the simulation results. In our experimental analysis through simulation, three comparison criteria are applied: 1) precision, 2) commu- nication cost and 3) server workload. We analyze the si- mulation results separately in the following section. 1) Precision The precision of a continuous query result is defined as: at time t, the system query result is RESULT(t); the actual object set that satisfies the query condition is TRESULT(t), standing for the true result. In order to use a higher value to represent higher precision, we define the equal(x, y) function to return 1 when x = y and 0 when x ≠ y. In the time interval of [a, b], we average the equality between the returned value and the true value, and define precision as 1,d a bequal RESULT tTRESULT tt ba The precision is obviously affected by the communi- cation delay since it causes the difference between the actual location and the reported location. The result is represented in Figure 10 and the precision of DIBCSR and SBR are approximately the same and both are better than UTI. The simulation results shown in Figure 11 confirm our analysis in Section 5.2 that the performance of DIBCSR is significantly better (lower communication cost) than RSR when considering bi-directional communication cost. And at high query rate, communication cost of RSR can be even worse than UTI with a larger time interval (low- er sampling rate). 2) Communication cost 3) System scalability Figure 12 shows the comparison of server workload for different strategies under the query rate increase. Since the workload is balanced better, both DIBCSR and Figure 10. Comparison of precision. Figure 11. Comparison of communication cost. RSR apply less workload on the server than UTI. Be- cause we further simplified the safe region computation by applying circular safe region, DIBCSR applies even less workload than RSR on the server. This advantage is more significant under the query rate increase. This low server workload feature of DIBCSR helps to improve the system scalability. 6. Conclusions This paper analyzes the weaknesses of the RSR strategy and proposes a DIBCSR strategy to replace the RSR strategy for continuous queries in MOD. Theoretical analysis and simulation experiment both show that the new strategy has multiple advantages. Firstly, the new S. S. WANG ET AL. Copyright © 2011 SciRes. IJCNS 322 Figure 12. Comparison of server workload. strategy does not require computation over the terminal devices. Therefore, cost of the terminal devices is re- duced under the precondition of equal or better system performance. Secondly, terminal devices do not need to download the safe region information from the server which reduces the communication cost effectively. Fi- nally, computation is simplified by applying circular safe regions. Hence the server workload is reduced which improves the system scalability. Possible future works of the research include implementation of the strategy in an applied MOD engine for a information system providing LBS to public transportation, taxis and private vehicle devices or pedestrians with hand-held mobile devices. Application of our strategy potentially provides real-time range queries and kNN queries to support LBS at a low cost with a high performance in addition to system de- sign and implementation ease and flexibility. 7. References [1] S. Ilarri, E. Mena and A. Illarramendi, “Loca- tion-Dependent Query Processing: Where We Are and Where We Are Heading,” ACM Computing Surveys, Vol. 42, No. 3, 2010, pp. 1-79. doi:10.1145/1670679.1670682 [2] H. D. Chon, D. Agrawal and A. El Abbadi, “Storage and Retrieval of Moving Objects,” Proceedings of the 2nd International Conference on Mobile Data Management, Hong Kong, 8-10 January 2001, pp. 173-184. [3] H. D. Chon, D. Agrawal and A. El Abbadi, “FATES: Finding a Time Dependent Shortest Path,” Proceedings of the 4th International Conference on Mobile Data Ma- nagement, Melbourne, 21-24 January 2003, pp. 165-180. [4] Y. Chen, F. Rao, X. Yu and D. Liu, “CAMEL: A Moving Object Database Approach for Intelligent Location Aware Services,” Lecture Notes in Computer Science, Vol. 2574, 2003, pp. 331-334. doi:10.1007/3-540-36389-0_23 [5] C. S. Jensen, D. Lin and B. C. Ooi, “Query and Update Efficient B+-Tree Based Indexing of Moving Objects,” Proceedings of the 30th International Conference on Very Large Data Bases, Toronto, 29 August - 3 Septem- ber 2004, pp. 768-779. [6] M. F. Mokbel, X. Xiong and W. G. Aref, “SINA: Scala- ble Incremental Processing of Continuous Queries in Spatio-Temporal Databases,” Proceedings of the 2004 ACM SIGMOD International Conference on Manage- ment of Data, Paris, 13-18 June 2004. [7] S. Prabhakar, Y. Xia, D. V. Kalashnikov, W. G. Aref and S. E. Hambrusch, “Query Indexing and Velocity Cons- trained Indexing: Scalable Techniques for Continuous Queries on Moving Objects,” IEEE Transactions on Computers, Vol. 51, No. 10, 2002, pp. 1124-1140. doi:10.1109/TC.2002.1039840 [8] Y. Tao, D. Papadias and Q. Shen, “Continuous Nearest Neighbor Search,” 28th International Conference on Very Large Data Bases, Hong Kong, 20-23 August 2002. doi:10.1016/B978-155860869-6/50033-0 [9] X. Yu, K. Q. Pu and N. Koudas, “Monitoring K-Nearest Neighbor Queries over Moving Objects,” 21st Interna- tional Conference on Data Engineering, Tokyo, 5-8 April 2005, pp. 631-642 [10] H. Hu, J. Xu and D.L. Lee, “A Generic Framework for Monitoring Continuous Spatial Queries over Moving Objects,” Proceedings of the 2005 ACM SIGMOD Inter- national Conference on Management of Data, Baltimore, 13-16 June 2005. doi:10.1145/1066157.1066212 [11] D. A. Randell, A.G. Cohn and Z. Cui, “Computing Tran- sitivity Tables: A Challenge for Automated Theorem Provers,” Lecture Notes in Computer Science, Vol. 607, 1992, pp. 786-790. |