Approximating the Diameter, Width, Smallest Enclosing Cylinder, and - - PowerPoint PPT Presentation

approximating the diameter width smallest enclosing
SMART_READER_LITE
LIVE PREVIEW

Approximating the Diameter, Width, Smallest Enclosing Cylinder, and - - PowerPoint PPT Presentation

Approximating the Diameter, Width, Smallest Enclosing Cylinder, and Minimum-Width Annulus Timothy M. Chan International Journal of Computational Geometry and Applications Approximating the Diameter, Width, Smallest Enclosing Cylinder, and


slide-1
SLIDE 1

Approximating the Diameter, Width, Smallest Enclosing Cylinder, and Minimum-Width Annulus

Timothy M. Chan International Journal of Computational Geometry and Applications

Approximating the Diameter, Width, Smallest Enclosing Cylinder, and Minimum-Width Annulus – p. 1/2

slide-2
SLIDE 2

Problems

Approximating the Diameter, Width, Smallest Enclosing Cylinder, and Minimum-Width Annulus – p. 2/2

slide-3
SLIDE 3

Known Exact Algorithms

Diameter

O(n log n) for d = 2, 3 O(n2−2/(⌈d/2⌉+1) logO(1) n) for d = 4

Trivially O(n2) for higher d

Width

O(n log n) for d = 2 O(n3/2+δ) expected time for d = 3 O(n⌈d/2⌉) by halfspace intersection algorithm for

higher d

Approximating the Diameter, Width, Smallest Enclosing Cylinder, and Minimum-Width Annulus – p. 3/2

slide-4
SLIDE 4

Known Exact Algorithms

Smallest Enclosing Cylinder

Identical to width for d = 2

O(n3+δ) for d = 3 O(n2d−1+δ) for higher d

Minimum-Width Annulus

O(n3/2+δ) randomized for d = 2 O(n⌊d/2⌋+1) for higher d

Approximating the Diameter, Width, Smallest Enclosing Cylinder, and Minimum-Width Annulus – p. 4/2

slide-5
SLIDE 5

Key Points in Approximation

Quantities must be approximated to within factor of

(1 + O(ε)).

Linear Time Approximation Scheme (LTAS): O∗(Ecn), where

E = 1/ε O∗ notation hides logO(1) E factors

Strong Linear Time Approximation Scheme: O∗(n + Ec)

Running time is linear in n as long as E ≤ n1/c The paper ignores constant factors depending on d (which are usually exponential), on the grounds that we are chiefly concerned with low-dimensional problems.

Approximating the Diameter, Width, Smallest Enclosing Cylinder, and Minimum-Width Annulus – p. 5/2

slide-6
SLIDE 6

Key Points in Approximation

Approximate solutions use combinations of the following simplifications: Rounding to grid Cones + Ray shooting The first problem (Diameter) is solved using just the above two techniques. The other three problems are approximated by linear/convex programs (LP’s/CP’s), then the input to these programs is simplified as above.

Approximating the Diameter, Width, Smallest Enclosing Cylinder, and Minimum-Width Annulus – p. 6/2

slide-7
SLIDE 7

Rounding to Grid

  • Ref. Barequet and Har-Peled paper presented by An

last week.

Main idea: Rounding points to their nearest neighbours

  • n a regular lattice of spacing δ alters their linear

properties by at most O(δ). If δ = O(ε∆) then ∆′ is (1 + O(ε))-approximation to ∆.

Approximating the Diameter, Width, Smallest Enclosing Cylinder, and Minimum-Width Annulus – p. 7/2

slide-8
SLIDE 8

Cones + Ray Shooting

Main idea: Let θε = arccos(1/(1 + ε)) = Θ(√ε). It is

possible to cover space of directions by O(1/θd−1

ε

)

cones of angle θε. i.e. ∃ set Vd of O(1/θd−1

ε

) unit vectors in Rd s.t. ∀x ∈ Rd, ∃a ∈ Vd s.t. ∠(a, x) ≤ θε, or equivalently: x/(1 + ε) ≤ max

a∈Vd a · x ≤ x

To maximize p − q within an (1 + ε)-factor approximation, we can maximize a · (p − q). Easily done by maximizing a · p and minimizing a · q, in

O(|Vd|n) = O(E(d−1)/2n) time each (brute force).

Known as "Ray Shooting" (RS) in a convex polytope (in the dual).

Approximating the Diameter, Width, Smallest Enclosing Cylinder, and Minimum-Width Annulus – p. 8/2

slide-9
SLIDE 9

Cones + Ray Shooting

x ≤ (1 + ε)x′

Approximating the Diameter, Width, Smallest Enclosing Cylinder, and Minimum-Width Annulus – p. 9/2

slide-10
SLIDE 10

Diameter

Previous best: O(n + E2(d−1)d/(d+1))

A constant-factor approximation ∆0 = Θ(∆) is easy to calculate in O(n) time (farthest-point distance of any point). Will be used as "seed" for grid separation.

Algorithm 1

Round to grid of separation ε∆0 (O(Ed) points). Simplify further by retaining only top and bottom points of each vertical line in grid (diametrically

  • pposite points must belong to this set).

Now compute diameter. Gives (1 + O(ε))- approximation in brute force time O(n + E2(d−1)).

Algorithm 2: Apply cones + RS in time O(E(d−1)/2n).

Approximating the Diameter, Width, Smallest Enclosing Cylinder, and Minimum-Width Annulus – p. 10/2

slide-11
SLIDE 11

Diameter

Algorithm 3 = Algorithm 1 + Algorithm 2

Instead of using brute force on rounded points, use Algorithm 2.

Rationale: a (1 + ε)-approximation of a

(1 + ε)-approximation is a (1 + O(ε))-approximation.

More efficient strong LTAS: O(n + E3(d−1)/2).

Algorithm 4: Out, damned spot! Algorithm 5 (Grid + Cones + Dimension Reduction)

For a set of points P ∈ Rd, P ′ ⊂ P (1 + ε)-simplifies P if for any q ∈ Rd,

max

p′∈P ′ p′ − q ≥ max p∈P p − q/(1 + ε)

Approximating the Diameter, Width, Smallest Enclosing Cylinder, and Minimum-Width Annulus – p. 11/2

slide-12
SLIDE 12

Diameter

Algorithm 5 (Grid + Cones + Dimension Reduction)

(contd) Round points to grid, obtaining P.

Main idea: Recursing on dimension, find a set P ′ of

O(E(d−1)/2) points that (1 + O(ε))-simplify P.

Decompose P into O(E) subsets Pi, each lying on a grid hyperplane. Recursively, find P ′

i ⊂ Pi of size O(E(d−2)/2) that

(1 + O(ε))-simplifies Pi.

Lemma: ∪iP ′

i (1 + O(ε))-simplifies P.

Approximating the Diameter, Width, Smallest Enclosing Cylinder, and Minimum-Width Annulus – p. 12/2

slide-13
SLIDE 13

Diameter

Algorithm 5 (Grid + Cones + Dimension Reduction)

(contd)

Main idea (contd)

∪iP ′

i has size O(Ed/2) — still too large. Reduce by

cones: For each a ∈ Vd find point pa ∈ ∪iP ′

i maximizing

a · p. P ′ = {pa | a ∈ Vd} has size O(E(d−1)/2).

Computable by RS in time O(E(d−1)/2| ∪i P ′

i|) =

O(Ed−1/2).

Lemma: P ′ (1 + ε)-simplifies ∪iP ′

i.

And again, (1 + O(ε)) × (1 + O(ε)) = (1 + O(ε)) . . .

Approximating the Diameter, Width, Smallest Enclosing Cylinder, and Minimum-Width Annulus – p. 13/2

slide-14
SLIDE 14

Diameter

Algorithm 5 (Grid + Cones + Dimension Reduction)

(contd) Finally, apply Algorithm 2 (cones) to

(1 + O(ε))-approximate the diameter of P ′, which in

turn (1 + O(ε))-approximates the diameter of P (“easily seen”). Time taken = O(E(d−1)/2)|P ′|) = O(Ed−1).

Total time: solve

Td(n) =

O(E)

  • i=1

Td−1(ni) + O(Ed−1/2)

where

i ni = n. Answer: O(n + Ed−1/2).

Approximating the Diameter, Width, Smallest Enclosing Cylinder, and Minimum-Width Annulus – p. 14/2

slide-15
SLIDE 15

The LP/CP problems

Variables x, u ∈ Rd,

y, z ∈ R.

Width minimize

(z − y)/x

subject to

y ≤ x · p ≤ z (∀p ∈ P)

Smallest Enclosing Cylinder minimize

z

subject to

x +

  • u·(p−x)

u·u

  • u − p ≤ z

(∀p ∈ P)

Minimum-Width Annulus minimize

(z − y)

subject to

y ≤ x − p ≤ z (∀p ∈ P)

Approximating the Diameter, Width, Smallest Enclosing Cylinder, and Minimum-Width Annulus – p. 15/2

slide-16
SLIDE 16

The LP/CP problems

Basic approach

Construct a grid of suitable separation (ε times constant-factor approximation) to reduce the number

  • f points to O(Ed−1).

Use cones + change of variables to approximate the problem with an LP/CP instance. Solve LP/CP in linear time (known algorithms).

Approximating the Diameter, Width, Smallest Enclosing Cylinder, and Minimum-Width Annulus – p. 16/2

slide-17
SLIDE 17

Width

Simplest example of three steps of previous slide

  • 1. Rounding to grid

Barequet and Har-Peled proved existence of box B such that

cB can be translated to fit inside conv(P), for

constant c

B can be computed in linear time

Construct a grid where each cell is an instance of

εcB and round P to P ′.

If P is contained in slab S∗ of width w∗, then P ′ is contained in slab of width (1 + 2ε)w∗ since P ′ fits in

P ⊕ εcB, which fits in P ⊕ εconv(P) ⊂ S∗ ⊕ εS∗.

Approximating the Diameter, Width, Smallest Enclosing Cylinder, and Minimum-Width Annulus – p. 17/2

slide-18
SLIDE 18

Width

  • 2. Conversion to approximate LP

Given Vd (cone directions), transform to

minimize

(z − y)/|a · x|

subject to

y ≤ x · p′ ≤ z (∀p′ ∈ P ′)

At the minimum, a must be θε-close to x. Then we have x/(1 + ε) ≤ |a · x|. So a solution of the new system is a

(1 + ε)-approximation of the minimum width of P ′.

Set X = x/(z − y) and Y = y/(z − y) to get LP:

maximize

|a · X|

subject to

Y ≤ X · p′ ≤ Y + 1 (∀p′ ∈ P ′)

Approximating the Diameter, Width, Smallest Enclosing Cylinder, and Minimum-Width Annulus – p. 18/2

slide-19
SLIDE 19

Width

  • 3. Solving LP

Use a known linear-time LP algorithm to solve separately for each a ∈ Vd. Total time = O(|Vd||P ′|) = O(E3(d−1)/2) Take the maximum solution. Algorithm runs in O(n + E3(d−1)/2) time.

Approximating the Diameter, Width, Smallest Enclosing Cylinder, and Minimum-Width Annulus – p. 19/2

slide-20
SLIDE 20

Smallest Enclosing Cylinder

  • 1. Rounding to grid

Let z∗ be optimal radius. Compute constant-factor approximation z0 ≤ cz∗: use Step 2 (below) with ε = c − 1, or take enclosing cylinder with center line through approximate diametrical pair. Build uniform grid of separation εz0 and round points to P ′, retaining only top and bottom points on each vertical line as usual. Smallest enclosing cylinder of P ′ (radius z′) is

(1 + O(ε))-approximation to smallest enclosing

cylinder of P.

Approximating the Diameter, Width, Smallest Enclosing Cylinder, and Minimum-Width Annulus – p. 20/2

slide-21
SLIDE 21

Smallest Enclosing Cylinder

  • 2. Conversion to approximate CP

Given Vd (cone directions), transform to

minimize

z

subject to

x +

  • a·(p′−x)

a·u

  • u − p′ ≤ z

(∀p′ ∈ P ′)

Lemma: If (x, u, z, a) is the optimal solution of this

system, then (x, u, z) is feasible for the original program and z ≤ (1 + ε)z′. Set X = x −

a·x

a·u

  • u, Y =

u a·u, Z = z2 to get CP:

minimize

Z

subject to

X + (a · p′)Y − p2 ≤ Z (∀p′ ∈ P ′)

Approximating the Diameter, Width, Smallest Enclosing Cylinder, and Minimum-Width Annulus – p. 21/2

slide-22
SLIDE 22

Smallest Enclosing Cylinder

  • 3. Solving CP

Use a known linear-time CP algorithm to solve separately for each a ∈ Vd. Total time = O(|Vd||P ′|) = O(E3(d−1)/2) Take the minimum solution. Algorithm runs in O(n + E3(d−1)/2) time.

Approximating the Diameter, Width, Smallest Enclosing Cylinder, and Minimum-Width Annulus – p. 22/2

slide-23
SLIDE 23

Minimum-Width Annulus

Start with a constant-factor approximation: Assume one p is the origin and consider the problem:

minimize

(z2 − y2)/|a · x|

subject to

y ≤ x − p ≤ z (∀p ∈ P)

Lemma: This system reduces to an LP by change of

  • variables. The solution (x, y, z, a) of this LP gives a

constant-factor approximation w0 = z − y to the true width w∗ = z∗ − y∗ of the thinnest annulus.

Narrow case: z∗ ≤ (1 + ε)y∗. Add a new constraint

(linearizes with above):

w0 ≤ ε(1 + ε)a · x

Approximating the Diameter, Width, Smallest Enclosing Cylinder, and Minimum-Width Annulus – p. 23/2

slide-24
SLIDE 24

Minimum-Width Annulus

Lemma: If (x, y, z, a) is the optimal solution of the new

system, then z − y ≤ (1 + O(ε))w∗.

⇒ Narrow case solved in O(E(d−1)/2n) time.

Wide case: z∗ > (1 + ε)y∗

Round to grid of separation εw0. Only in this case can the number of rounded points be bounded, by

O(E2d−1).

Further restrict possible centre points to grid (O(E2d) candidates) and calculate nearest/farthest point for each candidate by brute force.

⇒ Wide case solved in O(n + E4d−1) time.

Complete LTAS: O(E(d−1)/2n + E4d−1)

Approximating the Diameter, Width, Smallest Enclosing Cylinder, and Minimum-Width Annulus – p. 24/2

slide-25
SLIDE 25

Thank You

Exit, pursued by a bear

Approximating the Diameter, Width, Smallest Enclosing Cylinder, and Minimum-Width Annulus – p. 25/2