Abstract
In this paper, we present two algorithms to obtain the convex hull of a set of points that are stored in the compact data structure called \(k^2\)-\(tree\). This problem consists in given a set of points P in the Euclidean space obtaining the smallest convex region (polygon) containing P. Traditional algorithms to compute the convex hull do not scale well for large databases, such as spatial databases, since the data does not reside in main memory. We use the \(k^2\)-\(tree\) compact data structure to represent, in main memory, efficiently a binary adjacency matrix representing points over a 2D space. This structure allows an efficient navigation in a compressed form. The experimentations performed over synthetical and real data show that our proposed algorithms are more efficient. In fact they perform over four order of magnitude compared with algorithms with time complexity of \(O(n \log n)\).
Similar content being viewed by others
Notes
Datasets available at http://chorochronos.datastories.org/.
References
Akl SG, Toussaint GT (1978) A fast convex hull algorithm. Inf Process Lett 7(5):219–222
Barber B, Dobkin D, Huhdanpaa H (1996) The quickhull algorithm for convex hulls. ACM Trans Math Softw 22(4):469–483
Böhm C, Kriegel H-P (2001) Determining the convex hull in large multidimensional databases. In: Proceedings of the third international conference on data warehousing and knowledge discovery, pp 294–306
Brisaboa N, Ladra S, Navarro G (2009) k2-trees for compact web graph representation. In: Proceedings of the 16th international symposium on string processing and information retrieval, pp 18–30
Brisaboa N, Luaces M, Navarro G, Seco D (2013) Space-efficient representations of rectangle datasets supporting orthogonal range querying. Inf Syst 38(5):635–655
Cadenas O, Megson GM (2019) Preprocessing 2d data for fast convex hull computations. PLoS ONE 14(2):1–15
Caro D, Rodríguez A, Brisaboa N, Fariña A (2016) Compressed k\({}^{\text{ d }}\)-tree for temporal graphs. Knowl Inf Syst 49(2):553–595
De Berg M, Cheong O, Van Kreveld M, Overmars M (2008) Computational geometry: algorithms and applications. Springer, Berlin
Durocher S, El-Zein H, Lan Munro J, Thankachan S (2015) Low space data structures for geometric range mode query. Theor Comput Sci 581:97–101
Graham R (1972) An efficient algorithm for determining the convex hull of a finite planar set. Inf Proces Lett 1(4):132–133
Guttman A (1984) R-trees: a dynamic index structure for spatial searching. In: Proceedings of the 1984 ACM SIGMOD international conference on management of data, pp 47–57
Graham R, Yao F (1983) Finding the convex hull of a simple polygon. J Algorithms 4(4):324–331
Jarvis R (1973) On the identification of the convex hull of a finite set of points in the plane. Inf Process Lett 2(1):18–21
Kirkpatrick D, Seidel R (1986) The ultimate planar convex hull algorithm. SIAM J Comput 15(1):287–299
Liu R, Fang B, Tang Y, Wen J, Qian J (2012) A fast convex hull algorithm with maximum inscribed circle affine transformation. Neurocomputing 77(1):212–221
Mcqueen M, Toussaint G (1985) On the ultimate convex hull algorithm in practice. Pattern Recogn Lett 3(1):29–34
O’Rourke J (1998) Computational geometry in C, 2nd edn. Cambridge University Press, Cambridge, New York
Preparata F, Hong SJ (1977) Convex hulls of finite sets of points in two and three dimensions. Commun ACM 20(2):87–93
Preparata F, Shamos M (1985) Computational geometry: an introduction. Springer, New York
Plattner H, Zeier A (2011) In-memory data management: an inflection point for enterprise applications, 1st edn. Springer, Berlin
Raman R, Raman V, Rao SS, (2001) Succinct dynamic data structures. In: Dehne F, Sack JR, Tamassia R (eds) Algorithms and data structures. WADS, (2001) Lecture Notes in Computer Science, vol 2125. Springer, Berlin, Heidelberg, pp 426–437
Sander J, Ester M, Kriegel H-P, Xiaowei X (1998) Density-based clustering in spatial databases: the algorithm gdbscan and its applications. Data Min Knowl Discov 2(2):169–194
Sklansky J (1982) Finding the convex hull of a simple polygon. Pattern Recogn Lett 1(2):79–83
Acknowledgements
Mónica Caniupán is partially funded by Projects DIUBB (181315 3/R) and (2030228 IF/R). Gilberto Gutiérrez is partially funded by Projects (181315 3/R) and (192119 2/R). Miguel Romero is partially funded by Projects DIUBB (163319 3/I) and (2030228 IF/R). All the authors were partially funded by the Algorithms and Databases Research Group (195119 GI/VC).
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Castro, J.F., Romero, M., Gutiérrez, G. et al. Efficient computation of the convex hull on sets of points stored in a k-tree compact data structure. Knowl Inf Syst 62, 4091–4111 (2020). https://doi.org/10.1007/s10115-020-01486-9
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10115-020-01486-9