Linear-Time -Approximation Algorithms for Two-Line-Center Problems
Abstract
Given a set of points in the plane, we study the two-line-center problem: finding two lines that minimize the maximum distance from each point in to its closest line. We present a -approximation algorithm for the two-line-center problem that runs in time, which improves the previously best -time algorithm. We also consider three variants of this problem, in which the orientations of the two lines are restricted: (1) the orientation of one of the two lines is fixed, (2) the orientations of both lines are fixed, and (3) the two lines are required to be parallel. For each of these three variants, we give the first -approximation algorithm that runs in linear time. In particular, for the variant where the orientation of one of the two lines is fixed, we also give an improved exact algorithm that runs in time and show that it is optimal.
Keywords and phrases:
Approximation algorithm, two-line-center problem, -line-center problem, projective clustering, -certificate, -coreset, width of a point setCopyright and License:
2012 ACM Subject Classification:
Theory of computation Computational geometryAcknowledgements:
This work was done while Chaeyoon Chung was visiting Carleton University.Funding:
Chaeyoon Chung was supported by Basic Science Research Program through the National Research Foundation of Korea (NRF) funded by the Ministry of Education(RS-2025-25436016). Anil Maheshwari and Michiel Smid were supported by NSERC.Editors:
Hee-Kap Ahn, Michael Hoffmann, and Amir NayyeriSeries and Publisher:
Leibniz International Proceedings in Informatics, Schloss Dagstuhl – Leibniz-Zentrum für Informatik
1 Introduction
Given a set of points in the plane, we study the two-line-center problem: finding two lines that minimize the maximum distance from each point in to its closest line. This is a special case of the -line-center problem, which asks, for a given set of points in the plane, to find lines minimizing the maximum distance from each point in to its closest line. A more general framework is projective clustering: Given , the goal is to find flats of dimension that best fit under a given distance measure. It has wide applications in data mining [4, 5], unsupervised learning [23], database management [10], and computer vision [24].
The -line-center problem is known to be NP-hard [21] when is part of the input (even in the plane), and various approaches including approximation algorithms and randomized methods [1, 3, 7, 9, 11, 13, 16, 17, 18] have been studied.
When , the problem becomes computing the width of a point set. This can be done exactly in time [22], and an lower bound is known [20]. A -approximation algorithm running in time was given in [11].
When , i.e., the two-line-center problem, an exact algorithm with running time is known [19]. The authors in [2] presented a -approximation algorithm that runs in time. Later, as the -approximation algorithm for the width problem was improved from to [11], their algorithm is consequently improved to , even though it is not explicitly mentioned.
Observe that the two-line-center problem is equivalent to finding a pair of slabs whose union covers the input point set while minimizing their maximum width.
We study the two-line-center problem and three natural variants. Let , and let denote the maximum width of an optimal pair of slabs in each problem. Each variant is illustrated in Figure 1. Table 1 summarizes the previous and new results.
-
1.
General: Given a set of points in the plane, we study the problem of finding a pair of slabs whose union covers while minimizing the maximum of their widths. We present an -time algorithm that finds a pair of slabs whose union covers and whose maximum width is at most . The running time can be expressed as both and .
-
2.
One Fixed Orientation: Given a set of points in the plane and an orientation , we study the problem of finding a pair of slabs such that one of them has orientation and their union covers while minimizing the maximum of their widths. We present an exact algorithm that runs in time, improving the previously best -time algorithm [6], and show that this is optimal.
We also present an -time algorithm that finds a pair of slabs such that one of them has orientation , their union covers , and their maximum width is at most . The running time can be expressed as and .
-
3.
Two Fixed Orientations: Given a set of points in the plane and two orientations, and , we study the problem of finding two slabs, one has orientation and the other has orientation , whose union covers while minimizing the maximum of their widths. We present an -time algorithm that finds a pair of slabs such that one has orientation and the other has orientation , their union covers , and their maximum width is at most .
-
4.
Parallel: Given a set of points in the plane, we study the problem of finding a pair of parallel slabs whose union covers while minimizing the maximum of their widths. We present an -time algorithm that finds a pair of parallel slabs such that their union covers and their maximum width is at most .
| Exact | Approximation | |
|---|---|---|
| General | [19] | [2, 11] |
| (Sec. 5) | ||
| One fixed orientation | [6] | - |
| (Sec. 4) | (Sec. 4) | |
| Two fixed orientations | [6] | - |
| (full version) | ||
| Parallel | [8] | - |
| (full version) |
1.1 Outline
In Section 2, we introduce the notation that will be used throughout the paper.
In Section 3, we introduce three key ingredients used throughout the paper. In Section 3.1, we modify the concept of an anchor pair (as introduced in [2]) and show how to compute it. In Section 3.2, we use an anchor pair to compute a -approximation for the general two-line-center problem in time. In Section 3.3, we recall the concept of an -certificate (as defined in [3]), a subset of the input point set that suffices to obtain a -approximate solution, and show how to compute it in time using an anchor pair from Section 3.1 and a -approximate solution from Section 3.2.
In Section 4, we address the one-fixed-orientation two-line-center problem. In Section 4.2, we give an -time decision algorithm, assuming the points are sorted. In Section 4.3, we present an -time exact algorithm and prove its optimality. In Section 4.4, we give a -approximation algorithm.
In Section 5, we address the general two-line-center problem. Using an anchor pair (Section 3.1) and a -approximate solution (Section 3.2), we compute a candidate set of orientations for one of the slabs of a -approximate solution. Combining this with the algorithm from Section 4 and an -certificate (Section 3.3), we obtain a -approximation algorithm.
Due to space constraints, we address the remaining two problems in the full version.
For the two-fixed-orientations two-line-center problem, we first present a -approximation algorithm, and then refine it to obtain a -approximation.
For the parallel two-line-center problem, we use the gap-ratio of a pair of slabs (as defined in [12]) and consider two cases separately, depending on whether the gap-ratio of an optimal pair is small or large. Combining these with an -certificate, we obtain a -approximation algorithm.
2 Preliminaries
For a set of points in the plane, we denote its diameter by , its width by , and its convex hull by . If , then . For a slab , we denote its width by , which is the distance between the two bounding lines of (see Figure 2(a)).
For a line , we say that has orientation if is the counterclockwise angle from the -axis to . A slab is said to have orientation if its two bounding lines have orientation (see Figure 2(a)). For a finite set of points in the plane, let denote the minimum-width slab of orientation that encloses , and define (see Figure 2(b)).
For a set of points in the plane and an orientation , we say that a pair with is an antipodal pair of with respect to if lies on one bounding line of and lies on the other (see Figure 2(b)).
For two finite sets and in the plane, let denote the minimum distance between a point of and a point of . For two points and in the plane, let be the line passing through and .
For each of the four problems, we assume that , where denotes the maximum width of an optimal pair of slabs for that problem. The case where can be detected and handled in linear time. See the appendix in the full version.
Throughout the paper, let be a sufficiently small real number and let denote an input set of points in the plane. Due to space constraints, the proofs of the theorems and lemmas marked with a star(∗) are provided in the full version.
3 Ingredients
In this section, we describe three key ingredients used throughout the paper: (1) an anchor pair, (2) a linear-time -approximation algorithm, and (3) an -certificate.
Throughout this section, we denote by an optimal pair of slabs for the general two-line-center problem, and let .
3.1 An Anchor Pair and Its Candidate Set
We first define an anchor pair and show that a candidate set for an anchor pair of of constant size can be computed in time. Recall that denotes the input set of points in the plane.
Definition 1 (Anchor pair).
For a pair of slabs , we call a pair of points an anchor pair of if
-
(1)
and , or
-
(2)
and .
Note that or may lie in . (See Figure 3.)
We remark that the authors in [2] used the concept of an anchor pair, defined slightly differently. They showed that a candidate set of constant size can be computed in time. In the proof of the following lemma, we point out a gap in their proof. By adopting our definition of an anchor pair, we both resolve this gap and obtain its candidate set in time.
Lemma 1
We can compute, in time, a set of at most pairs of points such that for any pair of slabs whose union covers , at least one of them is an anchor pair of .
3.2 A Linear-Time -Approximation Algorithm
In this section, we give a -approximation algorithm for the general two-line-center problem that runs in time. We remark that the authors in [2] gave a -approximation algorithm that runs in time.
By Lemma 3.1, we can find a set of at most pairs of points, at least one of which is an anchor pair of in time. For the moment, assume that we have an anchor pair of . Without loss of generality, assume that and .
Let be the points of , indexed in increasing order of their distance from . (We do not actually sort them. The indices are used only for reference.) For three points , let denote the slab whose center line is and one bounding line passes through (see Figure 4).
The following lemma implies the existence of a pair of slabs whose maximum width is at most , and one of which is parallel to .
Lemma 1
There exists a point such that covers all points of and . For such , .
Naive Approach and Idea
By Lemma 3.2, there exists a point such that both and are at most . We now give a brief idea of using a binary search to find such a point .
Consider the slab and the set for . Observe that as increases, the width increases, while decreases111Throughout this section, we refer to a non-decreasing (resp., non-increasing) function simply as an increasing (resp., decreasing) function.. Using this monotonicity, we can find an index that minimizes the unimodal function .
More specifically, at each step of the binary search over a range of indices , we compute the median index and evaluate and . If , we set the range to . Otherwise, we set it to . Let be the index obtained by the binary search. Observe that minimizes over all . By Lemma 3.2, we have .
Note that the time required in each step is dominated by computing , which takes time [22]. Therefore, the overall running time is .
To reduce the time complexity, we avoid computing from scratch at every step by sacrificing exactness. We remark that the authors in [2] presented an -time binary search algorithm by reducing the time for each step to . We present an -time binary search algorithm in which each step takes time linear in the size of the current range of indices, even when the points are not sorted. Our algorithm uses the following incremental algorithm that computes a -approximation of the width of a point set.
Theorem 2 (Theorem A.3 of [11]).
Given an online sequence of points in the plane, we can maintain a -approximation of the width with space and update time.
We show the following theorem. See the full version for the proof.
Theorem 3
In time, we can compute a pair of slabs that forms a -approximation for the general two-line-center problem.
3.3 An -certificate
Before defining an -certificate, we first define the notion of an -expansion. We remark that the definitions in this section are from [3].
Definition 4 (-expansion).
Now we define an -certificate in both and .
Definition 5 (-certificate).
-
(i)
Let be a set of points on the real line and . We say that a subset is an -certificate of if for any pair of intervals whose union covers , the union of their -expansions covers .
-
(ii)
Let be a set of points in the plane and . We say that a subset is an -certificate of if for any pair of slabs with the same width whose union covers , the union of their -expansions covers . We emphasize that the two slabs must have the same width.
We note that the existence of an -certificate of size was shown in [3]. By proving the following theorem, we refine the hidden constant and show how to construct such an -certificate in linear time.
Theorem 6
For a set of points in the plane and , an -certificate of of size can be computed in time.
We show that Theorem 6 directly gives a -approximation algorithm that runs in time for each of the four problems.
Theorem 7
For each of the four problems whose optimal solution can be found in time, we can compute a -approximate solution in time.
For the general two-line-center problem, [19]. By Theorem 7, we obtain a -approximation algorithm running in time. In Section 5, however, we present another algorithm with an improved running time. For the other variants as well, we present -approximation algorithms with better running times than those obtained by applying Theorem 7 with a known exact algorithm as (see Table 1).
4 One Fixed Orientation
By rotating the coordinate system, we assume without loss of generality that the given orientation is . Throughout this section, we denote by an optimal pair of slabs for the one-fixed-orientation problem, where is horizontal. Let .
4.1 Orientation-constrained Width and Dominance
In this section, we recall the concept of an orientation-constrained width and present geometric properties as introduced in [6]. Let be two orientations. For a set of points in the plane, we define the -constrained width of as We also define (see Figure 6(a)).
Consider two non-empty sets and of points in the plane that can be separated by a horizontal line, thus . Then, there are exactly two outer common tangents. Let be the orientations of these lines. We say that dominates if . See Figure 6. By construction, note that either or dominates the other.
(b) dominates . (c) dominates .
Lemma 8 ([6]).
With the above notation, suppose that dominates . Then
-
(i)
, and
-
(ii)
If , then .
4.2 Decision algorithm
In this section, we present a decision algorithm for a given parameter . The algorithm determines whether there exists a pair of slabs of width such that one of them is horizontal and their union covers . If such a pair exists, we report YES. Otherwise, we report NO.
The points of are assumed to be sorted in decreasing order of their -coordinates. For simplicity, we assume that no two input points have the same -coordinate. Our approach follows that of the previously known algorithm from [6] but removes the dependency on the data structures they used. As a result, we obtain an -time decision algorithm (after sorting), improving upon the previous bound.
Consider a horizontal slab of width , and imagine sweeping downward over the plane. For a fixed position of , let be the set of points strictly above , and let be the set of points strictly below . Referring to Figure 7, observe that dominates from the beginning until a certain moment, after which dominates until the end, assuming that both and are non-empty. Observe that the answer to the decision problem is YES if and only if there exists a placement of such that (equivalently, ).
Assumption.
For the case where the answer is YES, we assume that there exists a placement of such that dominates . The other case can be handled symmetrically by sweeping upward from the bottom.
Notation.
If both and are non-empty, there exist two outer common tangents of them. Observe that these tangent lines do not intersect each other inside . Let denote the right tangent and denote the left tangent. We denote their orientations by and , respectively. See Figure 7(a). Let and be the points of tangency defining , and similarly, let and be the points of tangency defining . If either or is empty, then and (and consequently ) are undefined.
Observation 8
With the above notation, dominates if and only if .
4.2.1 Overview of the Algorithm
In this section, we give an overview of the data structures maintained throughout the algorithm and explain how the main loop proceeds. We begin by recalling a data structure for maintaining the convex hull of a point set under a special sequence of insertions and deletions.
Lemma 9 ([25]).
We can dynamically maintain the convex hull of a set of points in the plane to support each window-sliding update (i.e., either insert a point below all points of or delete the topmost point of ) in amortized time. The convex hull can be explicitly reported in time, where is the number of vertices of the convex hull.
We note that in the above data structure, the neighbors of any given vertex on the convex hull can be found in time. Although it is not explicitly mentioned in [25], it can be achieved since each point (implicitly) maintains two pointers to its left and right neighbors, respectively, if is a vertex of the current convex hull (see Sections 3.1 and 4 of [25]).
Observe that as moves downward, a point is inserted into below all existing points of , or the topmost point of is deleted from . We refer to each such moment as an event. Each event corresponds to a window-sliding update of either or , and we have at most events.
Data structures and Main loop
As moves downward, we maintain the following using the notation defined above:
-
the dynamic data structures for and (from Lemma 9),
-
the tangent lines and , with their corresponding points , , , and ,
-
the two antipodal pairs of with respect to the orientations and , respectively.
Initially, we start with a position of such that contains only , the topmost point of . If the corresponding set is empty, we stop the algorithm and report YES. Otherwise, we initialize the data structures for and , respectively. Then we find and , together with . Note that the two antipodal pairs of with respect to and are both .
In the main loop of our decision algorithm, we do the following as moves downward. If dominates , we just update the above data structures. Once begins to dominate , we include, for every next event, an additional step that tests whether , using the maintained data structures. If this condition holds, we stop the algorithm and report YES; otherwise, we proceed the algorithm.
If becomes empty, we set and . We then test whether . If this condition holds, we report YES; otherwise, we report NO.
The correctness of this algorithm, assuming that all data structures are maintained properly and the test is evaluated correctly, is guaranteed by the following lemma.
Lemma 9
For any placement of where dominates , we have if and only if .
4.2.2 Maintaining Data Structures and Testing the Width Condition
In this section, we describe how to maintain the data structures and test the condition for each event that occurs as moves downward.
We begin by proving Lemma 4.2.2, which motivates the part of the algorithm that tests whether . Let be a horizontal slab of width where dominates . Recall that and are the orientations of the right and left outer tangent lines, respectively. By Observation 4.2, we have . Now, let be another horizontal slab of width , positioned below (the two slabs may partially overlap). We use the notations , , and analogously for . Then, it always holds that .
Lemma 9
With the above notation, assume that .
Then,
if and only if
or
.
We first note that the data structures (from Lemma 9) for and can be maintained in total time, since each event corresponds to a window-sliding update.
We now describe how to handle each event depending on its type: either an insertion into or a deletion from .
We first observe that if the point being inserted or deleted lies strictly between and , then nothing changes except the convex hulls (see Figure 8). Therefore, we assume that the point corresponding to an event does not lie strictly between and .
Insertion into
Let be the point inserted into , and assume that lies to the right of (see Figure 9). The case where lies to the left of can be handled symmetrically.
Tangent searching.
By our assumption, remains unchanged, while changes. Let denote the new tangent line, and let denote its orientation. Let . Analogously, let and be the points lying on . Note that . We find by traversing clockwise from ; we refer to this as the insertion-type tangent searching procedure. This procedure takes time, where is the number of vertices on strictly between and . We say that these vertices are involved in the procedure.
Antipodal pair searching.
Now we find the antipodal pairs of with respect to and (since does not change). Let be the point such that is the antipodal pair of with respect to .
For the orientation , observe that is one point of the antipodal pair of . We can find the other point by traversing clockwise from . Let denote the point such that is the antipodal pair of with respect to . We refer to this as the insertion-type antipodal-pair searching procedure, which takes time, where is the number of vertices on (equivalently, on ) strictly between and . We say that these vertices are involved in the procedure.
For the orientation , observe that is always one point of the antipodal pairs for both and . Let be the point such that forms an antipodal pair of with respect to (see Figure 9(b)). Let be the point such that forms an antipodal pair of with respect to . Then if lies to the left of the line of orientation passing through , and otherwise.
Testing the width condition.
If does not dominate , there is nothing left to do. This can be easily detected by Observation 4.2. Otherwise, we need to test whether . By Lemma 4.2.2, it suffices to determine whether . We do this by following the antipodal pairs of from the one corresponding to to that of . Note that is always one point of the antipodal pairs of for all orientations between and , since lies to the right of . Hence, is the antipodal pair of with respect to , and is the one with respect to as explained above. By traversing counterclockwise starting from , we can visit all antipodal pairs corresponding to the range of orientations in order. Following them sequentially allows us to find an orientation that minimizes . This procedure takes time, where, as before, is the number of vertices on (equivalently, on ) that lie strictly between and . Note that this is bounded by the time required for the insertion-type antipodal-pair searching procedure.
The total time for handling point insertions as moves downward depends on the two procedures: the insertion-type tangent searching procedure and the insertion-type antipodal-pair searching procedure. We conclude that it takes time in total by showing that each input point can be involved at most once in each of the procedures.
Lemma 9
Each point of can be involved in the insertion-type tangent searching procedure and the insertion-type antipodal-pair searching procedure at most once, respectively, in the entire algorithm.
In a symmetric way, we handle the deletion of a point from . We provide a brief summary below, and the full details are given in the full version.
Deletion from (Summary)
Let be the point deleted from . We assume that lies on , that is (see Figure 10).
Tangent searching.
By our assumption, remains unchanged, while changes. Let denote the new tangent line, and let denote its orientation. Define . Analogously, let and be the points lying on .
Let be the counterclockwise neighbor of on . We find and by traversing clockwise from and clockwise from , simultaneously. We refer to this as the deletion-type tangent searching procedure, which takes time, where is the number of points on strictly between and , and is the number of points on strictly between and . We say that these points are involved in the procedure.
Antipodal pair searching.
We find the antipodal pairs of with respect to . (Observe that is one point of the antipodal pair.) Let be the point such that is the antipodal pair of with respect to and let be the point such that is the antipodal pair of with respect to . (see Figure 10). We find by traversing clockwise from . We refer to this as the deletion-type antipodal-pair searching procedure, which takes time, where is the number of vertices on strictly between and . We say that these vertices are involved in the procedure.
Testing the width condition.
By Lemma 4.2.2, it suffices to determine whether . Recall that and are the antipodal pairs of with respect to and , respectively. We do this by traversing clockwise, from to and from to simultaneously. This takes time, where, as before, is the number of points on strictly between and , and is the number of vertices on strictly between and . This is bounded by the total time required by the deletion-type tangent searching procedure and the deletion-type antipodal-pair searching procedure.
The total time for handling point deletions as moves downward depends on the two procedures: the deletion-type tangent searching procedure and the deletion-type antipodal-pair searching procedure. We conclude that it takes time in total by showing that each input point can be involved at most twice in each of the procedures.
Lemma 9
Each point of can be involved in the deletion-type tangent searching procedure and the deletion-type antipodal-pair searching procedure at most twice, respectively, in the entire algorithm.
Observe that the initialization of all data structures can be done in time by Lemma 9. By Lemma 4.2.2 and 4.2.2, the total time to process all events and to evaluate the condition as moves downward is . Now we conclude the following theorem.
Theorem 10.
Given a set of points in the plane, sorted by their -coordinates, and a real value , we can decide in time whether there exists a pair of slabs of width whose union covers and one of which is horizontal.
4.3 Optimization Algorithm
We give a brief summary of our approach to obtain Theorem 11. Full details of the algorithm and the proof of its optimality are provided in the full version. We first sort the points of so that are ordered in decreasing order of their -coordinates. Let denote the set of all pairwise differences between the -coordinates of points in . Since can be represented as a sorted matrix [14], we can identify two consecutive values such that in time, by combining our decision algorithm described in Section 4.2 with an efficient selection algorithm for sorted matrices [15].
Observe that the sequence of changes in the sets and that occur as moves downward is the same for any . Using this observation, we show that can be computed by tracking as moves downward, for any . We track by following essentially the same procedure as in the decision algorithm. The authors of [6] also use this idea, but their algorithm requires an additional data structure, which results in an extra logarithmic factor.
Theorem 11
Given a set of points in the plane and an orientation , we can find a pair of slabs such that one of them has orientation and their union covers while minimizing the maximum of their widths in time.
4.4 Approximation Algorithm
Recall that in Section 3.3, we showed that an -certificate of size can be computed in time. After obtaining , we find a pair of slabs such that their union covers , has orientation , and the maximum of their widths is minimized. Without loss of generality, we assume that and have the same width (otherwise, we expand the smaller one). Since , it follows that . Such a pair can be found in time by Theorem 11.
Let be the pair of slabs obtained by taking the -expansions of and , respectively. By the definition of an -expansion, has orientation and . Furthermore, by the definition of an -certificate, covers . Therefore, forms a -approximate solution.
It takes time to obtain . Let , then we have . Therefore, the total running time is , which can be expressed as both and . We now conclude the following theorem.
Theorem 12.
Given a set of points in the plane and an orientation , we can find a pair of slabs such that their union covers , one of them has orientation , and the maximum of their widths is at most in time, where .
5 General Two-Line-Center
Throughout this section, we denote by an optimal pair of slabs for the general two-line-center problem. Let .
We begin by proving Lemma 5, which will be used to compute a candidate set of orientations for one of the slabs in a -approximate solution.
Lemma 12
Let and be two points in , let be a real number, let be a constant, and let be a real number.
In time, we can compute a set of orientations, such that the following holds:
For every finite set of points in and for every slab , if
(1) ,
(2) ,
(3) , and
(4) ,
then there exists an orientation and a slab , such that
(1) , (2) , and (3) has the orientation .
By Lemma 3.1, we can compute a set of at most pairs such that one of them is an anchor pair of in time. For the moment, assume that we have an anchor pair of . (We will repeat the following process for every pair in .) Without loss of generality, assume that and .
By Theorem 3, we can compute such that in time.
Consider a slab that has the same orientation as , has width , and contains . In particular, if , then is .
Observe that and satisfy the four conditions in the statement of Lemma 5 for and the value computed above, with . Therefore, in time, we can compute a set of orientations such that there exists a slab with orientation that covers and satisfies . This implies that there exists a pair of slabs whose union covers , one of which has an orientation from , and whose maximum width is at most .
For every , we find a pair of slabs whose union covers , one of which has orientation , and whose maximum width is minimized. By Theorem 11, this can be done in time in total. We repeat this procedure for every pair in , which adds only a constant factor to the running time. Observe that each of the pairs of slabs we obtain has the property that its union covers . Among these pairs, we output the one with the smallest maximum width. Thus, we conclude the following lemma.
Lemma 13.
We can find a pair of slabs such that their union covers and the maximum of their widths is at most in time.
To further refine the logarithmic term, we compute an -certificate of (see Section 3.3). By Theorem 6, this can be done in time and . We then compute a -approximate pair for the general two-line-center problem on , which can be done in time by Lemma 13. Without loss of generality, we assume that and have the same width (otherwise, we expand the smaller one). Let . Since , it is clear that .
Let be the pair of slabs obtained by taking the -expansions of and , respectively. By definition, covers , and .
The total running time is , where , which can also be expressed as both and . By replacing with , we obtain the following theorem.
Theorem 14.
Given a set of points in the plane, we can find a pair of slabs such that their union covers and the maximum of their widths is at most in time, where .
References
- [1] Pankaj K. Agarwal and Cecilia Magdalena Procopiuc. Approximation algorithms for projective clustering. J. Algorithms, 46(2):115–139, 2003. doi:10.1016/S0196-6774(02)00295-X.
- [2] Pankaj K. Agarwal, Cecilia Magdalena Procopiuc, and Kasturi R. Varadarajan. A (1+)-approximation algorithm for 2-line-center. Comput. Geom., 26(2):119–128, 2003. doi:10.1016/S0925-7721(03)00017-8.
- [3] Pankaj K. Agarwal, Cecilia Magdalena Procopiuc, and Kasturi R. Varadarajan. Approximation algorithms for a k-line center. Algorithmica, 42(3-4):221–230, 2005. doi:10.1007/S00453-005-1166-X.
- [4] Charu C. Aggarwal, Cecilia Magdalena Procopiuc, Joel L. Wolf, Philip S. Yu, and Jong Soo Park. Fast algorithms for projected clustering. In SIGMOD 1999, Proceedings ACM SIGMOD International Conference on Management of Data, June 1-3, 1999, Philadelphia, Pennsylvania, USA, pages 61–72. ACM Press, 1999. doi:10.1145/304182.304188.
- [5] Charu C. Aggarwal and Philip S. Yu. Finding generalized projected clusters in high dimensional spaces. In Proceedings of the 2000 ACM SIGMOD International Conference on Management of Data, May 16-18, 2000, Dallas, Texas, USA, pages 70–81. ACM, 2000. doi:10.1145/342009.335383.
- [6] Taehoon Ahn and Sang Won Bae. Constrained two-line center problems. In 35th International Symposium on Algorithms and Computation, ISAAC 2024, Sydney, Australia, December 8-11, 2024, volume 322 of LIPIcs, pages 5:1–5:17. Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 2024. doi:10.4230/LIPICS.ISAAC.2024.5.
- [7] Mihai Badoiu, Sariel Har-Peled, and Piotr Indyk. Approximate clustering via core-sets. In Proceedings on 34th Annual ACM Symposium on Theory of Computing, May 19-21, 2002, Montréal, Québec, Canada, pages 250–257. ACM, 2002. doi:10.1145/509907.509947.
- [8] Sang Won Bae. Minimum-width double-strip and parallelogram annulus. Theor. Comput. Sci., 833:133–146, 2020. doi:10.1016/J.TCS.2020.05.045.
- [9] Gill Barequet and Sariel Har-Peled. Efficiently approximating the minimum-volume bounding box of a point set in three dimensions. J. Algorithms, 38(1):91–109, 2001. doi:10.1006/JAGM.2000.1127.
- [10] Kaushik Chakrabarti and Sharad Mehrotra. Local dimensionality reduction: A new approach to indexing high dimensional spaces. In VLDB 2000, Proceedings of 26th International Conference on Very Large Data Bases, September 10-14, 2000, Cairo, Egypt, pages 89–100. Morgan Kaufmann, 2000. URL: http://www.vldb.org/conf/2000/P089.pdf.
- [11] Timothy M. Chan. Faster core-set constructions and data-stream algorithms in fixed dimensions. Comput. Geom., 35(1-2):20–35, 2006. doi:10.1016/J.COMGEO.2005.10.002.
- [12] Chaeyoon Chung, Taehoon Ahn, Sang Won Bae, and Hee-Kap Ahn. Parallel line centers with guaranteed separation. Comput. Geom., 129:102185, 2025. doi:10.1016/J.COMGEO.2025.102185.
- [13] Vasek Chvátal. A greedy heuristic for the set-covering problem. Math. Oper. Res., 4(3):233–235, 1979. doi:10.1287/MOOR.4.3.233.
- [14] Greg N. Frederickson and Donald B. Johnson. The complexity of selection and ranking in X+Y and matrices with sorted columns. J. Comput. Syst. Sci., 24(2):197–208, 1982. doi:10.1016/0022-0000(82)90048-4.
- [15] Greg N. Frederickson and Donald B. Johnson. Generalized selection and ranking: Sorted matrices. SIAM J. Comput., 13(1):14–30, 1984. doi:10.1137/0213002.
- [16] Sariel Har-Peled and Kasturi R. Varadarajan. Projective clustering in high dimensions using core-sets. In Proceedings of the 18th Annual Symposium on Computational Geometry, Barcelona, Spain, June 5-7, 2002, pages 312–318. ACM, 2002. doi:10.1145/513400.513440.
- [17] Refael Hassin and Nimrod Megiddo. Approximation algorithms for hitting objects with straight lines. Discret. Appl. Math., 30(1):29–42, 1991. doi:10.1016/0166-218X(91)90011-K.
- [18] Piotr Indyk, Rajeev Motwani, Prabhakar Raghavan, and Santosh S. Vempala. Locality-preserving hashing in multidimensional spaces. In Proceedings of the Twenty-Ninth Annual ACM Symposium on the Theory of Computing, El Paso, Texas, USA, May 4-6, 1997, pages 618–625. ACM, 1997. doi:10.1145/258533.258656.
- [19] Jerzy W. Jaromczyk and Miroslaw Kowaluk. The two-line center problem from a polar view: A new algorithm and data structure. In Algorithms and Data Structures, 4th International Workshop, WADS ’95, Kingston, Ontario, Canada, August 16-18, 1995, Proceedings, volume 955 of Lecture Notes in Computer Science, pages 13–25. Springer, 1995. doi:10.1007/3-540-60220-8_47.
- [20] D. T. Lee and Ying-Fung Wu. Geometric complexity of some loction problems. Algorithmica, 1(2):193–211, 1986. doi:10.1007/BF01840442.
- [21] Nimrod Megiddo and Arie Tamir. On the complexity of locating linear facilities in the plane. Oper. Res. Lett., 1(5):194–197, 1982. doi:10.1016/0167-6377(82)90039-6.
- [22] Franco P. Preparata and Michael Ian Shamos. Computational Geometry - An Introduction. Texts and Monographs in Computer Science. Springer, New Haven, CT, USA, 1985. UMI Order No. 78-18546. doi:10.1007/978-1-4612-1098-6.
- [23] Cecilia M. Procopiuc. Projective clustering. In Encyclopedia of Machine Learning and Data Mining, pages 1018–1025. Springer, 2017. doi:10.1007/978-1-4899-7687-1_676.
- [24] Cecilia Magdalena Procopiuc, Michael Jones, Pankaj K. Agarwal, and T. M. Murali. A monte carlo algorithm for fast projective clustering. In Proceedings of the 2002 ACM SIGMOD International Conference on Management of Data, Madison, Wisconsin, USA, June 3-6, 2002, pages 418–427. ACM, 2002. doi:10.1145/564691.564739.
- [25] Haitao Wang. Dynamic convex hulls under window-sliding updates. Comput. Geom. Topol., 4(1):3:1–3:14, 2025. doi:10.57717/CGT.V4I1.53.
