# Minimum-Perimeter Enclosing k-gons Joe Mitchell and Valentin Polishchuk.

## Presentation on theme: "Minimum-Perimeter Enclosing k-gons Joe Mitchell and Valentin Polishchuk."— Presentation transcript:

Minimum-Perimeter Enclosing k-gons Joe Mitchell and Valentin Polishchuk

Given: Convex n-gon P Find: k-gon Q P  Q P  Q perimeter of Q → min Problem Formulation P Q Stated as open problem: [Boyce, Dobkin, Drysdale, Guibas’85] [Chang’86] [DePano’87] [Aggarwal and Park’88] [Mitchell, Piatko and Arkin’92] [Piatko’93] [Bhattacharya and Mukhopadhyay’02]

Given: Convex n-gon P Find: k-gon Q P  Q P  Q area of Q → min Previous Work Solved in: [Aggarwal, Chang and Yap’85] [Chang and Yap’86] [Aggarwal, Klawe, Moran, Shor, Wilber‘86] P Q

Given: Convex n-gon P Find: 3-gon Q P  Q P  Q perimeter of Q → min Previous Work P Q Solved in: [Bhattacharya and Mukhopadhyay’02] [Medvedeva and Mukhopadhyay’03]

FPTAS Based on [MPA’92] shortest k-link path in simple polygon Our Results P Q Small print: Vertices of Q given by roots of high-degree polynomials Exact solution not possible O ¡ n 3 k 3 l og ( N k ² 1 = k ) ¢

To “Rock” h  ab = a h rocks on a h rocks on a P Q h a b

To Be “Flush” with Pe P Q e f e  f is flush with Q f

Everybody in Polygon Optimization Uses Flushness! [Boyce, Dobkin, Drysdale and Guibas’85] [Chang’86, DePano’87] [Aggarwal and Park’88] [Mitchell, Piatko and Arkin’92] [Piatko’93] [Bhattacharya and Mukhopadhyay’02] [Aggarwal, Chang and Yap’85] [Chang and Yap’86] [Aggarwal, Klawe, Moran, Shor and Wilber‘86] And so will we…

The Flushness Lemma: Lemma: Q is flush with P in opt Lemma: Q is flush with P in opt P Q

The Algorithm For each edge e of P Guess: e is flush with Q Transform to simple P’ Find shortest (k+1)-link s-t path shortest (k+1)-link s-t path Complete into Q e Chose min over e P e Q P’ s t QeQe [MPA’92] e

Running Time n ¢ SP ( k ; n ) [MPA’92] Can do better than Looking into details of [MPA ’92] : or n ¢ SP ( k ; n ) to find shortest k-link path in a simple n-gon O ¡ n 3 k 3 l og ( N k ² 1 = k ) ¢ O ( n 3 k = ² ) SP ( k ; n ) = O ¡ n 3 k 3 l og ( N k ² 1 = k ) ¢ SP ( k ; n ) = O ( k 3 n 3 = ² )

“Rotating calipers” [Toussaint’83] Local optimality: Local optimality: Each edge of Q either flush with (an edge of) P either flush with (an edge of) P or rocks on a vertex of P or rocks on a vertex of P perimeter of Q = If not flush, rotate Q by θ perimeter of Q(θ) = P k i = 1 a i s i n ® i 2 cos ( ¯ i ¡ µ ) ¡ ( ° i + µ ) 2 Proof of the Flushness Lemma keeping  ‘s fixed const concave fcn of θ Attains min at θ min or θ max ← when Q is flush with P P k i = 1 a i s i n® i ( s i n ¯ i + s i n ° i ) = P k i = 1 a i s i n ® i 2 cos ¯ i ¡ ° i 2

A Fast Approximation Algorithm

Interleaving k-gons

Locally Optimal k-gons Interleave Otherwise – slide an edge until supported by P P

Perimeters of Interleaving k-gons r 1 +r 2 ≤ b/sin(  ) p(R) ≤ p(B)/sin(  min  ) b r1r1 r2r2  R B

The Approximation Algorithm Wrap equiangular k-gon Q k  min  (k-2)  k  min  (k-2)  k p(Q k ) ≤ p(OPT)/cos(  k) Linear-time 1/cos(  k) - approximation 1/cos(  k) - approximation P QkQk

Extensions Minimum-perimeter enclosing envelope k-gon with given angle sequence A Flush with P by the Flushness Lemma O(nk log k) time [Mount and Silverman’94]

Extensions Restricted envelope Given P out, P in  P out, sequence A of k angles sequence A of k angles Find P in  Q  P out Q has angle sequence A Q has angle sequence A perimeter of Q → min Application: Classification Build low-complexity separator Build low-complexity separator P in Q P out

Either flush or bash If flush guess the flush edge guess the flush edgewrap with P in with P out P in Q P out by the Flushness Lemma

ii a2a2 a1a1 If bash For {p j,p l } – vertices of P in For e – edge of P out For q i – vertex of Q Guess q i-1 q i rocks on p j q i-1 q i rocks on p j q i q i+1 rocks on p l q i q i+1 rocks on p l q i is bash with e q i is bash with e the bash point is a 1 or a 2 because  i  is fixed P in P out e qiqi pjpj plpl O(n in 2 n out k) guesses

Know the direction of an edge of Q O(min{ n in, k log n in }) to wrap If flush O(n in min{ n in, k log n in }) If bash O(n in 2 n out min{ n in, k log n in }) Restricted Enclosures P in Q P out O( n in 2 n out min{ n in, k log n in } )

Conclusion Algorithms for minimum-perimeter enclosing k-gon Linear-time 1/cos(  k) – approximation 1/cos(  k) – approximationExtensionsenvelopes restricted envelopes restricted envelopes Open: 3D min-surface-area polytope? or O ¡ n 3 k 3 l og ( N k ² 1 = k ) ¢ O ( n 3 k = ² )

Polygon Inclusion/Enclosure Given polygon P Given polygon P Find polygon Q Find polygon Q Q  P – inclusion problem Q  P – inclusion problem P  Q – enclosure problem P  Q – enclosure problem Such that Such that Q is as large as possible – inclusion problemQ is as large as possible – inclusion problem Q is as small as possible – enclosure problemQ is as small as possible – enclosure problem Objectives Objectives areaarea perimeterperimeter

Similar presentations