Title: Clustering Moving Objects in Spatial Networks
1Clustering Moving Objects in Spatial Networks
- Jidong Chen, Caifeng Lai, Xiaofeng Meng,
- Renmin University of China
- Jianliang Xu, and Haibo Hu
- Hong Kong Baptist University
- Presented by Xiao Pan
2Outline
- Introduction
- CMON Framework
- Continuous Maintenance of CBs
- Periodical Construction of CMON
- Experiments
- Conclusions
3Introduction
- Clustering Moving Objects in Networks (CMON)
- Challenge
- For moving objects
- Network distance metric
- Motivations and goals
- Minimize cost of clustering and its maintenance
- Minimize network distance computations
- Support multiple types of cluster in a single
application
4Introduction
- How to cluster moving objects?
- A straightforward approach
- Periodically execute the static snapshot
clustering over the entire moving objects - Expensive clustering costs
- Incremental clustering algorithm
- Create initial global clusters and incrementally
maintain them - Expensive maintenance costs
5Introduction
- Applications of CMON with different criteria
- Identify a convoy of cars that follow same route
- Minimum distance clustering
- Query for dense areas of cars in the road network
- Density-based clustering
- Assign K polices to manage K most congested areas
in a road network - K-partitioning clustering
- Whether an unified framework?
6Our Work
- CMON Framework
- Efficiently support different clustering criteria
at the same time - Continuous Micro-clusters Cluster block
maintenance - As underlying clustering unit, easy to maintain
- As a building block of different types of
clusters - Snapshot Macro-clusters CMON construction with
different definitions - Reduce the search space and avoid unnecessary
computation network distance
7CMON Framework
Construction of CB
8Cluster Block
- Assumptions
- A piecewise linear movement stable speed at an
edge segment unless updated explicitly - The route of each object (e.g. home to office) is
known - Definition of Cluster Blocks (CB)
- CB (O, na, nb, head, tail, ObjNum)
- Oo1,o2,,oi,on
- (na,nb) the edge on which the object moves
- (head, tail) position of the CB
- ObjNum numbers of objects in the CB
- Dd(oi,oi1) ? (1in-1)
- oi(na, nb, posi, speed, next_node)
9CB Maintenance
- Construct initial CBs by traversing network and
maintaining their changes (e.g. splitting and
merging) - Main problems
- How to predict splitting time of CB on road
segments - How to process splitting event of CB at
intersections
10Predicting Splitting Event
- Predicting the splitting of CB (occur in two
cases) - On arriving the end of the segment
- On moving along the segment
- when distance between any neighboring objects
exceeds ? - Problem the neighborhood of objects changes over
time - Solution dynamically maintain the order of
objects over time on the edge
11Predicting splitting time of CB
- Predict the initial splitting time on moving
along the segment - Given a threshold 7
- Compute the leaving time te
- t0 object list o1,o2,o3,o4,o5
- t1
- t2
- t3 object list o3,o1,o4,o2,o5
- t4
- t5
- Dist(o4,o5)gt7
- ts is splitting time
object list o1,o3,o2,o4,o5
object list o1,o3,o4,o2,o5
object list o3,o1,o4,o5,o2
12Splitting Event Processing
- Splitting event on the segment
- Splitting event at the end of segment
- A straightforward approach one-by-one object
delete and insert - Group splitting approach split the CB by
next_node -
13CMON Construction
- Periodically construct CMON
- Main problems
- How to use CBs construct application-level
cluster with different criteria? - Distance-based, Density-based, K-partitioning
clustering - How to reduce network distance computation among
CBs? - Incremental network extension
14Distance-based CMON
- Definition of Minimum Distance CMON
- For each object in an MD-CMON, the minimum
network distance with other objects in the
cluster is not longer than a user specified
threshold d - Threshold d and ?
- d is a user-defined threshold.
- ? is a system threshold and independent of d
- d gt ?
- How CBs are used
- Combination of CBs based on their network
distance - Adaptation of the incremental network extension
to avoid O(N2) network distance computation
between CBs
15Density-based CMON
- Definition of Density-Based CMON
- For each cluster in the DB-CMON, the average
density is higher than a given threshold ?.
Moreover, there is not any empty segment (without
any objects on) whose length is longer than E. - Implications
- Suppose m objects in a CB, then its density is
m/ ? (m-1) gt 1/? - For any object, its nearest object is within a
distance of E - avoid very skewed clusters
- How CBs are used
- Requirement of CBs ? maxE,1/?
- Same as the MD-CMON construction, but a dynamic
minimum-distance constraint, related to density
of candidate CB
16K-Partitioning CMON
- Definition of K-Partitioning CMON
- Given a set of objects, group them into the K
clusters such that the sum of distances between
all adjacent objects in each cluster is minimized - Intuitive method based on CBs
- Iteratively merge closest pairs of CBs until K
clusters are obtained - Problem costly distance computation between all
pairs of CBs - Improved K-Means method based on CB and Cross-CB
- Low-complexity heuristic similar to the K-means
algorithm - Initially select K CBs as the seeds for K
clusters and assign the remaining CBs to their
nearest clusters to make the sum of distances
between adjacent objects to be minimum.
17K-Partitioning CMON
- Problem may not lead to the optimal solution
- dist(CB2,CB3)ltdist(CB2,CB5)lt
- dist(CB3,CB1)ltdis(CB2,CB1)lt
- dist(CB3,CB5)
- Construct 3 clusters (k3)
- (CB5,CB2),(CB1,CB3),CB4
- Not optimized
- Introduce the Cross-CB
- The minimum distance ?
- across the intersection
- (e.g. CB2CB3)
18Experiments
- Dataset MO Generator on Beijing Road Network
- Set K hotpots and generate objects moving along
their shortest path from the initial hotpot to
destination hotpot - Main contents
- Performance comparison with static clustering (?
-link) for entire dataset periodically - Measure the average clustering response time (CB
merging) and total workload time (CB maintenance
CB merging)
19Experiments
- Clustering Cost Comparison with Different
Datasize - CMON is better than the static one in terms of
average query latency, yet is still better in
terms of total workload time
total time
response time
20Experiments
- Clustering Cost Comparisons of average response
time - Different clustering frequency (at each 5 time
units, each 4, ) - Different monitoring time (different object
updates)
With clustering frequency
With monitoring time
21Experiments
- Clustering Cost with different parameters (? , d)
- ? effect on the CB maintenance
- d effect on the CB clustering
CMON performance with e
CMON performance with d
22Related Work
- Clustering Moving Objects
- Li Han KDD04
- Moving Micro-Clustering
- Kalnis MamoulisSSTD05
- On Discovering Moving Clusters in Spatio-temporal
Data - R.V. Nehme E.A. RundensteinerEDBT06
- Scalable Cluster-Based Algorithm for Evaluating
Continuous Spatio-Temporal Queries on Moving
Objects - Clustering Objects on a Spatial Network
- Yiu Mamoulis SIGMOD04
- Adapt k-medoids, e-link , single-link
Agglomerative algorithms
23Conclusions
- Cluster moving objects in road network
- An unified framework
- Splitting the costs of clustering into different
granularity in conjunction with the movement
feature in the road network - Application-centered clustering and periodical
monitoring the clusters - The experimental results show the efficiency of
our method
24Thank you