![Page 1: On-Line Discovery of Hot Motion Paths D. Sacharidis 1, K. Patroumpas 1, M. Terrovitis 1, V. Kantere 1, M. Potamias 2, K. Mouratidis 3, T. Sellis 1 1 National](https://reader035.vdocuments.net/reader035/viewer/2022062620/551b14a75503465e7d8b621d/html5/thumbnails/1.jpg)
On-Line Discovery of Hot Motion Paths
D. Sacharidis1, K. Patroumpas1, M. Terrovitis1,V. Kantere1, M. Potamias2, K. Mouratidis3, T.
Sellis1
1National Technical University of Athens, Greece2Boston University, U.S.A.
3Singapore Management University, Singapore
![Page 2: On-Line Discovery of Hot Motion Paths D. Sacharidis 1, K. Patroumpas 1, M. Terrovitis 1, V. Kantere 1, M. Potamias 2, K. Mouratidis 3, T. Sellis 1 1 National](https://reader035.vdocuments.net/reader035/viewer/2022062620/551b14a75503465e7d8b621d/html5/thumbnails/2.jpg)
outline• problem formulation
– example
• motion paths– definition, example
• system setting– naïve method– our approach
• RayTrace algorithm• SinglePath strategy• experiments• conclusions
![Page 3: On-Line Discovery of Hot Motion Paths D. Sacharidis 1, K. Patroumpas 1, M. Terrovitis 1, V. Kantere 1, M. Potamias 2, K. Mouratidis 3, T. Sellis 1 1 National](https://reader035.vdocuments.net/reader035/viewer/2022062620/551b14a75503465e7d8b621d/html5/thumbnails/3.jpg)
problemidentify hot motion paths followed by moving objects over a sliding window with guarantees
motion path•a directed line segment approximating object’s movementhotness•number of objects crossing a motion path within the windowguarantees•user-defined tolerance ε for approximating the location of an object at a given time
challenges•line segments are not known in advance, may change over time
– unlike counting frequencies of spatial areas
•find good motion paths: long and hot
![Page 4: On-Line Discovery of Hot Motion Paths D. Sacharidis 1, K. Patroumpas 1, M. Terrovitis 1, V. Kantere 1, M. Potamias 2, K. Mouratidis 3, T. Sellis 1 1 National](https://reader035.vdocuments.net/reader035/viewer/2022062620/551b14a75503465e7d8b621d/html5/thumbnails/4.jpg)
problemexample
Trajectory of object 3
Trajectory of object 1
Trajectory of object 2Trajectory of object 4
consider 4 moving objects and their trajectories•assume tolerance ε in approximating positions•extract motion paths•calculate hotness•select hottest (hotness 2)
Tolerance: ε
motion pathsε
ε
(3)
(2)
(1)
(2)
hotness
motion pathsε
ε
(3)
(2)
(1)
(2)
hottestmotion pathsε
ε
![Page 5: On-Line Discovery of Hot Motion Paths D. Sacharidis 1, K. Patroumpas 1, M. Terrovitis 1, V. Kantere 1, M. Potamias 2, K. Mouratidis 3, T. Sellis 1 1 National](https://reader035.vdocuments.net/reader035/viewer/2022062620/551b14a75503465e7d8b621d/html5/thumbnails/5.jpg)
motion pathdefinition
given tolerance ε a motion path papb is a directed line segment with the requirement that:
the motion path is a bounded piecewise linear approximation of the object’s movement at some time interval
there exists a time interval [ta, tb] such that for every λ [0, 1] the point p(λ) = pa + λ(pb-pa) is within distance ε to some object’s location at time ta + λ(tb-ta)
a motion path fits an object’s movement and an object crosses a motion path
a set of motion paths is covering for an object if at any time the object crosses exactly one of its paths
![Page 6: On-Line Discovery of Hot Motion Paths D. Sacharidis 1, K. Patroumpas 1, M. Terrovitis 1, V. Kantere 1, M. Potamias 2, K. Mouratidis 3, T. Sellis 1 1 National](https://reader035.vdocuments.net/reader035/viewer/2022062620/551b14a75503465e7d8b621d/html5/thumbnails/6.jpg)
motion pathexample
ta th
x
tta th
x
t
εpa
pe
pb
pc
pg
ph
pf
pd
ta te tb=tg tc tf td th
x
t
pa
pe
pb
pc
pg
ph
pf
pd
ta te tb=tg tc tf td th
x
t
consider the trajectory of a single object moving in xassume tolerance εconsider four motion pathsthe red ones are covering
![Page 7: On-Line Discovery of Hot Motion Paths D. Sacharidis 1, K. Patroumpas 1, M. Terrovitis 1, V. Kantere 1, M. Potamias 2, K. Mouratidis 3, T. Sellis 1 1 National](https://reader035.vdocuments.net/reader035/viewer/2022062620/551b14a75503465e7d8b621d/html5/thumbnails/7.jpg)
system settingobjects• move freely• have location aware devices (GPS, cell-tower/wifi-antenna
triangulation) with varying degrees of inaccuracy• limited processing ability and scarce battery life• communication channel with central coordinatorcoordinator• full processing ability• communication channel with every object
moving objects
...... ... ...
coordinator
![Page 8: On-Line Discovery of Hot Motion Paths D. Sacharidis 1, K. Patroumpas 1, M. Terrovitis 1, V. Kantere 1, M. Potamias 2, K. Mouratidis 3, T. Sellis 1 1 National](https://reader035.vdocuments.net/reader035/viewer/2022062620/551b14a75503465e7d8b621d/html5/thumbnails/8.jpg)
finding hot motion pathsnaïve method•every object sends all its location updates to the coordinator
– too much communication overhead => drains battery life
•the coordinator exhaustively tries to fit the best motion paths– too much processing cost on a single site
our two-tiered approach•RayTrace algorithm
– simple low-cost algorithm that acts as a spatio-temporal filter– only when the object falls outside the filter an update occurs
•SinglePath strategy– motion path discovery algorithm using lightweight indexes– processes objects’ updates– sends feedback to objects at predefined epochs
![Page 9: On-Line Discovery of Hot Motion Paths D. Sacharidis 1, K. Patroumpas 1, M. Terrovitis 1, V. Kantere 1, M. Potamias 2, K. Mouratidis 3, T. Sellis 1 1 National](https://reader035.vdocuments.net/reader035/viewer/2022062620/551b14a75503465e7d8b621d/html5/thumbnails/9.jpg)
RayTraceoverview
• executed by each object independently• modest requirements
– one-pass over streaming location updates– constant time (per update) and constant space
• maintains a Spatio-temporal Safe Area (SSA)– SSA guarantees that a valid motion path exists
• when the object falls outside the SSA– a motion path must be assigned for the previous time interval– a message is sent to the coordinator with the current state– feedback is received during the next epoch and RayTraces
starts over with a new SSA• subsequent location updates are buffered
![Page 10: On-Line Discovery of Hot Motion Paths D. Sacharidis 1, K. Patroumpas 1, M. Terrovitis 1, V. Kantere 1, M. Potamias 2, K. Mouratidis 3, T. Sellis 1 1 National](https://reader035.vdocuments.net/reader035/viewer/2022062620/551b14a75503465e7d8b621d/html5/thumbnails/10.jpg)
RayTraceSSA
• positional updates are timepoints (locations with timestamps) accompanied with the measurement inaccuracy <pi, ti, εi>– for simplicity assume a fixed tolerance ε for all errors
• the extension to varying errors is straightforward• the case of handling uncertainty (ε,δ) is presented in the paper
• SSA is a spatio-temporal pyramid-like area defined in the xyt space that extends– from an anchored initial timepoint (provided by the coordinator
as feedback)– to a rectangle at the current timestamp
• SSA is updated/redefined at each timepoint
![Page 11: On-Line Discovery of Hot Motion Paths D. Sacharidis 1, K. Patroumpas 1, M. Terrovitis 1, V. Kantere 1, M. Potamias 2, K. Mouratidis 3, T. Sellis 1 1 National](https://reader035.vdocuments.net/reader035/viewer/2022062620/551b14a75503465e7d8b621d/html5/thumbnails/11.jpg)
RayTraceupdating the SSA
• consider an initial timepoint <p0, t0>
• timepoint <p1, t1> arrives defining a square Q1 of side 2ε around it
• SSA’s end rectangle becomes this square
• next timepoint <p2, t2> with rectangle Q2 arrives
• SSA is expanded up to timestamp t2
• the end rectangle is produced by the intersection of the old with Q2
• if the intersection is empty a message is sent to the coordinator
xx
yy
tthp0;t0ihp0;t0i
xx
yy
tthp0;t0ihp0;t0i
hp1;t1ihp1;t1i
2²2²
2²2²
xx
yy
tthp0;t0ihp0;t0i
hp1;t1ihp1;t1i
Q1´ SSA jt1Q1´ SSA jt1
SSASSA
xx
yy
tthp0;t0ihp0;t0i
hp1;t1ihp1;t1i
hp2;t2ihp2;t2i
hp0;t0ihp0;t0i
xx
yy
tt
hp1;t1ihp1;t1i
hp2;t2ihp2;t2iQ2Q2
SSA jt2SSA jt2
xx
yy
tt
hp1;t1ihp1;t1i
hp2;t2ihp2;t2i
SSA0jt2 =Q2\ SSA jt2SSA0jt2 =Q2\ SSA jt2
hp0;t0ihp0;t0i
![Page 12: On-Line Discovery of Hot Motion Paths D. Sacharidis 1, K. Patroumpas 1, M. Terrovitis 1, V. Kantere 1, M. Potamias 2, K. Mouratidis 3, T. Sellis 1 1 National](https://reader035.vdocuments.net/reader035/viewer/2022062620/551b14a75503465e7d8b621d/html5/thumbnails/12.jpg)
SinglePathoverview
• the coordinator receives updates from objects• executes the SinglePath strategy to extract a motion path for
each reporting object– may choose an already seen motion path or create a new one
• informs each object about the selected motion path
SinglePath uses lightweight indexes• a spatial index for storing the motion paths discovered
– grid indexing motion path edges
• a hash table for storing the hotness of each motion path• an event queue for handling sliding windows evictions
– if an object crosses path j at time t, an event <t+W,j> is en-heaped
– the event with the lowest timestamp tlow is always de-heaped and processed when the current time is greater than tlow
![Page 13: On-Line Discovery of Hot Motion Paths D. Sacharidis 1, K. Patroumpas 1, M. Terrovitis 1, V. Kantere 1, M. Potamias 2, K. Mouratidis 3, T. Sellis 1 1 National](https://reader035.vdocuments.net/reader035/viewer/2022062620/551b14a75503465e7d8b621d/html5/thumbnails/13.jpg)
SinglePathprocessing updates
• objects send their states when they fall outside the SSA• state is the last valid SSA
– the initial timepoint– the end rectangle
• coordinator chooses a motion path based on SinglePath– must lie completely inside the SSA– reuse motion paths as much as possible => hotter motion
paths
the problem reduces to: • find a good endpoint inside the end rectangle
– always choose the hottest among candidates
![Page 14: On-Line Discovery of Hot Motion Paths D. Sacharidis 1, K. Patroumpas 1, M. Terrovitis 1, V. Kantere 1, M. Potamias 2, K. Mouratidis 3, T. Sellis 1 1 National](https://reader035.vdocuments.net/reader035/viewer/2022062620/551b14a75503465e7d8b621d/html5/thumbnails/14.jpg)
SinglePathselecting good motion paths
a range query is issued in the grid for each end rectangletwo cases may occur:
(1) there are motion paths with the same startpoint and with endpoint inside the rectangle
choose hottest motion path
(2) there are some (maybe 0) startpoints inside the rectangleconsider intersections from other rectanglesintroduce artificial points
choose hottest startpoint
![Page 15: On-Line Discovery of Hot Motion Paths D. Sacharidis 1, K. Patroumpas 1, M. Terrovitis 1, V. Kantere 1, M. Potamias 2, K. Mouratidis 3, T. Sellis 1 1 National](https://reader035.vdocuments.net/reader035/viewer/2022062620/551b14a75503465e7d8b621d/html5/thumbnails/15.jpg)
experiments• objects moving on the road network of
Athens– ~1000 nodes, 2000 edges
• objects randomly assigned to a node– objects move with an agility probability
10%– move at equal displacements, 10 meters– follow high traffic roads more frequently– reported positions have fixed error 1 meter
• simulation parameters– total 250 timestamps– window 100 timestamps– epoch 10 timestamps– 10,000 to 100,000 objects– tolerance 1 to 20 meters
![Page 16: On-Line Discovery of Hot Motion Paths D. Sacharidis 1, K. Patroumpas 1, M. Terrovitis 1, V. Kantere 1, M. Potamias 2, K. Mouratidis 3, T. Sellis 1 1 National](https://reader035.vdocuments.net/reader035/viewer/2022062620/551b14a75503465e7d8b621d/html5/thumbnails/16.jpg)
experimentscompetitor:• we use an adapted streaming Douglas-Peucker algorithm for
compressing trajectories within tolerance• when the tolerance is exceeded a new motion path is inserted
– try to find few good segments, perform a range query around each endpoint augmented by the tolerance
• this violates the motion path requirements– discovered segments are not motion paths
• an indication of how well our method performsmeasures:• efficiency: we measure the size of the index
– how many motion paths are discovered
• quality: we measure how large and hot paths are– score = hotness * length
![Page 17: On-Line Discovery of Hot Motion Paths D. Sacharidis 1, K. Patroumpas 1, M. Terrovitis 1, V. Kantere 1, M. Potamias 2, K. Mouratidis 3, T. Sellis 1 1 National](https://reader035.vdocuments.net/reader035/viewer/2022062620/551b14a75503465e7d8b621d/html5/thumbnails/17.jpg)
experimentsindex size versus
number of objectstolerance
![Page 18: On-Line Discovery of Hot Motion Paths D. Sacharidis 1, K. Patroumpas 1, M. Terrovitis 1, V. Kantere 1, M. Potamias 2, K. Mouratidis 3, T. Sellis 1 1 National](https://reader035.vdocuments.net/reader035/viewer/2022062620/551b14a75503465e7d8b621d/html5/thumbnails/18.jpg)
experimentsscore of the top-10 hottest segments versus
number of objectstolerance
![Page 19: On-Line Discovery of Hot Motion Paths D. Sacharidis 1, K. Patroumpas 1, M. Terrovitis 1, V. Kantere 1, M. Potamias 2, K. Mouratidis 3, T. Sellis 1 1 National](https://reader035.vdocuments.net/reader035/viewer/2022062620/551b14a75503465e7d8b621d/html5/thumbnails/19.jpg)
experimentsepoch processing time versus
number of objectstolerance
![Page 20: On-Line Discovery of Hot Motion Paths D. Sacharidis 1, K. Patroumpas 1, M. Terrovitis 1, V. Kantere 1, M. Potamias 2, K. Mouratidis 3, T. Sellis 1 1 National](https://reader035.vdocuments.net/reader035/viewer/2022062620/551b14a75503465e7d8b621d/html5/thumbnails/20.jpg)
conclusions
• presented a two-tiered approach for discovering interesting movement patterns
• experimentally verified the handling of uncertainty and the discovery of an unknown road network
future work• objects learn more about current motion paths
– coordinator sends spatial information stored to objects
![Page 21: On-Line Discovery of Hot Motion Paths D. Sacharidis 1, K. Patroumpas 1, M. Terrovitis 1, V. Kantere 1, M. Potamias 2, K. Mouratidis 3, T. Sellis 1 1 National](https://reader035.vdocuments.net/reader035/viewer/2022062620/551b14a75503465e7d8b621d/html5/thumbnails/21.jpg)
thank you!
http://web.dblab.ntua.gr