View
221
Download
0
Category
Preview:
Citation preview
Effectively Indexing Uncertain Moving Objects for Predictive Queries
School of ComputingNational University of Singapore
Department of Computer ScienceAalborg University
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 managementAssumption: deterministic movement
• Real world– Limited accuracy– Complex and
stochastic movement– …
-1 0 1-1
0
1
velocities
speed on x-axis (km/min)
speed o
n y
-axis
(km
/min
)
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
0.7 0.3
0.1
0.2
0.2
0.5
0 0.25 0.5 0.75 1
0.25
0.5
0.75
1
-0.2 -0.1 0 0.1 0.2
-0.1
0
0.1
0.2
Location distribution Velocity distribution
Cells with non-zero probabilities
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 of oi , update
time tu , query time t
– derive a new location distribution for object oi at near-future time t
• Solutions– Rectangle inference– Monte Carlo simulation
Rectangle Inference
0.7 0.3
0.5
0 0.25 0.5 0.75 1
0.25
0.5
0.75
1
-0.2 -0.1 0 0.1 0.2
-0.1
0
0.1
0.2
Location distribution Velocity distribution
0.1
0.2
0.2
0.5
Rectangle Inference
0.7 0.3
0.5
0 0.25 0.5 0.75 1
0.25
0.5
0.75
1
-0.2 -0.1 0 0.1 0.2
-0.1
0
0.1
0.2
Location distribution Velocity distribution
Rectangle Inference
0 0.25 0.5 0.75
0.25
0.5
0.75
1tu
0 0.25 0.5 0.75
0.25
0.5
0.75
1tu+ 1
0 0.25 0.5 0.75
0.25
0.5
0.75
1tu+ 2
0.5
1 1 1
IR1
0.35IR2
0.15
0.25
0.6
0.60.25
0.25
0.6
0.70.35
IR3
0.245IR4
0.105IR5
0.105IR6
0.045
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.7 0.3
-0.2 -0.1 0 0.1 0.2
-0.1
0
0.1
0.2
0.2 0.8
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
q
PC(o1,q,3) = 0.8
• 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 r1 and r2
o1
PR(o1,q,,2) = 0.2 PR(o1,q,2,3) = 0.6
k-PNN Query
q
iteration object acci lowi upiiteration object acci lowi upi
iteration 2
iteration object acci lowi upi
iteration 2
o1 0.2 0.2 1
iteration object acci lowi upi
iteration 2
o1 0.2 0.2 1
o2 0 0 0.8
iteration object acci lowi upi
iteration 2
o1 0.2 0.2 1
o2 0 0 0.8
o3 0 0 0.8
iteration object acci lowi upi
iteration 2
o1 0.2 0.2 1
o2 0 0 0.8
o3 0 0 0.8
iteration 3
o1 0.8 0.416 0.488
o2 0.6 0.108 0.18
o3 0.1 0.008 0.08
iteration object acci lowi upi
iteration 2
o1 0.2 0.2 1
o2 0 0 0.8
o3 0 0 0.8
iteration 3
o1 0.8 0.416 0.488
o2 0.6 0.108 0.18
o3 0.1 0.008 0.08
iteration 4
o1 1 0.42 0.42
o2 0.9 0.108 0.108
o3 0.8 0.008 0.008
PC(o1,q,2) = 0.2PC(o2,q,2) = 0
0.2 1 10.2 + 0.8 1 10 0.8 10 + 0.8 1 1
PR(o1,q,3,4) = 0.2PC(o1,q,3) = 0.2 + 0.6
0.2 + 0.6 0.4 0.90.416 + 0.2 0.4 0.9
1-PC(o1,q,2) = 0.81-PC(o1,q,3) = 0.2
PR(o1,q,,2) = 0.2
o1
PR(o1,q,2,3) = 0.6
PR(o2,q,2,3) = 0.6
1-PC(o2,q,2) = 1 1-PC(o3,q,2) = 1
o3
PR(o3,q,2,3) = 0.1
1-PC(o2,q,3) = 0.4 1-PC(o3,q,3) = 0.9
o2
PR(o2,q,3,4) = 0.3 PR(o3,q,3,4) = 0.7
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
0.1 0.15 0.2 0.25 0.30
0.2
0.4
0.6
0.8
1Certain Model
Uncertain Model
threshold
Reca
ll
0.1 0.15 0.2 0.25 0.30
0.2
0.4
0.6
0.8
1Certain Model
Uncertain Model
thershold
Prec
isio
n
(a) Recall (b) Precision
Efficiency Tests
• Range query size– NP-tree: index w./o. velocity partition– VP-tree: index w. velocity partition
1 1.5 2 2.5 30
100
200
300
400
500
600
700
800
NP-Tree
VP-Tree
Query Size (km)
avg
I/O
cos
t
1 1.5 2 2.5 30
10
20
30
40
50
NP-Tree
VP-Tree
Query Size (km)
avg
CPU
cost
(ms)
(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
10 20 30 40 500
100
200
300
400
500
600
700
800
NP-Tree
VP-Tree
Query Time (sec)
avg
I/O
cos
t
10 20 30 40 500
10
20
30
40
50
60
NP-Tree
VP-Tree
Query Time (sec)
avg
CPU
cost
(ms)
(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
Recommended