给定平面上的地点集合 $$S=\{ s_1, s_2, \cdots, s_n\}$$,我们要找有 $$k$$ 个中心的集合 $
给定平面上的地点集合 $$S=\{ s_1, s_2, \cdots, s_n\}$$,我们要找有 $$k$$ 个中心的集合 $$C=\{ c_1, c_2, \cdots, c_k\}$$,使得任一地点到距其最近的中心的距离的最大值最小。这里 $$c_i$$ 可以是平面上的任意点。
一种局部搜索算法是:在平面上任意选取 $$k$$ 个点作为中心,然后
- (1) 将 $$S$$ 分解为 $$k$$ 个集合,其中 $$S_i$$ 表示将 $$c_i$$ 作为最近中心点的地点的集合;
- (2) 对每一个 $$S_i$$,计算其中所有地点的中心位置,作为新的中心点。
若第(1)、(2)步使得覆盖半径严格减小,就进行下一轮循环,否则算法停止。
当上述局部搜索算法终止时,得到的解的覆盖半径最多是最优覆盖半径的2倍。
~@[](4)答案:FALSE