24
Tracking Moving Objects in Anonymized Trajectories Nikolay Vyahhi 1 , Spiridon Bakiras 2 , Panos Kalnis 3 , and Gabriel Ghinita 3 1 St. Petersburg State University 2 John Jay College, City Univ. of New York 3 National University of Singapore

Tracking Moving Objects in Anonymized Trajectories

  • Upload
    gianna

  • View
    263

  • Download
    0

Embed Size (px)

DESCRIPTION

Tracking Moving Objects in Anonymized Trajectories. Nikolay Vyahhi 1 , Spiridon Bakiras 2 , Panos Kalnis 3 , and Gabriel Ghinita 3 1 St. Petersburg State University 2 John Jay College, City Univ. of New York 3 National University of Singapore. Motivation. Collection of Trajectory Data - PowerPoint PPT Presentation

Citation preview

Page 1: Tracking Moving Objects in Anonymized Trajectories

Tracking Moving Objects in Anonymized Trajectories

Nikolay Vyahhi1, Spiridon Bakiras2, Panos Kalnis3, and Gabriel Ghinita3

1St. Petersburg State University2John Jay College, City Univ. of New York

3National University of Singapore

Page 2: Tracking Moving Objects in Anonymized Trajectories

2

Motivation

Collection of Trajectory Data Example: Traffic monitoring system

GPS or Sensors deployed across a city Queries: Predict traffic conditions

Data expected to be anonymous Remove ID

Reconstruction of original trajectories E.g., Police tracking a suspect

Page 3: Tracking Moving Objects in Anonymized Trajectories

3

Problem Statement

Given a large database with anonymized spatio-temporal measurements, reconstruct the original object trajectories

Requirements Efficiency (large databases) Accuracy (useful results)

Page 4: Tracking Moving Objects in Anonymized Trajectories

4

Problem Statement

Input: A series of M snapshots Si, each containing exactly N measurements from timestamp ti

Output: A set of N trajectories

Each measurement can be associated with a single trajectory

M = N = 3

Page 5: Tracking Moving Objects in Anonymized Trajectories

5

Related work: Multiple Target Tracking

This problem is closely related to multiple target tracking (MTT) algorithms Studied in the field of radar technology

Three major categories Nearest neighbor (NN) Joint probabilistic data association (JPDA) Multiple hypothesis tracking (MHT)

Page 6: Tracking Moving Objects in Anonymized Trajectories

6

Related work: NN and JPDA

They work in a single scan of the dataset Greedy approach: in each timestamp,

every sample is associated with a single track

Objective: minimize the error across all associations in the current timestamp

Performance: Efficient – can work in polynomial time Greedy approach results in many false

associations

Page 7: Tracking Moving Objects in Anonymized Trajectories

7

Related work: MHT

Multiple hypotheses are maintained Joint probabilities are calculated recursively when

new measurements are received Each association is based on both previous

and subsequent data (multiple scans) Unfeasible hypotheses are eventually

eliminated Performance:

Very accurate Computational and space complexity is exponential

to the number of measurements

Page 8: Tracking Moving Objects in Anonymized Trajectories

8

Comparison

Very accurateVery slow

Large errorsFast

Very accurateMuch faster than MHT

Page 9: Tracking Moving Objects in Anonymized Trajectories

9

Our ApproachMCMF: Min-cost Max-flow

Transform the tracking problem into a min-cost max-flow problem

Min-cost max-flow (graph algorithm) Input: a weighted graph G with two special

nodes (source s and destination t) Objective: find the maximum flow that can be

sent from s to t that results in the minimum cost

Well-known algorithms exist that work in polynomial time

Page 10: Tracking Moving Objects in Anonymized Trajectories

10

Transformation

All edges have capacity 1 Node id (ti, pi, pj): the object moves from location pi

in timestamp ti to location pj in timestamp ti+1

Page 11: Tracking Moving Objects in Anonymized Trajectories

11

Calculating the Cost Values

Assume two successive measurements (pi and pj) belong to the same track

Use these values to predict the next location Calculate the error (i.e., cost) for every possible

location pk

Page 12: Tracking Moving Objects in Anonymized Trajectories

12

Limitation of this Approach

Problem: A single measurement can be associated with multiple tracks!

Page 13: Tracking Moving Objects in Anonymized Trajectories

13

Solution:Create a Block for each Measurement

Corresponds to all partial tracks pm-1,i pm,k pm+1,j

A block containing a flow is marked as active

The only possible route inside an active block, is through the reverse path of the existing flow

Block for kth measurement of mth timestamp (pm,k)

Page 14: Tracking Moving Objects in Anonymized Trajectories

14

Block Functionality

Block for p3,1Block for p2,1

Original track: p2,1 p3,1 p4,1

New track: p2,2 p3,1 p4,1

Original track: p1,1 p2,1 p3,1

New track: p1,1 p2,1 p3,2

Page 15: Tracking Moving Objects in Anonymized Trajectories

15

Improving the Running Time

Flow network is too large Inefficient, since solution requires multiple

shortest path calculations

Assume any object can travel at most Rmax distance between two consecutive timestamps. Rmax depends on The maximum speed of the objects The time interval between two timestamps

This reduces significantly the number of vertices and edges inside each block

Page 16: Tracking Moving Objects in Anonymized Trajectories

16

The Tracking Algorithm

Successive Shortest Path Algorithm At each iteration, send a single flow unit across

the shortest path from s to t Total of N iterations in our case

Most efficient implementation: Dijkstra with Fibonacci heap for priority queue Graph contains negative weights, but can

utilize vertex potentials to avoid this (provided that there are no negative weight cycles)

Bellman-Ford also works very well

Page 17: Tracking Moving Objects in Anonymized Trajectories

17

Dealing with Negative Weight Cycles

Negative weight cycles do appear in MCMF calculations

In this case, follow a greedy approach: Output all the tracks that are discovered so far

they might not be optimal Remove all vertices and edges associated with

these tracks from the flow network Start a new min-cost max-flow calculation on

the reduced graph

Page 18: Tracking Moving Objects in Anonymized Trajectories

18

Complexity

Computational: N iterations of a shortest path algorithm O(MN2K(log(MNK) + K)) for Dijkstra with

Fibonacci heap K is the average number of feasible

associations (due to Rmax) per measurement

Space: O(MNK2) for storing the graph

Page 19: Tracking Moving Objects in Anonymized Trajectories

19

Experimental Evaluation

Data generator: Road map of San Francisco city For each object, randomly select a starting

point and a destination point The object then follows the shortest path

between the two points At each timestamp, every object i covers a

distance di [0,Rmax] Number of measurements: 50,000 to 500,000

Page 20: Tracking Moving Objects in Anonymized Trajectories

20

Experimental Evaluation

Competitor: Global Nearest Neighbor (GNN) Employs clustering within each snapshot Considered the best single scan algorithm –

runs in O(MNC2) time (C is the average cluster size)

Performance metrics: CPU time Success rate – percentage of partial tracks

(triplets) that agree with original data

Page 21: Tracking Moving Objects in Anonymized Trajectories

21

Variable N

CPU time [sec] Success rate [%]

Page 22: Tracking Moving Objects in Anonymized Trajectories

22

Variable Rmax (speed)

CPU time [sec] Success rate [%]

Page 23: Tracking Moving Objects in Anonymized Trajectories

23

Points to Remember

Multiple-Target Tracking Large Anonymized Trajectory Databases

Existing methods are either inefficient or inaccurate

We proposed a polynomial time solution based on a novel transformation of the MTT problem into a min-cost max-flow problem

Very accurate Need to improve the running time

Page 24: Tracking Moving Objects in Anonymized Trajectories

24

Bibliography on LBS Privacy

http://anonym.comp.nus.edu.sg