5.2 Center Selection 中心选址

Input.  Set of n sites s1, …, sn and integer k > 0.

【输入:n个地址:s1.....sn 和正整数k(k为需要选出多少个中心)。】

Center selectionproblem.  Select k centers C so that maximum distance from a site to nearest center is minimized.

【中心选址问题:选择k个中心,让离中心最远的地址s距离最小】


Notation. 

dist(x, y)    = distance between x and y.
dist(si, C) = min c Î C dist(si, c)  = distance from si to closest center.
r(C) = maxi dist(si, C) = smallest covering radius.
【符号】
【dist(x, y) :x和y之间的距离。】
【dist(si, C):地址到中心的距离 】
【r(C) = maxi dist(si, C) :最小覆盖半径】

Goal.  Find set of centers C that minimizes r(C), subject to |C| = k.

【目标:找到一个中心C是的r(C)最小。约束条件:中心的数量等于k】

Distance function properties.

dist(x, x) = 0  (identity)
dist(x, y) = dist(y, x)  (symmetry)
dist(x, y) <= dist(x, z) + dist(z, y)  (triangle inequality)
【距离函数的性质】
【同一性】
【对称性】
【三角不等式】

Center Selection Example
【中心选址例子】

Ex:  each site is a point in the plane, a center can be any point in the plane, dist(x,y) = Euclidean distance.

【例子:对于每个在平面上的点,寻找几个中心,每个中心可以在平面上的任何一个地方,采用欧式距离。】

Remark:  search can be infinite!

【注意:查找时间有可能是无限的!】


Greedy Algorithm:  A False Start

【贪心算法:一个错误的开始。】(不一定所有的贪心策略都是正确的)

Greedy algorithm.  Put the first center at the best possible location for a single center, and then keep adding centers so as to reduce the covering radius each time by as much as possible. 

【贪心算法:选择所有地址的中心放置一个点,然后在剩下的点在各取中心,这样得到的解有可能很糟糕。】


于是我们改变贪心策略。

Greedy algorithm.  Repeatedly choose the next center to be the site farthest from any existing center.

【贪心算法:(中心C在地址里头选取)开始时我们任意的选取一个地址作为中心,接着选择离第一个中心最远的那个地址作为第二个中心,如此的重复进行。】


输入:选址数k,地址数n,地址数组s[n]

初始化:C为空集

重复K次:选择离中心集合C最远的地址作为中心,把它加入到C集合中。

Center Selection:  Analysis of Greedy Algorithm

【分析基于贪心算法的中心选址问题】

Theorem.  Let C* be an optimal set of centers. Then r(C) <= 2 r(C*).

【定理:贪心解是二倍最优解】

Pf.  (by  contradiction)  Assume r(C*) < ½ r(C).

【证明:反证法,假设 r(C*) < ½ r(C)


【对于每个近似解ci,想象它有一个半径为1/2r(C)的圆。】

【每一个ci的那个圆中,总有一个最优解ci*(根据反证法假设,仔细想象,因为最优解ci*肯定要包含一个地址,现在这个地址ci有一个半径比最优解ci*半径还大的一个圆,所以说,最优解ci*一定会被包含在ci的那个圆中)。让ci和ci*组成一个配对。】

【对于任意一个离最优解ci*最近的一个s】

【根据三角不等式得出结论】

(其实意思很简单,主要是利用三角不等式)


(注意到右下角的那个圆和三角形s,ci,ci*)

(我们假设某一个s,它肯定会靠近一个最优解ci*。这个ci*肯定会和一个近似解ci配对)

(由于dist(s,ci*)和dist(ci,ci*)肯定小于最优解r(C*),所以根据三角不等式,dist(s,ci)也就是近似解,一定会小于2r(C*))



  • 6
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值