Download presentation

Presentation is loading. Please wait.

Published byJulio Youell Modified over 2 years ago

1
A Space-Optimal Data-Stream Algorithm for Coresets in the Plane Pankaj K. Agarwal Joint work with Hai Yu

2
2 Extent Measures Diameter, width, convex hull Simple shapes that enclose point sets Min-radius ball, min-volume box, min-radius cylinder Min-width cylindrical shell, min-width spherical shell Maintaining shape descriptors for moving points Applications Computer graphics Solid modeling Machine learning Data mining Sensor networks

3
3 Approximation ε-Kernel [A., Har-Peled, Varadarajan,04] This talk: maintaining an ε-kernel Q of a stream S of points a small subset that ε -approximate width of original input in all directions u wuwu WuWu computable an -kernel of size 1/ d/2 in O(n+1/ε d-3/2 ) time [A. etal, Chan] results in linear-time approx algorithm for many extent measures

4
4 Results Previous results Our main result: a space-optimal data-stream algorithm in R 2 O(1/ε 1/2 ) space, O(log 1/ε) update time (amortized) DimensionSpaceUpdate timeRef RdRd (1/ε (d-1)/2 )log d n1/ε 3(d-1)/2 [A., Har-Peled, Varadarajan, 04] RdRd 1/ε d-3/2 log d (1/ε)1/ε 1/2 [Chan, 04] R2R2 1/ε 1/2 log (1/ε) [Hershberger,Suri,04]

5
5 Problem is easy if point set is fat Algorithm Overview

6
6 Problem is easy if point set is fat Algorithm Overview

7
7 Problem is easy if point set is fat Keep track of nearest neighbor of each grid point Can be implemented efficiently in O(log 1/ε) time per point Algorithm Overview

8
8 Epochs and subepochs Algorithm Overview o

9
9 Epochs and subepochs Algorithm Overview o xixi

10
10 Epochs and subepochs Algorithm Overview o 2 ·|| ox i || xixi an epoch

11
11 Epochs and subepochs Algorithm Overview o yjyj 2 ·|| ox i || xixi

12
12 Epochs and subepochs Algorithm Overview o yjyj 2 ·|| ox i || xixi 2 ·d( y j, ox i )

13
13 Epochs and subepochs Algorithm Overview 2 ·|| ox i || o xixi a subepoch 2 ·d( y j, ox i ) yjyj

14
14 Epochs and subepochs Algorithm Overview 2 ·|| ox i || o xixi 2 ·d( y j, ox i ) yjyj a subepoch

15
15 Epochs and subepochs Algorithm Overview 2 ·|| ox i || o xixi 2 ·d( y j, ox i ) yjyj a subepoch

16
16 Epochs and subepochs Algorithm Overview 2 ·|| ox i || o xixi 2 ·d( y j, ox i ) yjyj a subepoch

17
17 Epochs and subepochs Algorithm Overview 2 ·|| ox i || o xixi yjyj 2 ·d( y j, ox i ) a subepoch

18
18 Epochs and subepochs Algorithm Overview 2 ·|| ox i || y j+1 Starting a new subepoch o xixi 2 ·d( y j+1, ox i )

19
19 Epochs and subepochs Algorithm Overview 2 ·|| ox i || 2 ·d( y j+1, ox i ) Starting a new epoch o xixi y j+1

20
20 Epochs and subepochs Algorithm Overview Starting a new epoch o x i+1 2 ·|| ox i+1 ||

21
21 Algorithm Overview Chan’s algorithm o x

22
22 Algorithm Overview Chan’s algorithm Too close to point o o x Keep last log(1/ε) epochs alive

23
23 Algorithm Overview Chan’s algorithm Too close to point o o x Keep last log(1/ε) epochs alive

24
24 Algorithm Overview Chan’s algorithm Keep last log(1/ε) epochs alive Keep last log(1/ε) subepochs alive Too close to point o Too close to line ox o x

25
25 Algorithm Overview Chan’s algorithm Total space: (1/ε 1/2 ) log 2 (1/ε) Keep last log(1/ε) subepochs alive Too close to point o Too close to line ox o x Keep last log(1/ε) epochs alive

26
26 New Ingredient Prune points of previous epochs at the beginning of each new epoch o last log(1/ε) epochs

27
27 New Ingredient Prune points of previous epochs at the beginning of each new epoch o x last log(1/ε) epochs

28
28 New Ingredient Prune points of previous epochs at the beginning of each new epoch o x last log(1/ε) epochs

29
29 New Ingredient Prune points of previous epochs at the beginning of each new epoch o x last log(1/ε) epochs j -th last: O(j 2 /(2 j ε) 1/2 ) Total space remains O(1/ε 1/2 ) ! O(1)O(1/ε 1/2 )

30
30 New Ingredient Prune points of previous subepochs at the beginning of each new subepoch Algorithm for subepoch does not touch points of previous epochs o x j -th last: O(j/(2 j ε) 1/2 ) last log(1/ε) subepochs O(1) O(1/ε 1/2 )

31
31 Point set is always stretched in vertical direction Intuition for Subepoch 2 ·|| ox || o x 2 ·d( y i-j, ox ) y i-j yiyi 2 ·d( y i, ox ) π/2 π/4 0 π/2 j …

32
32 Starting a Subepoch Splitting and pruning π/2 π/4 0 π/2 j … π/2 π/4 0 π/2 j … π/2 j+1

33
33 Point set is stretched in several directions Intuition for Epoch π/2 π/4 0 π/2 j …

34
34 Point set is stretched in several directions Intuition for Epoch π/2 π/4 0 π/2 j …

35
35 Point set is stretched in several directions Intuition for Epoch π/2 π/4 0 … π/2 j+1 π/2 π/4 0 π/2 j …

36
36 Point set is stretched in several directions Overlay two angular partitions and maintain proper invariants Intuition for Epoch π/2 π/4 0 … π/2 j+1 π/2 π/4 0 π/2 j …

37
37 Extensions Space-optimal approximation algorithm for maintaining width (smallest enclosing box, etc) in R 2 Space-optimal algorithm for maintaining (k, ε) -kernels in R 2 O(k /ε 1/2 ) space, O(k log 1/ε) update time Improved algorithm for maintaining ε-kernels in R d O(1/ε d-3/2 ) space, O(log 1/ε) update time Similar results for (k, ε) -kernels Improved algorithms for numerous data-stream problems related to extent measures

Similar presentations

OK

Convex Hulls in Two Dimensions Definitions Basic algorithms Gift Wrapping (algorithm of Jarvis ) Graham scan Divide and conquer Convex Hull for line intersections.

Convex Hulls in Two Dimensions Definitions Basic algorithms Gift Wrapping (algorithm of Jarvis ) Graham scan Divide and conquer Convex Hull for line intersections.

© 2017 SlidePlayer.com Inc.

All rights reserved.

Ads by Google

2d viewing ppt on ipad Ppt on waxes and wanes Ppt on x ray diffraction Ppt on dc motor working animation Ppt on shell scripting in linux Download ppt on cell organelles and their functions Ppt on op amp circuits design Ppt on power sharing in india downloads Ppt on global warming for class 9 Ppt on tunnel diode