Smallest circle problem

Smallest circle problem
Smallest circle problem.svg

The smallest circle problem or minimum covering circle problem is a mathematical problem of computing the smallest circle that contains all of a given set of points in the Euclidean plane. The corresponding problem in n-dimensional space, the smallest bounding sphere problem, is to compute the smallest n-sphere that contains all of a given set of points.[1] The smallest circle problem was initially proposed by the English mathematician James Joseph Sylvester in 1857.[2]

The smallest circle problem in the plane is an example of a facility location problem in which the location of a new facility must be chosen to provide service to a number of customers, minimizing the farthest distance that any customer must travel to reach the new facility.[3]

Contents

Characterization

Most of the geometric approaches for the problem look for points that lie on the boundary of the minimum circle and are based on the following simple facts:

  • The minimum covering circle is unique.
  • The minimum covering circle of a set S can be determined by at most three points in S which lie on the boundary of the circle. If it is determined by only two points, then the line segment joining those two points must be a diameter of the minimum circle. If it is determined by three points, then the triangle consisting of those three points is not obtuse.

Linear-time solutions

As Megiddo[4] showed, the minimum enclosing circle can be found in linear time, and the same linear time bound also applies to the smallest enclosing sphere in Euclidean spaces of any constant dimension.

Welzl [5] proposed a simple randomized algorithm for the minimum covering circle problem that runs in expected O(N) time, based on a linear programming algorithm of Raimund Seidel.

The algorithm is recursive, and takes as arguments two sets of points S and Q; it computes the smallest enclosing circle of the union of S and Q, as long as every point of Q is one of the boundary points of the eventual smallest enclosing circle. Thus, the original smallest enclosing circle problem can be solved by calling the algorithm with S equal to the set of points to be enclosed and Q equal to the empty set; as the algorithm calls itself recursively, it will enlarge the set Q passed into the recursive calls until it includes all the boundary points of the circle.

The algorithm processes the points of S in a random order, maintaining as it does the set P of processed points and the smallest circle that encloses the union of P and Q. At each step, it tests whether the next point r to be processed belongs to this circle; if it does not, the algorithm replaces the enclosing circle by the result of a recursive call of the algorithm on the sets P and Q+r. Whether the circle was replaced or not, r is then included in the set P. Processing each point, therefore, consists of testing in constant time whether the point belongs to a single circle and possibly performing a recursive call to the algorithm. It can be shown that the ith point to be processed has probability O(1 / i) of generating a recursive call, and therefore that the overall time is linear.

Other algorithms

Prior to Megiddo's result showing that the smallest circle problem may be solved in linear time, several effective algorithms of higher (worst case) complexity appeared in the literature. A naive algorithm solves the problem in time O(n4) by testing the circles determined by all pairs and triples of points.

  • An algorithm of Chrystal and Peirce applies a local optimization strategy that maintains two points on the boundary of an enclosing circle and repeatedly shrinks the circle, replacing the pair of boundary points, until an optimal circle is found. Chakraborty and Chaudhuri[6] propose a linear-time method for selecting a suitable initial circle and a pair of boundary points on that circle. Each step of the algorithm includes as one of the two boundary points a new vertex of the convex hull, so if the hull has h vertices this method can be implemented to run in time O(nh).
  • Elzinga and Hearn[7] described an algorithm which maintains a covering circle for a subset of the points. At each step, a point not covered by the current sphere is used to find a larger sphere that covers a new subset of points, including the point found. Although its worst case running time is O(h3n), the authors report that it ran in linear time in their experiments. The complexity of the method has been analyzed by Drezner and Shelah.[8] Both Fortran and C codes are available, see the ORSEP article.[9]
  • The smallest sphere problem can be formulated as a quadratic program[10] defined by a system of linear constraints with a convex quadratic objective function. Therefore, any feasible direction algorithm can give the solution of the problem.[11] Hearn and Vijay[12] proved that the feasible direction approach chosen by Jacobsen is equivalent to the Chrystal–Peirce algorithm.
  • The dual to this quadratic program may also be formulated explicitly;[13] an algorithm of Lawson[14] can be described in this way as a primal dual algorithm.[15]
  • Shamos and Hoey[16] proposed an O(n log n) time algorithm for the problem based on the observation that the center of the smallest enclosing circle must be a vertex of the farthest-point Voronoi diagram of the input point set.

Weighted variants of the problem

The weighted version of the minimum covering circle problem takes as input a set of points in a Euclidean space, each with weights; the goal is to find a single point that minimizes the maximum weighted distance to any point. The original minimum covering circle problem can be recovered by setting all weights to the same number. As with the unweighted problem, the weighted problem may be solved in linear time in any space of bounded dimension, using approaches closely related to bounded dimension linear programming algorithms, although slower algorithms are again frequent in the literature.[17][18][19] The weighted version of the Elzinga-Hearn algorithm is available via the ORSEP article mentioned above.

References

  1. ^ J. Elzinga and D.W. Hearn, The Minimum Covering Sphere Problem, Management Science, Vol. 19, 96–104 (1972)
  2. ^ J.J. Sylvester, A Question in the Geometry of Situation, Quarterly Journal of Mathemaitcs, Vol. 1, p. 79 (1857)
  3. ^ Francis, R.L., L. F. McGinnis and J.A. White, Facility Layout and Location: An Analytical Approach, Second edition, Prentice–Hall, Inc., Englewood Cliffs, N.J. (1992)
  4. ^ N. Megiddo, Linear-Time Algorithms for Linear Programming in R3 and Related Problems, SIAM Journal on Computing, Vol. 12, 759–776 (1983)
  5. ^ E.Welzl, Smallest Enclosing Disks (Balls and Ellipsoids), in H. Maurer (Ed.), New Results and New Trends in Computer Science, Lecture Notes in Computer Science, Vol. 555, Springer-Verlag, 359–37 (1991)
  6. ^ R.K. Chakraborty and P.K. Chaudhuri, Note on Geometrical Solutions for Some Minimax Location Problems, Transportation Science, Vol. 15, 164–166 (1981)
  7. ^ J. Elzinga and D.W. Hearn, Geometrical Solutions for Some Minimax Location Problems,Transportation Science Vol. 6, 379–394 (1972)
  8. ^ Z. Drezner and S. Shelah, On the Complexity of the Elzinga-Hearn Algorithm for the 1-Center Problem, Mathematics of Operations Research, Vol. 12, No. 2, 255–261, (1987)
  9. ^ D. W. Hearn, J. Vijay, S. Nickel, Codes of Geometrical Algorithms for the (Weighted) Minimum Circle Problem, European Journal of Operational Research 80, 236–237 (1995)
  10. ^ J. Elzinga and D.W. Hearn, The Minimum Covering Sphere Problem, Management Science, Vol. 19, 96–104 (1972)
  11. ^ S.K. Jacobsen, An Algorithm for the Minimax Weber Problem, European Journal of Operational Research, Vol. 6, 144–148 (1981)
  12. ^ D.W. Hearn and J. Vijay, Efficient Algorithms for the (Weighted) Minimum Circle Problem, Operations Research, Vol. 30, No. 4, 777–795 (1982)
  13. ^ J. Elzinga, D.W. Hearn and W.D. Randolph, Minimax Multifacility Location with Euclidean Distances, Transportation Science, Vol. 10, 321–336 (1976)
  14. ^ C.L. Lawson, The Smallest Covering Cone or Sphere, SIAM Review, 415–417 (1965)
  15. ^ D.W. Hearn and J. Vijay, Efficient Algorithms for the (Weighted) Minimum Circle Problem, Operations Research, Vol. 30, No. 4, 777–795 (1982)
  16. ^ M.I. Shamos and D. Hoey, Closest Point Problems, in Proceedings of 16 th Annual IEEE Symposium on Foundations of Computer Science, 151{162 (1975)
  17. ^ D.W. Hearn and J. Vijay, Efficient Algorithms for the (Weighted) Minimum Circle Problem, Operations Research, Vol. 30, No. 4, 777–795 (1982)
  18. ^ N. Megiddo, The Weighted Euclidean 1-Center Problem, Mathematics of Operations Research, Vol. 8, 498–504 (1983)
  19. ^ N. Megiddo and E. Zemel, An O(n log n) Randomizing Algorithm for the Weighted Euclidean 1-Center Problem, Journal of Algorithms, VOl. 7, 358–368 (1986)

External links


Wikimedia Foundation. 2010.

Игры ⚽ Поможем написать реферат

Look at other dictionaries:

  • List of circle topics — This list of circle topics includes things related to the geometric shape, either abstractly, as in idealizations studied by geometers, or concretely in physical space. It does not include metaphors like inner circle or circular reasoning in… …   Wikipedia

  • Circle packing in an isosceles right triangle — Circle packing in a right isosceles triangle is a packing problem where the objective is to pack n unit circles into the smallest possible isosceles right triangle. Minimum solutions (lengths shown are length of leg) are shown in the table… …   Wikipedia

  • 1-center problem — The 1 center problem or minimax 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 set of n demand… …   Wikipedia

  • Circle packing in a circle — is a two dimensional packing problem with the objective of packing unit circles into the smallest possible larger circle. Minimum solutions:[1] Number of unit circles Enclosing circle radius Density Optimality Diagram 1 1 1.0000 Trivially optimal …   Wikipedia

  • Circle packing in an equilateral triangle — is a packing problem in discrete mathematics where the objective is to pack n unit circles into the smallest possible equilateral triangle. Optimal solutions are known for n < 13 and for any triangular number of circles, and… …   Wikipedia

  • Circle packing in a square — is a packing problem in recreational mathematics, where the aim is to pack n unit circles into the smallest possible square; or, equivalently, to arrange n points in a unit square for the greatest minimal separation, dn, between points.[1] To… …   Wikipedia

  • Minimum bounding circle — may refer to: Bounding sphere Smallest circle problem This disambiguation page lists articles associated with the same title. If an internal link led you here, you may wish to change …   Wikipedia

  • Problem of Apollonius — In Euclidean plane geometry, Apollonius problem is to construct circles that are tangent to three given circles in a plane (Figure 1); two circles are tangent if they touch at a single point. Apollonius of Perga (ca. 262 BC ndash; ca. 190 BC)… …   Wikipedia

  • Circle packing — This article describes the packing of circles on surfaces. For the related article on circle packing with a prescribed intersection graph, please see the circle packing theorem. The most efficient way to pack different sized circles together is… …   Wikipedia

  • Packing problem — Part of a series on Puzzles …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”