Abstract
Finding the smallest enclosing circle of the given points in \(E^2\) is a seemingly simple problem. However, already proposed algorithms have high memory requirements or require special solutions due to the great recursion depth or high computational complexity unacceptable for large data sets, etc. This paper presents a simple and efficient method with speed-up over 100 times based on processed data reduction. It is based on efficient preprocessing, which significantly reduces points used in the final processing. It also significantly reduces the depth of recursion and memory requirements, which is a limiting factor for large data processing. The proposed algorithm is easy to implement and it is extensible to the \(E^3\) case, too. The proposed algorithm was tested for up to \(10^9\) of points using the Halton’s and “Salt and Pepper” distributions.
Research supported by the University of West Bohemia - Institutional research support.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
- 2.
Responsibilities: Algorithm design and analysis, manuscript preparation - V.Skala, Experimental implementation and verification - M. Cerny and J.Y. Saleh.
References
Agarwal, P., Ben Avraham, R., Sharir, M.: The 2-center problem in three dimensions. Comput. Geometry Theory Appl. 46(6), 734–746 (2013). https://doi.org/10.1016/j.comgeo.2012.11.005
Cavaleiro, M., Alizadeh, F.: A faster dual algorithm for the euclidean minimum covering ball problem. Ann. Oper. Res. (2020). https://doi.org/10.1007/s10479-018-3123-5
Cavaleiro, M., Alizadeh, F.: A dual simplex-type algorithm for the smallest enclosing ball of balls. Comput. Optim. Appl. 79(3), 767–787 (2021). https://doi.org/10.1007/s10589-021-00283-6
Cazals, F., Dreyfus, T., Sachdeva, S., Shah, N.: Greedy geometric algorithms for collection of balls, with applications to geometric approximation and molecular coarse-graining. Comput. Graph. Forum 33(6), 1–17 (2014). https://doi.org/10.1111/cgf.12270
Chen, Q.Q., Hung, M.H., Zou, F.: Effective and adaptive algorithm for pepper-and-salt noise removal. IET Image Proc. 11(9), 709–716 (2017). https://doi.org/10.1049/iet-ipr.2016.0692
Drager, L., Lee, J., Martin, C.: On the geometry of the smallest circle enclosing a finite set of points. J. Franklin Inst. 344(7), 929–940 (2007). https://doi.org/10.1016/j.jfranklin.2007.01.003
Edelsbrunner, H., Virk, Z., Wagner, H.: Smallest enclosing spheres and chernoff points in bregman geometry. Leibniz International Proceedings in Informatics, LIPIcs 99, 351–3513 (2018). https://doi.org/10.4230/LIPIcs.SoCG.2018.35
Efrat, A., Sharir, M., Ziv, A.: Computing the smallest k-enclosing circle and related problems. In: Dehne, F., Sack, J.-R., Santoro, N., Whitesides, S. (eds.) WADS 1993. LNCS, vol. 709, pp. 325–336. Springer, Heidelberg (1993). https://doi.org/10.1007/3-540-57155-8_259
Efrat, A., Sharir, M., Ziv, A.: Computing the smallest k-enclosing circle and related problems. Comput. Geometry Theory Appl. 4(3), 119–136 (1994). https://doi.org/10.1016/0925-7721(94)90003-5
Elzinga, D.J., Hearn, D.W.: The minimum covering sphere problem. Manage. Sci. 19(1), 96–104 (1972). https://doi.org/10.1287/mnsc.19.1.96
Fischer, K., Gartner, B.: The smallest enclosing ball of balls: combinatorial structure and algorithms. Int. J. Comput. Geom. Appl. 14(4–5), 341–378 (2004). https://doi.org/10.1142/s0218195904001500
Fischer, K., Gärtner, B.: The smallest enclosing ball of balls: combinatorial structure and algorithms. In: Proceedings of the Annual Symposium on Computational Geometry, pp. 292–301 (2003)
Fischer, K., Gärtner, B., Kutz, M.: Fast smallest-enclosing-ball computation in high dimensions. In: Di Battista, G., Zwick, U. (eds.) ESA 2003. LNCS, vol. 2832, pp. 630–641. Springer, Heidelberg (2003). https://doi.org/10.1007/978-3-540-39658-1_57
Friedman, F., Stroudsburg, E.: Minimal enclosing circle and two and three point partitions of a plane. In: Proceedings of International Conference on Scientific Computing (2006)
Gärtner, B.: Fast and robust smallest enclosing balls. In: Nešetřil, J. (ed.) ESA 1999. LNCS, vol. 1643, pp. 325–338. Springer, Heidelberg (1999). https://doi.org/10.1007/3-540-48481-7_29
Gao, S., Wang, C.: A new algorithm for the smallest enclosing circle. In: Proceedings of the 2018 8th International Conference on Management, Education and Information (MEICI 2018), pp. 562–567. Atlantis Press, December 2018. https://doi.org/10.2991/meici-18.2018.111
Goaoc, X., Welzl, E.: Convex hulls of random order types. In: Leibniz International Proceedings in Informatics, LIPIcs 164 (2020). https://doi.org/10.4230/LIPIcs.SoCG.2020.49
Har-Peled, S., Mazumdar, S.: Fast algorithms for computing the smallest k-enclosing circle. Algorithmica (New York) 41(3), 147–157 (2005). https://doi.org/10.1007/s00453-004-1123-0
Jiang, Y., Cai, Y.: A reformulation-linearization based algorithm for the smallest enclosing circle problem. J. Ind. Manage. Optim. 17(6), 3633–3644 (2021). https://doi.org/10.3934/jimo.2020136
Jiang, Y., Luo, C., Ling, S.: An efficient cutting plane algorithm for the smallest enclosing circle problem. J. Ind. Manage. Optim. 13(1), 147–153 (2017). https://doi.org/10.3934/jimo.2016009
Kallberg, L., Shellshear, E., Larsson, T.: An external memory algorithm for the minimum enclosing ball problem. VISIGRAPP 2016 - Proceedings of the 11th Joint Conference on Computer Vision, Imaging and Computer Graphics Theory and Applications, pp. 83–90 (2016). https://doi.org/10.5220/0005675600810088
Karmakar, A., Roy, S., Das, S.: Fast computation of smallest enclosing circle with center on a query line segment. In: CCCG 2007–19th Canadian Conference on Computational Geometry, pp. 273–276 (2007)
Karmakar, A., Roy, S., Das, S.: Fast computation of smallest enclosing circle with center on a query line segment. Inf. Process. Lett. 108(6), 343–346 (2008). https://doi.org/10.1016/j.ipl.2008.07.002
Krivosija, A., Munteanu, A.: Probabilistic smallest enclosing ball in high dimensions via subgradient sampling. Leibniz International Proceedings in Informatics, LIPIcs 129 (2019). https://doi.org/10.4230/LIPIcs.SoCG.2019.47
Larsson, T., Kallberg, L.: Fast and robust approximation of smallest enclosing balls in arbitrary dimensions. Comput. Graph. Forum 32(5), 93–101 (2013). https://doi.org/10.1111/cgf.12176
Li, X., Ercan, M.F.: An algorithm for smallest enclosing circle problem of planar point sets. In: Gervasi, O., Murgante, B., Misra, S., Rocha, A.M.A.C., Torre, C., Taniar, D., Apduhan, B.O., Stankova, E., Wang, S. (eds.) ICCSA 2016. LNCS, vol. 9786, pp. 309–318. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-42085-1_24
Liu, Y.-F., Diao, R., Ye, F., Liu, H.-W.: An efficient inexact newton-CG algorithm for the smallest enclosing ball problem of large dimensions. J. Oper. Res. Soc. China 4(2), 167–191 (2015). https://doi.org/10.1007/s40305-015-0097-8
Martinetz, T., Mamlouk, A., Mota, C.: Fast and easy computation of approximate smallest enclosing balls. In: Brazilian Symposium of Computer Graphic and Image Processing, pp. 163–168 (2006). https://doi.org/10.1109/SIBGRAPI.2006.20
Martyn, T.: Tight bounding ball for affine IFS attractor. Comput. Graph. (Pergamon) 27(4), 535–552 (2003). https://doi.org/10.1016/S0097-8493(03)00089-X
Matoušek, J., Sharir, M., Welzl, E.: A subexponential bound for linear programming. Algorithmica (New York) 16(4–5), 498–516 (1996). https://doi.org/10.1007/bf01940877, the code available at https://news.ycombinator.com/item?id=14475832
Megiddo, N.: On the ball spanned by balls. Discrete Comput. Geometry 4(6), 605–610 (1989). https://doi.org/10.1007/BF02187750
Mordukhovich, B., Nam, N., Villalobos, C.: The smallest enclosing ball problem and the smallest intersecting ball problem: existence and uniqueness of solutions. Optim. Lett. 7(5), 839–853 (2013). https://doi.org/10.1007/s11590-012-0483-7
Mukherjee, D.: Reduction of two-dimensional data for speeding up convex hull computation (2022). arxiv:2201.11412, https://arxiv.org/pdf/2201.11412.pdf
Munteanu, A., Sohler, C., Feldman, D.: Smallest enclosing ball for probabilistic data. In: Proceedings of the Annual Symposium on Computational Geometry, pp. 214–223 (2014). https://doi.org/10.1145/2582112.2582114
Nam, N., Nguyen, T., Salinas, J.: Applications of convex analysis to the smallest intersecting ball problem. J. Convex Anal. 19(2), 497–518 (2012)
Nielsen, F.: The siegel-klein disk: Hilbert geometry of the siegel disk domain. Entropy 22(9) (2020). https://doi.org/10.3390/e22091019
Nielsen, F., Hadjeres, G.: Approximating covering and minimum enclosing balls in hyperbolic geometry. In: Nielsen, F., Barbaresco, F. (eds.) GSI 2015. LNCS, vol. 9389, pp. 586–594. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-25040-3_63
Nielsen, F., Nock, R.: Approximating smallest enclosing balls. In: Laganá, A., Gavrilova, M.L., Kumar, V., Mun, Y., Tan, C.J.K., Gervasi, O. (eds.) ICCSA 2004. LNCS, vol. 3045, pp. 147–157. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-24767-8_16
Nielsen, F., Nock, R.: A fast deterministic smallest enclosing disk approximation algorithm. Inf. Process. Lett. 93(6), 263–268 (2005). https://doi.org/10.1016/j.ipl.2004.12.006
Nielsen, F., Nock, R.: On approximating the smallest enclosing bregman balls. In: Proceedings of the Annual Symposium on Computational Geometry 2006, pp. 485–486 (2006). https://doi.org/10.1145/1137856.1137931
Nielsen, F., Nock, R.: On the smallest enclosing information disk. Inf. Process. Lett. 105(3), 93–97 (2008). https://doi.org/10.1016/j.ipl.2007.08.007
Nielsen, F., Nock, R.: Approximating smallest enclosing balls with applications to machine learning. Int. J. Comput. Geom. Appl. 19(5), 389–414 (2009). https://doi.org/10.1142/S0218195909003039
Nock, R., Nielsen, F.: Fitting the smallest enclosing bregman ball. In: Gama, J., Camacho, R., Brazdil, P.B., Jorge, A.M., Torgo, L. (eds.) ECML 2005. LNCS (LNAI), vol. 3720, pp. 649–656. Springer, Heidelberg (2005). https://doi.org/10.1007/11564096_65
Pan, S., Li, X.: An efficient algorithm for the smallest enclosing ball problem in high dimensions. Appl. Math. Comput. 172(1), 49–61 (2006). https://doi.org/10.1016/j.amc.2005.01.127
Pronzato, L.: On the elimination of inessential points in the smallest enclosing ball problem. Optim. Methods Softw. 34(2), 225–247 (2019). https://doi.org/10.1080/10556788.2017.1359266
Ritter, J.: An efficient bounding sphere, pp. 301–303. Graphics Gems, Academic Press Professional, Inc (1990)
Saha, A., Vishwanathan, S., Zhang, X.: New approximation algorithms for minimum enclosing convex shapes. Proceedings of the Annual ACM-SIAM Symposium on Discrete Algorithms pp. 1146–1160 (2011). https://doi.org/10.1137/1.9781611973082.86
Shen, K.W., Wang, X.K., Wang, J.Q.: Multi-criteria decision-making method based on smallest enclosing circle in incompletely reliable information environment. Comput. Ind. Eng. 130, 1–13 (2019). https://doi.org/10.1016/j.cie.2019.02.011
Shenmaier, V.: Complexity and approximation of the smallest k-enclosing ball problem. Eur. J. Comb. 48, 81–87 (2015). https://doi.org/10.1016/j.ejc.2015.02.011
Shi, Y.Z., Wang, S.T., Wang, J., Deng, Z.H.: Fast classification for nonstationary large scale data sets using minimal enclosing ball. Kongzhi yu Juece/Control and Decision 28(7), 1065–1072 (2013)
Skala, V.: Trading time for space: an O(1) average time algorithm for point-in-polygon location problem: theoretical fiction or practical usage? Mach. Graph. Vision 5(3), 483–494 (1996)
Skala, V.: Barycentric coordinates computation in homogeneous coordinates. Comput. Graph. (Pergamon) 32(1), 120–127 (2008). https://doi.org/10.1016/j.cag.2007.09.007
Skala, V.: Fast \(o_{expected}(n)\) algorithm for finding exact maximum distance in E2 instead of \(O(N^2)\) or \(O(N~lgN)\). AIP Conf. Proc. 1558, 2496–2499 (2013). https://doi.org/10.1063/1.4826047
Skala, V.: A new robust algorithm for computation of a triangle circumscribed sphere in E3 and a hypersphere simplex. In: AIP Conference Proceedings 1738 (2016). https://doi.org/10.1063/1.4952269
Skala, V.: Diameter and convex hull of points using space subdivision in E2 and E3. In: Gervasi, O., Murgante, B., Misra, S., Garau, C., Blečić, I., Taniar, D., Apduhan, B.O., Rocha, A.M.A.C., Tarantino, E., Torre, C.M., Karaca, Y. (eds.) ICCSA 2020. LNCS, vol. 12249, pp. 286–295. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-58799-4_21
Skala, V., Majdisova, Z.: Fast algorithm for finding maximum distance with space subdivision in E2. LNCS 9218, 261–274 (2015). https://doi.org/10.1007/978-3-319-21963-9_24
Skala, V., Majdisova, Z., Smolik, M.: Space subdivision to speed-up convex hull construction in E3. Adv. Eng. Softw. 91, 12–22 (2016). https://doi.org/10.1016/j.advengsoft.2015.09.002
Skala, V.: Fast \(o_{expected}(n)\) algorithm for finding exact maximum distance in E2 instead of \(O(N^2)\) or \(O(N~lgN)\). In: Misra, S., Gervasi, O., Murgante, B., Stankova, E., Korkhov, V., Torre, C., Rocha, A.M.A.C., Taniar, D., Apduhan, B.O., Tarantino, E. (eds.) ICCSA 2019. LNCS, vol. 11619, pp. 367–380. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-24289-3_27
Skala, V., Smolik, M., Majdisova, Z.: Reducing the number of points on the convex hull calculation using the polar space subdivision in E2. SIBGRAPI 2016, 40–47 (2017). https://doi.org/10.1109/SIBGRAPI.2016.015
Skyum, S.: A simple algorithm for computing the smallest enclosing circle. Inf. Process. Lett. 37(3), 121–125 (1991). https://doi.org/10.1016/0020-0190(91)90030-L
Smolik, Z.M., Skala, V.: Efficient speed-up of the smallest enclosing circle algorithm. Informatica, pp. 1–11 (2022). https://doi.org/10.15388/22-INFOR477, accepted for publication, online 2022–03-23
Sylvester, J.: A question in the geometry of situation. Quarterly J. Pure Appl. Math. 1, 79 (1857). https://doi.org/10.1049/iet-ipr.2016.0692
Tao, J.W., Wang, S.T.: Large margin and minimal reduced enclosing ball learning machine. Ruan Jian Xue Bao/Journal of Software 23(6), 1458–1471 (2012). https://doi.org/10.3724/SP.J.1001.2012.04071
Wang, Y., Li, Y., Chang, L.: Approximate minimum enclosing ball algorithm with smaller core sets for binary support vector machine. In: 2010 Chinese Control and Decision Conference, CCDC 2010, pp. 3404–3408 (2010). https://doi.org/10.1109/CCDC.2010.5498584
Wang, Y., Li, Y., Tan, K.L.: Coresets for minimum enclosing balls over sliding windows. Proceedings of the ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, pp. 314–323 (2019). https://doi.org/10.1145/3292500.3330826
Wei, L.Y., Anand, A., Kumar, S., Beri, T.: Simple methods to represent shapes with sample spheres. In: SIGGRAPH Asia 2020 Technical Communications, SA 2020 (2020). https://doi.org/10.1145/3410700.3425424
Welzl, E.: Smallest enclosing disks (balls and ellipsoids). In: Maurer, H. (ed.) New Results and New Trends in Computer Science. LNCS, vol. 555, pp. 359–370. Springer, Heidelberg (1991). https://doi.org/10.1007/BFb0038202
Welzl, E.: Geometric optimization and unique sink orientations of cubes. In: Fiala, J., Koubek, V., Kratochvíl, J. (eds.) MFCS 2004. LNCS, vol. 3153, pp. 176–176. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-28629-5_9
Welzl, E.: The smallest enclosing circle - a contribution to democracy from switzerland? Algorithms Unplugged, pp. 357–360 (2011). https://doi.org/10.1007/978-3-642-15328-0_36
Wikipedia contributors: Article: Smallest-circle problem - Wikipedia, the free encyclopedia (2021). https://en.wikipedia.org/wiki/Smallest-circle_problem. Accessed 29 Jan 2022
Wikipedia contributors: Halton sequence - Wikipedia, the free encyclopedia (2021). en.wikipedia.org/wiki/Halton_sequence. Accessed 27 Jan 2022
Wikipedia contributors: Talk: Smallest-circle problem - Wikipedia, the free encyclopedia (2021). https://en.wikipedia.org/wiki/Talk:Smallest-circle_problem. Accessed 29 Jan 2022
Xu, J., Bu, F., Si, W., Qiu, Y., Chen, Z.: An algorithm of weighted Monte Carlo localization based on smallest enclosing circle. In: Proceedings - 2011 IEEE International Conference on Internet of Things and Cyber, Physical and Social Computing, iThings/CPSCom 2011, pp. 157–161 (2011). https://doi.org/10.1109/iThings/CPSCom.2011.67
Xu, S., Freund, R., Sun, J.: Solution methodologies for the smallest enclosing circle problem. Comput. Optim. Appl. 25(1–3), 283–292 (2003). https://doi.org/10.1023/A:1022977709811
Yildirim, E.: Two algorithms for the minimum enclosing ball problem. SIAM J. Optim. 19(3), 1368–1391 (2008). https://doi.org/10.1137/070690419
Zhou, G., Tohemail, K.C., Sun, J.: Efficient algorithms for the smallest enclosing ball problem. Comput. Optim. Appl. 30(2), 147–160 (2005). https://doi.org/10.1007/s10589-005-4565-7
Zhou, Q., Zhu, H.S., Xu, Y.J., Li, X.W.: Smallest enclosing circle based localization approach for wireless sensor networks. Tongxin Xuebao/J. Commun. 29(11), 84–90 (2008)
Zhou, Y., Yang, B., Wang, J., Zhu, J., Tian, G.: A scaling-free minimum enclosing ball method to detect differentially expressed genes for RNA-SEQ data. BMC Genomics 22(1), 479 (2021). https://doi.org/10.1186/s12864-021-07790-0
Acknowledgment
The authors would like to thank to colleagues at the Shandong University in Jinan (China) and University of West Bohemia in Pilsen (Czech Rep.) for stimulating of this work and discussions made. Thanks belong also to the anonymous reviewers for their critical comments, hints provided and for unknown relevant references. \(^3\)(\(^3\)SIMD version using Intel’s intrinsics AVX-2 has been tested and led to an additional roughly 20% performance gain.)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Appendix
Appendix
This appendix presents related papers to the Smallest Enclosing Ball problem:
Agarwal [1], Cavaleiro [2, 3], Cazals [4], Chen [5], Drager [6], Edelsbrunner [7], Efrat [8, 9], Elzinga [10], wiki: [70,71,72], Fischer [11,12,13], Friedman [14], Gaertner [15], Gao [16], Goaoc [17], Har-Peled [18], Jiang [19, 20], Kallberg [21], Karmakar [22, 23], Krivosija [24], Larsson [25], Li [26], Liu [27], Martinetz [28], Martyn [29], Matousek [30], Megiddo [31], Mordukhovich [32], Mukherjee [33], Munteanu [34], Nam [35], Nielsen [38,39,40], Nielsen [36, 37, 41, 42], Nock [43], Pan [44], Pronzato [45], Ritter [46], Saha [47], Shen [48], Shenmaier [49], Shi [50], Skyum [60], Smolik [61], Sylvester [62], Tao [63], Wang [64, 65], Wei [66], Welzl [67,68,69], Xu [73, 74], Yildirim [75], Zhou [76,77,78].
Rights and permissions
Copyright information
© 2022 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Skala, V., Cerny, M., Saleh, J.Y. (2022). Simple and Efficient Acceleration of the Smallest Enclosing Ball for Large Data Sets in \(E^2\): Analysis and Comparative Results. In: Groen, D., de Mulatier, C., Paszynski, M., Krzhizhanovskaya, V.V., Dongarra, J.J., Sloot, P.M.A. (eds) Computational Science – ICCS 2022. ICCS 2022. Lecture Notes in Computer Science, vol 13350. Springer, Cham. https://doi.org/10.1007/978-3-031-08751-6_52
Download citation
DOI: https://doi.org/10.1007/978-3-031-08751-6_52
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-08750-9
Online ISBN: 978-3-031-08751-6
eBook Packages: Computer ScienceComputer Science (R0)