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

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

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

Page 1: Minimum-Perimeter Enclosing k-gons Joe Mitchell and Valentin Polishchuk.

Minimum-Perimeter Minimum-Perimeter Enclosing k-gonsEnclosing k-gons

Joe Mitchell and Valentin PolishchukJoe Mitchell and Valentin Polishchuk

Page 2: Minimum-Perimeter Enclosing k-gons Joe Mitchell and Valentin Polishchuk.

Given: Convex n-gon PGiven: Convex n-gon P

Find: Find: kk-gon -gon QQ

P P QQ

perimeterperimeter of of QQ → min→ min

Problem FormulationProblem 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]

Page 3: Minimum-Perimeter Enclosing k-gons Joe Mitchell and Valentin Polishchuk.

Given: Convex n-gon PGiven: Convex n-gon P

Find: k-gon QFind: k-gon Q

P P Q Q

areaarea of Q of Q → min→ min

Previous WorkPrevious Work

Solved in:[Aggarwal, Chang and Yap’85][Chang and Yap’86][Aggarwal, Klawe, Moran, Shor, Wilber‘86]

P

Q

Page 4: Minimum-Perimeter Enclosing k-gons Joe Mitchell and Valentin Polishchuk.

Given: Convex n-gon PGiven: Convex n-gon P

Find: Find: 33-gon -gon QQ

P P QQ

perimeterperimeter of of QQ → min→ min

Previous WorkPrevious Work

P

Q

Solved in:[Bhattacharya and Mukhopadhyay’02][Medvedeva and Mukhopadhyay’03]

Page 5: Minimum-Perimeter Enclosing k-gons Joe Mitchell and Valentin Polishchuk.

FPTASFPTASBased on Based on [MPA’92][MPA’92]

shortest shortest kk-link path in simple polygon-link path in simple polygon

Our ResultsOur Results

P

QSmall print:

Vertices of Q given by roots of high-degree polynomials

Exact solution not possible

O¡n3k3 log( N k

²1=k )¢

Page 6: Minimum-Perimeter Enclosing k-gons Joe Mitchell and Valentin Polishchuk.

To “Rock”To “Rock”

hh ab = a ab = a

h h rocks onrocks on a a

P

Qha

b

Page 7: Minimum-Perimeter Enclosing k-gons Joe Mitchell and Valentin Polishchuk.

To Be “Flush” withTo Be “Flush” with

PP

ee

P

Q

ef

e e ff

is flush with QQ

ff

Page 8: Minimum-Perimeter Enclosing k-gons Joe Mitchell and Valentin Polishchuk.

Everybody in Polygon Everybody in Polygon Optimization Uses Optimization Uses

Flushness!Flushness![Boyce, Dobkin, Drysdale and Guibas’85][Boyce, Dobkin, Drysdale and Guibas’85][Chang’86, DePano’87][Chang’86, DePano’87][Aggarwal and Park’88][Aggarwal and Park’88][Mitchell, Piatko and Arkin’92][Mitchell, Piatko and Arkin’92][Piatko’93][Piatko’93][Bhattacharya and Mukhopadhyay’02][Bhattacharya and Mukhopadhyay’02][Aggarwal, Chang and Yap’85][Aggarwal, Chang and Yap’85][Chang and Yap’86][Chang and Yap’86][Aggarwal, Klawe, Moran, Shor and Wilber‘86][Aggarwal, Klawe, Moran, Shor and Wilber‘86]

And so will we…

Page 9: Minimum-Perimeter Enclosing k-gons Joe Mitchell and Valentin Polishchuk.

The Flushness Lemma:The Flushness Lemma:

Lemma:Lemma: QQ is flush with P in opt is flush with P in opt

P

Q

Page 10: Minimum-Perimeter Enclosing k-gons Joe Mitchell and Valentin Polishchuk.

The AlgorithmThe Algorithm

For each edge e of PFor each edge e of PGuess: e is flush with QGuess: e is flush with Q

Transform to simple P’Transform to simple P’

FindFind shortest (k+1)-link s-t shortest (k+1)-link s-t pathpath

Complete into QComplete into Qee

Chose min over e Chose min over e

P

eQ

P’

s t

Qe

[MPA’92]

e

Page 11: Minimum-Perimeter Enclosing k-gons Joe Mitchell and Valentin Polishchuk.

Running TimeRunning Time

n ¢SP (k;n)

[MPA’92]

Can do better thanCan do better than

Looking into details of [MPA ’92] :Looking into details of [MPA ’92] :

or

n ¢SP (k;n)to find shortest k-link path in a simple n-gon

O¡n3k3 log( N k

²1=k )¢

O(n3k=²)

SP (k;n) = O¡n3k3 log( N k

²1=k )¢

SP (k;n) = O(k3n3=²)

Page 12: Minimum-Perimeter Enclosing k-gons Joe Mitchell and Valentin Polishchuk.

““RRotating calipers” [Toussaint’83]otating calipers” [Toussaint’83]

Local optimality:Local optimality: Each edge of Each edge of QQ either flush with either flush with (an edge of)(an edge of) P P

or rocks on a vertex of Por rocks on a vertex of P

perimeter ofperimeter of Q Q ==

If not flush, rotate If not flush, rotate QQ by by θθ

perimeter ofperimeter of Q( Q(θθ) = ) = P k

i=1ai

sin ®i2

cos (¯ i ¡ µ)¡ (° i +µ)2

Proof of the Flushness Proof of the Flushness LemmaLemma

keeping ‘s fixed

const concave fcn of θ

concave fcn of θ

Attains min at θmin or θmax

← when Q is flush with P

P ki=1

aisin ®i

(sin¯ i + sin°i ) =P k

i=1ai

sin ®i2

cos ¯ i ¡ ° i2

Page 13: Minimum-Perimeter Enclosing k-gons Joe Mitchell and Valentin Polishchuk.

A Fast Approximation A Fast Approximation AlgorithmAlgorithm

Page 14: Minimum-Perimeter Enclosing k-gons Joe Mitchell and Valentin Polishchuk.

Interleaving k-gonsInterleaving k-gons

Page 15: Minimum-Perimeter Enclosing k-gons Joe Mitchell and Valentin Polishchuk.

Locally Optimal k-gons Locally Optimal k-gons InterleaveInterleave

Otherwise – slide an Otherwise – slide an edge edge until until supported by Psupported by P

P

Page 16: Minimum-Perimeter Enclosing k-gons Joe Mitchell and Valentin Polishchuk.

Perimeters of Interleaving Perimeters of Interleaving kk--gonsgons

rr11+r+r22 ≤≤ bb/sin(/sin())

p(p(RR) ≤ ) ≤ p(p(BB)/sin()/sin(minmin))

b

r1

r2

R

B

Page 17: Minimum-Perimeter Enclosing k-gons Joe Mitchell and Valentin Polishchuk.

The Approximation The Approximation AlgorithmAlgorithm

Wrap Wrap equiangularequiangular k-gon k-gon QQkk

minmin(k-2)(k-2)kk

p(p(QQkk) ≤ p() ≤ p(OPTOPT)/cos()/cos(kk))

Linear-timeLinear-time

1/cos(1/cos(kk) - ) - approximationapproximation

P

Qk

Page 18: Minimum-Perimeter Enclosing k-gons Joe Mitchell and Valentin Polishchuk.

ExtensionsExtensions

Minimum-perimeter enclosing Minimum-perimeter enclosing envelopeenvelope

k-gon with given angle sequence k-gon with given angle sequence AA

Flush with PFlush with P

by the Flushness Lemmaby the Flushness Lemma

O(nk log k)O(nk log k) timetime [Mount [Mount

and Silverman’94]and Silverman’94]

Page 19: Minimum-Perimeter Enclosing k-gons Joe Mitchell and Valentin Polishchuk.

ExtensionsExtensionsRestricted envelopeRestricted envelope

Given Given PPoutout , P, Pinin PPoutout ,,

sequence sequence AA of k angles of k angles

Find PFind Pinin Q Q PPoutout

Q Q has angle sequence has angle sequence AAperimeter ofperimeter of Q Q → min→ min

Application:Application: ClassificationClassification Build low-complexity separatorBuild low-complexity separator

Pin

Q

Pout

Page 20: Minimum-Perimeter Enclosing k-gons Joe Mitchell and Valentin Polishchuk.

EitherEither flushflush oror bashbash

If flush If flush guess the flush edgeguess the flush edge

wrapwrap

with Pin with Pout

Pin

Q

Pout

by the Flushness Lemma

Page 21: Minimum-Perimeter Enclosing k-gons Joe Mitchell and Valentin Polishchuk.

i

a2

a1

IfIf bashbash

For {pFor {pjj,p,pll} – vertices of P} – vertices of Pinin

For For ee – edge of – edge of PPoutout

For For qqii – vertex of – vertex of QQ

Guess Guess qqi-1i-1qqii rocks on p rocks on pjj

qqiiqqi+1i+1 rocks on p rocks on pll

qqii is bash with e is bash with e

the bash point is a1 or a2

because iis fixed Pin

Pout

eqi

pj

pl

O(nin2noutk) guesses

Page 22: Minimum-Perimeter Enclosing k-gons Joe Mitchell and Valentin Polishchuk.

Know the direction of an edge of QKnow the direction of an edge of Q

O(min{O(min{ nninin, , kk log n log ninin}) to wrap}) to wrap

If flush If flush

O(nO(nininmin{min{ nninin, , kk log n log ninin})})

If If bashbash

O(nO(ninin22nnoutoutmin{min{ nninin, , kk log n log ninin})})

Restricted EnclosuresRestricted Enclosures

Pin

Q

Pout

O(nin2noutmin{ nin, k log nin})

Page 23: Minimum-Perimeter Enclosing k-gons Joe Mitchell and Valentin Polishchuk.

ConclusionConclusion

Algorithms for Algorithms for minimum-perimeter enclosing k-gonminimum-perimeter enclosing k-gon

Linear-time Linear-time 1/cos(1/cos(kk) – approximation) – approximation

ExtensionsExtensionsenvelopesenvelopes

restricted envelopesrestricted envelopes

Open: 3D min-surface-area polytope?

orO¡n3k3 log( N k

²1=k )¢

O(n3k=²)

Page 24: Minimum-Perimeter Enclosing k-gons Joe Mitchell and Valentin Polishchuk.
Page 25: Minimum-Perimeter Enclosing k-gons Joe Mitchell and Valentin Polishchuk.
Page 26: Minimum-Perimeter Enclosing k-gons Joe Mitchell and Valentin Polishchuk.

Polygon Inclusion/EnclosurePolygon Inclusion/Enclosure Given Given polygon Ppolygon P Find Find polygon Q polygon Q

• Q Q P – inclusion problem P – inclusion problem P P Q – enclosure problem 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

ObjectivesObjectives• areaarea• perimeterperimeter