Primal Dual

Only available on StudyMode
  • Topic: Computational complexity theory, Approximation algorithm, Algorithm
  • Pages : 9 (1231 words )
  • Download(s) : 45
  • Published : April 17, 2013
Open Document
Text Preview
Primal-Dual Approximation Algorithms

We just saw how the primal-dual schema permits sometimes designing efficient combinatorial algorithms for solving certain problems. We will now see an example
of how a related technique can sometimes be used to
design efficient approximation algorithms
The major tool that we will use will be the
RELAXED Complementary Slackness conditions
The problem we examine will again be
weighted set-cover.

1

Recall that given canonical primal

n

minimize

cj xj

subject to

j =1
a′ x ≥ bi,
i

xj ≥ 0,

i = 1, . . . , m
j = 1, . . . , n

the dual is
m

maximize
subject to

biπi
i=1
πAj ≤ cj ,

πi ≥ 0,

j = 1, . . . , n
i = 1, . . . , m

2

Theorem (Complementary Slackness):
Let x and π respectively be primal and dual feasible
solutions. Then x and π are both optimal if and only if
all of the following conditions are satisfied.

Primal Complementary Slackness conditions
∀1 ≤ j ≤ n : either xj = 0 or π ′Aj = cj
Dual Complementary Slackness conditions
∀1 ≤ i ≤ m : either πi = 0 or a′ x = bi
i

3

Theorem (RELAXED Complementary Slackness):
Let x and y respectively be primal and dual feasible solutions. Suppose further that for some α > 1, x and y satisfy all of
Primal Complementary Slackness conditions
∀1 ≤ j ≤ n : either xj = 0 or πAj = cj
RELAXED Dual C.S. conditions
∀1 ≤ i ≤ m : either πi = 0 or a′ x ≤ αbi
i

Then
m

n

cj xj ≤ α ·
j =1

biπi
i=1

Proof:

j =1

a′ x
i

(πAj ) xj = πAx =

cj xj =
j =1

m

m

n

n

i=1

πi ≤ α

biπi.
i=1

Given such an x, π we immediately know that x is
within α of OPT, the minimum cost optimum solution.
4

Recall Weighted Set Cover problem where each set
F has a weight Cost(F ) = C (F ), and the problem
is to find a Set Cover of C of Minimum Weight,
Cost(C ) = F ∈C C (F ).
For example X = {1, 2, 3, 4, 5, 6} and F contains
the subsets
F1
F2
F3
F4
F5

=
=
=
=
=

{1, 3, 5};
{2, 3, 6};
{2, 5, 6};
{2, 3, 4, 6};
{1, 4};

C (F1) = 1
C (F2) = 1
C (F1) = 3
C (F1) = 5
C (F5) = 1

For example C = {F1, F4} is a minimal cardinality solution but not a minimum weight one. C = {F1, F2, F5} is a minimum weight solution.

5

We previously saw that weighted-set-cover is NP-Hard
but developed an Hn approximation algorithm where
n = |X | and Hn = n 1 ∼ ln n.
i=1 i
This means that, for every input, our algorithm generated a cover C such that Cost(C ) ≤ Hn · OP T
where OP T is the cost of the real optimal solution.
Duality theory was used in our proof to lower bound
OP T .
Now let the frequency of element e be
freq(e) = {F ∈ F : e ∈ F }.

Let f = maxe∈U freq(e) be the max number of sets
an element can appear in. We will now use a primaldual schema based on the relaxed complementaryslackness conditions to design a f -approximation algorithm for set-cover. 6

While an f -approximation algorithm for set-cover might
not appear interesting, consider following application.
Let G = (V, E ) be a graph.
A vertex cover of G is a subset V ′ ⊆ V such that
every edge in E has at least one endpoint in V ′. Finding a mimimum-cardinality vertex cover is an interesting and NP-hard problem. A straightforward generaliztion of the problem is to assign a cost C (v ) to every v ∈ V and set cost(V ′) = v∈V ′ c(v ). Finding a

min-weight vertex cover is also NP-hard.
Now create a weighed set cover problem with universe X = E and one set corresponding to each v ∈ V . For e ∈ E write e = (ex, ey ) and set
Fv = {e ∈ E : ex = v or ey = v },

C (Fv ) = c(v )

Then V ′ is a vertex cover of G iff ∪v∈V ′ {Fv } is a set cover of X . Furthermore, c(V ′) is equal to the
cost of the associated set-cover.
Finally, note that, since edge e appears in exactly two
sets Fv , f = 2.
So, an f -approximation algorithm for set-cover yields
a 2-approximation algorithm for vertex cover.
7

• Our general approach will be to start with some
primal-infeasible...
tracking img