farthest minimum isolating cut

Simple and Improved Parameterized
Algorithms for Multiterminal Cuts
Mingyu Xiao
The Chinese University of Hong Kong
Hong Kong SAR, CHINA
CSR 2008 Presentation, Moscow, Russia, June 2008
Outline
•
Problems
•
History
•
Methodology
— Parameterized algorithm
•
Important structural results
— Farthest minimum isolating cut and others
•
Edge Multiterminal Cut
— An simple algorithm
•
Vertex Multiterminal Cut
—Two algorithms
— Definitions of Multiterminal Cuts
— Previous results and our results
2
Multiterminal Cut (MTC)
Edge (Vertex) Multiterminal Cut:
Given an unweighted graph G=(V,E) and a subset T  V of l
terminals, the Edge (respectively, Vertex) Multiterminal Cut problem
is to find a set of k edges (respectively, non-terminal vertices),
whose removal from G separates each terminal from all the others.
t2
t1
G
t3
t4
Related Problems
Multi-Way Cut: to separate the graph into at least l components.
Multicut: to separate l pairs of vertices.
3
History
NP-hardness of MTC:
l=2: the classical minimum (s,t) cut problem.
l>2: MTC is NP-hard. (Dahlhaus et al. 1992)
Approximation algorithms:
Results (Approximation ratio)
Authors
(2-2/l) for EMTC
Dahlhaus et al. (STOC 92)
2 for VMTC
Garg et al. (ICALP 94)
2 for directed version
Naor & Zosin (FOCS 97)
(1.5-1/l) for EMTC
Calinescu et al. (STOC 98)
1.34 for EMTC
Karger et al. (STOC 99)
4
History
Exact algorithms:
Results
Authors
O((4l )l n2l ) for EMTC in planar
Dahlhaus et al. (STOC 92)
O(4l n2l ) for EMTC in planar
Hartvigsen. (D.A.M. 98)
O(l l (n  l )2l ) for EMTC in planar
Yeh (J. ALG 01)
O(l 3n  ln log n) for EMTC in a special case
Chen&Wu (Algorithmica 03)
3
O(4k nO(1) ) for VMTC
Marx (TCS 06)
O(4k kn3 ) for VMTC
Chen et al. (Algorithmica, to appear)
Our results in this paper:
l 2 k
O(2k lT (n, m)) for EMTC (To be exact, O(2 l1 lT (n, m)) )
O(k lT (n, m)) and O((k !)2 T (n, m)) for VMTC
O(2.059k T (n, m)), O(2.772k T (n, m)), O(3.349k T (n, m)) and O(3.857k T (n, m))
for Vertex {3,4,5,6}-TC
where T(n,m) is the running time for finding a max flow in an unweighted graph.
5
Parameterized Algorithm
What is parameterized algorithm?
• Exact algorithm.
• The exponential part of the running time is only related to one or more
parameters, but not the input size.
O(2k lT (n, m)) O((k !)2 T (n, m))
k is the parameter
O(k lT (n, m))
k and l are the parameters
Some (parameterized) problems are unlike to have any parameterized
algorithms, such as the k-clique problem with parameter k. Those kinds of
problems are called W[1]-hard in Parameterized Complexity.
Readers are referred to “Parameterized Complexity” by Downey and Fellow
for more details about parameterized algorithms.
6
Techniques
All of our algorithms are based on a simple technique:
Branching at an edge (a vertex) in a farthest minimum isolating cut: including it in
the solution or excluding it from the solution.
Farthest minimum isolating cut
A minimum isolating cut for terminal ti is a minimum cut that separates ti away
from all other terminals T-i.
A Minimum isolating cut Ci for terminal ti separates the graph into two
components: one that contains ti is called the residual of Ci and denoted by Ri;
the other one contains T-i.
The farthest minimum
isolating cut for terminal ti
is the unique minimum
isolating cut that makes the
residual of the maximum
cardinality.
Ri
ti
Ti
Minimum isolating cuts
Farthest minimum isolating cut
7
A Structural Property
Lemma: Let Ci be the (farthest) minimum isolating cut for terminal ti in G,
and G’ be the graph after merging Ri into a new terminal ti. Then any minimum
multiterminal cut in G’ is a minimum multiterminal cut in G.
This lemma holds for both edge and vertex version.
Ci
Ri
Ti
Ti
ti
ti
G
G’
8
Edge Multiterminal Cut
Data reduction rules:
Rule 1: For each terminal ti, let Ci and Ri be its farthest minimum
isolating cut and the corresponding residual, then we can contract Ri
in the graph to form terminal ti.
Rule 2: We can remove all the edges that connect two terminals from
the graph and put them into the solution.
Rule 3: If  i 1| Ci |  k l 1 , then i i ' Ci is a multiterminal cut with size at
most k, where Ci ' satisfying Ci '  maxil 1 Ci
l
l
t1
t1
t2
t4
t2
A solution
t4
t3
t3
9
Edge Multiterminal Cut
Lemma:
l
i 1
Ci is a 2-approximation solution.
Proof: Let S be a minimum multiterminal cut and
Si  S the minimal isolating cut for ti. We have
i1| Ci |  i1| Si |  2 | S | .
l
l
t2
S1
t3
t1
Rule 4: Let Ci be a minimum isolating cut for
l
terminal ti. If i 1 Ci  2k , then there is no
multiterminal cut with size  k.
t4
S
We are ready to design
our algorithm now.
10
Edge Multiterminal Cut
Main steps of our recursive algorithm:
Step 1: applying the 4 reduction rules to
reduce the input size.
Step 2: Let B  li 1 Ci , branching at an edge
e in B by including it in the solution or
excluding it from the solution.
G
G-e
G*e
Does this simple algorithm work efficiently?
……
……
……
How to analyze the running time?
G*e is the graph obtained by
shrinking e in G.
11
Note: The notation system is different. Here l denotes the solution size.
12
Edge Multiterminal Cut
Analysis of our algorithm
We will use a control value p  2k  i 1| Ci |
to build up a recurrence relation.
l
It is easy to see that in Step 1 (applying
reduction rules), p will not increase. We can
further prove that in each branch of Step 2, p
decreases by at least 1.
Then we get
p
G
p 1
p 1
G-e
G*e
C ( p)  C ( p  1)  C ( p  1)  1.
It is easy to see that C ( p)  O(2 p ) satisfies it.
If  li 1| Ci |  k l l 1 , we will find a solution when
applying Rule 3. Else we have p  k ll12 .
……
……
……
C ( p) is the size of the tree.
l 2 k
Lemma: Edge Multiterminal Cut can be solved in O(2 l1 lT (n, m)) time.
k
Corollary: Edge 3-Terminal Cut can be solved in O(1.415 T (n, m)) time.
Previous
result
3
O(4k nO(1) )
13
Vertex Multiterminal Cut
Do data reduction rules still hold?
Rule 1: For each terminal ti, let Ci and Ri be its farthest minimum
isolating cut and the corresponding residual, then we can contract Ri
in the graph to form terminal ti.
Rule
There
no solution
if one
terminal
is adjacent
to anotherfrom
Rule 2’:
2: We
canisremove
all the
edges
that connect
two terminals
terminal.
all the
the solution.
vertices that are common neighbors
the graphWe
andcan
putremove
them into
of two terminals and put them into the solution.
Rule 3: If  i 1| Ci |  k l 1 , then i i ' Ci is a multiterminal cut with size at
most k, where Ci ' satisfying Ci '  maxil 1 Ci
l
l
14
Vertex Multiterminal Cut
Rule 4: Let Ci be a minimum isolating cut for terminal ti. If
is no multiterminal cut with size  k.
i1 Ci
l
i 1
i
 lk
2k , then there
t2
t2
t3
t1
t1
t3
S
t4
S
t4
Vertex version
Edge version

l
i 1
| Ci |  i 1| Si |  2 | S | .
l

l
i 1
| Ci |  i 1| Si |  l | S | .
l
EMTC: every edge in S will appear in exactly two isolating cuts.
VMTC: a vertex in S will appear in up to l isolating cuts.
15
Vertex Multiterminal Cut
The algorithm is almost the same as the algorithm for EMTC.
Step 1: applying the 4 reduction rules to reduce the input size.
l
Step 2: Let B  i 1 Ci , branching at a vertex v in B by including it in the solution
or excluding it from the solution.
Analysis
Let p  lk  i 1| Ci | be the control value.
l
In Step 1, p will not increase. In Step 2, when v is included into the solution, p
will decrease by l-1; when v is excluded from the solution, p will decrease by 1.
We get recurrence relation
C ( p)  C ( p  (l  1))  C ( p  1)  1.
If

l
i 1
| Ci |  k l l 1 , we will find a solution when applying Rule 3. Else we have
p  lk   li 1| Ci |  (l 1)k  l 11 k.
16
Vertex Multiterminal Cut
Now we get two relations:
C ( p)  C ( p  (l  1))  C ( p  1)  1,
(1)
p  lk   li 1| Ci |  (l 1)k  l 11 k.
(2)
We can verify that when l=3,4,5,6, C ( p)  O(2.059k ), O(2.772k ), O(3.349k ) and
O(3.857 k ) respectively satisfy (1) and (2).
Lemma: Vertex {3,4,5,6}-Terminal Cut can be solved in O(2.059k T (n, m)),
O(2.772k T (n, m)), O(3.349k T (n, m)) and O(3.857k T (n, m)) time respectively.
Furthermore, we can prove that C ( p)  O(l k ).
Lemma: Vertex Multiterminal Cut can be solved in O(l kT (n, m)) time.
The exponential part
is related to l and k.
17
An Alternative Algorithm for VMTC
The jth layer farthest minimum isolating cut
The first layer farthest minimum isolating cut Ci(1) for ti is just the farthest minimum
( j)
isolating cut for ti. The jth layer farthest minimum isolating cut Ci is the farthest
minimum for ti’, where ti’ is formed by merge Ci( j 1) and Ri( j 1) together.
ti
Ti
Ci(1)
Ci(2)
Ci(3)
(1)
(2)
(3)
Obviously, | Ci || Ci || Ci | ......
( b 1)
Let b be the smallest number such that Ci(b 1) does not exist or | Ci
B  bj 1 Ci( j ) .
| k ,
and
Claim: If there is a solution (a multiterminal cut with size ≤k), then at least one
vertex in B is contained in a solution.
18
An Alternative Algorithm for VMTC
Recursive algorithm:
Recursive step: Branching on B by including each vertex in B into the solution.
Analysis:
Since | Ci(1) || Ci(2) | ...... | Ci( b ) | k , we get | B |  bj 1| Ci( j ) |  k (k 1) / 2.
Then
C (k ) 
k (k  1)
C (k  1)  1,
2
where C(k) is the size of the search tree when our algorithm finds a solution of
size≤k.
To compute B, we need at most b<k farthest minimum isolating cut computations.
Lemma: Vertex Multiterminal Cut can be solved in O(
( k !)2
2k
T (n, m)) time.
The exponential part
is only related to k.
19
Multicut
•
•
Objective: to separate l pairs {si, ti} of vertices (terminals).
Measure: the cardinality of the deletion set (solution size not greater then k).
G
We present a simple reduction from Multicut to Multierminal Cut:
For each instance of Multicut, we can reduce it to at most (2l )l instances of
Muliterminal Cut with at most 2l terminals.
By using our results on MTC, we can also improve previously known results on
Mulicut.
20