Approximating Extent Measures of Points Pankaj K. Agarwal Sariel - - PowerPoint PPT Presentation

approximating extent measures of points
SMART_READER_LITE
LIVE PREVIEW

Approximating Extent Measures of Points Pankaj K. Agarwal Sariel - - PowerPoint PPT Presentation

Approximating Extent Measures of Points Pankaj K. Agarwal Sariel Har-Peled Kasturi R. Varadarajan CS468, Winter 2006 Extent Measures Given a point set P R d Extent measures statistics about P or its enclosing shape Some


slide-1
SLIDE 1

Approximating Extent Measures of Points

Pankaj K. Agarwal Sariel Har-Peled Kasturi R. Varadarajan CS468, Winter 2006

slide-2
SLIDE 2

Extent Measures

  • Given a point set P ⊆ Rd
  • Extent measures – statistics about P or its enclosing shape
  • Some examples
  • k-th largest distance
  • Min. volume bounding box
  • Min. width bounding slab
  • Min. enclosing sphere
  • Min. enclosing cylinder
  • Min. width enclosing spherical shell
  • Min. width enclosing cylindrical shell
slide-3
SLIDE 3

Main Result

  • Technique for ǫ-approximating (a large class of) extent

measures

  • Compute a subset of the input Q ⊆ P (coreset) which
  • Preserves the solution to ǫ-accuracy
  • Small size (does not depend on |P|, only on ǫ)
  • General properties
  • Strong LTAS, running time O
  • n +

1

ǫ

O(1)

  • Coreset size O

1

ǫ

O(1)

  • Exponents depend on d
  • Simple to implement, and some improvements
  • Min. enclosing spherical shell

exponent down from O(d 2) [Chan 02] to O(d)

slide-4
SLIDE 4

Key Definitions

  • Lead to two main approximation primitives
  • Directional width of a point set P in the direction u ∈ Rd−1

w(u, P) = maxp∈P[u, 1], p − minp∈P[u, 1], p

  • Extent of a set F of (d − 1)-variate functions at x ∈ Rd−1

e(x, F) = maxf ∈F f (x) − minf ∈F f (x)

slide-5
SLIDE 5

Optimization Primitives

  • Q ⊆ P is an ǫ-approximation for P on ∆ ⊆ Rd−1 if for all

u ∈ ∆ (1 − ǫ)w(u, P) ≤ w(u, Q) ≤ w(u, P)

  • G ⊆ F is an ǫ-approximation for F on ∆ ⊆ Rd−1 if for all

x ∈ ∆ (1 − ǫ)e(x, F) ≤ w(u, G) ≤ e(x, F)

  • Note: Always pick a subset of the input – coreset
slide-6
SLIDE 6

Classes of Extent Measures

  • Faithful
  • Approximated through directional width
  • “Convex” measures (bounding shapes)
  • Other
  • Approximated through extent
  • “Concave” measures (“shells”)
slide-7
SLIDE 7

Overview

(A) Strong LTASs for directional width

  • Reduction to “fat” point sets
  • Algorithm 1: Grid
  • Algorithm 2: Polytope
  • Algorithm 3: Decomposition

Strong LTASs for extent

  • Linear functions (hyperplanes)
  • Polynomial functions
  • r-th roots of polynomials

(B) Dynamic updates Applications to specific extent measures

slide-8
SLIDE 8

Reduction to “Fat” Point Sets

  • A point set P ∈ Rd is α-fat if there exists a translation t such

that αC ⊆ CH(P) + t ⊆ C = [−1, 1]d

  • Sufficient to consider computing coresets for α-fat point

sets

  • Step 1:

Every point set can be made α-fat by applying a linear transformation, where α = α(d)

  • Step 2:

Every linear transformation preserves the approximation ratio

  • f an arbitrary coreset
  • The size and construction time are clearly preserved
slide-9
SLIDE 9

Step 1: There Exists a “Fattening Transform”

  • [Barequet, Har-Peled 01]: Let P ⊆ Rd be of size n. Can

compute in O(n) time a box B and a vector t ∈ Rd such that αB ⊆ CH(P + t) ⊆ B

B

αB

CH(P)

  • Recall:

α = 1/10? for d = 3

  • Choose T so that

T(B) = C

slide-10
SLIDE 10

Step 2: Invariance Under Linear Transforms

  • Lemma:

Let T(x) = Mx + b be a non-degenerate linear transform. Q ⊆ P ǫ-approximates P over ∆ ⊆ Rd−1 if and only if T(Q) ǫ-approximates T(P) over {v | [v, 1] = MT [u, 1], u ∈ ∆}

  • Proof: Easy by definition
  • Note: can assume T(x) = Mx
  • Also, [u, 1], Mp = MT[u, 1], p
slide-11
SLIDE 11

The Case of α-fat Point Sets

  • From now on assume αC ⊆ CH(P) ⊆ C where α depends
  • nly on d, not on n
slide-12
SLIDE 12

The Case of α-fat Point Sets

  • From now on assume αC ⊆ CH(P) ⊆ C where α depends
  • nly on d, not on n
  • Lemma [Rough approximation]: w(x, P) ≥ 2α||x||

∀x ∈ Rd: maxp∈Px, p = ||x|| · maxp∈P x ||x||, p

  • projection

≥ ||x||α For xd = 1: max

p∈P x, p ≥ α||x||

min

p∈Px, p ≤ −α||x||

slide-13
SLIDE 13

The Case of α-fat Point Sets

  • From now on assume αC ⊆ CH(P) ⊆ C where α depends
  • nly on d, not on n
  • Lemma [Rough approximation]: w(x, P) ≥ 2α||x||

∀x ∈ Rd: maxp∈Px, p = ||x|| · maxp∈P x ||x||, p

  • projection

≥ ||x||α For xd = 1: max

p∈P x, p ≥ α||x||

min

p∈Px, p ≤ −α||x||

  • Lemma [Hausdorff dist.]: If maxp∈P minq∈Q ||p − q|| ≤ ǫα

then Q is an ǫ-approximation for P

slide-14
SLIDE 14

The Case of α-fat Point Sets

  • From now on assume αC ⊆ CH(P) ⊆ C where α depends
  • nly on d, not on n
  • Lemma [Rough approximation]: w(x, P) ≥ 2α||x||

∀x ∈ Rd: maxp∈Px, p = ||x|| · maxp∈P x ||x||, p

  • projection

≥ ||x||α For xd = 1: max

p∈P x, p ≥ α||x||

min

p∈Px, p ≤ −α||x||

  • Lemma [Hausdorff dist.]: If maxp∈P minq∈Q ||p − q|| ≤ ǫα

then Q is an ǫ-approximation for P w(x, P) − w(x, Q) ≤ x, p1 − p2 − x, q1 − q2

slide-15
SLIDE 15

The Case of α-fat Point Sets

  • From now on assume αC ⊆ CH(P) ⊆ C where α depends
  • nly on d, not on n
  • Lemma [Rough approximation]: w(x, P) ≥ 2α||x||

∀x ∈ Rd: maxp∈Px, p = ||x|| · maxp∈P x ||x||, p

  • projection

≥ ||x||α For xd = 1: max

p∈P x, p ≥ α||x||

min

p∈Px, p ≤ −α||x||

  • Lemma [Hausdorff dist.]: If maxp∈P minq∈Q ||p − q|| ≤ ǫα

then Q is an ǫ-approximation for P w(x, P) − w(x, Q) ≤ x, p1 − p2 − x, q1 − q2 ≤ |x, p1 − p2| − |x, q1 − q2|

slide-16
SLIDE 16

The Case of α-fat Point Sets

  • From now on assume αC ⊆ CH(P) ⊆ C where α depends
  • nly on d, not on n
  • Lemma [Rough approximation]: w(x, P) ≥ 2α||x||

∀x ∈ Rd: maxp∈Px, p = ||x|| · maxp∈P x ||x||, p

  • projection

≥ ||x||α For xd = 1: max

p∈P x, p ≥ α||x||

min

p∈Px, p ≤ −α||x||

  • Lemma [Hausdorff dist.]: If maxp∈P minq∈Q ||p − q|| ≤ ǫα

then Q is an ǫ-approximation for P w(x, P) − w(x, Q) ≤ x, p1 − p2 − x, q1 − q2 ≤ |x, p1 − p2| − |x, q1 − q2| ≤ |x, (p1 − q1) − (p2 − q2)| ≤ ||x|| · 2αǫ

slide-17
SLIDE 17

Algorithm 1: Grid

  • Grid of cell size

ǫα 2 √ d

slide-18
SLIDE 18

Algorithm 1: Grid

  • Grid of cell size

ǫα 2 √ d

  • Clear all “internal” cells
  • Convex hull moves by

at most one cell diameter ǫα/2

✁✁✁ ✁✁✁ ✁✁✁ ✁✁✁ ✂✁✂✁✂✁✂ ✂✁✂✁✂✁✂ ✂✁✂✁✂✁✂ ✂✁✂✁✂✁✂ ✄✁✄✁✄✁✄ ✄✁✄✁✄✁✄ ✄✁✄✁✄✁✄ ✄✁✄✁✄✁✄ ☎✁☎✁☎✁☎ ☎✁☎✁☎✁☎ ☎✁☎✁☎✁☎ ☎✁☎✁☎✁☎ ✆✁✆✁✆✁✆✁✆ ✆✁✆✁✆✁✆✁✆ ✆✁✆✁✆✁✆✁✆ ✆✁✆✁✆✁✆✁✆ ✝✁✝✁✝✁✝ ✝✁✝✁✝✁✝ ✝✁✝✁✝✁✝ ✝✁✝✁✝✁✝ ✞✁✞✁✞✁✞ ✞✁✞✁✞✁✞ ✞✁✞✁✞✁✞ ✞✁✞✁✞✁✞ ✟✁✟✁✟✁✟ ✟✁✟✁✟✁✟ ✟✁✟✁✟✁✟ ✟✁✟✁✟✁✟ ✠✁✠✁✠✁✠ ✠✁✠✁✠✁✠ ✠✁✠✁✠✁✠ ✠✁✠✁✠✁✠ ✡✁✡✁✡✁✡ ✡✁✡✁✡✁✡ ✡✁✡✁✡✁✡ ✡✁✡✁✡✁✡ ☛✁☛✁☛✁☛ ☛✁☛✁☛✁☛ ☛✁☛✁☛✁☛ ☛✁☛✁☛✁☛ ☞✁☞✁☞✁☞ ☞✁☞✁☞✁☞ ☞✁☞✁☞✁☞ ☞✁☞✁☞✁☞ ✌✁✌✁✌✁✌ ✌✁✌✁✌✁✌ ✌✁✌✁✌✁✌ ✌✁✌✁✌✁✌ ✍✁✍✁✍✁✍ ✍✁✍✁✍✁✍ ✍✁✍✁✍✁✍ ✍✁✍✁✍✁✍ ✎✁✎✁✎✁✎ ✎✁✎✁✎✁✎ ✎✁✎✁✎✁✎ ✎✁✎✁✎✁✎ ✏✁✏✁✏✁✏ ✏✁✏✁✏✁✏ ✏✁✏✁✏✁✏ ✏✁✏✁✏✁✏ ✑✁✑✁✑✁✑ ✑✁✑✁✑✁✑ ✑✁✑✁✑✁✑ ✑✁✑✁✑✁✑ ✒✁✒✁✒✁✒ ✒✁✒✁✒✁✒ ✒✁✒✁✒✁✒ ✒✁✒✁✒✁✒ ✓✁✓✁✓✁✓ ✓✁✓✁✓✁✓ ✓✁✓✁✓✁✓ ✓✁✓✁✓✁✓ ✔✁✔✁✔✁✔ ✔✁✔✁✔✁✔ ✔✁✔✁✔✁✔ ✔✁✔✁✔✁✔ ✕✁✕✁✕✁✕ ✕✁✕✁✕✁✕ ✕✁✕✁✕✁✕ ✕✁✕✁✕✁✕ ✖✁✖✁✖✁✖ ✖✁✖✁✖✁✖ ✖✁✖✁✖✁✖ ✖✁✖✁✖✁✖ ✗✁✗✁✗✁✗✁✗ ✗✁✗✁✗✁✗✁✗ ✗✁✗✁✗✁✗✁✗ ✗✁✗✁✗✁✗✁✗ ✗✁✗✁✗✁✗✁✗ ✘✁✘✁✘✁✘✁✘ ✘✁✘✁✘✁✘✁✘ ✘✁✘✁✘✁✘✁✘ ✘✁✘✁✘✁✘✁✘ ✘✁✘✁✘✁✘✁✘ ✙✁✙✁✙✁✙ ✙✁✙✁✙✁✙ ✙✁✙✁✙✁✙ ✙✁✙✁✙✁✙ ✙✁✙✁✙✁✙ ✚✁✚✁✚✁✚ ✚✁✚✁✚✁✚ ✚✁✚✁✚✁✚ ✚✁✚✁✚✁✚ ✚✁✚✁✚✁✚ ✛✁✛✁✛✁✛ ✛✁✛✁✛✁✛ ✛✁✛✁✛✁✛ ✛✁✛✁✛✁✛ ✜✁✜✁✜✁✜ ✜✁✜✁✜✁✜ ✜✁✜✁✜✁✜ ✜✁✜✁✜✁✜ ✢✁✢✁✢✁✢ ✢✁✢✁✢✁✢ ✢✁✢✁✢✁✢ ✢✁✢✁✢✁✢ ✢✁✢✁✢✁✢ ✣✁✣✁✣✁✣ ✣✁✣✁✣✁✣ ✣✁✣✁✣✁✣ ✣✁✣✁✣✁✣ ✣✁✣✁✣✁✣ ✤✁✤✁✤✁✤ ✤✁✤✁✤✁✤ ✤✁✤✁✤✁✤ ✤✁✤✁✤✁✤ ✥✁✥✁✥✁✥ ✥✁✥✁✥✁✥ ✥✁✥✁✥✁✥ ✥✁✥✁✥✁✥ ✦✁✦✁✦✁✦ ✦✁✦✁✦✁✦ ✦✁✦✁✦✁✦ ✦✁✦✁✦✁✦ ✦✁✦✁✦✁✦ ✧✁✧✁✧✁✧ ✧✁✧✁✧✁✧ ✧✁✧✁✧✁✧ ✧✁✧✁✧✁✧ ✧✁✧✁✧✁✧ ★✁★✁★✁★ ★✁★✁★✁★ ★✁★✁★✁★ ★✁★✁★✁★ ✩✁✩✁✩✁✩ ✩✁✩✁✩✁✩ ✩✁✩✁✩✁✩ ✩✁✩✁✩✁✩ ✪✁✪✁✪✁✪ ✪✁✪✁✪✁✪ ✪✁✪✁✪✁✪ ✪✁✪✁✪✁✪ ✪✁✪✁✪✁✪ ✫✁✫✁✫✁✫ ✫✁✫✁✫✁✫ ✫✁✫✁✫✁✫ ✫✁✫✁✫✁✫ ✫✁✫✁✫✁✫ ✬✁✬✁✬✁✬ ✬✁✬✁✬✁✬ ✬✁✬✁✬✁✬ ✬✁✬✁✬✁✬ ✭✁✭✁✭✁✭ ✭✁✭✁✭✁✭ ✭✁✭✁✭✁✭ ✭✁✭✁✭✁✭ ✮✁✮✁✮✁✮ ✮✁✮✁✮✁✮ ✮✁✮✁✮✁✮ ✮✁✮✁✮✁✮ ✮✁✮✁✮✁✮ ✯✁✯✁✯✁✯ ✯✁✯✁✯✁✯ ✯✁✯✁✯✁✯ ✯✁✯✁✯✁✯ ✯✁✯✁✯✁✯
slide-19
SLIDE 19

Algorithm 1: Grid

  • Grid of cell size

ǫα 2 √ d

  • Clear all “internal” cells
  • Convex hull moves by

at most one cell diameter ǫα/2

  • Eliminate duplicates in

the “boundary” cells

  • Another shift of at

most ǫα/2

✰✁✰✁✰✁✰ ✰✁✰✁✰✁✰ ✰✁✰✁✰✁✰ ✰✁✰✁✰✁✰ ✱✁✱✁✱✁✱ ✱✁✱✁✱✁✱ ✱✁✱✁✱✁✱ ✱✁✱✁✱✁✱ ✲✁✲✁✲✁✲ ✲✁✲✁✲✁✲ ✲✁✲✁✲✁✲ ✲✁✲✁✲✁✲ ✳✁✳✁✳✁✳ ✳✁✳✁✳✁✳ ✳✁✳✁✳✁✳ ✳✁✳✁✳✁✳ ✴✁✴✁✴✁✴✁✴ ✴✁✴✁✴✁✴✁✴ ✴✁✴✁✴✁✴✁✴ ✴✁✴✁✴✁✴✁✴ ✵✁✵✁✵✁✵ ✵✁✵✁✵✁✵ ✵✁✵✁✵✁✵ ✵✁✵✁✵✁✵ ✶✁✶✁✶✁✶ ✶✁✶✁✶✁✶ ✶✁✶✁✶✁✶ ✶✁✶✁✶✁✶ ✷✁✷✁✷✁✷ ✷✁✷✁✷✁✷ ✷✁✷✁✷✁✷ ✷✁✷✁✷✁✷ ✸✁✸✁✸✁✸ ✸✁✸✁✸✁✸ ✸✁✸✁✸✁✸ ✸✁✸✁✸✁✸ ✹✁✹✁✹✁✹ ✹✁✹✁✹✁✹ ✹✁✹✁✹✁✹ ✹✁✹✁✹✁✹ ✺✁✺✁✺✁✺ ✺✁✺✁✺✁✺ ✺✁✺✁✺✁✺ ✺✁✺✁✺✁✺ ✻✁✻✁✻✁✻ ✻✁✻✁✻✁✻ ✻✁✻✁✻✁✻ ✻✁✻✁✻✁✻ ✼✁✼✁✼✁✼ ✼✁✼✁✼✁✼ ✼✁✼✁✼✁✼ ✼✁✼✁✼✁✼ ✽✁✽✁✽✁✽ ✽✁✽✁✽✁✽ ✽✁✽✁✽✁✽ ✽✁✽✁✽✁✽ ✾✁✾✁✾✁✾ ✾✁✾✁✾✁✾ ✾✁✾✁✾✁✾ ✾✁✾✁✾✁✾ ✿✁✿✁✿✁✿ ✿✁✿✁✿✁✿ ✿✁✿✁✿✁✿ ✿✁✿✁✿✁✿ ❀✁❀✁❀✁❀ ❀✁❀✁❀✁❀ ❀✁❀✁❀✁❀ ❀✁❀✁❀✁❀ ❁✁❁✁❁✁❁ ❁✁❁✁❁✁❁ ❁✁❁✁❁✁❁ ❁✁❁✁❁✁❁ ❂✁❂✁❂✁❂ ❂✁❂✁❂✁❂ ❂✁❂✁❂✁❂ ❂✁❂✁❂✁❂ ❃✁❃✁❃✁❃ ❃✁❃✁❃✁❃ ❃✁❃✁❃✁❃ ❃✁❃✁❃✁❃ ❄✁❄✁❄✁❄ ❄✁❄✁❄✁❄ ❄✁❄✁❄✁❄ ❄✁❄✁❄✁❄ ❅✁❅✁❅✁❅ ❅✁❅✁❅✁❅ ❅✁❅✁❅✁❅ ❅✁❅✁❅✁❅ ❆✁❆✁❆✁❆✁❆ ❆✁❆✁❆✁❆✁❆ ❆✁❆✁❆✁❆✁❆ ❆✁❆✁❆✁❆✁❆ ❆✁❆✁❆✁❆✁❆ ❇✁❇✁❇✁❇✁❇ ❇✁❇✁❇✁❇✁❇ ❇✁❇✁❇✁❇✁❇ ❇✁❇✁❇✁❇✁❇ ❇✁❇✁❇✁❇✁❇ ❈✁❈✁❈✁❈ ❈✁❈✁❈✁❈ ❈✁❈✁❈✁❈ ❈✁❈✁❈✁❈ ❈✁❈✁❈✁❈ ❉✁❉✁❉✁❉ ❉✁❉✁❉✁❉ ❉✁❉✁❉✁❉ ❉✁❉✁❉✁❉ ❉✁❉✁❉✁❉ ❊✁❊✁❊✁❊ ❊✁❊✁❊✁❊ ❊✁❊✁❊✁❊ ❊✁❊✁❊✁❊ ❋✁❋✁❋✁❋ ❋✁❋✁❋✁❋ ❋✁❋✁❋✁❋ ❋✁❋✁❋✁❋
  • ✁●✁●✁●
  • ✁●✁●✁●
  • ✁●✁●✁●
  • ✁●✁●✁●
  • ✁●✁●✁●
❍✁❍✁❍✁❍ ❍✁❍✁❍✁❍ ❍✁❍✁❍✁❍ ❍✁❍✁❍✁❍ ❍✁❍✁❍✁❍ ■✁■✁■✁■ ■✁■✁■✁■ ■✁■✁■✁■ ■✁■✁■✁■ ❏✁❏✁❏✁❏ ❏✁❏✁❏✁❏ ❏✁❏✁❏✁❏ ❏✁❏✁❏✁❏ ❑✁❑✁❑✁❑ ❑✁❑✁❑✁❑ ❑✁❑✁❑✁❑ ❑✁❑✁❑✁❑ ❑✁❑✁❑✁❑ ▲✁▲✁▲✁▲ ▲✁▲✁▲✁▲ ▲✁▲✁▲✁▲ ▲✁▲✁▲✁▲ ▲✁▲✁▲✁▲ ▼✁▼✁▼✁▼ ▼✁▼✁▼✁▼ ▼✁▼✁▼✁▼ ▼✁▼✁▼✁▼ ◆✁◆✁◆✁◆ ◆✁◆✁◆✁◆ ◆✁◆✁◆✁◆ ◆✁◆✁◆✁◆ ❖✁❖✁❖✁❖ ❖✁❖✁❖✁❖ ❖✁❖✁❖✁❖ ❖✁❖✁❖✁❖ ❖✁❖✁❖✁❖ P✁P✁P✁P P✁P✁P✁P P✁P✁P✁P P✁P✁P✁P P✁P✁P✁P ◗✁◗✁◗✁◗ ◗✁◗✁◗✁◗ ◗✁◗✁◗✁◗ ◗✁◗✁◗✁◗ ❘✁❘✁❘✁❘ ❘✁❘✁❘✁❘ ❘✁❘✁❘✁❘ ❘✁❘✁❘✁❘ ❙✁❙✁❙✁❙ ❙✁❙✁❙✁❙ ❙✁❙✁❙✁❙ ❙✁❙✁❙✁❙ ❙✁❙✁❙✁❙ ❚✁❚✁❚✁❚ ❚✁❚✁❚✁❚ ❚✁❚✁❚✁❚ ❚✁❚✁❚✁❚ ❚✁❚✁❚✁❚
slide-20
SLIDE 20

Algorithm 1: Grid

  • Grid of cell size

ǫα 2 √ d

  • Clear all “internal” cells
  • Convex hull moves by

at most one cell diameter ǫα/2

  • Eliminate duplicates in

the “boundary” cells

  • Another shift of at

most ǫα/2

❯✁❯✁❯✁❯ ❯✁❯✁❯✁❯ ❯✁❯✁❯✁❯ ❯✁❯✁❯✁❯ ❱✁❱✁❱✁❱ ❱✁❱✁❱✁❱ ❱✁❱✁❱✁❱ ❱✁❱✁❱✁❱ ❲✁❲✁❲✁❲ ❲✁❲✁❲✁❲ ❲✁❲✁❲✁❲ ❲✁❲✁❲✁❲ ❳✁❳✁❳✁❳ ❳✁❳✁❳✁❳ ❳✁❳✁❳✁❳ ❳✁❳✁❳✁❳ ❨✁❨✁❨✁❨✁❨ ❨✁❨✁❨✁❨✁❨ ❨✁❨✁❨✁❨✁❨ ❨✁❨✁❨✁❨✁❨ ❩✁❩✁❩✁❩ ❩✁❩✁❩✁❩ ❩✁❩✁❩✁❩ ❩✁❩✁❩✁❩ ❬✁❬✁❬✁❬ ❬✁❬✁❬✁❬ ❬✁❬✁❬✁❬ ❬✁❬✁❬✁❬ ❭✁❭✁❭✁❭ ❭✁❭✁❭✁❭ ❭✁❭✁❭✁❭ ❭✁❭✁❭✁❭ ❪✁❪✁❪✁❪ ❪✁❪✁❪✁❪ ❪✁❪✁❪✁❪ ❪✁❪✁❪✁❪ ❫✁❫✁❫✁❫ ❫✁❫✁❫✁❫ ❫✁❫✁❫✁❫ ❫✁❫✁❫✁❫ ❴✁❴✁❴✁❴ ❴✁❴✁❴✁❴ ❴✁❴✁❴✁❴ ❴✁❴✁❴✁❴ ❵✁❵✁❵✁❵ ❵✁❵✁❵✁❵ ❵✁❵✁❵✁❵ ❵✁❵✁❵✁❵ ❛✁❛✁❛✁❛ ❛✁❛✁❛✁❛ ❛✁❛✁❛✁❛ ❛✁❛✁❛✁❛ ❜✁❜✁❜✁❜ ❜✁❜✁❜✁❜ ❜✁❜✁❜✁❜ ❜✁❜✁❜✁❜ ❝✁❝✁❝✁❝ ❝✁❝✁❝✁❝ ❝✁❝✁❝✁❝ ❝✁❝✁❝✁❝ ❞✁❞✁❞✁❞ ❞✁❞✁❞✁❞ ❞✁❞✁❞✁❞ ❞✁❞✁❞✁❞ ❡✁❡✁❡✁❡ ❡✁❡✁❡✁❡ ❡✁❡✁❡✁❡ ❡✁❡✁❡✁❡ ❢✁❢✁❢✁❢ ❢✁❢✁❢✁❢ ❢✁❢✁❢✁❢ ❢✁❢✁❢✁❢ ❣✁❣✁❣✁❣ ❣✁❣✁❣✁❣ ❣✁❣✁❣✁❣ ❣✁❣✁❣✁❣ ❤✁❤✁❤✁❤ ❤✁❤✁❤✁❤ ❤✁❤✁❤✁❤ ❤✁❤✁❤✁❤ ✐✁✐✁✐✁✐ ✐✁✐✁✐✁✐ ✐✁✐✁✐✁✐ ✐✁✐✁✐✁✐ ❥✁❥✁❥✁❥ ❥✁❥✁❥✁❥ ❥✁❥✁❥✁❥ ❥✁❥✁❥✁❥ ❦✁❦✁❦✁❦✁❦ ❦✁❦✁❦✁❦✁❦ ❦✁❦✁❦✁❦✁❦ ❦✁❦✁❦✁❦✁❦ ❦✁❦✁❦✁❦✁❦ ❧✁❧✁❧✁❧✁❧ ❧✁❧✁❧✁❧✁❧ ❧✁❧✁❧✁❧✁❧ ❧✁❧✁❧✁❧✁❧ ❧✁❧✁❧✁❧✁❧ ♠✁♠✁♠✁♠ ♠✁♠✁♠✁♠ ♠✁♠✁♠✁♠ ♠✁♠✁♠✁♠ ♠✁♠✁♠✁♠ ♥✁♥✁♥✁♥ ♥✁♥✁♥✁♥ ♥✁♥✁♥✁♥ ♥✁♥✁♥✁♥ ♥✁♥✁♥✁♥ ♦✁♦✁♦✁♦ ♦✁♦✁♦✁♦ ♦✁♦✁♦✁♦ ♦✁♦✁♦✁♦ ♣✁♣✁♣✁♣ ♣✁♣✁♣✁♣ ♣✁♣✁♣✁♣ ♣✁♣✁♣✁♣ q✁q✁q✁q q✁q✁q✁q q✁q✁q✁q q✁q✁q✁q q✁q✁q✁q r✁r✁r✁r r✁r✁r✁r r✁r✁r✁r r✁r✁r✁r r✁r✁r✁r s✁s✁s✁s s✁s✁s✁s s✁s✁s✁s s✁s✁s✁s t✁t✁t✁t t✁t✁t✁t t✁t✁t✁t t✁t✁t✁t ✉✁✉✁✉✁✉ ✉✁✉✁✉✁✉ ✉✁✉✁✉✁✉ ✉✁✉✁✉✁✉ ✉✁✉✁✉✁✉ ✈✁✈✁✈✁✈ ✈✁✈✁✈✁✈ ✈✁✈✁✈✁✈ ✈✁✈✁✈✁✈ ✈✁✈✁✈✁✈ ✇✁✇✁✇✁✇ ✇✁✇✁✇✁✇ ✇✁✇✁✇✁✇ ✇✁✇✁✇✁✇ ①✁①✁①✁① ①✁①✁①✁① ①✁①✁①✁① ①✁①✁①✁① ②✁②✁②✁② ②✁②✁②✁② ②✁②✁②✁② ②✁②✁②✁② ②✁②✁②✁② ③✁③✁③✁③ ③✁③✁③✁③ ③✁③✁③✁③ ③✁③✁③✁③ ③✁③✁③✁③ ④✁④✁④✁④ ④✁④✁④✁④ ④✁④✁④✁④ ④✁④✁④✁④ ⑤✁⑤✁⑤✁⑤ ⑤✁⑤✁⑤✁⑤ ⑤✁⑤✁⑤✁⑤ ⑤✁⑤✁⑤✁⑤ ⑥✁⑥✁⑥✁⑥ ⑥✁⑥✁⑥✁⑥ ⑥✁⑥✁⑥✁⑥ ⑥✁⑥✁⑥✁⑥ ⑥✁⑥✁⑥✁⑥ ⑦✁⑦✁⑦✁⑦ ⑦✁⑦✁⑦✁⑦ ⑦✁⑦✁⑦✁⑦ ⑦✁⑦✁⑦✁⑦ ⑦✁⑦✁⑦✁⑦
  • Directional width changes at most ǫα
  • Determined by convex hull
slide-21
SLIDE 21

Algorithm 1: Analysis

  • Coreset size O(1/(αǫ)d−1)
  • One point per “boundary” grid cell
  • Cell size O(1/(αǫ))
  • Running time O(n + 1/(αǫ)d−1)
  • O-notation hides

√ d

  • α has a bad dependence on d
slide-22
SLIDE 22

Algorithm 2: Polytope

  • Run Algorithm 1, return (ǫ/2)-approximation P1
  • Apply [Dudley 1974] to P1, lose another ǫ/2
  • Sample the sphere of radius

√ d + 1

  • Closest point routine [G¨

artner 1995], runs in linear time, returns all (at most d) closest points

  • Return the set of closest points P2
slide-23
SLIDE 23

Algorithm 2: Analysis

  • Correctness
  • Fact 1: Dudley polytope is also valid for P2
  • Fact 2: CH(P2) ⊆ CH(P1) ⊆ Dudley
  • Want (αǫ/2)-approximation of the convex hull
  • Yields ǫ/2 for directional width
  • Required number of samples

O((

  • αǫ/2)d−1) = O((αǫ)(d−1)/2)
  • This is also (roughly) the size of the result P2
  • At most d per sample
  • Compare to Algorithm 1: O((αǫ)d−1)
slide-24
SLIDE 24

Algorithm 2: Analysis

  • Find closest points for O((αǫ)(d−1)/2) samples
  • The closest point routine [G¨

artner 1995]

  • Linear in the number of points
  • In this case, |P1| = O((αǫ)d−1)
  • Total, O((αǫ)3(d−1)/2)
  • Including the call to Algorithm 1, we get O(n + (αǫ)3(d−1)/2)
  • Compare to Algorithm 1: O(n + (αǫ)d−1)
slide-25
SLIDE 25

Algorithm 3: Arrangement

  • Run Algorithm 2, get an (ǫ/2)-approximation P2
  • Decompose a set of directions Rd−1 using an arrangement of

(d − 2)-flats u, v ∈ Rd−1 in the same cell ⇒

  • u

||u|| − v ||v||

αǫ 4 √ d

  • Identify diametrically opposite cells

(induced partition of Pd−1, the set of unoriented directions)

  • Return P3, consisting of two points per cell
  • Extremal points in one arbitrary direction within the cell
  • Lose another ǫ/2

angle error, extreme point error ≤ ≤

  • u

||u|| − v ||v||

  • · ||p − q|| ≤

αǫ 4 √ d · 2 √ d = αǫ 2

slide-26
SLIDE 26

Algorithm 3: Computing the Arrangement

slide-27
SLIDE 27

Algorithm 3: Computing the Arrangement

  • (d − 1)-dimensional grid within each of the d facets of C
  • Cell size

αǫ 4 √ d

  • Results in a set of (d − 2)-flats
  • Affine hull with the origin, intersect with Pd−1
slide-28
SLIDE 28

Algorithm 3: Computing the Arrangement

  • (d − 1)-dimensional grid within each of the d facets of C
  • Cell size

αǫ 4 √ d

  • Results in a set of (d − 2)-flats
  • Affine hull with the origin, intersect with Pd−1
  • Complexity of the arrangement
  • Number of hyperplanes d(d − 1) 4

√ d αǫ

  • Complexity O(1/(αǫ)d−1)
slide-29
SLIDE 29

Algorithm 3: Analysis

  • Coreset size |P3| = O(1/(αǫ)d−1)
  • Same as the arrangement complexity
  • Extremal points are computed by linear search through P2
  • |P2| = O(1/(αǫ)(d−1)/2) time per cell
  • O(1/(αǫ)d−1) cells
  • O(1/(αǫ)3(d−1)/2) total
  • Combined with Algorithm 2, O(n + 1/(αǫ)3(d−1)/2)
  • Note |P3| > |P2|, a point may be extremal in multiple cells
slide-30
SLIDE 30

Approximating (d − 1)-variate Functions

  • Recall: ǫ-approximation in terms of extent
slide-31
SLIDE 31

Approximating (d − 1)-variate Functions

  • Recall: ǫ-approximation in terms of extent
  • 1. Linear functions (hyperplanes), using duality
  • 2. General polynomials, using linearization
  • 3. r-th roots of polynomials, r ∈ Z
slide-32
SLIDE 32

Point-Hyperplane Duality

  • The hyperplane

h : xd = a1x1 + a2x2 + · · · + ad−1xd−1 + ad corresponds to the point h∗ = (a1, a2, . . . , ad) ∈ Rd

  • Lemma:

Set of hyperplanes H = {h1, h2, . . . , hn} is ǫ-approximated by K ⊂ H over ∆ ∈ Rd−1 iff H∗ is ǫ-approximated by K ∗ over ∆

  • Proof:

Directional width w(u, H∗) is the same as the extent e(u, H)

  • Holds for any u ∈ Rd−1 and any set of hyperplanes H in Rd
  • Important to define w(·, ·) using the xd = 1 plane
  • Immediately implies ǫ-approximation algorithms for linear

functions in (d − 1)-variables

slide-33
SLIDE 33

Linearization

  • A set of (d − 1)-variate polynomials F = {f1, f2, . . . , fn}
  • Linearization of dimension k

fi(x) = a(i)

0 + a(i) 1 φ1(x) + · · · + a(i) k φk(x)

i = 1, 2, . . . , n

  • Reduces to a set of k-variate linear functions

fi(y) = a(i)

0 + a(i) 1 y1 + · · · + a(i) k yk

i = 1, 2, . . . , n with y = φ(x), φ : Rd−1 → Rk

  • An ǫ-approximation for {fi(y)} over ∆ ∈ Rk implies an

ǫ-approximation for {fi(x)} over φ−1(∆ ∩ φ(Rd−1))

slide-34
SLIDE 34

Linearization Example

  • fi(x) is the distance of the point (x1, x2) ∈ R2 to a circle in

R2 with center (p(i), q(i)) and radius r (i) fi(x) = (r (i))2 − (x1 − p(i))2 − (x2 − q(i))2

  • Can be written as

fi(x) = (r (i) − p(i) − q(i))2 + (2p(i))x1 + (2q(i))x2 − [x2

1 + x2 2]

  • A linearization of dimension k = 3 with

a(i) = [(r (i) − p(i) − q(i))2, 2p(i), 2q(i), −1] φ(x) = [x1, x2, x2

1 + x2 2]

  • [Agarwal, Matouˇ

sek 1994] Computing linearization of minimum dimension

slide-35
SLIDE 35

Polynomials: Algorithms

  • For a set F of n (d − 1)-variate polynomials admits a

linearization of dimension k, can compute

  • Algorithm 1:

an ǫ-approximation of size O(1/ǫk), in time O(n + 1/ǫk)

  • Algorithm 2:

an ǫ-approximation of size O(1/ǫk/2), in time O(n + 1/ǫ3k/2)

  • Algorithm 3:

a set of O(1/ǫ)(d − 2)-dimensional surfaces in Rd−1, in time O(n + 1/ǫ3k/2), such that within each cell of their arrangement F is ǫ-approximated by 2 of its elements

  • Complexity of the arrangement O(1/ǫd−1) [Agarwal, Sharir 00]

Cells are of complexity O(1)

  • Algorithms 2 and 3:

an ǫ-approximation of size O(1/ǫmin{k/2,d−1}), in time O(n + 1/ǫ3k/2)

slide-36
SLIDE 36

Roots of Polynomials

  • Want ǫ-approximation for F = {(f1)1/r, (f2)1/r, . . . , (fn)1/r}

where r is integer

  • Cannot linearize directly
  • Special cases can be handled [Chan 02]
  • If a, b, A, B ≥ 0 and [A, B] ⊆ [a, b] then

B−A ≥ (1−δ)(b−a) ⇒ B1/r −A1/r ≥ (1−ǫ)(b1/r −a1/r) for δ =

  • ǫ

2(r−1)

r

  • It suffices to compute O(ǫr) approximation to {f1, f2, . . . , fn}
slide-37
SLIDE 37

Roots of Polynomials: Algorithms

  • Set of F, |F| = n, contains r-th roots of (d − 1)-variate

non-negative polynomials that admit a linearization of of dimension k

  • Algorithm 1:

ǫ-approximation in time O(1/ǫkr) and size O(1/ǫkr)

  • Algorithms 2 and 3:

ǫ-approximation in time O(1/ǫ3kr/2) and size O(1/ǫr min{d−1,k/2})

  • Algorithm 3:

A set of O(1/ǫr) (d − 2)-dimensional surfaces in Rd−1, in time O(1/ǫ3kr/2) , such that within each cell of their arrangement, F is ǫ-approximated by two of its elements

slide-38
SLIDE 38

Classes of Extent Measures

  • Faithful
  • Approximated through directional width
  • “Convex” measures (bounding shapes)
  • Examples:

Diameter Width Radius of the smallest enclosing ball Volume of the minimum bounding box Volume enclosed by the convex hull Surface area of the convex hull

  • Other
  • Approximated through extent
  • “Concave” measures (“shells”)
  • Examples:

Minimum width spherical shell (annulus) Minimum width cylindrical shell

slide-39
SLIDE 39

Dynamic Updates

  • Based on a balanced tree data structure
  • Both insertions and deletions
  • Recompute approximations along the unique path to the root
  • Update time per operation O((logk+1 n/ǫ)k + f (log n/ǫ) log n)
  • Amortized O((logk n/ǫ)k + f (log n/ǫ))
  • Based on the ranked subsets data structure
  • Insertions only
  • Partition the points into ranked subsets, based on the binary

encoding of n

  • Data structure size O(log2k+1 n/ǫk)
  • Coreset size O(log2k+1 n/ǫk) ,

amortized insertion time O((1/ǫ)k + f (ǫ))

  • Coreset size O(1/ǫk) ,

amortized insertion time O(log2k+1 n/ǫk + f (ǫ))