Planar Point Location for Large Data Sets: To Seek or Not to Seek

We present an algorithm for external memory planar point location that is both effective and easy to implement. The base algorithm is an external memory variant of the bucket method by Edahiro, Kokubo and Asano that is combined with Lee and Yang's batched internal memory algorithm for planar point location. Although our algorithm is not optimal in terms of its worst-case behavior, we show its efficiency for both batched and single-shot queries by experiments with real-world data. The experiments show that the algorithm benefits from its mainly sequential disk access pattern and significantly outperforms the fastest algorithm for internal memory.

[1]  Alok Aggarwal,et al.  The input/output complexity of sorting and related problems , 1988, CACM.

[2]  Ketan Mulmuley,et al.  Computational geometry - an introduction through randomized algorithms , 1993 .

[3]  Jeffrey Scott Vitter,et al.  External-Memory Algorithms for Processing Line Segments in Geographic Information Systems (Extended Abstract) , 1995, ESA.

[4]  Richard J. Lipton,et al.  Multidimensional Searching Problems , 1976, SIAM J. Comput..

[5]  Robert E. Tarjan,et al.  Planar point location using persistent search trees , 1986, CACM.

[6]  Yi-Jen Chiang,et al.  Experiments on the practical I/O efficiency of geometric algorithms: Distribution sweep versus plane sweep , 1998, Comput. Geom..

[7]  Leonidas J. Guibas,et al.  Optimal Point Location in a Monotone Subdivision , 1986, SIAM J. Comput..

[8]  Kurt Mehlhorn,et al.  Randomized external-memory algorithms for some geometric problems , 1998, SCG '98.

[9]  David G. Kirkpatrick,et al.  Optimal Search in Planar Subdivisions , 1983, SIAM J. Comput..

[10]  Jan Vahrenhold,et al.  I/O-efficient dynamic planar point location (extended abstract) , 2000, SCG '00.

[11]  Jeffrey Scott Vitter,et al.  External-Memory Algorithms for Processing Line Segments in Geographic Information Systems , 1996 .

[12]  Takao Asano,et al.  A new point-location algorithm and its practical efficiency: comparison with existing algorithms , 1984, TOGS.

[13]  D. T. Lee,et al.  Location of Multiple Points in a Planar Subdivision , 1979, Inf. Process. Lett..

[14]  Raimund Seidel,et al.  On the exact worst case query complexity of planar point location , 2000, SODA '98.

[15]  David R. Musser,et al.  STL tutorial and reference guide - C++ programming with the standard template library , 1996, Addison-Wesley professional computing series.

[16]  Jyh-Jong Tsay,et al.  External-memory computational geometry , 1993, Proceedings of 1993 IEEE 34th Annual Foundations of Computer Science.

[17]  Sridhar Ramaswamy,et al.  A Unified Approach for Indexed and Non-Indexed Spatial Joins , 2000, EDBT.

[18]  Jack Snoeyink Point Location , 2004, Handbook of Discrete and Computational Geometry, 2nd Ed..

[19]  Kihong Kim,et al.  Sibling clustering of tree-based spatial indexes for efficient spatial query processing , 1998, International Conference on Information and Knowledge Management.

[20]  Michael Ian Shamos,et al.  Computational geometry: an introduction , 1985 .

[21]  Jeffrey Scott Vitter,et al.  I/O-efficient dynamic point location in monotone planar subdivisions , 1999, SODA '99.