Bounding Sphere
   HOME

TheInfoList



OR:

In
mathematics Mathematics is an area of knowledge that includes the topics of numbers, formulas and related structures, shapes and the spaces in which they are contained, and quantities and their changes. These topics are represented in modern mathematics ...
, given a non-empty set of objects of finite extension in d-dimensional
space Space is the boundless three-dimensional extent in which objects and events have relative position and direction. In classical physics, physical space is often conceived in three linear dimensions, although modern physicists usually consider ...
, for example a set of points, a bounding sphere, enclosing sphere or enclosing ball for that set is an d-dimensional solid sphere containing all of these objects. Used in
computer graphics Computer graphics deals with generating images with the aid of computers. Today, computer graphics is a core technology in digital photography, film, video games, cell phone and computer displays, and many specialized applications. A great de ...
and
computational geometry Computational geometry is a branch of computer science devoted to the study of algorithms which can be stated in terms of geometry. Some purely geometrical problems arise out of the study of computational geometric algorithms, and such problems ar ...
, a bounding sphere is a special type of
bounding volume In computer graphics and computational geometry, a bounding volume for a set of objects is a closed volume that completely contains the union of the objects in the set. Bounding volumes are used to improve the efficiency of geometrical operatio ...
. There are several fast and simple bounding sphere construction algorithms with a high practical value in real-time computer graphics applications. In
statistics Statistics (from German language, German: ''wikt:Statistik#German, Statistik'', "description of a State (polity), state, a country") is the discipline that concerns the collection, organization, analysis, interpretation, and presentation of ...
and
operations research Operations research ( en-GB, operational research) (U.S. Air Force Specialty Code: Operations Analysis), often shortened to the initialism OR, is a discipline that deals with the development and application of analytical methods to improve deci ...
, the objects are typically points, and generally the sphere of interest is the minimal bounding sphere, that is, the sphere with minimal radius among all bounding spheres. It may be proven that such a sphere is unique: If there are two of them, then the objects in question lie within their intersection. But an intersection of two non-coinciding spheres of equal radius is contained in a sphere of smaller radius. The problem of computing the center of a minimal bounding sphere is also known as the "unweighted Euclidean
1-center problem The 1-center problem, also known as minimax problem or minmax location problem, is a classical combinatorial optimization problem in operations research of facilities location type. In its most general case the problem is stated as follows: given a ...
".


Applications


Clustering

Such spheres are useful in clustering, where groups of similar data points are classified together. In
statistical analysis Statistical inference is the process of using data analysis to infer properties of an underlying distribution of probability.Upton, G., Cook, I. (2008) ''Oxford Dictionary of Statistics'', OUP. . Inferential statistical analysis infers propertie ...
the
scattering Scattering is a term used in physics to describe a wide range of physical processes where moving particles or radiation of some form, such as light or sound, are forced to deviate from a straight trajectory by localized non-uniformities (including ...
of
data points In statistics, a unit of observation is the unit described by the data that one analyzes. A study may treat groups as a unit of observation with a country as the unit of analysis, drawing conclusions on group characteristics from data collected at ...
within a sphere may be attributed to
measurement error Observational error (or measurement error) is the difference between a measured value of a quantity and its true value.Dodge, Y. (2003) ''The Oxford Dictionary of Statistical Terms'', OUP. In statistics, an error is not necessarily a " mistake ...
or natural (usually thermal) processes, in which case the cluster represents a perturbation of an ideal point. In some circumstances this ideal point may be used as a substitute for the points in the cluster, advantageous in reducing calculation time. In
operations research Operations research ( en-GB, operational research) (U.S. Air Force Specialty Code: Operations Analysis), often shortened to the initialism OR, is a discipline that deals with the development and application of analytical methods to improve deci ...
the clustering of values to an ideal point may also be used to reduce the number of inputs in order to obtain approximate values for
NP-hard In computational complexity theory, NP-hardness ( non-deterministic polynomial-time hardness) is the defining property of a class of problems that are informally "at least as hard as the hardest problems in NP". A simple example of an NP-hard pr ...
problems in a reasonable time. The point chosen is not usually the center of the sphere, as this can be biased by outliers, but instead some form of average location such as a
least squares The method of least squares is a standard approach in regression analysis to approximate the solution of overdetermined systems (sets of equations in which there are more equations than unknowns) by minimizing the sum of the squares of the res ...
point is computed to represent the cluster.


Algorithms

There are exact and approximate algorithms for the solving bounding sphere problem.


Linear programming

Nimrod Megiddo , birth_date = , birth_place = , death_date = , death_place = , citizenship = , field = Operations researchAlgorithms ComplexityMachine learning Game theory , workplaces = IBM Research ...
studied the 1-center problem extensively and published on it at least five times in the 1980s. In 1983, he proposed a "
prune and search Prune and search is a method of solving optimization problems suggested by Nimrod Megiddo in 1983.Nimrod Megiddo (1983) Linear-time algorithms for linear programming in R3 and related problems. SIAM J. Comput., 12:759–776 The basic idea of t ...
" algorithm which finds the optimum bounding sphere and runs in linear time if the dimension is fixed as a constant. When dimension is taken into account, the execution time complexity is O((d+1)(d+1)!n), impractical for high-dimensional applications. Megiddo used this linear programming approach in linear time when dimension is fixed. In 1991,
Emo Welzl Emmerich (Emo) Welzl (born 4 August 1958 in Linz, Austria)Curriculum vitae
retrieved 2012-02-11.
is ...
proposed a much simpler
randomized algorithm A randomized algorithm is an algorithm that employs a degree of randomness as part of its logic or procedure. The algorithm typically uses uniformly random bits as an auxiliary input to guide its behavior, in the hope of achieving good performan ...
based in the extension of a randomized
linear programming Linear programming (LP), also called linear optimization, is a method to achieve the best outcome (such as maximum profit or lowest cost) in a mathematical model whose requirements are represented by linear function#As a polynomial function, li ...
algorithm by
Raimund Seidel Raimund G. Seidel is a German and Austrian theoretical computer scientist and an expert in computational geometry. Seidel was born in Graz, Austria, and studied with Hermann Maurer at the Graz University of Technology. He received his M. Sc. in 19 ...
. It runs in expected linear time. The paper provides experimental results demonstrating its practicality in higher dimensions. The open-source
Computational Geometry Algorithms Library The Computational Geometry Algorithms Library (CGAL) is an open source software library of computational geometry algorithms. While primarily written in C++, Scilab bindings and bindings generated with SWIG (supporting Python and Java for now) ...
(CGAL) contains an implementation of this algorithm.


Ritter's bounding sphere

In 1990, Jack Ritter proposed a simple algorithm to find a non-minimal bounding sphere. It is widely used in various applications for its simplicity. The algorithm works in this way: #Pick a point x from P, search a point y in P, which has the largest distance from x; #Search a point z in P, which has the largest distance from y. Set up an initial ball B, with its centre as the midpoint of y and z, the radius as half of the distance between y and z; #If all points in P are within ball B, then we get a bounding sphere. Otherwise, let p be a point outside the ball, construct a new ball covering both point p and previous ball. Repeat this step until all points are covered. Ritter's algorithm runs in time O(nd) on inputs consisting of n points in d-dimensional space, which makes it very efficient. However it gives only a coarse result which is usually 5% to 20% larger than the optimum.


Core-set based approximation

Bădoiu et al. presented a 1+\varepsilon approximation to the bounding sphere problem, where a 1+\varepsilon approximation means that the constructed sphere has radius at most (1+\varepsilon)r, where r is the smallest possible radius of a bounding sphere. A
coreset In computational geometry, a coreset is a small set of points that approximates the shape of a larger point set, in the sense that applying some geometric measure to the two sets (such as their minimum bounding box volume Volume is a measure of ...
is a small subset, that a 1+\varepsilon expansion of the solution on the subset is a bounding sphere of the whole set. The coreset is constructed incrementally by adding the farthest point into the set in each iteration. Kumar et al. improved this approximation algorithm so that it runs in time O(\frac+ \frac\log).


Fischer's exact solver

Fischer et al. (2003) proposed an exact solver, though the algorithm does not have a polynomial running time in the worst case. The algorithm is purely combinatorial and implements a pivoting scheme similar to the
simplex method In mathematical optimization, Dantzig's simplex algorithm (or simplex method) is a popular algorithm for linear programming. The name of the algorithm is derived from the concept of a simplex and was suggested by T. S. Motzkin. Simplices are ...
for
linear programming Linear programming (LP), also called linear optimization, is a method to achieve the best outcome (such as maximum profit or lowest cost) in a mathematical model whose requirements are represented by linear function#As a polynomial function, li ...
, used earlier in some heuristics. It starts with a large sphere that covers all points and gradually shrinks it until it cannot be shrunk further. The algorithm features correct termination rules in cases of degeneracies, overlooked by prior authors; and efficient handling of partial solutions, which produces a major speed-up. The authors verified that the algorithm is efficient in practice in low and moderately low (up to 10,000) dimensions and claim it does not exhibit numerical stability problems in its floating-point operations. A C++ implementation of the algorithm is available as an open-source project.miniball open-source project
/ref>


Extremal points optimal sphere

proposed the "extremal points optimal sphere" method with controllable speed to accuracy approximation to solve the bounding sphere problem. This method works by taking a set of s direction vectors and projecting all points onto each vector in s; s serves as a speed-accuracy trade-off variable. An exact solver is applied to the 2s extremal points of these projections. The algorithm then iterates over the remaining points, if any, growing the sphere if necessary. For large n this method is orders of magnitude faster than exact methods, while giving comparable results. It has a worst case time of O(sn).


See also

*
Bounding volume In computer graphics and computational geometry, a bounding volume for a set of objects is a closed volume that completely contains the union of the objects in the set. Bounding volumes are used to improve the efficiency of geometrical operatio ...
*
Circumscribed sphere In geometry, a circumscribed sphere of a polyhedron is a sphere that contains the polyhedron and touches each of the polyhedron's vertices. The word circumsphere is sometimes used to mean the same thing, by analogy with the term ''circumcircle' ...
,
circumscribed circle In geometry, the circumscribed circle or circumcircle of a polygon is a circle that passes through all the vertices of the polygon. The center of this circle is called the circumcenter and its radius is called the circumradius. Not every polyg ...


References

{{reflist, refs= {{citation , last1 = Bādoiu , first1 = Mihai , last2 = Har-Peled , first2 = Sariel , author2-link = Sariel Har-Peled , last3 = Indyk , first3 = Piotr , author3-link = Piotr Indyk , contribution = Approximate clustering via core-sets , contribution-url = https://www.cs.duke.edu/courses/spring07/cps296.2/papers/badoiu02approximate.pdf , doi = 10.1145/509907.509947 , mr = 2121149 , pages = 250–257 , publisher = ACM , location = New York, NY, US , title = Proceedings of the Thirty-Fourth Annual ACM Symposium on Theory of Computing , year = 2002, s2cid = 5409535 {{citation , last = Larsson , first = Thomas , contribution = Fast and tight fitting bounding spheres , contribution-url = https://www.ep.liu.se/ecp/article.asp?issue=034&article=9 , series = Linköping Electronic Conference Proceedings , publisher = Linköping University , location = Linköping, Sweden , title = SIGRAD 2008: The Annual SIGRAD Conference, Special Theme: Interaction, November 27-28, 2008, Stockholm, Sweden , volume = 34 , year = 2008 {{citation , last1 = Fischer , first1 = Kaspar , last2 = Gärtner , first2 = Bernd , last3 = Kutz , first3 = Martin , editor1-last = Battista , editor1-first = Giuseppe Di , editor2-last = Zwick , editor2-first = Uri , contribution = Fast smallest-enclosing-ball computation in high dimensions , contribution-url = https://people.inf.ethz.ch/gaertner/subdir/texts/own_work/seb.pdf , doi = 10.1007/978-3-540-39658-1_57 , pages = 630–641 , publisher = Springer, Berlin , series = Lecture Notes in Computer Science , title = Algorithms: ESA 2003, 11th Annual European Symposium, Budapest, Hungary, September 16-19, 2003, Proceedings , volume = 2832 , year = 2003, url = http://www.mpi-inf.mpg.de/~mkutz/pubs/FiGaeKu_SmallEnclBalls.pdf {{citation , last1 = Kumar , first1 = Piyush , last2 = Mitchell , first2 = Joseph S. B. , author2-link = Joseph S. B. Mitchell , last3 = Yıldırım , first3 = E. Alper , editor-last = Ladner , editor-first = Richard E. , contribution = Computing core-sets and approximate smallest enclosing hyperspheres in high dimensions , pages = 45–55 , publisher = SIAM , location = Philadelphia, PA, US , title = Proceedings of the Fifth Workshop on Algorithm Engineering and Experiments, Baltimore, MD, USA, January 11, 2003 , year = 2003 {{citation , last = Ritter , first = Jack , editor-last = Glassner , editor-first = Andrew S. , contribution = An efficient bounding sphere , isbn = 0-12-286166-3 , location = San Diego, CA, US , pages = 301–303 , publisher = Academic Press Professional, Inc. , title = Graphics Gems , year = 1990 {{citation , last = Welzl , first = Emo , authorlink = Emo Welzl , editor-last = Maurer , editor-first = Hermann , contribution = Smallest enclosing disks (balls and ellipsoids) , doi = 10.1007/BFb0038202 , mr = 1254721 , pages = 359–370 , publisher = Springer , location = Berlin, Germany , series = Lecture Notes in Computer Science , title = New Results and New Trends in Computer Science: Graz, Austria, June 20–21, 1991, Proceedings , volume = 555 , year = 1991, url = https://hal.archives-ouvertes.fr/hal-01621504/file/articleDGCI2017-RepresentationOfDigitalNoisyShapes.pdf


External links


Smallest Enclosing Circle Problem
– describes several algorithms for enclosing a point set, including Megiddo's linear-time algorithm Geometric algorithms Spheres