Abstract
We develop a simple combinatorial algorithm for computing the smallest enclosing ball of a set of points in high dimensional Euclidean space. The resulting code is in most cases faster (sometimes significantly) than recent dedicated methods that only deliver approximate results, and it beats off-the-shelf solutions, based e.g. on quadratic programming solvers. The algorithm resembles the simplex algorithm for linear programming; it comes with a Bland-type rule to avoid cycling in presence of degeneracies and it typically requires very few iterations. We provide a fast and robust floating-point implementation whose efficiency is based on a new dynamic data structure for maintaining intermediate solutions.
The code can efficiently handle point sets in dimensions up to 2,000, and it solves instances of dimension 10,000 within hours. In low dimensions, the algorithm can keep up with the fastest computational geometry codes that are available.
Partly supported by the IST Programme of the EU and the Swiss Federal Office for Education and Science as a Shared-cost RTD (FET Open) Project under Contract No IST-2000-26473 (ECG – Effective Computational Geometry for Curves and Surfaces).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Megiddo, N.: Linear-time algorithms for linear programming in R3 and related problems. SIAM J. Comput. 12, 759–776 (1983)
Dyer, M.E.: A class of convex programs with applications to computational geometry. In: Proc. 8th Annu. ACM Sympos. Comput. Geom., pp. 9–15 (1992)
Welzl, E.: Smallest enclosing disks (balls and ellipsoids). In: Maurer, H.A. (ed.) New Results and New Trends in Computer Science. LNCS, vol. 555, pp. 359–370. Springer, Heidelberg (1991)
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)
Gärtner, B., Schönherr, S.: An efficient, exact, and generic quadratic programming solver for geometric optimization. In: Proc. 16th Annu. ACM Sympos. Comput. Geom, pp. 110–118 (2000)
Ben-Hur, A., Horn, D., Siegelmann, H.T., Vapnik, V.: Support vector clustering. Journal of Machine Learning Research 2, 125–137 (2001)
Bulatov, Y., Jambawalikar, S., Kumar, P., Sethia, S.: Hand recognition using geometric classifiers. In: Abstract of presentation for the DIMACS Workshop on Computational Geometry. Rutgers University (2002)
Goel, A., Indyk, P., Varadarajan, K.R.: Reductions among high dimensional proximity problems. In: Symposium on Discrete Algorithms, pp. 769–778 (2001)
Kumar, P., Mitchell, J.S.B., Yıldırım, E.A.: Computing core-sets and approximate smallest enclosing hyperspheres in high dimensions. In: To appear in the Proceedings of ALENEX 2003 (2003)
ILOG, Inc.: ILOG CPLEX 6.5 user’s manual (1999)
Zhou, G., Toh, K.C., Sun, J.: Efficient algorithms for the smallest enclosing ball problem (2002) (manuscript)
Hopp, T.H., Reeve, C.P.: An algorithm for computing the minimum covering sphere in any dimension. Technical Report NISTIR 5831, National Institute of Standards and Technology (1996)
Chvátal, V.: Linear programming. W. H. Freeman, New York (1983)
Golub, G.H., van Loan, C.F.: Matrix Computations, 3rd edn. Johns Hopkins University Press, Baltimore (1996)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2003 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Fischer, K., Gärtner, B., Kutz, M. (2003). Fast Smallest-Enclosing-Ball Computation in High Dimensions. In: Di Battista, G., Zwick, U. (eds) Algorithms - ESA 2003. ESA 2003. Lecture Notes in Computer Science, vol 2832. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-39658-1_57
Download citation
DOI: https://doi.org/10.1007/978-3-540-39658-1_57
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-20064-2
Online ISBN: 978-3-540-39658-1
eBook Packages: Springer Book Archive