Finding All Maximal Subsequences with Hereditary Properties Drago - - PowerPoint PPT Presentation

finding all maximal subsequences with hereditary
SMART_READER_LITE
LIVE PREVIEW

Finding All Maximal Subsequences with Hereditary Properties Drago - - PowerPoint PPT Presentation

Finding All Maximal Subsequences with Hereditary Properties Drago Bokal, Sergio Cabello, and David Eppstein 31st International Symposium on Computational Geometry Eindhoven, Netherlands, June 2015 Trajectory analysis Data: sequence of points


slide-1
SLIDE 1

Finding All Maximal Subsequences with Hereditary Properties

Drago Bokal, Sergio Cabello, and David Eppstein 31st International Symposium on Computational Geometry Eindhoven, Netherlands, June 2015

slide-2
SLIDE 2

Trajectory analysis

CC-BY-SA image ”my way” by Michal Osmenda from Wikimedia commons

Data: sequence of points from

  • ne or more trajectories,

in two or three dimensions, possibly also with timestamps Key problems include disambiguation of overlapping trajectories; clustering and finding representative paths for clusters; decomposition into pathlets; prediction and intentionality analysis

slide-3
SLIDE 3

Windowed queries into trajectories

Goal: Build a data structure that can quickly answer qualitative queries about contiguous subsequences of a trajectory Could be used for exploratory data analysis, or as a subroutine (e.g. to decompose paths into subsequences with uniform motion)

slide-4
SLIDE 4

Previous work on windowed queries

Bannister, Eppstein, DuBois & Smith, SODA’13: Data = two-party communication events Query = graph-theoretic properties of the events within a time window Bannister, Devanny, Goodrich & Simons, CCCG’14: Data = timestamped points (same as here) Query = extreme points of convex hull, approximate nearest neighbors, etc. We handle simpler queries (only Boolean answers) more quickly Our focus is less on query time and more on preprocessing

slide-5
SLIDE 5

Our queries

◮ Does the subtrajectory have unit diameter? (Is the subject not

moving much?)

◮ Does the convex hull of the subtrajectory have unit area? (Is

the subject moving along an unobstructed path?)

◮ Is there a direction for which the subtrajectory is monotone?

(Is subject moving in one direction but avoiding obstacles?)

CC-BY-SA-image of St. Gotthard Pass by Srdjan Marincic on Wikimedia commons

slide-6
SLIDE 6

The (trivial) data structure

Query: does subsequence (i, j) have a (Boolean) property P? We consider only hereditary properties: if a subsequence has P, so do all its sub-subsequences Store, for each i, the horizon j∗(i) s.t. (i, j∗) is maximal with P. To handle query (i, j), compare j with j∗(i)

CC-BY image of Garrison of Sør-Varanger by Soldatnytt on Wikimedia commons

But how do we find all of the horizons, efficiently?

slide-7
SLIDE 7

Key ideas (1)

a1 a2 (a2, a3) (a3, a4) ak ak R1 R2 R3 ak+1 ak+2 Rk Rk+1 Rk−1 ak+3 Rk+2

◮ Greedily partition grid of potential queries (i, j) into frontier

rectangles in which top right and bottom left corners are maximal yes-instances in their rows

◮ Partition is based on solving a collection of single-horizon

search problems whose sizes sum to O(n)

◮ Use sequential or binary search for each single-horizon search

slide-8
SLIDE 8

Key ideas (2)

a b b + w a + h m m a b b + w a + h c m a b b + w a + h c

Recursion

Recursion

Recursive divide and conquer into frontier subrectangles Split point = single horizon in median row Complication: subproblem size = rectangle size So subproblems do not shrink quickly enough for divide and conquer to be efficient

slide-9
SLIDE 9

Key ideas (3)

The subtrajectories for a rectangular subproblem have three parts:

◮ Prefix of variable length given by row number in the rectangle ◮ Middle part of fixed length ◮ Suffix of variable length given by column number

Replacing the middle part by a small sketch allows the subproblem sizes to shrink more quickly in the divide and conquer matrix of queries trajectory

replace by sketch

Example sketch for testing monotonicity: the range of angles for which the subtrajectory is monotonic

slide-10
SLIDE 10

Results

We can find all j-maximal subsequences of the trajectory that have property P . . .

◮ . . . in time O(n), when

P is monotonicity

◮ . . . in time O(n log n log log n),

when P is unit area

◮ . . . in time O(n log2 n), when P is

unit diameter Open: What other similar problems on trajectories fit into this framework? What about non-Boolean properties?