important cuts and (p,q)-clustering
TRANSCRIPT
![Page 1: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/1.jpg)
Randomized Selection of Important Separators
Saket Saurabh
The Institute of Mathematical Sciences, India
ASPAK 2014, March 3-8
![Page 2: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/2.jpg)
Some Basic Definitions
I C ⊆ V (G ) is a (p, q)-cluster if |C | ≤ p and d(C ) ≤ q.
I A (p, q)-partition of G is a partition of V (G ) into(p, q)-clusters.
![Page 3: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/3.jpg)
Problem
(p, q)-Partition Parameter: qInput: An undirected graph G and integers p and q.Question: Does G has a (p, q)-partition?
![Page 4: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/4.jpg)
Problem
(p, q)-Partition Parameter: qInput: An undirected graph G and integers p and q.Question: Does G has a (p, q)-partition?
Goal is to show that (p, q)-Partition problem is FPTparameterized by q.
![Page 5: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/5.jpg)
Necessary Condition
![Page 6: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/6.jpg)
Necessary Condition
A necessary condition for the existence of (p, q)-partition is that forevery vertex v ∈ V (G ) there exists a (p, q)-cluster that contains v .
![Page 7: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/7.jpg)
Is this sufficient?
![Page 8: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/8.jpg)
Is this sufficient?
Very surprisingly, it turns out that this trivial necessary condition isactually sufficient for the existence of a (p, q)-partition.
HOW?
![Page 9: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/9.jpg)
Posimodularity
We say that a set function f : 2|V (G)| → R is posimodular if itsatisfies the following inequality for every A,B ⊆ V (G ):
f (A) + f (B) ≥ f (A \ B) + f (B \ A) (1)
![Page 10: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/10.jpg)
Posimodularity
We say that a set function f : 2|V (G)| → R is posimodular if itsatisfies the following inequality for every A,B ⊆ V (G ):
f (A) + f (B) ≥ f (A \ B) + f (B \ A) (1)
The function dG is posimodular.
![Page 11: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/11.jpg)
Let us move forward?
LemmaLet G be an undirected graph and let p, q ≥ 0 be two integers. Ifevery v ∈ V (G ) is contained in some (p, q)-cluster, then G has a(p, q)-partition. Furthermore, given a set of (p, q)-clusters C1, . . . ,Cn whose union is V (G ), a (p, q)-partition can be found inpolynomial time.
Proof.Proof on the board :).
![Page 12: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/12.jpg)
What did we achieve?
We have reduced the problem of (p, q)-Partition to
(p, q)-Cluster Parameter: qInput: An undirected graph G , a veretx v ∈ V (G ) and integersp and q.Question: Does G has (p, q)-cluster containing v?
![Page 13: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/13.jpg)
What did we achieve?
We have reduced the problem of (p, q)-Partition to
(p, q)-Cluster Parameter: qInput: An undirected graph G , a veretx v ∈ V (G ) and integersp and q.Question: Does G has (p, q)-cluster containing v?
![Page 14: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/14.jpg)
Algorithms for (p, q)-Cluster
I For every fixed q, there is an nO(q) time algorithm for(p, q)-Cluster.
I What about parameterized by p + q?
![Page 15: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/15.jpg)
Algorithms for (p, q)-Cluster
I For every fixed q, there is an nO(q) time algorithm for(p, q)-Cluster.
I What about parameterized by p + q?
![Page 16: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/16.jpg)
Algorithms for (p, q)-Cluster
I For every fixed q, there is an nO(q) time algorithm for(p, q)-Cluster.
I What about parameterized by p + q?
There is a 2O(p+q)nO(1) time algorithm for (p, q)-Cluster.
![Page 17: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/17.jpg)
Towards the FPT algorithm
Satellite Problem Parameter: qInput: An undirected graph G , integers p and q, a vertex v ∈V (G ), and a partition (V0,V1, . . . ,Vr ) of V (G ) such that v ∈ V0
and there is no edge between Vi and Vj for any 1 ≤ i < j ≤ r .Question: The task is to find a (p, q)-cluster C satisfying V0 ⊆ Csuch that for every 1 ≤ i ≤ r , either C ∩ Vi = ∅ or Vi ⊆ C .
![Page 18: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/18.jpg)
Towards the FPT algorithm
Satellite Problem Parameter: qInput: An undirected graph G , integers p and q, a vertex v ∈V (G ), and a partition (V0,V1, . . . ,Vr ) of V (G ) such that v ∈ V0
and there is no edge between Vi and Vj for any 1 ≤ i < j ≤ r .Question: The task is to find a (p, q)-cluster C satisfying V0 ⊆ Csuch that for every 1 ≤ i ≤ r , either C ∩ Vi = ∅ or Vi ⊆ C .
For every Vi (1 ≤ i ≤ r), we have to decide whether to include orexclude it from the solution cluster C . If we exclude Vi from C ,then d(C ) increases by, d(Vi ), the number of edges between V0
and Vi . If we include Vi into C , then |C | increases by |C |.
![Page 19: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/19.jpg)
Figure : Instance of Satellite Problem with a solution C . ExcludingV2 and V4 from C decreased the size of C by the gray area, butincreased d(C ) by the red edges.
![Page 20: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/20.jpg)
Satellite Problem
LemmaThe Satellite Problem can be solved in polynomial time.
Proof.We will come back to the proof.
![Page 21: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/21.jpg)
Satellite Problem
LemmaThe Satellite Problem can be solved in polynomial time.
Proof.We will come back to the proof. Hint: Think Knapsack problem.
![Page 22: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/22.jpg)
Objective
We will give a randomized algorithm for (p, q)-Cluster byreducing it to Satellite Problem.
![Page 23: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/23.jpg)
Important Sets
DefinitionWe say that a set X ⊆ V (G ), v 6∈ X is important
1. d(X ) ≤ q,
2. G [X ] is connected,
3. there is no Y ⊃ X , v 6∈ Y such that d(Y ) ≤ d(X ) and G [Y ]is connected.
![Page 24: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/24.jpg)
Important Sets
The following definition connects the notion of important cuts withour problem.
DefinitionWe say that a set X ⊆ V (G ), v 6∈ X is important
1. d(X ) ≤ q,
2. G [X ] is connected,
3. there is no Y ⊃ X , v 6∈ Y such that d(Y ) ≤ d(X ) and G [Y ]is connected.
It is easy to see that X is an important set if and only if ∆(X ) isan important (u, v)-cut of size at most q for every u ∈ X .
![Page 25: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/25.jpg)
Enumerating Important Cuts and Important Sets
TheoremLet X ,Y ⊆ V (G ) be two disjoint sets of vertices in graph G, letk ≥ 0 be an integer, and let Sk be the set of all (X ,Y )-importantcuts of size at most k. Then |Sk | ≤ 4k and Sk can be constructedin time |Sk | · k · (|V (G )|+ |E (G )|).
![Page 26: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/26.jpg)
Minimal (p, q)-cluster
LemmaLet C be an inclusionwise minimal (p, q)-cluster containing v.Then every component of G \ C is an important set.
Proof.On board.
![Page 27: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/27.jpg)
Main Result
LemmaGiven a graph G, vertex v ∈ V (G ), and integers p and q, we canconstruct in time 2O(q) · nO(1) an instance I of the SatelliteProblem such that
I If some (p, q)-cluster contains v , then I is a yes-instance withprobability 2−O(q) (or some 2−O(f (q))),
I If there is no (p, q)-cluster containing v, then I is ano-instance.
![Page 28: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/28.jpg)
Algorithm
I For every u ∈ V (G ), u 6= v , enumerate every important(u, v)-cut of size at most q.
I For every such cut S , put the component K of G \ Scontaining u into the collection X .
I
I
![Page 29: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/29.jpg)
Algorithm
I For every u ∈ V (G ), u 6= v , enumerate every important(u, v)-cut of size at most q.
I For every such cut S , put the component K of G \ Scontaining u into the collection X .
I Let X ′ be a subset of X , where each member K of X ischosen with probability 1
2 independently at random.
I
![Page 30: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/30.jpg)
Algorithm
I For every u ∈ V (G ), u 6= v , enumerate every important(u, v)-cut of size at most q.
I For every such cut S , put the component K of G \ Scontaining u into the collection X .
I Let X ′ be a subset of X , where each member K of X ischosen with probability 1
2 independently at random.
I Let Z be the union of the sets in X ′, let V1, . . . , Vr be theconnected components of G [Z ], and let V0 = V (G ) \ Z . It isclear that V0, V1, . . . , Vr describe an instance I of theSatellite Problem, and a solution for I gives a(p, q)-cluster containing v . Thus we only need to show that ifthere is a (p, q)-cluster C containing v , then I is a yesinstance with desired probability.
![Page 31: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/31.jpg)
Let us ZOOM in :D
I Let Z be the union of the sets in X ′, let V1, . . . , Vr be theconnected components of G [Z ], and let V0 = V (G ) \ Z . It isclear that V0, V1, . . . , Vr describe an instance I of theSatellite Problem, and a solution for I gives a(p, q)-cluster containing v . Thus we only need to show that ifthere is a (p, q)-cluster C containing v , then I is a yesinstance with desired probability.
![Page 32: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/32.jpg)
What do we need?
We show that the reduction works if the union Z of the selectedimportant sets satisfies two constraints: it has to cover every
component of G \ C and it has to be disjoint form the vertices onthe boundary of C . The probability of the event that these
constraints are satisfied is 2−O(f (q)).
![Page 33: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/33.jpg)
I Let C be an inclusionwise minimal (p, q)-cluster containing v .
I Let S be the set of vertices on the boundary of C , i.e., thevertices of C incident to ∆(C ).
I Let K1, . . . , Kt be the components of G \ C .
![Page 34: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/34.jpg)
I Let C be an inclusionwise minimal (p, q)-cluster containing v .
I Let S be the set of vertices on the boundary of C , i.e., thevertices of C incident to ∆(C ).
I Let K1, . . . , Kt be the components of G \ C .
Consider the following two events:(E1) Every component Ki of G \ C is in X ′ (and hence Ki ⊆ Z ).(E2) Z ∩ S = ∅.
![Page 35: Important Cuts and (p,q)-clustering](https://reader033.vdocument.in/reader033/viewer/2022052907/5591381f1a28ab01498b4663/html5/thumbnails/35.jpg)
Let us do the probability computation onboard :).