A Practical Algorithm for Enumerating Collinear Points

06/16/2017
by   Ali Gholami Rudi, et al.
0

This paper studies the problem of enumerating all maximal collinear subsets of size at least three in a given set of n points. An algorithm for this problem, besides solving degeneracy testing and the exact fitting problem, can also help with other problems, such as point line cover and general position subset selection. The classic topological sweeping algorithm of Edelsbrunner and Guibas can find these subsets in O(n^2) time in the dual plane. We present an alternative algorithm that, although asymptotically slower than their algorithm in the worst case, is simpler to implement and more amenable to parallelization. If the input points are decomposed into m convex polygons, our algorithm has time complexity O(n^2 m) and space complexity O(n). Our algorithm can be parallelized on the CREW PRAM with time complexity O(n m) using n processors.

READ FULL TEXT

Please sign up or login with your details

Forgot password? Click here to reset