340 likes | 441 Views
Effectively Indexing Uncertain Moving Objects for Predictive Queries. Meihui Zhang , Su Chen, Christian S. Jensen, Beng Chin Ooi , Zhenjie Zhang. Outline. Introduction Uncertain Moving Object Model Movement Inference Model Indexing and Query Processing Index structure
E N D
Effectively Indexing Uncertain Moving Objects for Predictive Queries Meihui Zhang, Su Chen, Christian S. Jensen, Beng Chin Ooi, Zhenjie Zhang
Outline • Introduction • Uncertain Moving Object Model • Movement Inference Model • Indexing and Query Processing • Index structure • Probabilistic Range Query • k-PNN Query • Experiments • Conclusion
Outline • Introduction • Uncertain Moving Object Model • Movement Inference Model • Indexing and Query Processing • Index structure • Probabilistic Range Query • k-PNN Query • Experiments • Conclusion
Introduction • Trends and applications • Positioning Systems, Wireless Communication, etc. • Intelligent Transport Systems, Location-Based Services, etc.
Motivation • Existing work on moving object management Assumption: deterministic movement • Real world • Limited accuracy • Complex and stochastic movement • … School bus in Athens metropolitan
Motivation • Problem • Information gap between real movement and deterministic models • Solution • Introduce an uncertainty model
Our contributions • Uncertain moving object model • Take into account the uncertainties of both location and velocity • Movement inference model • Infer the location distribution at t • Ease of integration into existing index structures • Indexing • Query processing
Outline • Introduction • Uncertain Moving Object Model • Movement Inference Model • Indexing and Query Processing • Index structure • Probabilistic Range Query • k-PNN Query • Experiments • Conclusion
Uncertain Moving Object Model • Discrete timestamps • 2-D moving objects • Uncertain moving object representation • Distributions • Instead of exact values
Distribution Representation • Distribution • Domain discretization • Probability assigned to each cell • Uniform distribution assumption in each cell Cells with non-zero probabilities 1 0.2 0.75 0.1 0.2 0.5 0 0.1 0.5 0.25 -0.1 0.2 0 0.25 0.5 0.75 1 -0.2 -0.1 0 0.1 0.2 Location distribution Velocity distribution
Outline • Introduction • Uncertain Moving Object Model • Movement Inference Model • Indexing and Query Processing • Index structure • Probabilistic Range Query • k-PNN Query • Experiments • Conclusion
Movement Inference Model • Location distribution prediction • given the location and velocity distributions ofoi , update time tu, query time t • derive a new location distribution for object oiat near-future time t • Solutions • Rectangle inference • Monte Carlo simulation
Rectangle Inference 1 0.2 0.75 0.1 0.2 0.5 0 0.1 0.5 0.5 0.25 -0.1 0.2 0 0.25 0.5 0.75 1 -0.2 -0.1 0 0.1 0.2 Location distribution Velocity distribution
Rectangle Inference 1 0.2 0.75 0.1 0.5 0 0.5 0.25 -0.1 0 0.25 0.5 0.75 1 -0.2 -0.1 0 0.1 0.2 Location distribution Velocity distribution
Rectangle Inference tu tu+ 1 tu+ 2 1 1 1 0.75 0.75 0.75 IR3 0.245 IR4 0.105 IR5 0.105 IR6 0.045 0.5 0.5 0.5 IR1 0.35 IR2 0.15 0.5 0.25 0.25 0.25 0 0.25 0.5 0.75 1 0 0.25 0.5 0.75 1 0 0.25 0.5 0.75 1 0.6 0.6 0.25 0.25 0.25 0.35 0.6 0.7
Monte Carlo Simulation • Randomized method to simulate the motion • Error rate , confidence , simulation number N • For each simulation • Initial step: selects a random location • following steps: pick up a velocity • final step: returns location • Estimate the location distribution with the simulation results
Outline • Introduction • Uncertain Moving Object Model • Movement Inference Model • Indexing and Query Processing • Index structure • Probabilistic Range Query • k-PNN Query • Experiments • Conclusion
Bx-Tree • Use B+-tree to index moving objects • Space filling curve • 2-D location 1-D key value • 2-D range query Several 1-D range queries
Indexing Uncertain Moving Objects • Index structure • Time domain partition • Two sub-trees • Reference time • Sub-trees roll over • Index each location cell with non-zero probability along with the probability and velocity distribution info
Indexing Uncertain Moving Objects • Index update • Insertion • Identify the sub-tree in which to insert • Infer the location distribution at tref • Insert the spatial cells with non-zero probabilities • Deletion • Locate the record in data file • Identify the sub-tree • Infer the location distribution • Delete from the index
Velocity-Based Partitioning • Uncertain larger query expansion • Tighten velocity bound s.t. decrease query expansion • Velocity Minimal Bounding Rectangle (VMBR) • Partition each sub-tree into K logical sub-trees • reduce VMBRs recorded at each sub-tree root 0.2 0.1 0 -0.1 -0.2 -0.1 0 0.1 0.2
Query Processing • Probabilistic Range Query • Given a spatial range R, a query time t, and a threshold θ, the probabilistic range query returns all uncertain moving objects falling into R with probability no smaller than θ at time t • Top-k Probabilistic NN Query(k-PNN) • Given a query location q and a query time t, the k-PNN query returns k uncertain moving objects with the highest probabilities of being the nearest neighbor of q
Probabilistic Range Query • Growing step • Issue range query on index • Construct a candidate object list • Verification step • Rectangle inference works as a filter • Monte Carlo Simulation verifies
k-PNN Query • Issue a series of circular region range queries • Maintain • lower bound • upper bound • accumulated probability • Terminate • kth highest lower bound > any other upper bound • accumulated probability = 1 q
k-PNN Query PC(o1,q,3) = 0.8 PR(o1,q,,2) = 0.2 PR(o1,q,2,3) = 0.6 • PC(oi,q,r) • Probability of oi belonging to circle centered at q with radius r • PR(oi,q,r1,r2) (r1< r2) • Probability of oi belonging to ring centered at q with radius between r1and r2 o1 q
k-PNN Query PR(o1,q,2,3) = 0.6 0 + 0.8 1 1 PC(o2,q,2) = 0 0 0.8 1 PR(o1,q,,2) = 0.2 PR(o1,q,3,4) = 0.2 PC(o1,q,2) = 0.2 0.2 1 1 0.2 + 0.8 1 1 PC(o1,q,3) = 0.2 + 0.6 1-PC(o1,q,3) = 0.2 1-PC(o1,q,2) = 0.8 PR(o2,q,2,3) = 0.6 o1 q PR(o3,q,2,3) = 0.1 o2 o3 1-PC(o2,q,2) = 1 1-PC(o2,q,3) = 0.4 1-PC(o3,q,2) = 1 1-PC(o3,q,3) = 0.9 PR(o2,q,3,4) = 0.3 PR(o3,q,3,4) = 0.7 0.2 + 0.6 0.4 0.9 0.416 + 0.2 0.4 0.9
Outline • Introduction • Uncertain Moving Object Model • Movement Inference Model • Indexing and Query Processing • Index structure • Probabilistic Range Query • k-PNN Query • Experiments • Conclusion
Experiments • Synthetic data • Uniformly distribute locations • Randomly select directions and speeds • Model uncertainty by Gaussian distribution • Performance study • Certain model vs. uncertain model • Efficiency tests
Certain Model vs. Uncertain Model • Certain model • Simple linear motion function • Average velocity and location • Measurement • Recall • Precision
Certain Model vs. Uncertain Model • Varying probability threshold (a) Recall (b) Precision
Efficiency Tests • Range query size • NP-tree: index w./o. velocity partition • VP-tree: index w. velocity partition (a) I/O cost (b) CPU cost
Efficiency Tests • Range query time • NP-tree: index w./o. velocity partition • VP-tree: index w. velocity partition (a) I/O cost (b) CPU cost
Conclusion • Inferring current/near-future uncertain locations from past uncertain velocity and location information • Indexing the uncertain moving objects by means of an adapted Bx-tree • Processing probabilistic range and nearest neighbor queries