Covering problems in edge- and node-weighted graphs Takuro Fukunaga National Institute of Informatics, Japan JST, ERATO, Kawarabayashi Large Graph Project SWAT, July 2-4, 2014
Covering problemsin edge- and node-weighted graphs
Takuro Fukunaga
National Institute of Informatics, JapanJST, ERATO, Kawarabayashi Large Graph Project
SWAT, July 2-4, 2014
Graph covering problem
Problem
Choose a minimum weight set of edges/nodessatisfying covering constraints
edge set• edge cover• edge dominating set• spanning tree• graph cut
Ü
this talk
node set• vertex cover• dominating set
2/17
Graph covering problem
Problem
Choose a minimum weight set of edges/nodessatisfying covering constraints
edge set• edge cover• edge dominating set• spanning tree• graph cut
Ü
this talk
node set• vertex cover• dominating set
2/17
Weights of an edge set FEdge weights: w(F) :=
∑e∈F w(e)
3
6
4
7 = 20
Node weights: w(F) :=∑
v∈V(F) w(v)
2
3
741
9= 26
each node weight is counted once Ü subadditivity
3/17
Weights of an edge set FEdge weights: w(F) :=
∑e∈F w(e)
3
6
4
7 = 20
Node weights: w(F) :=∑
v∈V(F) w(v)
2
3
741
9= 26
each node weight is counted once Ü subadditivity
3/17
Weights of an edge set FEdge weights: w(F) :=
∑e∈F w(e)
3
6
4
7 = 20
Node weights: w(F) :=∑
v∈V(F) w(v)
2
3
741
9= 26
each node weight is counted once Ü subadditivity
3/17
Previous works on node-weight minimization• Steiner tree [Klein, Ravi, 95]
• Prize-collecting Steiner tree[Moss, Rabani, 07] [Konemann, Sadeghabad, Sanita, 13]
• Prize-collecting Steiner forest [Bateni, Hajiaghayi, Liaghat, 13]
• Survivable network design [Nutov 10,12]
• Prize-collecting survivable network design[Chekuri, Ene, Vakilian, 12]
• Online Steiner tree [Naor, Panigrahi, Singh, 11]
• Online Steiner forest [Hajiaghayi, Liaghat, Panigrahi, 13]
What about other covering problems?
4/17
Two questions
edge-weights
Ü
node-weights
1. How hard are problems?problems look hard...2. How to solve them?existing techniques look difficult to apply...
5/17
Our contribution1. Problem hardness:Many covering problems in bipartite graphs are set cover hard
0, 1-edge coveredge dominating setT -join
Üset cover
Ω(log n)-approx hardness
2. Extending exsiting LP rounding algorithms:• O(log n)-approx for the prize-collecting edge dominating set in
general graphs• exact algorithm for the prize-collecting edge dominating set in trees• 2-approx for the multicut in trees
Positive results matching approximation hardness
6/17
Our contribution1. Problem hardness:Many covering problems in bipartite graphs are set cover hard
0, 1-edge coveredge dominating setT -join
Üset cover
Ω(log n)-approx hardness
2. Extending exsiting LP rounding algorithms:• O(log n)-approx for the prize-collecting edge dominating set in
general graphs• exact algorithm for the prize-collecting edge dominating set in trees• 2-approx for the multicut in trees
Positive results matching approximation hardness6/17
Hardness
Edge dominating set (EDS)• δ(e) := set of edges sharing end nodes with e• F ∩ δ(e) 6= ∅ for ∀e ∈ E Ü F ⊆ E is an EDS
Reduction: Set cover Ü EDS
set
elements0 0 0 0 0 0 0
w(S1)w(S2)w(S3)w(S4)w(S5)w(S6)w(S7)w(S8)w(S9)
∞ ∞ ∞ ∞ ∞ ∞ ∞
w(S1) w(S4) w(S6)
7/17
Hardness
Edge dominating set (EDS)• δ(e) := set of edges sharing end nodes with e• F ∩ δ(e) 6= ∅ for ∀e ∈ E Ü F ⊆ E is an EDS
Reduction: Set cover Ü EDS
set
elements0 0 0 0 0 0 0
w(S1)w(S2)w(S3)w(S4)w(S5)w(S6)w(S7)w(S8)w(S9)
∞ ∞ ∞ ∞ ∞ ∞ ∞
w(S1) w(S4) w(S6)
7/17
Hardness
Edge dominating set (EDS)• δ(e) := set of edges sharing end nodes with e• F ∩ δ(e) 6= ∅ for ∀e ∈ E Ü F ⊆ E is an EDS
Reduction: Set cover Ü EDS
set
elements0 0 0 0 0 0 0
w(S1)w(S2)w(S3)w(S4)w(S5)w(S6)w(S7)w(S8)w(S9)
∞ ∞ ∞ ∞ ∞ ∞ ∞
w(S1) w(S4) w(S6)
7/17
Hardness
Edge dominating set (EDS)• δ(e) := set of edges sharing end nodes with e• F ∩ δ(e) 6= ∅ for ∀e ∈ E Ü F ⊆ E is an EDS
Reduction: Set cover Ü EDS
set
elements0 0 0 0 0 0 0
w(S1)w(S2)w(S3)w(S4)w(S5)w(S6)w(S7)w(S8)w(S9)
∞ ∞ ∞ ∞ ∞ ∞ ∞
w(S1) w(S4) w(S6)
7/17
Positive results
Edge-weights• 2-approximation algorithm for the EDS in general graphs [Fujito,
Nagamochi, 02]• An exact primal-dual algorithm for the prize-collecting EDS in trees
[Kamiyama, 10]
Edge- & node-weighted graph
• O(log n)-approximation algorithm for the prize-collecting EDS ingeneral graphs• An exact primal-dual algorithm for the prize-collecting EDS in trees
Main contributionA natural LP relaxation for node-weighted graphs has a large integralitygap in many covering problems Ü We present a new LP relaxation
8/17
Positive results
Edge-weights• 2-approximation algorithm for the EDS in general graphs [Fujito,
Nagamochi, 02]• An exact primal-dual algorithm for the prize-collecting EDS in trees
[Kamiyama, 10]
Edge- & node-weighted graph
• O(log n)-approximation algorithm for the prize-collecting EDS ingeneral graphs• An exact primal-dual algorithm for the prize-collecting EDS in trees
Main contributionA natural LP relaxation for node-weighted graphs has a large integralitygap in many covering problems Ü We present a new LP relaxation
8/17
Natural LP relaxation
• x(e) ∈ 0, 1: x(e) = 1 Ü e is chosenx(e) = 0 Ü e is NOT chosen
• x(v) ∈ 0, 1: x(v) = 1 Ü an edge incident to v is chosenx(v) = 0 Ü NO edge incident to v is chosen
Natural LP
min∑
e∈E w(e)x(e) +∑
v∈V w(v)x(v)
s.t.∑
e′∈δ(e) x(e′) ≥ 1, ∀e ∈ E
x(v) ≥ x(e), ∀v ∈ V , e ∈ δ(v)
x ≥ 0
9/17
A bad example for the natural LP
u1 u2 uk
v
w(v) = M
w(ui) = 0
w(e) = 0
Optimal solutionchooing a single edge Ü weight = M
LP solutionx(e) = 1/k for ∀e ∈ Ex(v) = 1/k for ∀v ∈ V
Ü weight = M/k
Gap = k
x(v) ≥ x(e),∀v ∈ V , e ∈ δ(v)
v
x(v) ≥∑
e∈δ(v) x(e),∀v ∈ V
?
10/17
A bad example for the natural LP
u1 u2 uk
v
w(v) = M
w(ui) = 0
w(e) = 0
Optimal solutionchooing a single edge Ü weight = M
LP solutionx(e) = 1/k for ∀e ∈ Ex(v) = 1/k for ∀v ∈ V
Ü weight = M/k
Gap = k
x(v) ≥ x(e),∀v ∈ V , e ∈ δ(v)
v
x(v) ≥∑
e∈δ(v) x(e),∀v ∈ V
?
10/17
A bad example for the natural LP
u1 u2 uk
v
w(v) = M
w(ui) = 0
w(e) = 0
Optimal solutionchooing a single edge Ü weight = M
LP solutionx(e) = 1/k for ∀e ∈ Ex(v) = 1/k for ∀v ∈ V
Ü weight = M/k
Gap = k
x(v) ≥ x(e),∀v ∈ V , e ∈ δ(v)
v
x(v) ≥∑
e∈δ(v) x(e),∀v ∈ V
?
10/17
A bad example for the natural LP
u1 u2 uk
v
w(v) = M
w(ui) = 0
w(e) = 0
Optimal solutionchooing a single edge Ü weight = M
LP solutionx(e) = 1/k for ∀e ∈ Ex(v) = 1/k for ∀v ∈ V
Ü weight = M/k
Gap = k
x(v) ≥ x(e),∀v ∈ V , e ∈ δ(v)
v
x(v) ≥∑
e∈δ(v) x(e), ∀v ∈ V
?
10/17
A bad example for the natural LP
u1 u2 uk
v
w(v) = M
w(ui) = 0
w(e) = 0
Optimal solutionchooing a single edge Ü weight = M
LP solutionx(e) = 1/k for ∀e ∈ Ex(v) = 1/k for ∀v ∈ V
Ü weight = M/k
Gap = k
x(v) ≥ x(e),∀v ∈ V , e ∈ δ(v)
v
x(v) ≥∑
e∈δ(v) x(e), ∀v ∈ V
?
10/17
A bad example for the natural LP
u1 u2 uk
v
w(v) = M
w(ui) = 0
w(e) = 0
Optimal solutionchooing a single edge Ü weight = M
LP solutionx(e) = 1/k for ∀e ∈ Ex(v) = 1/k for ∀v ∈ V
Ü weight = M/k
Gap = k
x(v) ≥ x(e),∀v ∈ V , e ∈ δ(v)
v
x(v) ≥∑
e∈δ(v) x(e), ∀v ∈ V
?
10/17
A bad example for the natural LP
u1 u2 uk
v
w(v) = M
w(ui) = 0
w(e) = 0
Optimal solutionchooing a single edge Ü weight = M
LP solutionx(e) = 1/k for ∀e ∈ Ex(v) = 1/k for ∀v ∈ V
Ü weight = M/k
Gap = k
x(v) ≥ x(e),∀v ∈ V , e ∈ δ(v)
v
x(v) ≥∑
e∈δ(v) x(e), ∀v ∈ V
?
10/17
New LP
v v v
· · ·
y(e, e′) ∈ 0, 1 : y(e, e′) = 1⇔ e is chosen for covering e′
Constraints
• covering costraints∑
e∈E y(e, e′) ≥ 1 ∀e′ ∈ E
• e is chosen for some covering costraints Ü x(e) = 1x(e) ≥ y(e, e′) ∀e, e′ ∈ E
• ∃edges in δ(v) is chosen for some covering costraints Ü x(v) = 1x(v) ≥
∑e∈δ(v) y(e, e′) ∀v ∈ V , e′ ∈ E
11/17
New LP
v v v
· · ·
y(e, e′) ∈ 0, 1 : y(e, e′) = 1⇔ e is chosen for covering e′
Constraints
• covering costraints∑
e∈E y(e, e′) ≥ 1 ∀e′ ∈ E
• e is chosen for some covering costraints Ü x(e) = 1x(e) ≥ y(e, e′) ∀e, e′ ∈ E
• ∃edges in δ(v) is chosen for some covering costraints Ü x(v) = 1x(v) ≥
∑e∈δ(v) y(e, e′) ∀v ∈ V , e′ ∈ E
11/17
New LP
New LP
min∑
e∈E w(e)x(e) +∑
v∈V w(v)x(v)
s.t.∑
e∈E y(e, e′) ≥ 1 ∀e′ ∈ E ,
x(e) ≥ y(e, e′) ∀e, e′ ∈ E ,
x(v) ≥∑
e∈δ(v) y(e, e′) ∀v ∈ V , e′ ∈ E ,
x , y ≥ 0
12/17
Integrality gap of the new LP
Natural LP• Integrality gap≤ 2.1 for edge-weighted graphs
• Integrality gap = 1 for edge-weighted trees
• Integrality gap = Ω(n) for node-weighted trees
New LP• Integrality gap = O(log n) for node-weighted graphs
• Integrality gap = 1 for node-weighted trees
13/17
Dual of the new LPDual of New LP
max∑
e∈E ξ(e)
s.t.∑
e∈E ν(e, e′) ≤ w(e′) ∀e′ ∈ E ,∑
e∈E µ(e, v) ≤ w(v) ∀v ∈ V ,
ξ(e) ≤ µ(e, u) + µ(e, v) + ν(e, e′) ∀e ∈ E , e′ = uv ∈ δ(e),
ξ, ν, µ ≥ 0
u
ve′e
ξ(e)
µ(e, v)
µ(e, u)
ν(e, e′)
14/17
Dual of the new LPDual of New LP
max∑
e∈E ξ(e)
s.t.∑
e∈E ν(e, e′) ≤ w(e′) ∀e′ ∈ E ,∑
e∈E µ(e, v) ≤ w(v) ∀v ∈ V ,
ξ(e) ≤ µ(e, u) + µ(e, v) + ν(e, e′) ∀e ∈ E , e′ = uv ∈ δ(e),
ξ, ν, µ ≥ 0
u
ve′e
ξ(e)
µ(e, v)
µ(e, u)
ν(e, e′)
14/17
Primal-dual algorithm for trees
Base case: G is a star
v1u
v2
u
v3
u
v4
uv5
u
v6
u
v7
u
v8
u
i∗ = arg min0≤i≤kw(u) + w(vi) + w(ei)α = w(u) + w(vi∗) + w(ei∗)
Primal solution F := ei∗Dual solution ξ(ei∗) = α, ξ(ei) = 0 for i 6= i∗
w(F) =∑
e ξ(e)
15/17
Primal-dual algorithm for trees
Induction
u
v0
v1 v2 vk
e1 ek
e0
i∗ = arg min0≤i≤kw(u) + w(vi) + w(ei)α = w(u) + w(vi∗) + w(ei∗)
w ′(u) = 0
w ′(e0) = maxw(e0)− α, 0
w ′(v0) = w(v0)−maxα− w(e0), 0
Algorithm
• α ≥ w(u) + w(e0) & an edge in δ(v0) is chosen in the inducedinstance Ü choose e0
• otherwise Ü choose ei∗
16/17
Primal-dual algorithm for trees
Induction
u
v0
v1 v2 vk
e1 ek
e0
i∗ = arg min0≤i≤kw(u) + w(vi) + w(ei)α = w(u) + w(vi∗) + w(ei∗)
w ′(u) = 0
w ′(e0) = maxw(e0)− α, 0
w ′(v0) = w(v0)−maxα− w(e0), 0
Algorithm
• α ≥ w(u) + w(e0) & an edge in δ(v0) is chosen in the inducedinstance Ü choose e0
• otherwise Ü choose ei∗
16/17
Primal-dual algorithm for trees
Induction
u
v0
v1 v2 vk
e1 ek
e0
i∗ = arg min0≤i≤kw(u) + w(vi) + w(ei)α = w(u) + w(vi∗) + w(ei∗)
w ′(u) = 0
w ′(e0) = maxw(e0)− α, 0
w ′(v0) = w(v0)−maxα− w(e0), 0
Algorithm
• α ≥ w(u) + w(e0) & an edge in δ(v0) is chosen in the inducedinstance Ü choose e0
• otherwise Ü choose ei∗
16/17
Primal-dual algorithm for trees
Induction
u
v0
v1 v2 vk
e1 ek
e0
i∗ = arg min0≤i≤kw(u) + w(vi) + w(ei)α = w(u) + w(vi∗) + w(ei∗)
w ′(u) = 0
w ′(e0) = maxw(e0)− α, 0
w ′(v0) = w(v0)−maxα− w(e0), 0
Algorithm
• α ≥ w(u) + w(e0) & an edge in δ(v0) is chosen in the inducedinstance Ü choose e0
• otherwise Ü choose ei∗
16/17
Conclusion
• Set cover hardness for the edge dominating set, edge cover, andT -join problems
• O(log n)-approx for the prize-collecting edge dominating setproblem in general graphs
• exact algorithm for the prize-collecting edge dominating setproblem in trees
• 2-approx for the multicut problem in trees
New LP relaxation for covering problemsin edge- & node-weighted graphs
17/17