300 likes | 426 Views
This report discusses a linear-time algorithm for solving the rectilinear 3-center problem, which involves locating three facilities to minimize the distance from demand points in a rectilinear metric. The author, Michael Hoffmann, provides insights into the problem's statement, previous works, and a detailed examination of both one-dimensional and planar cases of the algorithm. Experimental results demonstrate its effectiveness, along with additional heuristics to improve its performance. This work contributes significantly to computational geometry and has been integrated into CGAL.
E N D
A simple linear algorithm for computing rectilinear 3-centers Michael Hoffmann Computational Geometry 31(2005)150-165 Reporter: Lincong Fang Nov 3,2005
Outline • About the author • Problem statement • Previous works • One-dimensional 3-centers • Planar rectilinear 3-centers • Experimental results • Conclusions
About the author • Institute for Theoretical Computer Science, ETH Zürich, Switzerland. • Senior researcher. • Scientific interests: algorithmsand data structures, in particular from computational geometry, software design and combinatorial game theory.
Problem statement • K-center problem: given demand points, locate k facilities, such that for any point the nearest facility is as close as possible. • Rectilinear k-center problem: distance between points is measured according to the rectilinear (l1or l∞) metric.
Problem statement k-radius: k: positive integer. : congruent closed axis parallel squares of side length 2 . k=3
Previous works • Z.Drezner, On the rectangular p-center problem, gave a linear time algorithm for k=2. • M.Sharir, E.Welzl, Rectilinear and polygonal p-piercing and p-center problems, gave a linear time algorithm for k≤3. • M.Blum, R.W.Floyd, V.Pratt, R.L.Rivest, R.E.Tarjan, Time bounds for selection.
One-dimensional 3-centers Left endpoint of Il is the smallest value of P. Right endpoint of Iris the largest value of P.
One-dimensional 3-centers Given The one-dimensional 3-center decision problem can be solved in linear time.
One-dimensional 3-centers Knowing the smallest feasible radius, the optimal radius can be solved in linear time. :the smallest feasible radius from :the predecessor of
One-dimensional 3-centers Algorithm 1 Input: of n real numbers. Output: 3-covering for . • While • Compute and
One-dimensional 3-centers • Test feasibility of • If is feasible • If is infeasible • Solve the problem brute-force.
One-dimensional 3-centers • The one-dimensional 3-center problem can be solved in linear time. • Complexity:
Planar rectilinear 3-centers Type 1: Type 2:
Planar rectilinear 3-centers Type 2 can be computed in linear time: Then it can be compute just like one-dimension.
Planar rectilinear 3-centers Type 1
Planar rectilinear 3-centers Algorithm 2
Planar rectilinear 3-centers Type 1 can be computed in linear time.
Experimental results Points from three clusters Points from the unit square
Experimental results Points from three clusters Points from the unit square
Conclusions • A new linear time algorithm for the rectilinear 3-center problem. • Two heuristics to improve its performance in practice. • The implementation appeared as part of the CGAL since Release2.1(January 2000).