Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let...

118
1 UNIONS OF ONIONS Maarten L¨ offler Wolfgang Mulzer Freie Universit¨ at Berlin Universiteit Utrecht

Transcript of Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let...

Page 1: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

1

UNIONS OF ONIONS

Maarten Loffler Wolfgang MulzerFreie Universitat BerlinUniversiteit Utrecht

Page 2: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

2

CHAPTER I

THE PROBLEM

Page 3: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

3

PREPROCESSING PARADIGM

Page 4: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

3

PREPROCESSING PARADIGM

Once upon a time, we were given R.

Page 5: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

3

PREPROCESSING PARADIGM

Once upon a time, we were given R.

R

Page 6: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

3

PREPROCESSING PARADIGM

Once upon a time, we were given R.

R

Soon, we get P: one point per region of R.

Page 7: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

3

PREPROCESSING PARADIGM

Once upon a time, we were given R.

R

Soon, we get P: one point per region of R.

P

Page 8: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

3

PREPROCESSING PARADIGM

Once upon a time, we were given R.

R

Soon, we get P: one point per region of R.

P

What we really want is some structure S(P ).

Page 9: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

3

PREPROCESSING PARADIGM

Once upon a time, we were given R.

R

Soon, we get P: one point per region of R.

P

What we really want is some structure S(P ).

S(P )

Page 10: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

3

PREPROCESSING PARADIGM

Once upon a time, we were given R.

R

Soon, we get P: one point per region of R.

P

What we really want is some structure S(P ).

S(P )

But time is precious!

Page 11: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

3

PREPROCESSING PARADIGM

R P

S(P )

QUESTION: Can we do some of the computation of

S(P ) before we know P?

Page 12: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

3

PREPROCESSING PARADIGM

R P

S(P )

QUESTION: Can we do some of the computation of

S(P ) before we know P?

First, compute an intermediary structure H(R).

Page 13: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

3

PREPROCESSING PARADIGM

R P

S(P )

QUESTION: Can we do some of the computation of

S(P ) before we know P?

First, compute an intermediary structure H(R).

H(R)

Page 14: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

3

PREPROCESSING PARADIGM

R P

S(P )

QUESTION: Can we do some of the computation of

S(P ) before we know P?

First, compute an intermediary structure H(R).

H(R)

Then, once we get P, compute S(P ) using H(R).

Page 15: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

3

PREPROCESSING PARADIGM

R P

S(P )

QUESTION: Can we do some of the computation of

S(P ) before we know P?

First, compute an intermediary structure H(R).

H(R)

Then, once we get P, compute S(P ) using H(R).

Page 16: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

3

PREPROCESSING PARADIGM

R P

S(P )H(R)

Linear time algorithms are known for:

[Held & Mitchell]

[L & Snoeyink]

[Ezra & Mulzer]

• Triangulations

• Delaunay triangulations

Superlinear, but o(n logn):

• Convex hull (lines)

Page 17: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

4

ONIONS

Page 18: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

4

ONIONS

Let P be a set of n points in the plane.

Page 19: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

4

ONIONS

Let P be a set of n points in the plane.

P

Page 20: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

4

ONIONS

Let P be a set of n points in the plane.

DEFINITION: The onion of P is the convex hull

of P, plus the onion of the rest of the points.

P

Page 21: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

4

ONIONS

Let P be a set of n points in the plane.

DEFINITION: The onion of P is the convex hull

of P, plus the onion of the rest of the points.

P

Page 22: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

4

ONIONS

Let P be a set of n points in the plane.

DEFINITION: The onion of P is the convex hull

of P, plus the onion of the rest of the points.

P

Page 23: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

4

ONIONS

Let P be a set of n points in the plane.

DEFINITION: The onion of P is the convex hull

of P, plus the onion of the rest of the points.

P

Page 24: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

4

ONIONS

Let P be a set of n points in the plane.

DEFINITION: The onion of P is the convex hull

of P, plus the onion of the rest of the points.

P

Onions have many useful and tasty applications.

Page 25: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

5

THE ONION PREPROCESSING PROBLEM

Page 26: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

5

THE ONION PREPROCESSING PROBLEM

Let R be a set of n disjoint unit disks.

Page 27: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

5

THE ONION PREPROCESSING PROBLEM

Let R be a set of n disjoint unit disks.

Page 28: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

5

THE ONION PREPROCESSING PROBLEM

Let R be a set of n disjoint unit disks.

Preprocessing algorithm: compute some magical

structure H(R).

Page 29: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

5

THE ONION PREPROCESSING PROBLEM

Let R be a set of n disjoint unit disks.

Preprocessing algorithm: compute some magical

structure H(R).

Page 30: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

5

THE ONION PREPROCESSING PROBLEM

Let R be a set of n disjoint unit disks.

Preprocessing algorithm: compute some magical

structure H(R).Reconstruction algorithm: given P and H(R),compute the onion of P.

Page 31: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

5

THE ONION PREPROCESSING PROBLEM

Let R be a set of n disjoint unit disks.

Preprocessing algorithm: compute some magical

structure H(R).Reconstruction algorithm: given P and H(R),compute the onion of P.

Page 32: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

5

THE ONION PREPROCESSING PROBLEM

Let R be a set of n disjoint unit disks.

Preprocessing algorithm: compute some magical

structure H(R).Reconstruction algorithm: given P and H(R),compute the onion of P.

Page 33: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

5

THE ONION PREPROCESSING PROBLEM

Let R be a set of n disjoint unit disks.

Preprocessing algorithm: compute some magical

structure H(R).Reconstruction algorithm: given P and H(R),compute the onion of P.

Page 34: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

6

CHAPTER II

THE SOLUTION

Page 35: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

7

PREPROCESSING ALGORITHM

Page 36: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

7

PREPROCESSING ALGORITHM

Consider a set R of n disjoint unit disks.

Page 37: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

7

PREPROCESSING ALGORITHM

Consider a set R of n disjoint unit disks.

R

Page 38: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

7

PREPROCESSING ALGORITHM

Consider a set R of n disjoint unit disks.

LEMMA: There exists a line that intersects at

most√n logn disks and has at most half of the

disks completely on each side.

R

Page 39: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

7

PREPROCESSING ALGORITHM

Consider a set R of n disjoint unit disks.

LEMMA: There exists a line that intersects at

most√n logn disks and has at most half of the

disks completely on each side.

R

Page 40: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

7

PREPROCESSING ALGORITHM

Consider a set R of n disjoint unit disks.

LEMMA: There exists a line that intersects at

most√n logn disks and has at most half of the

disks completely on each side.

R

[Alon et al.]

Page 41: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

7

PREPROCESSING ALGORITHM

Consider a set R of n disjoint unit disks.

We apply the lemma recursively, and get a

binary space partition tree T.

R

Page 42: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

7

PREPROCESSING ALGORITHM

Consider a set R of n disjoint unit disks.

We apply the lemma recursively, and get a

binary space partition tree T.

R

Page 43: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

7

PREPROCESSING ALGORITHM

Consider a set R of n disjoint unit disks.

We apply the lemma recursively, and get a

binary space partition tree T.

R

Page 44: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

7

PREPROCESSING ALGORITHM

Consider a set R of n disjoint unit disks.

We apply the lemma recursively, and get a

binary space partition tree T.

R

Page 45: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

7

PREPROCESSING ALGORITHM

Consider a set R of n disjoint unit disks.

We apply the lemma recursively, and get a

binary space partition tree T.

R

Page 46: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

7

PREPROCESSING ALGORITHM

Consider a set R of n disjoint unit disks.

We apply the lemma recursively, and get a

binary space partition tree T.

R

Page 47: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

7

PREPROCESSING ALGORITHM

Consider a set R of n disjoint unit disks.

We apply the lemma recursively, and get a

binary space partition tree T.

R

Page 48: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

7

PREPROCESSING ALGORITHM

Consider a set R of n disjoint unit disks.

We apply the lemma recursively, and get a

binary space partition tree T.

R

Page 49: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

7

PREPROCESSING ALGORITHM

Consider a set R of n disjoint unit disks.

We apply the lemma recursively, and get a

binary space partition tree T.

R

Page 50: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

7

PREPROCESSING ALGORITHM

Consider a set R of n disjoint unit disks.

We apply the lemma recursively, and get a

binary space partition tree T.

R

T

Page 51: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

7

PREPROCESSING ALGORITHM

Consider a set R of n disjoint unit disks.

We apply the lemma recursively, and get a

binary space partition tree T.

R

T

LEMMA: T has height logn+O(1).

Page 52: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

7

PREPROCESSING ALGORITHM

R

T

HINT: T = H(R) is our magical structure!

Page 53: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

8

RECONSTRUCTION ALGORITHM

R

T

Page 54: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

8

RECONSTRUCTION ALGORITHM

First, locate P in R and T.

R

T

Page 55: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

8

RECONSTRUCTION ALGORITHM

First, locate P in R and T.

R

P

T

Page 56: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

8

RECONSTRUCTION ALGORITHM

First, locate P in R and T.

P

T

Page 57: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

8

RECONSTRUCTION ALGORITHM

First, locate P in R and T.

Remove any empty leaves of T.

P

T

Page 58: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

8

RECONSTRUCTION ALGORITHM

First, locate P in R and T.

Remove any empty leaves of T.

T

P

Page 59: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

8

RECONSTRUCTION ALGORITHM

First, locate P in R and T.

Then, recursively unite the onions.

Remove any empty leaves of T.

T

P

Page 60: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

8

RECONSTRUCTION ALGORITHM

First, locate P in R and T.

Then, recursively unite the onions.

Remove any empty leaves of T.

T

P

Page 61: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

8

RECONSTRUCTION ALGORITHM

First, locate P in R and T.

Then, recursively unite the onions.

Remove any empty leaves of T.

T

P

Page 62: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

8

RECONSTRUCTION ALGORITHM

First, locate P in R and T.

Then, recursively unite the onions.

Remove any empty leaves of T.

T

P

Page 63: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

8

RECONSTRUCTION ALGORITHM

First, locate P in R and T.

Then, recursively unite the onions.

Remove any empty leaves of T.

T

P

Page 64: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

8

RECONSTRUCTION ALGORITHM

First, locate P in R and T.

Then, recursively unite the onions.

Remove any empty leaves of T.

T

P

Page 65: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

8

RECONSTRUCTION ALGORITHM

First, locate P in R and T.

Then, recursively unite the onions.

Remove any empty leaves of T.

T

P

Page 66: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

8

RECONSTRUCTION ALGORITHM

First, locate P in R and T.

Then, recursively unite the onions.

Remove any empty leaves of T.

T

P

Page 67: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

8

RECONSTRUCTION ALGORITHM

First, locate P in R and T.

Then, recursively unite the onions.

Remove any empty leaves of T.

T

P

Page 68: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

8

RECONSTRUCTION ALGORITHM

First, locate P in R and T.

Then, recursively unite the onions.

Remove any empty leaves of T.

T

P

Page 69: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

8

RECONSTRUCTION ALGORITHM

First, locate P in R and T.

Then, recursively unite the onions.

Remove any empty leaves of T.

T

P

Page 70: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

8

RECONSTRUCTION ALGORITHM

First, locate P in R and T.

Then, recursively unite the onions.

Remove any empty leaves of T.

P

Page 71: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

8

RECONSTRUCTION ALGORITHM

First, locate P in R and T.

Then, recursively unite the onions.

Remove any empty leaves of T.

P

Page 72: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

8

RECONSTRUCTION ALGORITHM

First, locate P in R and T.

Then, recursively unite the onions.

Remove any empty leaves of T.

P

Done!

Page 73: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

9

BUT!

Page 74: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

9

BUT! ...how do you unite two onions?

Page 75: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

9

BUT! ...how do you unite two onions?

Page 76: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

9

BUT! ...how do you unite two onions?

OBSERVATION: We can find the convex hull of two

onions in O(logn) time.

Page 77: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

9

BUT! ...how do you unite two onions?

OBSERVATION: We can find the convex hull of two

onions in O(logn) time.

Page 78: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

9

BUT! ...how do you unite two onions?

OBSERVATION: We can find the convex hull of two

onions in O(logn) time.

Let’s remove it and recurse.

Page 79: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

9

BUT! ...how do you unite two onions?

OBSERVATION: We can find the convex hull of two

onions in O(logn) time.

Let’s remove it and recurse.

Page 80: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

9

BUT! ...how do you unite two onions?

OBSERVATION: We can find the convex hull of two

onions in O(logn) time.

Let’s remove it and recurse.

Unfortunately, what is left are no longer

proper onions...

Page 81: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

10

ONION RESTAURATION & UNIFICATION

Page 82: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

10

ONION RESTAURATION & UNIFICATION

Compute convex hulls of the individual onions.

Page 83: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

10

ONION RESTAURATION & UNIFICATION

Compute convex hulls of the individual onions.

Page 84: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

10

ONION RESTAURATION & UNIFICATION

Compute convex hulls of the individual onions.

Page 85: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

10

ONION RESTAURATION & UNIFICATION

Compute convex hulls of the individual onions.

Recurse once again.

Page 86: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

10

ONION RESTAURATION & UNIFICATION

Compute convex hulls of the individual onions.

Recurse once again.

Page 87: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

10

ONION RESTAURATION & UNIFICATION

Compute convex hulls of the individual onions.

Recurse once again.

Page 88: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

10

ONION RESTAURATION & UNIFICATION

Compute convex hulls of the individual onions.

Recurse once again.

Page 89: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

10

ONION RESTAURATION & UNIFICATION

Compute convex hulls of the individual onions.

Recurse once again.

Page 90: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

11

ONION RESTAURATION & UNIFICATION

Compute convex hulls of the individual onions.

Recurse once again.

Etc...

Page 91: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

11

ONION RESTAURATION & UNIFICATION

Compute convex hulls of the individual onions.

Recurse once again.

Etc...

Page 92: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

11

ONION RESTAURATION & UNIFICATION

Compute convex hulls of the individual onions.

Recurse once again.

Etc...

Page 93: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

11

ONION RESTAURATION & UNIFICATION

Compute convex hulls of the individual onions.

Recurse once again.

Etc...

Page 94: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

11

ONION RESTAURATION & UNIFICATION

Compute convex hulls of the individual onions.

Recurse once again.

Etc...

Page 95: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

11

ONION RESTAURATION & UNIFICATION

Compute convex hulls of the individual onions.

Recurse once again.

Etc...

Page 96: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

11

ONION RESTAURATION & UNIFICATION

Compute convex hulls of the individual onions.

Recurse once again.

Etc...

Page 97: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

11

ONION RESTAURATION & UNIFICATION

Compute convex hulls of the individual onions.

Recurse once again.

Etc...

Page 98: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

11

ONION RESTAURATION & UNIFICATION

Compute convex hulls of the individual onions.

Recurse once again.

Etc...

Page 99: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

11

ONION RESTAURATION & UNIFICATION

Compute convex hulls of the individual onions.

Recurse once again.

Etc...

Page 100: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

11

ONION RESTAURATION & UNIFICATION

Compute convex hulls of the individual onions.

Recurse once again.

Etc...

Page 101: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

11

ONION RESTAURATION & UNIFICATION

Compute convex hulls of the individual onions.

Recurse once again.

Etc...

Page 102: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

11

ONION RESTAURATION & UNIFICATION

Compute convex hulls of the individual onions.

Recurse once again.

Etc...

Page 103: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

11

ONION RESTAURATION & UNIFICATION

Compute convex hulls of the individual onions.

Recurse once again.

Etc...

Page 104: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

11

ONION RESTAURATION & UNIFICATION

Compute convex hulls of the individual onions.

Recurse once again.

Etc...

Page 105: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

11

ONION RESTAURATION & UNIFICATION

Compute convex hulls of the individual onions.

Recurse once again.

Etc...

Page 106: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

11

ONION RESTAURATION & UNIFICATION

Compute convex hulls of the individual onions.

Recurse once again.

Etc...

Page 107: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

11

ONION RESTAURATION & UNIFICATION

Compute convex hulls of the individual onions.

Recurse once again.

Etc...

Page 108: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

11

ONION RESTAURATION & UNIFICATION

Compute convex hulls of the individual onions.

Recurse once again.

Etc...

Page 109: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

11

ONION RESTAURATION & UNIFICATION

Compute convex hulls of the individual onions.

Recurse once again.

Etc...

Page 110: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

11

ONION RESTAURATION & UNIFICATION

Compute convex hulls of the individual onions.

Recurse once again.

Etc...

Page 111: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

11

ONION RESTAURATION & UNIFICATION

Compute convex hulls of the individual onions.

Recurse once again.

Etc...

Page 112: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

11

ONION RESTAURATION & UNIFICATION

Compute convex hulls of the individual onions.

Recurse once again.

Etc...

That took O(k2 logn) time to compute k layers.

Page 113: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

12

THE FINAL RESULT

Page 114: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

12

THE FINAL RESULT

We can split a set of n unit disks in O(n) time.

Page 115: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

12

THE FINAL RESULT

We can split a set of n unit disks in O(n) time.

So, we can compute H(R) in (n logn) time.

Page 116: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

12

THE FINAL RESULT

We can split a set of n unit disks in O(n) time.

So, we can compute H(R) in (n logn) time.

We can unite a pair of onions in O(k2 logn) time.

Page 117: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

12

THE FINAL RESULT

We can split a set of n unit disks in O(n) time.

So, we can compute H(R) in (n logn) time.

We can unite a pair of onions in O(k2 logn) time.

So, we can reconstruct an onion in O(n log k) time.

Page 118: Unions of Onions - staff.science.uu.nlloffl001/publications/slides/unions_of_onio… · ONIONS Let P be a set of n points in the plane. DEFINITION: The onion of P is the convex hull

13

THANK YOU!

any questions?