P-Center & The Power of Graphs For Geometric Optimizations course

P-Center & The Power of Graphs
A part of the facility location problem set
By Kiril Yershov and Alla Segal
For Geometric Optimizations course
Fall 2010
The P-Center problem

Given n cities and the distances
between all pairs of cities, we aim to
choose p cities as centers so that the
furthest distance of a city from a
center is minimized.

A problem from the facility location
problems set.
What is facility locating?
Facility provides some
kind of service.
‘GOOD’
SERVICE
Client needs this
kind of service.
Location problems in most general
form can be stated as follows:
a set of clients originates demands for some kind
of goods or services.
 the demands of the customers must be supplied
by one or more facilities.
 the decision process must establish where to
locate the facilities.
 issues like cost reduction, demand capture,
equitable service supply, fast response time etc
drive the selection of facility placement.

The basic elements of location models:
a universe, U, from which a set C of client input
positions is selected,
 a distance metric, d: U x U → R+, defined over
the universe R+,
 an integer, p ≥ 1, denoting the number of
facilities to be located, and
 an optimization function g that takes as input C a
set of client positions and p facility positions and
returns a function of their distances as measured
by the metric d.

Problem statement
• Select a set F of p facility positions in
universe U that minimizes g(F,C).
Models of the universe of clients
and facilities
• Continuous space
Universe is defined as a region, such that clients
and facilities may be placed anywhere within the
continuum, and the number of possible locations
is uncountably infinite.
Models of the universe of clients
and facilities
• Discrete space
Universe is defined by a discrete set of
predefined positions.
• Network space
Universe is defined by an undirected
weighted graph. Client positions are given
by the vertices. Facilities may be located
anywhere on the graph.
Where should the radio tower be located?
• Tower may be positioned anywhere –
(continuous)
• Tower may be positioned in some available slots –
(discrete)
• Tower may be located on the roadside –
(network)
Distance metric
Distance metric between two elements of the
universe further differentiates between specific
problems
• Euclidean, Manhattan, etc.
• Network distance
P-Centers:
Optimization function is maximum
The objective function is the most significant
characterization of a facility location problem.
• p-center problem
Given a universe U, a set of points C, a metric
d, and a positive integer p, a p-center of C is a set of
p points F of the universe U that minimizes
maxjεC {miniεF dij}.
p-center

P=2
p-center

P=2
Applications of p-center (1/2)

Find appropriate location of branch offices.
◦ It could be cost-effective if the branch offices place
as close as possible to any offices.
Euclidean p-center
3-center
Reminder
NP – “nondeterministic polynomial time”
 NP-Problem is a problem that its possible
solution can be verified in polynomial
time.
 NP-Hard Problem is at least as hard as the
hardest problems in NP.
 NP-Complete problem is both NP and NPHard.

Summary of known complexities
Time complexities of algorithmic solutions to the Euclidean pcenter problem
• Drezner 1984, Hoffmann 2005 (arbitrary p and d = 1)
• Megiddo 1983 (p=1, d=2), Linear programming.
• Agarwal et al 1993, Chazelle et al. 1995 (p = 1 and d fixed)
• Chan 1999 (p=2, d=2)
• Agarwal and Sharir 1998 (p=2, d arbitrary)
• Agarwal and Procopuic 1998 (p fixed, d arbitrary)
P-Center is NP-Hard

Kariv and Hakimi proved in ‘79 that
p-center problem is NP-Hard.

We will show a stronger claim: P-center
best possible approximation is of factor 2.
Approximation
PTAS: a C-approximation, where C=1+e
for any e>0
 We saw some problems with PTAS.


Does every problem has a PTAS?
Best Possible Approximation
A polynomial c-approximation algorithm
is called “Best Possible” if there is no
algorithm with a better approximation
value.
 Formally: c-approximation is best possible
if the problem of approximation within
c-e is NP-Complete for any e>0, but that
limit can be reached in polynomial time.

Best Possible Approximation

Such best possible results were found
only for bottleneck problems.
Bottleneck Problems
The solution has some value that needs
to be minimized or maximized.
 The value of the solution is the weight of
one of the edges of the graph.
 We can add one smallest edge at a time
and examine the resulting graph for the
required condition

P-Center: Factor 2 is best possible

LEMMA: The problem of approximating
P-Center (with triangle inequality) within
a factor of (2-e) is NP-Complete for any
e>0.

Proof: By reduction from the dominating
set problem.
Factor 2 is best possible - Proof

Dominating set problem:
◦ To determine whether in a given graph there
is a set of vertices DS of size ≤ P that
“dominates” all vertices, i.e. such that all
vertices are in DS or adjacent to DS.
◦ It is well known and proven that Dominating
Set is NP-Hard.
Factor 2 is best possible - Proof

Reduction:
◦ Given a Dominating set problem G=(V,E), we
construct a complete graph with the following
weights:
 w(e) = 1 if e is from E
 w(e) = 2 if e is not from E
◦ In this complete graph the existence of
p-center is equivalent to the existence of a
dominating set of size ≤ p in G.
INTERMISSION
Metric p-center

Input: G=(V,E) complete
undirected graph with edge
costs satisfying the triangle
inequality
u

For any set S  V and a vertex v,
define connect(v,S): cost of
cheapest edge from v to a
vertex in S
v
5
3
3
5
x
4
w
Cost Function Satisfies

Output: S  V with |S| = p that
minimizes max_v{connect(v,S)}
Triangle Inequality
u , v, w  V
c(u , w)  c(u , v)  c(v, w)
A 2-approximation algorithm

The value of the solution is the weight of one of
the edges of the graph.

Sort the edges in nondecreasing cost
e1, e2, …, em
Approach
Let Gi be the
subgraph
obtained by deleting all6
edges that are costlier
than ei from G
4
5
5
4
5
G
6
4
9
8
4
7
6
6 8
4
5
4
6 8
9
Dominating set
a
Input
a
b
a
b
c
b
c
d
e
d
e
c
a
d
e
a
b
c
b
c
d
e
d
e
Equivalence between…

p-center

◦ Any weight of edge
between a vertex and
some chosen vertex is
not more than OPT.
Dominating set of Gi
◦ Any vertex is
connected to some
chosen vertex by a
edge with weight less
or equal than OPT.
cost (ei*) = OPT.
a
4
7
b
4
5
8
b
c
6
5
4
d
9
8
6
e
a
c
5
4
d
e
Crucial observation
If OPT = cost(ei) for some i
 Then

◦ Gi must have a dominating set of size p
Of course, we don’t know how to
compute dominating sets optimally
 But we can compute a lower bound on
OPT and utilize this lower bound to test
Gi

Power of Graphs
A major technique for finding best possible
approximations for bottleneck problems.
 Given a graph G=(V,E)
 the square graph G2=(V,E2)
 E2 is the set of all edges between vertices
that have a path of length 1 or 2 between
them.
 Weight is set accordingly.
 Gt is similar with edges between vertices
that have a path of length up to t.

Lemma
Given a graph H, let H^2 denote a graph
containing an edge (u,v) whenever H has
a path of length 2 between u and v
 Given a graph H, let I be an independent
set in H^2. Then

|I|  dom(H) = size of the minimum dominating
set in H
Square of a graph
H
H2
H’
H’2
H’’
H’’2
Proof
Let D be the dominating set in H
 H contains |D| stars
 Each of these stars will
be a clique in H^2
 Any independent set can pick at most one
vertex from each clique

H
D
star
clique
p-center algorithm
Construct G1^2, G2^2, …, Gm^2
 Compute a maximal independent set Mi
for each Gi^2
 Find the smallest index i such that
|Mi|  p
 Call this index j
 Return Mj

Algorithm
5





Input: graph G, pos.
int. p.
1. Construct G12, …,
Gm2.
2. Find a maximal
independent set Mi
for each Gi2.
3. Find the smallest
index j s.t. |Mi| ≦ p.
4. Return Mj. G
6
4
4
5
6
5
9
8
4
7
6
5
4
7
5
6 8
7
4
5
4
9
6 8
7
4
Algorithm





Input: graph G, pos.
int. p.
1. Construct G12, …,
Gm2.
2. Find a maximal
independent set Mi
for each Gi2.
3. Find the smallest
index j s.t. |Mj| ≦ p.
4. Return Mj.
p=2
G
6
5
4
4
5
6
5
9
8
4
7
6
5
4
7
5
6 8
7
4
5
4
9
6 8
7
4
Analysis

cost(ej)  OPT
◦ ej : index chosen by the algorithm
◦ OPT: Cost incurred by the optimum p-center
solution

Proof:
◦ For all i < j, we have |Mi| > p
◦ But then dom(Gi)  |Mi| > p
◦ So OPT is more than cost(ei)
2 approximation proof

First observe that every maximal
independent set is also a dominating set
◦ Suppose not. Then there must be a nondominated vertex. This vertex can be added
to the independent set contradicting
maximality
So, our independent set in Gi^2 is also a
dominating set in Gi^2
 But not necessarily in Gi. However,

2 approximation proof

Dominating set = set of centers of stars in Gi2.
Gi2
Some edges
does not
appear in Gi.
Gi
Gi2
The edge
exists in Gi2.
In Gi, these two
vertices are
connected with a
path length=2.
But what is the cost?
Suppose u is a vertex in Mj and v is
adjacent to u
 distance(u,v) <= 2cost(ej) <= 2*OPT

◦ by triangle inequality

Conclusion: Cost of our solution is at most
twice the cost of optimal solution.
Weighted p-center
p-center
a
Weighted p-center
b
6
5
10
4
c
9
8
20
a
d
b
6
5
4
6
c
a
p =2
b
6
9
8
8
d
6
4
c
9
10
5
Weights
on vertices
a
10
W = 30.
5
d
4
c
9
6
a
a
b
5
4
c
8
6
8
d
6
6
9
b
6
d
b
6
5
4
c
9
8
6
d
Weighted p-center

Weighted p-center is a generalization of
Weighted p-center
p-center.
1
a
b
6
5
a
4
c
9
8
6
1
b
6
5
a
d
4
b
6
c
5
4
p =2
c
9
8
d
8
6
d
b
6
d
5
6
4
1
c
W = 2.
9
8
d
6
a
4
9
a
b
6
5
c
8
1
6
a
9
b
6
5
4
c
9
8
6
d
Not exactly the same

p-center
◦ # vertices in an independent set in H2 ≦ # vertices
in a minimal dominating set of H

Weighted p-center
◦ Sum of weights of vertices in an independent set in
H2 ≦?Sum of weights of vertices in a minimal
dominating set of H
H2
H
10
10
10
10
20
30
20
30
Adjacent vertices with min. weight

s(u): vertex adjacent to u in H with the
minimum weight.
◦ u can be s(u).
◦ Not in H2.
H2
H
15
20
a
b
s(a)=a,
15
20
a
b
c
d
10
25
s(b)=a,
s(c)=c,
c
d
10
25
s(d)=c.
Now the approach is similar

Can be proved that weight(I) <= weight(D).
 Weight(I) = {s(u)|u in I}, I is for H^2
 Weight(D) = sum of weights of nodes in D. D is for H
1. Construct G12, …, Gm2.
2. Compute a maximal independent set, Mi ,
in each graph Gi2.
 3. Si={si(u): u belongs to Mi}
 4. Find the minimum index j s.t. w(Si) <= W.
 5. Return Sj.
 GIVES 3 APPROXIMATION


Questions?