Collinearities in Kinetic Point Sets

Collinearities in Kinetic Point Sets
arXiv:1105.3078v1 [cs.CG] 16 May 2011
Ben D. Lund∗
George B. Purdy†
Justin W. Smith‡
Csaba D. Tóth§
January 21, 2013
Abstract
Let P be a set of n points in the plane, each point moving along a
given trajectory. A k-collinearity is a pair (L, t) of a line L and a time
t such that L contains at least k points at time t, the points along L do
not all coincide, and not all of them are collinear at all times. We show
that, if the points move with
constant velocity, then the number of 3collinearities is at most 2 n3 , and this bound is tight. There are n points
having Ω(n3 /k4 + n2 /k2 ) distinct k-collinearities. Thus, the number of
k-collinearities among n points, for constant k, is O(n3 ), and this bound is
asymptotically tight. In addition, there are n points, moving in pairwise
distinct directions with different speeds, such that no three points are ever
collinear.
1
Introduction
Geometric computation of moving objects is often supported by kinetic data
structures (KDS), introduced by Basch, Guibas and Hershberger [1, 5]. The
combinatorial structure of a configuration is described by a set of certificates,
each of which is an algebraic relation over a constant number of points. The
data structure is updated only if a certificates fails. A key parameter of a
KDS is the maximum total number of certificate failures over all possible simple motions of n objects. For typical tessellations (e.g., triangulations [8] or
pseudo-triangulation [10]) or moving points in the plane, a basic certificate is
the orientation of a triple of points, which changes only if the three points are
collinear.
∗ [email protected]. Department of Computer Science, University of Cincinnati, Cincinnati, OH 45221, USA.
† [email protected]. Department of Computer Science, University of Cincinnati, Cincinnati, OH 45221, USA.
‡ [email protected].
Department of Computer Science, University of Cincinnati,
Cincinnati, OH 45221, USA.
§ [email protected]. Department of Mathematics and Statistics, University of Calgary,
Calgary, AB, Canada.
1
We are interested in the maximum and minimum number of collinearities
among n kinetic points in the plane, each of which moves with constant velocity.
A k-collinearity is a pair (L, t) of a line L and a time t such that L contains at
least k points at time t, the points along L do not all coincide, and not all of them
are collinear at all times. The last two conditions help to discard a continuum
of trivial collinearities: we are not interested in k points that coincide, or are
always collinear (e.g. if they move with the same velocity).
Results. The maximum number of 3-collinearities
among n kinetic points in the
plane, each moving with constant velocity, is 2 n3 . In particular, if three points
are not always collinear, then they become collinear at most twice. Moreover,
the maximum is attained for a kinetic point set where no three points are always
collinear. We also show that, for constant k, the number of k-collinearities is
O(n3 ), and this bound is asymptotically tight. In the lower bound construction,
Ω(n3 /k 4 + n2 /k 2 ) k-collinearities occur such that at each k-collinearity at most
dk/2e of the points are always collinear.
The minimum number of collinearities among n kinetic points in the plane
is obviously 0. Consider, for example, n points in general position that have the
same velocity. We construct n kinetic points that move with pairwise distinct
speeds in different directions, and yet they admit no 3-collinearities.
We assume an infinite time frame (−∞, ∞). The motion of a point p in
Rd can be represented by its trajectory in Rd+1 , where the last (“vertical”)
dimension is time. If a point p moves with constant velocity in Rd , its trajectory
is a nonhorizontal line Lp ⊂ Rd+1 . Every algebraic condition on kinetic points
in Rd has an equivalent formulation in terms of their trajectories in Rd+1 . We
use both representations throughout this paper.
Related previous results. Previous research primarily focused on collisions.
Two kinetic points p, q ∈ Rd collide if and only if their trajectories Lp , Lq ⊂ Rd+1
intersect. A k-collision is a pair (P, t) of a point P ∈ Rd and a time t such that
at least k kinetic points meet at P at time t, but not all these points are always
1
coincident. It is easy to see that for n points in R
, each moving with constant
n
velocity, the number of 2-collisions is at most 2 , and this bound is tight. The
number of k-collisions in R1 is O(n2 /k 3 + n/k), and this bound is also the best
possible, due to the Szemerédi-Trotter theorem [12].
Without additional constraints, the bounds for the number of collisions remains the same in Rd for every d ≥ 1, since the points may be collinear at all
times. Sharir and Feldman [11, 4] considered the number of 3-collisions in the
plane among points that are not always collinear. The trajectories of such a
3-collision form a so-called “joint” in 3-space. Formally, in an arrangement of n
lines in Rd+1 , a joint is a point incident to at least d + 1 lines, not all of which lie
in a hyperplane. Recently, Guth and Katz [6] proved that n lines in R3 determine O(n3/2 ) joints. Their proof was later generalized and simplified [3, 9]: n
lines in Rd+1 determine O(n(d+1)/d ) joints. These bounds are the best possible,
since Θ(n(d+1)/d ) joints can be realized by n axis-parallel lines arranged in a
grid-like fashion in Rd . However no nontrivial bound is known for the number
of joints under the additional constraint that no d lines lie in a hyperplane.
2
A k-collinearity is the natural generalization of a k-collision in dimensions
d ≥ 2. It is easy to give a Θ(n3 ) bound on the maximum number of 3collinearities in the plane, since three random points, with random velocities,
form Θ(1) collinearities in expectation. However, a 4-collinearity assumes an
algebraic constraint on the trajectories of the 4 kinetic points. Here we present
initial results about a new concept, including tight bounds on the number of
3-collinearities in the plane, and asymptotically tight bounds on the number of
k-collinearities in the plane, for constant k.
Organization. We present our results for the maximum number of 3- and kcollinearities in Section 2. We construct a kinetic point set with no collinearities
in Section 3 and conclude with open problems in Section 4.
2
Upper bound for 3-collinearities
Given any two kinetic points a and b in the plane, denote by Sa,b the set of
point-time pairs in R3 that form a 3-collinearity with a and b. This will be the
set of all horizontal lines that intersect both La and Lb . We can find the times at
which a third point, c, is collinear with a and b by characterizing the set Lc ∩Sa,b .
In particular, the cardinality of Lc ∩ Sa,b is the number of 3-collinearities formed
by these three points.
The first issue is to characterize the set Sa,b . For this purpose, we will use a
classical geometric result.
Lemma 1 (14.4.6 from [2]). Let La and Lb be disjoint lines in a three-dimensional
Euclidean affine space, and let a and b be points moving along La and Lb with
constant speed. The affine line through a and b describes a hyperbolic paraboloid
as t ranges from −∞ to ∞.
This is a special case of a construction that produces a hyperboloid of one
sheet or a hyperbolic paraboloid from three skew lines [7, p. 15]. Given three
skew lines, the union of all lines that intersect all three given lines is a doubly
ruled surface. If the three given lines are all parallel to some plane, the surface
will be a hyperbolic paraboloid; otherwise, the surface will be a hyperboloid of
a single sheet.
Given two kinetic points a and b moving at constant velocity, we can arbitrarily choose three horizontal lines that intersect La and Lb to use with the
above construction. Since horizontal lines are parallel to a horizontal plane, the
resulting surface will be a hyperbolic paraboloid.
This characterizes Sa,b in the case that La and Lb are skew. It remains to
extend the characterization to the cases that a and b collide or have the same
speed and direction.
Lemma 2. Given two kinetic points, a and b, each moving with constant velocity, there are three possibilities for Sa,b .
1. If a and b have the same direction and speed, then Sa,b is a non-horizontal
plane.
3
2. If a and b collide, then Sa,b is the union of a horizontal and a nonhorizontal plane.
3. Otherwise, Sa,b is a hyperbolic paraboloid.
Proof. If La and Lb intersect or are parallel, then there is a unique plane Π
that contains both La and Lb . Since neither La nor Lb is horizontal, Π is
not horizontal. Every point in Π belongs to the union of all horizontal lines
containing a point from each of La and Lb .
Since two non-coincident points span a unique line and the intersection of Π
with a horizontal plane is a line, if La and Lb are parallel, then Sa,b = Π. This
covers the case that a and b have the same direction and speed.
If La and Lb intersect, then every point in the horizontal plane Π0 containing
the intersection point La ∩ Lb is on a horizontal line containing a point from
each of La and Lb . In this case, Sa,b = Π ∪ Π0 . This covers the case that a and
b collide.
If La and Lb are skew, Lemma 1 implies that Sa,b is a hyperbolic paraboloid.
This covers the generic case.
Lemma 3. Three points in the plane, each moving with constant velocity, will
either be always collinear or collinear at no more than two distinct times.
Proof. Label the points a, b, and c. By lemma 2, Sa,b is a plane, the union of
two planes, or a hyperbolic paraboloid. Every time Lc intersects Sa,b , the points
a, b, and c are collinear. Since a plane is a surface of degree 1 and a hyperbolic
paraboloid is a surface of degree 2, Lc cannot intersect Sa,b more than twice
without being contained in Sa,b .
Theorem 4. A set of n points in the plane,
each moving with constant speed
and direction, determines no more than 2 n3 3-collinearities.
Proof. There are n3 subsets of 3 points, each of which forms at most two 3collinearities.
Clearly, this bound applies directly to k-collinearities, for any k ≥ 3. If no
three points are always collinear, this bound can easily be improved for k > 3.
Theorem 5. A set of n points in the plane, each moving with constant speed
and direction,
and no three of which are always collinear, determines no more
than 2 n3 / k3 k-collinearities.
Proof. By Theorem 4, there are at most 2 n3 sets of 3 instantaneously collinear
points. A k-collinearity accounts for at least k3 distinct sets of 3 instantaneously
collinear points.
4
2.1
The 2
n
3
bound is tight for 3-collinearities
Theorem 6. Theorem 4 is tight for the case k = 3.
Proof. We construct a set of
n kinetic points, no three always collinear, such
that they admit exactly 2 n3 3-collinearities.
Let the points be {p1 , p2 , . . . , pn }. Each point moves with speed 1. The
direction of motion of point pi forms an angle of θi = 3π/2 + π/(4i) with the
positive x direction. At time t = 0, each point is on a circle of radius 1 centered
at (−1, 1), and positioned so that its direction of travel will cause it to cross the
origin at some later time. Since two locations on the circle might satisfy this
property, we choose the one closer to the origin (Fig. 1).
Figure 1: A set of kinetic points forming 2
interval (−∞, ∞), at time 0.
n
3
three point lines over the time
At time t = 0, no three points are collinear, so no triple of points is always
collinear. Choose any three elements from {p1 , p2 , ..., pn }, say pj , pk , and pl ,
such that θj < θk < θl . We will show that these points are collinear at two
distinct times.
Let HR and HR denote the left and right halfplanes, respectively, determined
by the directed line pj pl . Let C be a closed convex curve passing through pj , pk ,
and pl such that it crosses line pj pl at pj and pl only. We can determine which
half-plane contains pk from the cyclic order of the three points on C. If the
clockwise order is (pj , pk , pl ), then pk ∈ HL ; if the clockwise order is (pj , pl , pk ),
then pk ∈ HR .
At time 0, the points are distributed on the circle of radius 1 with center
(−1, 1), and the clockwise order of the chosen points on this circle is (pj , pk , pl ).
Thus, pk ∈ HL .
Let ci be the distance between pi and the origin at time 0. Since all points
are initially moving toward the origin at a speed of 1, the distance between pi
5
and the origin is |ci − t| at time t.
We now establish that pk is in HR for |t| 1. If t 1, all of the points
{p1 , p2 , ..., pn } will lie approximately on a circle of radius t centered at the origin.
The clockwise order of the points on a convex curve approximating this circle
will be (pj , pl , pk ), and pk ∈ HR . Likewise, when t −1 the points will be
approximately on a circle of radius |t| (but at points antipodal to those when
t 1), and the order will be (pj , pl , pk ) with pk ∈ HR . Figure 2 depicts the
configuration for t 1.
Figure 2: A set of kinetic points forming 2
interval (−∞, ∞), at time 1.
n
3
three point lines over the time
Since pk alternates from HL to HR and back to HR as t goes from negative
to positive infinity, there must exist times t0 and t00 at which the three points
are collinear.
The above construction is degenerate in the sense that the paths of the points
are all concurrent through the origin. Note that our argument is not sensitive to
a small perturbation in the location or the direction of the points. The direction
of motion of each point may be perturbed so that the trajectories are in general
position.
Additionally, the construction may be altered so that the points travel at
different speeds. If the speeds of {p1 , p2 , ..., pn } are not all the same, then
the points will not approach a circle as |t| approaches ∞. However, as long
as no three points are always collinear and the points approach some closed
convex curve as |t| approaches infinity, the arguments used will remain valid.
For example, if the speed of point pi is 1/(1 − cos(θi )/2), then for |t| 1, the
points will be approximately distributed on an ellipse enclosing the origin. This
ensures that any three points
will be collinear at two distinct times, so the set
of n points will have 2 n3 3-collinearities.
6
2.2
The O(n3 ) bound is tight for fixed k
By Theorem 4, n kinetic points moving with constant velocities determine O(n3 )
k-collinearities. Here for all integers n ≥ k ≥ 3, we construct a set of n kinetic
points that determines Ω(n3 /k 4 + n2 /k 2 ) k-collinearities.
First assume that n ≥ k 2 . We construct n kinetic points with Ω(n3 /k 4 )
k-collinearities. The points will move on two parallel lines L1 : x = 0 and
L2 : x = 1 in varying speeds, and a simultaneous bk/2c-collision on L1 and a
dk/2e-collision on L2 defines a k-collinearity.
Without loss of generality we may assume that n is a multiple of k. Let
{A1 , A2 , ..., Abk/2c } and {B1 , B2 , ..., Bdk/2e } be sets of n/k points each. At time
0, let Ai = {ai,j = (0, j) : j = 1, ..., n/k} for 1 ≤ i ≤ bk/2c, and let Bi =
{bi,j = (1, j) : j = 1, ..., n/k} for 1 ≤ j ≤ dk/2e. All point move in the direction
Sbk/2c
(0, 1). The points in A = i=1 Ai are always in line x = 0, and the point in
Sdk/2e
B = i=1 Bi are always in line x = 1. The speed of a point in set Ai or Bi is
i − 1; for example, each point in set A1 has speed 0.
At each time t = {0, 1, ..., n/(kbk/2c)}, there are (n/k − (k − 1)t) bk/2cway collisions among points in A and (n/k − (k − 1)t) dk/2e-way collisions
among points in B. Each line connecting a bk/2c-collision among points in A
and a dk/2e-collision among points in B is a k-collinearity. Thus, at each time
t = {0, 1, ..., n/(kbk/2c)}, there are (n/k − (k − 1)t)2 k-collinearities. Taking the
sum, the number of k-collinearities over t = [0, ∞) is
n/(kbk/2c)
n/(kbk/2c)
X
(n/k − (k − 1)t)
2
≥
X
(k − 1)2 t2
t=0
t=0
n/(kbk/2c)
≥ (k − 1)
2
X
t2
t=0
=
Ω(n3 /k 4 ).
Now assume that k ≤ n < k 2 . We construct n kinetic points with Ω(n2 /k 2 )
k-collinearities. The n points are partitioned into subsets, A1 , A2 , . . . , Abn/kc ,
each of size at least dk/2e. The points in each subset have a single dk/2e-collision
at time 0, at points in general position in the plane. Any line between two dk/2ecollisions is a k-collinearity. Hence there are k-collinearities is Ω(n2 /k 2 ).
3
Kinetic point sets with no collinearities
It is clearly possible to have no 3-collinearities among n kinetic points if the
points move with the same direction and speed—this is simply a set of relatively
static points, no three of which are collinear. Similarly, if we are only interested
in collinearities in the time interval (0, ∞), it is clearly possible to have no
collinearities—any set of kinetic points will have a final 3-collinearity.
Less obviously, we can construct n kinetic points, any two of which have
different direction and speed, that admit no 3-collinearities over the time interval
7
(−∞, ∞).
Theorem 7. For every integer n ≥ 1, there is a set of n points in the plane,
each moving with constant speed and direction, no two of the points having the
same speed or direction, such that no three points are collinear over the time
interval (−∞, ∞).
Proof. We will start by constructing a set of kinetic points with no 3-collinearities,
having different directions but the same speed. Then, we will modify the construction so that the points move with different speeds.
For 1 ≤ i ≤ n, let θi = π/2 + π/2i. At time 0, place point pi at a distance
of 1 from the origin at an angle of θi from the positive x direction. Each point
moves with speed 1 in the direction θi − π/2 (see Fig. 3).
Figure 3: A set of points, each moving at speed 1, of which no three are ever
collinear.
By this construction, the lines L(pi ) will be from one ruling of a hyperboloid
of a single sheet S [7]. The intersection of any horizontal plane with S will be a
circle. Since no line intersects a circle in more than two points, there will never
be three points on any line.
In order to modify this construction so that no two points have the same
speed, we will stretch it in the x-direction.
For 1 ≤ i ≤ n, if pi is at location (xi , yi ) at time 0, then place point p0i at
location (2xi , yi ). If the velocity vector of pi is (v(x,i) , v(y,i) ), then the velocity
vector of p0i is (2v(x,i) , v(y,i) ) (see Fig. 4).
Since no two points pi , pj ∈ {p1 , p2 , ..., pn } have the same x component to
the vector describing their motion, no two points p0i , p0j ∈ {p1 , p2 , ..., pn } have
the same speed.
The lines Lp0i are from one ruling of a hyperboloid of a single sheet S 0 . The
main difference between S and S 0 is that S 0 is stretched in the x-direction, so
the intersection of any horizontal plane with S 0 is an ellipse rather than a circle.
No line intersects an ellipse in more than two points, so again there will never
be three points on any line.
8
Figure 4: A set of points, no two moving at the same speed, of which no three
are ever collinear.
4
Conclusion
We derived tight bounds on the minimum and maximum number of 3- and 4collinearities among n kinetic points, each moving with constant velocity in the
plane. Our initial study poses more questions than it answers.
Open Problem 1. What is the maximum number of k-collinearities among n
kinetic points in the plane? Is our lower bound Ω(n3 /k 4 + n2 /k 2 ) tight?
Open Problem 2. What is the maximum number of k-collinearities among n
kinetic points in the plane if no three points are always collinear and no two
points collide?
Open Problem 3. What is the maximum number of 3-collinearities among n
kinetic points in the plane if the trajectory of each point is an algebraic curve of
degree bounded by a constant b?
Open Problem 4. A d-collinearity in Rd is called full-dimensional if not all
points involved in the collinearity are in a hyperplane at all times. What is the
maximum number of full-dimensional d-collinearities among n kinetic points in
Rd ?
The trajectories of n kinetic points in Rd is an arrangement of n nonhorizontal lines in Rd+1 . Recall that a k-collinearity corresponds to a horizontal
line that intersects k trajectories. If we drop the restriction to horizontal lines,
we are led to the following problem.
Open Problem 5. For an arrangement A of n lines in R3 , what is the maximum number of lines L such that L intersects at least 3 lines in A, which are
not all concurrent and not all from a single ruling of a doubly ruled surface?
References
[1] J. Basch, L. J. Guibas, and J. Hershberger. Data structures for mobile data.
Journal of Algorithms, 31:1–28, 1999.
[2] M. Berger. Geometry. II. Universitext. Springer-Verlag, Berlin, 1987. Translated
from the French by M. Cole and S. Levy.
9
[3] G. Elekes, H. Kaplan, and M. Sharir. On lines, joints, and incidences in three
dimensions. J. Comb. Theory, Ser. A, 118(3):962–977, 2011.
[4] S. Feldman and M. Sharir. An improved bound for joints in arrangements of lines
in space. Discrete & Computational Geometry, 33(2):307–320, 2005.
[5] L. Guibas. Kinetic data structures. In D. Mehta and S. Sahni, editors, Handbook
of Data Structures and Applications, pages 23–1–23–18. Chapman and Hall/CRC,
2004.
[6] L. Guth and N. H. Katz. Algebraic methods in discrete analogues of the kakeya
problem. Adv. in Math., 225:2828–2839, 2010.
[7] D. Hilbert and S. Cohn-Vossen. Geometry and the imagination. Chelsea Publishing Company, New York, NY, 1952. Translated by P. Neményi.
[8] H. Kaplan, N. Rubin, and M. Sharir. A kinetic triangulation scheme for moving
points in the plane. Comput. Geom., 44(4):191–205, 2011.
[9] H. Kaplan, M. Sharir, and E. Shustin. On lines and joints. Discrete & Computational Geometry, 44(4):838–843, 2010.
[10] D. G. Kirkpatrick and B. Speckmann. Kinetic maintenance of context-sensitive
hierarchical representations for disjoint simple polygons. In Sympos. on Comput.
Geom., pages 179–188. ACM Press, 2002.
[11] M. Sharir. On joints in arrangements of lines in space and related problems. J.
Comb. Theory, Ser. A, 67(1):89–99, 1994.
[12] E. Szemerédi and W. Trotter. Extremal problems in discrete geometry. Combinatorica, 3(3):381–392, 1983.
10