The optimum radius is a distance from some city to a selected city, so it belongs to
Sort the distinct values of , try them in increasing order, and run part (i)'s greedy procedure with each trial value . Declare a trial successful when all cities are covered using at most centers; stop a failed trial as soon as a st center would be selected. The trial must succeed by part (i), so the first successful value satisfies . Its output has
There are candidate distances and work per trial, giving a polynomial-time algorithm with running time , plus sorting. Success at need not mean that radius itself is feasible; only the radius- guarantee is used.
A faster alternative is the farthest-first traversal. Choose any first center, then repeatedly choose a city farthest from its nearest current center until have been chosen. Let be the resulting radius. If , adjoin a city attaining that distance. At every earlier selection, the maximum distance to the then-current center set was at least , so all pairs among these cities are at distance at least . Two belong to the same optimal radius- closed ball, giving by the triangle inequality. If , the guarantee is immediate. Maintaining nearest-center distances gives distance evaluations without knowing .

Articles by others on the same topic (0)

There are currently no matching articles.