A geometric separator is a line (or another 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.
When a geometric separator exists, it can be used for building divide-and-conquer algorithms for solving various problems in computational geometry.
In 1979, Helge Tverberg[1] raised the following question. For two positive integers k, l, what is the smallest number n(k,l) such that, for any family of pairwise-disjoint convex objects in the plane, there exists a straight line that has at least k objects on one side and at least l on the other side?
The following results are known.
Given a set of N=4k disjoint axis-parallel rectangles in the plane, there is a line, either horizontal or vertical, such that at least N/4 rectangles lie entirely to each side of it (thus at most N/2 rectangles are intersected by the separator line).
Define W as the most western vertical line with at least N/4 rectangles entirely to its west. There are two cases:
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 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.[4]
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:
Given N axis-parallel d-boxes whose interiors are k-thick, there exists an axis-parallel hyperplane such that at least:
\lfloor(N+1-k)/(2d)\rfloor
of the d-box interiors lie to each side of the hyperplane.
For the special case when k = N - 1 (i.e. each point is contained in at most N - 1 boxes), the following theorem holds:
Given N axis-parallel d-boxes whose interiors are (N - 1)-thick, there exists an axis-parallel hyperplane that separates two of them.
The objects need not be boxes, and the separators need not be axis-parallel:
Let C be a collection of possible orientations of hyperplanes (i.e. C = ). Given N d-objects, such that every two disjoint object are separated by a hyperplane with an orientation from C, whose interiors are k-thick, there exists a hyperplane with an orientation from C such that at least: (N + 1 - k)/O(C) of the d-objects interiors lie entirely to each side of the hyperplane.
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.
A simple case in which a separator is guaranteed to exist is the following:[5] [6]
Given a set of n disjoint axis-parallel squares in the plane, there is a rectangle R such that, at most 2n/3 of the squares are inside R, at most 2n/3 of the squares are outside R, and at most O(sqrt(n)) of the squares are not inside and not outside R (i.e. intersect the boundary of R).
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).
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 ''R''<sub>''t''</sub> be a 2-fat rectangle with the same center as ''R''<sub>0</sub>, inflated by 1 + ''t''. * ''R''<sub>''t''</sub> contains ''R''<sub>0</sub>, so it contains the centers of at least ''n''/3 squares. * ''R''<sub>''t''</sub> is less than twice as large as ''R''<sub>0</sub>, so it can be covered by two 2-fat rectangles that are smaller than ''R''<sub>0</sub>. Each of these 2-fat rectangles contains the centers of less than ''n''/3 squares. Therefore ''R''<sub>''t''</sub> contains the centers of less than 2''n''/3 squares. Now it remains to show that there is a ''t'' for which ''R''<sub>''t''</sub> intersects at most O(sqrt(''n'')) squares. First, consider all the "large squares" – the squares whose side-length is at least <math>\operatorname{width}(R_0) / 2 \sqrt{n}</math>. For every ''t'', the perimeter of ''R''<sub>''t''</sub> is at most 2·perimeter(''R''<sub>0</sub>) which is at most 6·width(''R''<sub>0</sub>), so it can intersect at most <math>12 \sqrt{n}</math> large squares. Next, consider all the "small squares" – the squares whose side-length is less than <math>\operatorname{width}(R_0) / 2 \sqrt{n}</math>. For every ''t'', define: intersect(''t'') as the set of small squares intersected by the boundary of ''R''<sub>''t''</sub>. For every ''t''<sub>1</sub> and ''t''<sub>2</sub>, if <math>|t_1-t_2| \geq 1/\sqrt{n}</math>, then <math>|\operatorname{width}(R_{t_1})-\operatorname{width}(R_{t_2})| \geq \operatorname{width}(R_0)/\sqrt{n}</math>. Therefore, there is a gap of at least <math>\operatorname{width}(R_0) / 2 \sqrt{n}</math> between the boundary of ''R''<sub>''t''<sub>1</sub></sub> and the boundary of ''R''<sub>''t''<sub>2</sub></sub>. Therefore, intersect(''t''<sub>1</sub>) and intersect(''t''<sub>2</sub>) are disjoint. Therefore: : <math>\sum_{j=0}^{\sqrt{n}-1}{|\operatorname{intersect}(j/\sqrt{n})|} \leq n</math> Therefore, by the [[pigeonhole principle]] there is a certain j0 for which:
|\operatorname{intersect}(j0/\sqrt{n})|\leq\sqrt{n}
The separator we look for is the rectangle Rt, where
t=j0/\sqrt{n}
Using this separator theorem, we can solve certain problems in computational geometry in the following way:
The above theorem can be generalized in many different ways, with possibly different constants. For example:
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.
Let Q be a set of n points in the plane such that the minimal distance between points is d. Let a>0 be a constant.
There is a pair of parallel lines of distance a, such that at most 2n/3 points lie to each side of the strip, and at most
1.3{a\overd}\sqrt{n}
Equivalently: there is a line such that at most 2n/3 points lie to each side of it and at most
1.3{a\overd}\sqrt{n}
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.
Bounded-width separators can be used for approximately solving the protein folding problem.[9] 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.[8]
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.[10]
the problem of separating convex objects in the plane using guillotine cuts.