Metric k center

10
Metric K-Center Ken Liu CoreTech Trend Micro Inc.

Transcript of Metric k center

Page 1: Metric k center

Metric K-Center

Ken Liu

CoreTech

Trend Micro Inc.

Page 2: Metric k center

Outline

• Preliminary

• NP-hard

• Unapproximability

• Gonzalez Algorithm

• Approximation ratio

• Conclusion

Page 3: Metric k center

Preliminary

• A metric space is a pair (M, d) where M is a set of nodes and d is a distance function on M such that:– d(x, y) >=0 (non-negative),– d(x, y) = 0 iff x=y (identity of indiscernibles),– d(x, y) = d(y, x) (symmetry) and– d(x, y) <= d(x, z) + d(y, z) (triangle inequality)

• Notation overloading– Given x ∈ M and Y ⊆ M, let d(x, Y) = min {d(x, y): y ∈ Y}

Page 4: Metric k center

Metric K-Center Problem

• Given a metric space (M, d), find k center C = {c1, c2, ..., ck} to minimize the radius– max { d(x, C): u ∈ M}

• Geometric view– Voronoi diagram– Each node is covered by some center

c1

c2

c3

c4

Page 5: Metric k center

NP-hard• Dominating set

– Given a graph G=(V, E), a k-dominating set of size k is a set C = {c1, c2, ..., ck} ⊆ V such that each node v ∈ V is adjacet to some node in C.

– To determine if a graph has a k-dominating set is known to be NP-hard • Theorem: Metrick K-center is NP-hard Proof:

– Given G = (V, E), let d(x, y) = 2 if (x, y) ∉ E and d(x, y) = 1 otherwise.– (V, d) is a metric space.– G has a k-dominating set => radius of optimal k centers for (V, d) is 1– G has no k-dominating set => radius of optimal k centers for (V, d) is 2– G = (V, E) has a k-dominating radius of optimal k centers for (V, d) is 1

Page 6: Metric k center

Unapproximibility

• Theorem: Assuming NP≠P, Metrick K-center cannot be approximated within 2.

Proof: – Given G = (V, E), let d(x, y) = 2 if (x, y) ∉ E and d(x, y) = 1 otherwise.– G has a k-dominating set => radius of optimal k centers for (V, d) is 1– G has no k-dominating set => radius of optimal k centers for (V, d) is 2– Assume for contradiction that we have a polynomial (2 –ε)-

approximation algorithm called A– G has a k-dominating set A(V, d) < 2 - ε– So we have a polynomial algorithm for the k-dominating set, -><-

Page 7: Metric k center

Gonzalez’s Algorithm (1985)

• Input: a metric space (M, d) and a positive integer

• Output: a set of k centers1. C = {}

2. c1 := a randomly chosen node in M

3. C.add(c1)

4. for i in {2, ..., k}:

ci := the node c ∈ M – C with max d(c, C)

C.add(ci)

5. return C

Page 8: Metric k center

Approximation ratio

• Theorem: Gonzalez’s algorithm has an approximation ratio of 2• proof:

– Let C = {c1, c2, ..., ck} be the output of Gonzalez algorithm and r be its radius.

– Let ck+1 be the farest node from C. Note that• d(ci, cj) >= r for all i ≠ j

– Let C’ = {c’1, c’2, ..., c’k} be the optimal solution and r* be its radius– By Pigenhole theorem we have two nodes ci, cj being covered by the

same center c’ in C’ – r <= d(ci, cj) <= d(ci, c’) + d(cj, c’) <= d(ci, C’) + d(cj, C’) <= 2r*

c’

ci

cj

<=r*

>=r

Page 9: Metric k center

Conclusion

• Gonzalez’s algorithm is simple yet optimal

Page 10: Metric k center

Conclusion

• Gonzalez’s algorithm is simple yet optimal