Multiscale Frequent Co-movement Pattern Mining ICDE 2020 - 04/22/2020 Authors: Shahab Helmi , shahab.helmi@ucdenver.edu Farnoush Banaei-Kashani, farnoush.banaei-kashani@ucdenver.edu
Frequent Co-Movement Patterns (F-CoMP) 2 Movements of multiple objects at the same time • Objects do not need to spatially close to each other • Movements can have different shapes Frequent? • Strategy of team • Mobility disorder
Related Work 3 Pattern Query Spatial Proximity Frequent Temporal Multi-object Track, Leadership [1] Y Y - N Y Y Constance, Convergence, N Y Y N Y Y Concurrence, Meet [2] Trajectory Clustering [3] N Y Y N N Y Flock [4], Convoy [5], Swarm [6], N Y Y N Y Y Traveling Companions [7] Co-location [8] N Y Y Y N Y Co-location Episodes [9], Co- N Y Y Y Y Y Occurrence [10], Mix-drove [11] Frequent Periodic Movements [12] N Y Y Y Y N Frequent Complex Episodes [13] N N - Y Y Y Closed Multi-sequence Series [14] N N - Y Y Y Frequent Co-movement Patterns N Y N Y Y Y
Co-Movement Pattern Representation Definition 4 𝑝 1 𝑔 𝑔 … 𝑔 → → 𝑞 = 𝑝 1 Movement pattern 11 12 1𝑙 𝑝 2 𝑔 𝑔 … 𝑔 − → 𝑝 2 21 22 2𝑙 𝑞 = ⋮ ⋮ ⋮ ⋮ sup(𝑞) = 5 𝑝 𝑜 𝑔 𝑔 ⋯ 𝑔 𝑜1 𝑜2 𝑜𝑙 where 𝑔 𝑗𝑘 is one or more spatial features • direction In this paper • acceleration • displacement • distance traveled • … • sup 𝑞 ≥ 𝑡𝑣𝑞 𝑛𝑗𝑜 • 𝑋 𝑛𝑏𝑦
Problem Statement 5 Given 𝐸 , 𝑡𝑣𝑞 𝑛𝑗𝑜 , and 𝑋 𝑛𝑏𝑦 Our goal is to mine all F-CoMPs from 𝐸 Mining all F-CoMPs is challenging: |𝑃| σ 𝑙=2 𝑋 𝑛𝑏𝑦 |𝑃| 𝑋 • σ 𝑜=1 × 𝑛𝑏𝑦 × 𝑈 possible CoMPs 𝑜 𝑙 • Given |𝑃| = 10 , 𝑋 𝑛𝑏𝑦 = 10 , 𝑈 = 100 ⇒ >103M • Given |𝑃| = 20 , 𝑋 𝑛𝑏𝑦 = 10 , 𝑈 = 100 ⇒ >16B
Outline 6 ✓ Introduction ✓ Related Work ✓ Problem Definition • Solution • Frequent Movement Pattern Mining • Frequent Co-Movement Pattern Mining • Multiscale Frequent Co-Movement Pattern Mining • Experimental Results • Conclusions & Future Work
F-CoMP Mining: Baseline Solution 7 Mine frequent movement patterns (F-MP) Iteration Generate F-CoMPs by efficiently joining F-MPs ′ = 𝑃 2 → 𝑞 1 = 𝑃 2 → → → 𝑞 1 ↑ ′ = 𝑃 3 ↑ 𝑞 2 = 𝑃 3 ↑ ↑ ↑ 𝑞 2 ← Iteration 1 Iteration 2 𝑞 3 = 𝑞 1 + 𝑞 2 = 𝑃 2 → → ′ = 𝑃 2 → → ↑ ′ = 𝑞 1 ′ + 𝑞 2 𝑞 3 𝑃 3 ↑ ↑ 𝑃 3 ↑ ↑ ←
Movement Pattern Mining 8 Mine frequent movement patterns (F-MP) → Extension instead of generation Iteration Generate F-CoMPs by efficiently joining F-MPs ′ = 𝑃 2 → 𝑞 1 = 𝑃 2 → → → 𝑞 1 ↑ ′ = 𝑃 3 ↑ 𝑞 2 = 𝑃 3 ↑ ↑ ↑ 𝑞 2 ← Iteration 1 Iteration 2 𝑞 3 = 𝑞 1 + 𝑞 2 = 𝑃 2 → → ′ = 𝑃 2 → → ↑ ′ = 𝑞 1 ′ + 𝑞 2 𝑞 3 𝑃 3 ↑ ↑ 𝑃 3 ↑ ↑ ←
Extending Movement Patterns 9 Basic apriori algorithm: Extension method: • k th iteration: • Extend each occurrence using the trajectory • For each k-movement identify the joinable k movements • O ( 𝑁 𝑙 × avg(sup( 𝑁 𝑙 ))) • For each joinable pair, compute support • avg(sup( 𝑁 𝑙 ) ≪ |𝑁 𝑙 | • O ( 𝑁 𝑙 2 × avg(sup( 𝑁 𝑙 ))) 𝑞 1 {→ → ↑} 3 Joinable if share a k-1 items → ↑ → { → → 𝑞 1 { → → ↑} ↑ } ↑ {→ → ↑ } 1 ↑ 𝑞 2 {→ ↑ ↑} {→ → →} 2 ↑ {↓ ↓ →} 𝑞 3
Frequent Gapped M ovement Pattern 10 • Not monotonic • More movements • All possible movements must be • Different measures for computing generated for each window . the support • Then head-frequency once must be • Head-frequency [15] identified.
F-CoMP Mining 11 Mine frequent movement patterns (F-MP) Generate F-CoMPs by efficiently joining F-MPs 𝑞 1 = 𝑃 2 → → 𝑞 2 = 𝑃 3 ↑ ↑ 𝑞 3 = 𝑞 1 + 𝑞 2 = 𝑃 2 → → 𝑃 3 ↑ ↑
F-CoMP Mining 12 • We already have frequent k movement patterns ( 𝑁 𝑙 ) • Naïve approach: • Generate all possible combinations using the frequent k movement patterns 𝑛𝑏𝑦 σ 𝑜=2 𝑋 |𝑃| |𝑁 𝑙 | • σ 𝑙=2 𝑜 • Compute support for each combination
Basic Apriori for F-CoMP Mining 13 • Generate the F-CoMPs with 𝑜 + 1 objects from the F-CoMPs with 𝑜 objects • Find joinable patterns • F-CoMPs that have 𝑜 − 1 movement patterns in common are joinable 𝑛𝑏𝑦 |𝐺 𝑋 𝑙 , 𝑜 | 2 • σ 𝑙=2 • Compute support → → → 𝑝 2 o 3 𝑝 2 𝑞 1 = → → → ↑ ↑ ↑ ← ← ← o 4 𝑝 3 ↑ ↑ ↑ 𝑞 1 + 𝑞 3 = 𝑝 4 ← ← ← → → → 𝑝 2 𝑝 7 ↓ ↓ ↓ 𝑝 3 𝑞 3 = ↑ ↑ ↑ 𝑝 7 ↓ ↓ ↓
Improving the Search for Joinable Patterns 14 First look for joinable buckets rather than joinable patterns b 1 (o 2 , o 3 , o 4 ) 𝑐 2 (𝑝 2 , o 3 , o 7 ) b 3 (𝑝 3 , 𝑝 8 , o 10 ) → → → → → → ← ← ← 𝑝 2 𝑝 2 𝑝 4 𝑝 5 ← ← ← o 3 𝑝 3 𝑞 1 = ↑ ↑ ↑ ↑ ↑ ↑ 𝑞 5 = 𝑞 3 = ← ← ← ← ← ← o 4 𝑝 6 𝑝 7 ↓ ↓ ↓ ← ← ← ← ← ← 𝑝 2 ← ← ← 𝑝 4 𝑝 2 → → → 𝑝 5 ← ← ← 𝑝 3 𝑝 3 ← ← ← 𝑞 6 = 𝑞 2 = 𝑞 4 = ← ← ← ← ← ← 𝑝 6 𝑝 4 𝑝 7 ↑ ↑ ↑ ← ← ← 𝑝 4 Objects Buckets ← ← ← 𝑝 5 Objects Buckets Objects Buckets 𝑞 5 = (𝑝 2 , 𝑝 3 ) ← 𝑐 1 , 𝑐 2 ← ← 𝑝 6 (𝑝 2 , 𝑝 3 ) 𝑐 1 (𝑝 2 , 𝑝 3 ) 𝑐 1 , 𝑐 2 (𝑝 2 , 𝑝 4 ) 𝑐 1 (𝑝 2 , 𝑝 4 ) 𝑐 1 (𝑝 2 , 𝑝 4 ) 𝑐 1 (𝑝 3 , 𝑝 4 ) 𝑐 1 (𝑝 3 , 𝑝 4 ) 𝑐 1 (𝑝 3 , 𝑝 4 ) 𝑐 1 (𝑝 2 , 𝑝 7 ) 𝑐 2 (𝑝 2 , 𝑝 7 ) 𝑐 2 (𝑝 3 , 𝑝 7 ) 𝑐 2 (𝑝 3 , 𝑝 7 ) 𝑐 2 (𝑝 3 , 𝑝 8 ) 𝑐 3 … …
Improving the Search for Joinable Patterns (cont’d) 15 Look for joinable patterns only in the joinable buckets b 1 (o 2 , o 3 , o 4 ) 𝑐 2 (𝑝 2 , o 3 , o 7 ) Objects Buckets → → → → → → 𝑝 2 𝑝 2 (𝑝 2 , 𝑝 3 ) 𝑐 1 , 𝑐 2 o 3 𝑝 3 𝑞 1 = ↑ ↑ ↑ ↑ ↑ ↑ 𝑞 3 = 𝑝 2 ← ← ← → → → o 4 𝑝 7 ↓ ↓ ↓ ← ← ← 𝑝 2 ← ← ← 𝑝 3 𝑝 2 ↑ ↑ ↑ 𝑞 1 + 𝑞 3 = 𝑝 3 → → → 𝑝 3 ← ← ← 𝑝 4 ← ← ← 𝑞 2 = 𝑞 4 = ← ← ← 𝑝 4 𝑝 7 ↑ ↑ ↑ 𝑝 7 ↓ ↓ ↓ 𝑋 |𝑃| Objects Patterns Objects Patterns 𝑛𝑏𝑦 2 → → → → → → 𝑝 2 𝑝 2 |𝐺 𝑙 , 𝑜 ቚ 𝑞 1 𝑞 1 , 𝑞 3 𝑝 3 𝑝 3 ↑ ↑ ↑ ↑ ↑ ↑ 𝑙=2 𝑜=2 ← ← ← ← ← ← 𝑝 2 𝑝 2 𝑞 2 𝑞 2 → → → → → → 𝑝 3 𝑝 3 𝑋 |𝑃| 𝑛𝑏𝑦 ← ← ← 𝑝 2 𝑞 4 ← ← ← 𝑝 3 𝐶 𝑙 + 𝑐 𝑙 𝑏𝑤 𝑙=2 𝑜=2
16 F-CoMP Extension Mine frequent movement patterns (F-MP) - Horizontal Extension Generate F-CoMPs by efficiently joining F-MPs - Vertical Extension ′ = 𝑃 2 → 𝑞 1 = 𝑃 2 → → → 𝑞 1 ↑ ′ = 𝑃 3 ↑ 𝑞 2 = 𝑃 3 ↑ ↑ ↑ 𝑞 2 ← Iteration 1 Iteration 2 𝑃 2 → → ′ 𝑃 2 → → ↑ ′ = 𝑞 1 ′ + 𝑞 2 𝑞 3 = 𝑞 1 + 𝑞 2 𝑞 3 𝑃 3 ↑ ↑ 𝑃 3 ↑ ↑ ←
Extension Rather than Generation 17 → → 𝑝 2 𝐺 → ↑ 𝐺 4 3,3 ′ = 𝑝 3 𝑞 1 ↑ ↑ ↑ → → → → 𝑝 2 𝑛 1 = { 𝑝 2 → → → ↑ } ← ← 𝑝 4 o 3 ↓ ← 𝑞 1 = ↑ ↑ ↑ 𝑛 2 = { 𝑝 3 ↑ ↑ ↑ → } o 4 ← ← ← 𝑛 3 = { 𝑝 4 ↓ ← ← ← } → → → 𝑝 2 𝑝 3 𝑞 2 = ↑ ↑ ↑ → → → 𝑝 4 𝑋 |𝑃| |𝑃| 𝑋 |𝑃| 𝑛𝑏𝑦 𝑛𝑏𝑦 2 |𝐺 𝑙 , 𝑜 ቚ 𝐶 2 + 𝑐 2 𝑏𝑤 + |𝐺 𝑙 , 𝑜| 𝑙=2 𝑜=2 𝑜=2 𝑙=3 𝑜=2 𝑋 |𝑃| 𝑛𝑏𝑦 |𝐺 𝑙 | 𝑜 𝑙=2 𝑜=2
Outline 18 ✓ Introduction ✓ Related Work ✓ Problem Definition • Solution ✓ Frequent Movement Pattern Mining ✓ Frequent Co-Movement Pattern Mining • Multiscale Frequent Co-Movement Pattern Mining • Experimental Results • Conclusions & Future Work
Scale (Resolution) and Density Reachable Movements 19 Multiscale analysis! 𝑡 1 = 𝑃 2 → → 𝑡 1 = 𝑃 2 → → 𝑡 1 = 𝑃 2 → → 𝑞 3 𝑞 = 𝑃 2 → → 𝑞 1 𝑞 1 𝑡 1 ) = 1 𝑡 1 ) = 1 𝑡 1 ) = 3 sup(𝑞) = 5 sup(𝑞 1 sup(𝑞 3 sup(𝑞 1 sup min = 2 s 1 s 2
20 Scale (Resolution) and Density Reachable Movements Scale only applies on movements, not co-movements ⇒ different object can still be far from each other 𝑡 2 = 𝑃 2 → → 𝑡 1 = 𝑃 2 → → 𝑡 2 = 𝑃 2 → → 𝑞 2 𝑞 3 𝑞 1 𝑡 1 ) = 1 𝑡 1 ) = 3 𝑡 1 ) = 2 sup(𝑞 3 sup(𝑞 3 sup(𝑞 3 sup min = 2 s 2
Recommend
More recommend