Girish Mahajan (Editor)

Geometric separator

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit

A geometric separator is a line (or other shape) that partitions a collection of geometric shapes into two subsets, such that proportion of shapes in each subset is bounded, and the number of shapes that do not belong to any subset (i.e. the shapes intersected by the separator itself) is small.

Contents

When a geometric separator exists, it can be used for building divide-and-conquer algorithms for solving various problems in computational geometry.

Separators that are closed shapes

A simple case in which a separator is guaranteed to exist is the following:

Thus, R is a geometric separator that separates the n squares into two subset ("inside R" and "outside R"), with a relatively small "loss" (the squares intersected by R are considered "lost" because they do not belong to any of the two subsets).

Proof

Define a 2-fat rectangle as an axis-parallel rectangle with an aspect ratio of at most 2.

Let R0 be a minimal-area 2-fat rectangle that contains the centers of at least n/3 squares. Thus every 2-fat rectangle smaller than R0 contains fewer than n/3 squares.

For every t in [0,1), let Rt be a 2-fat rectangle with the same center as R0, inflated by 1 + t.

  • Rt contains R0, so it contains the centers of at least n/3 squares.
  • Rt is less than twice as large as R0, so it can be covered by two 2-fat rectangles that are smaller than R0. Each of these 2-fat rectangles contains the centers of less than n/3 squares. Therefore Rt contains the centers of less than 2n/3 squares.
  • Now it remains to show that there is a t for which Rt intersects at most O(sqrt(n)) squares.

    First, consider all the "large squares" – the squares whose side-length is at least width ( R 0 ) / 2 n . For every t, the perimeter of Rt is at most 2·perimeter(R0) which is at most 6·width(R0), so it can intersect at most 12 n large squares.

    Next, consider all the "small squares" – the squares whose side-length is less than width ( R 0 ) / 2 n .

    For every t, define: intersect(t) as the set of small squares intersected by the boundary of Rt. For every t1 and t2, if | t 1 t 2 | 1 / n , then | width ( R t 1 ) width ( R t 2 ) | width ( R 0 ) / n . Therefore there is a gap of at least width ( R 0 ) / 2 n between the boundary of Rt1 and the boundary of Rt2. Therefore, intersect(t1) and intersect(t2) are disjoint. Therefore:

    j = 0 n 1 | intersect ( j / n ) | n

    Therefore by the pigeonhole principle there is a certain j0 for which:

    | intersect ( j 0 / n ) | n

    The separator we look for is the rectangle Rt, where t = j 0 / n .

    Application example

    Using this separator theorem, we can solve certain problems in computational geometry in the following way:

  • Separate the input set of squares to two disjoint subsets;
  • Solve the problem on each subset separately;
  • Combine the solutions to the two sub-problems and get an approximate solution to the original problem.
  • Generalizations

    The above theorem can be generalized in many different ways, with possibly different constants. For example:

  • Instead of squares, the input collection can contain arbitrary fat objects, such as: circles, rectangles with a bounded aspect ratio, etc.
  • Instead of two-dimensional shapes in a plane, the input collection can contain objects of any dimension, and they can be situated in a d-dimensional torus.
  • Instead of requiring that the shapes in the input collection be disjoint, we can put a weaker requirement, that the collection is:
  • k-thick, i.e., each point is covered by at most k different shapes.
  • l-k-thick, i.e., each point is covered by at most k different shapes with a size ratio (size of largest shape divided by size of smallest shape) at most l.
  • k-overloaded, i.e., for any subcollection of shapes, the sum of their individual measures is at most k times the measure of their union.
  • Instead of a rectangle separator, the separator can be any shape that can be covered by smaller copies of itself.
  • Instead of bounding the number of shapes in each side of the separator, it is possible to bound any measure which satisfies certain axioms.
  • Optimality

    The ratio of 1:2, in the square separator theorem above, is the best that can be guaranteed: there are collections of shapes that cannot be separated in a better ratio using a separator that crosses only O(sqrt(n)) shapes. Here is one such collection (from theorem 34 of ):

    Consider an equilateral triangle. At each of its 3 vertices, put N/3 shapes arranged in an exponential spiral, such that the diameter increases by a constant factor every turn of the spiral, and each shape touches its neighbours in the spiral ordering. For example, start with a 1-by-Φ rectangle, where Φ is the golden ratio. Add an adjacent Φ-by-Φ square and get another golden rectangle. Add an adjacent (1+Φ)-by-(1+Φ) square and get a larger golden rectangle, and so on.

    Now, in order to separate more than 1/3 of the shapes, the separator must separate O(N) shapes from two different vertices. But to do this, the separator must intersect O(N) shapes.

    Proof

    Define W as the most western vertical line with at least N/4 rectangles entirely to its west. There are two cases:

  • If there are at least N/4 rectangles entirely to the east of W, then W is a vertical separator.
  • Otherwise, by moving W slightly to the west, we get a vertical line that intersects more than N/2 rectangles. Find a point on this line that has at least N/4 rectangles above and N/4 rectangles below it, and draw a horizontal separator through it.
  • Optimality

    The number of intersected shapes, guaranteed by the above theorem, is O(N). This upper bound is asymptotically tight even when the shapes are squares, as illustrated in the figure to the right. This is in sharp contrast to the upper bound of O(√N) intersected shapes, which is guaranteed when the separator is a closed shape (see previous section).

    Moreover, when the shapes are arbitrary rectangles, there are cases in which no line that separates more than a single rectangle can cross less than N/4 rectangles, as illustrated in the figure to the right.

    Generalizations

    The above theorem can be generalized from disjoint rectangles to k-thick rectangles. Additionally, by induction on d, it is possible to generalize the above theorem to d dimensions and get the following theorem:

    For the special case when k = N − 1 (i.e. each point is contained in at most N − 1 boxes), the following theorem holds:

    The objects need not be boxes, and the separators need not be axis-parallel:

    Algorithmic versions

    It is possible to find the hyperplanes guaranteed by the above theorems in O(Nd) steps. Also, if the 2d lists of the lower and upper endpoints of the intervals defining the boxes's ith coordinates are pre-sorted, then the best such hyperplane (according to a wide variety of optimality measures) may be found in O(Nd) steps.

    Proof sketch

    Define the centerpoint of Q as a point o such that every line through it has at most 2n/3 points of Q in each side of it. The existence of a centerpoint can be proved using Helly's theorem.

    For a given point p and constant a>0, define Pr(a,p,o) as the probability that a random line through o lies at a distance of less than a from p. The idea is to bound this probability and thus bound the expected number of points at a distance less than a from a random line through o. Then, by the pigeonhole principle, at least one line through o is the desired separator.

    Applications

    Bounded-width separators can be used for approximately solving the protein folding problem. It can also be used for an exact sub-exponential algorithm to find a maximum independent set, as well as several related covering problems, in geometric graphs.

    Geometric separators and planar graph separators

    The planar separator theorem may be proven by using the circle packing theorem to represent a planar graph as the contact graph of a system of disks in the plane, and then by finding a circle that forms a geometric separator for those disks.

    References

    Geometric separator Wikipedia