Presentation is loading. Please wait.

Presentation is loading. Please wait.

Algorithms for Map Construction and Comparison:

Similar presentations


Presentation on theme: "Algorithms for Map Construction and Comparison:"— Presentation transcript:

1 Algorithms for Map Construction and Comparison:
Map Construction II Carola Wenk Department of Computer Science Tulane University Collaborators: Mahmuda Ahmed, Brittany Fasy, Kyle Hickmann, Dieter Pfoser, Sophia Karagiorgou, Majid Mirzanezhad, Helmut Alt, Maike Buchin, Kevin Buchin, …

2 Outline For the Week Map-Matching Fréchet distance
Fréchet map-matching HMM map-matching Map Construction I Density-based methods Intersection linking Fréchet-based Map Construction II Fréchet clustering Bundle map-construction Map Comparison Hausdorff distance Path-based distances Local persistent homology-based distance Graph sampling-based distance Local signatures Extensions Handling directed edges, multiple lanes, turn restrictions Map updates and detecting change Fréchet range queries

3 Trajectories & Map Construction
GPS trajectories from moving entities are ubiquitous. Map construction problem: Given: A set of trajectories (each a sequence of time-stamped position samples) Task: Construct a road network/map that represents this trajectory set (basic definition: embedded undirected graph). Carola Wenk, Tulane University

4 Map Construction Approaches
Density-based approaches: [BE12, WWL15] Compute a 2D density function from the sample points. E.g., kernel density estimate. Extract road network from density Topological approach on neighborhood complex: [GSBW11]: Uses Reeb graph to model branching structure Intersection linking [FK10, KP12]: First detect intersections, then connect them using road segments Incremental trajectory insertion [AW12]: Insert one trajectory at a time using partial map-matching. Uses a single precision parameter. [BE12] J. Biagioni, J. Eriksson, Map inference in the face of noise and disparity, 20th ACM SIGSPATIAL: 79-88, [WWL15] S. Wang, Y. Wang, Y. Li , Efficient map reconstruction and augmentation via topological methods. ACM SIGSPATIAL [GSBW11] X. Ge, I. Safa, M. Belkin, Y. Wang, Data skeletonization via Reeb graphs, Conf. Neural Inf. Proc. Systems: , 2011. [DWW18] T. Dey, J. Wang, Y. Wang, Graph Reconstruction by Discrete Morse Theory. Accepted to SoCG [AW12] M. Ahmed, C. Wenk, Constructing Street Networks from GPS Trajectories, ESA: 60-71, [FK10] A. Fathi, J. Krumm, Detecting road intersections from GPS traces, Geographic Information Science, LNCS 6292: 56-69, [KP12] S. Karagiorgou, D. Pfoser, On vehicle-tracking data-based road network generation, 20th ACM SIGPATIAL: 89-98, 2012.

5 Map Construction Using Sub-Trajectory Clustering
Map construction algorithm based on sub-trajectory clustering Phase 1: Compute relevant bundles (sub-trajectory clusters) Phase 2: Construct map by greedy incremental insertion of bundles Trajectory bundles can handle data with irregular sampling rates. Extract finer-grained geometry (zig-zags); useful for hiking trail maps [BBDW17] K. Buchin, M. Buchin, D. Duran, B.T. Fasy, R. Jacobs, V. Sacristan, R. Silveira, F. Staals, C. Wenk. Clustering Trajectories for Constructing Maps, ACM SIGSPATIAL 2017.

6 Sub-Trajectory Clustering
Find similar portions in trajectories Lots of algorithms for finding clusters in point sets Harder for trajectories since you need to figure out where to break the trajectories into pieces

7 Sub-Trajectory Clustering
A. Asahara, A. Sato, and K. Maruyama. Evaluation of trajectory clustering based on information criteria for human activity analysis. In 10th Int. Conf. on Mobile Data Management: Systems, Services and Middleware (MDM), pages , 2009. K. Buchin, M. Buchin, J. Gudmundsson, M. Löffler, and J. Luo. Detecting commuting patterns by clustering subtrajectories. International Journal of Computational Geome- try and Applications, special issue on 19th International Symposium on Algorithms and Computation (ISAAC), 2010. K. Buchin, M. Buchin, M. van Kreveld, and J. Luo. Finding long and similar parts of trajectories. In 17th ACM SIGSPATIAL International Conference on Advances in Geographic Information Systems (ACM GIS), pages , 2010. A. Dahlbom and L. Niklasson. Trajectory clustering for coastal surveillance. In 10th Int. Conf. on Information Fusion, pages 1-8, 2007. J. Lee, J. Han, and K.-Y. Whang. Trajectory clustering: A partition-and-group framework. In Proc. ACM SIGMOD International Conference on Management of Data, pages , 2007.

8 Sub-Trajectory Clustering
X. Li, W. Hu, and W. Hu. A coarse-to-ne strategy for vehicle motion trajectory clustering. In 18th Int. Conf. on Pattern Recognition (ICPR), volume 1, pages , 2006. Z. Li. Incremental clustering for trajectories. Master's thesis, University of Illinois at Urbana-Champaign, 2010. Z. Li, J.-G. Lee, X. Li, and J. Han. Incremental clustering for trajectories. In Proc. 15th Int. Conf. Database Systems for Advanced Applications (DASFAA), pages 32-46, 2010. T.W. Liao. Clustering of time series data - a survey. Pattern Recognition, 38: , 2005. Y. Zhang and D. Pi. A trajectory clustering algorithm based on symmetric neighborhood. In WRI World Congrees on Computer Science and Information Engineering, volume 3, pages , 2009. Y. Zhou, T. Huang. Bag of segments for motion trajectory analysis. ICIP, p , 2008.

9 Carola Wenk, Tulane University
Trajectory Bundles Notion of relevant trajectory bundles: Cluster data continuously using subtrajectories (Fréchet-based) Cluster subtrajectories in a meaningful way that is useful for trajectory aggregation and map construction. Detect adaptive spatial proximity parameter automatically (different road widths) Map construction algorithm based on sub-trajectory clustering Phase 1: Compute relevant bundles Phase 2: Construct map by greedy incremental insertion of bundles Trajectory bundles can handle data with irregular sampling rates. Extract finer-grained geometry (zig-zags); useful for hiking trail maps Carola Wenk, Tulane University

10 Carola Wenk, Tulane University
(k,l,)-Bundles A (k,l,)-bundle is a set of at least k subtrajectories such that the longest subtrajectory has length l, and the pairwise distance between subtrajectories is at most . size length proximity A relevant bundle is maximal, stable, and large. Carola Wenk, Tulane University

11 Carola Wenk, Tulane University
Maximal Bundles We care about the size of bundles.  Features witnessed by more trajectories are more important B2 Bundle B1 is a sub-bundle of B2 if it contains a subset of subtrajectories of B2. B1  Consider maximal bundles These maximize the size under the sub-bundle relation (Maximal bundles cannot be sub-bundles of another bundle) B2 B1 -approximate bundles: Relax the subtrajectory requirement by a small length  Carola Wenk, Tulane University

12 Bundle Evolution for Increasing 
bundle size k Carola Wenk, Tulane University

13 Carola Wenk, Tulane University
Relevant Bundles Each bundle B is born at some  and dies at some ’  Lifespan [, ’] of B A bundle B that lives from =5 to ’=10 is more relevant than a bundle that lives from =30 to ’=35.  Relative lifespan (’-)/ of B Define stable bundles to have a relative lifespan  1. These bundles do not collect additional subtrajectories for small variations in . For a maximal and stable bundle B we have k and . Define its length l as the maximal length for which the entities in B form a (k,l,)-bundle. A relevant bundle is maximal, stable, and large. Carola Wenk, Tulane University

14 Generating Relevant Bundles
Discretize the range of -values (multiples of 5m) For all k and , generate a (k,l,)-bundle of maximal length. Use Fréchet-clustering algorithm [BBGLL11].  Computes a representative subtrajectory for each cluster. Maximality: Only keep those bundles that are not - subbundles of other bundles. (Consider bundles in order of decreasing size.) Stability: Compute bundle evolution by pairwise bundle comparison. Only keep bundles with a relative lifespan of 1. [BBGLL11] Detecting commuting patterns by clustering subtrajectories. Int. J. Comp. Geom. & Appl., 21(03): , 2011.

15 Generating Relevant Bundles
Discretize the range of -values (multiples of 5m) For all k and , generate a (k,l,)-bundle of maximal length. Use Fréchet-clustering algorithm [BBGLL11].  Computes a representative subtrajectory for each cluster. Maximality: Only keep those bundles that are not - subbundles of other bundles. (Consider bundles in order of decreasing size.) Stability: Compute bundle evolution by pairwise bundle comparison. Only keep bundles with a relative lifespan of 1. [BBGLL11] Detecting commuting patterns by clustering subtrajectories. Int. J. Comp. Geom. & Appl., 21(03): , 2011.

16 Carola Wenk, Tulane University
Free Space Diagram g g >e e f f Let e > 0 be given. Free space: { (s,t)[0,1]2 | || f(s) - g(t)||  e } white points Carola Wenk, Tulane University

17 Carola Wenk, Tulane University
Free Space Diagram a b g f g >e e f Let e > 0 be given. Free space: { (s,t)[0,1]2 | || f(s) - g(t)||  e } white points The Fréchet distance dF(f,g)  e iff there is a monotone path in the free space from (0,0) to (1,1) Carola Wenk, Tulane University

18 Fréchet-Clustering T4 T1 T2 T3 T2 T3 T4 T1 T1 T2 T3 T4 Concatenate all trajectories into one large trajectory Consider the free space diagram of this trajectory with itself Subtrajectory cluster = set of cluster curves in free space [BBGLL11] Detecting commuting patterns by clustering subtrajectories. Int. J. Comp. Geom. & Appl., 21(03): , 2011.

19 Fréchet-Clustering Concatenate all trajectories into one large trajectory Consider the free space diagram of this trajectory with itself Subtrajectory cluster = set of cluster curves in free space [BBGLL11] Detecting commuting patterns by clustering subtrajectories. Int. J. Comp. Geom. & Appl., 21(03): , 2011.

20 Fréchet-Clustering Ls Lt T4 T1 T2 T3 T2 T3 T4 T1 T1 T2 T3 T4 Deciding whether a (k,l,)-bundle exists is NP-hard. Simple 2-approximation (in ) for maximum l takes O(N2k) time: Sweep free space with two lines (Ls and Lt). Sweep Ls until there are at least l cluster curves, then sweep Lt until there are less than l cluster curves. Continue. For the discrete Frechet distance, cluster curves can be found by greedily finding monotone curves in free space graph. [BBGLL11] Detecting commuting patterns by clustering subtrajectories. Int. J. Comp. Geom. & Appl., 21(03): , 2011.

21 Generating Relevant Bundles
Discretize the range of -values (multiples of 5m) For all k and , generate a (k,l,)-bundle of maximal length. Use Fréchet-clustering algorithm [BBGLL11].  Computes a representative subtrajectory for each cluster. Maximality: Only keep those bundles that are not - subbundles of other bundles. (Consider bundles in order of decreasing size.) Stability: Compute bundle evolution by pairwise bundle comparison. Only keep bundles with a relative lifespan of 1. [BBGLL11] Detecting commuting patterns by clustering subtrajectories. Int. J. Comp. Geom. & Appl., 21(03): , 2011.

22 Generating Relevant Bundles
Discretize the range of -values (multiples of 5m) For all k and , generate a (k,l,)-bundle of maximal length. Use Fréchet-clustering algorithm [BBGLL11].  Computes a representative subtrajectory for each cluster. Maximality: Only keep those bundles that are not - subbundles of other bundles. (Consider bundles in order of decreasing size.) Stability: Compute bundle evolution by pairwise bundle comparison. Only keep bundles with a relative lifespan of 1. [BBGLL11] Detecting commuting patterns by clustering subtrajectories. Int. J. Comp. Geom. & Appl., 21(03): , 2011.

23 -Subbundles are not Transitive
Therefore the order in which we remove subbundles matters. Consider bundles in order of decreasing size. → Ensures that we remove subbundles only if they are a subbundle of a relevant bundle (that we keep). Carola Wenk, Tulane University

24 Generating Relevant Bundles
Discretize the range of -values (multiples of 5m) For all k and , generate a (k,l,)-bundle of maximal length. Use Fréchet-clustering algorithm [BBGLL11].  Computes a representative subtrajectory for each cluster. Maximality: Only keep those bundles that are not - subbundles of other bundles. (Consider bundles in order of decreasing size.) Stability: Compute bundle evolution by pairwise bundle comparison. Only keep bundles with a relative lifespan of 1. [BBGLL11] Detecting commuting patterns by clustering subtrajectories. Int. J. Comp. Geom. & Appl., 21(03): , 2011.

25 Map Construction Algorithm
Incrementally insert relevant bundles into an initially empty map, in order of decreasing size. Add edges to map. When adding bundle B, remove its subtrajectories from other bundles Carola Wenk, Tulane University

26 Experimental Setup Set  = 2 
Simplify trajectories as a preprocessing step (10m error for urban datasets, 6m error for hiking datasets) Urban data sets: Athens-small dataset (mapconstruction.org); taxi trajectories. 129 trajectories with a total of 1955 vertices. Subset of the Chicago dataset (mapconstruction.org;[BE12]); school bus trajectories. 140 trajectories, 1716 vertices. Hiking data: subsets of four data sets used in [DDS16] (Wikilog.com); each trajectories and at most 2261 vertices (after preprocessing). [BE12] J. Biagioni, J. Eriksson, Map inference in the face of noise and disparity, 20th ACM SIGSPATIAL: 79-88, [DSS16] D. Duran, V. Sacristan, R. I. Silveira. Mapconstruction algorithms: an evaluation through hiking data. 5th Int. Workshop on Mobile Geographic Information Systems, pages 74-83, 2016.

27 Datasets Athens-small dataset (mapconstruction.org); taxi trajectories. 129 trajectories with a total of 1955 vertices.

28 Datasets Subset of the Chicago dataset (mapconstruction.org;[BE12]); school bus trajectories. 140 trajectories, 1716 vertices.

29 Datasets Hiking data (Garraf; Wikilog.com). 140 trajectories and 7469 vertices.

30 Advantages of Bundling Approach
Can detect roads with different densities in trajectory sampling Can detect intersections even from noisy spread-out trajectories Can group widespread trajectories together with no given spatial proximity parameter Can handle zig-zags (other algorithms represent this with a single line segment) Carola Wenk, Tulane University

31 Challenges for Map Construction Algorithms on Hiking Data
[DSS16] D. Duran, V. Sacristan, R. I. Silveira. Mapconstruction algorithms: an evaluation through hiking data. 5th Int. Workshop on Mobile Geographic Information Systems, pages 74-83, 2016.

32 Challenges for Map Construction Algorithms on Hiking Data
Can group widespread trajectories together with no given spatial proximity parameter [DSS16] D. Duran, V. Sacristan, R. I. Silveira. Mapconstruction algorithms: an evaluation through hiking data. 5th Int. Workshop on Mobile Geographic Information Systems, pages 74-83, 2016.

33 Challenges for Map Construction Algorithms on Hiking Data
Can handle zig-zags (other algorithms represent this with a single line segment) [DSS16] D. Duran, V. Sacristan, R. I. Silveira. Mapconstruction algorithms: an evaluation through hiking data. 5th Int. Workshop on Mobile Geographic Information Systems, pages 74-83, 2016.

34 Challenges for Map Construction Algorithms on Hiking Data
Can handle sharp turns (high curvature) [DSS16] D. Duran, V. Sacristan, R. I. Silveira. Mapconstruction algorithms: an evaluation through hiking data. 5th Int. Workshop on Mobile Geographic Information Systems, pages 74-83, 2016.

35 Challenges for Map Construction Algorithms on Hiking Data
Can handle bifurcations [DSS16] D. Duran, V. Sacristan, R. I. Silveira. Mapconstruction algorithms: an evaluation through hiking data. 5th Int. Workshop on Mobile Geographic Information Systems, pages 74-83, 2016.

36 Challenges for Map Construction Algorithms on Hiking Data
Bundles cover all input trajectories. The only way bundles containing a trajectory are not represented in the map is if they are considered non-significant. [DSS16] D. Duran, V. Sacristan, R. I. Silveira. Mapconstruction algorithms: an evaluation through hiking data. 5th Int. Workshop on Mobile Geographic Information Systems, pages 74-83, 2016.

37 Challenges for Map Construction Algorithms on Hiking Data
Some algorithms require a minimum number of trajectories along an edge. This may result in missing edges. As long as we have a single bundle covering relevant trajectories for a path, we get a single connected path in the map Correctly detects two separate edges [DSS16] D. Duran, V. Sacristan, R. I. Silveira. Mapconstruction algorithms: an evaluation through hiking data. 5th Int. Workshop on Mobile Geographic Information Systems, pages 74-83, 2016.

38 Carola Wenk, Tulane University
Limitations Different trajectory start points or significant noise can result in unmerged bundles. A noisy bundle representative causes noise in the map Scalability of the implementation needs to be improved. Carola Wenk, Tulane University

39 Average/Mean Curve Given a set f1,…,fk :[0,1] R2 of trajectories/curves, compute one representative curve that represents all curves in the set: Point-wise average: f(t) = 1/n i=1 fi (t) for all t[0,1].  O(kn) time. But only works if parameterizations of curves correspond to each other! Compute k-dimensional free space (use concept of Fréchet distance for sets of curves). Instead of Euclidean distance use the radius of the minimum enclosing disk for k points.  O(nk) time. Tries out all joint reparameterizations of curves. n [DR04] A. Dumitrescu, G. Rote, On the Fréchet Distance of a Set of Curves, CCCG: , 2004. [HR11] S. Har-Peled, B. Raichel, The Fréchet Distance Revisited and Extended, ACM SoCG: , 2011.

40 Average vs. Median The average is allowed to introduce new vertices and curve pieces. Can one compute a median, which uses only existing curve pieces and which is central with respect to number of trajectories? E.g., 2 hiking trajectories on one side of lake, 3 on other side of lake. Average trajectory would go through lake. Median of k numbers is the k/2-smallest number. k/2-level in arrangement of lines (has O(k4/3) complexity): [BBKLSWW12] K. & M. Buchin, M. van Kreveld, M. Löffler, R. Silveira, C. Wenk, L. Wiratma, Median Trajectories, Algorithmica, Online First, 2012.

41 Median Analogous to line arrangements, the number of trajectories that have to be crossed from any point on median trajectory to reach the outer face is k/2. Simple median: Switch trajectory at every intersection. But, bad behavior: [BBKLSWW12] K. & M. Buchin, M. van Kreveld, M. Löffler, R. Silveira, C. Wenk, L. Wiratma, Median Trajectories, Algorithmica, Online First, 2012.

42 Homotopic Median Places poles in large faces of arrangement, and require median to go around the poles in the same way as the input trajectories (same homotopy class) Two trajectories are homotopic, if they can be continuously transformed into each other without passing over any pole. If all input trajectories are homotopic w.r.t. poles: Modify switching algorithm: At intersection with new trajectory f, only switch to f if median so far concatenated with f until the endpoint t has the same homotopy type as input trajectories. [BBKLSWW12] K. & M. Buchin, M. van Kreveld, M. Löffler, R. Silveira, C. Wenk, L. Wiratma, Median Trajectories, Algorithmica, Online First, 2012.

43 Carola Wenk, Tulane University
Using Median Uses median Avoids outliers But adds additional vertices (path less straight) Carola Wenk, Tulane University

44 Carola Wenk, Tulane University
Conclusion Trajectory bundles can detect features in trajectory data at multiple scales without a pre-specified proximity parameter Bundles can handle non-planarity well (bridges) Intersections are detected as large bundles Carola Wenk, Tulane University

45


Download ppt "Algorithms for Map Construction and Comparison:"

Similar presentations


Ads by Google